diff --git a/.gitignore b/.gitignore index dc6d9aec8..ce4b6840a 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ **/.classpath **/.settings **/.project +**/out /.gradle/ /.nb-gradle/ /.idea/ diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 82ffeb4e8..7234481dd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -55,5 +55,5 @@ We generally abide by the standard Java Code Conventions. Besides that, just mak ## Documentation -- How to edit the wiki - WIP +- How to edit the [wiki](https://github.com/jMonkeyEngine/wiki). - How to edit JavaDocs - WIP diff --git a/README.md b/README.md index 68d2d6204..b87abb203 100644 --- a/README.md +++ b/README.md @@ -3,7 +3,7 @@ jMonkeyEngine [![Build Status](https://travis-ci.org/jMonkeyEngine/jmonkeyengine.svg?branch=master)](https://travis-ci.org/jMonkeyEngine/jmonkeyengine) -jMonkeyEngine is a 3D game engine for adventurous Java developers. It’s open-source, cross-platform, and cutting-edge. 3.1.0 is the latest stable version of the jMonkeyEngine 3 SDK, a complete game development suite. We'll release 3.1.x updates until the major 3.2 release arrives. +jMonkeyEngine is a 3D game engine for adventurous Java developers. It’s open-source, cross-platform, and cutting-edge. 3.2.0 is the latest stable version of the jMonkeyEngine 3 SDK, a complete game development suite. We'll release 3.2.x updates until the major 3.3 release arrives. The engine is used by several commercial game studios and computer-science courses. Here's a taste: diff --git a/build.gradle b/build.gradle index e1af45a55..14d97755e 100644 --- a/build.gradle +++ b/build.gradle @@ -15,7 +15,7 @@ apply from: file('version.gradle') subprojects { if(!project.name.equals('jme3-android-examples')) { apply from: rootProject.file('common.gradle') - if (!['jme3-testdata', 'sdk'].contains(project.name)) { + if (!project.name.equals('jme3-testdata')) { apply from: rootProject.file('bintray.gradle') } } else { @@ -66,9 +66,9 @@ task createZipDistribution(type:Zip,dependsOn:["dist","libDist"], description:"P archiveName "jME" + jmeFullVersion + ".zip" into("/") { from {"./dist"} - } + } into("/sources") { - from {"$buildDir/libDist/sources"} + from {"$buildDir/libDist/sources"} } } @@ -88,14 +88,14 @@ task dist(dependsOn: [':jme3-examples:dist', 'mergedJavadoc']){ task mergedJavadoc(type: Javadoc, description: 'Creates Javadoc from all the projects.') { title = 'jMonkeyEngine3' destinationDir = mkdir("dist/javadoc") - + options.encoding = 'UTF-8' // Allows Javadoc to be generated on Java 8 despite doclint errors. if (JavaVersion.current().isJava8Compatible()) { options.addStringOption('Xdoclint:none', '-quiet') } - + options.overview = file("javadoc-overview.html") // Note: The closures below are executed lazily. source subprojects.collect {project -> @@ -116,7 +116,7 @@ task mergedSource(type: Copy){ } task wrapper(type: Wrapper, description: 'Creates and deploys the Gradle wrapper to the current directory.') { - gradleVersion = '3.2.1' + gradleVersion = '4.1' } ext { @@ -137,7 +137,7 @@ task configureAndroidNDK { if (System.env.ANDROID_NDK != null) { ndkBuildPath = System.env.ANDROID_NDK + File.separator + ndkBuildFile } - + if (new File(ndkBuildPath).exists()) { ndkExists = true ndkCommandPath = ndkBuildPath diff --git a/common.gradle b/common.gradle index d15f1c582..c396df30a 100644 --- a/common.gradle +++ b/common.gradle @@ -16,6 +16,9 @@ repositories { maven { url "http://nifty-gui.sourceforge.net/nifty-maven-repo" } + flatDir { + dirs rootProject.file('lib') + } } dependencies { diff --git a/gradle.properties b/gradle.properties index 1cb84fcdd..168dffd7a 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ # Version number used for plugins, only 3 numbers (e.g. 3.1.3) -jmeVersion = 3.2.0 +jmeVersion = 3.3.0 # Version used for application and settings folder, no spaces! -jmeMainVersion = 3.2 +jmeMainVersion = 3.3 # Version addition pre-alpha-svn, Stable, Beta jmeVersionTag = SNAPSHOT # Increment this each time jmeVersionTag changes but jmeVersion stays the same diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index ca78035ef..51288f9c2 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index e89f72e3d..3a174dff1 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Fri Nov 25 13:05:50 EST 2016 +#Sun Sep 17 22:55:30 EDT 2017 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-3.2.1-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-bin.zip diff --git a/gradlew b/gradlew index 27309d923..4453ccea3 100755 --- a/gradlew +++ b/gradlew @@ -1,4 +1,4 @@ -#!/usr/bin/env bash +#!/usr/bin/env sh ############################################################################## ## @@ -154,11 +154,19 @@ if $cygwin ; then esac fi -# Split up the JVM_OPTS And GRADLE_OPTS values into an array, following the shell quoting and substitution rules -function splitJvmOpts() { - JVM_OPTS=("$@") +# Escape application args +save ( ) { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " } -eval splitJvmOpts $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS -JVM_OPTS[${#JVM_OPTS[*]}]="-Dorg.gradle.appname=$APP_BASE_NAME" +APP_ARGS=$(save "$@") -exec "$JAVACMD" "${JVM_OPTS[@]}" -classpath "$CLASSPATH" org.gradle.wrapper.GradleWrapperMain "$@" +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +# by default we should be in the correct project dir, but when run from Finder on Mac, the cwd is wrong +if [ "$(uname)" = "Darwin" ] && [ "$HOME" = "$PWD" ]; then + cd "$(dirname "$0")" +fi + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat index f6d5974e7..e95643d6a 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -49,7 +49,6 @@ goto fail @rem Get command-line arguments, handling Windows variants if not "%OS%" == "Windows_NT" goto win9xME_args -if "%@eval[2+2]" == "4" goto 4NT_args :win9xME_args @rem Slurp the command line arguments. @@ -60,11 +59,6 @@ set _SKIP=2 if "x%~1" == "x" goto execute set CMD_LINE_ARGS=%* -goto execute - -:4NT_args -@rem Get arguments from the 4NT Shell from JP Software -set CMD_LINE_ARGS=%$ :execute @rem Setup the command line diff --git a/jme3-android-examples/src/main/java/org/jmonkeyengine/jme3androidexamples/MainActivity.java b/jme3-android-examples/src/main/java/org/jmonkeyengine/jme3androidexamples/MainActivity.java index 7bde9d9c9..83a378ef8 100644 --- a/jme3-android-examples/src/main/java/org/jmonkeyengine/jme3androidexamples/MainActivity.java +++ b/jme3-android-examples/src/main/java/org/jmonkeyengine/jme3androidexamples/MainActivity.java @@ -214,7 +214,7 @@ public class MainActivity extends AppCompatActivity implements OnItemClickListen /** * User clicked a view on the screen. Check for the OK and Cancel buttons - * and either start the applicaiton or exit. + * and either start the application or exit. * @param view */ public void onClick(View view) { diff --git a/jme3-android/build.gradle b/jme3-android/build.gradle index e49befecd..4caad528e 100644 --- a/jme3-android/build.gradle +++ b/jme3-android/build.gradle @@ -5,5 +5,5 @@ if (!hasProperty('mainClass')) { dependencies { compile project(':jme3-core') compile project(':jme3-plugins') - compile files('../lib/android.jar') + compileOnly 'android:android' } diff --git a/jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java b/jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java index cdd7e6494..4232e6082 100644 --- a/jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java +++ b/jme3-android/src/main/java/com/jme3/input/android/AndroidSensorJoyInput.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -59,7 +59,7 @@ import java.util.logging.Logger; /** * AndroidSensorJoyInput converts the Android Sensor system into Joystick events. * A single joystick is configured and includes data for all configured sensors - * as seperate axes of the joystick. + * as separate axes of the joystick. * * Each axis is named according to the static strings in SensorJoystickAxis. * Refer to the strings defined in SensorJoystickAxis for a list of supported @@ -285,8 +285,8 @@ public class AndroidSensorJoyInput implements SensorEventListener { } /** - * Calculates the device orientation based off the data recieved from the - * Acceleration Sensor and Mangetic Field sensor + * Calculates the device orientation based off the data received from the + * Acceleration Sensor and Magnetic Field sensor * Values are returned relative to the Earth. * * From the Android Doc diff --git a/jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java b/jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java index 508e81065..db185b002 100644 --- a/jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java +++ b/jme3-android/src/main/java/com/jme3/system/android/OGLESContext.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -136,7 +136,7 @@ public class OGLESContext implements JmeContext, GLSurfaceView.Renderer, SoftTex // stops at the setFormat call without a crash. // We look at the user setting for alpha bits and set the surfaceview // PixelFormat to either Opaque, Transparent, or Translucent. - // ConfigChooser will do it's best to honor the alpha requested by the user + // ConfigChooser will do its best to honor the alpha requested by the user // For best rendering performance, use Opaque (alpha bits = 0). int curAlphaBits = settings.getAlphaBits(); logger.log(Level.FINE, "curAlphaBits: {0}", curAlphaBits); diff --git a/jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java b/jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java index 3b72088ab..6dbb205b5 100644 --- a/jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java +++ b/jme3-blender/src/main/java/com/jme3/asset/BlenderKey.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -69,7 +69,7 @@ public class BlenderKey extends ModelKey { */ protected String usedWorld; /** - * User's default material that is set fo objects that have no material definition in blender. The default value is + * User's default material that is set for objects that have no material definition in blender. The default value is * null. If the value is null the importer will use its own default material (gray color - like in blender). */ protected Material defaultMaterial; @@ -476,9 +476,9 @@ public class BlenderKey extends ModelKey { } /** - * This mehtod sets the name of the WORLD data block taht should be used during file loading. By default the name is + * This method sets the name of the WORLD data block that should be used during file loading. By default the name is * not set. If no name is set or the given name does not occur in the file - the first WORLD data block will be used - * during loading (assumin any exists in the file). + * during loading (assuming any exists in the file). * @param usedWorld * the name of the WORLD block used during loading */ @@ -487,7 +487,7 @@ public class BlenderKey extends ModelKey { } /** - * This mehtod returns the name of the WORLD data block taht should be used during file loading. + * This method returns the name of the WORLD data block that should be used during file loading. * @return the name of the WORLD block used during loading */ public String getUsedWorld() { diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java index 711e0a338..279b5311d 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/constraints/SimulationNode.java @@ -237,7 +237,7 @@ public class SimulationNode { } } - // ... add virtual tracks if neccessary, for bones that were altered but had no tracks before ... + // ... add virtual tracks if necessary, for bones that were altered but had no tracks before ... for (Long boneOMA : alteredOmas) { BoneContext boneContext = blenderContext.getBoneContext(boneOMA); int boneIndex = skeleton.getBoneIndex(boneContext.getBone()); diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesTemporalMesh.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesTemporalMesh.java index 51a5aeb63..2ad8d3ff2 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesTemporalMesh.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/curves/CurvesTemporalMesh.java @@ -37,7 +37,7 @@ import com.jme3.util.BufferUtils; /** * A temporal mesh for curves and surfaces. It works in similar way as TemporalMesh for meshes. - * It prepares all neccessary lines and faces and allows to apply modifiers just like in regular temporal mesh. + * It prepares all necessary lines and faces and allows to apply modifiers just like in regular temporal mesh. * * @author Marcin Roguski (Kaelthas) */ @@ -210,7 +210,7 @@ public class CurvesTemporalMesh extends TemporalMesh { } /** - * The method computes the value of a point at the certain relational distance from its beggining. + * The method computes the value of a point at the certain relational distance from its beginning. * @param alongRatio * the relative distance along the curve; should be a value between 0 and 1 inclusive; * if the value exceeds the boundaries it is truncated to them @@ -369,7 +369,7 @@ public class CurvesTemporalMesh extends TemporalMesh { } /** - * The method loads the bevel object that sould be applied to curve. It can either be another curve or a generated one + * The method loads the bevel object that should be applied to curve. It can either be another curve or a generated one * based on the bevel generating parameters in blender. * @param curveStructure * the structure with the curve's data (the curve being loaded, NOT the bevel curve) @@ -707,7 +707,7 @@ public class CurvesTemporalMesh extends TemporalMesh { /** * the method applies scale for the given bevel points. The points table is - * being modified so expect ypur result there. + * being modified so expect your result there. * * @param points * the bevel points @@ -726,7 +726,7 @@ public class CurvesTemporalMesh extends TemporalMesh { /** * A helper class that represents a single bezier line. It consists of Edge's and allows to - * get a subline of a lentgh of the line. + * get a subline of a length of the line. * * @author Marcin Roguski (Kaelthas) */ @@ -776,7 +776,7 @@ public class CurvesTemporalMesh extends TemporalMesh { } if (cyclic) { // if the first vertex is repeated at the end the distance will be = 0 so it won't affect the result, and if it is not repeated - // then it is neccessary to add the length between the last and the first vertex + // then it is necessary to add the length between the last and the first vertex length += vertices[vertices.length - 1].distance(vertices[0]); } } @@ -834,7 +834,7 @@ public class CurvesTemporalMesh extends TemporalMesh { } /** - * The method computes the value of a point at the certain relational distance from its beggining. + * The method computes the value of a point at the certain relational distance from its beginning. * @param alongRatio * the relative distance along the curve; should be a value between 0 and 1 inclusive; * if the value exceeds the boundaries it is truncated to them diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java index 35ffaa5db..9fae86160 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DnaBlockData.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -85,7 +85,7 @@ public class DnaBlockData { names[i] = inputStream.readString(); } - // reding types + // reading types inputStream.alignPosition(4); identifier = inputStream.readByte() << 24 | inputStream.readByte() << 16 | inputStream.readByte() << 8 | inputStream.readByte(); if (identifier != TYPE_ID) { @@ -181,7 +181,7 @@ public class DnaBlockData { /** * This method converts the given identifier code to string. * @param code - * the code taht is to be converted + * the code that is to be converted * @return the string value of the identifier */ private String toString(int code) { diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java index d6d110054..748757ab0 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/DynamicArray.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -32,7 +32,7 @@ package com.jme3.scene.plugins.blender.file; /** - * An array that can be dynamically modified/ + * An array that can be dynamically modified * @author Marcin Roguski * @param * the type of stored data in the array @@ -42,7 +42,7 @@ public class DynamicArray implements Cloneable { /** An array object that holds the required data. */ private T[] array; /** - * This table holds the sizes of dimetions of the dynamic table. It's length specifies the table dimension or a + * This table holds the sizes of dimensions of the dynamic table. Its length specifies the table dimension or a * pointer level. For example: if tableSizes.length == 3 then it either specifies a dynamic table of fixed lengths: * dynTable[a][b][c], where a,b,c are stored in the tableSizes table. */ diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java index 941c7a8fc..fac6597c5 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/file/Structure.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -169,7 +169,7 @@ public class Structure implements Cloneable { } /** - * This methos should be used on structures that are of a 'ListBase' type. It creates a List of structures that are + * This method should be used on structures that are of a 'ListBase' type. It creates a List of structures that are * held by this structure within the blend file. * @return a list of filled structures * @throws BlenderFileException @@ -232,7 +232,7 @@ public class Structure implements Cloneable { } /** - * This method returns the address of the structure. The strucutre should be filled with data otherwise an exception + * This method returns the address of the structure. The structure should be filled with data otherwise an exception * is thrown. * @return the address of the feature stored in this structure */ diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java index 1995da0af..b8c5925a9 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/materials/MaterialContext.java @@ -1,6 +1,7 @@ package com.jme3.scene.plugins.blender.materials; import java.io.IOException; +import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -106,7 +107,7 @@ public final class MaterialContext implements Savable { boolean transparent = false; if (diffuseColor != null) { transparent = diffuseColor.a < 1.0f; - if (loadedTextures.size() > 0) {// texutre covers the material color + if (loadedTextures.size() > 0) {// texture covers the material color diffuseColor.set(1, 1, 1, 1); } } @@ -163,6 +164,12 @@ public final class MaterialContext implements Savable { material.setColor("Ambient", new ColorRGBA(ambientFactor, ambientFactor, ambientFactor, 1f)); } + + // initializing unused "user-defined UV coords" to all available + Map> unusedUserDefinedUVCoords = Collections.emptyMap(); + if(userDefinedUVCoordinates != null && !userDefinedUVCoordinates.isEmpty()) { + unusedUserDefinedUVCoords = new HashMap<>(userDefinedUVCoordinates); + } // applying textures int textureIndex = 0; @@ -175,16 +182,19 @@ public final class MaterialContext implements Savable { String usedUserUVSet = combinedTexture.flatten(geometry, geometriesOMA, userDefinedUVCoordinates, blenderContext); this.setTexture(material, combinedTexture.getMappingType(), combinedTexture.getResultTexture()); - List uvs = combinedTexture.getResultUVS(); - if(uvs != null && uvs.size() > 0) { - VertexBuffer uvCoordsBuffer = new VertexBuffer(TextureHelper.TEXCOORD_TYPES[textureIndex++]); - uvCoordsBuffer.setupData(Usage.Static, 2, Format.Float, BufferUtils.createFloatBuffer(uvs.toArray(new Vector2f[uvs.size()]))); - geometry.getMesh().setBuffer(uvCoordsBuffer); - }//uvs might be null if the user assigned non existing UV coordinates group name to the mesh (this should be fixed in blender file) - if(usedUserUVSet != null) { - userDefinedUVCoordinates = new HashMap<>(userDefinedUVCoordinates); - userDefinedUVCoordinates.remove(usedUserUVSet); + if(usedUserUVSet == null || unusedUserDefinedUVCoords.containsKey(usedUserUVSet)) { + List uvs = combinedTexture.getResultUVS(); + if(uvs != null && uvs.size() > 0) { + VertexBuffer uvCoordsBuffer = new VertexBuffer(TextureHelper.TEXCOORD_TYPES[textureIndex++]); + uvCoordsBuffer.setupData(Usage.Static, 2, Format.Float, BufferUtils.createFloatBuffer(uvs.toArray(new Vector2f[uvs.size()]))); + geometry.getMesh().setBuffer(uvCoordsBuffer); + }//uvs might be null if the user assigned non existing UV coordinates group name to the mesh (this should be fixed in blender file) + + // Remove used "user-defined UV coords" from the unused collection + if(usedUserUVSet != null) { + unusedUserDefinedUVCoords.remove(usedUserUVSet); + } } } else { LOGGER.log(Level.WARNING, "The texture could not be applied because JME only supports up to {0} different UV's.", TextureHelper.TEXCOORD_TYPES.length); @@ -192,12 +202,12 @@ public final class MaterialContext implements Savable { } } - if (userDefinedUVCoordinates != null && userDefinedUVCoordinates.size() > 0) { + if (unusedUserDefinedUVCoords != null && unusedUserDefinedUVCoords.size() > 0) { LOGGER.fine("Storing unused, user defined UV coordinates sets."); - if (userDefinedUVCoordinates.size() > TextureHelper.TEXCOORD_TYPES.length) { + if (unusedUserDefinedUVCoords.size() > TextureHelper.TEXCOORD_TYPES.length) { LOGGER.log(Level.WARNING, "The blender file has defined more than {0} different UV coordinates for the mesh. JME supports only {0} UV coordinates buffers.", TextureHelper.TEXCOORD_TYPES.length); } - for (Entry> entry : userDefinedUVCoordinates.entrySet()) { + for (Entry> entry : unusedUserDefinedUVCoords.entrySet()) { if (textureIndex < TextureHelper.TEXCOORD_TYPES.length) { List uvs = entry.getValue(); VertexBuffer uvCoordsBuffer = new VertexBuffer(TextureHelper.TEXCOORD_TYPES[textureIndex++]); diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/math/Vector3d.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/math/Vector3d.java index f2a3c8075..db9b88304 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/math/Vector3d.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/math/Vector3d.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -324,7 +324,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { * the vector to take the cross product of with this. * @param result * the vector to store the cross product result. - * @return result, after recieving the cross product vector. + * @return result, after receiving the cross product vector. */ public Vector3d cross(Vector3d v, Vector3d result) { return this.cross(v.x, v.y, v.z, result); @@ -342,7 +342,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { * z component of the vector to take the cross product of with this. * @param result * the vector to store the cross product result. - * @return result, after recieving the cross product vector. + * @return result, after receiving the cross product vector. */ public Vector3d cross(double otherX, double otherY, double otherZ, Vector3d result) { if (result == null) { @@ -485,12 +485,12 @@ public final class Vector3d implements Savable, Cloneable, Serializable { } /** - * multLocal multiplies a provided vector to this vector + * multLocal multiplies a provided vector by this vector * internally, and returns a handle to this vector for easy chaining of * calls. If the provided vector is null, null is returned. * * @param vec - * the vector to mult to this vector. + * the vector to multiply by this vector. * @return this */ public Vector3d multLocal(Vector3d vec) { @@ -522,7 +522,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { } /** - * multLocal multiplies a provided vector to this vector + * multLocal multiplies a provided vector by this vector * internally, and returns a handle to this vector for easy chaining of * calls. If the provided vector is null, null is returned. * @@ -539,7 +539,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { } /** - * multLocal multiplies a provided vector to this vector + * multLocal multiplies a provided vector by this vector * internally, and returns a handle to this vector for easy chaining of * calls. If the provided vector is null, null is returned. * @@ -657,7 +657,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { } /** - * subtractLocal subtracts a provided vector to this vector + * subtractLocal subtracts a provided vector from this vector * internally, and returns a handle to this vector for easy chaining of * calls. If the provided vector is null, null is returned. * @@ -825,7 +825,7 @@ public final class Vector3d implements Savable, Cloneable, Serializable { /** * hashCode returns a unique code for this vector object based - * on it's values. If two vectors are logically equivalent, they will return + * on its values. If two vectors are logically equivalent, they will return * the same hash code value. * @return the hash code value of this vector. */ diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java index 49482c87f..4fcab8723 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/meshes/MeshHelper.java @@ -291,27 +291,30 @@ public class MeshHelper extends AbstractBlenderHelper { Structure defbase = (Structure) parent.getFieldValue("defbase"); List groupNames = new ArrayList(); List defs = defbase.evaluateListBase(); - for (Structure def : defs) { - groupNames.add(def.getFieldValue("name").toString()); - } + + if(!defs.isEmpty()) { + for (Structure def : defs) { + groupNames.add(def.getFieldValue("name").toString()); + } - Pointer pDvert = (Pointer) meshStructure.getFieldValue("dvert");// dvert = DeformVERTices - if (pDvert.isNotNull()) {// assigning weights and bone indices - List dverts = pDvert.fetchData(); - for (Structure dvert : dverts) { - Map weightsForVertex = new HashMap(); - Pointer pDW = (Pointer) dvert.getFieldValue("dw"); - if (pDW.isNotNull()) { - List dw = pDW.fetchData(); - for (Structure deformWeight : dw) { - int groupIndex = ((Number) deformWeight.getFieldValue("def_nr")).intValue(); - float weight = ((Number) deformWeight.getFieldValue("weight")).floatValue(); - String groupName = groupNames.get(groupIndex); + Pointer pDvert = (Pointer) meshStructure.getFieldValue("dvert");// dvert = DeformVERTices + if (pDvert.isNotNull()) {// assigning weights and bone indices + List dverts = pDvert.fetchData(); + for (Structure dvert : dverts) { + Map weightsForVertex = new HashMap(); + Pointer pDW = (Pointer) dvert.getFieldValue("dw"); + if (pDW.isNotNull()) { + List dw = pDW.fetchData(); + for (Structure deformWeight : dw) { + int groupIndex = ((Number) deformWeight.getFieldValue("def_nr")).intValue(); + float weight = ((Number) deformWeight.getFieldValue("weight")).floatValue(); + String groupName = groupNames.get(groupIndex); - weightsForVertex.put(groupName, weight); + weightsForVertex.put(groupName, weight); + } } + result.add(weightsForVertex); } - result.add(weightsForVertex); } } } diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/SubdivisionSurfaceModifier.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/SubdivisionSurfaceModifier.java index 748f2c7f2..402efc3d3 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/SubdivisionSurfaceModifier.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/modifiers/SubdivisionSurfaceModifier.java @@ -47,7 +47,7 @@ public class SubdivisionSurfaceModifier extends Modifier { private Set verticesOnOriginalEdges = new HashSet(); /** - * Constructor loads all neccessary modifier data. + * Constructor loads all necessary modifier data. * @param modifierStructure * the modifier structure * @param blenderContext @@ -193,7 +193,7 @@ public class SubdivisionSurfaceModifier extends Modifier { // moving the vertex v.addLocal(t); - // applying crease weight if neccessary + // applying crease weight if necessary CreasePoint creasePoint = creasePoints.get(i); if (creasePoint.getTarget() != null && creasePoint.getWeight() != 0) { t = creasePoint.getTarget().subtractLocal(v).multLocal(creasePoint.getWeight()); diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java index ccb21bdf9..806de78f5 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageLoader.java @@ -31,12 +31,14 @@ */ package com.jme3.scene.plugins.blender.textures; +import com.jme3.asset.AssetManager; +import com.jme3.asset.TextureKey; import com.jme3.scene.plugins.blender.file.BlenderInputStream; import com.jme3.texture.Image; +import com.jme3.texture.Texture; import com.jme3.texture.plugins.AWTLoader; -import com.jme3.texture.plugins.DDSLoader; -import com.jme3.texture.plugins.TGALoader; -import java.io.InputStream; +import com.jme3.texture.plugins.HDRLoader; +import java.util.logging.Level; import java.util.logging.Logger; /** @@ -47,11 +49,29 @@ import java.util.logging.Logger; */ /* package */class ImageLoader extends AWTLoader { private static final Logger LOGGER = Logger.getLogger(ImageLoader.class.getName()); - - protected DDSLoader ddsLoader = new DDSLoader(); // DirectX image loader + private static final Logger hdrLogger = Logger.getLogger(HDRLoader.class.getName()); // Used to silence HDR Errors + + /** + * List of Blender-Supported Texture Extensions (we have to guess them, so + * the AssetLoader can find them. Not good, but better than nothing. + * Source: https://docs.blender.org/manual/en/dev/data_system/files/media/image_formats.html + */ + private static final String[] extensions = new String[] + { /* Windows Bitmap */".bmp", + /* Iris */ ".sgi", ".rgb", ".bw", + /* PNG */ ".png", + /* JPEG */ ".jpg", ".jpeg", + /* JPEG 2000 */ ".jp2", ".j2c", + /* Targa */".tga", + /* Cineon & DPX */".cin", ".dpx", + /* OpenEXR */ ".exr", + /* Radiance HDR */ ".hdr", + /* TIFF */ ".tif", ".tiff", + /* DDS (Direct X) */ ".dds" }; /** - * This method loads the image from the blender file itself. It tries each loader to load the image. + * This method loads a image which is packed into the blender file. + * It makes use of all the registered AssetLoaders * * @param inputStream * blender input stream @@ -60,76 +80,57 @@ import java.util.logging.Logger; * @param flipY * if the image should be flipped (does not work with DirectX image) * @return loaded image or null if it could not be loaded + * @deprecated This method has only been left in for API compability. + * Use loadTexture instead */ - public Image loadImage(BlenderInputStream inputStream, int startPosition, boolean flipY) { - // loading using AWT loader - inputStream.setPosition(startPosition); - Image result = this.loadImage(inputStream, ImageType.AWT, flipY); - // loading using TGA loader - if (result == null) { - inputStream.setPosition(startPosition); - result = this.loadImage(inputStream, ImageType.TGA, flipY); - } - // loading using DDS loader - if (result == null) { - inputStream.setPosition(startPosition); - result = this.loadImage(inputStream, ImageType.DDS, flipY); + public Image loadImage(AssetManager assetManager, BlenderInputStream inputStream, int startPosition, boolean flipY) { + Texture tex = loadTexture(assetManager, inputStream, startPosition, flipY); + + if (tex == null) { + return null; + } else { + return tex.getImage(); } - - if (result == null) { - LOGGER.warning("Image could not be loaded by none of available loaders!"); - } - - return result; } - + /** - * This method loads an image of a specified type from the given input stream. + * This method loads a texture which is packed into the blender file. + * It makes use of all the registered AssetLoaders * * @param inputStream - * the input stream we read the image from - * @param imageType - * the type of the image {@link ImageType} + * blender input stream + * @param startPosition + * position in the stream where the image data starts * @param flipY * if the image should be flipped (does not work with DirectX image) - * @return loaded image or null if it could not be loaded + * @return loaded texture or null if it could not be loaded */ - public Image loadImage(InputStream inputStream, ImageType imageType, boolean flipY) { - Image result = null; - switch (imageType) { - case AWT: - try { - result = this.load(inputStream, flipY); - } catch (Exception e) { - LOGGER.warning("Unable to load image using AWT loader!"); - } - break; - case DDS: - try { - result = ddsLoader.load(inputStream); - } catch (Exception e) { - LOGGER.warning("Unable to load image using DDS loader!"); - } - break; - case TGA: - try { - result = TGALoader.load(inputStream, flipY); - } catch (Exception e) { - LOGGER.warning("Unable to load image using TGA loader!"); - } - break; - default: - throw new IllegalStateException("Unknown image type: " + imageType); + public Texture loadTexture(AssetManager assetManager, BlenderInputStream inputStream, int startPosition, boolean flipY) { + inputStream.setPosition(startPosition); + TextureKey tKey; + Texture result = null; + + hdrLogger.setLevel(Level.SEVERE); // When we bruteforce try HDR on a non hdr file, it prints unreadable chars + + for (String ext: extensions) { + tKey = new TextureKey("dummy" + ext, flipY); + try { + result = assetManager.loadAssetFromStream(tKey, inputStream); + } catch (Exception e) { + continue; + } + + if (result != null) { + break; // Could locate a possible asset + } + } + + if (result == null) { + LOGGER.warning("Texture could not be loaded by any of the available loaders!\n" + + "Since the file has been packed into the blender file, there is no" + + "way for us to tell you which texture it was."); } + return result; } - - /** - * Image types that can be loaded. AWT: png, jpg, jped or bmp TGA: tga DDS: DirectX image files - * - * @author Marcin Roguski (Kaelthas) - */ - private static enum ImageType { - AWT, TGA, DDS; - } } diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java index 99ea9b5d2..8ca4f6330 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/ImageUtils.java @@ -206,7 +206,7 @@ public final class ImageUtils { N.z = 1; N.divideLocal(den); - // setting thge pixel in the result image + // setting the pixel in the result image bumpMap.setRGB(x, y, ImageUtils.vectorToColor(N.x, N.y, N.z)); } } @@ -422,7 +422,7 @@ public final class ImageUtils { * pixel's X coordinate * @param y * pixel's Y coordinate - * @return height reprezented by the given texture in the specified location + * @return height represented by the given texture in the specified location */ private static int getHeight(BufferedImage image, int x, int y) { if (x < 0) { diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java index 8913f5864..cd146b109 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/TextureHelper.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -72,6 +72,7 @@ import com.jme3.texture.Texture.WrapMode; import com.jme3.texture.Texture2D; import com.jme3.texture.image.ColorSpace; import com.jme3.util.BufferUtils; +import com.jme3.util.PlaceholderAssets; /** * A class that is used in texture calculations. @@ -251,7 +252,11 @@ public class TextureHelper extends AbstractBlenderHelper { blenderContext.getInputStream().setPosition(dataFileBlock.getBlockPosition()); // Should the texture be flipped? It works for sinbad .. - result = new Texture2D(new ImageLoader().loadImage(blenderContext.getInputStream(), dataFileBlock.getBlockPosition(), true)); + result = new ImageLoader().loadTexture(blenderContext.getAssetManager(), blenderContext.getInputStream(), dataFileBlock.getBlockPosition(), true); + if (result == null) { + result = new Texture2D(PlaceholderAssets.getPlaceholderImage(blenderContext.getAssetManager())); + LOGGER.fine("ImageLoader returned null. It probably failed to load the packed texture, using placeholder asset"); + } } } //} else { @@ -310,7 +315,7 @@ public class TextureHelper extends AbstractBlenderHelper { * @param pos * the relative position (value of range <0, 1> (both inclusive)) * @param size - * the size of the line the pixel lies on (width, heigth or + * the size of the line the pixel lies on (width, height or * depth) * @return the integer index of the pixel on the line of the specified width */ @@ -429,10 +434,10 @@ public class TextureHelper extends AbstractBlenderHelper { } /** - * This method loads the textre from outside the blend file using the + * This method loads the texture from outside the blend file using the * AssetManager that the blend file was loaded with. It returns a texture * with a full assetKey that references the original texture so it later - * doesn't need to ba packed when the model data is serialized. It searches + * doesn't need to be packed when the model data is serialized. It searches * the AssetManager for the full path if the model file is a relative path * and will attempt to truncate the path if it is an absolute file path * until the path can be found in the AssetManager. If the texture can not @@ -614,8 +619,15 @@ public class TextureHelper extends AbstractBlenderHelper { int texflag = ((Number) textureData.mtex.getFieldValue("texflag")).intValue(); boolean negateTexture = (texflag & 0x04) != 0; + boolean colorSet = false; for (int i = 0; i < mappings.length; ++i) { if ((mappings[i] & mapto.intValue()) != 0) { + if(mappings[i] == MaterialContext.MTEX_COL) { + colorSet = true; + } else if(colorSet && mappings[i] == MaterialContext.MTEX_ALPHA) { + continue; + } + CombinedTexture combinedTexture = new CombinedTexture(mappings[i], !skyTexture); int blendType = ((Number) textureData.mtex.getFieldValue("blendtype")).intValue(); float[] color = new float[] { ((Number) textureData.mtex.getFieldValue("r")).floatValue(), ((Number) textureData.mtex.getFieldValue("g")).floatValue(), ((Number) textureData.mtex.getFieldValue("b")).floatValue() }; @@ -646,8 +658,16 @@ public class TextureHelper extends AbstractBlenderHelper { Map> result = new HashMap>(); for (TextureData data : textures) { Number mapto = (Number) data.mtex.getFieldValue("mapto"); + + boolean colorSet = false; for (int i = 0; i < mappings.length; ++i) { if ((mappings[i] & mapto.intValue()) != 0) { + if(mappings[i] == MaterialContext.MTEX_COL) { + colorSet = true; + } else if(colorSet && mappings[i] == MaterialContext.MTEX_ALPHA) { + continue; + } + List datas = result.get(mappings[i]); if (datas == null) { datas = new ArrayList(); @@ -668,4 +688,4 @@ public class TextureHelper extends AbstractBlenderHelper { /** The name of the user's UV coordinates that are used for this texture. */ public String uvCoordinatesName; } -} \ No newline at end of file +} diff --git a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java index 1d7bf2146..1c6f2549d 100644 --- a/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java +++ b/jme3-blender/src/main/java/com/jme3/scene/plugins/blender/textures/blending/TextureBlenderAWT.java @@ -163,9 +163,19 @@ public class TextureBlenderAWT extends AbstractTextureBlender { * the blender context */ protected void blendPixel(float[] result, float[] materialColor, float[] pixelColor, BlenderContext blenderContext) { + // We calculate first the importance of the texture (colFactor * texAlphaValue) float blendFactor = this.blendFactor * pixelColor[3]; - float oneMinusFactor = 1.0f - blendFactor, col; + // Then, we get the object material factor ((1 - texture importance) * matAlphaValue) + float oneMinusFactor = (1f - blendFactor) * materialColor[3]; + // Finally, we can get the final blendFactor, which is 1 - the material factor. + blendFactor = 1f - oneMinusFactor; + + // --- Compact method --- + // float blendFactor = this.blendFactor * (1f - ((1f - pixelColor[3]) * materialColor[3])); + // float oneMinusFactor = 1f - blendFactor; + float col; + switch (blendType) { case MTEX_BLEND: result[0] = blendFactor * pixelColor[0] + oneMinusFactor * materialColor[0]; diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java b/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java index e50324116..d5d010d87 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/collision/PhysicsCollisionGroupListener.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -40,7 +40,7 @@ public interface PhysicsCollisionGroupListener { /** * Called when two physics objects of the registered group are about to collide, called from physics thread.
* This is only called when the collision will happen based on the collisionGroup and collideWithGroups - * settings in the PhysicsCollisionObject. That is the case when one of the partys has the + * settings in the PhysicsCollisionObject. That is the case when one of the parties has the * collisionGroup of the other in its collideWithGroups set.
* @param nodeA CollisionObject #1 * @param nodeB CollisionObject #2 diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java index d4f3658c0..4f6eef488 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/AbstractPhysicsControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -41,6 +41,7 @@ import com.jme3.math.Vector3f; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; import com.jme3.scene.Spatial; +import com.jme3.scene.control.Control; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; @@ -162,8 +163,14 @@ public abstract class AbstractPhysicsControl implements PhysicsControl, JmeClone } } - - @Override + + @Deprecated + @Override + public Control cloneForSpatial(Spatial spatial) { + throw new UnsupportedOperationException(); + } + + @Override public void cloneFields( Cloner cloner, Object original ) { this.spatial = cloner.clone(spatial); createSpatialData(this.spatial); diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java index 30190f1f1..660b7f559 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/BetterCharacterControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -48,9 +48,7 @@ import com.jme3.math.Vector3f; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; import com.jme3.scene.Spatial; -import com.jme3.scene.control.Control; import com.jme3.util.TempVars; -import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.List; @@ -665,13 +663,6 @@ public class BetterCharacterControl extends AbstractPhysicsControl implements Ph rigidBody.setUserObject(null); } - @Override - public Control cloneForSpatial(Spatial spatial) { - BetterCharacterControl control = new BetterCharacterControl(radius, height, mass); - control.setJumpForce(jumpForce); - return control; - } - @Override public Object jmeClone() { BetterCharacterControl control = new BetterCharacterControl(radius, height, mass); diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java index d12e5991a..5291c4f40 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/CharacterControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -89,21 +89,10 @@ public class CharacterControl extends PhysicsCharacter implements PhysicsControl return spatial.getWorldTranslation(); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - CharacterControl control = new CharacterControl(collisionShape, stepHeight); - control.setCcdMotionThreshold(getCcdMotionThreshold()); - control.setCcdSweptSphereRadius(getCcdSweptSphereRadius()); - control.setCollideWithGroups(getCollideWithGroups()); - control.setCollisionGroup(getCollisionGroup()); - control.setFallSpeed(getFallSpeed()); - control.setGravity(getGravity()); - control.setJumpSpeed(getJumpSpeed()); - control.setMaxSlope(getMaxSlope()); - control.setPhysicsLocation(getPhysicsLocation()); - control.setUpAxis(getUpAxis()); - control.setApplyPhysicsLocal(isApplyPhysicsLocal()); - return control; + throw new UnsupportedOperationException(); } @Override diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java index 70c636507..4aae0f967 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/GhostControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -95,20 +95,13 @@ public class GhostControl extends PhysicsGhostObject implements PhysicsControl, return spatial.getWorldRotation(); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - GhostControl control = new GhostControl(collisionShape); - control.setCcdMotionThreshold(getCcdMotionThreshold()); - control.setCcdSweptSphereRadius(getCcdSweptSphereRadius()); - control.setCollideWithGroups(getCollideWithGroups()); - control.setCollisionGroup(getCollisionGroup()); - control.setPhysicsLocation(getPhysicsLocation()); - control.setPhysicsRotation(getPhysicsRotationMatrix()); - control.setApplyPhysicsLocal(isApplyPhysicsLocal()); - return control; + throw new UnsupportedOperationException(); } - @Override + @Override public Object jmeClone() { GhostControl control = new GhostControl(collisionShape); control.setCcdMotionThreshold(getCcdMotionThreshold()); diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java index 6c25b6662..c1a79c946 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/KinematicRagdollControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -59,9 +59,7 @@ import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; import com.jme3.scene.Node; import com.jme3.scene.Spatial; -import com.jme3.scene.control.Control; import com.jme3.util.TempVars; -import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.*; @@ -73,7 +71,7 @@ import java.util.logging.Logger; * use this control you need a model with an AnimControl and a * SkeletonControl.
This should be the case if you imported an animated * model from Ogre or blender.
Note enabling/disabling the control - * add/removes it from the physic space

This control creates collision + * add/removes it from the physics space

This control creates collision * shapes for each bones of the skeleton when you call * spatial.addControl(ragdollControl).

  • The shape is HullCollision shape * based on the vertices associated with each bone and based on a tweakable @@ -84,11 +82,11 @@ import java.util.logging.Logger; *

There are 2 modes for this control :

  • The * kinematic modes :
    this is the default behavior, this means that * the collision shapes of the body are able to interact with physics enabled - * objects. in this mode physic shapes follow the moovements of the animated + * objects. in this mode physics shapes follow the motion of the animated * skeleton (for example animated by a key framed animation) this mode is * enabled by calling setKinematicMode();
  • The ragdoll modes * :
    To enable this behavior, you need to call setRagdollMode() - * method. In this mode the charater is entirely controled by physics, so it + * method. In this mode the character is entirely controlled by physics, so it * will fall under the gravity and move if any force is applied to it.
  • *

* @@ -171,7 +169,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P } /** - * contruct a KinematicRagdollControl + * construct a KinematicRagdollControl */ public KinematicRagdollControl() { baseRigidBody = new PhysicsRigidBody(new BoxCollisionShape(Vector3f.UNIT_XYZ.mult(0.1f)), 1); @@ -201,7 +199,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P if(mode == Mode.IK){ ikUpdate(tpf); } else if (mode == mode.Ragdoll && targetModel.getLocalTranslation().equals(modelPosition)) { - //if the ragdoll has the control of the skeleton, we update each bone with its position in physic world space. + //if the ragdoll has the control of the skeleton, we update each bone with its position in physics world space. ragDollUpdate(tpf); } else { kinematicUpdate(tpf); @@ -217,12 +215,12 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P Vector3f position = vars.vect1; - //retrieving bone position in physic world space + //retrieving bone position in physics world space Vector3f p = link.rigidBody.getMotionState().getWorldLocation(); //transforming this position with inverse transforms of the model targetModel.getWorldTransform().transformInverseVector(p, position); - //retrieving bone rotation in physic world space + //retrieving bone rotation in physics world space Quaternion q = link.rigidBody.getMotionState().getWorldRotationQuat(); //multiplying this rotation by the initialWorld rotation of the bone, @@ -255,7 +253,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P link.bone.setUserTransformsInModelSpace(position, tmpRot1); } else { //boneList is not empty, this means some bones of the skeleton might not be associated with a collision shape. - //So we update them recusively + //So we update them recursively RagdollUtils.setTransform(link.bone, position, tmpRot1, false, boneList); } } @@ -264,7 +262,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P } protected void kinematicUpdate(float tpf) { - //the ragdoll does not have the controll, so the keyframed animation updates the physic position of the physic bonces + //the ragdoll does not have control, so the keyframed animation updates the physics position of the physics bonces TempVars vars = TempVars.get(); Quaternion tmpRot1 = vars.quat1; Quaternion tmpRot2 = vars.quat2; @@ -420,7 +418,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P targetModel.getWorldRotation().mult(tmpRot1, tmpRot1); tmpRot1.normalizeLocal(); - //updating physic location/rotation of the physic bone + //updating physics location/rotation of the physics bone link.rigidBody.setPhysicsLocation(position); link.rigidBody.setPhysicsRotation(tmpRot1); @@ -707,9 +705,9 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P /** * Enable or disable the ragdoll behaviour. if ragdollEnabled is true, the - * character motion will only be powerd by physics else, the characted will + * character motion will only be powered by physics else, the character will * be animated by the keyframe animation, but will be able to physically - * interact with its physic environnement + * interact with its physics environment * * @param ragdollEnabled */ @@ -789,9 +787,9 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P } /** - * Set the control into Kinematic mode In theis mode, the collision shapes + * Set the control into Kinematic mode In this mode, the collision shapes * follow the movements of the skeleton, and can interact with physical - * environement + * environment */ public void setKinematicMode() { if (mode != Mode.Kinematic) { @@ -820,7 +818,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P } /** - * retruns the mode of this control + * returns the mode of this control * * @return */ @@ -903,7 +901,7 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P } /** - * For internal use only specific render for the ragdoll(if debugging) + * For internal use only specific render for the ragdoll (if debugging) * * @param rm * @param vp @@ -912,16 +910,6 @@ public class KinematicRagdollControl extends AbstractPhysicsControl implements P public void render(RenderManager rm, ViewPort vp) { } - @Override - public Control cloneForSpatial(Spatial spatial) { - KinematicRagdollControl control = new KinematicRagdollControl(preset, weightThreshold); - control.setMode(mode); - control.setRootMass(rootMass); - control.setWeightThreshold(weightThreshold); - control.setApplyPhysicsLocal(applyLocal); - return control; - } - @Override public Object jmeClone() { KinematicRagdollControl control = new KinematicRagdollControl(preset, weightThreshold); diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java index f2002be02..51675b72a 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/RigidBodyControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,6 @@ import com.jme3.scene.shape.Box; import com.jme3.scene.shape.Sphere; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; - import java.io.IOException; /** @@ -92,31 +91,10 @@ public class RigidBodyControl extends PhysicsRigidBody implements PhysicsControl super(shape, mass); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - RigidBodyControl control = new RigidBodyControl(collisionShape, mass); - control.setAngularFactor(getAngularFactor()); - control.setAngularSleepingThreshold(getAngularSleepingThreshold()); - control.setCcdMotionThreshold(getCcdMotionThreshold()); - control.setCcdSweptSphereRadius(getCcdSweptSphereRadius()); - control.setCollideWithGroups(getCollideWithGroups()); - control.setCollisionGroup(getCollisionGroup()); - control.setDamping(getLinearDamping(), getAngularDamping()); - control.setFriction(getFriction()); - control.setGravity(getGravity()); - control.setKinematic(isKinematic()); - control.setKinematicSpatial(isKinematicSpatial()); - control.setLinearSleepingThreshold(getLinearSleepingThreshold()); - control.setPhysicsLocation(getPhysicsLocation(null)); - control.setPhysicsRotation(getPhysicsRotationMatrix(null)); - control.setRestitution(getRestitution()); - - if (mass > 0) { - control.setAngularVelocity(getAngularVelocity()); - control.setLinearVelocity(getLinearVelocity()); - } - control.setApplyPhysicsLocal(isApplyPhysicsLocal()); - return control; + throw new UnsupportedOperationException(); } @Override diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java index 5f6af8175..bccd19941 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/VehicleControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,7 +43,6 @@ import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; -import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.scene.control.Control; import com.jme3.util.clone.Cloner; @@ -108,54 +107,10 @@ public class VehicleControl extends PhysicsVehicle implements PhysicsControl, Jm return spatial.getWorldRotation(); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - VehicleControl control = new VehicleControl(collisionShape, mass); - control.setAngularFactor(getAngularFactor()); - control.setAngularSleepingThreshold(getAngularSleepingThreshold()); - control.setAngularVelocity(getAngularVelocity()); - control.setCcdMotionThreshold(getCcdMotionThreshold()); - control.setCcdSweptSphereRadius(getCcdSweptSphereRadius()); - control.setCollideWithGroups(getCollideWithGroups()); - control.setCollisionGroup(getCollisionGroup()); - control.setDamping(getLinearDamping(), getAngularDamping()); - control.setFriction(getFriction()); - control.setGravity(getGravity()); - control.setKinematic(isKinematic()); - control.setLinearSleepingThreshold(getLinearSleepingThreshold()); - control.setLinearVelocity(getLinearVelocity()); - control.setPhysicsLocation(getPhysicsLocation()); - control.setPhysicsRotation(getPhysicsRotationMatrix()); - control.setRestitution(getRestitution()); - - control.setFrictionSlip(getFrictionSlip()); - control.setMaxSuspensionTravelCm(getMaxSuspensionTravelCm()); - control.setSuspensionStiffness(getSuspensionStiffness()); - control.setSuspensionCompression(tuning.suspensionCompression); - control.setSuspensionDamping(tuning.suspensionDamping); - control.setMaxSuspensionForce(getMaxSuspensionForce()); - - for (Iterator it = wheels.iterator(); it.hasNext();) { - VehicleWheel wheel = it.next(); - VehicleWheel newWheel = control.addWheel(wheel.getLocation(), wheel.getDirection(), wheel.getAxle(), wheel.getRestLength(), wheel.getRadius(), wheel.isFrontWheel()); - newWheel.setFrictionSlip(wheel.getFrictionSlip()); - newWheel.setMaxSuspensionTravelCm(wheel.getMaxSuspensionTravelCm()); - newWheel.setSuspensionStiffness(wheel.getSuspensionStiffness()); - newWheel.setWheelsDampingCompression(wheel.getWheelsDampingCompression()); - newWheel.setWheelsDampingRelaxation(wheel.getWheelsDampingRelaxation()); - newWheel.setMaxSuspensionForce(wheel.getMaxSuspensionForce()); - - //TODO: bad way finding children! - if (spatial instanceof Node) { - Node node = (Node) spatial; - Spatial wheelSpat = node.getChild(wheel.getWheelSpatial().getName()); - if (wheelSpat != null) { - newWheel.setWheelSpatial(wheelSpat); - } - } - } - control.setApplyPhysicsLocal(isApplyPhysicsLocal()); - return control; + throw new UnsupportedOperationException(); } @Override diff --git a/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java b/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java index bd162c9d2..72921f0c7 100644 --- a/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java +++ b/jme3-bullet/src/common/java/com/jme3/bullet/control/ragdoll/RagdollUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -123,7 +123,7 @@ public class RagdollUtils { /** * Create a hull collision shape from linked vertices to this bone. - * Vertices have to be previoulsly gathered in a map using buildPointMap method + * Vertices have to be previously gathered in a map using buildPointMap method * * @param pointsMap * @param boneIndices @@ -160,7 +160,7 @@ public class RagdollUtils { return new HullCollisionShape(p); } - //retruns the list of bone indices of the given bone and its child(if they are not in the boneList) + //returns the list of bone indices of the given bone and its child (if they are not in the boneList) public static List getBoneIndices(Bone bone, Skeleton skeleton, Set boneList) { List list = new LinkedList(); if (boneList.isEmpty()) { @@ -266,7 +266,7 @@ public class RagdollUtils { /** * Updates a bone position and rotation. - * if the child bones are not in the bone list this means, they are not associated with a physic shape. + * if the child bones are not in the bone list this means, they are not associated with a physics shape. * So they have to be updated * @param bone the bone * @param pos the position diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java b/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java index 74c44a0b9..f0df9740c 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/PhysicsSpace.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -235,7 +235,7 @@ public class PhysicsSpace { // collides = (bp1.collisionFilterGroup & bp.collisionFilterMask) != 0; // } // if (collides) { -// assert (bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject && bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject); +// assert (bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject && bp1.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject); // com.bulletphysics.collision.dispatch.CollisionObject colOb = (com.bulletphysics.collision.dispatch.CollisionObject) bp.clientObject; // com.bulletphysics.collision.dispatch.CollisionObject colOb1 = (com.bulletphysics.collision.dispatch.CollisionObject) bp1.clientObject; // assert (colOb.getUserPointer() != null && colOb1.getUserPointer() != null); @@ -954,7 +954,7 @@ public class PhysicsSpace { * determinism in physics. For example a maximum number of 2 can compensate * for framerates as low as 30fps when the physics has the default accuracy * of 60 fps. Note that setting this value too high can make the physics - * drive down its own fps in case its overloaded. + * drive down its own fps in case it's overloaded. * * @param steps The maximum number of extra steps, default is 4. */ diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java index c9299f2d0..7e268e56b 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -96,7 +96,7 @@ public abstract class PhysicsCollisionObject implements Savable { * Sets the collision group number for this physics object.
* The groups are integer bit masks and some pre-made variables are available in CollisionObject. * All physics objects are by default in COLLISION_GROUP_01.
- * Two object will collide when one of the partys has the + * Two object will collide when one of the parties has the * collisionGroup of the other in its collideWithGroups set. * @param collisionGroup the collisionGroup to set */ @@ -109,7 +109,7 @@ public abstract class PhysicsCollisionObject implements Savable { /** * Add a group that this object will collide with.
- * Two object will collide when one of the partys has the + * Two object will collide when one of the parties has the * collisionGroup of the other in its collideWithGroups set.
* @param collisionGroup */ diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java index 4284e7ad3..faf739632 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -44,7 +44,7 @@ import java.util.logging.Logger; /** * From bullet manual:
- * To create ragdolls, the conve twist constraint is very useful for limbs like the upper arm. + * To create ragdolls, the cone twist constraint is very useful for limbs like the upper arm. * It is a special point to point constraint that adds cone and twist axis limits. * The x-axis serves as twist axis. * @author normenhansen diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java b/jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java index 2906d7243..352517df7 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -121,7 +121,7 @@ public class HingeJoint extends PhysicsJoint { * @param high the high limit in radians. * @param _softness the factor at which the velocity error correction starts operating,i.e a softness of 0.9 means that the vel. corr starts at 90% of the limit range. * @param _biasFactor the magnitude of the position correction. It tells you how strictly the position error (drift ) is corrected. - * @param _relaxationFactor the rate at which velocity errors are corrected. This can be seen as the strength of the limits. A low value will make the the limits more spongy. + * @param _relaxationFactor the rate at which velocity errors are corrected. This can be seen as the strength of the limits. A low value will make the limits more spongy. */ public void setLimit(float low, float high, float _softness, float _biasFactor, float _relaxationFactor) { biasFactor = _biasFactor; diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java index 84c16f831..1330ae09d 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsRigidBody.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -265,7 +265,7 @@ public class PhysicsRigidBody extends PhysicsCollisionObject { // } /** * Sets the node to kinematic mode. in this mode the node is not affected by physics - * but affects other physics objects. Iits kinetic force is calculated by the amount + * but affects other physics objects. Its kinetic force is calculated by the amount * of movement it is exposed to and its weight. * @param kinematic */ diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java index 63d90ef9f..d18fd0401 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -283,8 +283,8 @@ public class PhysicsVehicle extends PhysicsRigidBody { } /** - * This vaue caps the maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * This value caps the maximum suspension force, raise this above the default 6000 if your suspension cannot + * handle the weight of your vehicle. * @param maxSuspensionForce */ public void setMaxSuspensionForce(float maxSuspensionForce) { @@ -292,8 +292,8 @@ public class PhysicsVehicle extends PhysicsRigidBody { } /** - * This vaue caps the maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * This value caps the maximum suspension force, raise this above the default 6000 if your suspension cannot + * handle the weight of your vehicle. * @param wheel * @param maxSuspensionForce */ diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java b/jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java index 1e86cc256..1c7820907 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -242,7 +242,7 @@ public class VehicleWheel implements Savable { /** * The maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * handle the weight of your vehicle. * @param maxSuspensionTravelCm */ public void setMaxSuspensionForce(float maxSuspensionForce) { diff --git a/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java b/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java index c731035ca..939be4083 100644 --- a/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java +++ b/jme3-bullet/src/main/java/com/jme3/bullet/util/DebugShapeFactory.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2017 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,6 +35,7 @@ import com.jme3.bullet.collision.shapes.CollisionShape; import com.jme3.bullet.collision.shapes.CompoundCollisionShape; import com.jme3.bullet.collision.shapes.infos.ChildCollisionShape; import com.jme3.math.Matrix3f; +import com.jme3.math.Vector3f; import com.jme3.scene.Geometry; import com.jme3.scene.Mesh; import com.jme3.scene.Node; @@ -111,9 +112,16 @@ public class DebugShapeFactory { public static Mesh getDebugMesh(CollisionShape shape) { Mesh mesh = new Mesh(); - mesh = new Mesh(); DebugMeshCallback callback = new DebugMeshCallback(); + /* + * Populate the mesh based on an unscaled shape; + * the shape's scale will be applied later, to the geometry. + */ + Vector3f savedScale = shape.getScale().clone(); + shape.setScale(Vector3f.UNIT_XYZ); getVertices(shape.getObjectId(), callback); + shape.setScale(savedScale); + mesh.setBuffer(Type.Position, 3, callback.getVertices()); mesh.getFloatBuffer(Type.Position).clear(); return mesh; diff --git a/jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java b/jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java index e483e63e7..42854ee43 100644 --- a/jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java +++ b/jme3-core/src/main/java/checkers/quals/DefaultQualifiers.java @@ -15,7 +15,7 @@ import java.lang.annotation.Target; * annotations of the same name at a single location. * * Example: - * + * *
  *   @DefaultQualifiers({
  *       @DefaultQualifier("NonNull"),
diff --git a/jme3-core/src/main/java/com/jme3/animation/AnimChannel.java b/jme3-core/src/main/java/com/jme3/animation/AnimChannel.java
index 44b836115..0cd24cab8 100644
--- a/jme3-core/src/main/java/com/jme3/animation/AnimChannel.java
+++ b/jme3-core/src/main/java/com/jme3/animation/AnimChannel.java
@@ -1,365 +1,369 @@
-/*
- * Copyright (c) 2009-2012 jMonkeyEngine
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are
- * met:
- *
- * * Redistributions of source code must retain the above copyright
- *   notice, this list of conditions and the following disclaimer.
- *
- * * Redistributions in binary form must reproduce the above copyright
- *   notice, this list of conditions and the following disclaimer in the
- *   documentation and/or other materials provided with the distribution.
- *
- * * Neither the name of 'jMonkeyEngine' nor the names of its contributors
- *   may be used to endorse or promote products derived from this software
- *   without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
- * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
- * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
- * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
- * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
- * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
- * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
- * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-package com.jme3.animation;
-
-import com.jme3.math.FastMath;
-import com.jme3.util.TempVars;
-import java.util.BitSet;
-
-/**
- * AnimChannel provides controls, such as play, pause,
- * fast forward, etc, for an animation. The animation
- * channel may influence the entire model or specific bones of the model's
- * skeleton. A single model may have multiple animation channels influencing
- * various parts of its body. For example, a character model may have an
- * animation channel for its feet, and another for its torso, and
- * the animations for each channel are controlled independently.
- * 
- * @author Kirill Vainer
- */
-public final class AnimChannel {
-
-    private static final float DEFAULT_BLEND_TIME = 0.15f;
-    
-    private AnimControl control;
-
-    private BitSet affectedBones;
-
-    private Animation animation;
-    private Animation blendFrom;
-    private float time;
-    private float speed;
-    private float timeBlendFrom;
-    private float blendTime;
-    private float speedBlendFrom;
-    private boolean notified=false;
-
-    private LoopMode loopMode, loopModeBlendFrom;
-    
-    private float blendAmount = 1f;
-    private float blendRate   = 0;
-    
-    AnimChannel(AnimControl control){
-        this.control = control;
-    }
-
-    /**
-     * Returns the parent control of this AnimChannel.
-     * 
-     * @return the parent control of this AnimChannel.
-     * @see AnimControl
-     */
-    public AnimControl getControl() {
-        return control;
-    }
-    
-    /**
-     * @return The name of the currently playing animation, or null if
-     * none is assigned.
-     *
-     * @see AnimChannel#setAnim(java.lang.String) 
-     */
-    public String getAnimationName() {
-        return animation != null ? animation.getName() : null;
-    }
-
-    /**
-     * @return The loop mode currently set for the animation. The loop mode
-     * determines what will happen to the animation once it finishes
-     * playing.
-     * 
-     * For more information, see the LoopMode enum class.
-     * @see LoopMode
-     * @see AnimChannel#setLoopMode(com.jme3.animation.LoopMode)
-     */
-    public LoopMode getLoopMode() {
-        return loopMode;
-    }
-
-    /**
-     * @param loopMode Set the loop mode for the channel. The loop mode
-     * determines what will happen to the animation once it finishes
-     * playing.
-     *
-     * For more information, see the LoopMode enum class.
-     * @see LoopMode
-     */
-    public void setLoopMode(LoopMode loopMode) {
-        this.loopMode = loopMode;
-    }
-
-    /**
-     * @return The speed that is assigned to the animation channel. The speed
-     * is a scale value starting from 0.0, at 1.0 the animation will play
-     * at its default speed.
-     *
-     * @see AnimChannel#setSpeed(float)
-     */
-    public float getSpeed() {
-        return speed;
-    }
-
-    /**
-     * @param speed Set the speed of the animation channel. The speed
-     * is a scale value starting from 0.0, at 1.0 the animation will play
-     * at its default speed.
-     */
-    public void setSpeed(float speed) {
-        this.speed = speed;
-        if(blendTime>0){
-            this.speedBlendFrom = speed;
-            blendTime = Math.min(blendTime, animation.getLength() / speed);  
-            blendRate = 1/ blendTime;
-        }
-    }
-
-    /**
-     * @return The time of the currently playing animation. The time
-     * starts at 0 and continues on until getAnimMaxTime().
-     *
-     * @see AnimChannel#setTime(float)
-     */
-    public float getTime() {
-        return time;
-    }
-
-    /**
-     * @param time Set the time of the currently playing animation, the time
-     * is clamped from 0 to {@link #getAnimMaxTime()}. 
-     */
-    public void setTime(float time) {
-        this.time = FastMath.clamp(time, 0, getAnimMaxTime());
-    }
-
-    /**
-     * @return The length of the currently playing animation, or zero
-     * if no animation is playing.
-     *
-     * @see AnimChannel#getTime()
-     */
-    public float getAnimMaxTime(){
-        return animation != null ? animation.getLength() : 0f;
-    }
-
-    /**
-     * Set the current animation that is played by this AnimChannel.
-     * 

- * This resets the time to zero, and optionally blends the animation - * over blendTime seconds with the currently playing animation. - * Notice that this method will reset the control's speed to 1.0. - * - * @param name The name of the animation to play - * @param blendTime The blend time over which to blend the new animation - * with the old one. If zero, then no blending will occur and the new - * animation will be applied instantly. - */ - public void setAnim(String name, float blendTime){ - if (name == null) - throw new IllegalArgumentException("name cannot be null"); - - if (blendTime < 0f) - throw new IllegalArgumentException("blendTime cannot be less than zero"); - - Animation anim = control.animationMap.get(name); - if (anim == null) - throw new IllegalArgumentException("Cannot find animation named: '"+name+"'"); - - control.notifyAnimChange(this, name); - - if (animation != null && blendTime > 0f){ - this.blendTime = blendTime; - // activate blending - blendTime = Math.min(blendTime, anim.getLength() / speed); - blendFrom = animation; - timeBlendFrom = time; - speedBlendFrom = speed; - loopModeBlendFrom = loopMode; - blendAmount = 0f; - blendRate = 1f / blendTime; - }else{ - blendFrom = null; - } - - animation = anim; - time = 0; - speed = 1f; - loopMode = LoopMode.Loop; - notified = false; - } - - /** - * Set the current animation that is played by this AnimChannel. - *

- * See {@link #setAnim(java.lang.String, float)}. - * The blendTime argument by default is 150 milliseconds. - * - * @param name The name of the animation to play - */ - public void setAnim(String name){ - setAnim(name, DEFAULT_BLEND_TIME); - } - - /** - * Add all the bones of the model's skeleton to be - * influenced by this animation channel. - */ - public void addAllBones() { - affectedBones = null; - } - - /** - * Add a single bone to be influenced by this animation channel. - */ - public void addBone(String name) { - addBone(control.getSkeleton().getBone(name)); - } - - /** - * Add a single bone to be influenced by this animation channel. - */ - public void addBone(Bone bone) { - int boneIndex = control.getSkeleton().getBoneIndex(bone); - if(affectedBones == null) { - affectedBones = new BitSet(control.getSkeleton().getBoneCount()); - } - affectedBones.set(boneIndex); - } - - /** - * Add bones to be influenced by this animation channel starting from the - * given bone name and going toward the root bone. - */ - public void addToRootBone(String name) { - addToRootBone(control.getSkeleton().getBone(name)); - } - - /** - * Add bones to be influenced by this animation channel starting from the - * given bone and going toward the root bone. - */ - public void addToRootBone(Bone bone) { - addBone(bone); - while (bone.getParent() != null) { - bone = bone.getParent(); - addBone(bone); - } - } - - /** - * Add bones to be influenced by this animation channel, starting - * from the given named bone and going toward its children. - */ - public void addFromRootBone(String name) { - addFromRootBone(control.getSkeleton().getBone(name)); - } - - /** - * Add bones to be influenced by this animation channel, starting - * from the given bone and going toward its children. - */ - public void addFromRootBone(Bone bone) { - addBone(bone); - if (bone.getChildren() == null) - return; - for (Bone childBone : bone.getChildren()) { - addBone(childBone); - addFromRootBone(childBone); - } - } - - BitSet getAffectedBones(){ - return affectedBones; - } - - public void reset(boolean rewind){ - if(rewind){ - setTime(0); - if(control.getSkeleton()!=null){ - control.getSkeleton().resetAndUpdate(); - }else{ - TempVars vars = TempVars.get(); - update(0, vars); - vars.release(); - } - } - animation = null; - notified = false; - } - - void update(float tpf, TempVars vars) { - if (animation == null) - return; - - if (blendFrom != null && blendAmount != 1.0f){ - // The blendFrom anim is set, the actual animation - // playing will be set -// blendFrom.setTime(timeBlendFrom, 1f, control, this, vars); - blendFrom.setTime(timeBlendFrom, 1f - blendAmount, control, this, vars); - - timeBlendFrom += tpf * speedBlendFrom; - timeBlendFrom = AnimationUtils.clampWrapTime(timeBlendFrom, - blendFrom.getLength(), - loopModeBlendFrom); - if (timeBlendFrom < 0){ - timeBlendFrom = -timeBlendFrom; - speedBlendFrom = -speedBlendFrom; - } - - blendAmount += tpf * blendRate; - if (blendAmount > 1f){ - blendAmount = 1f; - blendFrom = null; - } - } - - animation.setTime(time, blendAmount, control, this, vars); - time += tpf * speed; - if (animation.getLength() > 0){ - if (!notified && (time >= animation.getLength() || time < 0)) { - if (loopMode == LoopMode.DontLoop) { - // Note that this flag has to be set before calling the notify - // since the notify may start a new animation and then unset - // the flag. - notified = true; - } - control.notifyAnimCycleDone(this, animation.getName()); - } - } - time = AnimationUtils.clampWrapTime(time, animation.getLength(), loopMode); - if (time < 0){ - // Negative time indicates that speed should be inverted - // (for cycle loop mode only) - time = -time; - speed = -speed; - } - } -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.animation; + +import com.jme3.math.FastMath; +import com.jme3.util.TempVars; +import java.util.BitSet; + +/** + * AnimChannel provides controls, such as play, pause, + * fast forward, etc, for an animation. The animation + * channel may influence the entire model or specific bones of the model's + * skeleton. A single model may have multiple animation channels influencing + * various parts of its body. For example, a character model may have an + * animation channel for its feet, and another for its torso, and + * the animations for each channel are controlled independently. + * + * @author Kirill Vainer + */ +public final class AnimChannel { + + private static final float DEFAULT_BLEND_TIME = 0.15f; + + private AnimControl control; + + private BitSet affectedBones; + + private Animation animation; + private Animation blendFrom; + private float time; + private float speed; + private float timeBlendFrom; + private float blendTime; + private float speedBlendFrom; + private boolean notified=false; + + private LoopMode loopMode, loopModeBlendFrom; + + private float blendAmount = 1f; + private float blendRate = 0; + + public AnimChannel(){ + + } + + public AnimChannel(AnimControl control){ + this.control = control; + } + + /** + * Returns the parent control of this AnimChannel. + * + * @return the parent control of this AnimChannel. + * @see AnimControl + */ + public AnimControl getControl() { + return control; + } + + /** + * @return The name of the currently playing animation, or null if + * none is assigned. + * + * @see AnimChannel#setAnim(java.lang.String) + */ + public String getAnimationName() { + return animation != null ? animation.getName() : null; + } + + /** + * @return The loop mode currently set for the animation. The loop mode + * determines what will happen to the animation once it finishes + * playing. + * + * For more information, see the LoopMode enum class. + * @see LoopMode + * @see AnimChannel#setLoopMode(com.jme3.animation.LoopMode) + */ + public LoopMode getLoopMode() { + return loopMode; + } + + /** + * @param loopMode Set the loop mode for the channel. The loop mode + * determines what will happen to the animation once it finishes + * playing. + * + * For more information, see the LoopMode enum class. + * @see LoopMode + */ + public void setLoopMode(LoopMode loopMode) { + this.loopMode = loopMode; + } + + /** + * @return The speed that is assigned to the animation channel. The speed + * is a scale value starting from 0.0, at 1.0 the animation will play + * at its default speed. + * + * @see AnimChannel#setSpeed(float) + */ + public float getSpeed() { + return speed; + } + + /** + * @param speed Set the speed of the animation channel. The speed + * is a scale value starting from 0.0, at 1.0 the animation will play + * at its default speed. + */ + public void setSpeed(float speed) { + this.speed = speed; + if(blendTime>0){ + this.speedBlendFrom = speed; + blendTime = Math.min(blendTime, animation.getLength() / speed); + blendRate = 1/ blendTime; + } + } + + /** + * @return The time of the currently playing animation. The time + * starts at 0 and continues on until getAnimMaxTime(). + * + * @see AnimChannel#setTime(float) + */ + public float getTime() { + return time; + } + + /** + * @param time Set the time of the currently playing animation, the time + * is clamped from 0 to {@link #getAnimMaxTime()}. + */ + public void setTime(float time) { + this.time = FastMath.clamp(time, 0, getAnimMaxTime()); + } + + /** + * @return The length of the currently playing animation, or zero + * if no animation is playing. + * + * @see AnimChannel#getTime() + */ + public float getAnimMaxTime(){ + return animation != null ? animation.getLength() : 0f; + } + + /** + * Set the current animation that is played by this AnimChannel. + *

+ * This resets the time to zero, and optionally blends the animation + * over blendTime seconds with the currently playing animation. + * Notice that this method will reset the control's speed to 1.0. + * + * @param name The name of the animation to play + * @param blendTime The blend time over which to blend the new animation + * with the old one. If zero, then no blending will occur and the new + * animation will be applied instantly. + */ + public void setAnim(String name, float blendTime){ + if (name == null) + throw new IllegalArgumentException("name cannot be null"); + + if (blendTime < 0f) + throw new IllegalArgumentException("blendTime cannot be less than zero"); + + Animation anim = control.animationMap.get(name); + if (anim == null) + throw new IllegalArgumentException("Cannot find animation named: '"+name+"'"); + + control.notifyAnimChange(this, name); + + if (animation != null && blendTime > 0f){ + this.blendTime = blendTime; + // activate blending + blendTime = Math.min(blendTime, anim.getLength() / speed); + blendFrom = animation; + timeBlendFrom = time; + speedBlendFrom = speed; + loopModeBlendFrom = loopMode; + blendAmount = 0f; + blendRate = 1f / blendTime; + }else{ + blendFrom = null; + } + + animation = anim; + time = 0; + speed = 1f; + loopMode = LoopMode.Loop; + notified = false; + } + + /** + * Set the current animation that is played by this AnimChannel. + *

+ * See {@link #setAnim(java.lang.String, float)}. + * The blendTime argument by default is 150 milliseconds. + * + * @param name The name of the animation to play + */ + public void setAnim(String name){ + setAnim(name, DEFAULT_BLEND_TIME); + } + + /** + * Add all the bones of the model's skeleton to be + * influenced by this animation channel. + */ + public void addAllBones() { + affectedBones = null; + } + + /** + * Add a single bone to be influenced by this animation channel. + */ + public void addBone(String name) { + addBone(control.getSkeleton().getBone(name)); + } + + /** + * Add a single bone to be influenced by this animation channel. + */ + public void addBone(Bone bone) { + int boneIndex = control.getSkeleton().getBoneIndex(bone); + if(affectedBones == null) { + affectedBones = new BitSet(control.getSkeleton().getBoneCount()); + } + affectedBones.set(boneIndex); + } + + /** + * Add bones to be influenced by this animation channel starting from the + * given bone name and going toward the root bone. + */ + public void addToRootBone(String name) { + addToRootBone(control.getSkeleton().getBone(name)); + } + + /** + * Add bones to be influenced by this animation channel starting from the + * given bone and going toward the root bone. + */ + public void addToRootBone(Bone bone) { + addBone(bone); + while (bone.getParent() != null) { + bone = bone.getParent(); + addBone(bone); + } + } + + /** + * Add bones to be influenced by this animation channel, starting + * from the given named bone and going toward its children. + */ + public void addFromRootBone(String name) { + addFromRootBone(control.getSkeleton().getBone(name)); + } + + /** + * Add bones to be influenced by this animation channel, starting + * from the given bone and going toward its children. + */ + public void addFromRootBone(Bone bone) { + addBone(bone); + if (bone.getChildren() == null) + return; + for (Bone childBone : bone.getChildren()) { + addBone(childBone); + addFromRootBone(childBone); + } + } + + BitSet getAffectedBones(){ + return affectedBones; + } + + public void reset(boolean rewind){ + if(rewind){ + setTime(0); + if(control.getSkeleton()!=null){ + control.getSkeleton().resetAndUpdate(); + }else{ + TempVars vars = TempVars.get(); + update(0, vars); + vars.release(); + } + } + animation = null; + notified = false; + } + + void update(float tpf, TempVars vars) { + if (animation == null) + return; + + if (blendFrom != null && blendAmount != 1.0f){ + // The blendFrom anim is set, the actual animation + // playing will be set +// blendFrom.setTime(timeBlendFrom, 1f, control, this, vars); + blendFrom.setTime(timeBlendFrom, 1f - blendAmount, control, this, vars); + + timeBlendFrom += tpf * speedBlendFrom; + timeBlendFrom = AnimationUtils.clampWrapTime(timeBlendFrom, + blendFrom.getLength(), + loopModeBlendFrom); + if (timeBlendFrom < 0){ + timeBlendFrom = -timeBlendFrom; + speedBlendFrom = -speedBlendFrom; + } + + blendAmount += tpf * blendRate; + if (blendAmount > 1f){ + blendAmount = 1f; + blendFrom = null; + } + } + + animation.setTime(time, blendAmount, control, this, vars); + time += tpf * speed; + if (animation.getLength() > 0){ + if (!notified && (time >= animation.getLength() || time < 0)) { + if (loopMode == LoopMode.DontLoop) { + // Note that this flag has to be set before calling the notify + // since the notify may start a new animation and then unset + // the flag. + notified = true; + } + control.notifyAnimCycleDone(this, animation.getName()); + } + } + time = AnimationUtils.clampWrapTime(time, animation.getLength(), loopMode); + if (time < 0){ + // Negative time indicates that speed should be inverted + // (for cycle loop mode only) + time = -time; + speed = -speed; + } + } +} diff --git a/jme3-core/src/main/java/com/jme3/animation/AnimControl.java b/jme3-core/src/main/java/com/jme3/animation/AnimControl.java index 36dbb6be5..8718cde26 100644 --- a/jme3-core/src/main/java/com/jme3/animation/AnimControl.java +++ b/jme3-core/src/main/java/com/jme3/animation/AnimControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,19 +34,16 @@ package com.jme3.animation; import com.jme3.export.*; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; -import com.jme3.scene.Mesh; import com.jme3.scene.Spatial; import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; +import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; -import com.jme3.util.TempVars; import java.io.IOException; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.Map; -import java.util.Map.Entry; /** * AnimControl is a Spatial control that allows manipulation @@ -108,32 +105,6 @@ public final class AnimControl extends AbstractControl implements Cloneable, Jme public AnimControl() { } - /** - * Internal use only. - */ - @Override - public Control cloneForSpatial(Spatial spatial) { - try { - AnimControl clone = (AnimControl) super.clone(); - clone.spatial = spatial; - clone.channels = new ArrayList(); - clone.listeners = new ArrayList(); - - if (skeleton != null) { - clone.skeleton = new Skeleton(skeleton); - } - - // animationMap is cloned, but only ClonableTracks will be cloned as they need a reference to a cloned spatial - for (Entry animEntry : animationMap.entrySet()) { - clone.animationMap.put(animEntry.getKey(), animEntry.getValue().cloneForSpatial(spatial)); - } - - return clone; - } catch (CloneNotSupportedException ex) { - throw new AssertionError(); - } - } - @Override public Object jmeClone() { AnimControl clone = (AnimControl) super.jmeClone(); diff --git a/jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java b/jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java index 9272fe5e3..2254638e7 100644 --- a/jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java +++ b/jme3-core/src/main/java/com/jme3/animation/AnimationUtils.java @@ -31,17 +31,15 @@ */ package com.jme3.animation; -import static com.jme3.animation.LoopMode.Cycle; -import static com.jme3.animation.LoopMode.DontLoop; -import static com.jme3.animation.LoopMode.Loop; - /** * * @author Nehon */ public class AnimationUtils { - + public AnimationUtils(){ + + } /** * Clamps the time according to duration and loopMode * @param time @@ -50,7 +48,7 @@ public class AnimationUtils { * @return */ public static float clampWrapTime(float time, float duration, LoopMode loopMode){ - if (time == 0) { + if (time == 0 || duration == 0) { return 0; // prevent division by 0 errors } switch (loopMode) { diff --git a/jme3-core/src/main/java/com/jme3/animation/Bone.java b/jme3-core/src/main/java/com/jme3/animation/Bone.java index 15ac6cc6f..e055f2e46 100644 --- a/jme3-core/src/main/java/com/jme3/animation/Bone.java +++ b/jme3-core/src/main/java/com/jme3/animation/Bone.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -32,15 +32,15 @@ package com.jme3.animation; import com.jme3.export.*; +import com.jme3.material.MatParamOverride; import com.jme3.math.*; -import com.jme3.scene.Geometry; -import com.jme3.scene.Mesh; -import com.jme3.scene.Node; -import com.jme3.scene.Spatial; +import com.jme3.scene.*; +import com.jme3.shader.VarType; import com.jme3.util.SafeArrayList; import com.jme3.util.TempVars; -import com.jme3.util.clone.JmeCloneable; import com.jme3.util.clone.Cloner; +import com.jme3.util.clone.JmeCloneable; + import java.io.IOException; import java.util.ArrayList; @@ -550,7 +550,7 @@ public final class Bone implements Savable, JmeCloneable { } /** - * Updates world transforms for this bone and it's children. + * Updates world transforms for this bone and its children. */ public final void update() { this.updateModelTransforms(); @@ -590,7 +590,7 @@ public final class Bone implements Savable, JmeCloneable { } /** - * Reset the bone and it's children to bind pose. + * Reset the bone and its children to bind pose. */ final void reset() { if (!userControl) { @@ -677,7 +677,7 @@ public final class Bone implements Savable, JmeCloneable { modelPos.set(translation); modelRot.set(rotation); - //if there is an attached Node we need to set it's local transforms too. + //if there is an attached Node we need to set its local transforms too. if(attachNode != null){ attachNode.setLocalTranslation(translation); attachNode.setLocalRotation(rotation); @@ -723,6 +723,8 @@ public final class Bone implements Savable, JmeCloneable { if (attachNode == null) { attachNode = new Node(name + "_attachnode"); attachNode.setUserData("AttachedBone", this); + //We don't want the node to have a numBone set by a parent node so we force it to null + attachNode.addMatParamOverride(new MatParamOverride(VarType.Int, "NumberOfBones", null)); } return attachNode; diff --git a/jme3-core/src/main/java/com/jme3/animation/BoneTrack.java b/jme3-core/src/main/java/com/jme3/animation/BoneTrack.java index 1dd27ba24..1eca2e9dc 100644 --- a/jme3-core/src/main/java/com/jme3/animation/BoneTrack.java +++ b/jme3-core/src/main/java/com/jme3/animation/BoneTrack.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,6 +35,8 @@ import com.jme3.export.*; import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; import com.jme3.util.TempVars; +import com.jme3.util.clone.Cloner; +import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.BitSet; @@ -43,10 +45,10 @@ import java.util.BitSet; * * @author Kirill Vainer */ -public final class BoneTrack implements Track { +public final class BoneTrack implements JmeCloneable, Track { /** - * Bone index in the skeleton which this track effects. + * Bone index in the skeleton which this track affects. */ private int targetBoneIndex; @@ -138,16 +140,23 @@ public final class BoneTrack implements Track { /** * Set the translations and rotations for this bone track - * @param times a float array with the time of each frame - * @param translations the translation of the bone for each frame - * @param rotations the rotation of the bone for each frame + * + * @param times the time of each frame, measured from the start of the track + * (not null, length>0) + * @param translations the translation of the bone for each frame (not null, + * same length as times) + * @param rotations the rotation of the bone for each frame (not null, same + * length as times) */ public void setKeyframes(float[] times, Vector3f[] translations, Quaternion[] rotations) { if (times.length == 0) { throw new RuntimeException("BoneTrack with no keyframes!"); } - assert times.length == translations.length && times.length == rotations.length; + assert translations != null; + assert times.length == translations.length; + assert rotations != null; + assert times.length == rotations.length; this.times = times; this.translations = new CompactVector3Array(); @@ -160,15 +169,19 @@ public final class BoneTrack implements Track { /** * Set the translations, rotations and scales for this bone track - * @param times a float array with the time of each frame - * @param translations the translation of the bone for each frame - * @param rotations the rotation of the bone for each frame - * @param scales the scale of the bone for each frame + * + * @param times the time of each frame, measured from the start of the track + * (not null, length>0) + * @param translations the translation of the bone for each frame (not null, + * same length as times) + * @param rotations the rotation of the bone for each frame (not null, same + * length as times) + * @param scales the scale of the bone for each frame (ignored if null) */ public void setKeyframes(float[] times, Vector3f[] translations, Quaternion[] rotations, Vector3f[] scales) { this.setKeyframes(times, translations, rotations); - assert times.length == scales.length; if (scales != null) { + assert times.length == scales.length; this.scales = new CompactVector3Array(); this.scales.add(scales); this.scales.freeze(); @@ -261,33 +274,48 @@ public final class BoneTrack implements Track { public float[] getKeyFrameTimes() { return times; } - + /** - * This method creates a clone of the current object. - * @return a clone of the current object + * Create a deep clone of this track. + * + * @return a new track */ @Override public BoneTrack clone() { - int tablesLength = times.length; - - float[] times = this.times.clone(); - Vector3f[] sourceTranslations = this.getTranslations(); - Quaternion[] sourceRotations = this.getRotations(); - Vector3f[] sourceScales = this.getScales(); + return Cloner.deepClone(this); + } - Vector3f[] translations = new Vector3f[tablesLength]; - Quaternion[] rotations = new Quaternion[tablesLength]; - Vector3f[] scales = new Vector3f[tablesLength]; - for (int i = 0; i < tablesLength; ++i) { - translations[i] = sourceTranslations[i].clone(); - rotations[i] = sourceRotations[i].clone(); - scales[i] = sourceScales != null ? sourceScales[i].clone() : new Vector3f(1.0f, 1.0f, 1.0f); + /** + * Create a shallow clone for the JME cloner. + * + * @return a new track + */ + @Override + public BoneTrack jmeClone() { + try { + return (BoneTrack) super.clone(); + } catch (CloneNotSupportedException exception) { + throw new RuntimeException("Can't clone track", exception); } - - // Need to use the constructor here because of the final fields used in this class - return new BoneTrack(targetBoneIndex, times, translations, rotations, scales); } - + + /** + * Callback from {@link com.jme3.util.clone.Cloner} to convert this + * shallow-cloned track into a deep-cloned one, using the specified cloner + * to resolve copied fields. + * + * @param cloner the cloner currently cloning this control (not null) + * @param original the track from which this track was shallow-cloned + * (unused) + */ + @Override + public void cloneFields(Cloner cloner, Object original) { + translations = cloner.clone(translations); + rotations = cloner.clone(rotations); + scales = cloner.clone(scales); + times = cloner.clone(times); + } + @Override public void write(JmeExporter ex) throws IOException { OutputCapsule oc = ex.getCapsule(this); diff --git a/jme3-core/src/main/java/com/jme3/animation/CompactArray.java b/jme3-core/src/main/java/com/jme3/animation/CompactArray.java index 03983a10a..f251b44a2 100644 --- a/jme3-core/src/main/java/com/jme3/animation/CompactArray.java +++ b/jme3-core/src/main/java/com/jme3/animation/CompactArray.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,6 +31,8 @@ */ package com.jme3.animation; +import com.jme3.util.clone.Cloner; +import com.jme3.util.clone.JmeCloneable; import java.lang.reflect.Array; import java.util.HashMap; import java.util.Map; @@ -40,7 +42,7 @@ import java.util.Map; * @author Lim, YongHoon * @param */ -public abstract class CompactArray { +public abstract class CompactArray implements JmeCloneable { private Map indexPool = new HashMap(); protected int[] index; @@ -68,6 +70,7 @@ public abstract class CompactArray { * They are serialized automatically when get() method is called. * @param objArray */ + @SuppressWarnings("unchecked") public void add(T... objArray) { if (objArray == null || objArray.length == 0) { return; @@ -186,10 +189,11 @@ public abstract class CompactArray { } /** - * retrun an array of indices for the given objects + * Return an array of indices for the given objects * @param objArray * @return */ + @SuppressWarnings("unchecked") public final int[] getIndex(T... objArray) { int[] index = new int[objArray.length]; for (int i = 0; i < index.length; i++) { @@ -228,6 +232,7 @@ public abstract class CompactArray { * decompress and return object array * @return decompress and return object array */ + @SuppressWarnings("unchecked") public final T[] toObjectArray() { try { T[] compactArr = (T[]) Array.newInstance(getElementClass(), getSerializedSize() / getTupleSize()); @@ -247,6 +252,47 @@ public abstract class CompactArray { } } + /** + * Create a deep clone of this array. + * + * @return a new array + * @throws java.lang.CloneNotSupportedException + */ + @Override + public Object clone() throws CloneNotSupportedException { + return Cloner.deepClone(this); + } + + /** + * Create a shallow clone for the JME cloner. + * + * @return a new array + */ + @Override + public Object jmeClone() { + try { + return super.clone(); + } catch (CloneNotSupportedException exception) { + throw new RuntimeException("Can't clone array", exception); + } + } + + /** + * Callback from {@link com.jme3.util.clone.Cloner} to convert this + * shallow-cloned array into a deep-cloned one, using the specified cloner + * to resolve copied fields. + * + * @param cloner the cloner currently cloning this control (not null) + * @param original the array from which this array was shallow-cloned + * (unused) + */ + @Override + public void cloneFields(Cloner cloner, Object original) { + indexPool = cloner.clone(indexPool); + index = cloner.clone(index); + array = cloner.clone(array); + } + /** * serialize object * @param compactIndex compacted object index diff --git a/jme3-core/src/main/java/com/jme3/animation/EffectTrack.java b/jme3-core/src/main/java/com/jme3/animation/EffectTrack.java index c801e1989..efc5b9fbb 100644 --- a/jme3-core/src/main/java/com/jme3/animation/EffectTrack.java +++ b/jme3-core/src/main/java/com/jme3/animation/EffectTrack.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -42,18 +42,16 @@ import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.scene.Spatial.CullHint; import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.logging.Level; import java.util.logging.Logger; /** * EffectTrack is a track to add to an existing animation, to emit particles - * during animations for example : exhausts, dust raised by foot steps, shock - * waves, lightnings etc... + * during animations for example: exhaust, dust raised by footsteps, shock + * waves, lightning, etc... * * usage is *

@@ -62,9 +60,9 @@ import java.util.logging.Logger;
  * control.getAnim("TheAnim").addTrack(track);
  * 
* - * if the emitter has emits 0 particles per seconds emmitAllPArticles will be - * called on it at time 0 + startOffset. if it he it has more it will start - * emit normally at time 0 + startOffset. + * if the emitter emits 0 particles per second, emitAllPArticles will be + * called on it at time 0 + startOffset. if it has more it will start + * emitting normally at time 0 + startOffset. * * * @author Nehon @@ -132,19 +130,6 @@ public class EffectTrack implements ClonableTrack { @Override protected void controlRender(RenderManager rm, ViewPort vp) { } - - @Override - public Control cloneForSpatial(Spatial spatial) { - - KillParticleControl c = new KillParticleControl(); - //this control should be removed as it shouldn't have been persisted in the first place - //In the quest to find the less hackish solution to achieve this, - //making it remove itself from the spatial in the first update loop when loaded was the less bad. - c.remove = true; - c.setSpatial(spatial); - return c; - - } }; //Anim listener that stops the Emmitter when the animation is finished or changed. @@ -213,7 +198,7 @@ public class EffectTrack implements ClonableTrack { control.addListener(new OnEndListener()); initialized = true; } - //checking fo time to trigger the effect + //checking for time to trigger the effect if (!emitted && time >= startOffset) { emitted = true; emitter.setCullHint(CullHint.Dynamic); @@ -430,7 +415,7 @@ public class EffectTrack implements ClonableTrack { */ public void write(JmeExporter ex) throws IOException { OutputCapsule out = ex.getCapsule(this); - //reseting the particle emission rate on the emitter before saving. + //reset the particle emission rate on the emitter before saving. emitter.setParticlesPerSec(particlesPerSeconds); out.write(emitter, "emitter", null); out.write(particlesPerSeconds, "particlesPerSeconds", 0); @@ -449,7 +434,7 @@ public class EffectTrack implements ClonableTrack { public void read(JmeImporter im) throws IOException { InputCapsule in = im.getCapsule(this); this.particlesPerSeconds = in.readFloat("particlesPerSeconds", 0); - //reading the emitter even if the track will then reference its cloned counter part if it's loaded with the assetManager. + //reading the emitter even if the track will then reference its cloned counterpart if it's loaded with the assetManager. //This also avoid null pointer exception if the model is not loaded via the AssetManager. emitter = (ParticleEmitter) in.readSavable("emitter", null); emitter.setParticlesPerSec(0); diff --git a/jme3-core/src/main/java/com/jme3/animation/Skeleton.java b/jme3-core/src/main/java/com/jme3/animation/Skeleton.java index 904d7a298..bff876790 100644 --- a/jme3-core/src/main/java/com/jme3/animation/Skeleton.java +++ b/jme3-core/src/main/java/com/jme3/animation/Skeleton.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ public final class Skeleton implements Savable, JmeCloneable { private Bone[] boneList; /** - * Contains the skinning matrices, multiplying it by a vertex effected by a bone + * Contains the skinning matrices, multiplying it by a vertex affected by a bone * will cause it to go to the animated position. */ private transient Matrix4f[] skinningMatrixes; @@ -169,7 +169,7 @@ public final class Skeleton implements Savable, JmeCloneable { } /** - * Saves the current skeleton state as it's binding pose. + * Saves the current skeleton state as its binding pose. */ public void setBindingPose() { for (int i = rootBones.length - 1; i >= 0; i--) { @@ -304,6 +304,7 @@ public final class Skeleton implements Savable, JmeCloneable { createSkinningMatrices(); for (Bone rootBone : rootBones) { + rootBone.reset(); rootBone.update(); rootBone.setBindingPose(); } diff --git a/jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java b/jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java index 4cefd721c..1e9abea5b 100644 --- a/jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java +++ b/jme3-core/src/main/java/com/jme3/animation/SkeletonControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,21 +35,18 @@ import com.jme3.export.*; import com.jme3.material.MatParamOverride; import com.jme3.math.FastMath; import com.jme3.math.Matrix4f; -import com.jme3.renderer.RenderManager; -import com.jme3.renderer.RendererException; -import com.jme3.renderer.ViewPort; +import com.jme3.renderer.*; import com.jme3.scene.*; import com.jme3.scene.VertexBuffer.Type; import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; import com.jme3.scene.mesh.IndexBuffer; import com.jme3.shader.VarType; -import com.jme3.util.*; +import com.jme3.util.SafeArrayList; +import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.nio.Buffer; -import java.nio.ByteBuffer; import java.nio.FloatBuffer; import java.util.logging.Level; import java.util.logging.Logger; @@ -145,6 +142,12 @@ public class SkeletonControl extends AbstractControl implements Cloneable, JmeCl } private boolean testHardwareSupported(RenderManager rm) { + + //Only 255 bones max supported with hardware skinning + if (skeleton.getBoneCount() > 255) { + return false; + } + switchToHardware(); try { @@ -158,7 +161,7 @@ public class SkeletonControl extends AbstractControl implements Cloneable, JmeCl /** * Specifies if hardware skinning is preferred. If it is preferred and - * supported by GPU, it shall be enabled, if its not preferred, or not + * supported by GPU, it shall be enabled, if it's not preferred, or not * supported by GPU, then it shall be disabled. * * @param preferred @@ -326,7 +329,7 @@ public class SkeletonControl extends AbstractControl implements Cloneable, JmeCl bpb.clear(); bnb.clear(); - //reseting bind tangents if there is a bind tangent buffer + //reset bind tangents if there is a bind tangent buffer VertexBuffer bindTangents = mesh.getBuffer(Type.BindPoseTangent); if (bindTangents != null) { VertexBuffer tangents = mesh.getBuffer(Type.Tangent); @@ -344,47 +347,6 @@ public class SkeletonControl extends AbstractControl implements Cloneable, JmeCl } } - @Override - public Control cloneForSpatial(Spatial spatial) { - Node clonedNode = (Node) spatial; - SkeletonControl clone = new SkeletonControl(); - - AnimControl ctrl = spatial.getControl(AnimControl.class); - if (ctrl != null) { - // AnimControl is responsible for cloning the skeleton, not - // SkeletonControl. - clone.skeleton = ctrl.getSkeleton(); - } else { - // If there's no AnimControl, create the clone ourselves. - clone.skeleton = new Skeleton(skeleton); - } - clone.hwSkinningDesired = this.hwSkinningDesired; - clone.hwSkinningEnabled = this.hwSkinningEnabled; - clone.hwSkinningSupported = this.hwSkinningSupported; - clone.hwSkinningTested = this.hwSkinningTested; - - clone.setSpatial(clonedNode); - - // Fix attachments for the cloned node - for (int i = 0; i < clonedNode.getQuantity(); i++) { - // go through attachment nodes, apply them to correct bone - Spatial child = clonedNode.getChild(i); - if (child instanceof Node) { - Node clonedAttachNode = (Node) child; - Bone originalBone = (Bone) clonedAttachNode.getUserData("AttachedBone"); - - if (originalBone != null) { - Bone clonedBone = clone.skeleton.getBone(originalBone.getName()); - - clonedAttachNode.setUserData("AttachedBone", clonedBone); - clonedBone.setAttachmentsNode(clonedAttachNode); - } - } - } - - return clone; - } - @Override public Object jmeClone() { return super.jmeClone(); diff --git a/jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java b/jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java index c770838f0..5afd84350 100644 --- a/jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java +++ b/jme3-core/src/main/java/com/jme3/animation/SpatialTrack.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -41,16 +41,14 @@ import com.jme3.scene.Spatial; import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; - import java.io.IOException; -import java.util.Arrays; /** * This class represents the track for spatial animation. * * @author Marcin Roguski (Kaelthas) */ -public class SpatialTrack implements Track, JmeCloneable { +public class SpatialTrack implements JmeCloneable, Track { /** * Translations of the track. @@ -250,9 +248,16 @@ public class SpatialTrack implements Track, JmeCloneable { return times == null ? 0 : times[times.length - 1] - times[0]; } + /** + * Create a clone with the same track spatial. + * + * @return a new track + */ @Override - public Track clone() { - return (Track) jmeClone(); + public SpatialTrack clone() { + Cloner cloner = new Cloner(); + cloner.setClonedValue(trackSpatial, trackSpatial); + return cloner.clone(this); } @Override @@ -268,24 +273,38 @@ public class SpatialTrack implements Track, JmeCloneable { return trackSpatial; } + /** + * Create a shallow clone for the JME cloner. + * + * @return a new track + */ @Override - public Object jmeClone() { - int tablesLength = times.length; - - float[] timesCopy = this.times.clone(); - Vector3f[] translationsCopy = this.getTranslations() == null ? null : Arrays.copyOf(this.getTranslations(), tablesLength); - Quaternion[] rotationsCopy = this.getRotations() == null ? null : Arrays.copyOf(this.getRotations(), tablesLength); - Vector3f[] scalesCopy = this.getScales() == null ? null : Arrays.copyOf(this.getScales(), tablesLength); - - //need to use the constructor here because of the final fields used in this class - return new SpatialTrack(timesCopy, translationsCopy, rotationsCopy, scalesCopy); + public SpatialTrack jmeClone() { + try { + return (SpatialTrack) super.clone(); + } catch (CloneNotSupportedException exception) { + throw new RuntimeException("Can't clone track", exception); + } } + /** + * Callback from {@link com.jme3.util.clone.Cloner} to convert this + * shallow-cloned track into a deep-cloned one, using the specified cloner + * to resolve copied fields. + * + * @param cloner the cloner currently cloning this control (not null) + * @param original the track from which this track was shallow-cloned + * (unused) + */ @Override public void cloneFields(Cloner cloner, Object original) { - this.trackSpatial = cloner.clone(((SpatialTrack) original).trackSpatial); + translations = cloner.clone(translations); + rotations = cloner.clone(rotations); + scales = cloner.clone(scales); + trackSpatial = cloner.clone(trackSpatial); + times = cloner.clone(times); } - + @Override public void write(JmeExporter ex) throws IOException { OutputCapsule oc = ex.getCapsule(this); diff --git a/jme3-core/src/main/java/com/jme3/animation/Track.java b/jme3-core/src/main/java/com/jme3/animation/Track.java index 4eafed06a..4a6dcdef9 100644 --- a/jme3-core/src/main/java/com/jme3/animation/Track.java +++ b/jme3-core/src/main/java/com/jme3/animation/Track.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -44,9 +44,9 @@ public interface Track extends Savable, Cloneable { * given parameters. * * @param time The time in the animation - * @param weight The weight from 0 to 1 on how much to apply the track - * @param control The control which the track should effect - * @param channel The channel which the track should effect + * @param weight The weight from 0 to 1 on how much to apply the track + * @param control The control which the track should affect + * @param channel The channel which the track should affect */ public void setTime(float time, float weight, AnimControl control, AnimChannel channel, TempVars vars); diff --git a/jme3-core/src/main/java/com/jme3/app/DetailedProfilerState.java b/jme3-core/src/main/java/com/jme3/app/DetailedProfilerState.java index fa1de0cb3..c4d6e74da 100644 --- a/jme3-core/src/main/java/com/jme3/app/DetailedProfilerState.java +++ b/jme3-core/src/main/java/com/jme3/app/DetailedProfilerState.java @@ -59,6 +59,8 @@ public class DetailedProfilerState extends BaseAppState { private ColorRGBA dimmedOrange = ColorRGBA.Orange.mult(0.7f); private ColorRGBA dimmedRed = ColorRGBA.Red.mult(0.7f); + private ProfilerInputListener inputListener = new ProfilerInputListener(); + public DetailedProfilerState() { } @@ -119,23 +121,17 @@ public class DetailedProfilerState extends BaseAppState { if (inputManager != null) { inputManager.addMapping(TOGGLE_KEY, new KeyTrigger(KeyInput.KEY_F6)); inputManager.addMapping(CLICK_KEY, new MouseButtonTrigger(MouseInput.BUTTON_LEFT)); - inputManager.addListener(new ActionListener() { - @Override - public void onAction(String name, boolean isPressed, float tpf) { - if (name.equals(TOGGLE_KEY) && isPressed) { - setEnabled(!isEnabled()); - } - if (isEnabled() && name.equals(CLICK_KEY) && isPressed) { - handleClick(inputManager.getCursorPosition()); - } - } - }, TOGGLE_KEY, CLICK_KEY); + inputManager.addListener(inputListener, TOGGLE_KEY, CLICK_KEY); } } @Override protected void cleanup(Application app) { - + ui.detachAllChildren(); + InputManager manager = getApplication().getInputManager(); + manager.deleteMapping(TOGGLE_KEY); + manager.deleteMapping(CLICK_KEY); + manager.removeListener(inputListener); } @Override @@ -441,8 +437,18 @@ public class DetailedProfilerState extends BaseAppState { public String toString() { return label.getText() + " - " + df.format(getMsFromNs(cpuValue)) + "ms / " + df.format(getMsFromNs(gpuValue)) + "ms"; } + } - + private class ProfilerInputListener implements ActionListener { + @Override + public void onAction(String name, boolean isPressed, float tpf) { + if (name.equals(TOGGLE_KEY) && isPressed) { + setEnabled(!isEnabled()); + } + if (isEnabled() && name.equals(CLICK_KEY) && isPressed) { + handleClick(getApplication().getInputManager().getCursorPosition()); + } + } } } diff --git a/jme3-core/src/main/java/com/jme3/app/StatsView.java b/jme3-core/src/main/java/com/jme3/app/StatsView.java index 8b88833c2..4e9411f18 100644 --- a/jme3-core/src/main/java/com/jme3/app/StatsView.java +++ b/jme3-core/src/main/java/com/jme3/app/StatsView.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -117,11 +117,12 @@ public class StatsView extends Node implements Control, JmeCloneable { //statistics.clearFrame(); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - return (Control) spatial; + throw new UnsupportedOperationException(); } - + @Override public StatsView jmeClone() { throw new UnsupportedOperationException("Not yet implemented."); diff --git a/jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java b/jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java index ea4d5cd73..6fa35c2d7 100644 --- a/jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java +++ b/jme3-core/src/main/java/com/jme3/app/state/ScreenshotAppState.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -80,10 +80,10 @@ public class ScreenshotAppState extends AbstractAppState implements ActionListen /** * This constructor allows you to specify the output file path of the screenshot. - * Include the seperator at the end of the path. - * Use an emptry string to use the application folder. Use NULL to use the system + * Include the separator at the end of the path. + * Use an empty string to use the application folder. Use NULL to use the system * default storage folder. - * @param filePath The screenshot file path to use. Include the seperator at the end of the path. + * @param filePath The screenshot file path to use. Include the separator at the end of the path. */ public ScreenshotAppState(String filePath) { this.filePath = filePath; @@ -91,11 +91,11 @@ public class ScreenshotAppState extends AbstractAppState implements ActionListen /** * This constructor allows you to specify the output file path of the screenshot. - * Include the seperator at the end of the path. - * Use an emptry string to use the application folder. Use NULL to use the system + * Include the separator at the end of the path. + * Use an empty string to use the application folder. Use NULL to use the system * default storage folder. - * @param filePath The screenshot file path to use. Include the seperator at the end of the path. - * @param fileName The name of the file to save the screeshot as. + * @param filePath The screenshot file path to use. Include the separator at the end of the path. + * @param fileName The name of the file to save the screenshot as. */ public ScreenshotAppState(String filePath, String fileName) { this.filePath = filePath; @@ -105,10 +105,10 @@ public class ScreenshotAppState extends AbstractAppState implements ActionListen /** * This constructor allows you to specify the output file path of the screenshot and * a base index for the shot index. - * Include the seperator at the end of the path. - * Use an emptry string to use the application folder. Use NULL to use the system + * Include the separator at the end of the path. + * Use an empty string to use the application folder. Use NULL to use the system * default storage folder. - * @param filePath The screenshot file path to use. Include the seperator at the end of the path. + * @param filePath The screenshot file path to use. Include the separator at the end of the path. * @param shotIndex The base index for screen shots. The first screen shot will have * shotIndex + 1 appended, the next shotIndex + 2, and so on. */ @@ -120,11 +120,11 @@ public class ScreenshotAppState extends AbstractAppState implements ActionListen /** * This constructor allows you to specify the output file path of the screenshot and * a base index for the shot index. - * Include the seperator at the end of the path. - * Use an emptry string to use the application folder. Use NULL to use the system + * Include the separator at the end of the path. + * Use an empty string to use the application folder. Use NULL to use the system * default storage folder. - * @param filePath The screenshot file path to use. Include the seperator at the end of the path. - * @param fileName The name of the file to save the screeshot as. + * @param filePath The screenshot file path to use. Include the separator at the end of the path. + * @param fileName The name of the file to save the screenshot as. * @param shotIndex The base index for screen shots. The first screen shot will have * shotIndex + 1 appended, the next shotIndex + 2, and so on. */ @@ -136,10 +136,10 @@ public class ScreenshotAppState extends AbstractAppState implements ActionListen /** * Set the file path to store the screenshot. - * Include the seperator at the end of the path. - * Use an emptry string to use the application folder. Use NULL to use the system + * Include the separator at the end of the path. + * Use an empty string to use the application folder. Use NULL to use the system * default storage folder. - * @param filePath File path to use to store the screenshot. Include the seperator at the end of the path. + * @param filePath File path to use to store the screenshot. Include the separator at the end of the path. */ public void setFilePath(String filePath) { this.filePath = filePath; diff --git a/jme3-core/src/main/java/com/jme3/asset/AssetManager.java b/jme3-core/src/main/java/com/jme3/asset/AssetManager.java index 4cd284340..0f6836e6d 100644 --- a/jme3-core/src/main/java/com/jme3/asset/AssetManager.java +++ b/jme3-core/src/main/java/com/jme3/asset/AssetManager.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -217,7 +217,7 @@ public interface AssetManager { * Load an asset from a key, the asset will be located * by one of the {@link AssetLocator} implementations provided in the * {@link AssetManager#registerLocator(java.lang.String, java.lang.Class) } - * call. If located successfully, it will be loaded via the the appropriate + * call. If located successfully, it will be loaded via the appropriate * {@link AssetLoader} implementation based on the file's extension, as * specified in the call * {@link AssetManager#registerLoader(java.lang.Class, java.lang.String[]) }. diff --git a/jme3-core/src/main/java/com/jme3/asset/ImplHandler.java b/jme3-core/src/main/java/com/jme3/asset/ImplHandler.java index 3bbd19c14..581c18b4e 100644 --- a/jme3-core/src/main/java/com/jme3/asset/ImplHandler.java +++ b/jme3-core/src/main/java/com/jme3/asset/ImplHandler.java @@ -32,6 +32,7 @@ package com.jme3.asset; import com.jme3.asset.cache.AssetCache; + import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; @@ -279,9 +280,9 @@ final class ImplHandler { // Synchronized access must be used for any ops on classToLoaderMap // Find the loader ImplThreadLocal for this class synchronized (classToLoaderMap){ - ImplThreadLocal local = classToLoaderMap.get(loaderType); // Remove it from the class->loader map - classToLoaderMap.remove(loaderType); + ImplThreadLocal local = classToLoaderMap.remove(loaderType); + if (local == null) return; // Remove it from the extension->loader map for (String extension : local.getExtensions()){ extensionToLoaderMap.remove(extension); diff --git a/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java b/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java index ab3581013..c7446dfc3 100644 --- a/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java +++ b/jme3-core/src/main/java/com/jme3/asset/cache/WeakRefCloneAssetCache.java @@ -112,11 +112,10 @@ public class WeakRefCloneAssetCache implements AssetCache { // might not even have this asset anymore, it is OK. if (smartCache.remove(key) != null){ removedAssets ++; - //System.out.println("WeakRefAssetCache: The asset " + ref.assetKey + " was purged from the cache"); } } if (removedAssets >= 1) { - logger.log(Level.FINE, "WeakRefAssetCache: {0} assets were purged from the cache.", removedAssets); + logger.log(Level.FINE, "WeakRefCloneAssetCache: {0} assets were purged from the cache.", removedAssets); } } diff --git a/jme3-core/src/main/java/com/jme3/audio/AudioNode.java b/jme3-core/src/main/java/com/jme3/audio/AudioNode.java index d1c7b8ef8..579520f4e 100644 --- a/jme3-core/src/main/java/com/jme3/audio/AudioNode.java +++ b/jme3-core/src/main/java/com/jme3/audio/AudioNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012, 2016 jMonkeyEngine + * Copyright (c) 2009-2012, 2016, 2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -221,7 +221,7 @@ public class AudioNode extends Node implements AudioSource { /** * Start playing an instance of this audio. This method can be used * to play the same AudioNode multiple times. Note - * that changes to the parameters of this AudioNode will not effect the + * that changes to the parameters of this AudioNode will not affect the * instances already playing. */ public void playInstance(){ @@ -278,8 +278,8 @@ public class AudioNode extends Node implements AudioSource { * the dry filter will only influence the "dry" portion of the audio, * e.g. not the reverberated parts of the AudioNode playing. * - * See the relevent documentation for the {@link Filter} to determine - * the effect. + * See the relevant documentation for the {@link Filter} to determine the + * effect. * * @param dryFilter The filter to set, or null to disable dry filter. */ @@ -692,7 +692,7 @@ public class AudioNode extends Node implements AudioSource { /** * Set the audio node as positional. - * The position, velocity, and distance parameters effect positional + * The position, velocity, and distance parameters affect positional * audio nodes. Set to false if the audio node should play in "headspace". * * @param positional True if the audio node should be positional, otherwise diff --git a/jme3-core/src/main/java/com/jme3/audio/openal/AL.java b/jme3-core/src/main/java/com/jme3/audio/openal/AL.java index ac8d12eca..380550254 100644 --- a/jme3-core/src/main/java/com/jme3/audio/openal/AL.java +++ b/jme3-core/src/main/java/com/jme3/audio/openal/AL.java @@ -12,37 +12,37 @@ public interface AL { /** * Boolean False. */ - static final int AL_FALSE = 0; + public static final int AL_FALSE = 0; /** * Boolean True. */ - static final int AL_TRUE = 1; + public static final int AL_TRUE = 1; /* "no distance model" or "no buffer" */ - static final int AL_NONE = 0; + public static final int AL_NONE = 0; /** * Indicate Source has relative coordinates. */ - static final int AL_SOURCE_RELATIVE = 0x202; + public static final int AL_SOURCE_RELATIVE = 0x202; /** * Directional source, inner cone angle, in degrees. Range: [0-360] Default: * 360 */ - static final int AL_CONE_INNER_ANGLE = 0x1001; + public static final int AL_CONE_INNER_ANGLE = 0x1001; /** * Directional source, outer cone angle, in degrees. Range: [0-360] Default: * 360 */ - static final int AL_CONE_OUTER_ANGLE = 0x1002; + public static final int AL_CONE_OUTER_ANGLE = 0x1002; /** * Specify the pitch to be applied at source. Range: [0.5-2.0] Default: 1.0 */ - static final int AL_PITCH = 0x1003; + public static final int AL_PITCH = 0x1003; /** * Specify the current location in three dimensional space. OpenAL, like @@ -52,84 +52,84 @@ public interface AL { * coordinate system, flip the sign on the Z coordinate. Listener position * is always in the world coordinate system. */ - static final int AL_POSITION = 0x1004; + public static final int AL_POSITION = 0x1004; /** * Specify the current direction. */ - static final int AL_DIRECTION = 0x1005; + public static final int AL_DIRECTION = 0x1005; /** * Specify the current velocity in three dimensional space. */ - static final int AL_VELOCITY = 0x1006; + public static final int AL_VELOCITY = 0x1006; /** * Indicate whether source is looping. Type: ALboolean? Range: [AL_TRUE, * AL_FALSE] Default: FALSE. */ - static final int AL_LOOPING = 0x1007; + public static final int AL_LOOPING = 0x1007; /** * Indicate the buffer to provide sound samples. Type: ALuint. Range: any * valid Buffer id. */ - static final int AL_BUFFER = 0x1009; + public static final int AL_BUFFER = 0x1009; /** * Indicate the gain (volume amplification) applied. Type: ALfloat. Range: * ]0.0- ] A value of 1.0 means un-attenuated/unchanged. Each division by 2 - * equals an attenuation of -6dB. Each multiplicaton with 2 equals an + * equals an attenuation of -6dB. Each multiplication by 2 equals an * amplification of +6dB. A value of 0.0 is meaningless with respect to a * logarithmic scale; it is interpreted as zero volume - the channel is * effectively disabled. */ - static final int AL_GAIN = 0x100A; + public static final int AL_GAIN = 0x100A; /* * Indicate minimum source attenuation * Type: ALfloat * Range: [0.0 - 1.0] * - * Logarthmic + * Logarithmic */ - static final int AL_MIN_GAIN = 0x100D; + public static final int AL_MIN_GAIN = 0x100D; /** * Indicate maximum source attenuation Type: ALfloat Range: [0.0 - 1.0] * - * Logarthmic + * Logarithmic */ - static final int AL_MAX_GAIN = 0x100E; + public static final int AL_MAX_GAIN = 0x100E; /** * Indicate listener orientation. * * at/up */ - static final int AL_ORIENTATION = 0x100F; + public static final int AL_ORIENTATION = 0x100F; /** * Source state information. */ - static final int AL_SOURCE_STATE = 0x1010; - static final int AL_INITIAL = 0x1011; - static final int AL_PLAYING = 0x1012; - static final int AL_PAUSED = 0x1013; - static final int AL_STOPPED = 0x1014; + public static final int AL_SOURCE_STATE = 0x1010; + public static final int AL_INITIAL = 0x1011; + public static final int AL_PLAYING = 0x1012; + public static final int AL_PAUSED = 0x1013; + public static final int AL_STOPPED = 0x1014; /** * Buffer Queue params */ - static final int AL_BUFFERS_QUEUED = 0x1015; - static final int AL_BUFFERS_PROCESSED = 0x1016; + public static final int AL_BUFFERS_QUEUED = 0x1015; + public static final int AL_BUFFERS_PROCESSED = 0x1016; /** * Source buffer position information */ - static final int AL_SEC_OFFSET = 0x1024; - static final int AL_SAMPLE_OFFSET = 0x1025; - static final int AL_BYTE_OFFSET = 0x1026; + public static final int AL_SEC_OFFSET = 0x1024; + public static final int AL_SAMPLE_OFFSET = 0x1025; + public static final int AL_BYTE_OFFSET = 0x1026; /* * Source type (Static, Streaming or undetermined) @@ -137,38 +137,38 @@ public interface AL { * Source is Streaming if one or more Buffers have been attached using alSourceQueueBuffers * Source is undetermined when it has the NULL buffer attached */ - static final int AL_SOURCE_TYPE = 0x1027; - static final int AL_STATIC = 0x1028; - static final int AL_STREAMING = 0x1029; - static final int AL_UNDETERMINED = 0x1030; + public static final int AL_SOURCE_TYPE = 0x1027; + public static final int AL_STATIC = 0x1028; + public static final int AL_STREAMING = 0x1029; + public static final int AL_UNDETERMINED = 0x1030; /** * Sound samples: format specifier. */ - static final int AL_FORMAT_MONO8 = 0x1100; - static final int AL_FORMAT_MONO16 = 0x1101; - static final int AL_FORMAT_STEREO8 = 0x1102; - static final int AL_FORMAT_STEREO16 = 0x1103; + public static final int AL_FORMAT_MONO8 = 0x1100; + public static final int AL_FORMAT_MONO16 = 0x1101; + public static final int AL_FORMAT_STEREO8 = 0x1102; + public static final int AL_FORMAT_STEREO16 = 0x1103; /** * source specific reference distance Type: ALfloat Range: 0.0 - +inf * * At 0.0, no distance attenuation occurs. Default is 1.0. */ - static final int AL_REFERENCE_DISTANCE = 0x1020; + public static final int AL_REFERENCE_DISTANCE = 0x1020; /** * source specific rolloff factor Type: ALfloat Range: 0.0 - +inf * */ - static final int AL_ROLLOFF_FACTOR = 0x1021; + public static final int AL_ROLLOFF_FACTOR = 0x1021; /** * Directional source, outer cone gain. * * Default: 0.0 Range: [0.0 - 1.0] Logarithmic */ - static final int AL_CONE_OUTER_GAIN = 0x1022; + public static final int AL_CONE_OUTER_GAIN = 0x1022; /** * Indicate distance above which sources are not attenuated using the @@ -176,64 +176,64 @@ public interface AL { * * Default: +inf Type: ALfloat Range: 0.0 - +inf */ - static final int AL_MAX_DISTANCE = 0x1023; + public static final int AL_MAX_DISTANCE = 0x1023; /** * Sound samples: frequency, in units of Hertz [Hz]. This is the number of * samples per second. Half of the sample frequency marks the maximum * significant frequency component. */ - static final int AL_FREQUENCY = 0x2001; - static final int AL_BITS = 0x2002; - static final int AL_CHANNELS = 0x2003; - static final int AL_SIZE = 0x2004; + public static final int AL_FREQUENCY = 0x2001; + public static final int AL_BITS = 0x2002; + public static final int AL_CHANNELS = 0x2003; + public static final int AL_SIZE = 0x2004; /** * Buffer state. * * Not supported for public use (yet). */ - static final int AL_UNUSED = 0x2010; - static final int AL_PENDING = 0x2011; - static final int AL_PROCESSED = 0x2012; + public static final int AL_UNUSED = 0x2010; + public static final int AL_PENDING = 0x2011; + public static final int AL_PROCESSED = 0x2012; /** * Errors: No Error. */ - static final int AL_NO_ERROR = 0; + public static final int AL_NO_ERROR = 0; /** - * Invalid Name paramater passed to AL call. + * Invalid Name parameter passed to AL call. */ - static final int AL_INVALID_NAME = 0xA001; + public static final int AL_INVALID_NAME = 0xA001; /** * Invalid parameter passed to AL call. */ - static final int AL_INVALID_ENUM = 0xA002; + public static final int AL_INVALID_ENUM = 0xA002; /** * Invalid enum parameter value. */ - static final int AL_INVALID_VALUE = 0xA003; + public static final int AL_INVALID_VALUE = 0xA003; /** * Illegal call. */ - static final int AL_INVALID_OPERATION = 0xA004; + public static final int AL_INVALID_OPERATION = 0xA004; /** * No mojo. */ - static final int AL_OUT_OF_MEMORY = 0xA005; + public static final int AL_OUT_OF_MEMORY = 0xA005; /** * Context strings: Vendor Name. */ - static final int AL_VENDOR = 0xB001; - static final int AL_VERSION = 0xB002; - static final int AL_RENDERER = 0xB003; - static final int AL_EXTENSIONS = 0xB004; + public static final int AL_VENDOR = 0xB001; + public static final int AL_VERSION = 0xB002; + public static final int AL_RENDERER = 0xB003; + public static final int AL_EXTENSIONS = 0xB004; /** * Global tweakage. @@ -241,56 +241,241 @@ public interface AL { /** * Doppler scale. Default 1.0 */ - static final int AL_DOPPLER_FACTOR = 0xC000; + public static final int AL_DOPPLER_FACTOR = 0xC000; /** * Tweaks speed of propagation. */ - static final int AL_DOPPLER_VELOCITY = 0xC001; + public static final int AL_DOPPLER_VELOCITY = 0xC001; /** * Speed of Sound in units per second */ - static final int AL_SPEED_OF_SOUND = 0xC003; + public static final int AL_SPEED_OF_SOUND = 0xC003; /** * Distance models * * used in conjunction with DistanceModel * - * implicit: NONE, which disances distance attenuation. - */ - static final int AL_DISTANCE_MODEL = 0xD000; - static final int AL_INVERSE_DISTANCE = 0xD001; - static final int AL_INVERSE_DISTANCE_CLAMPED = 0xD002; - static final int AL_LINEAR_DISTANCE = 0xD003; - static final int AL_LINEAR_DISTANCE_CLAMPED = 0xD004; - static final int AL_EXPONENT_DISTANCE = 0xD005; - static final int AL_EXPONENT_DISTANCE_CLAMPED = 0xD006; -// -///* Listener parameter value ranges and defaults. */ -//#define AL_MIN_METERS_PER_UNIT FLT_MIN -//#define AL_MAX_METERS_PER_UNIT FLT_MAX -//#define AL_DEFAULT_METERS_PER_UNIT (1.0f) + * implicit: NONE, which disables distance attenuation. + */ + public static final int AL_DISTANCE_MODEL = 0xD000; + public static final int AL_INVERSE_DISTANCE = 0xD001; + public static final int AL_INVERSE_DISTANCE_CLAMPED = 0xD002; + public static final int AL_LINEAR_DISTANCE = 0xD003; + public static final int AL_LINEAR_DISTANCE_CLAMPED = 0xD004; + public static final int AL_EXPONENT_DISTANCE = 0xD005; + public static final int AL_EXPONENT_DISTANCE_CLAMPED = 0xD006; + + // + ///* Listener parameter value ranges and defaults. */ + //#define AL_MIN_METERS_PER_UNIT FLT_MIN + //#define AL_MAX_METERS_PER_UNIT FLT_MAX + //#define AL_DEFAULT_METERS_PER_UNIT (1.0f) public String alGetString(int parameter); + + /** + * Requests a number of source names. + * + * @return the number of source names. + */ public int alGenSources(); + + /** + * Obtains error information. + *

+ *

Each detectable error is assigned a numeric code. When an error is detected by AL, a flag is set and the error code is recorded. Further errors, if they + * occur, do not affect this recorded code. When alGetError is called, the code is returned and the flag is cleared, so that a further error will again + * record its code. If a call to alGetError returns AL_NO_ERROR then there has been no detectable error since the last call to alGetError (or since the AL + * was initialized).

+ *

+ *

Error codes can be mapped to strings. The alGetString function returns a pointer to a constant (literal) string that is identical to the identifier used + * for the enumeration value, as defined in the specification.

+ */ public int alGetError(); + + /** + * Requests the deletion of a number of sources. + * + * @param numSources the number of sources. + * @param sources the sources to delete. + */ public void alDeleteSources(int numSources, IntBuffer sources); + + /** + * Requests a number of buffer names. + * + * @param numBuffers the number of buffers. + * @param buffers the buffer that will receive the buffer names. + */ public void alGenBuffers(int numBuffers, IntBuffer buffers); + + /** + * Requests the deletion of a number of buffers. + * + * @param numBuffers the number of buffers. + * @param buffers the buffers to delete. + */ public void alDeleteBuffers(int numBuffers, IntBuffer buffers); + + /** + * Sets the source state to AL_STOPPED. + *

+ *

alSourceStop applied to an AL_INITIAL source is a legal NOP. alSourceStop applied to a AL_PLAYING source will change its state to AL_STOPPED. The source + * is exempt from processing, its current state is preserved. alSourceStop applied to a AL_PAUSED source will change its state to AL_STOPPED, with the same + * consequences as on a AL_PLAYING source. alSourceStop applied to a AL_STOPPED source is a legal NOP.

+ * + * @param source the source to stop. + */ public void alSourceStop(int source); + + /** + * Integer version of {@link #alSourcef Sourcef}. + * + * @param source the source to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alSourcei(int source, int param, int value); + + /** + * Sets the sample data of the specified buffer. + *

+ *

The data specified is copied to an internal software, or if possible, hardware buffer. The implementation is free to apply decompression, conversion, + * resampling, and filtering as needed.

+ *

+ *

8-bit data is expressed as an unsigned value over the range 0 to 255, 128 being an audio output level of zero.

+ *

+ *

16-bit data is expressed as a signed value over the range -32768 to 32767, 0 being an audio output level of zero. Byte order for 16-bit values is + * determined by the native format of the CPU.

+ *

+ *

Stereo data is expressed in an interleaved format, left channel sample followed by the right channel sample.

+ *

+ *

Buffers containing audio data with more than one channel will be played without 3D spatialization features – these formats are normally used for + * background music.

+ * + * @param buffer the buffer to modify. + * @param format the data format. One of:
{@link #AL_FORMAT_MONO8 FORMAT_MONO8}{@link #AL_FORMAT_MONO16 FORMAT_MONO16}{@link #AL_FORMAT_STEREO8 FORMAT_STEREO8}{@link #AL_FORMAT_STEREO16 FORMAT_STEREO16}
+ * @param data the sample data. + * @param frequency the data frequency. + */ public void alBufferData(int buffer, int format, ByteBuffer data, int size, int frequency); + + /** + * Sets the source state to AL_PLAYING. + *

+ *

alSourcePlay applied to an AL_INITIAL source will promote the source to AL_PLAYING, thus the data found in the buffer will be fed into the processing, + * starting at the beginning. alSourcePlay applied to a AL_PLAYING source will restart the source from the beginning. It will not affect the configuration, + * and will leave the source in AL_PLAYING state, but reset the sampling offset to the beginning. alSourcePlay applied to a AL_PAUSED source will resume + * processing using the source state as preserved at the alSourcePause operation. alSourcePlay applied to a AL_STOPPED source will propagate it to + * AL_INITIAL then to AL_PLAYING immediately.

+ * + * @param source the source to play. + */ public void alSourcePlay(int source); + + /** + * Sets the source state to AL_PAUSED. + *

+ *

alSourcePause applied to an AL_INITIAL source is a legal NOP. alSourcePause applied to a AL_PLAYING source will change its state to AL_PAUSED. The + * source is exempt from processing, its current state is preserved. alSourcePause applied to a AL_PAUSED source is a legal NOP. alSourcePause applied to a + * AL_STOPPED source is a legal NOP.

+ * + * @param source the source to pause. + */ public void alSourcePause(int source); + + /** + * Sets the float value of a source parameter. + * + * @param source the source to modify. + * @param param the parameter to modify. One of:
{@link #AL_CONE_INNER_ANGLE CONE_INNER_ANGLE}{@link #AL_CONE_OUTER_ANGLE CONE_OUTER_ANGLE}{@link #AL_PITCH PITCH}{@link #AL_DIRECTION DIRECTION}{@link #AL_LOOPING LOOPING}{@link #AL_BUFFER BUFFER}{@link #AL_SOURCE_STATE SOURCE_STATE}
{@link #AL_CONE_OUTER_GAIN CONE_OUTER_GAIN}{@link #AL_SOURCE_TYPE SOURCE_TYPE}{@link #AL_POSITION POSITION}{@link #AL_VELOCITY VELOCITY}{@link #AL_GAIN GAIN}{@link #AL_REFERENCE_DISTANCE REFERENCE_DISTANCE}{@link #AL_ROLLOFF_FACTOR ROLLOFF_FACTOR}
{@link #AL_MAX_DISTANCE MAX_DISTANCE}
+ * @param value the parameter value. + */ public void alSourcef(int source, int param, float value); + + /** + * Sets the 3 dimensional values of a source parameter. + * + * @param source the source to modify. + * @param param the parameter to modify. One of:
{@link #AL_CONE_INNER_ANGLE CONE_INNER_ANGLE}{@link #AL_CONE_OUTER_ANGLE CONE_OUTER_ANGLE}{@link #AL_PITCH PITCH}{@link #AL_DIRECTION DIRECTION}{@link #AL_LOOPING LOOPING}{@link #AL_BUFFER BUFFER}{@link #AL_SOURCE_STATE SOURCE_STATE}
{@link #AL_CONE_OUTER_GAIN CONE_OUTER_GAIN}{@link #AL_SOURCE_TYPE SOURCE_TYPE}{@link #AL_POSITION POSITION}{@link #AL_VELOCITY VELOCITY}{@link #AL_GAIN GAIN}{@link #AL_REFERENCE_DISTANCE REFERENCE_DISTANCE}{@link #AL_ROLLOFF_FACTOR ROLLOFF_FACTOR}
{@link #AL_MAX_DISTANCE MAX_DISTANCE}
+ * @param value1 the first parameter value. + * @param value2 the second parameter value. + * @param value3 the third parameter value. + */ public void alSource3f(int source, int param, float value1, float value2, float value3); + + /** + * Returns the integer value of the specified source parameter. + * + * @param source the source to query. + * @param param the parameter to query. One of:
{@link #AL_CONE_INNER_ANGLE CONE_INNER_ANGLE}{@link #AL_CONE_OUTER_ANGLE CONE_OUTER_ANGLE}{@link #AL_PITCH PITCH}{@link #AL_DIRECTION DIRECTION}{@link #AL_LOOPING LOOPING}{@link #AL_BUFFER BUFFER}{@link #AL_SOURCE_STATE SOURCE_STATE}
{@link #AL_CONE_OUTER_GAIN CONE_OUTER_GAIN}{@link #AL_SOURCE_TYPE SOURCE_TYPE}{@link #AL_POSITION POSITION}{@link #AL_VELOCITY VELOCITY}{@link #AL_GAIN GAIN}{@link #AL_REFERENCE_DISTANCE REFERENCE_DISTANCE}{@link #AL_ROLLOFF_FACTOR ROLLOFF_FACTOR}
{@link #AL_MAX_DISTANCE MAX_DISTANCE}
+ */ public int alGetSourcei(int source, int param); + + /** + * Removes a number of buffer entries that have finished processing, in the order of apperance, from the queue of the specified source. + *

+ *

Once a queue entry for a buffer has been appended to a queue and is pending processing, it should not be changed. Removal of a given queue entry is not + * possible unless either the source is stopped (in which case then entire queue is considered processed), or if the queue entry has already been processed + * (AL_PLAYING or AL_PAUSED source). A playing source will enter the AL_STOPPED state if it completes playback of the last buffer in its queue (the same + * behavior as when a single buffer has been attached to a source and has finished playback).

+ * + * @param source the target source + * @param numBuffers the names count. + * @param buffers the buffer names + */ public void alSourceUnqueueBuffers(int source, int numBuffers, IntBuffer buffers); + + /** + * Queues up one or multiple buffer names to the specified source. + *

+ *

The buffers will be queued in the sequence in which they appear in the array. This command is legal on a source in any playback state (to allow for + * streaming, queuing has to be possible on a AL_PLAYING source). All buffers in a queue must have the same format and attributes, with the exception of + * the {@code NULL} buffer (i.e., 0) which can always be queued.

+ * + * @param source the target source. + * @param numBuffers the names count. + * @param buffers the buffer names. + */ public void alSourceQueueBuffers(int source, int numBuffers, IntBuffer buffers); + + /** + * Pointer version of {@link #alListenerf Listenerf}. + * + * @param param the parameter to modify. + * @param data the parameter values. + */ public void alListener(int param, FloatBuffer data); + + /** + * Sets the float value of a listener parameter. + * + * @param param the parameter to modify. One of:
{@link #AL_ORIENTATION ORIENTATION}{@link #AL_POSITION POSITION}{@link #AL_VELOCITY VELOCITY}{@link #AL_GAIN GAIN}
+ * @param value the parameter value. + */ public void alListenerf(int param, float value); + + /** + * Sets the 3 dimensional float values of a listener parameter. + * + * @param param the parameter to modify. One of:
{@link #AL_ORIENTATION ORIENTATION}{@link #AL_POSITION POSITION}{@link #AL_VELOCITY VELOCITY}{@link #AL_GAIN GAIN}
+ * @param value1 the first value. + * @param value2 the second value. + * @param value3 the third value. + */ public void alListener3f(int param, float value1, float value2, float value3); + + /** + * Sets the 3 dimensional integer values of a source parameter. + * + * @param source the source to modify. + * @param param the parameter to modify. + * @param value1 the first value. + * @param value2 the second value. + * @param value3 the third value. + */ public void alSource3i(int source, int param, int value1, int value2, int value3); } diff --git a/jme3-core/src/main/java/com/jme3/audio/openal/ALC.java b/jme3-core/src/main/java/com/jme3/audio/openal/ALC.java index ef9996de9..0d3c6301f 100644 --- a/jme3-core/src/main/java/com/jme3/audio/openal/ALC.java +++ b/jme3-core/src/main/java/com/jme3/audio/openal/ALC.java @@ -7,67 +7,120 @@ public interface ALC { /** * No error */ - static final int ALC_NO_ERROR = 0; + public static final int ALC_NO_ERROR = 0; /** * No device */ - static final int ALC_INVALID_DEVICE = 0xA001; + public static final int ALC_INVALID_DEVICE = 0xA001; /** * invalid context ID */ - static final int ALC_INVALID_CONTEXT = 0xA002; + public static final int ALC_INVALID_CONTEXT = 0xA002; /** * bad enum */ - static final int ALC_INVALID_ENUM = 0xA003; + public static final int ALC_INVALID_ENUM = 0xA003; /** * bad value */ - static final int ALC_INVALID_VALUE = 0xA004; + public static final int ALC_INVALID_VALUE = 0xA004; /** * Out of memory. */ - static final int ALC_OUT_OF_MEMORY = 0xA005; + public static final int ALC_OUT_OF_MEMORY = 0xA005; /** * The Specifier string for default device */ - static final int ALC_DEFAULT_DEVICE_SPECIFIER = 0x1004; - static final int ALC_DEVICE_SPECIFIER = 0x1005; - static final int ALC_EXTENSIONS = 0x1006; + public static final int ALC_DEFAULT_DEVICE_SPECIFIER = 0x1004; + public static final int ALC_DEVICE_SPECIFIER = 0x1005; + public static final int ALC_EXTENSIONS = 0x1006; - static final int ALC_MAJOR_VERSION = 0x1000; - static final int ALC_MINOR_VERSION = 0x1001; + public static final int ALC_MAJOR_VERSION = 0x1000; + public static final int ALC_MINOR_VERSION = 0x1001; - static final int ALC_ATTRIBUTES_SIZE = 0x1002; - static final int ALC_ALL_ATTRIBUTES = 0x1003; + public static final int ALC_ATTRIBUTES_SIZE = 0x1002; + public static final int ALC_ALL_ATTRIBUTES = 0x1003; /** * Capture extension */ - static final int ALC_CAPTURE_DEVICE_SPECIFIER = 0x310; - static final int ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER = 0x311; - static final int ALC_CAPTURE_SAMPLES = 0x312; + public static final int ALC_CAPTURE_DEVICE_SPECIFIER = 0x310; + public static final int ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER = 0x311; + public static final int ALC_CAPTURE_SAMPLES = 0x312; /** * ALC_ENUMERATE_ALL_EXT enums */ - static final int ALC_DEFAULT_ALL_DEVICES_SPECIFIER = 0x1012; - static final int ALC_ALL_DEVICES_SPECIFIER = 0x1013; + public static final int ALC_DEFAULT_ALL_DEVICES_SPECIFIER = 0x1012; + public static final int ALC_ALL_DEVICES_SPECIFIER = 0x1013; //public static ALCCapabilities createCapabilities(long device); - + + /** + * Creates an AL context. + */ public void createALC(); + + /** + * Destroys an AL context. + */ public void destroyALC(); + + /** + * Checks of creating an AL context. + * + * @return true if an AL context is created. + */ public boolean isCreated(); + + /** + * Obtains string value(s) from ALC. + * + * @param parameter the information to query. One of:
{@link #ALC_DEFAULT_DEVICE_SPECIFIER DEFAULT_DEVICE_SPECIFIER}{@link #ALC_DEVICE_SPECIFIER DEVICE_SPECIFIER}{@link #ALC_EXTENSIONS EXTENSIONS}
{@link #ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER CAPTURE_DEFAULT_DEVICE_SPECIFIER}{@link #ALC_CAPTURE_DEVICE_SPECIFIER CAPTURE_DEVICE_SPECIFIER}
+ */ public String alcGetString(int parameter); + + /** + * Verifies that a given extension is available for the current context and the device it is associated with. + *

+ *

Invalid and unsupported string tokens return ALC_FALSE. A {@code NULL} deviceHandle is acceptable. {@code extName} is not case sensitive – the implementation + * will convert the name to all upper-case internally (and will express extension names in upper-case).

+ * + * @param extension the extension name. + */ public boolean alcIsExtensionPresent(String extension); + + /** + * Obtains integer value(s) from ALC. + * + * @param param the information to query. One of:
{@link #ALC_MAJOR_VERSION MAJOR_VERSION}{@link #ALC_MINOR_VERSION MINOR_VERSION}{@link #ALC_ATTRIBUTES_SIZE ATTRIBUTES_SIZE}{@link #ALC_ALL_ATTRIBUTES ALL_ATTRIBUTES}{@link #ALC_CAPTURE_SAMPLES CAPTURE_SAMPLES}
+ * @param buffer the destination buffer. + * @param size the buffer size. + */ public void alcGetInteger(int param, IntBuffer buffer, int size); + + /** + * Pauses a playback device. + *

+ *

When paused, no contexts associated with the device will be processed or updated. Playing sources will not produce sound, have their offsets + * incremented, or process any more buffers, until the device is resumed. Pausing a device that is already paused is a legal no-op.

+ */ public void alcDevicePauseSOFT(); + + /** + * Resumes playback of a paused device. + *

+ *

This will restart processing on the device -- sources will resume playing sound as normal. Resuming playback on a device that is not paused is a legal + * no-op.

+ *

+ *

These functions are not reference counted. alcDeviceResumeSOFT only needs to be called once to resume playback, regardless of how many times + * {@link #alcDevicePauseSOFT DevicePauseSOFT} was called.

+ */ public void alcDeviceResumeSOFT(); } diff --git a/jme3-core/src/main/java/com/jme3/audio/openal/EFX.java b/jme3-core/src/main/java/com/jme3/audio/openal/EFX.java index 89f0a6e0c..4ae546263 100644 --- a/jme3-core/src/main/java/com/jme3/audio/openal/EFX.java +++ b/jme3-core/src/main/java/com/jme3/audio/openal/EFX.java @@ -4,676 +4,754 @@ import java.nio.IntBuffer; public interface EFX { - static final String ALC_EXT_EFX_NAME = "ALC_EXT_EFX"; - - static final int ALC_EFX_MAJOR_VERSION = 0x20001; - static final int ALC_EFX_MINOR_VERSION = 0x20002; - static final int ALC_MAX_AUXILIARY_SENDS = 0x20003; - -///* Listener properties. */ -//#define AL_METERS_PER_UNIT 0x20004 -// -///* Source properties. */ - static final int AL_DIRECT_FILTER = 0x20005; - static final int AL_AUXILIARY_SEND_FILTER = 0x20006; -//#define AL_AIR_ABSORPTION_FACTOR 0x20007 -//#define AL_ROOM_ROLLOFF_FACTOR 0x20008 -//#define AL_CONE_OUTER_GAINHF 0x20009 - static final int AL_DIRECT_FILTER_GAINHF_AUTO = 0x2000A; -//#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B -//#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C -// -// -///* Effect properties. */ -// -///* Reverb effect parameters */ - static final int AL_REVERB_DENSITY = 0x0001; - static final int AL_REVERB_DIFFUSION = 0x0002; - static final int AL_REVERB_GAIN = 0x0003; - static final int AL_REVERB_GAINHF = 0x0004; - static final int AL_REVERB_DECAY_TIME = 0x0005; - static final int AL_REVERB_DECAY_HFRATIO = 0x0006; - static final int AL_REVERB_REFLECTIONS_GAIN = 0x0007; - static final int AL_REVERB_REFLECTIONS_DELAY = 0x0008; - static final int AL_REVERB_LATE_REVERB_GAIN = 0x0009; - static final int AL_REVERB_LATE_REVERB_DELAY = 0x000A; - static final int AL_REVERB_AIR_ABSORPTION_GAINHF = 0x000B; - static final int AL_REVERB_ROOM_ROLLOFF_FACTOR = 0x000C; - static final int AL_REVERB_DECAY_HFLIMIT = 0x000D; - -///* EAX Reverb effect parameters */ -//#define AL_EAXREVERB_DENSITY 0x0001 -//#define AL_EAXREVERB_DIFFUSION 0x0002 -//#define AL_EAXREVERB_GAIN 0x0003 -//#define AL_EAXREVERB_GAINHF 0x0004 -//#define AL_EAXREVERB_GAINLF 0x0005 -//#define AL_EAXREVERB_DECAY_TIME 0x0006 -//#define AL_EAXREVERB_DECAY_HFRATIO 0x0007 -//#define AL_EAXREVERB_DECAY_LFRATIO 0x0008 -//#define AL_EAXREVERB_REFLECTIONS_GAIN 0x0009 -//#define AL_EAXREVERB_REFLECTIONS_DELAY 0x000A -//#define AL_EAXREVERB_REFLECTIONS_PAN 0x000B -//#define AL_EAXREVERB_LATE_REVERB_GAIN 0x000C -//#define AL_EAXREVERB_LATE_REVERB_DELAY 0x000D -//#define AL_EAXREVERB_LATE_REVERB_PAN 0x000E -//#define AL_EAXREVERB_ECHO_TIME 0x000F -//#define AL_EAXREVERB_ECHO_DEPTH 0x0010 -//#define AL_EAXREVERB_MODULATION_TIME 0x0011 -//#define AL_EAXREVERB_MODULATION_DEPTH 0x0012 -//#define AL_EAXREVERB_AIR_ABSORPTION_GAINHF 0x0013 -//#define AL_EAXREVERB_HFREFERENCE 0x0014 -//#define AL_EAXREVERB_LFREFERENCE 0x0015 -//#define AL_EAXREVERB_ROOM_ROLLOFF_FACTOR 0x0016 -//#define AL_EAXREVERB_DECAY_HFLIMIT 0x0017 -// -///* Chorus effect parameters */ -//#define AL_CHORUS_WAVEFORM 0x0001 -//#define AL_CHORUS_PHASE 0x0002 -//#define AL_CHORUS_RATE 0x0003 -//#define AL_CHORUS_DEPTH 0x0004 -//#define AL_CHORUS_FEEDBACK 0x0005 -//#define AL_CHORUS_DELAY 0x0006 -// -///* Distortion effect parameters */ -//#define AL_DISTORTION_EDGE 0x0001 -//#define AL_DISTORTION_GAIN 0x0002 -//#define AL_DISTORTION_LOWPASS_CUTOFF 0x0003 -//#define AL_DISTORTION_EQCENTER 0x0004 -//#define AL_DISTORTION_EQBANDWIDTH 0x0005 -// -///* Echo effect parameters */ -//#define AL_ECHO_DELAY 0x0001 -//#define AL_ECHO_LRDELAY 0x0002 -//#define AL_ECHO_DAMPING 0x0003 -//#define AL_ECHO_FEEDBACK 0x0004 -//#define AL_ECHO_SPREAD 0x0005 -// -///* Flanger effect parameters */ -//#define AL_FLANGER_WAVEFORM 0x0001 -//#define AL_FLANGER_PHASE 0x0002 -//#define AL_FLANGER_RATE 0x0003 -//#define AL_FLANGER_DEPTH 0x0004 -//#define AL_FLANGER_FEEDBACK 0x0005 -//#define AL_FLANGER_DELAY 0x0006 -// -///* Frequency shifter effect parameters */ -//#define AL_FREQUENCY_SHIFTER_FREQUENCY 0x0001 -//#define AL_FREQUENCY_SHIFTER_LEFT_DIRECTION 0x0002 -//#define AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION 0x0003 -// -///* Vocal morpher effect parameters */ -//#define AL_VOCAL_MORPHER_PHONEMEA 0x0001 -//#define AL_VOCAL_MORPHER_PHONEMEA_COARSE_TUNING 0x0002 -//#define AL_VOCAL_MORPHER_PHONEMEB 0x0003 -//#define AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING 0x0004 -//#define AL_VOCAL_MORPHER_WAVEFORM 0x0005 -//#define AL_VOCAL_MORPHER_RATE 0x0006 -// -///* Pitchshifter effect parameters */ -//#define AL_PITCH_SHIFTER_COARSE_TUNE 0x0001 -//#define AL_PITCH_SHIFTER_FINE_TUNE 0x0002 -// -///* Ringmodulator effect parameters */ -//#define AL_RING_MODULATOR_FREQUENCY 0x0001 -//#define AL_RING_MODULATOR_HIGHPASS_CUTOFF 0x0002 -//#define AL_RING_MODULATOR_WAVEFORM 0x0003 -// -///* Autowah effect parameters */ -//#define AL_AUTOWAH_ATTACK_TIME 0x0001 -//#define AL_AUTOWAH_RELEASE_TIME 0x0002 -//#define AL_AUTOWAH_RESONANCE 0x0003 -//#define AL_AUTOWAH_PEAK_GAIN 0x0004 -// -///* Compressor effect parameters */ -//#define AL_COMPRESSOR_ONOFF 0x0001 -// -///* Equalizer effect parameters */ -//#define AL_EQUALIZER_LOW_GAIN 0x0001 -//#define AL_EQUALIZER_LOW_CUTOFF 0x0002 -//#define AL_EQUALIZER_MID1_GAIN 0x0003 -//#define AL_EQUALIZER_MID1_CENTER 0x0004 -//#define AL_EQUALIZER_MID1_WIDTH 0x0005 -//#define AL_EQUALIZER_MID2_GAIN 0x0006 -//#define AL_EQUALIZER_MID2_CENTER 0x0007 -//#define AL_EQUALIZER_MID2_WIDTH 0x0008 -//#define AL_EQUALIZER_HIGH_GAIN 0x0009 -//#define AL_EQUALIZER_HIGH_CUTOFF 0x000A -// -///* Effect type */ -//#define AL_EFFECT_FIRST_PARAMETER 0x0000 -//#define AL_EFFECT_LAST_PARAMETER 0x8000 - static final int AL_EFFECT_TYPE = 0x8001; -// -///* Effect types, used with the AL_EFFECT_TYPE property */ -//#define AL_EFFECT_NULL 0x0000 - static final int AL_EFFECT_REVERB = 0x0001; -//#define AL_EFFECT_CHORUS 0x0002 -//#define AL_EFFECT_DISTORTION 0x0003 -//#define AL_EFFECT_ECHO 0x0004 -//#define AL_EFFECT_FLANGER 0x0005 -//#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006 -//#define AL_EFFECT_VOCAL_MORPHER 0x0007 -//#define AL_EFFECT_PITCH_SHIFTER 0x0008 -//#define AL_EFFECT_RING_MODULATOR 0x0009 -//#define AL_EFFECT_AUTOWAH 0x000A -//#define AL_EFFECT_COMPRESSOR 0x000B -//#define AL_EFFECT_EQUALIZER 0x000C -//#define AL_EFFECT_EAXREVERB 0x8000 -// -///* Auxiliary Effect Slot properties. */ - static final int AL_EFFECTSLOT_EFFECT = 0x0001; -//#define AL_EFFECTSLOT_GAIN 0x0002 -//#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003 -// -///* NULL Auxiliary Slot ID to disable a source send. */ -//#define AL_EFFECTSLOT_NULL 0x0000 -// -// -///* Filter properties. */ -// -///* Lowpass filter parameters */ - static final int AL_LOWPASS_GAIN = 0x0001; - static final int AL_LOWPASS_GAINHF = 0x0002; -// -///* Highpass filter parameters */ -//#define AL_HIGHPASS_GAIN 0x0001 -//#define AL_HIGHPASS_GAINLF 0x0002 -// -///* Bandpass filter parameters */ -//#define AL_BANDPASS_GAIN 0x0001 -//#define AL_BANDPASS_GAINLF 0x0002 -//#define AL_BANDPASS_GAINHF 0x0003 -// -///* Filter type */ -//#define AL_FILTER_FIRST_PARAMETER 0x0000 -//#define AL_FILTER_LAST_PARAMETER 0x8000 - static final int AL_FILTER_TYPE = 0x8001; -// -///* Filter types, used with the AL_FILTER_TYPE property */ - static final int AL_FILTER_NULL = 0x0000; - static final int AL_FILTER_LOWPASS = 0x0001; - static final int AL_FILTER_HIGHPASS = 0x0002; -//#define AL_FILTER_BANDPASS 0x0003 -// -///* Filter ranges and defaults. */ -// -///* Lowpass filter */ -//#define AL_LOWPASS_MIN_GAIN (0.0f) -//#define AL_LOWPASS_MAX_GAIN (1.0f) -//#define AL_LOWPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_LOWPASS_MIN_GAINHF (0.0f) -//#define AL_LOWPASS_MAX_GAINHF (1.0f) -//#define AL_LOWPASS_DEFAULT_GAINHF (1.0f) -// -///* Highpass filter */ -//#define AL_HIGHPASS_MIN_GAIN (0.0f) -//#define AL_HIGHPASS_MAX_GAIN (1.0f) -//#define AL_HIGHPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_HIGHPASS_MIN_GAINLF (0.0f) -//#define AL_HIGHPASS_MAX_GAINLF (1.0f) -//#define AL_HIGHPASS_DEFAULT_GAINLF (1.0f) -// -///* Bandpass filter */ -//#define AL_BANDPASS_MIN_GAIN (0.0f) -//#define AL_BANDPASS_MAX_GAIN (1.0f) -//#define AL_BANDPASS_DEFAULT_GAIN (1.0f) -// -//#define AL_BANDPASS_MIN_GAINHF (0.0f) -//#define AL_BANDPASS_MAX_GAINHF (1.0f) -//#define AL_BANDPASS_DEFAULT_GAINHF (1.0f) -// -//#define AL_BANDPASS_MIN_GAINLF (0.0f) -//#define AL_BANDPASS_MAX_GAINLF (1.0f) -//#define AL_BANDPASS_DEFAULT_GAINLF (1.0f) -// -// -///* Effect parameter ranges and defaults. */ -// -///* Standard reverb effect */ -//#define AL_REVERB_MIN_DENSITY (0.0f) -//#define AL_REVERB_MAX_DENSITY (1.0f) -//#define AL_REVERB_DEFAULT_DENSITY (1.0f) -// -//#define AL_REVERB_MIN_DIFFUSION (0.0f) -//#define AL_REVERB_MAX_DIFFUSION (1.0f) -//#define AL_REVERB_DEFAULT_DIFFUSION (1.0f) -// -//#define AL_REVERB_MIN_GAIN (0.0f) -//#define AL_REVERB_MAX_GAIN (1.0f) -//#define AL_REVERB_DEFAULT_GAIN (0.32f) -// -//#define AL_REVERB_MIN_GAINHF (0.0f) -//#define AL_REVERB_MAX_GAINHF (1.0f) -//#define AL_REVERB_DEFAULT_GAINHF (0.89f) -// -//#define AL_REVERB_MIN_DECAY_TIME (0.1f) -//#define AL_REVERB_MAX_DECAY_TIME (20.0f) -//#define AL_REVERB_DEFAULT_DECAY_TIME (1.49f) -// -//#define AL_REVERB_MIN_DECAY_HFRATIO (0.1f) -//#define AL_REVERB_MAX_DECAY_HFRATIO (2.0f) -//#define AL_REVERB_DEFAULT_DECAY_HFRATIO (0.83f) -// -//#define AL_REVERB_MIN_REFLECTIONS_GAIN (0.0f) -//#define AL_REVERB_MAX_REFLECTIONS_GAIN (3.16f) -//#define AL_REVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) -// -//#define AL_REVERB_MIN_REFLECTIONS_DELAY (0.0f) -//#define AL_REVERB_MAX_REFLECTIONS_DELAY (0.3f) -//#define AL_REVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) -// -//#define AL_REVERB_MIN_LATE_REVERB_GAIN (0.0f) -//#define AL_REVERB_MAX_LATE_REVERB_GAIN (10.0f) -//#define AL_REVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) -// -//#define AL_REVERB_MIN_LATE_REVERB_DELAY (0.0f) -//#define AL_REVERB_MAX_LATE_REVERB_DELAY (0.1f) -//#define AL_REVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) -// -//#define AL_REVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) -//#define AL_REVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) -//#define AL_REVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) -// -//#define AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_REVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_REVERB_MIN_DECAY_HFLIMIT AL_FALSE -//#define AL_REVERB_MAX_DECAY_HFLIMIT AL_TRUE -//#define AL_REVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE -// -///* EAX reverb effect */ -//#define AL_EAXREVERB_MIN_DENSITY (0.0f) -//#define AL_EAXREVERB_MAX_DENSITY (1.0f) -//#define AL_EAXREVERB_DEFAULT_DENSITY (1.0f) -// -//#define AL_EAXREVERB_MIN_DIFFUSION (0.0f) -//#define AL_EAXREVERB_MAX_DIFFUSION (1.0f) -//#define AL_EAXREVERB_DEFAULT_DIFFUSION (1.0f) -// -//#define AL_EAXREVERB_MIN_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_GAIN (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAIN (0.32f) -// -//#define AL_EAXREVERB_MIN_GAINHF (0.0f) -//#define AL_EAXREVERB_MAX_GAINHF (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAINHF (0.89f) -// -//#define AL_EAXREVERB_MIN_GAINLF (0.0f) -//#define AL_EAXREVERB_MAX_GAINLF (1.0f) -//#define AL_EAXREVERB_DEFAULT_GAINLF (1.0f) -// -//#define AL_EAXREVERB_MIN_DECAY_TIME (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_TIME (20.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_TIME (1.49f) -// -//#define AL_EAXREVERB_MIN_DECAY_HFRATIO (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_HFRATIO (2.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_HFRATIO (0.83f) -// -//#define AL_EAXREVERB_MIN_DECAY_LFRATIO (0.1f) -//#define AL_EAXREVERB_MAX_DECAY_LFRATIO (2.0f) -//#define AL_EAXREVERB_DEFAULT_DECAY_LFRATIO (1.0f) -// -//#define AL_EAXREVERB_MIN_REFLECTIONS_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_REFLECTIONS_GAIN (3.16f) -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) -// -//#define AL_EAXREVERB_MIN_REFLECTIONS_DELAY (0.0f) -//#define AL_EAXREVERB_MAX_REFLECTIONS_DELAY (0.3f) -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) -// -//#define AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ (0.0f) -// -//#define AL_EAXREVERB_MIN_LATE_REVERB_GAIN (0.0f) -//#define AL_EAXREVERB_MAX_LATE_REVERB_GAIN (10.0f) -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) -// -//#define AL_EAXREVERB_MIN_LATE_REVERB_DELAY (0.0f) -//#define AL_EAXREVERB_MAX_LATE_REVERB_DELAY (0.1f) -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) -// -//#define AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ (0.0f) -// -//#define AL_EAXREVERB_MIN_ECHO_TIME (0.075f) -//#define AL_EAXREVERB_MAX_ECHO_TIME (0.25f) -//#define AL_EAXREVERB_DEFAULT_ECHO_TIME (0.25f) -// -//#define AL_EAXREVERB_MIN_ECHO_DEPTH (0.0f) -//#define AL_EAXREVERB_MAX_ECHO_DEPTH (1.0f) -//#define AL_EAXREVERB_DEFAULT_ECHO_DEPTH (0.0f) -// -//#define AL_EAXREVERB_MIN_MODULATION_TIME (0.04f) -//#define AL_EAXREVERB_MAX_MODULATION_TIME (4.0f) -//#define AL_EAXREVERB_DEFAULT_MODULATION_TIME (0.25f) -// -//#define AL_EAXREVERB_MIN_MODULATION_DEPTH (0.0f) -//#define AL_EAXREVERB_MAX_MODULATION_DEPTH (1.0f) -//#define AL_EAXREVERB_DEFAULT_MODULATION_DEPTH (0.0f) -// -//#define AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) -//#define AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) -//#define AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) -// -//#define AL_EAXREVERB_MIN_HFREFERENCE (1000.0f) -//#define AL_EAXREVERB_MAX_HFREFERENCE (20000.0f) -//#define AL_EAXREVERB_DEFAULT_HFREFERENCE (5000.0f) -// -//#define AL_EAXREVERB_MIN_LFREFERENCE (20.0f) -//#define AL_EAXREVERB_MAX_LFREFERENCE (1000.0f) -//#define AL_EAXREVERB_DEFAULT_LFREFERENCE (250.0f) -// -//#define AL_EAXREVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_EAXREVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_EAXREVERB_MIN_DECAY_HFLIMIT AL_FALSE -//#define AL_EAXREVERB_MAX_DECAY_HFLIMIT AL_TRUE -//#define AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE -// -///* Chorus effect */ -//#define AL_CHORUS_WAVEFORM_SINUSOID (0) -//#define AL_CHORUS_WAVEFORM_TRIANGLE (1) -// -//#define AL_CHORUS_MIN_WAVEFORM (0) -//#define AL_CHORUS_MAX_WAVEFORM (1) -//#define AL_CHORUS_DEFAULT_WAVEFORM (1) -// -//#define AL_CHORUS_MIN_PHASE (-180) -//#define AL_CHORUS_MAX_PHASE (180) -//#define AL_CHORUS_DEFAULT_PHASE (90) -// -//#define AL_CHORUS_MIN_RATE (0.0f) -//#define AL_CHORUS_MAX_RATE (10.0f) -//#define AL_CHORUS_DEFAULT_RATE (1.1f) -// -//#define AL_CHORUS_MIN_DEPTH (0.0f) -//#define AL_CHORUS_MAX_DEPTH (1.0f) -//#define AL_CHORUS_DEFAULT_DEPTH (0.1f) -// -//#define AL_CHORUS_MIN_FEEDBACK (-1.0f) -//#define AL_CHORUS_MAX_FEEDBACK (1.0f) -//#define AL_CHORUS_DEFAULT_FEEDBACK (0.25f) -// -//#define AL_CHORUS_MIN_DELAY (0.0f) -//#define AL_CHORUS_MAX_DELAY (0.016f) -//#define AL_CHORUS_DEFAULT_DELAY (0.016f) -// -///* Distortion effect */ -//#define AL_DISTORTION_MIN_EDGE (0.0f) -//#define AL_DISTORTION_MAX_EDGE (1.0f) -//#define AL_DISTORTION_DEFAULT_EDGE (0.2f) -// -//#define AL_DISTORTION_MIN_GAIN (0.01f) -//#define AL_DISTORTION_MAX_GAIN (1.0f) -//#define AL_DISTORTION_DEFAULT_GAIN (0.05f) -// -//#define AL_DISTORTION_MIN_LOWPASS_CUTOFF (80.0f) -//#define AL_DISTORTION_MAX_LOWPASS_CUTOFF (24000.0f) -//#define AL_DISTORTION_DEFAULT_LOWPASS_CUTOFF (8000.0f) -// -//#define AL_DISTORTION_MIN_EQCENTER (80.0f) -//#define AL_DISTORTION_MAX_EQCENTER (24000.0f) -//#define AL_DISTORTION_DEFAULT_EQCENTER (3600.0f) -// -//#define AL_DISTORTION_MIN_EQBANDWIDTH (80.0f) -//#define AL_DISTORTION_MAX_EQBANDWIDTH (24000.0f) -//#define AL_DISTORTION_DEFAULT_EQBANDWIDTH (3600.0f) -// -///* Echo effect */ -//#define AL_ECHO_MIN_DELAY (0.0f) -//#define AL_ECHO_MAX_DELAY (0.207f) -//#define AL_ECHO_DEFAULT_DELAY (0.1f) -// -//#define AL_ECHO_MIN_LRDELAY (0.0f) -//#define AL_ECHO_MAX_LRDELAY (0.404f) -//#define AL_ECHO_DEFAULT_LRDELAY (0.1f) -// -//#define AL_ECHO_MIN_DAMPING (0.0f) -//#define AL_ECHO_MAX_DAMPING (0.99f) -//#define AL_ECHO_DEFAULT_DAMPING (0.5f) -// -//#define AL_ECHO_MIN_FEEDBACK (0.0f) -//#define AL_ECHO_MAX_FEEDBACK (1.0f) -//#define AL_ECHO_DEFAULT_FEEDBACK (0.5f) -// -//#define AL_ECHO_MIN_SPREAD (-1.0f) -//#define AL_ECHO_MAX_SPREAD (1.0f) -//#define AL_ECHO_DEFAULT_SPREAD (-1.0f) -// -///* Flanger effect */ -//#define AL_FLANGER_WAVEFORM_SINUSOID (0) -//#define AL_FLANGER_WAVEFORM_TRIANGLE (1) -// -//#define AL_FLANGER_MIN_WAVEFORM (0) -//#define AL_FLANGER_MAX_WAVEFORM (1) -//#define AL_FLANGER_DEFAULT_WAVEFORM (1) -// -//#define AL_FLANGER_MIN_PHASE (-180) -//#define AL_FLANGER_MAX_PHASE (180) -//#define AL_FLANGER_DEFAULT_PHASE (0) -// -//#define AL_FLANGER_MIN_RATE (0.0f) -//#define AL_FLANGER_MAX_RATE (10.0f) -//#define AL_FLANGER_DEFAULT_RATE (0.27f) -// -//#define AL_FLANGER_MIN_DEPTH (0.0f) -//#define AL_FLANGER_MAX_DEPTH (1.0f) -//#define AL_FLANGER_DEFAULT_DEPTH (1.0f) -// -//#define AL_FLANGER_MIN_FEEDBACK (-1.0f) -//#define AL_FLANGER_MAX_FEEDBACK (1.0f) -//#define AL_FLANGER_DEFAULT_FEEDBACK (-0.5f) -// -//#define AL_FLANGER_MIN_DELAY (0.0f) -//#define AL_FLANGER_MAX_DELAY (0.004f) -//#define AL_FLANGER_DEFAULT_DELAY (0.002f) -// -///* Frequency shifter effect */ -//#define AL_FREQUENCY_SHIFTER_MIN_FREQUENCY (0.0f) -//#define AL_FREQUENCY_SHIFTER_MAX_FREQUENCY (24000.0f) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_FREQUENCY (0.0f) -// -//#define AL_FREQUENCY_SHIFTER_MIN_LEFT_DIRECTION (0) -//#define AL_FREQUENCY_SHIFTER_MAX_LEFT_DIRECTION (2) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_LEFT_DIRECTION (0) -// -//#define AL_FREQUENCY_SHIFTER_DIRECTION_DOWN (0) -//#define AL_FREQUENCY_SHIFTER_DIRECTION_UP (1) -//#define AL_FREQUENCY_SHIFTER_DIRECTION_OFF (2) -// -//#define AL_FREQUENCY_SHIFTER_MIN_RIGHT_DIRECTION (0) -//#define AL_FREQUENCY_SHIFTER_MAX_RIGHT_DIRECTION (2) -//#define AL_FREQUENCY_SHIFTER_DEFAULT_RIGHT_DIRECTION (0) -// -///* Vocal morpher effect */ -//#define AL_VOCAL_MORPHER_MIN_PHONEMEA (0) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEA (29) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA (0) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEA_COARSE_TUNING (-24) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEA_COARSE_TUNING (24) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA_COARSE_TUNING (0) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEB (0) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEB (29) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB (10) -// -//#define AL_VOCAL_MORPHER_MIN_PHONEMEB_COARSE_TUNING (-24) -//#define AL_VOCAL_MORPHER_MAX_PHONEMEB_COARSE_TUNING (24) -//#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB_COARSE_TUNING (0) -// -//#define AL_VOCAL_MORPHER_PHONEME_A (0) -//#define AL_VOCAL_MORPHER_PHONEME_E (1) -//#define AL_VOCAL_MORPHER_PHONEME_I (2) -//#define AL_VOCAL_MORPHER_PHONEME_O (3) -//#define AL_VOCAL_MORPHER_PHONEME_U (4) -//#define AL_VOCAL_MORPHER_PHONEME_AA (5) -//#define AL_VOCAL_MORPHER_PHONEME_AE (6) -//#define AL_VOCAL_MORPHER_PHONEME_AH (7) -//#define AL_VOCAL_MORPHER_PHONEME_AO (8) -//#define AL_VOCAL_MORPHER_PHONEME_EH (9) -//#define AL_VOCAL_MORPHER_PHONEME_ER (10) -//#define AL_VOCAL_MORPHER_PHONEME_IH (11) -//#define AL_VOCAL_MORPHER_PHONEME_IY (12) -//#define AL_VOCAL_MORPHER_PHONEME_UH (13) -//#define AL_VOCAL_MORPHER_PHONEME_UW (14) -//#define AL_VOCAL_MORPHER_PHONEME_B (15) -//#define AL_VOCAL_MORPHER_PHONEME_D (16) -//#define AL_VOCAL_MORPHER_PHONEME_F (17) -//#define AL_VOCAL_MORPHER_PHONEME_G (18) -//#define AL_VOCAL_MORPHER_PHONEME_J (19) -//#define AL_VOCAL_MORPHER_PHONEME_K (20) -//#define AL_VOCAL_MORPHER_PHONEME_L (21) -//#define AL_VOCAL_MORPHER_PHONEME_M (22) -//#define AL_VOCAL_MORPHER_PHONEME_N (23) -//#define AL_VOCAL_MORPHER_PHONEME_P (24) -//#define AL_VOCAL_MORPHER_PHONEME_R (25) -//#define AL_VOCAL_MORPHER_PHONEME_S (26) -//#define AL_VOCAL_MORPHER_PHONEME_T (27) -//#define AL_VOCAL_MORPHER_PHONEME_V (28) -//#define AL_VOCAL_MORPHER_PHONEME_Z (29) -// -//#define AL_VOCAL_MORPHER_WAVEFORM_SINUSOID (0) -//#define AL_VOCAL_MORPHER_WAVEFORM_TRIANGLE (1) -//#define AL_VOCAL_MORPHER_WAVEFORM_SAWTOOTH (2) -// -//#define AL_VOCAL_MORPHER_MIN_WAVEFORM (0) -//#define AL_VOCAL_MORPHER_MAX_WAVEFORM (2) -//#define AL_VOCAL_MORPHER_DEFAULT_WAVEFORM (0) -// -//#define AL_VOCAL_MORPHER_MIN_RATE (0.0f) -//#define AL_VOCAL_MORPHER_MAX_RATE (10.0f) -//#define AL_VOCAL_MORPHER_DEFAULT_RATE (1.41f) -// -///* Pitch shifter effect */ -//#define AL_PITCH_SHIFTER_MIN_COARSE_TUNE (-12) -//#define AL_PITCH_SHIFTER_MAX_COARSE_TUNE (12) -//#define AL_PITCH_SHIFTER_DEFAULT_COARSE_TUNE (12) -// -//#define AL_PITCH_SHIFTER_MIN_FINE_TUNE (-50) -//#define AL_PITCH_SHIFTER_MAX_FINE_TUNE (50) -//#define AL_PITCH_SHIFTER_DEFAULT_FINE_TUNE (0) -// -///* Ring modulator effect */ -//#define AL_RING_MODULATOR_MIN_FREQUENCY (0.0f) -//#define AL_RING_MODULATOR_MAX_FREQUENCY (8000.0f) -//#define AL_RING_MODULATOR_DEFAULT_FREQUENCY (440.0f) -// -//#define AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF (0.0f) -//#define AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF (24000.0f) -//#define AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF (800.0f) -// -//#define AL_RING_MODULATOR_SINUSOID (0) -//#define AL_RING_MODULATOR_SAWTOOTH (1) -//#define AL_RING_MODULATOR_SQUARE (2) -// -//#define AL_RING_MODULATOR_MIN_WAVEFORM (0) -//#define AL_RING_MODULATOR_MAX_WAVEFORM (2) -//#define AL_RING_MODULATOR_DEFAULT_WAVEFORM (0) -// -///* Autowah effect */ -//#define AL_AUTOWAH_MIN_ATTACK_TIME (0.0001f) -//#define AL_AUTOWAH_MAX_ATTACK_TIME (1.0f) -//#define AL_AUTOWAH_DEFAULT_ATTACK_TIME (0.06f) -// -//#define AL_AUTOWAH_MIN_RELEASE_TIME (0.0001f) -//#define AL_AUTOWAH_MAX_RELEASE_TIME (1.0f) -//#define AL_AUTOWAH_DEFAULT_RELEASE_TIME (0.06f) -// -//#define AL_AUTOWAH_MIN_RESONANCE (2.0f) -//#define AL_AUTOWAH_MAX_RESONANCE (1000.0f) -//#define AL_AUTOWAH_DEFAULT_RESONANCE (1000.0f) -// -//#define AL_AUTOWAH_MIN_PEAK_GAIN (0.00003f) -//#define AL_AUTOWAH_MAX_PEAK_GAIN (31621.0f) -//#define AL_AUTOWAH_DEFAULT_PEAK_GAIN (11.22f) -// -///* Compressor effect */ -//#define AL_COMPRESSOR_MIN_ONOFF (0) -//#define AL_COMPRESSOR_MAX_ONOFF (1) -//#define AL_COMPRESSOR_DEFAULT_ONOFF (1) -// -///* Equalizer effect */ -//#define AL_EQUALIZER_MIN_LOW_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_LOW_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_LOW_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_LOW_CUTOFF (50.0f) -//#define AL_EQUALIZER_MAX_LOW_CUTOFF (800.0f) -//#define AL_EQUALIZER_DEFAULT_LOW_CUTOFF (200.0f) -// -//#define AL_EQUALIZER_MIN_MID1_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_MID1_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_MID1_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_MID1_CENTER (200.0f) -//#define AL_EQUALIZER_MAX_MID1_CENTER (3000.0f) -//#define AL_EQUALIZER_DEFAULT_MID1_CENTER (500.0f) -// -//#define AL_EQUALIZER_MIN_MID1_WIDTH (0.01f) -//#define AL_EQUALIZER_MAX_MID1_WIDTH (1.0f) -//#define AL_EQUALIZER_DEFAULT_MID1_WIDTH (1.0f) -// -//#define AL_EQUALIZER_MIN_MID2_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_MID2_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_MID2_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_MID2_CENTER (1000.0f) -//#define AL_EQUALIZER_MAX_MID2_CENTER (8000.0f) -//#define AL_EQUALIZER_DEFAULT_MID2_CENTER (3000.0f) -// -//#define AL_EQUALIZER_MIN_MID2_WIDTH (0.01f) -//#define AL_EQUALIZER_MAX_MID2_WIDTH (1.0f) -//#define AL_EQUALIZER_DEFAULT_MID2_WIDTH (1.0f) -// -//#define AL_EQUALIZER_MIN_HIGH_GAIN (0.126f) -//#define AL_EQUALIZER_MAX_HIGH_GAIN (7.943f) -//#define AL_EQUALIZER_DEFAULT_HIGH_GAIN (1.0f) -// -//#define AL_EQUALIZER_MIN_HIGH_CUTOFF (4000.0f) -//#define AL_EQUALIZER_MAX_HIGH_CUTOFF (16000.0f) -//#define AL_EQUALIZER_DEFAULT_HIGH_CUTOFF (6000.0f) -// -// -///* Source parameter value ranges and defaults. */ -//#define AL_MIN_AIR_ABSORPTION_FACTOR (0.0f) -//#define AL_MAX_AIR_ABSORPTION_FACTOR (10.0f) -//#define AL_DEFAULT_AIR_ABSORPTION_FACTOR (0.0f) -// -//#define AL_MIN_ROOM_ROLLOFF_FACTOR (0.0f) -//#define AL_MAX_ROOM_ROLLOFF_FACTOR (10.0f) -//#define AL_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) -// -//#define AL_MIN_CONE_OUTER_GAINHF (0.0f) -//#define AL_MAX_CONE_OUTER_GAINHF (1.0f) -//#define AL_DEFAULT_CONE_OUTER_GAINHF (1.0f) -// -//#define AL_MIN_DIRECT_FILTER_GAINHF_AUTO AL_FALSE -//#define AL_MAX_DIRECT_FILTER_GAINHF_AUTO AL_TRUE -//#define AL_DEFAULT_DIRECT_FILTER_GAINHF_AUTO AL_TRUE -// -//#define AL_MIN_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_FALSE -//#define AL_MAX_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE -//#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE -// -//#define AL_MIN_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_FALSE -//#define AL_MAX_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE -//#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE -// + public static final String ALC_EXT_EFX_NAME = "ALC_EXT_EFX"; + public static final int ALC_EFX_MAJOR_VERSION = 0x20001; + public static final int ALC_EFX_MINOR_VERSION = 0x20002; + public static final int ALC_MAX_AUXILIARY_SENDS = 0x20003; + + /* Listener properties. */ + //#define AL_METERS_PER_UNIT 0x20004 + + /* Source properties. */ + public static final int AL_DIRECT_FILTER = 0x20005; + public static final int AL_AUXILIARY_SEND_FILTER = 0x20006; + //#define AL_AIR_ABSORPTION_FACTOR 0x20007 + //#define AL_ROOM_ROLLOFF_FACTOR 0x20008 + //#define AL_CONE_OUTER_GAINHF 0x20009 + + public static final int AL_DIRECT_FILTER_GAINHF_AUTO = 0x2000A; + //#define AL_AUXILIARY_SEND_FILTER_GAIN_AUTO 0x2000B + //#define AL_AUXILIARY_SEND_FILTER_GAINHF_AUTO 0x2000C + + /* Effect properties. */ + + /* Reverb effect parameters */ + public static final int AL_REVERB_DENSITY = 0x0001; + public static final int AL_REVERB_DIFFUSION = 0x0002; + public static final int AL_REVERB_GAIN = 0x0003; + public static final int AL_REVERB_GAINHF = 0x0004; + public static final int AL_REVERB_DECAY_TIME = 0x0005; + public static final int AL_REVERB_DECAY_HFRATIO = 0x0006; + public static final int AL_REVERB_REFLECTIONS_GAIN = 0x0007; + public static final int AL_REVERB_REFLECTIONS_DELAY = 0x0008; + public static final int AL_REVERB_LATE_REVERB_GAIN = 0x0009; + public static final int AL_REVERB_LATE_REVERB_DELAY = 0x000A; + public static final int AL_REVERB_AIR_ABSORPTION_GAINHF = 0x000B; + public static final int AL_REVERB_ROOM_ROLLOFF_FACTOR = 0x000C; + public static final int AL_REVERB_DECAY_HFLIMIT = 0x000D; + + /* EAX Reverb effect parameters */ + //#define AL_EAXREVERB_DENSITY 0x0001 + //#define AL_EAXREVERB_DIFFUSION 0x0002 + //#define AL_EAXREVERB_GAIN 0x0003 + //#define AL_EAXREVERB_GAINHF 0x0004 + //#define AL_EAXREVERB_GAINLF 0x0005 + //#define AL_EAXREVERB_DECAY_TIME 0x0006 + //#define AL_EAXREVERB_DECAY_HFRATIO 0x0007 + //#define AL_EAXREVERB_DECAY_LFRATIO 0x0008 + //#define AL_EAXREVERB_REFLECTIONS_GAIN 0x0009 + //#define AL_EAXREVERB_REFLECTIONS_DELAY 0x000A + //#define AL_EAXREVERB_REFLECTIONS_PAN 0x000B + //#define AL_EAXREVERB_LATE_REVERB_GAIN 0x000C + //#define AL_EAXREVERB_LATE_REVERB_DELAY 0x000D + //#define AL_EAXREVERB_LATE_REVERB_PAN 0x000E + //#define AL_EAXREVERB_ECHO_TIME 0x000F + //#define AL_EAXREVERB_ECHO_DEPTH 0x0010 + //#define AL_EAXREVERB_MODULATION_TIME 0x0011 + //#define AL_EAXREVERB_MODULATION_DEPTH 0x0012 + //#define AL_EAXREVERB_AIR_ABSORPTION_GAINHF 0x0013 + //#define AL_EAXREVERB_HFREFERENCE 0x0014 + //#define AL_EAXREVERB_LFREFERENCE 0x0015 + //#define AL_EAXREVERB_ROOM_ROLLOFF_FACTOR 0x0016 + //#define AL_EAXREVERB_DECAY_HFLIMIT 0x0017 + // + ///* Chorus effect parameters */ + //#define AL_CHORUS_WAVEFORM 0x0001 + //#define AL_CHORUS_PHASE 0x0002 + //#define AL_CHORUS_RATE 0x0003 + //#define AL_CHORUS_DEPTH 0x0004 + //#define AL_CHORUS_FEEDBACK 0x0005 + //#define AL_CHORUS_DELAY 0x0006 + // + ///* Distortion effect parameters */ + //#define AL_DISTORTION_EDGE 0x0001 + //#define AL_DISTORTION_GAIN 0x0002 + //#define AL_DISTORTION_LOWPASS_CUTOFF 0x0003 + //#define AL_DISTORTION_EQCENTER 0x0004 + //#define AL_DISTORTION_EQBANDWIDTH 0x0005 + // + ///* Echo effect parameters */ + //#define AL_ECHO_DELAY 0x0001 + //#define AL_ECHO_LRDELAY 0x0002 + //#define AL_ECHO_DAMPING 0x0003 + //#define AL_ECHO_FEEDBACK 0x0004 + //#define AL_ECHO_SPREAD 0x0005 + // + ///* Flanger effect parameters */ + //#define AL_FLANGER_WAVEFORM 0x0001 + //#define AL_FLANGER_PHASE 0x0002 + //#define AL_FLANGER_RATE 0x0003 + //#define AL_FLANGER_DEPTH 0x0004 + //#define AL_FLANGER_FEEDBACK 0x0005 + //#define AL_FLANGER_DELAY 0x0006 + // + ///* Frequency shifter effect parameters */ + //#define AL_FREQUENCY_SHIFTER_FREQUENCY 0x0001 + //#define AL_FREQUENCY_SHIFTER_LEFT_DIRECTION 0x0002 + //#define AL_FREQUENCY_SHIFTER_RIGHT_DIRECTION 0x0003 + // + ///* Vocal morpher effect parameters */ + //#define AL_VOCAL_MORPHER_PHONEMEA 0x0001 + //#define AL_VOCAL_MORPHER_PHONEMEA_COARSE_TUNING 0x0002 + //#define AL_VOCAL_MORPHER_PHONEMEB 0x0003 + //#define AL_VOCAL_MORPHER_PHONEMEB_COARSE_TUNING 0x0004 + //#define AL_VOCAL_MORPHER_WAVEFORM 0x0005 + //#define AL_VOCAL_MORPHER_RATE 0x0006 + // + ///* Pitchshifter effect parameters */ + //#define AL_PITCH_SHIFTER_COARSE_TUNE 0x0001 + //#define AL_PITCH_SHIFTER_FINE_TUNE 0x0002 + // + ///* Ringmodulator effect parameters */ + //#define AL_RING_MODULATOR_FREQUENCY 0x0001 + //#define AL_RING_MODULATOR_HIGHPASS_CUTOFF 0x0002 + //#define AL_RING_MODULATOR_WAVEFORM 0x0003 + // + ///* Autowah effect parameters */ + //#define AL_AUTOWAH_ATTACK_TIME 0x0001 + //#define AL_AUTOWAH_RELEASE_TIME 0x0002 + //#define AL_AUTOWAH_RESONANCE 0x0003 + //#define AL_AUTOWAH_PEAK_GAIN 0x0004 + // + ///* Compressor effect parameters */ + //#define AL_COMPRESSOR_ONOFF 0x0001 + // + ///* Equalizer effect parameters */ + //#define AL_EQUALIZER_LOW_GAIN 0x0001 + //#define AL_EQUALIZER_LOW_CUTOFF 0x0002 + //#define AL_EQUALIZER_MID1_GAIN 0x0003 + //#define AL_EQUALIZER_MID1_CENTER 0x0004 + //#define AL_EQUALIZER_MID1_WIDTH 0x0005 + //#define AL_EQUALIZER_MID2_GAIN 0x0006 + //#define AL_EQUALIZER_MID2_CENTER 0x0007 + //#define AL_EQUALIZER_MID2_WIDTH 0x0008 + //#define AL_EQUALIZER_HIGH_GAIN 0x0009 + //#define AL_EQUALIZER_HIGH_CUTOFF 0x000A + + /* Effect type */ + //#define AL_EFFECT_FIRST_PARAMETER 0x0000 + //#define AL_EFFECT_LAST_PARAMETER 0x8000 + public static final int AL_EFFECT_TYPE = 0x8001; + + /* Effect types, used with the AL_EFFECT_TYPE property */ + //#define AL_EFFECT_NULL 0x0000 + public static final int AL_EFFECT_REVERB = 0x0001; + //#define AL_EFFECT_CHORUS 0x0002 + //#define AL_EFFECT_DISTORTION 0x0003 + //#define AL_EFFECT_ECHO 0x0004 + //#define AL_EFFECT_FLANGER 0x0005 + //#define AL_EFFECT_FREQUENCY_SHIFTER 0x0006 + //#define AL_EFFECT_VOCAL_MORPHER 0x0007 + //#define AL_EFFECT_PITCH_SHIFTER 0x0008 + //#define AL_EFFECT_RING_MODULATOR 0x0009 + //#define AL_EFFECT_AUTOWAH 0x000A + //#define AL_EFFECT_COMPRESSOR 0x000B + //#define AL_EFFECT_EQUALIZER 0x000C + //#define AL_EFFECT_EAXREVERB 0x8000 + + /* Auxiliary Effect Slot properties. */ + public static final int AL_EFFECTSLOT_EFFECT = 0x0001; + //#define AL_EFFECTSLOT_GAIN 0x0002 + //#define AL_EFFECTSLOT_AUXILIARY_SEND_AUTO 0x0003 + + ///* NULL Auxiliary Slot ID to disable a source send. */ + //#define AL_EFFECTSLOT_NULL 0x0000 + + ///* Filter properties. */ + + /* Lowpass filter parameters */ + public static final int AL_LOWPASS_GAIN = 0x0001; + public static final int AL_LOWPASS_GAINHF = 0x0002; + + ///* Highpass filter parameters */ + //#define AL_HIGHPASS_GAIN 0x0001 + //#define AL_HIGHPASS_GAINLF 0x0002 + + ///* Bandpass filter parameters */ + //#define AL_BANDPASS_GAIN 0x0001 + //#define AL_BANDPASS_GAINLF 0x0002 + //#define AL_BANDPASS_GAINHF 0x0003 + + /* Filter type */ + //#define AL_FILTER_FIRST_PARAMETER 0x0000 + //#define AL_FILTER_LAST_PARAMETER 0x8000 + public static final int AL_FILTER_TYPE = 0x8001; + + /* Filter types, used with the AL_FILTER_TYPE property */ + public static final int AL_FILTER_NULL = 0x0000; + public static final int AL_FILTER_LOWPASS = 0x0001; + public static final int AL_FILTER_HIGHPASS = 0x0002; + //#define AL_FILTER_BANDPASS 0x0003 + + ///* Filter ranges and defaults. */ + // + ///* Lowpass filter */ + //#define AL_LOWPASS_MIN_GAIN (0.0f) + //#define AL_LOWPASS_MAX_GAIN (1.0f) + //#define AL_LOWPASS_DEFAULT_GAIN (1.0f) + // + //#define AL_LOWPASS_MIN_GAINHF (0.0f) + //#define AL_LOWPASS_MAX_GAINHF (1.0f) + //#define AL_LOWPASS_DEFAULT_GAINHF (1.0f) + // + ///* Highpass filter */ + //#define AL_HIGHPASS_MIN_GAIN (0.0f) + //#define AL_HIGHPASS_MAX_GAIN (1.0f) + //#define AL_HIGHPASS_DEFAULT_GAIN (1.0f) + // + //#define AL_HIGHPASS_MIN_GAINLF (0.0f) + //#define AL_HIGHPASS_MAX_GAINLF (1.0f) + //#define AL_HIGHPASS_DEFAULT_GAINLF (1.0f) + // + ///* Bandpass filter */ + //#define AL_BANDPASS_MIN_GAIN (0.0f) + //#define AL_BANDPASS_MAX_GAIN (1.0f) + //#define AL_BANDPASS_DEFAULT_GAIN (1.0f) + // + //#define AL_BANDPASS_MIN_GAINHF (0.0f) + //#define AL_BANDPASS_MAX_GAINHF (1.0f) + //#define AL_BANDPASS_DEFAULT_GAINHF (1.0f) + // + //#define AL_BANDPASS_MIN_GAINLF (0.0f) + //#define AL_BANDPASS_MAX_GAINLF (1.0f) + //#define AL_BANDPASS_DEFAULT_GAINLF (1.0f) + // + // + ///* Effect parameter ranges and defaults. */ + // + ///* Standard reverb effect */ + //#define AL_REVERB_MIN_DENSITY (0.0f) + //#define AL_REVERB_MAX_DENSITY (1.0f) + //#define AL_REVERB_DEFAULT_DENSITY (1.0f) + // + //#define AL_REVERB_MIN_DIFFUSION (0.0f) + //#define AL_REVERB_MAX_DIFFUSION (1.0f) + //#define AL_REVERB_DEFAULT_DIFFUSION (1.0f) + // + //#define AL_REVERB_MIN_GAIN (0.0f) + //#define AL_REVERB_MAX_GAIN (1.0f) + //#define AL_REVERB_DEFAULT_GAIN (0.32f) + // + //#define AL_REVERB_MIN_GAINHF (0.0f) + //#define AL_REVERB_MAX_GAINHF (1.0f) + //#define AL_REVERB_DEFAULT_GAINHF (0.89f) + // + //#define AL_REVERB_MIN_DECAY_TIME (0.1f) + //#define AL_REVERB_MAX_DECAY_TIME (20.0f) + //#define AL_REVERB_DEFAULT_DECAY_TIME (1.49f) + // + //#define AL_REVERB_MIN_DECAY_HFRATIO (0.1f) + //#define AL_REVERB_MAX_DECAY_HFRATIO (2.0f) + //#define AL_REVERB_DEFAULT_DECAY_HFRATIO (0.83f) + // + //#define AL_REVERB_MIN_REFLECTIONS_GAIN (0.0f) + //#define AL_REVERB_MAX_REFLECTIONS_GAIN (3.16f) + //#define AL_REVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) + // + //#define AL_REVERB_MIN_REFLECTIONS_DELAY (0.0f) + //#define AL_REVERB_MAX_REFLECTIONS_DELAY (0.3f) + //#define AL_REVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) + // + //#define AL_REVERB_MIN_LATE_REVERB_GAIN (0.0f) + //#define AL_REVERB_MAX_LATE_REVERB_GAIN (10.0f) + //#define AL_REVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) + // + //#define AL_REVERB_MIN_LATE_REVERB_DELAY (0.0f) + //#define AL_REVERB_MAX_LATE_REVERB_DELAY (0.1f) + //#define AL_REVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) + // + //#define AL_REVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) + //#define AL_REVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) + //#define AL_REVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) + // + //#define AL_REVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) + //#define AL_REVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) + //#define AL_REVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) + // + //#define AL_REVERB_MIN_DECAY_HFLIMIT AL_FALSE + //#define AL_REVERB_MAX_DECAY_HFLIMIT AL_TRUE + //#define AL_REVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE + // + ///* EAX reverb effect */ + //#define AL_EAXREVERB_MIN_DENSITY (0.0f) + //#define AL_EAXREVERB_MAX_DENSITY (1.0f) + //#define AL_EAXREVERB_DEFAULT_DENSITY (1.0f) + // + //#define AL_EAXREVERB_MIN_DIFFUSION (0.0f) + //#define AL_EAXREVERB_MAX_DIFFUSION (1.0f) + //#define AL_EAXREVERB_DEFAULT_DIFFUSION (1.0f) + // + //#define AL_EAXREVERB_MIN_GAIN (0.0f) + //#define AL_EAXREVERB_MAX_GAIN (1.0f) + //#define AL_EAXREVERB_DEFAULT_GAIN (0.32f) + // + //#define AL_EAXREVERB_MIN_GAINHF (0.0f) + //#define AL_EAXREVERB_MAX_GAINHF (1.0f) + //#define AL_EAXREVERB_DEFAULT_GAINHF (0.89f) + // + //#define AL_EAXREVERB_MIN_GAINLF (0.0f) + //#define AL_EAXREVERB_MAX_GAINLF (1.0f) + //#define AL_EAXREVERB_DEFAULT_GAINLF (1.0f) + // + //#define AL_EAXREVERB_MIN_DECAY_TIME (0.1f) + //#define AL_EAXREVERB_MAX_DECAY_TIME (20.0f) + //#define AL_EAXREVERB_DEFAULT_DECAY_TIME (1.49f) + // + //#define AL_EAXREVERB_MIN_DECAY_HFRATIO (0.1f) + //#define AL_EAXREVERB_MAX_DECAY_HFRATIO (2.0f) + //#define AL_EAXREVERB_DEFAULT_DECAY_HFRATIO (0.83f) + // + //#define AL_EAXREVERB_MIN_DECAY_LFRATIO (0.1f) + //#define AL_EAXREVERB_MAX_DECAY_LFRATIO (2.0f) + //#define AL_EAXREVERB_DEFAULT_DECAY_LFRATIO (1.0f) + // + //#define AL_EAXREVERB_MIN_REFLECTIONS_GAIN (0.0f) + //#define AL_EAXREVERB_MAX_REFLECTIONS_GAIN (3.16f) + //#define AL_EAXREVERB_DEFAULT_REFLECTIONS_GAIN (0.05f) + // + //#define AL_EAXREVERB_MIN_REFLECTIONS_DELAY (0.0f) + //#define AL_EAXREVERB_MAX_REFLECTIONS_DELAY (0.3f) + //#define AL_EAXREVERB_DEFAULT_REFLECTIONS_DELAY (0.007f) + // + //#define AL_EAXREVERB_DEFAULT_REFLECTIONS_PAN_XYZ (0.0f) + // + //#define AL_EAXREVERB_MIN_LATE_REVERB_GAIN (0.0f) + //#define AL_EAXREVERB_MAX_LATE_REVERB_GAIN (10.0f) + //#define AL_EAXREVERB_DEFAULT_LATE_REVERB_GAIN (1.26f) + // + //#define AL_EAXREVERB_MIN_LATE_REVERB_DELAY (0.0f) + //#define AL_EAXREVERB_MAX_LATE_REVERB_DELAY (0.1f) + //#define AL_EAXREVERB_DEFAULT_LATE_REVERB_DELAY (0.011f) + // + //#define AL_EAXREVERB_DEFAULT_LATE_REVERB_PAN_XYZ (0.0f) + // + //#define AL_EAXREVERB_MIN_ECHO_TIME (0.075f) + //#define AL_EAXREVERB_MAX_ECHO_TIME (0.25f) + //#define AL_EAXREVERB_DEFAULT_ECHO_TIME (0.25f) + // + //#define AL_EAXREVERB_MIN_ECHO_DEPTH (0.0f) + //#define AL_EAXREVERB_MAX_ECHO_DEPTH (1.0f) + //#define AL_EAXREVERB_DEFAULT_ECHO_DEPTH (0.0f) + // + //#define AL_EAXREVERB_MIN_MODULATION_TIME (0.04f) + //#define AL_EAXREVERB_MAX_MODULATION_TIME (4.0f) + //#define AL_EAXREVERB_DEFAULT_MODULATION_TIME (0.25f) + // + //#define AL_EAXREVERB_MIN_MODULATION_DEPTH (0.0f) + //#define AL_EAXREVERB_MAX_MODULATION_DEPTH (1.0f) + //#define AL_EAXREVERB_DEFAULT_MODULATION_DEPTH (0.0f) + // + //#define AL_EAXREVERB_MIN_AIR_ABSORPTION_GAINHF (0.892f) + //#define AL_EAXREVERB_MAX_AIR_ABSORPTION_GAINHF (1.0f) + //#define AL_EAXREVERB_DEFAULT_AIR_ABSORPTION_GAINHF (0.994f) + // + //#define AL_EAXREVERB_MIN_HFREFERENCE (1000.0f) + //#define AL_EAXREVERB_MAX_HFREFERENCE (20000.0f) + //#define AL_EAXREVERB_DEFAULT_HFREFERENCE (5000.0f) + // + //#define AL_EAXREVERB_MIN_LFREFERENCE (20.0f) + //#define AL_EAXREVERB_MAX_LFREFERENCE (1000.0f) + //#define AL_EAXREVERB_DEFAULT_LFREFERENCE (250.0f) + // + //#define AL_EAXREVERB_MIN_ROOM_ROLLOFF_FACTOR (0.0f) + //#define AL_EAXREVERB_MAX_ROOM_ROLLOFF_FACTOR (10.0f) + //#define AL_EAXREVERB_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) + // + //#define AL_EAXREVERB_MIN_DECAY_HFLIMIT AL_FALSE + //#define AL_EAXREVERB_MAX_DECAY_HFLIMIT AL_TRUE + //#define AL_EAXREVERB_DEFAULT_DECAY_HFLIMIT AL_TRUE + // + ///* Chorus effect */ + //#define AL_CHORUS_WAVEFORM_SINUSOID (0) + //#define AL_CHORUS_WAVEFORM_TRIANGLE (1) + // + //#define AL_CHORUS_MIN_WAVEFORM (0) + //#define AL_CHORUS_MAX_WAVEFORM (1) + //#define AL_CHORUS_DEFAULT_WAVEFORM (1) + // + //#define AL_CHORUS_MIN_PHASE (-180) + //#define AL_CHORUS_MAX_PHASE (180) + //#define AL_CHORUS_DEFAULT_PHASE (90) + // + //#define AL_CHORUS_MIN_RATE (0.0f) + //#define AL_CHORUS_MAX_RATE (10.0f) + //#define AL_CHORUS_DEFAULT_RATE (1.1f) + // + //#define AL_CHORUS_MIN_DEPTH (0.0f) + //#define AL_CHORUS_MAX_DEPTH (1.0f) + //#define AL_CHORUS_DEFAULT_DEPTH (0.1f) + // + //#define AL_CHORUS_MIN_FEEDBACK (-1.0f) + //#define AL_CHORUS_MAX_FEEDBACK (1.0f) + //#define AL_CHORUS_DEFAULT_FEEDBACK (0.25f) + // + //#define AL_CHORUS_MIN_DELAY (0.0f) + //#define AL_CHORUS_MAX_DELAY (0.016f) + //#define AL_CHORUS_DEFAULT_DELAY (0.016f) + // + ///* Distortion effect */ + //#define AL_DISTORTION_MIN_EDGE (0.0f) + //#define AL_DISTORTION_MAX_EDGE (1.0f) + //#define AL_DISTORTION_DEFAULT_EDGE (0.2f) + // + //#define AL_DISTORTION_MIN_GAIN (0.01f) + //#define AL_DISTORTION_MAX_GAIN (1.0f) + //#define AL_DISTORTION_DEFAULT_GAIN (0.05f) + // + //#define AL_DISTORTION_MIN_LOWPASS_CUTOFF (80.0f) + //#define AL_DISTORTION_MAX_LOWPASS_CUTOFF (24000.0f) + //#define AL_DISTORTION_DEFAULT_LOWPASS_CUTOFF (8000.0f) + // + //#define AL_DISTORTION_MIN_EQCENTER (80.0f) + //#define AL_DISTORTION_MAX_EQCENTER (24000.0f) + //#define AL_DISTORTION_DEFAULT_EQCENTER (3600.0f) + // + //#define AL_DISTORTION_MIN_EQBANDWIDTH (80.0f) + //#define AL_DISTORTION_MAX_EQBANDWIDTH (24000.0f) + //#define AL_DISTORTION_DEFAULT_EQBANDWIDTH (3600.0f) + // + ///* Echo effect */ + //#define AL_ECHO_MIN_DELAY (0.0f) + //#define AL_ECHO_MAX_DELAY (0.207f) + //#define AL_ECHO_DEFAULT_DELAY (0.1f) + // + //#define AL_ECHO_MIN_LRDELAY (0.0f) + //#define AL_ECHO_MAX_LRDELAY (0.404f) + //#define AL_ECHO_DEFAULT_LRDELAY (0.1f) + // + //#define AL_ECHO_MIN_DAMPING (0.0f) + //#define AL_ECHO_MAX_DAMPING (0.99f) + //#define AL_ECHO_DEFAULT_DAMPING (0.5f) + // + //#define AL_ECHO_MIN_FEEDBACK (0.0f) + //#define AL_ECHO_MAX_FEEDBACK (1.0f) + //#define AL_ECHO_DEFAULT_FEEDBACK (0.5f) + // + //#define AL_ECHO_MIN_SPREAD (-1.0f) + //#define AL_ECHO_MAX_SPREAD (1.0f) + //#define AL_ECHO_DEFAULT_SPREAD (-1.0f) + // + ///* Flanger effect */ + //#define AL_FLANGER_WAVEFORM_SINUSOID (0) + //#define AL_FLANGER_WAVEFORM_TRIANGLE (1) + // + //#define AL_FLANGER_MIN_WAVEFORM (0) + //#define AL_FLANGER_MAX_WAVEFORM (1) + //#define AL_FLANGER_DEFAULT_WAVEFORM (1) + // + //#define AL_FLANGER_MIN_PHASE (-180) + //#define AL_FLANGER_MAX_PHASE (180) + //#define AL_FLANGER_DEFAULT_PHASE (0) + // + //#define AL_FLANGER_MIN_RATE (0.0f) + //#define AL_FLANGER_MAX_RATE (10.0f) + //#define AL_FLANGER_DEFAULT_RATE (0.27f) + // + //#define AL_FLANGER_MIN_DEPTH (0.0f) + //#define AL_FLANGER_MAX_DEPTH (1.0f) + //#define AL_FLANGER_DEFAULT_DEPTH (1.0f) + // + //#define AL_FLANGER_MIN_FEEDBACK (-1.0f) + //#define AL_FLANGER_MAX_FEEDBACK (1.0f) + //#define AL_FLANGER_DEFAULT_FEEDBACK (-0.5f) + // + //#define AL_FLANGER_MIN_DELAY (0.0f) + //#define AL_FLANGER_MAX_DELAY (0.004f) + //#define AL_FLANGER_DEFAULT_DELAY (0.002f) + // + ///* Frequency shifter effect */ + //#define AL_FREQUENCY_SHIFTER_MIN_FREQUENCY (0.0f) + //#define AL_FREQUENCY_SHIFTER_MAX_FREQUENCY (24000.0f) + //#define AL_FREQUENCY_SHIFTER_DEFAULT_FREQUENCY (0.0f) + // + //#define AL_FREQUENCY_SHIFTER_MIN_LEFT_DIRECTION (0) + //#define AL_FREQUENCY_SHIFTER_MAX_LEFT_DIRECTION (2) + //#define AL_FREQUENCY_SHIFTER_DEFAULT_LEFT_DIRECTION (0) + // + //#define AL_FREQUENCY_SHIFTER_DIRECTION_DOWN (0) + //#define AL_FREQUENCY_SHIFTER_DIRECTION_UP (1) + //#define AL_FREQUENCY_SHIFTER_DIRECTION_OFF (2) + // + //#define AL_FREQUENCY_SHIFTER_MIN_RIGHT_DIRECTION (0) + //#define AL_FREQUENCY_SHIFTER_MAX_RIGHT_DIRECTION (2) + //#define AL_FREQUENCY_SHIFTER_DEFAULT_RIGHT_DIRECTION (0) + // + ///* Vocal morpher effect */ + //#define AL_VOCAL_MORPHER_MIN_PHONEMEA (0) + //#define AL_VOCAL_MORPHER_MAX_PHONEMEA (29) + //#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA (0) + // + //#define AL_VOCAL_MORPHER_MIN_PHONEMEA_COARSE_TUNING (-24) + //#define AL_VOCAL_MORPHER_MAX_PHONEMEA_COARSE_TUNING (24) + //#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEA_COARSE_TUNING (0) + // + //#define AL_VOCAL_MORPHER_MIN_PHONEMEB (0) + //#define AL_VOCAL_MORPHER_MAX_PHONEMEB (29) + //#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB (10) + // + //#define AL_VOCAL_MORPHER_MIN_PHONEMEB_COARSE_TUNING (-24) + //#define AL_VOCAL_MORPHER_MAX_PHONEMEB_COARSE_TUNING (24) + //#define AL_VOCAL_MORPHER_DEFAULT_PHONEMEB_COARSE_TUNING (0) + // + //#define AL_VOCAL_MORPHER_PHONEME_A (0) + //#define AL_VOCAL_MORPHER_PHONEME_E (1) + //#define AL_VOCAL_MORPHER_PHONEME_I (2) + //#define AL_VOCAL_MORPHER_PHONEME_O (3) + //#define AL_VOCAL_MORPHER_PHONEME_U (4) + //#define AL_VOCAL_MORPHER_PHONEME_AA (5) + //#define AL_VOCAL_MORPHER_PHONEME_AE (6) + //#define AL_VOCAL_MORPHER_PHONEME_AH (7) + //#define AL_VOCAL_MORPHER_PHONEME_AO (8) + //#define AL_VOCAL_MORPHER_PHONEME_EH (9) + //#define AL_VOCAL_MORPHER_PHONEME_ER (10) + //#define AL_VOCAL_MORPHER_PHONEME_IH (11) + //#define AL_VOCAL_MORPHER_PHONEME_IY (12) + //#define AL_VOCAL_MORPHER_PHONEME_UH (13) + //#define AL_VOCAL_MORPHER_PHONEME_UW (14) + //#define AL_VOCAL_MORPHER_PHONEME_B (15) + //#define AL_VOCAL_MORPHER_PHONEME_D (16) + //#define AL_VOCAL_MORPHER_PHONEME_F (17) + //#define AL_VOCAL_MORPHER_PHONEME_G (18) + //#define AL_VOCAL_MORPHER_PHONEME_J (19) + //#define AL_VOCAL_MORPHER_PHONEME_K (20) + //#define AL_VOCAL_MORPHER_PHONEME_L (21) + //#define AL_VOCAL_MORPHER_PHONEME_M (22) + //#define AL_VOCAL_MORPHER_PHONEME_N (23) + //#define AL_VOCAL_MORPHER_PHONEME_P (24) + //#define AL_VOCAL_MORPHER_PHONEME_R (25) + //#define AL_VOCAL_MORPHER_PHONEME_S (26) + //#define AL_VOCAL_MORPHER_PHONEME_T (27) + //#define AL_VOCAL_MORPHER_PHONEME_V (28) + //#define AL_VOCAL_MORPHER_PHONEME_Z (29) + // + //#define AL_VOCAL_MORPHER_WAVEFORM_SINUSOID (0) + //#define AL_VOCAL_MORPHER_WAVEFORM_TRIANGLE (1) + //#define AL_VOCAL_MORPHER_WAVEFORM_SAWTOOTH (2) + // + //#define AL_VOCAL_MORPHER_MIN_WAVEFORM (0) + //#define AL_VOCAL_MORPHER_MAX_WAVEFORM (2) + //#define AL_VOCAL_MORPHER_DEFAULT_WAVEFORM (0) + // + //#define AL_VOCAL_MORPHER_MIN_RATE (0.0f) + //#define AL_VOCAL_MORPHER_MAX_RATE (10.0f) + //#define AL_VOCAL_MORPHER_DEFAULT_RATE (1.41f) + // + ///* Pitch shifter effect */ + //#define AL_PITCH_SHIFTER_MIN_COARSE_TUNE (-12) + //#define AL_PITCH_SHIFTER_MAX_COARSE_TUNE (12) + //#define AL_PITCH_SHIFTER_DEFAULT_COARSE_TUNE (12) + // + //#define AL_PITCH_SHIFTER_MIN_FINE_TUNE (-50) + //#define AL_PITCH_SHIFTER_MAX_FINE_TUNE (50) + //#define AL_PITCH_SHIFTER_DEFAULT_FINE_TUNE (0) + // + ///* Ring modulator effect */ + //#define AL_RING_MODULATOR_MIN_FREQUENCY (0.0f) + //#define AL_RING_MODULATOR_MAX_FREQUENCY (8000.0f) + //#define AL_RING_MODULATOR_DEFAULT_FREQUENCY (440.0f) + // + //#define AL_RING_MODULATOR_MIN_HIGHPASS_CUTOFF (0.0f) + //#define AL_RING_MODULATOR_MAX_HIGHPASS_CUTOFF (24000.0f) + //#define AL_RING_MODULATOR_DEFAULT_HIGHPASS_CUTOFF (800.0f) + // + //#define AL_RING_MODULATOR_SINUSOID (0) + //#define AL_RING_MODULATOR_SAWTOOTH (1) + //#define AL_RING_MODULATOR_SQUARE (2) + // + //#define AL_RING_MODULATOR_MIN_WAVEFORM (0) + //#define AL_RING_MODULATOR_MAX_WAVEFORM (2) + //#define AL_RING_MODULATOR_DEFAULT_WAVEFORM (0) + // + ///* Autowah effect */ + //#define AL_AUTOWAH_MIN_ATTACK_TIME (0.0001f) + //#define AL_AUTOWAH_MAX_ATTACK_TIME (1.0f) + //#define AL_AUTOWAH_DEFAULT_ATTACK_TIME (0.06f) + // + //#define AL_AUTOWAH_MIN_RELEASE_TIME (0.0001f) + //#define AL_AUTOWAH_MAX_RELEASE_TIME (1.0f) + //#define AL_AUTOWAH_DEFAULT_RELEASE_TIME (0.06f) + // + //#define AL_AUTOWAH_MIN_RESONANCE (2.0f) + //#define AL_AUTOWAH_MAX_RESONANCE (1000.0f) + //#define AL_AUTOWAH_DEFAULT_RESONANCE (1000.0f) + // + //#define AL_AUTOWAH_MIN_PEAK_GAIN (0.00003f) + //#define AL_AUTOWAH_MAX_PEAK_GAIN (31621.0f) + //#define AL_AUTOWAH_DEFAULT_PEAK_GAIN (11.22f) + // + ///* Compressor effect */ + //#define AL_COMPRESSOR_MIN_ONOFF (0) + //#define AL_COMPRESSOR_MAX_ONOFF (1) + //#define AL_COMPRESSOR_DEFAULT_ONOFF (1) + // + ///* Equalizer effect */ + //#define AL_EQUALIZER_MIN_LOW_GAIN (0.126f) + //#define AL_EQUALIZER_MAX_LOW_GAIN (7.943f) + //#define AL_EQUALIZER_DEFAULT_LOW_GAIN (1.0f) + // + //#define AL_EQUALIZER_MIN_LOW_CUTOFF (50.0f) + //#define AL_EQUALIZER_MAX_LOW_CUTOFF (800.0f) + //#define AL_EQUALIZER_DEFAULT_LOW_CUTOFF (200.0f) + // + //#define AL_EQUALIZER_MIN_MID1_GAIN (0.126f) + //#define AL_EQUALIZER_MAX_MID1_GAIN (7.943f) + //#define AL_EQUALIZER_DEFAULT_MID1_GAIN (1.0f) + // + //#define AL_EQUALIZER_MIN_MID1_CENTER (200.0f) + //#define AL_EQUALIZER_MAX_MID1_CENTER (3000.0f) + //#define AL_EQUALIZER_DEFAULT_MID1_CENTER (500.0f) + // + //#define AL_EQUALIZER_MIN_MID1_WIDTH (0.01f) + //#define AL_EQUALIZER_MAX_MID1_WIDTH (1.0f) + //#define AL_EQUALIZER_DEFAULT_MID1_WIDTH (1.0f) + // + //#define AL_EQUALIZER_MIN_MID2_GAIN (0.126f) + //#define AL_EQUALIZER_MAX_MID2_GAIN (7.943f) + //#define AL_EQUALIZER_DEFAULT_MID2_GAIN (1.0f) + // + //#define AL_EQUALIZER_MIN_MID2_CENTER (1000.0f) + //#define AL_EQUALIZER_MAX_MID2_CENTER (8000.0f) + //#define AL_EQUALIZER_DEFAULT_MID2_CENTER (3000.0f) + // + //#define AL_EQUALIZER_MIN_MID2_WIDTH (0.01f) + //#define AL_EQUALIZER_MAX_MID2_WIDTH (1.0f) + //#define AL_EQUALIZER_DEFAULT_MID2_WIDTH (1.0f) + // + //#define AL_EQUALIZER_MIN_HIGH_GAIN (0.126f) + //#define AL_EQUALIZER_MAX_HIGH_GAIN (7.943f) + //#define AL_EQUALIZER_DEFAULT_HIGH_GAIN (1.0f) + // + //#define AL_EQUALIZER_MIN_HIGH_CUTOFF (4000.0f) + //#define AL_EQUALIZER_MAX_HIGH_CUTOFF (16000.0f) + //#define AL_EQUALIZER_DEFAULT_HIGH_CUTOFF (6000.0f) + // + // + ///* Source parameter value ranges and defaults. */ + //#define AL_MIN_AIR_ABSORPTION_FACTOR (0.0f) + //#define AL_MAX_AIR_ABSORPTION_FACTOR (10.0f) + //#define AL_DEFAULT_AIR_ABSORPTION_FACTOR (0.0f) + // + //#define AL_MIN_ROOM_ROLLOFF_FACTOR (0.0f) + //#define AL_MAX_ROOM_ROLLOFF_FACTOR (10.0f) + //#define AL_DEFAULT_ROOM_ROLLOFF_FACTOR (0.0f) + // + //#define AL_MIN_CONE_OUTER_GAINHF (0.0f) + //#define AL_MAX_CONE_OUTER_GAINHF (1.0f) + //#define AL_DEFAULT_CONE_OUTER_GAINHF (1.0f) + // + //#define AL_MIN_DIRECT_FILTER_GAINHF_AUTO AL_FALSE + //#define AL_MAX_DIRECT_FILTER_GAINHF_AUTO AL_TRUE + //#define AL_DEFAULT_DIRECT_FILTER_GAINHF_AUTO AL_TRUE + // + //#define AL_MIN_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_FALSE + //#define AL_MAX_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE + //#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAIN_AUTO AL_TRUE + // + //#define AL_MIN_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_FALSE + //#define AL_MAX_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE + //#define AL_DEFAULT_AUXILIARY_SEND_FILTER_GAINHF_AUTO AL_TRUE + + /** + * Requests a number of effect slots. + * + * @param numSlots the slots count. + * @param buffers the buffer that will receive the effect slots. + */ public void alGenAuxiliaryEffectSlots(int numSlots, IntBuffer buffers); + + /** + * Requests a number of effects. + * + * @param numEffects the effects count. + * @param buffers the buffer that will receive the effects. + */ public void alGenEffects(int numEffects, IntBuffer buffers); + + /** + * Sets the integer value of an effect parameter. + * + * @param effect the effect to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alEffecti(int effect, int param, int value); + + /** + * Sets the integer value of an effect slot parameter. + * + * @param effectSlot the effect slot to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alAuxiliaryEffectSloti(int effectSlot, int param, int value); + + /** + * Deletes a number of effects. + * + * @param numEffects the effects count. + * @param buffers the effect to delete. + */ public void alDeleteEffects(int numEffects, IntBuffer buffers); + + /** + * Deletes a number of effect slots. + * + * @param numEffectSlots the effect slots count. + * @param buffers the effect slots to delete. + */ public void alDeleteAuxiliaryEffectSlots(int numEffectSlots, IntBuffer buffers); + + /** + * Requests a number of filters. + * + * @param numFilters the filters count. + * @param buffers the buffer that will receive the filters. + */ public void alGenFilters(int numFilters, IntBuffer buffers); + + /** + * Sets the integer value of a filter parameter. + * + * @param filter the filter to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alFilteri(int filter, int param, int value); + + /** + * Sets the float value of a filter parameter. + * + * @param filter the filter to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alFilterf(int filter, int param, float value); + + /** + * Deletes a number of filters. + * + * @param numFilters the filters count. + * @param buffers the filter to delete. + */ public void alDeleteFilters(int numFilters, IntBuffer buffers); + + /** + * Sets the float value of an effect parameter. + * + * @param effect the effect to modify. + * @param param the parameter to modify. + * @param value the parameter value. + */ public void alEffectf(int effect, int param, float value); - } diff --git a/jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java b/jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java index 6e1432f4a..c14ac9dbd 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/Cinematic.java @@ -1,720 +1,715 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.cinematic; - -import com.jme3.animation.LoopMode; -import com.jme3.app.Application; -import com.jme3.app.state.AppState; -import com.jme3.app.state.AppStateManager; -import com.jme3.cinematic.events.AbstractCinematicEvent; -import com.jme3.cinematic.events.CinematicEvent; -import com.jme3.export.*; -import com.jme3.renderer.Camera; -import com.jme3.renderer.RenderManager; -import com.jme3.scene.CameraNode; -import com.jme3.scene.Node; -import com.jme3.scene.control.CameraControl; -import com.jme3.scene.control.CameraControl.ControlDirection; -import java.io.IOException; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.logging.Level; -import java.util.logging.Logger; - -/** - * An appstate for composing and playing cut scenes in a game. The cinematic - * schedules CinematicEvents over a timeline. Once the Cinematic created it has - * to be attached to the stateManager. - * - * You can add various CinematicEvents to a Cinematic, see package - * com.jme3.cinematic.events - * - * Two main methods can be used to add an event : - * - * @see Cinematic#addCinematicEvent(float, - * com.jme3.cinematic.events.CinematicEvent) , that adds an event at the given - * time form the cinematic start. - * - * @see - * Cinematic#enqueueCinematicEvent(com.jme3.cinematic.events.CinematicEvent) - * that enqueue events one after the other according to their initialDuration - * - * a cinematic has convenient methods to handle the playback : - * @see Cinematic#play() - * @see Cinematic#pause() - * @see Cinematic#stop() - * - * A cinematic is itself a CinematicEvent, meaning you can embed several - * Cinematics Embed cinematics must not be added to the stateManager though. - * - * Cinematic has a way to handle several point of view by creating CameraNode - * over a cam and activating them on schedule. - * @see Cinematic#bindCamera(java.lang.String, com.jme3.renderer.Camera) - * @see Cinematic#activateCamera(float, java.lang.String) - * @see Cinematic#setActiveCamera(java.lang.String) - * - * @author Nehon - */ -public class Cinematic extends AbstractCinematicEvent implements AppState { - - private static final Logger logger = Logger.getLogger(Application.class.getName()); - private Node scene; - protected TimeLine timeLine = new TimeLine(); - private int lastFetchedKeyFrame = -1; - private List cinematicEvents = new ArrayList(); - private Map cameras = new HashMap(); - private CameraNode currentCam; - private boolean initialized = false; - private Map> eventsData; - private float nextEnqueue = 0; - - /** - * Used for serialization creates a cinematic, don't use this constructor - * directly - */ - public Cinematic() { - } - - /** - * creates a cinematic - * - * @param scene the scene in which the cinematic should take place - */ - public Cinematic(Node scene) { - this.scene = scene; - } - - /** - * creates a cinematic - * - * @param scene the scene in which the cinematic should take place - * @param initialDuration the duration of the cinematic (without considering - * the speed) - */ - public Cinematic(Node scene, float initialDuration) { - super(initialDuration); - this.scene = scene; - } - - /** - * creates a cinematic - * - * @param scene the scene in which the cinematic should take place - * @param loopMode tells if this cinematic should be looped or not - */ - public Cinematic(Node scene, LoopMode loopMode) { - super(loopMode); - this.scene = scene; - } - - /** - * creates a cinematic - * - * @param scene the scene in which the cinematic should take place - * @param initialDuration the duration of the cinematic (without considering - * the speed) - * @param loopMode tells if this cinematic should be looped or not - */ - public Cinematic(Node scene, float initialDuration, LoopMode loopMode) { - super(initialDuration, loopMode); - this.scene = scene; - } - - /** - * called internally - */ - @Override - public void onPlay() { - if (isInitialized()) { - if (playState == PlayState.Paused) { - for (int i = 0; i < cinematicEvents.size(); i++) { - CinematicEvent ce = cinematicEvents.get(i); - if (ce.getPlayState() == PlayState.Paused) { - ce.play(); - } - } - } - } - } - - /** - * called internally - */ - @Override - public void onStop() { - time = 0; - lastFetchedKeyFrame = -1; - for (int i = 0; i < cinematicEvents.size(); i++) { - CinematicEvent ce = cinematicEvents.get(i); - ce.setTime(0); - ce.forceStop(); - } - setEnableCurrentCam(false); - } - - /** - * called internally - */ - @Override - public void onPause() { - for (int i = 0; i < cinematicEvents.size(); i++) { - CinematicEvent ce = cinematicEvents.get(i); - if (ce.getPlayState() == PlayState.Playing) { - ce.pause(); - } - } - } - - /** - * used internally for serialization - * - * @param ex - * @throws IOException - */ - @Override - public void write(JmeExporter ex) throws IOException { - super.write(ex); - OutputCapsule oc = ex.getCapsule(this); - - oc.writeSavableArrayList((ArrayList) cinematicEvents, "cinematicEvents", null); - oc.writeStringSavableMap(cameras, "cameras", null); - oc.write(timeLine, "timeLine", null); - - } - - /** - * used internally for serialization - * - * @param im - * @throws IOException - */ - @Override - public void read(JmeImporter im) throws IOException { - super.read(im); - InputCapsule ic = im.getCapsule(this); - - cinematicEvents = ic.readSavableArrayList("cinematicEvents", null); - cameras = (Map) ic.readStringSavableMap("cameras", null); - timeLine = (TimeLine) ic.readSavable("timeLine", null); - } - - /** - * sets the speed of the cinematic. Note that it will set the speed of all - * events in the cinematic. 1 is normal speed. use 0.5f to make the - * cinematic twice slower, use 2 to make it twice faster - * - * @param speed the speed - */ - @Override - public void setSpeed(float speed) { - super.setSpeed(speed); - for (int i = 0; i < cinematicEvents.size(); i++) { - CinematicEvent ce = cinematicEvents.get(i); - ce.setSpeed(speed); - } - - - } - - /** - * used internally - * - * @param stateManager the state manager - * @param app the application - */ - public void initialize(AppStateManager stateManager, Application app) { - initEvent(app, this); - for (CinematicEvent cinematicEvent : cinematicEvents) { - cinematicEvent.initEvent(app, this); - } - - initialized = true; - } - - /** - * used internally - * - * @return - */ - public boolean isInitialized() { - return initialized; - } - - /** - * passing true has the same effect as play() you should use play(), - * pause(), stop() to handle the cinematic playing state. - * - * @param enabled true or false - */ - public void setEnabled(boolean enabled) { - if (enabled) { - play(); - } - } - - /** - * return true if the cinematic appstate is enabled (the cinematic is - * playing) - * - * @return true if enabled - */ - public boolean isEnabled() { - return playState == PlayState.Playing; - } - - /** - * called internally - * - * @param stateManager the state manager - */ - public void stateAttached(AppStateManager stateManager) { - } - - /** - * called internally - * - * @param stateManager the state manager - */ - public void stateDetached(AppStateManager stateManager) { - stop(); - } - - /** - * called internally don't call it directly. - * - * @param tpf - */ - public void update(float tpf) { - if (isInitialized()) { - internalUpdate(tpf); - } - } - - /** - * used internally, don't call this directly. - * - * @param tpf - */ - @Override - public void onUpdate(float tpf) { - int keyFrameIndex = timeLine.getKeyFrameIndexFromTime(time); - - //iterate to make sure every key frame is triggered - for (int i = lastFetchedKeyFrame + 1; i <= keyFrameIndex; i++) { - KeyFrame keyFrame = timeLine.get(i); - if (keyFrame != null) { - keyFrame.trigger(); - } - } - - - for (int i = 0; i < cinematicEvents.size(); i++) { - CinematicEvent ce = cinematicEvents.get(i); - ce.internalUpdate(tpf); - } - - - lastFetchedKeyFrame = keyFrameIndex; - } - - /** - * This is used internally but can be called to shuffle through the - * cinematic. - * - * @param time the time to shuffle to. - */ - @Override - public void setTime(float time) { - - //stopping all events - onStop(); - super.setTime(time); - - int keyFrameIndex = timeLine.getKeyFrameIndexFromTime(time); - //triggering all the event from start to "time" - //then computing timeOffset for each event - for (int i = 0; i <= keyFrameIndex; i++) { - KeyFrame keyFrame = timeLine.get(i); - if (keyFrame != null) { - for (CinematicEvent ce : keyFrame.getCinematicEvents()) { - float t = this.time - timeLine.getKeyFrameTime(keyFrame); - if (t >= 0 && (t <= ce.getInitialDuration() || ce.getLoopMode() != LoopMode.DontLoop)) { - ce.play(); - } - ce.setTime(t); - } - } - } - lastFetchedKeyFrame = keyFrameIndex; - if (playState != PlayState.Playing) { - pause(); - } - } - - /** - * Adds a cinematic event to this cinematic at the given timestamp. This - * operation returns a keyFrame - * - * @param timeStamp the time when the event will start after the beginning of - * the cinematic - * @param cinematicEvent the cinematic event - * @return the keyFrame for that event. - */ - public KeyFrame addCinematicEvent(float timeStamp, CinematicEvent cinematicEvent) { - KeyFrame keyFrame = timeLine.getKeyFrameAtTime(timeStamp); - if (keyFrame == null) { - keyFrame = new KeyFrame(); - timeLine.addKeyFrameAtTime(timeStamp, keyFrame); - } - keyFrame.cinematicEvents.add(cinematicEvent); - cinematicEvents.add(cinematicEvent); - if (isInitialized()) { - cinematicEvent.initEvent(null, this); - } - return keyFrame; - } - - /** - * enqueue a cinematic event to a cinematic. This is a handy method when you - * want to chain event of a given duration without knowing their initial - * duration - * - * @param cinematicEvent the cinematic event to enqueue - * @return the timestamp the event was scheduled. - */ - public float enqueueCinematicEvent(CinematicEvent cinematicEvent) { - float scheduleTime = nextEnqueue; - addCinematicEvent(scheduleTime, cinematicEvent); - nextEnqueue += cinematicEvent.getInitialDuration(); - return scheduleTime; - } - - /** - * removes the first occurrence found of the given cinematicEvent. - * - * @param cinematicEvent the cinematicEvent to remove - * @return true if the element has been removed - */ - public boolean removeCinematicEvent(CinematicEvent cinematicEvent) { - cinematicEvent.dispose(); - cinematicEvents.remove(cinematicEvent); - for (KeyFrame keyFrame : timeLine.values()) { - if (keyFrame.cinematicEvents.remove(cinematicEvent)) { - return true; - } - } - return false; - } - - /** - * removes the first occurrence found of the given cinematicEvent for the - * given time stamp. - * - * @param timeStamp the timestamp when the cinematicEvent has been added - * @param cinematicEvent the cinematicEvent to remove - * @return true if the element has been removed - */ - public boolean removeCinematicEvent(float timeStamp, CinematicEvent cinematicEvent) { - cinematicEvent.dispose(); - KeyFrame keyFrame = timeLine.getKeyFrameAtTime(timeStamp); - return removeCinematicEvent(keyFrame, cinematicEvent); - } - - /** - * removes the first occurrence found of the given cinematicEvent for the - * given keyFrame - * - * @param keyFrame the keyFrame returned by the addCinematicEvent method. - * @param cinematicEvent the cinematicEvent to remove - * @return true if the element has been removed - */ - public boolean removeCinematicEvent(KeyFrame keyFrame, CinematicEvent cinematicEvent) { - cinematicEvent.dispose(); - boolean ret = keyFrame.cinematicEvents.remove(cinematicEvent); - cinematicEvents.remove(cinematicEvent); - if (keyFrame.isEmpty()) { - timeLine.removeKeyFrame(keyFrame.getIndex()); - } - return ret; - } - - /** - * called internally - * - * @see AppState#render(com.jme3.renderer.RenderManager) - */ - public void render(RenderManager rm) { - } - - /** - * called internally - * - * @see AppState#postRender() - */ - public void postRender() { - } - - /** - * called internally - * - * @see AppState#cleanup() - */ - public void cleanup() { - } - - /** - * fits the duration of the cinematic to the duration of all its child - * cinematic events - */ - public void fitDuration() { - KeyFrame kf = timeLine.getKeyFrameAtIndex(timeLine.getLastKeyFrameIndex()); - float d = 0; - for (int i = 0; i < kf.getCinematicEvents().size(); i++) { - CinematicEvent ce = kf.getCinematicEvents().get(i); - float dur = timeLine.getKeyFrameTime(kf) + ce.getDuration() * ce.getSpeed(); - if (d < dur) { - d = dur; - } - } - - initialDuration = d; - } - - /** - * Binds a camera to this cinematic, tagged by a unique name. This methods - * creates and returns a CameraNode for the cam and attach it to the scene. - * The control direction is set to SpatialToCamera. This camera Node can - * then be used in other events to handle the camera movements during the - * playback - * - * @param cameraName the unique tag the camera should have - * @param cam the scene camera. - * @return the created CameraNode. - */ - public CameraNode bindCamera(String cameraName, Camera cam) { - if (cameras.containsKey(cameraName)) { - throw new IllegalArgumentException("Camera " + cameraName + " is already binded to this cinematic"); - } - CameraNode node = new CameraNode(cameraName, cam); - node.setControlDir(ControlDirection.SpatialToCamera); - node.getControl(CameraControl.class).setEnabled(false); - cameras.put(cameraName, node); - scene.attachChild(node); - return node; - } - - /** - * returns a cameraNode given its name - * - * @param cameraName the camera name (as registered in - * Cinematic#bindCamera()) - * @return the cameraNode for this name - */ - public CameraNode getCamera(String cameraName) { - return cameras.get(cameraName); - } - - /** - * enable/disable the camera control of the cameraNode of the current cam - * - * @param enabled - */ - private void setEnableCurrentCam(boolean enabled) { - if (currentCam != null) { - currentCam.getControl(CameraControl.class).setEnabled(enabled); - } - } - - /** - * Sets the active camera instantly (use activateCamera if you want to - * schedule that event) - * - * @param cameraName the camera name (as registered in - * Cinematic#bindCamera()) - */ - public void setActiveCamera(String cameraName) { - setEnableCurrentCam(false); - currentCam = cameras.get(cameraName); - if (currentCam == null) { - logger.log(Level.WARNING, "{0} is not a camera bond to the cinematic, cannot activate", cameraName); - } - setEnableCurrentCam(true); - } - - /** - * schedule an event that will activate the camera at the given time - * - * @param timeStamp the time to activate the cam - * @param cameraName the camera name (as registered in - * Cinematic#bindCamera()) - */ - public void activateCamera(final float timeStamp, final String cameraName) { - addCinematicEvent(timeStamp, new AbstractCinematicEvent() { - @Override - public void play() { - super.play(); - stop(); - } - - @Override - public void onPlay() { - setActiveCamera(cameraName); - } - - @Override - public void onUpdate(float tpf) { - } - - @Override - public void onStop() { - } - - @Override - public void onPause() { - } - - @Override - public void forceStop() { - } - - @Override - public void setTime(float time) { - play(); - } - }); - } - - /** - * returns the complete eventdata map - * - * @return the eventdata map - */ - private Map> getEventsData() { - if (eventsData == null) { - eventsData = new HashMap>(); - } - return eventsData; - } - - /** - * used internally put an eventdata in the cinematic - * - * @param type the type of data - * @param key the key - * @param object the data - */ - public void putEventData(String type, Object key, Object object) { - Map> data = getEventsData(); - Map row = data.get(type); - if (row == null) { - row = new HashMap(); - } - row.put(key, object); - data.put(type, row); - } - - /** - * used internally return and event data - * - * @param type the type of data - * @param key the key - * @return - */ - public Object getEventData(String type, Object key) { - if (eventsData != null) { - Map row = eventsData.get(type); - if (row != null) { - return row.get(key); - } - } - return null; - } - - /** - * Used internally remove an eventData - * - * @param type the type of data - * @param key the key of the data - */ - public void removeEventData(String type, Object key) { - if (eventsData != null) { - Map row = eventsData.get(type); - if (row != null) { - row.remove(key); - } - } - } - - /** - * sets the scene to use for this cinematic it is expected that the scene is - * added before adding events to the cinematic - * - * @param scene the scene where the cinematic should take place. - */ - public void setScene(Node scene) { - this.scene = scene; - } - - /** - * return the scene where the cinematic occur - * - * @return the scene - */ - public Node getScene() { - return scene; - } - - /** - * clear the cinematic of its events. - */ - public void clear() { - dispose(); - cinematicEvents.clear(); - timeLine.clear(); - if (eventsData != null) { - eventsData.clear(); - } - } - - /** - * used internally to cleanup the cinematic. Called when the clear() method - * is called - */ - @Override - public void dispose() { - for (CinematicEvent event : cinematicEvents) { - event.dispose(); - } - } -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.cinematic; + +import com.jme3.animation.LoopMode; +import com.jme3.app.Application; +import com.jme3.app.state.AppState; +import com.jme3.app.state.AppStateManager; +import com.jme3.cinematic.events.AbstractCinematicEvent; +import com.jme3.cinematic.events.CameraEvent; +import com.jme3.cinematic.events.CinematicEvent; +import com.jme3.export.*; +import com.jme3.renderer.Camera; +import com.jme3.renderer.RenderManager; +import com.jme3.renderer.ViewPort; +import com.jme3.scene.CameraNode; +import com.jme3.scene.Node; +import com.jme3.scene.Spatial; +import com.jme3.scene.control.CameraControl; +import com.jme3.scene.control.CameraControl.ControlDirection; +import com.jme3.scene.control.Control; +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.logging.Level; +import java.util.logging.Logger; + +/** + * An appstate for composing and playing cut scenes in a game. The cinematic + * schedules CinematicEvents over a timeline. Once the Cinematic created it has + * to be attached to the stateManager. + * + * You can add various CinematicEvents to a Cinematic, see package + * com.jme3.cinematic.events + * + * Two main methods can be used to add an event : + * + * @see Cinematic#addCinematicEvent(float, + * com.jme3.cinematic.events.CinematicEvent) , that adds an event at the given + * time form the cinematic start. + * + * @see + * Cinematic#enqueueCinematicEvent(com.jme3.cinematic.events.CinematicEvent) + * that enqueue events one after the other according to their initialDuration + * + * a cinematic has convenient methods to handle the playback : + * @see Cinematic#play() + * @see Cinematic#pause() + * @see Cinematic#stop() + * + * A cinematic is itself a CinematicEvent, meaning you can embed several + * Cinematics Embed cinematics must not be added to the stateManager though. + * + * Cinematic has a way to handle several point of view by creating CameraNode + * over a cam and activating them on schedule. + * @see Cinematic#bindCamera(java.lang.String, com.jme3.renderer.Camera) + * @see Cinematic#activateCamera(float, java.lang.String) + * @see Cinematic#setActiveCamera(java.lang.String) + * + * @author Nehon + */ +public class Cinematic extends AbstractCinematicEvent implements AppState { + + private static final Logger logger = Logger.getLogger(Cinematic.class.getName()); + private Node scene; + protected TimeLine timeLine = new TimeLine(); + private int lastFetchedKeyFrame = -1; + private List cinematicEvents = new ArrayList<>(); + private Map cameras = new HashMap<>(); + private CameraNode currentCam; + private boolean initialized = false; + private Map> eventsData; + private float nextEnqueue = 0; + + /** + * Used for serialization creates a cinematic, don't use this constructor + * directly + */ + public Cinematic() { + super(); + } + + public Cinematic(float initialDuration) { + super(initialDuration); + } + + public Cinematic(LoopMode loopMode) { + super(loopMode); + } + + public Cinematic(float initialDuration, LoopMode loopMode) { + super(initialDuration, loopMode); + } + + /** + * creates a cinematic + * + * @param scene the scene in which the cinematic should take place + */ + public Cinematic(Node scene) { + this.scene = scene; + } + + /** + * creates a cinematic + * + * @param scene the scene in which the cinematic should take place + * @param initialDuration the duration of the cinematic (without considering + * the speed) + */ + public Cinematic(Node scene, float initialDuration) { + super(initialDuration); + this.scene = scene; + } + + /** + * creates a cinematic + * + * @param scene the scene in which the cinematic should take place + * @param loopMode tells if this cinematic should be looped or not + */ + public Cinematic(Node scene, LoopMode loopMode) { + super(loopMode); + this.scene = scene; + } + + /** + * creates a cinematic + * + * @param scene the scene in which the cinematic should take place + * @param initialDuration the duration of the cinematic (without considering + * the speed) + * @param loopMode tells if this cinematic should be looped or not + */ + public Cinematic(Node scene, float initialDuration, LoopMode loopMode) { + super(initialDuration, loopMode); + this.scene = scene; + } + + /** + * called internally + */ + @Override + public void onPlay() { + if (isInitialized()) { + if (playState == PlayState.Paused) { + for (int i = 0; i < cinematicEvents.size(); i++) { + CinematicEvent ce = cinematicEvents.get(i); + if (ce.getPlayState() == PlayState.Paused) { + ce.play(); + } + } + } + } + } + + /** + * called internally + */ + @Override + public void onStop() { + time = 0; + lastFetchedKeyFrame = -1; + for (int i = 0; i < cinematicEvents.size(); i++) { + CinematicEvent ce = cinematicEvents.get(i); + ce.setTime(0); + ce.forceStop(); + } + setEnableCurrentCam(false); + } + + /** + * called internally + */ + @Override + public void onPause() { + for (int i = 0; i < cinematicEvents.size(); i++) { + CinematicEvent ce = cinematicEvents.get(i); + if (ce.getPlayState() == PlayState.Playing) { + ce.pause(); + } + } + } + + /** + * used internally for serialization + * + * @param ex + * @throws IOException + */ + @Override + public void write(JmeExporter ex) throws IOException { + super.write(ex); + OutputCapsule oc = ex.getCapsule(this); + oc.write(cinematicEvents.toArray(new CinematicEvent[cinematicEvents.size()]), "cinematicEvents", null); + oc.writeStringSavableMap(cameras, "cameras", null); + oc.write(timeLine, "timeLine", null); + + } + + /** + * used internally for serialization + * + * @param im + * @throws IOException + */ + @Override + public void read(JmeImporter im) throws IOException { + super.read(im); + InputCapsule ic = im.getCapsule(this); + + Savable[] events = ic.readSavableArray("cinematicEvents", null); + for (Savable c : events) { +// addCinematicEvent(((CinematicEvent) c).getTime(), (CinematicEvent) c) + cinematicEvents.add((CinematicEvent) c); + } + cameras = (Map) ic.readStringSavableMap("cameras", null); + timeLine = (TimeLine) ic.readSavable("timeLine", null); + } + + /** + * sets the speed of the cinematic. Note that it will set the speed of all + * events in the cinematic. 1 is normal speed. use 0.5f to make the + * cinematic twice slower, use 2 to make it twice faster + * + * @param speed the speed + */ + @Override + public void setSpeed(float speed) { + super.setSpeed(speed); + for (int i = 0; i < cinematicEvents.size(); i++) { + CinematicEvent ce = cinematicEvents.get(i); + ce.setSpeed(speed); + } + + } + + /** + * used internally + * + * @param stateManager the state manager + * @param app the application + */ + public void initialize(AppStateManager stateManager, Application app) { + initEvent(app, this); + for (CinematicEvent cinematicEvent : cinematicEvents) { + cinematicEvent.initEvent(app, this); + } + if(!cameras.isEmpty()){ + for(CameraNode n : cameras.values()){ + n.setCamera(app.getCamera()); + } + } + initialized = true; + } + + /** + * used internally + * + * @return + */ + public boolean isInitialized() { + return initialized; + } + + /** + * passing true has the same effect as play() you should use play(), + * pause(), stop() to handle the cinematic playing state. + * + * @param enabled true or false + */ + public void setEnabled(boolean enabled) { + if (enabled) { + play(); + } + } + + /** + * return true if the cinematic appstate is enabled (the cinematic is + * playing) + * + * @return true if enabled + */ + public boolean isEnabled() { + return playState == PlayState.Playing; + } + + /** + * called internally + * + * @param stateManager the state manager + */ + public void stateAttached(AppStateManager stateManager) { + } + + /** + * called internally + * + * @param stateManager the state manager + */ + public void stateDetached(AppStateManager stateManager) { + stop(); + } + + /** + * called internally don't call it directly. + * + * @param tpf + */ + @Override + public void update(float tpf) { + if (isInitialized() && playState == PlayState.Playing) { + internalUpdate(tpf); + } + } + + /** + * used internally, don't call this directly. + * + * @param tpf + */ + @Override + public void onUpdate(float tpf) { + int keyFrameIndex = timeLine.getKeyFrameIndexFromTime(time); + + //iterate to make sure every key frame is triggered + for (int i = lastFetchedKeyFrame + 1; i <= keyFrameIndex; i++) { + KeyFrame keyFrame = timeLine.get(i); + if (keyFrame != null) { + keyFrame.trigger(); + } + } + + for (int i = 0; i < cinematicEvents.size(); i++) { + CinematicEvent ce = cinematicEvents.get(i); + ce.internalUpdate(tpf); + } + + lastFetchedKeyFrame = keyFrameIndex; + } + + /** + * This is used internally but can be called to shuffle through the + * cinematic. + * + * @param time the time to shuffle to. + */ + @Override + public void setTime(float time) { + + //stopping all events + onStop(); + super.setTime(time); + + int keyFrameIndex = timeLine.getKeyFrameIndexFromTime(time); + //triggering all the event from start to "time" + //then computing timeOffset for each event + for (int i = 0; i <= keyFrameIndex; i++) { + KeyFrame keyFrame = timeLine.get(i); + if (keyFrame != null) { + for (CinematicEvent ce : keyFrame.getCinematicEvents()) { + float t = this.time - timeLine.getKeyFrameTime(keyFrame); + if (t >= 0 && (t <= ce.getInitialDuration() || ce.getLoopMode() != LoopMode.DontLoop)) { + ce.play(); + } + ce.setTime(t); + } + } + } + lastFetchedKeyFrame = keyFrameIndex; + if (playState != PlayState.Playing) { + pause(); + } + } + + /** + * Adds a cinematic event to this cinematic at the given timestamp. This + * operation returns a keyFrame + * + * @param timeStamp the time when the event will start after the beginning + * of the cinematic + * @param cinematicEvent the cinematic event + * @return the keyFrame for that event. + */ + public KeyFrame addCinematicEvent(float timeStamp, CinematicEvent cinematicEvent) { + KeyFrame keyFrame = timeLine.getKeyFrameAtTime(timeStamp); + if (keyFrame == null) { + keyFrame = new KeyFrame(); + timeLine.addKeyFrameAtTime(timeStamp, keyFrame); + } + keyFrame.cinematicEvents.add(cinematicEvent); + cinematicEvents.add(cinematicEvent); + if (isInitialized()) { + cinematicEvent.initEvent(null, this); + } + return keyFrame; + } + + /** + * enqueue a cinematic event to a cinematic. This is a handy method when you + * want to chain event of a given duration without knowing their initial + * duration + * + * @param cinematicEvent the cinematic event to enqueue + * @return the timestamp the event was scheduled. + */ + public float enqueueCinematicEvent(CinematicEvent cinematicEvent) { + float scheduleTime = nextEnqueue; + addCinematicEvent(scheduleTime, cinematicEvent); + nextEnqueue += cinematicEvent.getInitialDuration(); + return scheduleTime; + } + + /** + * removes the first occurrence found of the given cinematicEvent. + * + * @param cinematicEvent the cinematicEvent to remove + * @return true if the element has been removed + */ + public boolean removeCinematicEvent(CinematicEvent cinematicEvent) { + cinematicEvent.dispose(); + cinematicEvents.remove(cinematicEvent); + for (KeyFrame keyFrame : timeLine.values()) { + if (keyFrame.cinematicEvents.remove(cinematicEvent)) { + return true; + } + } + return false; + } + + /** + * removes the first occurrence found of the given cinematicEvent for the + * given time stamp. + * + * @param timeStamp the timestamp when the cinematicEvent has been added + * @param cinematicEvent the cinematicEvent to remove + * @return true if the element has been removed + */ + public boolean removeCinematicEvent(float timeStamp, CinematicEvent cinematicEvent) { + cinematicEvent.dispose(); + KeyFrame keyFrame = timeLine.getKeyFrameAtTime(timeStamp); + return removeCinematicEvent(keyFrame, cinematicEvent); + } + + /** + * removes the first occurrence found of the given cinematicEvent for the + * given keyFrame + * + * @param keyFrame the keyFrame returned by the addCinematicEvent method. + * @param cinematicEvent the cinematicEvent to remove + * @return true if the element has been removed + */ + public boolean removeCinematicEvent(KeyFrame keyFrame, CinematicEvent cinematicEvent) { + cinematicEvent.dispose(); + boolean ret = keyFrame.cinematicEvents.remove(cinematicEvent); + cinematicEvents.remove(cinematicEvent); + if (keyFrame.isEmpty()) { + timeLine.removeKeyFrame(keyFrame.getIndex()); + } + return ret; + } + + /** + * called internally + * + * @see AppState#render(com.jme3.renderer.RenderManager) + */ + public void render(RenderManager rm) { + } + + /** + * called internally + * + * @see AppState#postRender() + */ + public void postRender() { + } + + /** + * called internally + * + * @see AppState#cleanup() + */ + public void cleanup() { + } + + /** + * fits the duration of the cinematic to the duration of all its child + * cinematic events + */ + public void fitDuration() { + KeyFrame kf = timeLine.getKeyFrameAtIndex(timeLine.getLastKeyFrameIndex()); + float d = 0; + for (int i = 0; i < kf.getCinematicEvents().size(); i++) { + CinematicEvent ce = kf.getCinematicEvents().get(i); + float dur = timeLine.getKeyFrameTime(kf) + ce.getDuration() * ce.getSpeed(); + if (d < dur) { + d = dur; + } + } + + initialDuration = d; + } + + /** + * Binds a camera to this cinematic, tagged by a unique name. This methods + * creates and returns a CameraNode for the cam and attach it to the scene. + * The control direction is set to SpatialToCamera. This camera Node can + * then be used in other events to handle the camera movements during the + * playback + * + * @param cameraName the unique tag the camera should have + * @param cam the scene camera. + * @return the created CameraNode. + */ + public CameraNode bindCamera(String cameraName, Camera cam) { + if (cameras.containsKey(cameraName)) { + throw new IllegalArgumentException("Camera " + cameraName + " is already binded to this cinematic"); + } + CameraNode node = new CameraNode(cameraName, cam); + node.setControlDir(ControlDirection.SpatialToCamera); + node.getControl(CameraControl.class).setEnabled(false); + cameras.put(cameraName, node); + scene.attachChild(node); + return node; + } + + /** + * returns a cameraNode given its name + * + * @param cameraName the camera name (as registered in + * Cinematic#bindCamera()) + * @return the cameraNode for this name + */ + public CameraNode getCamera(String cameraName) { + return cameras.get(cameraName); + } + + /** + * enable/disable the camera control of the cameraNode of the current cam + * + * @param enabled + */ + private void setEnableCurrentCam(boolean enabled) { + if (currentCam != null) { + currentCam.getControl(CameraControl.class).setEnabled(enabled); + } + } + + /** + * Sets the active camera instantly (use activateCamera if you want to + * schedule that event) + * + * @param cameraName the camera name (as registered in + * Cinematic#bindCamera()) + */ + public void setActiveCamera(String cameraName) { + setEnableCurrentCam(false); + currentCam = cameras.get(cameraName); + if (currentCam == null) { + logger.log(Level.WARNING, "{0} is not a camera bond to the cinematic, cannot activate", cameraName); + } + setEnableCurrentCam(true); + } + + /** + * schedule an event that will activate the camera at the given time + * + * @param timeStamp the time to activate the cam + * @param cameraName the camera name (as registered in + * Cinematic#bindCamera()) + */ + public void activateCamera(final float timeStamp, final String cameraName) { + addCinematicEvent(timeStamp, new CameraEvent(this, cameraName)); + } + + /** + * returns the complete eventdata map + * + * @return the eventdata map + */ + private Map> getEventsData() { + if (eventsData == null) { + eventsData = new HashMap>(); + } + return eventsData; + } + + /** + * used internally put an eventdata in the cinematic + * + * @param type the type of data + * @param key the key + * @param object the data + */ + public void putEventData(String type, Object key, Object object) { + Map> data = getEventsData(); + Map row = data.get(type); + if (row == null) { + row = new HashMap(); + } + row.put(key, object); + data.put(type, row); + } + + /** + * used internally return and event data + * + * @param type the type of data + * @param key the key + * @return + */ + public Object getEventData(String type, Object key) { + if (eventsData != null) { + Map row = eventsData.get(type); + if (row != null) { + return row.get(key); + } + } + return null; + } + + /** + * Used internally remove an eventData + * + * @param type the type of data + * @param key the key of the data + */ + public void removeEventData(String type, Object key) { + if (eventsData != null) { + Map row = eventsData.get(type); + if (row != null) { + row.remove(key); + } + } + } + + /** + * sets the scene to use for this cinematic it is expected that the scene is + * added before adding events to the cinematic + * + * @param scene the scene where the cinematic should take place. + */ + public void setScene(Node scene) { + this.scene = scene; + if(!cameras.isEmpty()){ + for(CameraNode n : cameras.values()){ + this.scene.attachChild(n); + } + } + } + + /** + * return the scene where the cinematic occur + * + * @return the scene + */ + public Node getScene() { + return scene; + } + + /** + * clear the cinematic of its events. + */ + public void clear() { + dispose(); + cinematicEvents.clear(); + timeLine.clear(); + if (eventsData != null) { + eventsData.clear(); + } + } + + /** + * used internally to cleanup the cinematic. Called when the clear() method + * is called + */ + @Override + public void dispose() { + for (CinematicEvent event : cinematicEvents) { + event.dispose(); + } + } +} diff --git a/jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java b/jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java index a794e3cd0..458a482a9 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/KeyFrame.java @@ -1,89 +1,93 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.cinematic; - -import com.jme3.cinematic.events.CinematicEvent; -import com.jme3.export.*; -import java.io.IOException; -import java.util.ArrayList; -import java.util.List; - -/** - * - * @author Nehon - */ -public class KeyFrame implements Savable { - - List cinematicEvents = new ArrayList(); - private int index; - - public List getCinematicEvents() { - return cinematicEvents; - } - - public void setCinematicEvents(List cinematicEvents) { - this.cinematicEvents = cinematicEvents; - } - - public List trigger() { - for (CinematicEvent event : cinematicEvents) { - event.play(); - } - return cinematicEvents; - } - - public boolean isEmpty(){ - return cinematicEvents.isEmpty(); - } - - public void write(JmeExporter ex) throws IOException { - OutputCapsule oc = ex.getCapsule(this); - oc.writeSavableArrayList((ArrayList) cinematicEvents, "cinematicEvents", null); - oc.write(index, "index", 0); - } - - public void read(JmeImporter im) throws IOException { - InputCapsule ic = im.getCapsule(this); - cinematicEvents = ic.readSavableArrayList("cinematicEvents", null); - index=ic.readInt("index", 0); - } - - public int getIndex() { - return index; - } - - public void setIndex(int index) { - this.index = index; - } - - -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.cinematic; + +import com.jme3.cinematic.events.CinematicEvent; +import com.jme3.export.*; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +/** + * + * @author Nehon + */ +public class KeyFrame implements Savable { + + public KeyFrame(){ + + } + + List cinematicEvents = new ArrayList<>(); + private int index; + + public List getCinematicEvents() { + return cinematicEvents; + } + + public void setCinematicEvents(List cinematicEvents) { + this.cinematicEvents = cinematicEvents; + } + + public List trigger() { + for (CinematicEvent event : cinematicEvents) { + event.play(); + } + return cinematicEvents; + } + + public boolean isEmpty(){ + return cinematicEvents.isEmpty(); + } + + public void write(JmeExporter ex) throws IOException { + OutputCapsule oc = ex.getCapsule(this); + oc.writeSavableArrayList((ArrayList) cinematicEvents, "cinematicEvents", null); + oc.write(index, "index", 0); + } + + public void read(JmeImporter im) throws IOException { + InputCapsule ic = im.getCapsule(this); + cinematicEvents = ic.readSavableArrayList("cinematicEvents", null); + index=ic.readInt("index", 0); + } + + public int getIndex() { + return index; + } + + public void setIndex(int index) { + this.index = index; + } + + +} diff --git a/jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java b/jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java index 881b07684..4e3a0df89 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/MotionPath.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -202,7 +202,7 @@ public class MotionPath implements Savable { } /** - * Addsa waypoint to the path + * Add a waypoint to the path * @param wayPoint a position in world space */ public void addWayPoint(Vector3f wayPoint) { @@ -210,7 +210,7 @@ public class MotionPath implements Savable { } /** - * retruns the length of the path in world units + * Return the length of the path in world units * @return the length */ public float getLength() { diff --git a/jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java b/jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java index f441aae5e..abda537e7 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/MotionPathListener.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,7 +34,7 @@ package com.jme3.cinematic; import com.jme3.cinematic.events.MotionEvent; /** - * Trigger the events happening on an motion path + * Trigger the events happening on a motion path * @author Nehon */ public interface MotionPathListener { diff --git a/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java index c77da581d..6dfc2a260 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/events/AnimationEvent.java @@ -41,7 +41,10 @@ import com.jme3.export.InputCapsule; import com.jme3.export.JmeExporter; import com.jme3.export.JmeImporter; import com.jme3.export.OutputCapsule; +import com.jme3.scene.Node; import com.jme3.scene.Spatial; +import com.jme3.util.clone.Cloner; +import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.Collection; import java.util.HashMap; @@ -80,8 +83,9 @@ public class AnimationEvent extends AbstractCinematicEvent { * constructors */ public AnimationEvent() { + super(); } - + /** * creates an animation event * @@ -90,6 +94,7 @@ public class AnimationEvent extends AbstractCinematicEvent { */ public AnimationEvent(Spatial model, String animationName) { this.model = model; + this.modelName = model.getName(); this.animationName = animationName; initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); } @@ -104,6 +109,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration) { super(initialDuration); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; } @@ -119,6 +125,7 @@ public class AnimationEvent extends AbstractCinematicEvent { super(loopMode); initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; } @@ -134,6 +141,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration, LoopMode loopMode) { super(initialDuration, loopMode); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; } @@ -149,6 +157,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration, float blendTime) { super(initialDuration); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.blendTime = blendTime; } @@ -167,6 +176,7 @@ public class AnimationEvent extends AbstractCinematicEvent { super(loopMode); initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.blendTime = blendTime; } @@ -185,6 +195,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration, LoopMode loopMode, float blendTime) { super(initialDuration, loopMode); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.blendTime = blendTime; } @@ -203,6 +214,7 @@ public class AnimationEvent extends AbstractCinematicEvent { super(loopMode); initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.channelIndex = channelIndex; } @@ -217,6 +229,7 @@ public class AnimationEvent extends AbstractCinematicEvent { */ public AnimationEvent(Spatial model, String animationName, int channelIndex) { this.model = model; + this.modelName = model.getName(); this.animationName = animationName; initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); this.channelIndex = channelIndex; @@ -233,6 +246,7 @@ public class AnimationEvent extends AbstractCinematicEvent { */ public AnimationEvent(Spatial model, String animationName, LoopMode loopMode, int channelIndex, float blendTime) { this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.loopMode = loopMode; initialDuration = model.getControl(AnimControl.class).getAnimationLength(animationName); @@ -252,6 +266,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration, int channelIndex) { super(initialDuration); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.channelIndex = channelIndex; } @@ -270,6 +285,7 @@ public class AnimationEvent extends AbstractCinematicEvent { public AnimationEvent(Spatial model, String animationName, float initialDuration, LoopMode loopMode, int channelIndex) { super(initialDuration, loopMode); this.model = model; + this.modelName = model.getName(); this.animationName = animationName; this.channelIndex = channelIndex; } @@ -299,6 +315,18 @@ public class AnimationEvent extends AbstractCinematicEvent { model = cinematic.getScene().getChild(modelName); } if (model != null) { + if(cinematic.getScene() != null){ + Spatial sceneModel = cinematic.getScene().getChild(model.getName()); + if(sceneModel != null){ + Node parent = sceneModel.getParent(); + parent.detachChild(sceneModel); + sceneModel = model; + parent.attachChild(sceneModel); + } else { + cinematic.getScene().attachChild(model); + } + } + channel = model.getControl(AnimControl.class).createChannel(); map.put(channelIndex, channel); } else { @@ -401,6 +429,7 @@ public class AnimationEvent extends AbstractCinematicEvent { OutputCapsule oc = ex.getCapsule(this); oc.write(model, "model", null); + oc.write(modelName, "modelName", null); oc.write(animationName, "animationName", ""); oc.write(blendTime, "blendTime", 0f); oc.write(channelIndex, "channelIndex", 0); @@ -411,9 +440,9 @@ public class AnimationEvent extends AbstractCinematicEvent { public void read(JmeImporter im) throws IOException { super.read(im); InputCapsule ic = im.getCapsule(this); - if (im.getFormatVersion() == 0) { +// if (im.getFormatVersion() == 0) { modelName = ic.readString("modelName", ""); - } +// } //FIXME always the same issue, because of the clonning of assets, this won't work //we have to somehow store userdata in the spatial and then recurse the //scene sub scenegraph to find the correct instance of the model diff --git a/jme3-core/src/main/java/com/jme3/cinematic/events/CameraEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/CameraEvent.java new file mode 100644 index 000000000..80d677e3c --- /dev/null +++ b/jme3-core/src/main/java/com/jme3/cinematic/events/CameraEvent.java @@ -0,0 +1,146 @@ +/* + * Copyright (c) 2009-2017 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.cinematic.events; + +import com.jme3.app.Application; +import com.jme3.cinematic.Cinematic; +import com.jme3.cinematic.TimeLine; +import com.jme3.export.InputCapsule; +import com.jme3.export.JmeExporter; +import com.jme3.export.JmeImporter; +import com.jme3.export.OutputCapsule; +import com.jme3.export.Savable; +import com.jme3.scene.CameraNode; +import java.io.IOException; +import java.util.Map; + +/** + * + * @author Rickard + */ +public class CameraEvent extends AbstractCinematicEvent{ + + private String cameraName; + private Cinematic cinematic; + + public String getCameraName() { + return cameraName; + } + + public void setCameraName(String cameraName) { + this.cameraName = cameraName; + } + + public CameraEvent(){ + + } + + public CameraEvent(Cinematic parentEvent, String cameraName){ + this.cinematic = parentEvent; + this.cameraName = cameraName; + } + + @Override + public void initEvent(Application app, Cinematic cinematic) { + super.initEvent(app, cinematic); + this.cinematic = cinematic; + } + + @Override + public void play() { + super.play(); + stop(); + } + + @Override + public void onPlay() { + cinematic.setActiveCamera(cameraName); + } + + @Override + public void onUpdate(float tpf) { + } + + @Override + public void onStop() { + } + + @Override + public void onPause() { + } + + @Override + public void forceStop() { + } + + @Override + public void setTime(float time) { + play(); + } + + public Cinematic getCinematic() { + return cinematic; + } + + public void setCinematic(Cinematic cinematic) { + this.cinematic = cinematic; + } + + + + /** + * used internally for serialization + * + * @param ex + * @throws IOException + */ + @Override + public void write(JmeExporter ex) throws IOException { + super.write(ex); + OutputCapsule oc = ex.getCapsule(this); + oc.write(cameraName, "cameraName", null); + + } + + /** + * used internally for serialization + * + * @param im + * @throws IOException + */ + @Override + public void read(JmeImporter im) throws IOException { + super.read(im); + InputCapsule ic = im.getCapsule(this); + cameraName = ic.readString("cameraName", null); + } +} diff --git a/jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java index b94bd25d7..60cb5c09e 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/events/MotionEvent.java @@ -1,491 +1,478 @@ -/* - * Copyright (c) 2009-2016 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.cinematic.events; - -import com.jme3.animation.AnimationUtils; -import com.jme3.animation.LoopMode; -import com.jme3.app.Application; -import com.jme3.cinematic.Cinematic; -import com.jme3.cinematic.MotionPath; -import com.jme3.cinematic.PlayState; -import com.jme3.export.InputCapsule; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.export.OutputCapsule; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector3f; -import com.jme3.renderer.RenderManager; -import com.jme3.renderer.ViewPort; -import com.jme3.scene.Spatial; -import com.jme3.scene.control.Control; -import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; -import java.io.IOException; - -/** - * A MotionEvent is a control over the spatial that manages the position and direction of the spatial while following a motion Path. - * - * You must first create a MotionPath and then create a MotionEvent to associate a spatial and the path. - * - * @author Nehon - */ -public class MotionEvent extends AbstractCinematicEvent implements Control, JmeCloneable { - - protected Spatial spatial; - protected int currentWayPoint; - protected float currentValue; - protected Vector3f direction = new Vector3f(); - protected Vector3f lookAt = null; - protected Vector3f upVector = Vector3f.UNIT_Y; - protected Quaternion rotation = null; - protected Direction directionType = Direction.None; - protected MotionPath path; - private boolean isControl = true; - private int travelDirection = 1; - /** - * the distance traveled by the spatial on the path - */ - protected float traveledDistance = 0; - - /** - * Enum for the different type of target direction behavior. - */ - public enum Direction { - - /** - * The target stays in the starting direction. - */ - None, - /** - * The target rotates with the direction of the path. - */ - Path, - /** - * The target rotates with the direction of the path but with the addition of a rotation. - * You need to use the setRotation method when using this Direction. - */ - PathAndRotation, - /** - * The target rotates with the given rotation. - */ - Rotation, - /** - * The target looks at a point. - * You need to use the setLookAt method when using this direction. - */ - LookAt - } - - /** - * Create MotionEvent, - * when using this constructor don't forget to assign spatial and path. - */ - public MotionEvent() { - super(); - } - - /** - * Creates a MotionPath for the given spatial on the given motion path. - * @param spatial - * @param path - */ - public MotionEvent(Spatial spatial, MotionPath path) { - super(); - spatial.addControl(this); - this.path = path; - } - - /** - * Creates a MotionPath for the given spatial on the given motion path. - * @param spatial - * @param path - */ - public MotionEvent(Spatial spatial, MotionPath path, float initialDuration) { - super(initialDuration); - spatial.addControl(this); - this.path = path; - } - - /** - * Creates a MotionPath for the given spatial on the given motion path. - * @param spatial - * @param path - */ - public MotionEvent(Spatial spatial, MotionPath path, LoopMode loopMode) { - super(); - spatial.addControl(this); - this.path = path; - this.loopMode = loopMode; - } - - /** - * Creates a MotionPath for the given spatial on the given motion path. - * @param spatial - * @param path - */ - public MotionEvent(Spatial spatial, MotionPath path, float initialDuration, LoopMode loopMode) { - super(initialDuration); - spatial.addControl(this); - this.path = path; - this.loopMode = loopMode; - } - - public void update(float tpf) { - if (isControl) { - internalUpdate(tpf); - } - } - - @Override - public void internalUpdate(float tpf) { - if (playState == PlayState.Playing) { - time = time + (tpf * speed); - if (loopMode == LoopMode.Loop && time < 0) { - time = initialDuration; - } - if ((time >= initialDuration || time < 0) && loopMode == LoopMode.DontLoop) { - if (time >= initialDuration) { - path.triggerWayPointReach(path.getNbWayPoints() - 1, this); - } - stop(); - } else { - time = AnimationUtils.clampWrapTime(time, initialDuration, loopMode); - if(time<0){ - speed = - speed; - time = - time; - } - onUpdate(tpf); - } - } - } - - @Override - public void initEvent(Application app, Cinematic cinematic) { - super.initEvent(app, cinematic); - isControl = false; - } - - @Override - public void setTime(float time) { - super.setTime(time); - onUpdate(0); - } - - public void onUpdate(float tpf) { - traveledDistance = path.interpolatePath(time, this, tpf); - computeTargetDirection(); - } - - @Override - public void write(JmeExporter ex) throws IOException { - super.write(ex); - OutputCapsule oc = ex.getCapsule(this); - oc.write(lookAt, "lookAt", null); - oc.write(upVector, "upVector", Vector3f.UNIT_Y); - oc.write(rotation, "rotation", null); - oc.write(directionType, "directionType", Direction.None); - oc.write(path, "path", null); - oc.write(spatial, "spatial", null); - } - - @Override - public void read(JmeImporter im) throws IOException { - super.read(im); - InputCapsule in = im.getCapsule(this); - lookAt = (Vector3f) in.readSavable("lookAt", null); - upVector = (Vector3f) in.readSavable("upVector", Vector3f.UNIT_Y); - rotation = (Quaternion) in.readSavable("rotation", null); - directionType = in.readEnum("directionType", Direction.class, Direction.None); - path = (MotionPath) in.readSavable("path", null); - spatial = (Spatial) in.readSavable("spatial", null); - } - - /** - * This method is meant to be called by the motion path only. - * @return - */ - public boolean needsDirection() { - return directionType == Direction.Path || directionType == Direction.PathAndRotation; - } - - private void computeTargetDirection() { - switch (directionType) { - case Path: - Quaternion q = new Quaternion(); - q.lookAt(direction, upVector); - spatial.setLocalRotation(q); - break; - case LookAt: - if (lookAt != null) { - spatial.lookAt(lookAt, upVector); - } - break; - case PathAndRotation: - if (rotation != null) { - Quaternion q2 = new Quaternion(); - q2.lookAt(direction, upVector); - q2.multLocal(rotation); - spatial.setLocalRotation(q2); - } - break; - case Rotation: - if (rotation != null) { - spatial.setLocalRotation(rotation); - } - break; - case None: - break; - default: - break; - } - } - - /** - * Clone this control for the given spatial. - * @param spatial - * @return - */ - @Override - public Control cloneForSpatial(Spatial spatial) { - MotionEvent control = new MotionEvent(); - control.setPath(path); - control.playState = playState; - control.currentWayPoint = currentWayPoint; - control.currentValue = currentValue; - control.direction = direction.clone(); - control.lookAt = lookAt; - control.upVector = upVector.clone(); - control.rotation = rotation; - control.initialDuration = initialDuration; - control.speed = speed; - control.loopMode = loopMode; - control.directionType = directionType; - - return control; - } - - @Override - public Object jmeClone() { - MotionEvent control = new MotionEvent(); - control.path = path; - control.playState = playState; - control.currentWayPoint = currentWayPoint; - control.currentValue = currentValue; - control.direction = direction.clone(); - control.lookAt = lookAt; - control.upVector = upVector.clone(); - control.rotation = rotation; - control.initialDuration = initialDuration; - control.speed = speed; - control.loopMode = loopMode; - control.directionType = directionType; - control.spatial = spatial; - - return control; - } - - @Override - public void cloneFields( Cloner cloner, Object original ) { - this.spatial = cloner.clone(spatial); - } - - @Override - public void onPlay() { - traveledDistance = 0; - } - - @Override - public void onStop() { - currentWayPoint = 0; - } - - @Override - public void onPause() { - } - - /** - * This method is meant to be called by the motion path only. - * @return - */ - public float getCurrentValue() { - return currentValue; - } - - /** - * This method is meant to be called by the motion path only. - * - */ - public void setCurrentValue(float currentValue) { - this.currentValue = currentValue; - } - - /** - * This method is meant to be called by the motion path only. - * @return - */ - public int getCurrentWayPoint() { - return currentWayPoint; - } - - /** - * This method is meant to be called by the motion path only. - * - */ - public void setCurrentWayPoint(int currentWayPoint) { - this.currentWayPoint = currentWayPoint; - } - - /** - * Returns the direction the spatial is moving. - * @return - */ - public Vector3f getDirection() { - return direction; - } - - /** - * Sets the direction of the spatial, using the Y axis as the up vector. - * Use MotionEvent#setDirection((Vector3f direction,Vector3f upVector) if - * you want a custum up vector. - * This method is used by the motion path. - * @param direction - */ - public void setDirection(Vector3f direction) { - setDirection(direction, Vector3f.UNIT_Y); - } - - /** - * Sets the direction of the spatial with the given up vector. - * This method is used by the motion path. - * @param direction - * @param upVector the up vector to consider for this direction. - */ - public void setDirection(Vector3f direction,Vector3f upVector) { - this.direction.set(direction); - this.upVector.set(upVector); - } - - /** - * Returns the direction type of the target. - * @return the direction type. - */ - public Direction getDirectionType() { - return directionType; - } - - /** - * Sets the direction type of the target. - * On each update the direction given to the target can have different behavior. - * See the Direction Enum for explanations. - * @param directionType the direction type. - */ - public void setDirectionType(Direction directionType) { - this.directionType = directionType; - } - - /** - * Set the lookAt for the target. - * This can be used only if direction Type is Direction.LookAt. - * @param lookAt the position to look at. - * @param upVector the up vector. - */ - public void setLookAt(Vector3f lookAt, Vector3f upVector) { - this.lookAt = lookAt; - this.upVector = upVector; - } - - /** - * Returns the rotation of the target. - * @return the rotation quaternion. - */ - public Quaternion getRotation() { - return rotation; - } - - /** - * Sets the rotation of the target. - * This can be used only if direction Type is Direction.PathAndRotation or Direction.Rotation. - * With PathAndRotation the target will face the direction of the path multiplied by the given Quaternion. - * With Rotation the rotation of the target will be set with the given Quaternion. - * @param rotation the rotation quaternion. - */ - public void setRotation(Quaternion rotation) { - this.rotation = rotation; - } - - /** - * Return the motion path this control follows. - * @return - */ - public MotionPath getPath() { - return path; - } - - /** - * Sets the motion path to follow. - * @param path - */ - public void setPath(MotionPath path) { - this.path = path; - } - - public void setEnabled(boolean enabled) { - if (enabled) { - play(); - } else { - pause(); - } - } - - public boolean isEnabled() { - return playState != PlayState.Stopped; - } - - public void render(RenderManager rm, ViewPort vp) { - } - - public void setSpatial(Spatial spatial) { - this.spatial = spatial; - } - - public Spatial getSpatial() { - return spatial; - } - - /** - * Return the distance traveled by the spatial on the path. - * @return - */ - public float getTraveledDistance() { - return traveledDistance; - } -} +/* + * Copyright (c) 2009-2018 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.cinematic.events; + +import com.jme3.animation.AnimationUtils; +import com.jme3.animation.LoopMode; +import com.jme3.app.Application; +import com.jme3.cinematic.Cinematic; +import com.jme3.cinematic.MotionPath; +import com.jme3.cinematic.PlayState; +import com.jme3.export.InputCapsule; +import com.jme3.export.JmeExporter; +import com.jme3.export.JmeImporter; +import com.jme3.export.OutputCapsule; +import com.jme3.math.Quaternion; +import com.jme3.math.Vector3f; +import com.jme3.renderer.RenderManager; +import com.jme3.renderer.ViewPort; +import com.jme3.scene.Spatial; +import com.jme3.scene.control.Control; +import com.jme3.util.clone.Cloner; +import com.jme3.util.clone.JmeCloneable; +import java.io.IOException; + +/** + * A MotionEvent is a control over the spatial that manages the position and direction of the spatial while following a motion Path. + * + * You must first create a MotionPath and then create a MotionEvent to associate a spatial and the path. + * + * @author Nehon + */ +public class MotionEvent extends AbstractCinematicEvent implements Control, JmeCloneable { + + protected Spatial spatial; + protected int currentWayPoint; + protected float currentValue; + protected Vector3f direction = new Vector3f(); + protected Vector3f lookAt = null; + protected Vector3f upVector = Vector3f.UNIT_Y; + protected Quaternion rotation = null; + protected Direction directionType = Direction.None; + protected MotionPath path; + private boolean isControl = true; + private int travelDirection = 1; + /** + * the distance traveled by the spatial on the path + */ + protected float traveledDistance = 0; + + /** + * Enum for the different type of target direction behavior. + */ + public enum Direction { + + /** + * The target stays in the starting direction. + */ + None, + /** + * The target rotates with the direction of the path. + */ + Path, + /** + * The target rotates with the direction of the path but with the addition of a rotation. + * You need to use the setRotation method when using this Direction. + */ + PathAndRotation, + /** + * The target rotates with the given rotation. + */ + Rotation, + /** + * The target looks at a point. + * You need to use the setLookAt method when using this direction. + */ + LookAt + } + + /** + * Create MotionEvent, + * when using this constructor don't forget to assign spatial and path. + */ + public MotionEvent() { + super(); + } + + /** + * Creates a MotionPath for the given spatial on the given motion path. + * @param spatial + * @param path + */ + public MotionEvent(Spatial spatial, MotionPath path) { + super(); + spatial.addControl(this); + this.path = path; + } + + /** + * Creates a MotionPath for the given spatial on the given motion path. + * @param spatial + * @param path + */ + public MotionEvent(Spatial spatial, MotionPath path, float initialDuration) { + super(initialDuration); + spatial.addControl(this); + this.path = path; + } + + /** + * Creates a MotionPath for the given spatial on the given motion path. + * @param spatial + * @param path + */ + public MotionEvent(Spatial spatial, MotionPath path, LoopMode loopMode) { + super(); + spatial.addControl(this); + this.path = path; + this.loopMode = loopMode; + } + + /** + * Creates a MotionPath for the given spatial on the given motion path. + * @param spatial + * @param path + */ + public MotionEvent(Spatial spatial, MotionPath path, float initialDuration, LoopMode loopMode) { + super(initialDuration); + spatial.addControl(this); + this.path = path; + this.loopMode = loopMode; + } + + public void update(float tpf) { + if (isControl) { + internalUpdate(tpf); + } + } + + @Override + public void internalUpdate(float tpf) { + if (playState == PlayState.Playing) { + time = time + (tpf * speed); + if (loopMode == LoopMode.Loop && time < 0) { + time = initialDuration; + } + if ((time >= initialDuration || time < 0) && loopMode == LoopMode.DontLoop) { + if (time >= initialDuration) { + path.triggerWayPointReach(path.getNbWayPoints() - 1, this); + } + stop(); + } else { + time = AnimationUtils.clampWrapTime(time, initialDuration, loopMode); + if(time<0){ + speed = - speed; + time = - time; + } + onUpdate(tpf); + } + } + } + + @Override + public void initEvent(Application app, Cinematic cinematic) { + super.initEvent(app, cinematic); + isControl = false; + } + + @Override + public void setTime(float time) { + super.setTime(time); + onUpdate(0); + } + + public void onUpdate(float tpf) { + traveledDistance = path.interpolatePath(time, this, tpf); + computeTargetDirection(); + } + + @Override + public void write(JmeExporter ex) throws IOException { + super.write(ex); + OutputCapsule oc = ex.getCapsule(this); + oc.write(lookAt, "lookAt", null); + oc.write(upVector, "upVector", Vector3f.UNIT_Y); + oc.write(rotation, "rotation", null); + oc.write(directionType, "directionType", Direction.None); + oc.write(path, "path", null); + oc.write(spatial, "spatial", null); + } + + @Override + public void read(JmeImporter im) throws IOException { + super.read(im); + InputCapsule in = im.getCapsule(this); + lookAt = (Vector3f) in.readSavable("lookAt", null); + upVector = (Vector3f) in.readSavable("upVector", Vector3f.UNIT_Y); + rotation = (Quaternion) in.readSavable("rotation", null); + directionType = in.readEnum("directionType", Direction.class, Direction.None); + path = (MotionPath) in.readSavable("path", null); + spatial = (Spatial) in.readSavable("spatial", null); + } + + /** + * This method is meant to be called by the motion path only. + * @return + */ + public boolean needsDirection() { + return directionType == Direction.Path || directionType == Direction.PathAndRotation; + } + + private void computeTargetDirection() { + switch (directionType) { + case Path: + Quaternion q = new Quaternion(); + q.lookAt(direction, upVector); + spatial.setLocalRotation(q); + break; + case LookAt: + if (lookAt != null) { + spatial.lookAt(lookAt, upVector); + } + break; + case PathAndRotation: + if (rotation != null) { + Quaternion q2 = new Quaternion(); + q2.lookAt(direction, upVector); + q2.multLocal(rotation); + spatial.setLocalRotation(q2); + } + break; + case Rotation: + if (rotation != null) { + spatial.setLocalRotation(rotation); + } + break; + case None: + break; + default: + break; + } + } + + /** + * Clone this control for the given spatial. + * @param spatial + * @return + */ + @Deprecated + @Override + public Control cloneForSpatial(Spatial spatial) { + throw new UnsupportedOperationException(); + } + + @Override + public Object jmeClone() { + MotionEvent control = new MotionEvent(); + control.path = path; + control.playState = playState; + control.currentWayPoint = currentWayPoint; + control.currentValue = currentValue; + control.direction = direction.clone(); + control.lookAt = lookAt; + control.upVector = upVector.clone(); + control.rotation = rotation; + control.initialDuration = initialDuration; + control.speed = speed; + control.loopMode = loopMode; + control.directionType = directionType; + control.spatial = spatial; + + return control; + } + + @Override + public void cloneFields( Cloner cloner, Object original ) { + this.spatial = cloner.clone(spatial); + } + + @Override + public void onPlay() { + traveledDistance = 0; + } + + @Override + public void onStop() { + currentWayPoint = 0; + } + + @Override + public void onPause() { + } + + /** + * This method is meant to be called by the motion path only. + * @return + */ + public float getCurrentValue() { + return currentValue; + } + + /** + * This method is meant to be called by the motion path only. + * + */ + public void setCurrentValue(float currentValue) { + this.currentValue = currentValue; + } + + /** + * This method is meant to be called by the motion path only. + * @return + */ + public int getCurrentWayPoint() { + return currentWayPoint; + } + + /** + * This method is meant to be called by the motion path only. + * + */ + public void setCurrentWayPoint(int currentWayPoint) { + this.currentWayPoint = currentWayPoint; + } + + /** + * Returns the direction the spatial is moving. + * @return + */ + public Vector3f getDirection() { + return direction; + } + + /** + * Sets the direction of the spatial, using the Y axis as the up vector. + * Use MotionEvent#setDirection((Vector3f direction,Vector3f upVector) if + * you want a custum up vector. + * This method is used by the motion path. + * @param direction + */ + public void setDirection(Vector3f direction) { + setDirection(direction, Vector3f.UNIT_Y); + } + + /** + * Sets the direction of the spatial with the given up vector. + * This method is used by the motion path. + * @param direction + * @param upVector the up vector to consider for this direction. + */ + public void setDirection(Vector3f direction,Vector3f upVector) { + this.direction.set(direction); + this.upVector.set(upVector); + } + + /** + * Returns the direction type of the target. + * @return the direction type. + */ + public Direction getDirectionType() { + return directionType; + } + + /** + * Sets the direction type of the target. + * On each update the direction given to the target can have different behavior. + * See the Direction Enum for explanations. + * @param directionType the direction type. + */ + public void setDirectionType(Direction directionType) { + this.directionType = directionType; + } + + /** + * Set the lookAt for the target. + * This can be used only if direction Type is Direction.LookAt. + * @param lookAt the position to look at. + * @param upVector the up vector. + */ + public void setLookAt(Vector3f lookAt, Vector3f upVector) { + this.lookAt = lookAt; + this.upVector = upVector; + } + + /** + * Returns the rotation of the target. + * @return the rotation quaternion. + */ + public Quaternion getRotation() { + return rotation; + } + + /** + * Sets the rotation of the target. + * This can be used only if direction Type is Direction.PathAndRotation or Direction.Rotation. + * With PathAndRotation the target will face the direction of the path multiplied by the given Quaternion. + * With Rotation the rotation of the target will be set with the given Quaternion. + * @param rotation the rotation quaternion. + */ + public void setRotation(Quaternion rotation) { + this.rotation = rotation; + } + + /** + * Return the motion path this control follows. + * @return + */ + public MotionPath getPath() { + return path; + } + + /** + * Sets the motion path to follow. + * @param path + */ + public void setPath(MotionPath path) { + this.path = path; + } + + public void setEnabled(boolean enabled) { + if (enabled) { + play(); + } else { + pause(); + } + } + + public boolean isEnabled() { + return playState != PlayState.Stopped; + } + + public void render(RenderManager rm, ViewPort vp) { + } + + public void setSpatial(Spatial spatial) { + this.spatial = spatial; + } + + public Spatial getSpatial() { + return spatial; + } + + /** + * Return the distance traveled by the spatial on the path. + * @return + */ + public float getTraveledDistance() { + return traveledDistance; + } +} diff --git a/jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java b/jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java index 02c3ae754..6de7e21f6 100644 --- a/jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java +++ b/jme3-core/src/main/java/com/jme3/cinematic/events/SoundEvent.java @@ -1,229 +1,230 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.cinematic.events; - -import com.jme3.animation.LoopMode; -import com.jme3.app.Application; -import com.jme3.audio.AudioNode; -import com.jme3.audio.AudioSource; -import com.jme3.cinematic.Cinematic; -import com.jme3.export.InputCapsule; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.export.OutputCapsule; -import java.io.IOException; - -/** - * A sound track to be played in a cinematic. - * @author Nehon - */ -public class SoundEvent extends AbstractCinematicEvent { - - protected String path; - protected AudioNode audioNode; - protected boolean stream = false; - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - */ - public SoundEvent(String path) { - this.path = path; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param stream true to make the audio data streamed - */ - public SoundEvent(String path, boolean stream) { - this(path); - this.stream = stream; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param stream true to make the audio data streamed - * @param initialDuration the initial duration of the event - */ - public SoundEvent(String path, boolean stream, float initialDuration) { - super(initialDuration); - this.path = path; - this.stream = stream; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param stream true to make the audio data streamed - * @param loopMode the loopMode - * @see LoopMode - */ - public SoundEvent(String path, boolean stream, LoopMode loopMode) { - super(loopMode); - this.path = path; - this.stream = stream; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param stream true to make the audio data streamed - * @param initialDuration the initial duration of the event - * @param loopMode the loopMode - * @see LoopMode - */ - public SoundEvent(String path, boolean stream, float initialDuration, LoopMode loopMode) { - super(initialDuration, loopMode); - this.path = path; - this.stream = stream; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param initialDuration the initial duration of the event - */ - public SoundEvent(String path, float initialDuration) { - super(initialDuration); - this.path = path; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param loopMode the loopMode - * @see LoopMode - */ - public SoundEvent(String path, LoopMode loopMode) { - super(loopMode); - this.path = path; - } - - /** - * creates a sound track from the given resource path - * @param path the path to an audio file (ie : "Sounds/mySound.wav") - * @param initialDuration the initial duration of the event - * @param loopMode the loopMode - * @see LoopMode - */ - public SoundEvent(String path, float initialDuration, LoopMode loopMode) { - super(initialDuration, loopMode); - this.path = path; - } - - /** - * creates a sound event - * used for serialization - */ - public SoundEvent() { - } - - @Override - public void initEvent(Application app, Cinematic cinematic) { - super.initEvent(app, cinematic); - audioNode = new AudioNode(app.getAssetManager(), path, stream); - audioNode.setPositional(false); - setLoopMode(loopMode); - } - - @Override - public void setTime(float time) { - super.setTime(time); - //can occur on rewind - if (time < 0f) { - stop(); - }else{ - audioNode.setTimeOffset(time); - } - } - - @Override - public void onPlay() { - audioNode.play(); - } - - @Override - public void onStop() { - audioNode.stop(); - - } - - @Override - public void onPause() { - audioNode.pause(); - } - - @Override - public void onUpdate(float tpf) { - if (audioNode.getStatus() == AudioSource.Status.Stopped) { - stop(); - } - } - - /** - * Returns the underlying audio node of this sound track - * @return - */ - public AudioNode getAudioNode() { - return audioNode; - } - - @Override - public void setLoopMode(LoopMode loopMode) { - super.setLoopMode(loopMode); - - if (loopMode != LoopMode.DontLoop) { - audioNode.setLooping(true); - } else { - audioNode.setLooping(false); - } - } - - @Override - public void write(JmeExporter ex) throws IOException { - super.write(ex); - OutputCapsule oc = ex.getCapsule(this); - oc.write(path, "path", ""); - oc.write(stream, "stream", false); - } - - @Override - public void read(JmeImporter im) throws IOException { - super.read(im); - InputCapsule ic = im.getCapsule(this); - path = ic.readString("path", ""); - stream = ic.readBoolean("stream", false); - - } -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.cinematic.events; + +import com.jme3.animation.LoopMode; +import com.jme3.app.Application; +import com.jme3.audio.AudioNode; +import com.jme3.audio.AudioSource; +import com.jme3.cinematic.Cinematic; +import com.jme3.export.InputCapsule; +import com.jme3.export.JmeExporter; +import com.jme3.export.JmeImporter; +import com.jme3.export.OutputCapsule; +import java.io.IOException; + +/** + * A sound track to be played in a cinematic. + * @author Nehon + */ +public class SoundEvent extends AbstractCinematicEvent { + + protected String path; + protected AudioNode audioNode; + protected boolean stream = false; + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + */ + public SoundEvent(String path) { + this.path = path; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param stream true to make the audio data streamed + */ + public SoundEvent(String path, boolean stream) { + this(path); + this.stream = stream; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param stream true to make the audio data streamed + * @param initialDuration the initial duration of the event + */ + public SoundEvent(String path, boolean stream, float initialDuration) { + super(initialDuration); + this.path = path; + this.stream = stream; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param stream true to make the audio data streamed + * @param loopMode the loopMode + * @see LoopMode + */ + public SoundEvent(String path, boolean stream, LoopMode loopMode) { + super(loopMode); + this.path = path; + this.stream = stream; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param stream true to make the audio data streamed + * @param initialDuration the initial duration of the event + * @param loopMode the loopMode + * @see LoopMode + */ + public SoundEvent(String path, boolean stream, float initialDuration, LoopMode loopMode) { + super(initialDuration, loopMode); + this.path = path; + this.stream = stream; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param initialDuration the initial duration of the event + */ + public SoundEvent(String path, float initialDuration) { + super(initialDuration); + this.path = path; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param loopMode the loopMode + * @see LoopMode + */ + public SoundEvent(String path, LoopMode loopMode) { + super(loopMode); + this.path = path; + } + + /** + * creates a sound track from the given resource path + * @param path the path to an audio file (ie : "Sounds/mySound.wav") + * @param initialDuration the initial duration of the event + * @param loopMode the loopMode + * @see LoopMode + */ + public SoundEvent(String path, float initialDuration, LoopMode loopMode) { + super(initialDuration, loopMode); + this.path = path; + } + + /** + * creates a sound event + * used for serialization + */ + public SoundEvent() { + super(); + } + + @Override + public void initEvent(Application app, Cinematic cinematic) { + super.initEvent(app, cinematic); + audioNode = new AudioNode(app.getAssetManager(), path, stream); + audioNode.setPositional(false); + setLoopMode(loopMode); + } + + @Override + public void setTime(float time) { + super.setTime(time); + //can occur on rewind + if (time < 0f) { + stop(); + }else{ + audioNode.setTimeOffset(time); + } + } + + @Override + public void onPlay() { + audioNode.play(); + } + + @Override + public void onStop() { + audioNode.stop(); + + } + + @Override + public void onPause() { + audioNode.pause(); + } + + @Override + public void onUpdate(float tpf) { + if (audioNode.getStatus() == AudioSource.Status.Stopped) { + stop(); + } + } + + /** + * Returns the underlying audio node of this sound track + * @return + */ + public AudioNode getAudioNode() { + return audioNode; + } + + @Override + public void setLoopMode(LoopMode loopMode) { + super.setLoopMode(loopMode); + + if (loopMode != LoopMode.DontLoop) { + audioNode.setLooping(true); + } else { + audioNode.setLooping(false); + } + } + + @Override + public void write(JmeExporter ex) throws IOException { + super.write(ex); + OutputCapsule oc = ex.getCapsule(this); + oc.write(path, "path", ""); + oc.write(stream, "stream", false); + } + + @Override + public void read(JmeImporter im) throws IOException { + super.read(im); + InputCapsule ic = im.getCapsule(this); + path = ic.readString("path", ""); + stream = ic.readBoolean("stream", false); + + } +} diff --git a/jme3-core/src/main/java/com/jme3/collision/SweepSphere.java b/jme3-core/src/main/java/com/jme3/collision/SweepSphere.java index de26c8e99..75470dcb5 100644 --- a/jme3-core/src/main/java/com/jme3/collision/SweepSphere.java +++ b/jme3-core/src/main/java/com/jme3/collision/SweepSphere.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -217,7 +217,7 @@ class SweepSphere implements Collidable { float signedDistanceToPlane = triPlane.pseudoDistance(sCenter); if (normalDotVelocity == 0.0f){ - // we are travelling exactly parrallel to the plane + // we are travelling exactly parallel to the plane if (FastMath.abs(signedDistanceToPlane) >= 1.0f){ // no collision possible return null; diff --git a/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java b/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java index 83d28b2bd..ba0c0282d 100644 --- a/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java +++ b/jme3-core/src/main/java/com/jme3/effect/ParticleEmitter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -121,10 +121,10 @@ public class ParticleEmitter extends Geometry { this.parentEmitter = parentEmitter; } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - return this; // WARNING: Sets wrong control on spatial. Will be - // fixed automatically by ParticleEmitter.clone() method. + throw new UnsupportedOperationException(); } @Override @@ -384,7 +384,7 @@ public class ParticleEmitter extends Geometry { * Set to true if particles should spawn in world space. * *

If set to true and the particle emitter is moved in the scene, - * then particles that have already spawned won't be effected by this + * then particles that have already spawned won't be affected by this * motion. If set to false, the particles will emit in local space * and when the emitter is moved, so are all the particles that * were emitted previously. @@ -846,7 +846,7 @@ public class ParticleEmitter extends Geometry { * @param initialVelocity Set the initial velocity a particle is spawned with, * the initial velocity given in the parameter will be varied according * to the velocity variation set in {@link ParticleEmitter#setVelocityVariation(float) }. - * A particle will move toward its velocity unless it is effected by the + * The particle will move with this velocity unless it is affected by * gravity. * * @deprecated diff --git a/jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java b/jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java index 4f322df74..797e9c723 100644 --- a/jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java +++ b/jme3-core/src/main/java/com/jme3/effect/influencers/ParticleInfluencer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -64,7 +64,7 @@ public interface ParticleInfluencer extends Savable, Cloneable, JmeCloneable { * Set the initial velocity a particle is spawned with, * the initial velocity given in the parameter will be varied according * to the velocity variation set in {@link ParticleEmitter#setVelocityVariation(float) }. - * A particle will move toward its velocity unless it is effected by the + * The particle will move with this velocity unless it is affected by * gravity. */ void setInitialVelocity(Vector3f initialVelocity); diff --git a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java index c4557a3b9..a18c7e1a8 100644 --- a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java +++ b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshConvexHullShape.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -37,7 +37,7 @@ import com.jme3.scene.Mesh; import java.util.List; /** - * This emiter shape emits the particles from the given shape's interior constrained by its convex hull + * This emitter shape emits the particles from the given shape's interior constrained by its convex hull * (a geometry that tightly wraps the mesh). So in case of multiple meshes some vertices may appear * in a space between them. * @author Marcin Roguski (Kaelthas) diff --git a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java index f2cd9ecc7..77bc2852f 100644 --- a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java +++ b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshFaceShape.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -40,7 +40,7 @@ import java.util.ArrayList; import java.util.List; /** - * This emiter shape emits the particles from the given shape's faces. + * This emitter shape emits the particles from the given shape's faces. * @author Marcin Roguski (Kaelthas) */ public class EmitterMeshFaceShape extends EmitterMeshVertexShape { diff --git a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java index b996e63cb..e6e35d9cf 100644 --- a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java +++ b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterMeshVertexShape.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -50,7 +50,7 @@ import java.util.Map; import java.util.Map.Entry; /** - * This emiter shape emits the particles from the given shape's vertices + * This emitter shape emits the particles from the given shape's vertices * @author Marcin Roguski (Kaelthas) */ public class EmitterMeshVertexShape implements EmitterShape { @@ -74,7 +74,7 @@ public class EmitterMeshVertexShape implements EmitterShape { } /** - * This method sets the meshes that will form the emiter's shape. + * This method sets the meshes that will form the emitter's shape. * @param meshes * a list of meshes that will form the emitter's shape */ diff --git a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java index 99d76205d..a74eeaf39 100644 --- a/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java +++ b/jme3-core/src/main/java/com/jme3/effect/shapes/EmitterSphereShape.java @@ -96,10 +96,12 @@ public class EmitterSphereShape implements EmitterShape { @Override public void getRandomPoint(Vector3f store) { do { - store.x = (FastMath.nextRandomFloat() * 2f - 1f) * radius; - store.y = (FastMath.nextRandomFloat() * 2f - 1f) * radius; - store.z = (FastMath.nextRandomFloat() * 2f - 1f) * radius; - } while (store.distance(center) > radius); + store.x = (FastMath.nextRandomFloat() * 2f - 1f); + store.y = (FastMath.nextRandomFloat() * 2f - 1f); + store.z = (FastMath.nextRandomFloat() * 2f - 1f); + } while (store.lengthSquared() > 1); + store.multLocal(radius); + store.addLocal(center); } @Override diff --git a/jme3-core/src/main/java/com/jme3/environment/EnvironmentCamera.java b/jme3-core/src/main/java/com/jme3/environment/EnvironmentCamera.java index 1fba5d51d..aff4dd0b9 100644 --- a/jme3-core/src/main/java/com/jme3/environment/EnvironmentCamera.java +++ b/jme3-core/src/main/java/com/jme3/environment/EnvironmentCamera.java @@ -48,6 +48,7 @@ import com.jme3.texture.Texture2D; import com.jme3.texture.TextureCubeMap; import com.jme3.texture.image.ColorSpace; import com.jme3.util.BufferUtils; +import com.jme3.util.MipMapGenerator; import java.nio.ByteBuffer; import java.util.ArrayList; @@ -72,6 +73,8 @@ public class EnvironmentCamera extends BaseAppState { protected Image.Format imageFormat = Image.Format.RGB16F; + public TextureCubeMap debugEnv; + //Axis for cameras static { //PositiveX axis(left, up, direction) @@ -188,10 +191,11 @@ public class EnvironmentCamera extends BaseAppState { buffers[i] = BufferUtils.createByteBuffer(size * size * imageFormat.getBitsPerPixel() / 8); renderManager.getRenderer().readFrameBufferWithFormat(framebuffers[i], buffers[i], imageFormat); images[i] = new Image(imageFormat, size, size, buffers[i], ColorSpace.Linear); + MipMapGenerator.generateMipMaps(images[i]); } final TextureCubeMap map = EnvMapUtils.makeCubeMap(images[0], images[1], images[2], images[3], images[4], images[5], imageFormat); - + debugEnv = map; job.callback.done(map); map.getImage().dispose(); jobs.remove(0); diff --git a/jme3-core/src/main/java/com/jme3/environment/LightProbeFactory.java b/jme3-core/src/main/java/com/jme3/environment/LightProbeFactory.java index b41bbd479..9a4259804 100644 --- a/jme3-core/src/main/java/com/jme3/environment/LightProbeFactory.java +++ b/jme3-core/src/main/java/com/jme3/environment/LightProbeFactory.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,13 +31,14 @@ */ package com.jme3.environment; +import com.jme3.app.Application; import com.jme3.environment.generation.*; -import com.jme3.light.LightProbe; import com.jme3.environment.util.EnvMapUtils; -import com.jme3.app.Application; +import com.jme3.light.LightProbe; import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.texture.TextureCubeMap; + import java.util.concurrent.ScheduledThreadPoolExecutor; /** @@ -46,7 +47,7 @@ import java.util.concurrent.ScheduledThreadPoolExecutor; * Since the process can be long, you can provide a JobProgressListener that * will be notified of the ongoing generation process when calling the makeProbe method. * - * The process is the folowing : + * The process is as follows: * 1. Create an EnvironmentCamera * 2. give it a position in the scene * 3. call {@link LightProbeFactory#makeProbe(com.jme3.environment.EnvironmentCamera, com.jme3.scene.Node)} @@ -60,7 +61,7 @@ import java.util.concurrent.ScheduledThreadPoolExecutor; * This class is entirely thread safe and can be called from any thread. * * Note that in case you are using a {@link JobProgressListener} all the its - * method will be called inside and app.enqueu callable. + * method will be called inside and app.enqueue callable. * This means that it's completely safe to modify the scenegraph within the * Listener method, but also means that the even will be delayed until next update loop. * @@ -72,7 +73,7 @@ public class LightProbeFactory { /** * Creates a LightProbe with the giver EnvironmentCamera in the given scene. * - * Note that this is an assynchronous process that will run on multiple threads. + * Note that this is an asynchronous process that will run on multiple threads. * The process is thread safe. * The created lightProbe will only be marked as ready when the rendering process is done. * @@ -93,7 +94,7 @@ public class LightProbeFactory { /** * Creates a LightProbe with the giver EnvironmentCamera in the given scene. * - * Note that this is an assynchronous process that will run on multiple threads. + * Note that this is an asynchronous process that will run on multiple threads. * The process is thread safe. * The created lightProbe will only be marked as ready when the rendering process is done. * @@ -106,10 +107,11 @@ public class LightProbeFactory { * @param envCam the EnvironmentCamera * @param scene the Scene - * @param listener the listener of the genration progress. + * @param genType Fast or HighQuality. Fast may be ok for many types of environment, but you may need high quality when an environment map has very high lighting values. + * @param listener the listener of the generation progress. * @return the created LightProbe */ - public static LightProbe makeProbe(final EnvironmentCamera envCam, Spatial scene, final JobProgressListener listener) { + public static LightProbe makeProbe(final EnvironmentCamera envCam, Spatial scene, final EnvMapUtils.GenerationType genType, final JobProgressListener listener) { final LightProbe probe = new LightProbe(); probe.setPosition(envCam.getPosition()); probe.setPrefilteredMap(EnvMapUtils.createPrefilteredEnvMap(envCam.getSize(), envCam.getImageFormat())); @@ -117,33 +119,37 @@ public class LightProbeFactory { @Override public void done(TextureCubeMap map) { - generatePbrMaps(map, probe, envCam.getApplication(), listener); + generatePbrMaps(map, probe, envCam.getApplication(), genType, listener); } }); return probe; } - - /** - * Updates a LightProbe with the giver EnvironmentCamera in the given scene. - * - * Note that this is an assynchronous process that will run on multiple threads. + + public static LightProbe makeProbe(final EnvironmentCamera envCam, Spatial scene, final JobProgressListener listener) { + return makeProbe(envCam, scene, EnvMapUtils.GenerationType.Fast, listener); + } + + /** + * Updates a LightProbe with the given EnvironmentCamera in the given scene. + *

+ * Note that this is an asynchronous process that will run on multiple threads. * The process is thread safe. * The created lightProbe will only be marked as ready when the rendering process is done. - * - * The JobProgressListener will be notified of the progress of the generation. - * Note that you can also use a {@link JobProgressAdapter}. - * + *

+ * The JobProgressListener will be notified of the progress of the generation. + * Note that you can also use a {@link JobProgressAdapter}. + * + * @param probe the Light probe to update + * @param envCam the EnvironmentCamera + * @param scene the Scene + * @param genType Fast or HighQuality. Fast may be ok for many types of environment, but you may need high quality when an environment map has very high lighting values. + * @param listener the listener of the generation progress. + * @return the created LightProbe * @see LightProbe * @see EnvironmentCamera * @see JobProgressListener - * - * @param probe the Light probe to update - * @param envCam the EnvironmentCamera - * @param scene the Scene - * @param listener the listener of the genration progress. - * @return the created LightProbe */ - public static LightProbe updateProbe(final LightProbe probe, final EnvironmentCamera envCam, Spatial scene, final JobProgressListener listener) { + public static LightProbe updateProbe(final LightProbe probe, final EnvironmentCamera envCam, Spatial scene, final EnvMapUtils.GenerationType genType, final JobProgressListener listener) { envCam.setPosition(probe.getPosition()); @@ -159,23 +165,27 @@ public class LightProbeFactory { @Override public void done(TextureCubeMap map) { - generatePbrMaps(map, probe, envCam.getApplication(), listener); + generatePbrMaps(map, probe, envCam.getApplication(), genType, listener); } }); return probe; } + public static LightProbe updateProbe(final LightProbe probe, final EnvironmentCamera envCam, Spatial scene, final JobProgressListener listener) { + return updateProbe(probe, envCam, scene, EnvMapUtils.GenerationType.Fast, listener); + } + /** * Internally called to generate the maps. * This method will spawn 7 thread (one for the Irradiance spherical harmonics generator, and one for each face of the prefiltered env map). - * Those threads will be executed in a ScheduledThreadPoolExecutor that will be shutdown when the genration is done. - * + * Those threads will be executed in a ScheduledThreadPoolExecutor that will be shutdown when the generation is done. + * * @param envMap the raw env map rendered by the env camera - * @param probe the LigthProbe to generate maps for + * @param probe the LightProbe to generate maps for * @param app the Application * @param listener a progress listener. (can be null if no progress reporting is needed) */ - private static void generatePbrMaps(TextureCubeMap envMap, final LightProbe probe, Application app, final JobProgressListener listener) { + private static void generatePbrMaps(TextureCubeMap envMap, final LightProbe probe, Application app, EnvMapUtils.GenerationType genType, final JobProgressListener listener) { IrradianceSphericalHarmonicsGenerator irrShGenerator; PrefilteredEnvMapFaceGenerator[] pemGenerators = new PrefilteredEnvMapFaceGenerator[6]; @@ -189,7 +199,7 @@ public class LightProbeFactory { for (int i = 0; i < pemGenerators.length; i++) { pemGenerators[i] = new PrefilteredEnvMapFaceGenerator(app, i, new JobListener(listener, jobState, probe, i)); - pemGenerators[i].setGenerationParam(EnvMapUtils.duplicateCubeMap(envMap), size, EnvMapUtils.FixSeamsMethod.None, probe.getPrefilteredEnvMap()); + pemGenerators[i].setGenerationParam(EnvMapUtils.duplicateCubeMap(envMap), size, EnvMapUtils.FixSeamsMethod.None, genType, probe.getPrefilteredEnvMap()); jobState.executor.execute(pemGenerators[i]); } } @@ -227,7 +237,7 @@ public class LightProbeFactory { } /** - * An inner JobProgressListener to controll the genration process and properly clean up when it's done + * An inner JobProgressListener to control the generation process and properly clean up when it's done */ private static class JobListener extends JobProgressAdapter { diff --git a/jme3-core/src/main/java/com/jme3/environment/generation/IrradianceSphericalHarmonicsGenerator.java b/jme3-core/src/main/java/com/jme3/environment/generation/IrradianceSphericalHarmonicsGenerator.java index ee2572886..d098fa61d 100644 --- a/jme3-core/src/main/java/com/jme3/environment/generation/IrradianceSphericalHarmonicsGenerator.java +++ b/jme3-core/src/main/java/com/jme3/environment/generation/IrradianceSphericalHarmonicsGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -73,7 +73,7 @@ public class IrradianceSphericalHarmonicsGenerator extends RunnableWithProgress } /** - * Fills all the genration parameters + * Fills all the generation parameters * * @param sourceMap the source cube map * {@link EnvMapUtils.FixSeamsMethod} diff --git a/jme3-core/src/main/java/com/jme3/environment/generation/PrefilteredEnvMapFaceGenerator.java b/jme3-core/src/main/java/com/jme3/environment/generation/PrefilteredEnvMapFaceGenerator.java index 8233b11e5..fbfa73669 100644 --- a/jme3-core/src/main/java/com/jme3/environment/generation/PrefilteredEnvMapFaceGenerator.java +++ b/jme3-core/src/main/java/com/jme3/environment/generation/PrefilteredEnvMapFaceGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,30 +31,22 @@ */ package com.jme3.environment.generation; +import com.jme3.app.Application; import com.jme3.environment.util.CubeMapWrapper; import com.jme3.environment.util.EnvMapUtils; -import com.jme3.app.Application; import com.jme3.math.*; - -import static com.jme3.math.FastMath.abs; -import static com.jme3.math.FastMath.clamp; -import static com.jme3.math.FastMath.pow; -import static com.jme3.math.FastMath.sqrt; - import com.jme3.texture.TextureCubeMap; -import static com.jme3.environment.util.EnvMapUtils.getHammersleyPoint; -import static com.jme3.environment.util.EnvMapUtils.getRoughnessFromMip; -import static com.jme3.environment.util.EnvMapUtils.getSampleFromMip; -import static com.jme3.environment.util.EnvMapUtils.getVectorFromCubemapFaceTexCoord; - import java.util.concurrent.Callable; -import java.util.logging.Level; import java.util.logging.Logger; +import static com.jme3.environment.util.EnvMapUtils.*; +import static com.jme3.math.FastMath.abs; +import static com.jme3.math.FastMath.sqrt; + /** - * Generates one face of the prefiltered environnement map for PBR. This job can - * be lauched from a separate thread. + * Generates one face of the prefiltered environment map for PBR. This job can + * be launched from a separate thread. *

* TODO there is a lot of duplicate code here with the EnvMapUtils. * @@ -69,6 +61,7 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { private int targetMapSize; private EnvMapUtils.FixSeamsMethod fixSeamsMethod; + private EnvMapUtils.GenerationType genType; private TextureCubeMap sourceMap; private TextureCubeMap store; private final Application app; @@ -98,7 +91,7 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { /** - * Fills all the genration parameters + * Fills all the generation parameters * * @param sourceMap the source cube map * @param targetMapSize the size of the generated map (width or height in @@ -107,11 +100,12 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { * {@link EnvMapUtils.FixSeamsMethod} * @param store The cube map to store the result in. */ - public void setGenerationParam(TextureCubeMap sourceMap, int targetMapSize, EnvMapUtils.FixSeamsMethod fixSeamsMethod, TextureCubeMap store) { + public void setGenerationParam(TextureCubeMap sourceMap, int targetMapSize, EnvMapUtils.FixSeamsMethod fixSeamsMethod, EnvMapUtils.GenerationType genType, TextureCubeMap store) { this.sourceMap = sourceMap; this.targetMapSize = targetMapSize; this.fixSeamsMethod = fixSeamsMethod; this.store = store; + this.genType = genType; init(); } @@ -162,68 +156,105 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { * @return The irradiance cube map for the given coefficients */ private TextureCubeMap generatePrefilteredEnvMap(TextureCubeMap sourceEnvMap, int targetMapSize, EnvMapUtils.FixSeamsMethod fixSeamsMethod, TextureCubeMap store) { - TextureCubeMap pem = store; + try { + TextureCubeMap pem = store; - int nbMipMap = (int) (Math.log(targetMapSize) / Math.log(2) - 1); + int nbMipMap = store.getImage().getMipMapSizes().length; - setEnd(nbMipMap); + setEnd(nbMipMap); + if (!sourceEnvMap.getImage().hasMipmaps() || sourceEnvMap.getImage().getMipMapSizes().length < nbMipMap) { + throw new IllegalArgumentException("The input cube map must have at least " + nbMipMap + "mip maps"); + } - CubeMapWrapper sourceWrapper = new CubeMapWrapper(sourceEnvMap); - CubeMapWrapper targetWrapper = new CubeMapWrapper(pem); + CubeMapWrapper sourceWrapper = new CubeMapWrapper(sourceEnvMap); + CubeMapWrapper targetWrapper = new CubeMapWrapper(pem); - Vector3f texelVect = new Vector3f(); - Vector3f color = new Vector3f(); - ColorRGBA outColor = new ColorRGBA(); - for (int mipLevel = 0; mipLevel < nbMipMap; mipLevel++) { - float roughness = getRoughnessFromMip(mipLevel, nbMipMap); - int nbSamples = getSampleFromMip(mipLevel, nbMipMap); - int targetMipMapSize = (int) pow(2, nbMipMap + 1 - mipLevel); + Vector3f texelVect = new Vector3f(); + Vector3f color = new Vector3f(); + ColorRGBA outColor = new ColorRGBA(); + int targetMipMapSize = targetMapSize; + for (int mipLevel = 0; mipLevel < nbMipMap; mipLevel++) { + float roughness = getRoughnessFromMip(mipLevel, nbMipMap); + int nbSamples = getSampleFromMip(mipLevel, nbMipMap); - for (int y = 0; y < targetMipMapSize; y++) { - for (int x = 0; x < targetMipMapSize; x++) { - color.set(0, 0, 0); - getVectorFromCubemapFaceTexCoord(x, y, targetMipMapSize, face, texelVect, fixSeamsMethod); - prefilterEnvMapTexel(sourceWrapper, roughness, texelVect, nbSamples, color); + for (int y = 0; y < targetMipMapSize; y++) { + for (int x = 0; x < targetMipMapSize; x++) { + color.set(0, 0, 0); + getVectorFromCubemapFaceTexCoord(x, y, targetMipMapSize, face, texelVect, fixSeamsMethod); + prefilterEnvMapTexel(sourceWrapper, roughness, texelVect, nbSamples, mipLevel, color); - outColor.set(Math.max(color.x, 0.0001f), Math.max(color.y, 0.0001f), Math.max(color.z, 0.0001f), 1); - log.log(Level.FINE, "coords {0},{1}", new Object[]{x, y}); - targetWrapper.setPixel(x, y, face, mipLevel, outColor); + outColor.set(Math.max(color.x, 0.0001f), Math.max(color.y, 0.0001f), Math.max(color.z, 0.0001f), 1); + targetWrapper.setPixel(x, y, face, mipLevel, outColor); + } } + targetMipMapSize /= 2; + progress(); } - progress(); - } - return pem; + return pem; + } catch (Exception e) { + e.printStackTrace(); + throw e; + } } - private Vector3f prefilterEnvMapTexel(CubeMapWrapper envMapReader, float roughness, Vector3f N, int numSamples, Vector3f store) { + private Vector3f prefilterEnvMapTexel(CubeMapWrapper envMapReader, float roughness, Vector3f N, int numSamples, int mipLevel, Vector3f store) { Vector3f prefilteredColor = store; float totalWeight = 0.0f; + int nbRotations = 1; + if (genType == GenerationType.HighQuality) { + nbRotations = numSamples == 1 ? 1 : 18; + } + + float rad = 2f * FastMath.PI / (float) nbRotations; + // offset rotation to avoid sampling pattern + float gi = (float) (FastMath.abs(N.z + N.x) * 256.0); + float offset = rad * (FastMath.cos((gi * 0.5f) % (2f * FastMath.PI)) * 0.5f + 0.5f); + // a = roughness² and a2 = a² float a2 = roughness * roughness; a2 *= a2; + + //Computing tangent frame + Vector3f upVector = Vector3f.UNIT_X; + if (abs(N.z) < 0.999) { + upVector = Vector3f.UNIT_Y; + } + Vector3f tangentX = tmp1.set(upVector).crossLocal(N).normalizeLocal(); + Vector3f tangentY = tmp2.set(N).crossLocal(tangentX); + + // https://placeholderart.wordpress.com/2015/07/28/implementation-notes-runtime-environment-map-filtering-for-image-based-lighting/ + // in local space view == normal == 0,0,1 + Vector3f V = new Vector3f(0, 0, 1); + + Vector3f lWorld = new Vector3f(); for (int i = 0; i < numSamples; i++) { Xi = getHammersleyPoint(i, numSamples, Xi); - H = importanceSampleGGX(Xi, a2, N, H); - + H = importanceSampleGGX(Xi, a2, H); H.normalizeLocal(); - tmp.set(H); - float NoH = N.dot(tmp); - - Vector3f L = tmp.multLocal(NoH * 2).subtractLocal(N); - float NoL = clamp(N.dot(L), 0.0f, 1.0f); - if (NoL > 0) { - envMapReader.getPixel(L, c); - prefilteredColor.setX(prefilteredColor.x + c.r * NoL); - prefilteredColor.setY(prefilteredColor.y + c.g * NoL); - prefilteredColor.setZ(prefilteredColor.z + c.b * NoL); - - totalWeight += NoL; + float VoH = H.z; + Vector3f L = H.multLocal(VoH * 2f).subtractLocal(V); + float NoL = L.z; + + float computedMipLevel = mipLevel; + if (mipLevel != 0) { + computedMipLevel = computeMipLevel(roughness, numSamples, this.targetMapSize, VoH); + } + + toWorld(L, N, tangentX, tangentY, lWorld); + totalWeight += samplePixel(envMapReader, lWorld, NoL, computedMipLevel, prefilteredColor); + + for (int j = 1; j < nbRotations; j++) { + rotateDirection(offset + j * rad, L, lWorld); + L.set(lWorld); + toWorld(L, N, tangentX, tangentY, lWorld); + totalWeight += samplePixel(envMapReader, lWorld, NoL, computedMipLevel, prefilteredColor); } + } if (totalWeight > 0) { prefilteredColor.divideLocal(totalWeight); @@ -232,7 +263,78 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { return prefilteredColor; } - public Vector3f importanceSampleGGX(Vector4f xi, float a2, Vector3f normal, Vector3f store) { + private float samplePixel(CubeMapWrapper envMapReader, Vector3f lWorld, float NoL, float computedMipLevel, Vector3f store) { + + if (NoL <= 0) { + return 0; + } + envMapReader.getPixel(lWorld, computedMipLevel, c); + store.setX(store.x + c.r * NoL); + store.setY(store.y + c.g * NoL); + store.setZ(store.z + c.b * NoL); + + return NoL; + } + + private void toWorld(Vector3f L, Vector3f N, Vector3f tangentX, Vector3f tangentY, Vector3f store) { + store.set(tangentX).multLocal(L.x); + tmp.set(tangentY).multLocal(L.y); + store.addLocal(tmp); + tmp.set(N).multLocal(L.z); + store.addLocal(tmp); + } + + private float computeMipLevel(float roughness, int numSamples, float size, float voH) { + // H[2] is NoH in local space + // adds 1.e-5 to avoid ggx / 0.0 + float NoH = voH + 1E-5f; + + // Probability Distribution Function + float Pdf = ggx(NoH, roughness) * NoH / (4.0f * voH); + + // Solid angle represented by this sample + float omegaS = 1.0f / (numSamples * Pdf); + + // Solid angle covered by 1 pixel with 6 faces that are EnvMapSize X EnvMapSize + float omegaP = 4.0f * FastMath.PI / (6.0f * size * size); + + // Original paper suggest biasing the mip to improve the results + float mipBias = 1.0f; // I tested that the result is better with bias 1 + double maxLod = Math.log(size) / Math.log(2f); + double log2 = Math.log(omegaS / omegaP) / Math.log(2); + return Math.min(Math.max(0.5f * (float) log2 + mipBias, 0.0f), (float) maxLod); + } + + + private float ggx(float NoH, float alpha) { + // use GGX / Trowbridge-Reitz, same as Disney and Unreal 4 + // cf http://blog.selfshadow.com/publications/s2013-shading-course/karis/s2013_pbs_epic_notes_v2.pdf p3 + float tmp = alpha / (NoH * NoH * (alpha * alpha - 1.0f) + 1.0f); + return tmp * tmp * (1f / FastMath.PI); + } + + private Vector3f rotateDirection(float angle, Vector3f l, Vector3f store) { + float s, c, t; + + s = FastMath.sin(angle); + c = FastMath.cos(angle); + t = 1.f - c; + + store.x = l.x * c + l.y * s; + store.y = -l.x * s + l.y * c; + store.z = l.z * (t + c); + return store; + } + + /** + * Computes GGX half vector in local space + * + * @param xi + * @param a2 + * @param store + * @return + */ + public Vector3f importanceSampleGGX(Vector4f xi, float a2, Vector3f store) { if (store == null) { store = new Vector3f(); } @@ -243,22 +345,9 @@ public class PrefilteredEnvMapFaceGenerator extends RunnableWithProgress { float sinThetaCosPhi = sinTheta * xi.z;//xi.z is cos(phi) float sinThetaSinPhi = sinTheta * xi.w;//xi.w is sin(phi) - Vector3f upVector = Vector3f.UNIT_X; - - if (abs(normal.z) < 0.999) { - upVector = Vector3f.UNIT_Y; - } - - Vector3f tangentX = tmp1.set(upVector).crossLocal(normal).normalizeLocal(); - Vector3f tangentY = tmp2.set(normal).crossLocal(tangentX); - - // Tangent to world space - tangentX.multLocal(sinThetaCosPhi); - tangentY.multLocal(sinThetaSinPhi); - tmp3.set(normal).multLocal(cosTheta); - - // Tangent to world space - store.set(tangentX).addLocal(tangentY).addLocal(tmp3); + store.x = sinThetaCosPhi; + store.y = sinThetaSinPhi; + store.z = cosTheta; return store; } diff --git a/jme3-core/src/main/java/com/jme3/environment/generation/RunnableWithProgress.java b/jme3-core/src/main/java/com/jme3/environment/generation/RunnableWithProgress.java index 09b495e67..33fc922c6 100644 --- a/jme3-core/src/main/java/com/jme3/environment/generation/RunnableWithProgress.java +++ b/jme3-core/src/main/java/com/jme3/environment/generation/RunnableWithProgress.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -61,7 +61,7 @@ public abstract class RunnableWithProgress implements Runnable { } /** - * return the curent progress of the process. + * return the current progress of the process. * * @return */ diff --git a/jme3-core/src/main/java/com/jme3/environment/util/CubeMapWrapper.java b/jme3-core/src/main/java/com/jme3/environment/util/CubeMapWrapper.java index cdf66a6d1..7226f9610 100644 --- a/jme3-core/src/main/java/com/jme3/environment/util/CubeMapWrapper.java +++ b/jme3-core/src/main/java/com/jme3/environment/util/CubeMapWrapper.java @@ -31,17 +31,15 @@ */ package com.jme3.environment.util; -import com.jme3.environment.util.EnvMapUtils; -import com.jme3.math.ColorRGBA; -import static com.jme3.math.FastMath.pow; -import com.jme3.math.Vector2f; -import com.jme3.math.Vector3f; +import com.jme3.math.*; import com.jme3.texture.Image; import com.jme3.texture.TextureCubeMap; import com.jme3.texture.image.DefaultImageRaster; import com.jme3.texture.image.MipMapImageRaster; import com.jme3.util.BufferUtils; +import static com.jme3.math.FastMath.pow; + /** * Wraps a Cube map and allows to read from or write pixels into it. * @@ -57,6 +55,8 @@ public class CubeMapWrapper { private final Vector2f uvs = new Vector2f(); private final Image image; + private final ColorRGBA tmpColor = new ColorRGBA(); + /** * Creates a CubeMapWrapper for the given cube map * Note that the cube map must be initialized, and the mipmaps sizes should @@ -105,7 +105,7 @@ public class CubeMapWrapper { * @param store the color in which to store the pixel color read. * @return the color of the pixel read. */ - public ColorRGBA getPixel(Vector3f vector, int mipLevel, ColorRGBA store) { + public ColorRGBA getPixel(Vector3f vector, float mipLevel, ColorRGBA store) { if (mipMapRaster == null) { throw new IllegalArgumentException("This cube map has no mip maps"); } @@ -113,10 +113,26 @@ public class CubeMapWrapper { store = new ColorRGBA(); } - int face = EnvMapUtils.getCubemapFaceTexCoordFromVector(vector, sizes[mipLevel], uvs, EnvMapUtils.FixSeamsMethod.Stretch); + int lowerMipLevel = (int) mipLevel; + int higherMipLevel = (int) FastMath.ceil(mipLevel); + float ratio = mipLevel - lowerMipLevel; + + int face = EnvMapUtils.getCubemapFaceTexCoordFromVector(vector, sizes[lowerMipLevel], uvs, EnvMapUtils.FixSeamsMethod.Stretch); mipMapRaster.setSlice(face); - mipMapRaster.setMipLevel(mipLevel); - return mipMapRaster.getPixel((int) uvs.x, (int) uvs.y, store); + mipMapRaster.setMipLevel(lowerMipLevel); + mipMapRaster.getPixel((int) uvs.x, (int) uvs.y, store); + + face = EnvMapUtils.getCubemapFaceTexCoordFromVector(vector, sizes[higherMipLevel], uvs, EnvMapUtils.FixSeamsMethod.Stretch); + mipMapRaster.setSlice(face); + mipMapRaster.setMipLevel(higherMipLevel); + mipMapRaster.getPixel((int) uvs.x, (int) uvs.y, tmpColor); + + store.r = FastMath.interpolateLinear(ratio, store.r, tmpColor.r); + store.g = FastMath.interpolateLinear(ratio, store.g, tmpColor.g); + store.b = FastMath.interpolateLinear(ratio, store.b, tmpColor.b); + store.a = FastMath.interpolateLinear(ratio, store.a, tmpColor.a); + + return store; } /** diff --git a/jme3-core/src/main/java/com/jme3/environment/util/EnvMapUtils.java b/jme3-core/src/main/java/com/jme3/environment/util/EnvMapUtils.java index 4598ec0d6..91b65655e 100644 --- a/jme3-core/src/main/java/com/jme3/environment/util/EnvMapUtils.java +++ b/jme3-core/src/main/java/com/jme3/environment/util/EnvMapUtils.java @@ -37,18 +37,15 @@ import com.jme3.math.*; import com.jme3.scene.Geometry; import com.jme3.scene.Node; import com.jme3.scene.shape.Quad; -import com.jme3.texture.Image; -import com.jme3.texture.Texture; -import com.jme3.texture.Texture2D; -import com.jme3.texture.TextureCubeMap; +import com.jme3.texture.*; import com.jme3.texture.image.ColorSpace; import com.jme3.ui.Picture; import com.jme3.util.BufferUtils; +import com.jme3.util.TempVars; + import java.nio.ByteBuffer; -import java.util.ArrayList; -import static com.jme3.math.FastMath.*; -import com.jme3.util.TempVars; +import static com.jme3.math.FastMath.*; /** * @@ -88,6 +85,11 @@ public class EnvMapUtils { None } + public static enum GenerationType { + Fast, + HighQuality + } + /** * Creates a cube map from 6 images * @@ -117,6 +119,8 @@ public class EnvMapUtils { cubeImage.addData(backImg.getData(0)); cubeImage.addData(frontImg.getData(0)); + cubeImage.setMipMapSizes(rightImg.getMipMapSizes()); + TextureCubeMap cubeMap = new TextureCubeMap(cubeImage); cubeMap.setAnisotropicFilter(0); cubeMap.setMagFilter(Texture.MagFilter.Bilinear); @@ -148,6 +152,8 @@ public class EnvMapUtils { cubeImage.addData(d.duplicate()); } + cubeImage.setMipMapSizes(srcImg.getMipMapSizes()); + TextureCubeMap cubeMap = new TextureCubeMap(cubeImage); cubeMap.setAnisotropicFilter(sourceMap.getAnisotropicFilter()); cubeMap.setMagFilter(sourceMap.getMagFilter()); @@ -730,7 +736,7 @@ public class EnvMapUtils { pem.setMagFilter(Texture.MagFilter.Bilinear); pem.setMinFilter(Texture.MinFilter.Trilinear); pem.getImage().setColorSpace(ColorSpace.Linear); - int nbMipMap = (int) (Math.log(size) / Math.log(2) - 1); + int nbMipMap = Math.min(6, (int) (Math.log(size) / Math.log(2))); CubeMapWrapper targetWrapper = new CubeMapWrapper(pem); targetWrapper.initMipMaps(nbMipMap); return pem; diff --git a/jme3-core/src/main/java/com/jme3/environment/util/LightsDebugState.java b/jme3-core/src/main/java/com/jme3/environment/util/LightsDebugState.java index 17ccc99f3..3d41148c4 100644 --- a/jme3-core/src/main/java/com/jme3/environment/util/LightsDebugState.java +++ b/jme3-core/src/main/java/com/jme3/environment/util/LightsDebugState.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -114,7 +114,7 @@ public class LightsDebugState extends BaseAppState { } /** - * Set the scenes for wich to render light gizmos. + * Set the scenes for which to render light gizmos. * @param scene */ public void setScene(Spatial scene) { diff --git a/jme3-core/src/main/java/com/jme3/input/ChaseCamera.java b/jme3-core/src/main/java/com/jme3/input/ChaseCamera.java index 3f8576ddf..c185393f2 100644 --- a/jme3-core/src/main/java/com/jme3/input/ChaseCamera.java +++ b/jme3-core/src/main/java/com/jme3/input/ChaseCamera.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,7 +34,6 @@ package com.jme3.input; import com.jme3.export.InputCapsule; import com.jme3.export.JmeExporter; import com.jme3.export.JmeImporter; -import com.jme3.export.OutputCapsule; import com.jme3.input.controls.*; import com.jme3.math.FastMath; import com.jme3.math.Vector3f; @@ -420,7 +419,7 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control, Jme //the user is rotating the cam by dragging the mouse if (canRotate) { - //reseting the trailing lerp factor + //reset the trailing lerp factor trailingLerpFactor = 0; //stop trailing user has the control trailing = false; @@ -582,18 +581,17 @@ public class ChaseCamera implements ActionListener, AnalogListener, Control, Jme /** * clone this camera for a spatial + * * @param spatial * @return */ + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - ChaseCamera cc = new ChaseCamera(cam, spatial, inputManager); - cc.setMaxDistance(getMaxDistance()); - cc.setMinDistance(getMinDistance()); - return cc; + throw new UnsupportedOperationException(); } - @Override + @Override public Object jmeClone() { ChaseCamera cc = new ChaseCamera(cam, inputManager); cc.target = target; diff --git a/jme3-core/src/main/java/com/jme3/input/InputManager.java b/jme3-core/src/main/java/com/jme3/input/InputManager.java index b21d225bb..63d90078f 100644 --- a/jme3-core/src/main/java/com/jme3/input/InputManager.java +++ b/jme3-core/src/main/java/com/jme3/input/InputManager.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -423,15 +423,22 @@ public class InputManager implements RawInputListener { /** * Callback from RawInputListener. Do not use. + * + * @param evt event to add to the input queue (not null) */ @Override public void onMouseMotionEvent(MouseMotionEvent evt) { - if (!eventsPermitted) { - throw new UnsupportedOperationException("MouseInput has raised an event at an illegal time."); - } - + /* + * If events aren't allowed, the event may be a "first mouse event" + * triggered by the constructor setting the mouse listener. + * In that case, use the event to initialize the cursor position, + * but don't queue it for further processing. + * This is part of the fix for issue #792. + */ cursorPos.set(evt.getX(), evt.getY()); - inputQueue.add(evt); + if (eventsPermitted) { + inputQueue.add(evt); + } } private void onMouseButtonEventQueued(MouseButtonEvent evt) { @@ -867,7 +874,7 @@ public class InputManager implements RawInputListener { // larynx, 2011.06.10 - flag event as reusable because // the android input uses a non-allocating ringbuffer which // needs to know when the event is not anymore in inputQueue - // and therefor can be reused. + // and therefore can be reused. event.setConsumed(); } diff --git a/jme3-core/src/main/java/com/jme3/input/Joystick.java b/jme3-core/src/main/java/com/jme3/input/Joystick.java index ced1d962a..8c55c906e 100644 --- a/jme3-core/src/main/java/com/jme3/input/Joystick.java +++ b/jme3-core/src/main/java/com/jme3/input/Joystick.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -123,7 +123,7 @@ public interface Joystick { /** * Returns the POV Y axis for this joystick. This is a convenience axis - * providing an y-axis subview of the HAT axis. + * providing a y-axis subview of the HAT axis. * * @see JoystickAxis#assignAxis(java.lang.String, java.lang.String) */ diff --git a/jme3-core/src/main/java/com/jme3/input/KeyInput.java b/jme3-core/src/main/java/com/jme3/input/KeyInput.java index 9ad78ed7b..8a0f72245 100644 --- a/jme3-core/src/main/java/com/jme3/input/KeyInput.java +++ b/jme3-core/src/main/java/com/jme3/input/KeyInput.java @@ -445,6 +445,16 @@ public interface KeyInput extends Input { * (J3100). */ public static final int KEY_UNLABELED = 0x97; + /** + * PrtScr key. + * Note: for use on keyboards with a PrtScr key that is + * separate from the SysRq key. Most keyboards combine + * SysRq and PrtScr so if the intent is to actually + * capture the user's desire to capture the screen + * then SysRq is the most likely scan code. + * Use PrtScr to catch the rest (laptops, mini-keyboards, etc.) + */ + public static final int KEY_PRTSCR = 0x9A; /** * Enter key (num pad). */ diff --git a/jme3-core/src/main/java/com/jme3/light/LightProbe.java b/jme3-core/src/main/java/com/jme3/light/LightProbe.java index 1cc713445..2b962fc97 100644 --- a/jme3-core/src/main/java/com/jme3/light/LightProbe.java +++ b/jme3-core/src/main/java/com/jme3/light/LightProbe.java @@ -127,15 +127,13 @@ public class LightProbe extends Light implements Savable { public void read(JmeImporter im) throws IOException { super.read(im); InputCapsule ic = im.getCapsule(this); - - + prefilteredEnvMap = (TextureCubeMap) ic.readSavable("prefilteredEnvMap", null); - position = (Vector3f) ic.readSavable("position", this); + position = (Vector3f) ic.readSavable("position", null); bounds = (BoundingVolume) ic.readSavable("bounds", new BoundingSphere(1.0f, Vector3f.ZERO)); nbMipMaps = ic.readInt("nbMipMaps", 0); ready = ic.readBoolean("ready", false); - Savable[] coeffs = ic.readSavableArray("shCoeffs", null); if (coeffs == null) { ready = false; @@ -145,7 +143,6 @@ public class LightProbe extends Light implements Savable { for (int i = 0; i < coeffs.length; i++) { shCoeffs[i] = (Vector3f) coeffs[i]; } - } } diff --git a/jme3-core/src/main/java/com/jme3/light/LightProbeBlendingStrategy.java b/jme3-core/src/main/java/com/jme3/light/LightProbeBlendingStrategy.java index a3a6ac516..824c94bb1 100644 --- a/jme3-core/src/main/java/com/jme3/light/LightProbeBlendingStrategy.java +++ b/jme3-core/src/main/java/com/jme3/light/LightProbeBlendingStrategy.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -48,7 +48,7 @@ public interface LightProbeBlendingStrategy { public void registerProbe(LightProbe probe); /** * Populates the resulting light probes into the given light list. - * @param g the geometry for wich the light list is computed + * @param g the geometry for which the light list is computed * @param lightList the result light list */ public void populateProbes(Geometry g, LightList lightList); diff --git a/jme3-core/src/main/java/com/jme3/light/PointLight.java b/jme3-core/src/main/java/com/jme3/light/PointLight.java index 2e8a57882..69c096790 100644 --- a/jme3-core/src/main/java/com/jme3/light/PointLight.java +++ b/jme3-core/src/main/java/com/jme3/light/PointLight.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012, 2015-2016 jMonkeyEngine + * Copyright (c) 2009-2012, 2015-2016, 2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -54,7 +54,7 @@ import java.io.IOException; *

* In addition to a position, point lights also have a radius which * can be used to attenuate the influence of the light depending on the - * distance between the light and the effected object. + * distance between the light and the affected object. * */ public class PointLight extends Light { @@ -155,7 +155,7 @@ public class PointLight extends Light { * Setting a non-zero radius indicates the light should use attenuation. * If a pixel's distance to this light's position * is greater than the light's radius, then the pixel will not be - * effected by this light, if the distance is less than the radius, then + * affected by this light, if the distance is less than the radius, then * the magnitude of the influence is equal to distance / radius. * * @param radius the radius of the light influence. diff --git a/jme3-core/src/main/java/com/jme3/light/SpotLight.java b/jme3-core/src/main/java/com/jme3/light/SpotLight.java index 70115bbc5..2025ce414 100644 --- a/jme3-core/src/main/java/com/jme3/light/SpotLight.java +++ b/jme3-core/src/main/java/com/jme3/light/SpotLight.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012, 2015-2016 jMonkeyEngine + * Copyright (c) 2009-2012, 2015-2016, 2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -337,7 +337,7 @@ public class SpotLight extends Light { * Setting a non-zero range indicates the light should use attenuation. * If a pixel's distance to this light's position * is greater than the light's range, then the pixel will not be - * effected by this light, if the distance is less than the range, then + * affected by this light, if the distance is less than the range, then * the magnitude of the influence is equal to distance / range. * * @param spotRange the range of the light influence. diff --git a/jme3-core/src/main/java/com/jme3/material/Materials.java b/jme3-core/src/main/java/com/jme3/material/Materials.java new file mode 100644 index 000000000..00959d15e --- /dev/null +++ b/jme3-core/src/main/java/com/jme3/material/Materials.java @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2009-2018 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.material; + +/** + * This class is to provide some constants materials. + * + * @author oualid + */ +public class Materials { + + public static final String UNSHADED = "Common/MatDefs/Misc/Unshaded.j3md"; + public static final String LIGHTING = "Common/MatDefs/Light/Lighting.j3md"; + public static final String PBR = "Common/MatDefs/Light/PBRLighting.j3md"; + +} \ No newline at end of file diff --git a/jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java b/jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java index dda02c67c..3a42ee328 100644 --- a/jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java +++ b/jme3-core/src/main/java/com/jme3/material/ShaderGenerationInfo.java @@ -206,7 +206,9 @@ public class ShaderGenerationInfo implements Savable, Cloneable { clone.vertexUniforms.add(uniform.clone()); } - clone.vertexGlobal = vertexGlobal.clone(); + if (vertexGlobal != null) { + clone.vertexGlobal = vertexGlobal.clone(); + } for (ShaderNodeVariable varying : varyings) { clone.varyings.add(varying.clone()); diff --git a/jme3-core/src/main/java/com/jme3/material/TechniqueDef.java b/jme3-core/src/main/java/com/jme3/material/TechniqueDef.java index 882d2b63a..1b0111522 100644 --- a/jme3-core/src/main/java/com/jme3/material/TechniqueDef.java +++ b/jme3-core/src/main/java/com/jme3/material/TechniqueDef.java @@ -188,6 +188,7 @@ public class TechniqueDef implements Savable, Cloneable { defineTypes = new ArrayList(); paramToDefineId = new HashMap(); definesToShaderMap = new HashMap(); + worldBinds = new ArrayList<>(); } /** @@ -513,10 +514,8 @@ public class TechniqueDef implements Savable, Cloneable { } } - if (getWorldBindings() != null) { - for (UniformBinding binding : getWorldBindings()) { - shader.addUniformBinding(binding); - } + for (final UniformBinding binding : getWorldBindings()) { + shader.addUniformBinding(binding); } return shader; @@ -625,14 +624,10 @@ public class TechniqueDef implements Savable, Cloneable { * to the list of world parameters, false otherwise. */ public boolean addWorldParam(String name) { - if (worldBinds == null){ - worldBinds = new ArrayList(); - } - try { - worldBinds.add( UniformBinding.valueOf(name) ); + worldBinds.add(UniformBinding.valueOf(name)); return true; - } catch (IllegalArgumentException ex){ + } catch (IllegalArgumentException ex) { return false; } } @@ -821,10 +816,8 @@ public class TechniqueDef implements Savable, Cloneable { e.printStackTrace(); } - if (worldBinds != null) { - clone.worldBinds = new ArrayList<>(worldBinds.size()); - clone.worldBinds.addAll(worldBinds); - } + clone.worldBinds = new ArrayList<>(worldBinds.size()); + clone.worldBinds.addAll(worldBinds); return clone; } diff --git a/jme3-core/src/main/java/com/jme3/material/logic/SinglePassAndImageBasedLightingLogic.java b/jme3-core/src/main/java/com/jme3/material/logic/SinglePassAndImageBasedLightingLogic.java index 339655f9e..2a42a8440 100644 --- a/jme3-core/src/main/java/com/jme3/material/logic/SinglePassAndImageBasedLightingLogic.java +++ b/jme3-core/src/main/java/com/jme3/material/logic/SinglePassAndImageBasedLightingLogic.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -119,7 +119,7 @@ public final class SinglePassAndImageBasedLightingLogic extends DefaultTechnique Uniform lightProbeData = shader.getUniform("g_LightProbeData"); lightProbeData.setVector4Length(1); - //TODO These 2 uniforms should be packed in an array, to ba able to have several probes and blend between them. + //TODO These 2 uniforms should be packed in an array, to be able to have several probes and blend between them. Uniform shCoeffs = shader.getUniform("g_ShCoeffs"); Uniform lightProbePemMap = shader.getUniform("g_PrefEnvMap"); diff --git a/jme3-core/src/main/java/com/jme3/math/ColorRGBA.java b/jme3-core/src/main/java/com/jme3/math/ColorRGBA.java index 89df1bb2b..9180c69a6 100644 --- a/jme3-core/src/main/java/com/jme3/math/ColorRGBA.java +++ b/jme3-core/src/main/java/com/jme3/math/ColorRGBA.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine All rights reserved. + * Copyright (c) 2009-2018 jMonkeyEngine All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions are met: @@ -562,7 +562,7 @@ public final class ColorRGBA implements Savable, Cloneable, java.io.Serializable /** * Transform this ColorRGBA to a Vector3f using * x = r, y = g, z = b. The Alpha value is not used. - * This method is useful to use for shaders assignment. + * This method is useful for shader assignments. * @return A Vector3f containing the RGB value of this ColorRGBA. */ public Vector3f toVector3f() { @@ -572,7 +572,7 @@ public final class ColorRGBA implements Savable, Cloneable, java.io.Serializable /** * Transform this ColorRGBA to a Vector4f using * x = r, y = g, z = b, w = a. - * This method is useful to use for shaders assignment. + * This method is useful for shader assignments. * @return A Vector4f containing the RGBA value of this ColorRGBA. */ public Vector4f toVector4f() { @@ -587,8 +587,8 @@ public final class ColorRGBA implements Savable, Cloneable, java.io.Serializable * Note that the values will be gamma corrected to be stored in linear space * GAMMA value is 2.2 * - * Note that no correction will be performed on the alpha channel as it's - * conventionnally doesn't represent a color itself + * Note that no correction will be performed on the alpha channel as it + * conventionally doesn't represent a color itself * * @param r the red value in sRGB color space * @param g the green value in sRGB color space diff --git a/jme3-core/src/main/java/com/jme3/math/FastMath.java b/jme3-core/src/main/java/com/jme3/math/FastMath.java index c1c3fa8a9..1bbf37fca 100644 --- a/jme3-core/src/main/java/com/jme3/math/FastMath.java +++ b/jme3-core/src/main/java/com/jme3/math/FastMath.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -860,7 +860,7 @@ final public class FastMath { } /** - * Takes an value and expresses it in terms of min to max. + * Takes a value and expresses it in terms of min to max. * * @param val - * the angle to normalize (in radians) diff --git a/jme3-core/src/main/java/com/jme3/math/Plane.java b/jme3-core/src/main/java/com/jme3/math/Plane.java index e8d1b328e..81dd3a5cb 100644 --- a/jme3-core/src/main/java/com/jme3/math/Plane.java +++ b/jme3-core/src/main/java/com/jme3/math/Plane.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,6 +43,7 @@ import java.util.logging.Logger; * * @author Mark Powell * @author Joshua Slack + * @author Ian McClean */ public class Plane implements Savable, Cloneable, java.io.Serializable { @@ -92,6 +93,16 @@ public class Plane implements Savable, Cloneable, java.io.Serializable { this.constant = constant; } + /** + * Constructor instantiates a new Plane object. + * + * @param normal The normal of the plane. + * @param displacement A vector representing a point on the plane. + */ + public Plane(Vector3f normal, Vector3f displacement) { + this(normal, displacement.dot(normal)); + } + /** * setNormal sets the normal of the plane. * diff --git a/jme3-core/src/main/java/com/jme3/math/Quaternion.java b/jme3-core/src/main/java/com/jme3/math/Quaternion.java index 1ee1305d2..89c7d8647 100644 --- a/jme3-core/src/main/java/com/jme3/math/Quaternion.java +++ b/jme3-core/src/main/java/com/jme3/math/Quaternion.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -217,7 +217,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl /** * fromAngles builds a quaternion from the Euler rotation - * angles (y,r,p). + * angles (x,y,z) aka (pitch, yaw, roll). * * @param angles * the Euler angles of rotation (in radians). @@ -233,7 +233,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl /** * fromAngles builds a Quaternion from the Euler rotation - * angles (x,y,z) aka (pitch, yaw, rall)). Note that we are applying in order: (y, z, x) aka (yaw, roll, pitch) but + * angles (x,y,z) aka (pitch, yaw, roll)). Note that we are applying in order: (y, z, x) aka (yaw, roll, pitch) but * we've ordered them in x, y, and z for convenience. * @see http://www.euclideanspace.com/maths/geometry/rotations/conversions/eulerToQuaternion/index.htm * @@ -276,8 +276,8 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl } /** - * toAngles returns this quaternion converted to Euler - * rotation angles (yaw,roll,pitch).
+ * toAngles returns this quaternion converted to Euler rotation + * angles (x,y,z) aka (pitch, yaw, roll).
* Note that the result is not always 100% accurate due to the implications of euler angles. * @see http://www.euclideanspace.com/maths/geometry/rotations/conversions/quaternionToEuler/index.htm * @@ -309,9 +309,9 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl angles[2] = -FastMath.HALF_PI; angles[0] = 0; } else { - angles[1] = FastMath.atan2(2 * y * w - 2 * x * z, sqx - sqy - sqz + sqw); // roll or heading - angles[2] = FastMath.asin(2 * test / unit); // pitch or attitude - angles[0] = FastMath.atan2(2 * x * w - 2 * y * z, -sqx + sqy - sqz + sqw); // yaw or bank + angles[1] = FastMath.atan2(2 * y * w - 2 * x * z, sqx - sqy - sqz + sqw); // yaw or heading + angles[2] = FastMath.asin(2 * test / unit); // roll or bank + angles[0] = FastMath.atan2(2 * x * w - 2 * y * z, -sqx + sqy - sqz + sqw); // pitch or attitude } return angles; } @@ -689,7 +689,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl float invSinTheta = 1f / FastMath.sin(theta); // Calculate the scale for q1 and q2, according to the angle and - // it's sine value + // its sine scale0 = FastMath.sin((1 - t) * theta) * invSinTheta; scale1 = FastMath.sin((t * theta)) * invSinTheta; } @@ -746,7 +746,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl float invSinTheta = 1f / FastMath.sin(theta); // Calculate the scale for q1 and q2, according to the angle and - // it's sine value + // its sine scale0 = FastMath.sin((1 - changeAmnt) * theta) * invSinTheta; scale1 = FastMath.sin((changeAmnt * theta)) * invSinTheta; } @@ -1161,7 +1161,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl /** * inverse calculates the inverse of this quaternion and * returns this quaternion after it is calculated. If this quaternion does - * not have an inverse (if it's normal is 0 or less), nothing happens + * not have an inverse (if its normal is 0 or less), nothing happens * * @return the inverse of this quaternion */ @@ -1343,7 +1343,7 @@ public final class Quaternion implements Savable, Cloneable, java.io.Serializabl * @param store * A Quaternion to store our result in. If null, a new one is * created. - * @return The store quaternion (or a new Quaterion, if store is null) that + * @return The store quaternion (or a new Quaternion, if store is null) that * describes a rotation that would point you in the exact opposite * direction of this Quaternion. */ diff --git a/jme3-core/src/main/java/com/jme3/math/Ray.java b/jme3-core/src/main/java/com/jme3/math/Ray.java index 20da7e5d8..8b2ab216b 100644 --- a/jme3-core/src/main/java/com/jme3/math/Ray.java +++ b/jme3-core/src/main/java/com/jme3/math/Ray.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ public final class Ray implements Savable, Cloneable, Collidable, java.io.Serial static final long serialVersionUID = 1; /** - * The ray's begining point. + * The ray's beginning point. */ public Vector3f origin = new Vector3f(); @@ -191,9 +191,9 @@ public final class Ray implements Savable, Cloneable, Collidable, java.io.Serial * @param v2 * third point of the triangle. * @param store - * storage vector - if null, no intersection is calc'd + * storage vector - if null, no intersection is calculated * @param doPlanar - * true if we are calcing planar results. + * true if we are calculating planar results. * @param quad * @return true if ray intersects triangle */ diff --git a/jme3-core/src/main/java/com/jme3/math/Transform.java b/jme3-core/src/main/java/com/jme3/math/Transform.java index 5d8899892..6fb29c99b 100644 --- a/jme3-core/src/main/java/com/jme3/math/Transform.java +++ b/jme3-core/src/main/java/com/jme3/math/Transform.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -175,7 +175,7 @@ public final class Transform implements Savable, Cloneable, java.io.Serializable /** * Sets this matrix to the interpolation between the first matrix and the second by delta amount. - * @param t1 The begining transform. + * @param t1 The beginning transform. * @param t2 The ending transform. * @param delta An amount between 0 and 1 representing how far to interpolate from t1 to t2. */ @@ -186,7 +186,7 @@ public final class Transform implements Savable, Cloneable, java.io.Serializable } /** - * Changes the values of this matrix according to it's parent. Very similar to the concept of Node/Spatial transforms. + * Changes the values of this matrix according to its parent. Very similar to the concept of Node/Spatial transforms. * @param parent The parent matrix. * @return This matrix, after combining. */ @@ -245,7 +245,7 @@ public final class Transform implements Savable, Cloneable, java.io.Serializable store = new Vector3f(); // The author of this code should look above and take the inverse of that - // But for some reason, they didnt .. + // But for some reason, they didn't .. // in.subtract(translation, store).divideLocal(scale); // rot.inverse().mult(store, store); diff --git a/jme3-core/src/main/java/com/jme3/math/Vector2f.java b/jme3-core/src/main/java/com/jme3/math/Vector2f.java index c1c2bcba4..1ad2ac0c6 100644 --- a/jme3-core/src/main/java/com/jme3/math/Vector2f.java +++ b/jme3-core/src/main/java/com/jme3/math/Vector2f.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -248,11 +248,11 @@ public final class Vector2f implements Savable, Cloneable, java.io.Serializable * finalVec this=(1-changeAmnt)*beginVec + changeAmnt * finalVec * * @param beginVec - * The begining vector (delta=0) + * The beginning vector (delta=0) * @param finalVec * The final vector to interpolate towards (delta=1) * @param changeAmnt - * An amount between 0.0 - 1.0 representing a precentage change + * An amount between 0.0 - 1.0 representing a percentage change * from beginVec towards finalVec */ public Vector2f interpolateLocal(Vector2f beginVec, Vector2f finalVec, @@ -363,7 +363,7 @@ public final class Vector2f implements Savable, Cloneable, java.io.Serializable } /** - * multLocal multiplies a provided vector to this vector + * multLocal multiplies a provided vector by this vector * internally, and returns a handle to this vector for easy chaining of * calls. If the provided vector is null, null is returned. * @@ -579,7 +579,7 @@ public final class Vector2f implements Savable, Cloneable, java.io.Serializable /** * angleBetween returns (in radians) the angle required to - * rotate a ray represented by this vector to lie colinear to a ray + * rotate a ray represented by this vector to be colinear with a ray * described by the given vector. It is assumed that both this vector and * the given vector are unit vectors (iow, normalized). * @@ -631,7 +631,7 @@ public final class Vector2f implements Savable, Cloneable, java.io.Serializable /** * hashCode returns a unique code for this vector object - * based on it's values. If two vectors are logically equivalent, they will + * based on its values. If two vectors are logically equivalent, they will * return the same hash code value. * * @return the hash code value of this vector. diff --git a/jme3-core/src/main/java/com/jme3/math/Vector3f.java b/jme3-core/src/main/java/com/jme3/math/Vector3f.java index 37c92c10f..d5fdac06c 100644 --- a/jme3-core/src/main/java/com/jme3/math/Vector3f.java +++ b/jme3-core/src/main/java/com/jme3/math/Vector3f.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -321,7 +321,7 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable * the vector to take the cross product of with this. * @param result * the vector to store the cross product result. - * @return result, after recieving the cross product vector. + * @return result, after receiving the cross product vector. */ public Vector3f cross(Vector3f v,Vector3f result) { return cross(v.x, v.y, v.z, result); @@ -339,7 +339,7 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable * z component of the vector to take the cross product of with this. * @param result * the vector to store the cross product result. - * @return result, after recieving the cross product vector. + * @return result, after receiving the cross product vector. */ public Vector3f cross(float otherX, float otherY, float otherZ, Vector3f result) { if (result == null) result = new Vector3f(); @@ -851,7 +851,7 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable * Sets this vector to the interpolation by changeAmnt from this to the finalVec * this=(1-changeAmnt)*this + changeAmnt * finalVec * @param finalVec The final vector to interpolate towards - * @param changeAmnt An amount between 0.0 - 1.0 representing a precentage + * @param changeAmnt An amount between 0.0 - 1.0 representing a percentage * change from this towards finalVec */ public Vector3f interpolateLocal(Vector3f finalVec, float changeAmnt) { @@ -864,9 +864,9 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable /** * Sets this vector to the interpolation by changeAmnt from beginVec to finalVec * this=(1-changeAmnt)*beginVec + changeAmnt * finalVec - * @param beginVec the beging vector (changeAmnt=0) + * @param beginVec the beginning vector (changeAmnt=0) * @param finalVec The final vector to interpolate towards - * @param changeAmnt An amount between 0.0 - 1.0 representing a precentage + * @param changeAmnt An amount between 0.0 - 1.0 representing a percentage * change from beginVec towards finalVec */ public Vector3f interpolateLocal(Vector3f beginVec,Vector3f finalVec, float changeAmnt) { @@ -972,7 +972,7 @@ public final class Vector3f implements Savable, Cloneable, java.io.Serializable /** * hashCode returns a unique code for this vector object based - * on it's values. If two vectors are logically equivalent, they will return + * on its values. If two vectors are logically equivalent, they will return * the same hash code value. * @return the hash code value of this vector. */ diff --git a/jme3-core/src/main/java/com/jme3/math/Vector4f.java b/jme3-core/src/main/java/com/jme3/math/Vector4f.java index a5b394d3d..2993c4f0c 100644 --- a/jme3-core/src/main/java/com/jme3/math/Vector4f.java +++ b/jme3-core/src/main/java/com/jme3/math/Vector4f.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -780,7 +780,7 @@ public final class Vector4f implements Savable, Cloneable, java.io.Serializable * Sets this vector to the interpolation by changeAmnt from this to the finalVec * this=(1-changeAmnt)*this + changeAmnt * finalVec * @param finalVec The final vector to interpolate towards - * @param changeAmnt An amount between 0.0 - 1.0 representing a precentage + * @param changeAmnt An amount between 0.0 - 1.0 representing a percentage * change from this towards finalVec */ public Vector4f interpolateLocal(Vector4f finalVec, float changeAmnt) { @@ -794,9 +794,9 @@ public final class Vector4f implements Savable, Cloneable, java.io.Serializable /** * Sets this vector to the interpolation by changeAmnt from beginVec to finalVec * this=(1-changeAmnt)*beginVec + changeAmnt * finalVec - * @param beginVec the beging vector (changeAmnt=0) + * @param beginVec the beginning vector (changeAmnt=0) * @param finalVec The final vector to interpolate towards - * @param changeAmnt An amount between 0.0 - 1.0 representing a precentage + * @param changeAmnt An amount between 0.0 - 1.0 representing a percentage * change from beginVec towards finalVec */ public Vector4f interpolateLocal(Vector4f beginVec,Vector4f finalVec, float changeAmnt) { @@ -877,7 +877,7 @@ public final class Vector4f implements Savable, Cloneable, java.io.Serializable /** * hashCode returns a unique code for this vector object based - * on it's values. If two vectors are logically equivalent, they will return + * on its values. If two vectors are logically equivalent, they will return * the same hash code value. * @return the hash code value of this vector. */ diff --git a/jme3-core/src/main/java/com/jme3/opencl/Context.java b/jme3-core/src/main/java/com/jme3/opencl/Context.java index 52d5eba24..b53906a3c 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/Context.java +++ b/jme3-core/src/main/java/com/jme3/opencl/Context.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2016 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -434,7 +434,7 @@ public abstract class Context extends AbstractOpenCLObject { * this method and {@code Program#build(..)} must be the same. * * The binaries are used to build a program cache across multiple launches - * of the application. The programs build mach faster from binaries than + * of the application. The programs build much faster from binaries than * from sources. * * @param binaries the binaries diff --git a/jme3-core/src/main/java/com/jme3/opencl/Device.java b/jme3-core/src/main/java/com/jme3/opencl/Device.java index d34854c0c..3529a2570 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/Device.java +++ b/jme3-core/src/main/java/com/jme3/opencl/Device.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2016 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,7 +35,7 @@ import java.util.Collection; /** * Represents a hardware device actually running the OpenCL kernels. - * A {@link Context} can be accociated with multiple {@code Devices} + * A {@link Context} can be associated with multiple {@code Devices} * that all belong to the same {@link Platform}. * For execution, a single device must be chosen and passed to a command * queue ({@link Context#createQueue(com.jme3.opencl.Device) }). @@ -47,7 +47,7 @@ import java.util.Collection; public interface Device { /** - * @return the platform accociated with this device + * @return the platform associated with this device */ Platform getPlatform(); @@ -108,7 +108,7 @@ public interface Device { */ boolean hasOpenGLInterop(); /** - * Explicetly tests for the availability of the specified extension + * Explictly tests for the availability of the specified extension * @param extension the name of the extension * @return {@code true} iff this extension is supported */ @@ -138,7 +138,7 @@ public interface Device { * size specified as an unsigned integer value * in bits. Currently supported values are 32 * or 64 bits. - * @return the size of an adress + * @return the size of an address */ int getAddressBits(); /** diff --git a/jme3-core/src/main/java/com/jme3/opencl/Kernel.java b/jme3-core/src/main/java/com/jme3/opencl/Kernel.java index 1105a2504..245657c63 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/Kernel.java +++ b/jme3-core/src/main/java/com/jme3/opencl/Kernel.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2016 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -55,7 +55,7 @@ import java.util.Arrays; * Again, the threads inside the work group can be organized in a 1D, 2D or 3D * grid, but this is also just a logical view (specifying how the threads are * indexed). - * The work group is imporatant for another concept: shared memory + * The work group is important for another concept: shared memory * Unlike the normal global or constant memory (passing a {@link Buffer} object * as argument), shared memory can't be set from outside. Shared memory is * allocated by the kernel and is only valid within the kernel. It is used @@ -202,7 +202,7 @@ public abstract class Kernel extends AbstractOpenCLObject { * Use this if you do not rely on specific work group layouts, i.e. * because shared memory is not used. * {@link #Run1(com.jme3.opencl.CommandQueue, com.jme3.opencl.Kernel.WorkSize, java.lang.Object...) } - * implicetly calls this mehtod. + * implicitly calls this method. */ public void setWorkGroupSizeToNull() { workGroupSize.set(1, 0, 0, 0); @@ -494,7 +494,7 @@ public abstract class Kernel extends AbstractOpenCLObject { * Therefore, an instance of this class must be set as an argument AFTER * the work group size has been specified. This is * ensured by {@link #Run2(com.jme3.opencl.CommandQueue, com.jme3.opencl.Kernel.WorkSize, com.jme3.opencl.Kernel.WorkSize, java.lang.Object...) }. - * This argument can't be used when no work group size was defined explicetly + * This argument can't be used when no work group size was defined explicitly * (e.g. by {@link #setWorkGroupSizeToNull()} or {@link #Run1(com.jme3.opencl.CommandQueue, com.jme3.opencl.Kernel.WorkSize, java.lang.Object...) }. */ public static final class LocalMemPerElement { diff --git a/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java b/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java index e664c90c2..feed31dec 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java +++ b/jme3-core/src/main/java/com/jme3/opencl/OpenCLObjectManager.java @@ -43,8 +43,8 @@ import java.util.logging.Logger; */ public class OpenCLObjectManager { private static final Logger LOG = Logger.getLogger(OpenCLObjectManager.class.getName()); - private static final Level LOG_LEVEL1 = Level.FINER; - private static final Level LOG_LEVEL2 = Level.FINE; + private static final Level LOG_LEVEL1 = Level.FINEST; + private static final Level LOG_LEVEL2 = Level.FINER; private static final OpenCLObjectManager INSTANCE = new OpenCLObjectManager(); private OpenCLObjectManager() {} diff --git a/jme3-core/src/main/java/com/jme3/opencl/package-info.java b/jme3-core/src/main/java/com/jme3/opencl/package-info.java index c96a026d1..36ad65eb4 100644 --- a/jme3-core/src/main/java/com/jme3/opencl/package-info.java +++ b/jme3-core/src/main/java/com/jme3/opencl/package-info.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2016 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -98,7 +98,7 @@ * need for intermediate events. (These intermediate events would be released * immediately). Therefore, the no-event alternatives increase the performance * because no additional event object has to be allocated and less system calls - * are neccessary. + * are necessary. * *

* Interoperability between OpenCL and jME3:
@@ -141,7 +141,7 @@ * {@link com.jme3.opencl.Program}, {@link com.jme3.opencl.Kernel} and * {@link com.jme3.opencl.Event}) * may throw the following exceptions in each method without being mentioned - * explicetly in the documentation: + * explicitly in the documentation: *

    *
  • {@code NullPointerException}: one of the arguments is {@code null} and * {@code null} is not allowed
  • diff --git a/jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java b/jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java index 8abda3da4..e69408157 100644 --- a/jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java +++ b/jme3-core/src/main/java/com/jme3/post/FilterPostProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -410,7 +410,7 @@ public class FilterPostProcessor implements SceneProcessor, Savable { public void cleanup() { if (viewPort != null) { - //reseting the viewport camera viewport to its initial value + //reset the viewport camera viewport to its initial value viewPort.getCamera().resize(originalWidth, originalHeight, true); viewPort.getCamera().setViewPort(left, right, bottom, top); viewPort.setOutputFrameBuffer(outputBuffer); diff --git a/jme3-core/src/main/java/com/jme3/renderer/Camera.java b/jme3-core/src/main/java/com/jme3/renderer/Camera.java index a684d360d..79dd24059 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/Camera.java +++ b/jme3-core/src/main/java/com/jme3/renderer/Camera.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -1221,7 +1221,7 @@ public class Camera implements Savable, Cloneable { projectionMatrix.fromFrustum(frustumNear, frustumFar, frustumLeft, frustumRight, frustumTop, frustumBottom, parallelProjection); // projectionMatrix.transposeLocal(); - // The frame is effected by the frustum values + // The frame is affected by the frustum values // update it as well onFrameChange(); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/Caps.java b/jme3-core/src/main/java/com/jme3/renderer/Caps.java index 91a54c1e6..d8e73a36e 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/Caps.java +++ b/jme3-core/src/main/java/com/jme3/renderer/Caps.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -224,7 +224,7 @@ public enum Caps { */ GeometryShader, /** - * Supports Tesselation shader + * Supports Tessellation shader */ TesselationShader, /** diff --git a/jme3-core/src/main/java/com/jme3/renderer/RenderManager.java b/jme3-core/src/main/java/com/jme3/renderer/RenderManager.java index 6479b3221..12c0a1a85 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/RenderManager.java +++ b/jme3-core/src/main/java/com/jme3/renderer/RenderManager.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -708,7 +708,7 @@ public class RenderManager { // Saving cam state for culling int camState = vp.getCamera().getPlaneState(); for (int i = 0; i < children.size(); i++) { - // Restoring cam state before proceeding children recusively + // Restoring cam state before proceeding children recursively vp.getCamera().setPlaneState(camState); renderSubScene(children.get(i), vp); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/Renderer.java b/jme3-core/src/main/java/com/jme3/renderer/Renderer.java index 9a4e5bcc2..9f562ea61 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/Renderer.java +++ b/jme3-core/src/main/java/com/jme3/renderer/Renderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -425,7 +425,7 @@ public interface Renderer { * Check if the profiling results are available * * @param taskId the id of the task provided by startProfiling - * @return true if the resulst of the task with the given task id are available. + * @return true if the results of the task with the given task id are available. */ public boolean isTaskResultAvailable(int taskId); diff --git a/jme3-core/src/main/java/com/jme3/renderer/Statistics.java b/jme3-core/src/main/java/com/jme3/renderer/Statistics.java index 6e6d07e84..892093269 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/Statistics.java +++ b/jme3-core/src/main/java/com/jme3/renderer/Statistics.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -151,7 +151,7 @@ public class Statistics { if( !enabled ) return; - // Reduces unneccessary hashmap lookups if + // Reduces unnecessary hashmap lookups if // we already considered this shader. if (lastShader != shader.getId()) { lastShader = shader.getId(); diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL.java index 19bdfffff..e0a1975c1 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL.java @@ -38,251 +38,1264 @@ import java.nio.ShortBuffer; /** * Baseline GL methods that must be available on all platforms. - * + *

    * This is the subset of vanilla desktop OpenGL 2 and OpenGL ES 2. - * + * * @author Kirill Vainer */ public interface GL { - public static final int GL_ALPHA = 0x1906; - public static final int GL_ALWAYS = 0x207; - public static final int GL_ARRAY_BUFFER = 0x8892; - public static final int GL_BACK = 0x405; - public static final int GL_BLEND = 0xBE2; - public static final int GL_BLUE = 0x1905; - public static final int GL_BYTE = 0x1400; - public static final int GL_CLAMP_TO_EDGE = 0x812F; - public static final int GL_COLOR_BUFFER_BIT = 0x4000; - public static final int GL_COMPILE_STATUS = 0x8B81; - public static final int GL_CULL_FACE = 0xB44; - public static final int GL_DECR = 0x1E03; - public static final int GL_DECR_WRAP = 0x8508; - public static final int GL_DEPTH_BUFFER_BIT = 0x100; - public static final int GL_DEPTH_COMPONENT = 0x1902; - public static final int GL_DEPTH_COMPONENT16 = 0x81A5; - public static final int GL_DEPTH_TEST = 0xB71; - public static final int GL_DOUBLE = 0x140A; - public static final int GL_DST_ALPHA = 0x0304; - public static final int GL_DST_COLOR = 0x306; - public static final int GL_DYNAMIC_DRAW = 0x88E8; - public static final int GL_ELEMENT_ARRAY_BUFFER = 0x8893; - public static final int GL_EQUAL = 0x202; - public static final int GL_EXTENSIONS = 0x1F03; - public static final int GL_FALSE = 0x0; - public static final int GL_FLOAT = 0x1406; - public static final int GL_FRAGMENT_SHADER = 0x8B30; - public static final int GL_FRONT = 0x404; - public static final int GL_FUNC_ADD = 0x8006; - public static final int GL_FUNC_SUBTRACT = 0x800A; - public static final int GL_FUNC_REVERSE_SUBTRACT = 0x800B; - public static final int GL_FRONT_AND_BACK = 0x408; - public static final int GL_GEQUAL = 0x206; - public static final int GL_GREATER = 0x204; - public static final int GL_GREEN = 0x1904; - public static final int GL_INCR = 0x1E02; - public static final int GL_INCR_WRAP = 0x8507; - public static final int GL_INFO_LOG_LENGTH = 0x8B84; - public static final int GL_INT = 0x1404; - public static final int GL_INVALID_ENUM = 0x500; - public static final int GL_INVALID_VALUE = 0x501; - public static final int GL_INVALID_OPERATION = 0x502; - public static final int GL_INVERT = 0x150A; - public static final int GL_KEEP = 0x1E00; - public static final int GL_LEQUAL = 0x203; - public static final int GL_LESS = 0x201; - public static final int GL_LINEAR = 0x2601; - public static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703; - public static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701; - public static final int GL_LINES = 0x1; - public static final int GL_LINE_LOOP = 0x2; - public static final int GL_LINE_STRIP = 0x3; - public static final int GL_LINK_STATUS = 0x8B82; - public static final int GL_LUMINANCE = 0x1909; - public static final int GL_LUMINANCE_ALPHA = 0x190A; - public static final int GL_MAX = 0x8008; - public static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; - public static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; - public static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD; - public static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; - public static final int GL_MAX_TEXTURE_SIZE = 0xD33; - public static final int GL_MAX_VERTEX_ATTRIBS = 0x8869; - public static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; - public static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; - public static final int GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB; - public static final int GL_MIRRORED_REPEAT = 0x8370; - public static final int GL_MIN = 0x8007; - public static final int GL_NEAREST = 0x2600; - public static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702; - public static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700; - public static final int GL_NEVER = 0x200; - public static final int GL_NO_ERROR = 0x0; - public static final int GL_NONE = 0x0; - public static final int GL_NOTEQUAL = 0x205; - public static final int GL_ONE = 0x1; - public static final int GL_ONE_MINUS_DST_ALPHA = 0x0305; - public static final int GL_ONE_MINUS_DST_COLOR = 0x307; - public static final int GL_ONE_MINUS_SRC_ALPHA = 0x303; - public static final int GL_ONE_MINUS_SRC_COLOR = 0x301; - public static final int GL_OUT_OF_MEMORY = 0x505; - public static final int GL_POINTS = 0x0; - public static final int GL_POLYGON_OFFSET_FILL = 0x8037; - public static final int GL_QUERY_RESULT = 0x8866; - public static final int GL_QUERY_RESULT_AVAILABLE = 0x8867; - public static final int GL_RED = 0x1903; - public static final int GL_RENDERER = 0x1F01; - public static final int GL_REPEAT = 0x2901; - public static final int GL_REPLACE = 0x1E01; - public static final int GL_RGB = 0x1907; - public static final int GL_RGB565 = 0x8D62; - public static final int GL_RGB5_A1 = 0x8057; - public static final int GL_RGBA = 0x1908; - public static final int GL_RGBA4 = 0x8056; - public static final int GL_SCISSOR_TEST = 0xC11; - public static final int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; - public static final int GL_SHORT = 0x1402; - public static final int GL_SRC_ALPHA = 0x302; - public static final int GL_SRC_ALPHA_SATURATE = 0x0308; - public static final int GL_SRC_COLOR = 0x300; - public static final int GL_STATIC_DRAW = 0x88E4; - public static final int GL_STENCIL_BUFFER_BIT = 0x400; - public static final int GL_STENCIL_TEST = 0xB90; - public static final int GL_STREAM_DRAW = 0x88E0; - public static final int GL_STREAM_READ = 0x88E1; - public static final int GL_TEXTURE = 0x1702; - public static final int GL_TEXTURE0 = 0x84C0; - public static final int GL_TEXTURE1 = 0x84C1; - public static final int GL_TEXTURE2 = 0x84C2; - public static final int GL_TEXTURE3 = 0x84C3; - public static final int GL_TEXTURE4 = 0x84C4; - public static final int GL_TEXTURE5 = 0x84C5; - public static final int GL_TEXTURE6 = 0x84C6; - public static final int GL_TEXTURE7 = 0x84C7; - public static final int GL_TEXTURE8 = 0x84C8; - public static final int GL_TEXTURE9 = 0x84C9; - public static final int GL_TEXTURE10 = 0x84CA; - public static final int GL_TEXTURE11 = 0x84CB; - public static final int GL_TEXTURE12 = 0x84CC; - public static final int GL_TEXTURE13 = 0x84CD; - public static final int GL_TEXTURE14 = 0x84CE; - public static final int GL_TEXTURE15 = 0x84CF; - public static final int GL_TEXTURE_2D = 0xDE1; - public static final int GL_TEXTURE_CUBE_MAP = 0x8513; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; - public static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; - public static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; - public static final int GL_TEXTURE_MAG_FILTER = 0x2800; - public static final int GL_TEXTURE_MIN_FILTER = 0x2801; - public static final int GL_TEXTURE_WRAP_S = 0x2802; - public static final int GL_TEXTURE_WRAP_T = 0x2803; - public static final int GL_TIME_ELAPSED = 0x88BF; - public static final int GL_TRIANGLES = 0x4; - public static final int GL_TRIANGLE_FAN = 0x6; - public static final int GL_TRIANGLE_STRIP = 0x5; - public static final int GL_TRUE = 0x1; - public static final int GL_UNPACK_ALIGNMENT = 0xCF5; - public static final int GL_UNSIGNED_BYTE = 0x1401; - public static final int GL_UNSIGNED_INT = 0x1405; - public static final int GL_UNSIGNED_SHORT = 0x1403; - public static final int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; - public static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; - public static final int GL_VENDOR = 0x1F00; - public static final int GL_VERSION = 0x1F02; - public static final int GL_VERTEX_SHADER = 0x8B31; - public static final int GL_ZERO = 0x0; - - public void resetStats(); - - public void glActiveTexture(int texture); - public void glAttachShader(int program, int shader); - public void glBeginQuery(int target, int query); - public void glBindBuffer(int target, int buffer); - public void glBindTexture(int target, int texture); - public void glBlendEquationSeparate(int colorMode, int alphaMode); - public void glBlendFunc(int sfactor, int dfactor); - public void glBlendFuncSeparate(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha); - public void glBufferData(int target, long data_size, int usage); - public void glBufferData(int target, FloatBuffer data, int usage); - public void glBufferData(int target, ShortBuffer data, int usage); - public void glBufferData(int target, ByteBuffer data, int usage); - public void glBufferSubData(int target, long offset, FloatBuffer data); - public void glBufferSubData(int target, long offset, ShortBuffer data); - public void glBufferSubData(int target, long offset, ByteBuffer data); - public void glClear(int mask); - public void glClearColor(float red, float green, float blue, float alpha); - public void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); - public void glCompileShader(int shader); - public void glCompressedTexImage2D(int target, int level, int internalformat, int width, int height, int border, ByteBuffer data); - public void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, ByteBuffer data); - public int glCreateProgram(); - public int glCreateShader(int shaderType); - public void glCullFace(int mode); - public void glDeleteBuffers(IntBuffer buffers); - public void glDeleteProgram(int program); - public void glDeleteShader(int shader); - public void glDeleteTextures(IntBuffer textures); - public void glDepthFunc(int func); - public void glDepthMask(boolean flag); - public void glDepthRange(double nearVal, double farVal); - public void glDetachShader(int program, int shader); - public void glDisable(int cap); - public void glDisableVertexAttribArray(int index); - public void glDrawArrays(int mode, int first, int count); - - public void glDrawRangeElements(int mode, int start, int end, int count, int type, long indices); /// GL2+ - public void glEnable(int cap); - public void glEnableVertexAttribArray(int index); - public void glEndQuery(int target); - public void glGenBuffers(IntBuffer buffers); - public void glGenTextures(IntBuffer textures); - public void glGenQueries(int number, IntBuffer ids); - public int glGetAttribLocation(int program, String name); - public void glGetBoolean(int pname, ByteBuffer params); - public void glGetBufferSubData(int target, long offset, ByteBuffer data); - public int glGetError(); - public void glGetInteger(int pname, IntBuffer params); - public void glGetProgram(int program, int pname, IntBuffer params); - public String glGetProgramInfoLog(int program, int maxSize); - public long glGetQueryObjectui64(int query, int pname); - public int glGetQueryObjectiv(int query, int pname); - public void glGetShader(int shader, int pname, IntBuffer params); - public String glGetShaderInfoLog(int shader, int maxSize); - public String glGetString(int name); - public int glGetUniformLocation(int program, String name); - public boolean glIsEnabled(int cap); - public void glLineWidth(float width); - public void glLinkProgram(int program); - public void glPixelStorei(int pname, int param); - public void glPolygonOffset(float factor, float units); - public void glReadPixels(int x, int y, int width, int height, int format, int type, ByteBuffer data); - public void glReadPixels(int x, int y, int width, int height, int format, int type, long offset); - public void glScissor(int x, int y, int width, int height); - public void glShaderSource(int shader, String[] string, IntBuffer length); - public void glStencilFuncSeparate(int face, int func, int ref, int mask); - public void glStencilOpSeparate(int face, int sfail, int dpfail, int dppass); - public void glTexImage2D(int target, int level, int internalFormat, int width, int height, int border, int format, int type, ByteBuffer data); - public void glTexParameterf(int target, int pname, float param); - public void glTexParameteri(int target, int pname, int param); - public void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, ByteBuffer data); - public void glUniform1(int location, FloatBuffer value); - public void glUniform1(int location, IntBuffer value); - public void glUniform1f(int location, float v0); - public void glUniform1i(int location, int v0); - public void glUniform2(int location, IntBuffer value); - public void glUniform2(int location, FloatBuffer value); - public void glUniform2f(int location, float v0, float v1); - public void glUniform3(int location, IntBuffer value); - public void glUniform3(int location, FloatBuffer value); - public void glUniform3f(int location, float v0, float v1, float v2); - public void glUniform4(int location, FloatBuffer value); - public void glUniform4(int location, IntBuffer value); - public void glUniform4f(int location, float v0, float v1, float v2, float v3); - public void glUniformMatrix3(int location, boolean transpose, FloatBuffer value); - public void glUniformMatrix4(int location, boolean transpose, FloatBuffer value); - public void glUseProgram(int program); - public void glVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, long pointer); - public void glViewport(int x, int y, int width, int height); + static final int GL_ALPHA = 0x1906; + static final int GL_ALWAYS = 0x207; + static final int GL_ARRAY_BUFFER = 0x8892; + static final int GL_BACK = 0x405; + static final int GL_BLEND = 0xBE2; + static final int GL_BLUE = 0x1905; + static final int GL_BYTE = 0x1400; + static final int GL_CLAMP_TO_EDGE = 0x812F; + static final int GL_COLOR_BUFFER_BIT = 0x4000; + static final int GL_COMPILE_STATUS = 0x8B81; + static final int GL_CULL_FACE = 0xB44; + static final int GL_DECR = 0x1E03; + static final int GL_DECR_WRAP = 0x8508; + static final int GL_DEPTH_BUFFER_BIT = 0x100; + static final int GL_DEPTH_COMPONENT = 0x1902; + static final int GL_DEPTH_COMPONENT16 = 0x81A5; + static final int GL_DEPTH_TEST = 0xB71; + static final int GL_DOUBLE = 0x140A; + static final int GL_DST_ALPHA = 0x0304; + static final int GL_DST_COLOR = 0x306; + static final int GL_DYNAMIC_DRAW = 0x88E8; + static final int GL_ELEMENT_ARRAY_BUFFER = 0x8893; + static final int GL_EQUAL = 0x202; + static final int GL_EXTENSIONS = 0x1F03; + static final int GL_FALSE = 0x0; + static final int GL_FLOAT = 0x1406; + static final int GL_FRAGMENT_SHADER = 0x8B30; + static final int GL_FRONT = 0x404; + static final int GL_FUNC_ADD = 0x8006; + static final int GL_FUNC_SUBTRACT = 0x800A; + static final int GL_FUNC_REVERSE_SUBTRACT = 0x800B; + static final int GL_FRONT_AND_BACK = 0x408; + static final int GL_GEQUAL = 0x206; + static final int GL_GREATER = 0x204; + static final int GL_GREEN = 0x1904; + static final int GL_INCR = 0x1E02; + static final int GL_INCR_WRAP = 0x8507; + static final int GL_INFO_LOG_LENGTH = 0x8B84; + static final int GL_INT = 0x1404; + static final int GL_INVALID_ENUM = 0x500; + static final int GL_INVALID_VALUE = 0x501; + static final int GL_INVALID_OPERATION = 0x502; + static final int GL_INVERT = 0x150A; + static final int GL_KEEP = 0x1E00; + static final int GL_LEQUAL = 0x203; + static final int GL_LESS = 0x201; + static final int GL_LINEAR = 0x2601; + static final int GL_LINEAR_MIPMAP_LINEAR = 0x2703; + static final int GL_LINEAR_MIPMAP_NEAREST = 0x2701; + static final int GL_LINES = 0x1; + static final int GL_LINE_LOOP = 0x2; + static final int GL_LINE_STRIP = 0x3; + static final int GL_LINK_STATUS = 0x8B82; + static final int GL_LUMINANCE = 0x1909; + static final int GL_LUMINANCE_ALPHA = 0x190A; + static final int GL_MAX = 0x8008; + static final int GL_MAX_CUBE_MAP_TEXTURE_SIZE = 0x851C; + static final int GL_MAX_FRAGMENT_UNIFORM_COMPONENTS = 0x8B49; + static final int GL_MAX_FRAGMENT_UNIFORM_VECTORS = 0x8DFD; + static final int GL_MAX_TEXTURE_IMAGE_UNITS = 0x8872; + static final int GL_MAX_TEXTURE_SIZE = 0xD33; + static final int GL_MAX_VERTEX_ATTRIBS = 0x8869; + static final int GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8B4C; + static final int GL_MAX_VERTEX_UNIFORM_COMPONENTS = 0x8B4A; + static final int GL_MAX_VERTEX_UNIFORM_VECTORS = 0x8DFB; + static final int GL_MIRRORED_REPEAT = 0x8370; + static final int GL_MIN = 0x8007; + static final int GL_NEAREST = 0x2600; + static final int GL_NEAREST_MIPMAP_LINEAR = 0x2702; + static final int GL_NEAREST_MIPMAP_NEAREST = 0x2700; + static final int GL_NEVER = 0x200; + static final int GL_NO_ERROR = 0x0; + static final int GL_NONE = 0x0; + static final int GL_NOTEQUAL = 0x205; + static final int GL_ONE = 0x1; + static final int GL_ONE_MINUS_DST_ALPHA = 0x0305; + static final int GL_ONE_MINUS_DST_COLOR = 0x307; + static final int GL_ONE_MINUS_SRC_ALPHA = 0x303; + static final int GL_ONE_MINUS_SRC_COLOR = 0x301; + static final int GL_OUT_OF_MEMORY = 0x505; + static final int GL_POINTS = 0x0; + static final int GL_POLYGON_OFFSET_FILL = 0x8037; + static final int GL_QUERY_RESULT = 0x8866; + static final int GL_QUERY_RESULT_AVAILABLE = 0x8867; + static final int GL_RED = 0x1903; + static final int GL_RENDERER = 0x1F01; + static final int GL_REPEAT = 0x2901; + static final int GL_REPLACE = 0x1E01; + static final int GL_RGB = 0x1907; + static final int GL_RGB565 = 0x8D62; + static final int GL_RGB5_A1 = 0x8057; + static final int GL_RGBA = 0x1908; + static final int GL_RGBA4 = 0x8056; + static final int GL_SCISSOR_TEST = 0xC11; + static final int GL_SHADING_LANGUAGE_VERSION = 0x8B8C; + static final int GL_SHORT = 0x1402; + static final int GL_SRC_ALPHA = 0x302; + static final int GL_SRC_ALPHA_SATURATE = 0x0308; + static final int GL_SRC_COLOR = 0x300; + static final int GL_STATIC_DRAW = 0x88E4; + static final int GL_STENCIL_BUFFER_BIT = 0x400; + static final int GL_STENCIL_TEST = 0xB90; + static final int GL_STREAM_DRAW = 0x88E0; + static final int GL_STREAM_READ = 0x88E1; + static final int GL_TEXTURE = 0x1702; + static final int GL_TEXTURE0 = 0x84C0; + static final int GL_TEXTURE1 = 0x84C1; + static final int GL_TEXTURE2 = 0x84C2; + static final int GL_TEXTURE3 = 0x84C3; + static final int GL_TEXTURE4 = 0x84C4; + static final int GL_TEXTURE5 = 0x84C5; + static final int GL_TEXTURE6 = 0x84C6; + static final int GL_TEXTURE7 = 0x84C7; + static final int GL_TEXTURE8 = 0x84C8; + static final int GL_TEXTURE9 = 0x84C9; + static final int GL_TEXTURE10 = 0x84CA; + static final int GL_TEXTURE11 = 0x84CB; + static final int GL_TEXTURE12 = 0x84CC; + static final int GL_TEXTURE13 = 0x84CD; + static final int GL_TEXTURE14 = 0x84CE; + static final int GL_TEXTURE15 = 0x84CF; + static final int GL_TEXTURE_2D = 0xDE1; + static final int GL_TEXTURE_CUBE_MAP = 0x8513; + static final int GL_TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515; + static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516; + static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517; + static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518; + static final int GL_TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519; + static final int GL_TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851A; + static final int GL_TEXTURE_MAG_FILTER = 0x2800; + static final int GL_TEXTURE_MIN_FILTER = 0x2801; + static final int GL_TEXTURE_WRAP_S = 0x2802; + static final int GL_TEXTURE_WRAP_T = 0x2803; + static final int GL_TIME_ELAPSED = 0x88BF; + static final int GL_TRIANGLES = 0x4; + static final int GL_TRIANGLE_FAN = 0x6; + static final int GL_TRIANGLE_STRIP = 0x5; + static final int GL_TRUE = 0x1; + static final int GL_UNPACK_ALIGNMENT = 0xCF5; + static final int GL_UNSIGNED_BYTE = 0x1401; + static final int GL_UNSIGNED_INT = 0x1405; + static final int GL_UNSIGNED_SHORT = 0x1403; + static final int GL_UNSIGNED_SHORT_5_6_5 = 0x8363; + static final int GL_UNSIGNED_SHORT_5_5_5_1 = 0x8034; + static final int GL_VENDOR = 0x1F00; + static final int GL_VERSION = 0x1F02; + static final int GL_VERTEX_SHADER = 0x8B31; + static final int GL_ZERO = 0x0; + + void resetStats(); + + /** + *

    Reference Page

    + *

    + * Selects which texture unit subsequent texture state calls will affect. The number of texture units an implementation supports is implementation + * dependent. + * + * @param texture which texture unit to make active. One of:
    {@link #GL_TEXTURE0 TEXTURE0}GL_TEXTURE[1-31]
    + */ + void glActiveTexture(int texture); + + /** + *

    Reference Page

    + *

    + * Attaches a shader object to a program object. + *

    + *

    In order to create a complete shader program, there must be a way to specify the list of things that will be linked together. Program objects provide + * this mechanism. Shaders that are to be linked together in a program object must first be attached to that program object. glAttachShader attaches the + * shader object specified by shader to the program object specified by program. This indicates that shader will be included in link operations that will + * be performed on program.

    + *

    + *

    All operations that can be performed on a shader object are valid whether or not the shader object is attached to a program object. It is permissible to + * attach a shader object to a program object before source code has been loaded into the shader object or before the shader object has been compiled. It + * is permissible to attach multiple shader objects of the same type because each may contain a portion of the complete shader. It is also permissible to + * attach a shader object to more than one program object. If a shader object is deleted while it is attached to a program object, it will be flagged for + * deletion, and deletion will not occur until glDetachShader is called to detach it from all program objects to which it is attached.

    + * + * @param program the program object to which a shader object will be attached. + * @param shader the shader object that is to be attached. + */ + void glAttachShader(int program, int shader); + + /** + *

    Reference Page

    + *

    + * Creates a query object and makes it active. + * + * @param target the target type of query object established. + * @param query the name of a query object. + */ + void glBeginQuery(int target, int query); + + /** + *

    Reference Page

    + *

    + * Binds a named buffer object. + * + * @param target the target to which the buffer object is bound. + * @param buffer the name of a buffer object. + */ + void glBindBuffer(int target, int buffer); + + /** + *

    Reference Page

    + *

    + * Binds the a texture to a texture target. + *

    + *

    While a texture object is bound, GL operations on the target to which it is bound affect the bound object, and queries of the target to which it is + * bound return state from the bound object. If texture mapping of the dimensionality of the target to which a texture object is bound is enabled, the + * state of the bound texture object directs the texturing operation.

    + * + * @param target the texture target. + * @param texture the texture object to bind. + */ + void glBindTexture(int target, int texture); + + /** + *

    Reference Page

    + *

    + * Sets the RGB blend equation and the alpha blend equation separately. + * + * @param colorMode the RGB blend equation, how the red, green, and blue components of the source and destination colors are combined. + * @param alphaMode the alpha blend equation, how the alpha component of the source and destination colors are combined + */ + void glBlendEquationSeparate(int colorMode, int alphaMode); + + /** + *

    Reference Page

    + *

    + * Specifies the weighting factors used by the blend equation, for both RGB and alpha functions and for all draw buffers. + * + * @param sfactor the source weighting factor. + * @param dfactor the destination weighting factor. + */ + void glBlendFunc(int sfactor, int dfactor); + + /** + *

    Reference Page

    + *

    + * Specifies pixel arithmetic for RGB and alpha components separately. + * + * @param sfactorRGB how the red, green, and blue blending factors are computed. The initial value is GL_ONE. + * @param dfactorRGB how the red, green, and blue destination blending factors are computed. The initial value is GL_ZERO. + * @param sfactorAlpha how the alpha source blending factor is computed. The initial value is GL_ONE. + * @param dfactorAlpha how the alpha destination blending factor is computed. The initial value is GL_ZERO. + */ + void glBlendFuncSeparate(int sfactorRGB, int dfactorRGB, int sfactorAlpha, int dfactorAlpha); + + /** + *

    Reference Page

    + *

    + * Creates and initializes a buffer object's data store. + *

    + *

    {@code usage} is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make + * more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. + * {@code usage} can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The + * frequency of access may be one of these:

    + *

    + *

      + *
    • STREAM - The data store contents will be modified once and used at most a few times.
    • + *
    • STATIC - The data store contents will be modified once and used many times.
    • + *
    • DYNAMIC - The data store contents will be modified repeatedly and used many times.
    • + *
    + *

    + *

    The nature of access may be one of these:

    + *

    + *

      + *
    • DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
    • + *
    • READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
    • + *
    • COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
    • + *
    + * + * @param target the target buffer object. + * @param dataSize the size in bytes of the buffer object's new data store + * @param usage the expected usage pattern of the data store. + */ + void glBufferData(int target, long dataSize, int usage); + + /** + *

    Reference Page

    + *

    + * Creates and initializes a buffer object's data store. + *

    + *

    {@code usage} is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make + * more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. + * {@code usage} can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The + * frequency of access may be one of these:

    + *

    + *

      + *
    • STREAM - The data store contents will be modified once and used at most a few times.
    • + *
    • STATIC - The data store contents will be modified once and used many times.
    • + *
    • DYNAMIC - The data store contents will be modified repeatedly and used many times.
    • + *
    + *

    + *

    The nature of access may be one of these:

    + *

    + *

      + *
    • DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
    • + *
    • READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
    • + *
    • COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
    • + *
    + * + * @param target the target buffer object. + * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied. + * @param usage the expected usage pattern of the data store. + */ + void glBufferData(int target, FloatBuffer data, int usage); + + /** + *

    Reference Page

    + *

    + * Creates and initializes a buffer object's data store. + *

    + *

    {@code usage} is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make + * more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. + * {@code usage} can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The + * frequency of access may be one of these:

    + *

    + *

      + *
    • STREAM - The data store contents will be modified once and used at most a few times.
    • + *
    • STATIC - The data store contents will be modified once and used many times.
    • + *
    • DYNAMIC - The data store contents will be modified repeatedly and used many times.
    • + *
    + *

    + *

    The nature of access may be one of these:

    + *

    + *

      + *
    • DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
    • + *
    • READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
    • + *
    • COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
    • + *
    + * + * @param target the target buffer object. + * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied + * @param usage the expected usage pattern of the data store. + */ + void glBufferData(int target, ShortBuffer data, int usage); + + /** + *

    Reference Page

    + *

    + * Creates and initializes a buffer object's data store. + *

    + *

    {@code usage} is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make + * more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. + * {@code usage} can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The + * frequency of access may be one of these:

    + *

    + *

      + *
    • STREAM - The data store contents will be modified once and used at most a few times.
    • + *
    • STATIC - The data store contents will be modified once and used many times.
    • + *
    • DYNAMIC - The data store contents will be modified repeatedly and used many times.
    • + *
    + *

    + *

    The nature of access may be one of these:

    + *

    + *

      + *
    • DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
    • + *
    • READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
    • + *
    • COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
    • + *
    + * + * @param target the target buffer object. + * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied. + * @param usage the expected usage pattern of the data store. + */ + void glBufferData(int target, ByteBuffer data, int usage); + + /** + *

    Reference Page

    + *

    + * Updates a subset of a buffer object's data store. + * + * @param target the target buffer object. + * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes. + * @param data a pointer to the new data that will be copied into the data store. + */ + void glBufferSubData(int target, long offset, FloatBuffer data); + + /** + *

    Reference Page

    + *

    + * Updates a subset of a buffer object's data store. + * + * @param target the target buffer object. + * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes. + * @param data a pointer to the new data that will be copied into the data store. + */ + void glBufferSubData(int target, long offset, ShortBuffer data); + + /** + *

    Reference Page

    + *

    + * Updates a subset of a buffer object's data store. + * + * @param target the target buffer object. + * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes. + * @param data a pointer to the new data that will be copied into the data store. + */ + void glBufferSubData(int target, long offset, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Sets portions of every pixel in a particular buffer to the same value. The value to which each buffer is cleared depends on the setting of the clear + * value for that buffer. + * + * @param mask Zero or the bitwise OR of one or more values indicating which buffers are to be cleared. + */ + void glClear(int mask); + + /** + *

    Reference Page

    + * + * Sets the clear value for fixed-point and floating-point color buffers in RGBA mode. The specified components are stored as floating-point values. + * + * @param red the value to which to clear the R channel of the color buffer. + * @param green the value to which to clear the G channel of the color buffer. + * @param blue the value to which to clear the B channel of the color buffer. + * @param alpha the value to which to clear the A channel of the color buffer. + */ + void glClearColor(float red, float green, float blue, float alpha); + + /** + *

    Reference Page

    + * + * Masks the writing of R, G, B and A values to all draw buffers. In the initial state, all color values are enabled for writing for all draw buffers. + * + * @param red whether R values are written or not. + * @param green whether G values are written or not. + * @param blue whether B values are written or not. + * @param alpha whether A values are written or not. + */ + void glColorMask(boolean red, boolean green, boolean blue, boolean alpha); + + /** + *

    Reference Page

    + *

    + * Compiles a shader object. + * + * @param shader the shader object to be compiled. + */ + void glCompileShader(int shader); + + /** + *

    Reference Page

    + *

    + * Specifies a two-dimensional texture image in a compressed format. + * + * @param target the target texture. + * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + * @param internalFormat the format of the compressed image data. + * @param width the width of the texture image + * @param height the height of the texture image + * @param border must be 0 + * @param data a pointer to the compressed image data + */ + void glCompressedTexImage2D(int target, int level, int internalFormat, int width, int height, int border, + ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Respecifies only a rectangular subregion of an existing 2D texel array, with incoming data stored in a specific compressed image format. + * + * @param target the target texture. + * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + * @param xoffset a texel offset in the x direction within the texture array. + * @param yoffset a texel offset in the y direction within the texture array. + * @param width the width of the texture subimage. + * @param height the height of the texture subimage. + * @param format the format of the compressed image data stored at address {@code data}. + * @param data a pointer to the compressed image data. + */ + void glCompressedTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, + ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Creates a program object. + */ + int glCreateProgram(); + + /** + *

    Reference Page

    + *

    + * Creates a shader object. + * + * @param shaderType the type of shader to be created. One of:
    {@link #GL_VERTEX_SHADER VERTEX_SHADER}{@link #GL_FRAGMENT_SHADER FRAGMENT_SHADER}{@link GL3#GL_GEOMETRY_SHADER GEOMETRY_SHADER}{@link GL4#GL_TESS_CONTROL_SHADER TESS_CONTROL_SHADER}
    {@link GL4#GL_TESS_EVALUATION_SHADER TESS_EVALUATION_SHADER}
    + */ + int glCreateShader(int shaderType); + + /** + *

    Reference Page

    + *

    + * Specifies which polygon faces are culled if {@link #GL_CULL_FACE CULL_FACE} is enabled. Front-facing polygons are rasterized if either culling is disabled or the + * CullFace mode is {@link #GL_BACK BACK} while back-facing polygons are rasterized only if either culling is disabled or the CullFace mode is + * {@link #GL_FRONT FRONT}. The initial setting of the CullFace mode is {@link #GL_BACK BACK}. Initially, culling is disabled. + * + * @param mode the CullFace mode. One of:
    {@link #GL_FRONT FRONT}{@link #GL_BACK BACK}{@link #GL_FRONT_AND_BACK FRONT_AND_BACK}
    + */ + void glCullFace(int mode); + + /** + *

    Reference Page

    + *

    + * Deletes named buffer objects. + * + * @param buffers an array of buffer objects to be deleted. + */ + void glDeleteBuffers(IntBuffer buffers); + + /** + *

    Reference Page

    + *

    + * Deletes a program object. + * + * @param program the program object to be deleted. + */ + void glDeleteProgram(int program); + + /** + *

    Reference Page

    + *

    + * Deletes a shader object. + * + * @param shader the shader object to be deleted. + */ + void glDeleteShader(int shader); + + /** + *

    Reference Page

    + *

    + * Deletes texture objects. After a texture object is deleted, it has no contents or dimensionality, and its name is again unused. If a texture that is + * currently bound to any of the target bindings of {@link #glBindTexture BindTexture} is deleted, it is as though {@link #glBindTexture BindTexture} had been executed with the + * same target and texture zero. Additionally, special care must be taken when deleting a texture if any of the images of the texture are attached to a + * framebuffer object. + *

    + *

    Unused names in textures that have been marked as used for the purposes of {@link #glGenTextures GenTextures} are marked as unused again. Unused names in textures are + * silently ignored, as is the name zero.

    + * + * @param textures contains {@code n} names of texture objects to be deleted. + */ + void glDeleteTextures(IntBuffer textures); + + /** + *

    Reference Page

    + *

    + * Specifies the comparison that takes place during the depth buffer test (when {@link #GL_DEPTH_TEST DEPTH_TEST} is enabled). + * + * @param func the depth test comparison. One of:
    {@link #GL_NEVER NEVER}{@link #GL_ALWAYS ALWAYS}{@link #GL_LESS LESS}{@link #GL_LEQUAL LEQUAL}{@link #GL_EQUAL EQUAL}{@link #GL_GREATER GREATER}{@link #GL_GEQUAL GEQUAL}{@link #GL_NOTEQUAL NOTEQUAL}
    + */ + void glDepthFunc(int func); + + /** + *

    Reference Page

    + *

    + * Masks the writing of depth values to the depth buffer. In the initial state, the depth buffer is enabled for writing. + * + * @param flag whether depth values are written or not. + */ + void glDepthMask(boolean flag); + + /** + *

    Reference Page

    + *

    + * Sets the depth range for all viewports to the same values. + * + * @param nearVal the near depth range. + * @param farVal the far depth range. + */ + void glDepthRange(double nearVal, double farVal); + + /** + *

    Reference Page

    + *

    + * Detaches a shader object from a program object to which it is attached. + * + * @param program the program object from which to detach the shader object. + * @param shader the shader object to be detached. + */ + void glDetachShader(int program, int shader); + + /** + *

    Reference Page

    + *

    + * Disables the specified OpenGL state. + * + * @param cap the OpenGL state to disable. + */ + void glDisable(int cap); + + /** + *

    Reference Page

    + *

    + * Disables a generic vertex attribute array. + * + * @param index the index of the generic vertex attribute to be disabled. + */ + void glDisableVertexAttribArray(int index); + + /** + *

    Reference Page

    + *

    + * Constructs a sequence of geometric primitives by successively transferring elements for {@code count} vertices. Elements {@code first} through + * first + count – 1 of each enabled non-instanced array are transferred to the GL. + *

    + *

    If an array corresponding to an attribute required by a vertex shader is not enabled, then the corresponding element is taken from the current attribute + * state. If an array is enabled, the corresponding current vertex attribute value is unaffected by the execution of this function.

    + * + * @param mode the kind of primitives being constructed. + * @param first the first vertex to transfer to the GL. + * @param count the number of vertices after {@code first} to transfer to the GL. + */ + void glDrawArrays(int mode, int first, int count); + + /** + *

    Reference Page

    + *

    + *

    Implementations denote recommended maximum amounts of vertex and index data, which may be queried by calling glGet with argument + * {@link GL2#GL_MAX_ELEMENTS_VERTICES MAX_ELEMENTS_VERTICES} and {@link GL2#GL_MAX_ELEMENTS_INDICES MAX_ELEMENTS_INDICES}. If end - start + 1 is greater than the value of GL_MAX_ELEMENTS_VERTICES, or if + * count is greater than the value of GL_MAX_ELEMENTS_INDICES, then the call may operate at reduced performance. There is no requirement that all vertices + * in the range start end be referenced. However, the implementation may partially process unused vertices, reducing performance from what could be + * achieved with an optimal index set.

    + *

    + *

    When glDrawRangeElements is called, it uses count sequential elements from an enabled array, starting at start to construct a sequence of geometric + * primitives. mode specifies what kind of primitives are constructed, and how the array elements construct these primitives. If more than one array is + * enabled, each is used.

    + *

    + *

    Vertex attributes that are modified by glDrawRangeElements have an unspecified value after glDrawRangeElements returns. Attributes that aren't modified + * maintain their previous values.

    + *

    + *

    Errors
    + *

    + *

    It is an error for indices to lie outside the range start end, but implementations may not check for this situation. Such indices cause + * implementation-dependent behavior.

    + *

    + *

      + *
    • GL_INVALID_ENUM is generated if mode is not an accepted value.
    • + *
    • GL_INVALID_VALUE is generated if count is negative.
    • + *
    • GL_INVALID_VALUE is generated if end < start.
    • + *
    • GL_INVALID_OPERATION is generated if a geometry shader is active and mode is incompatible with the input primitive type of the geometry shader in the + * currently installed program object.
    • + *
    • GL_INVALID_OPERATION is generated if a non-zero buffer object name is bound to an enabled array or the element array and the buffer object's data + * store is currently mapped.
    • + *
    + * + * @param mode the kind of primitives to render. + * @param start the minimum array index contained in {@code indices}. + * @param end the maximum array index contained in {@code indices}. + * @param count the number of elements to be rendered. + * @param type the type of the values in {@code indices}. + * @param indices a pointer to the location where the indices are stored. + */ + void glDrawRangeElements(int mode, int start, int end, int count, int type, long indices); /// GL2+ + + /** + *

    Reference Page

    + *

    + * Enables the specified OpenGL state. + * + * @param cap the OpenGL state to enable. + */ + void glEnable(int cap); + + /** + *

    Reference Page

    + *

    + * Enables a generic vertex attribute array. + * + * @param index the index of the generic vertex attribute to be enabled. + */ + void glEnableVertexAttribArray(int index); + + /** + *

    Reference Page

    + *

    + * Marks the end of the sequence of commands to be tracked for the active query specified by {@code target}. + * + * @param target the query object target. + */ + void glEndQuery(int target); + + /** + *

    Reference Page

    + *

    + * Generates buffer object names. + * + * @param buffers a buffer in which the generated buffer object names are stored. + */ + void glGenBuffers(IntBuffer buffers); + + /** + *

    Reference Page

    + *

    + * Returns n previously unused texture names in textures. These names are marked as used, for the purposes of GenTextures only, but they acquire texture + * state and a dimensionality only when they are first bound, just as if they were unused. + * + * @param textures a scalar or buffer in which to place the returned texture names. + */ + void glGenTextures(IntBuffer textures); + + /** + *

    Reference Page

    + *

    + * Generates query object names. + * + * @param ids a buffer in which the generated query object names are stored. + */ + void glGenQueries(int number, IntBuffer ids); + + /** + *

    Reference Page

    + *

    + * Returns the location of an attribute variable. + * + * @param program the program object to be queried. + * @param name a null terminated string containing the name of the attribute variable whose location is to be queried. + */ + int glGetAttribLocation(int program, String name); + + /** + *

    Reference Page

    + *

    + * Returns the current boolean value of the specified state variable. + *

    + *

    LWJGL note: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values, + * LWJGL will not validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the + * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.

    + * + * @param pname the state variable. + * @param params a scalar or buffer in which to place the returned data. + */ + void glGetBoolean(int pname, ByteBuffer params); + + /** + *

    Reference Page

    + *

    + * Returns a subset of a buffer object's data store. + * + * @param target the target buffer object. + * @param offset the offset into the buffer object's data store from which data will be returned, measured in bytes. + * @param data a pointer to the location where buffer object data is returned. + */ + void glGetBufferSubData(int target, long offset, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Returns error information. Each detectable error is assigned a numeric code. When an error is detected, a flag is set and the code is recorded. Further + * errors, if they occur, do not affect this recorded code. When {@code GetError} is called, the code is returned and the flag is cleared, so that a + * further error will again record its code. If a call to {@code GetError} returns {@link #GL_NO_ERROR NO_ERROR}, then there has been no detectable error since + * the last call to {@code GetError} (or since the GL was initialized). + */ + int glGetError(); + + /** + *

    Reference Page

    + *

    + * Returns the current integer value of the specified state variable. + *

    + *

    LWJGL note: The state that corresponds to the state variable may be a single value or an array of values. In the case of an array of values, + * LWJGL will not validate if {@code params} has enough space to store that array. Doing so would introduce significant overhead, as the + * OpenGL state variables are too many. It is the user's responsibility to avoid JVM crashes by ensuring enough space for the returned values.

    + * + * @param pname the state variable. + * @param params a scalar or buffer in which to place the returned data. + */ + void glGetInteger(int pname, IntBuffer params); + + /** + *

    Reference Page

    + *

    + * Returns a parameter from a program object. + * + * @param program the program object to be queried. + * @param pname the object parameter. + * @param params the requested object parameter. + */ + void glGetProgram(int program, int pname, IntBuffer params); + + /** + *

    Reference Page

    + *

    + * Returns the information log for a program object. + * + * @param program the program object whose information log is to be queried. + * @param maxSize the size of the character buffer for storing the returned information log. + */ + String glGetProgramInfoLog(int program, int maxSize); + + /** + * Unsigned version. + * + * @param query the name of a query object + * @param pname the symbolic name of a query object parameter + */ + long glGetQueryObjectui64(int query, int pname); + + /** + *

    Reference Page

    + *

    + * Returns the integer value of a query object parameter. + * + * @param query the name of a query object + * @param pname the symbolic name of a query object parameter. One of:
    {@link #GL_QUERY_RESULT QUERY_RESULT}{@link #GL_QUERY_RESULT_AVAILABLE QUERY_RESULT_AVAILABLE}
    + */ + int glGetQueryObjectiv(int query, int pname); + + /** + *

    Reference Page

    + *

    + * Returns a parameter from a shader object. + * + * @param shader the shader object to be queried. + * @param pname the object parameter. + * @param params the requested object parameter. + */ + void glGetShader(int shader, int pname, IntBuffer params); + + /** + *

    Reference Page

    + *

    + * Returns the information log for a shader object. + * + * @param shader the shader object whose information log is to be queried. + * @param maxSize the size of the character buffer for storing the returned information log. + */ + String glGetShaderInfoLog(int shader, int maxSize); + + /** + *

    Reference Page

    + *

    + * Return strings describing properties of the current GL context. + * + * @param name the property to query. One of:
    {@link #GL_RENDERER RENDERER}{@link #GL_VENDOR VENDOR}{@link #GL_EXTENSIONS EXTENSIONS}{@link #GL_VERSION VERSION}{@link GL2#GL_SHADING_LANGUAGE_VERSION SHADING_LANGUAGE_VERSION}
    + */ + String glGetString(int name); + + /** + *

    Reference Page

    + *

    + * Returns the location of a uniform variable. + * + * @param program the program object to be queried. + * @param name a null terminated string containing the name of the uniform variable whose location is to be queried. + */ + int glGetUniformLocation(int program, String name); + + /** + *

    Reference Page

    + *

    + * Determines if {@code cap} is currently enabled (as with {@link #glEnable Enable}) or disabled. + * + * @param cap the enable state to query. + */ + boolean glIsEnabled(int cap); + + /** + *

    Reference Page

    + * + * Sets the width of rasterized line segments. The default width is 1.0. + * + * @param width the line width. + */ + void glLineWidth(float width); + + /** + *

    Reference Page

    + * + * Links a program object. + * + * @param program the program object to be linked. + */ + void glLinkProgram(int program); + + /** + *

    Reference Page

    + *

    + * Sets the integer value of a pixel store parameter. + * + * @param pname the pixel store parameter to set. + * @param param the parameter value + */ + void glPixelStorei(int pname, int param); + + /** + *

    Reference Page

    + *

    + * The depth values of all fragments generated by the rasterization of a polygon may be offset by a single value that is computed for that polygon. This + * function determines that value. + *

    + *

    {@code factor} scales the maximum depth slope of the polygon, and {@code units} scales an implementation-dependent constant that relates to the usable + * resolution of the depth buffer. The resulting values are summed to produce the polygon offset value.

    + * + * @param factor the maximum depth slope factor. + * @param units the constant scale. + */ + void glPolygonOffset(float factor, float units); + + /** + *

    Reference Page

    + *

    + * ReadPixels obtains values from the selected read buffer from each pixel with lower left hand corner at {@code (x + i, y + j)} for {@code 0 <= i < width} + * and {@code 0 <= j < height}; this pixel is said to be the ith pixel in the jth row. If any of these pixels lies outside of the + * window allocated to the current GL context, or outside of the image attached to the currently bound read framebuffer object, then the values obtained + * for those pixels are undefined. When {@link GLFbo#GL_READ_FRAMEBUFFER_BINDING_EXT READ_FRAMEBUFFER_BINDING} is zero, values are also undefined for individual pixels that are not owned by + * the current context. Otherwise, {@code ReadPixels} obtains values from the selected buffer, regardless of how those values were placed there. + * + * @param x the left pixel coordinate + * @param y the lower pixel coordinate + * @param width the number of pixels to read in the x-dimension + * @param height the number of pixels to read in the y-dimension + * @param format the pixel format. + * @param type the pixel type. + * @param data a buffer in which to place the returned pixel data. + */ + void glReadPixels(int x, int y, int width, int height, int format, int type, ByteBuffer data); + + + /** + *

    Reference Page

    + *

    + * ReadPixels obtains values from the selected read buffer from each pixel with lower left hand corner at {@code (x + i, y + j)} for {@code 0 <= i < width} + * and {@code 0 <= j < height}; this pixel is said to be the ith pixel in the jth row. If any of these pixels lies outside of the + * window allocated to the current GL context, or outside of the image attached to the currently bound read framebuffer object, then the values obtained + * for those pixels are undefined. When {@link GLFbo#GL_READ_FRAMEBUFFER_BINDING_EXT READ_FRAMEBUFFER_BINDING} is zero, values are also undefined for individual pixels that are not owned by + * the current context. Otherwise, {@code ReadPixels} obtains values from the selected buffer, regardless of how those values were placed there. + * + * @param x the left pixel coordinate + * @param y the lower pixel coordinate + * @param width the number of pixels to read in the x-dimension + * @param height the number of pixels to read in the y-dimension + * @param format the pixel format. + * @param type the pixel type. + * @param offset a buffer in which to place the returned pixel data/ + */ + void glReadPixels(int x, int y, int width, int height, int format, int type, long offset); + + /** + *

    Reference Page

    + *

    + * Defines the scissor rectangle for all viewports. The scissor test is enabled or disabled for all viewports using {@link #glEnable Enable} or {@link #glDisable Disable} + * with the symbolic constant {@link #GL_SCISSOR_TEST SCISSOR_TEST}. When disabled, it is as if the scissor test always passes. When enabled, if + * left <= xw < left + width and bottom <= yw < bottom + height for the scissor rectangle, then the scissor + * test passes. Otherwise, the test fails and the fragment is discarded. + * + * @param x the left scissor rectangle coordinate. + * @param y the bottom scissor rectangle coordinate. + * @param width the scissor rectangle width. + * @param height the scissor rectangle height. + */ + void glScissor(int x, int y, int width, int height); + + /** + *

    Reference Page

    + *

    + * Sets the source code in {@code shader} to the source code in the array of strings specified by {@code strings}. Any source code previously stored in the + * shader object is completely replaced. The number of strings in the array is specified by {@code count}. If {@code length} is {@code NULL}, each string is + * assumed to be null terminated. If {@code length} is a value other than {@code NULL}, it points to an array containing a string length for each of the + * corresponding elements of {@code strings}. Each element in the length array may contain the length of the corresponding string (the null character is not + * counted as part of the string length) or a value less than 0 to indicate that the string is null terminated. The source code strings are not scanned or + * parsed at this time; they are simply copied into the specified shader object. + * + * @param shader the shader object whose source code is to be replaced, + * @param strings an array of pointers to strings containing the source code to be loaded into the shader + */ + void glShaderSource(int shader, String[] strings, IntBuffer length); + + /** + *

    Reference Page

    + *

    + * Sets front and/or back function and reference value for stencil testing. + * + * @param face whether front and/or back stencil state is updated. One of:
    {@link GL#GL_FRONT FRONT}{@link GL#GL_BACK BACK}{@link GL#GL_FRONT_AND_BACK FRONT_AND_BACK}
    + * @param func the test function. The initial value is GL_ALWAYS. One of:
    {@link GL#GL_NEVER NEVER}{@link GL#GL_LESS LESS}{@link GL#GL_LEQUAL LEQUAL}{@link GL#GL_GREATER GREATER}{@link GL#GL_GEQUAL GEQUAL}{@link GL#GL_EQUAL EQUAL}{@link GL#GL_NOTEQUAL NOTEQUAL}{@link GL#GL_ALWAYS ALWAYS}
    + * @param ref the reference value for the stencil test. {@code ref} is clamped to the range [0, 2n – 1], where {@code n} is the number of bitplanes in the stencil + * buffer. The initial value is 0. + * @param mask a mask that is ANDed with both the reference value and the stored stencil value when the test is done. The initial value is all 1's. + */ + void glStencilFuncSeparate(int face, int func, int ref, int mask); + + /** + *

    Reference Page

    + *

    + * Sets front and/or back stencil test actions. + * + * @param face whether front and/or back stencil state is updated. One of:
    {@link GL#GL_FRONT FRONT}{@link GL#GL_BACK BACK}{@link GL#GL_FRONT_AND_BACK FRONT_AND_BACK}
    + * @param sfail the action to take when the stencil test fails. The initial value is GL_KEEP. One of:
    {@link GL#GL_KEEP KEEP}{@link GL#GL_ZERO ZERO}{@link GL#GL_REPLACE REPLACE}{@link GL#GL_INCR INCR}{@link GL#GL_INCR_WRAP INCR_WRAP}{@link GL#GL_DECR DECR}{@link GL#GL_DECR_WRAP DECR_WRAP}{@link GL#GL_INVERT INVERT}
    + * @param dpfail the stencil action when the stencil test passes, but the depth test fails. The initial value is GL_KEEP. + * @param dppass the stencil action when both the stencil test and the depth test pass, or when the stencil test passes and either there is no depth buffer or depth + * testing is not enabled. The initial value is GL_KEEP. + */ + void glStencilOpSeparate(int face, int sfail, int dpfail, int dppass); + + /** + *

    Reference Page

    + *

    + * Specifies a two-dimensional texture image. + * + * @param target the texture target. + * @param level the level-of-detail number. + * @param internalFormat the texture internal format. + * @param width the texture width. + * @param height the texture height. + * @param border the texture border width. + * @param format the texel data format. + * @param type the texel data type. + * @param data the texel data. + */ + void glTexImage2D(int target, int level, int internalFormat, int width, int height, int border, int format, + int type, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Float version of {@link #glTexParameteri TexParameteri}. + * + * @param target the texture target. + * @param pname the parameter to set. + * @param param the parameter value. + */ + void glTexParameterf(int target, int pname, float param); + + /** + *

    Reference Page

    + *

    + * Sets the integer value of a texture parameter, which controls how the texel array is treated when specified or changed, and when applied to a fragment. + * + * @param target the texture target. + * @param pname the parameter to set. + * @param param the parameter value. + */ + void glTexParameteri(int target, int pname, int param); + + /** + *

    Reference Page

    + *

    + * Respecifies a rectangular subregion of an existing texel array. No change is made to the internalformat, width, height, depth, or border parameters of + * the specified texel array, nor is any change made to texel values outside the specified subregion. + * + * @param target the texture target. + * @param level the level-of-detail-number + * @param xoffset the left coordinate of the texel subregion + * @param yoffset the bottom coordinate of the texel subregion + * @param width the subregion width + * @param height the subregion height + * @param format the pixel data format. + * @param type the pixel data type. + * @param data the pixel data. + */ + void glTexSubImage2D(int target, int level, int xoffset, int yoffset, int width, int height, int format, int type, + ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single float uniform variable or a float uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform1(int location, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single int uniform variable or a int uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform1(int location, IntBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a float uniform variable for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param v0 the uniform value. + */ + void glUniform1f(int location, float v0); + + /** + *

    Reference Page

    + *

    + * Specifies the value of an int uniform variable for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param v0 the uniform value. + */ + void glUniform1i(int location, int v0); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single ivec2 uniform variable or an ivec2 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform2(int location, IntBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single vec2 uniform variable or a vec2 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform2(int location, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a vec2 uniform variable for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param v0 the uniform x value. + * @param v1 the uniform y value. + */ + void glUniform2f(int location, float v0, float v1); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single ivec3 uniform variable or an ivec3 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform3(int location, IntBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single vec3 uniform variable or a vec3 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform3(int location, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a vec3 uniform variable for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param v0 the uniform x value. + * @param v1 the uniform y value. + * @param v2 the uniform z value. + */ + void glUniform3f(int location, float v0, float v1, float v2); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single vec4 uniform variable or a vec4 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform4(int location, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single ivec4 uniform variable or an ivec4 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniform4(int location, IntBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a vec4 uniform variable for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param v0 the uniform x value. + * @param v1 the uniform y value. + * @param v2 the uniform z value. + * @param v3 the uniform w value. + */ + void glUniform4f(int location, float v0, float v1, float v2, float v3); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single mat3 uniform variable or a mat3 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param transpose whether to transpose the matrix as the values are loaded into the uniform variable. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniformMatrix3(int location, boolean transpose, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Specifies the value of a single mat4 uniform variable or a mat4 uniform variable array for the current program object. + * + * @param location the location of the uniform variable to be modified. + * @param transpose whether to transpose the matrix as the values are loaded into the uniform variable. + * @param value a pointer to an array of {@code count} values that will be used to update the specified uniform variable. + */ + void glUniformMatrix4(int location, boolean transpose, FloatBuffer value); + + /** + *

    Reference Page

    + *

    + * Installs a program object as part of current rendering state. + * + * @param program the program object whose executables are to be used as part of current rendering state. + */ + void glUseProgram(int program); + + /** + *

    Reference Page

    + *

    + * Specifies the location and organization of a vertex attribute array. + * + * @param index the index of the generic vertex attribute to be modified + * @param size the number of values per vertex that are stored in the array. + * @param type the data type of each component in the array. The initial value is GL_FLOAT. + * @param normalized whether fixed-point data values should be normalized or converted directly as fixed-point values when they are accessed + * @param stride the byte offset between consecutive generic vertex attributes. If stride is 0, the generic vertex attributes are understood to be tightly packed in + * the array. The initial value is 0. + * @param pointer the vertex attribute data or the offset of the first component of the first generic vertex attribute in the array in the data store of the buffer + * currently bound to the {@link GL#GL_ARRAY_BUFFER ARRAY_BUFFER} target. The initial value is 0. + */ + void glVertexAttribPointer(int index, int size, int type, boolean normalized, int stride, long pointer); + + /** + *

    Reference Page

    + *

    + * Specifies the viewport transformation parameters for all viewports. + *

    + *

    In the initial state, {@code width} and {@code height} for each viewport are set to the width and height, respectively, of the window into which the GL is to do + * its rendering. If the default framebuffer is bound but no default framebuffer is associated with the GL context, then {@code width} and {@code height} are + * initially set to zero.

    + * + * @param x the left viewport coordinate. + * @param y the bottom viewport coordinate. + * @param width the viewport width. + * @param height the viewport height. + */ + void glViewport(int x, int y, int width, int height); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL2.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL2.java index 8f7bb2f84..fbd6e088d 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL2.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL2.java @@ -35,11 +35,11 @@ import java.nio.ByteBuffer; /** * GL functions only available on vanilla desktop OpenGL 2. - * + * * @author Kirill Vainer */ public interface GL2 extends GL { - + public static final int GL_ALPHA8 = 0x803C; public static final int GL_ALPHA_TEST = 0xBC0; public static final int GL_BGR = 0x80E0; @@ -50,10 +50,11 @@ public interface GL2 extends GL { public static final int GL_DEPTH_TEXTURE_MODE = 0x884B; public static final int GL_DOUBLEBUFFER = 0xC32; public static final int GL_DRAW_BUFFER = 0xC01; + public static final int GL_POINT = 0x1B00; + public static final int GL_LINE = 0x1B01; public static final int GL_FILL = 0x1B02; public static final int GL_GENERATE_MIPMAP = 0x8191; public static final int GL_INTENSITY = 0x8049; - public static final int GL_LINE = 0x1B01; public static final int GL_LUMINANCE8 = 0x8040; public static final int GL_LUMINANCE8_ALPHA8 = 0x8045; public static final int GL_MAX_ELEMENTS_INDICES = 0x80E9; @@ -73,14 +74,133 @@ public interface GL2 extends GL { public static final int GL_TEXTURE_WRAP_R = 0x8072; public static final int GL_VERTEX_PROGRAM_POINT_SIZE = 0x8642; public static final int GL_UNSIGNED_INT_8_8_8_8 = 0x8035; - + + /** + *

    Reference Page - This function is deprecated and unavailable in the Core profile

    + * + * The alpha test discards a fragment conditionally based on the outcome of a comparison between the incoming fragment’s alpha value and a constant value. + * The comparison is enabled or disabled with the generic {@link #glEnable Enable} and {@link #glDisable Disable} commands using the symbolic constant {@link #GL_ALPHA_TEST ALPHA_TEST}. + * When disabled, it is as if the comparison always passes. The test is controlled with this method. + * + * @param func a symbolic constant indicating the alpha test function. One of:
    {@link #GL_NEVER NEVER}{@link #GL_ALWAYS ALWAYS}{@link #GL_LESS LESS}{@link #GL_LEQUAL LEQUAL}{@link #GL_EQUAL EQUAL}{@link #GL_GEQUAL GEQUAL}{@link #GL_GREATER GREATER}{@link #GL_NOTEQUAL NOTEQUAL}
    + * @param ref a reference value clamped to the range [0, 1]. When performing the alpha test, the GL will convert the reference value to the same representation as the fragment's alpha value (floating-point or fixed-point). + */ public void glAlphaFunc(int func, float ref); + + /** + *

    Reference Page

    + *

    + * Controls the rasterization of points if no vertex, tessellation control, tessellation evaluation, or geometry shader is active. The default point size is 1.0. + * + * @param size the request size of a point. + */ public void glPointSize(float size); + + /** + *

    Reference Page

    + * + * Controls the interpretation of polygons for rasterization. + * + *

    {@link #GL_FILL FILL} is the default mode of polygon rasterization. Note that these modes affect only the final rasterization of polygons: in particular, a + * polygon's vertices are lit, and the polygon is clipped and possibly culled before these modes are applied. Polygon antialiasing applies only to the + * {@link #GL_FILL FILL} state of PolygonMode. For {@link #GL_POINT POINT} or {@link #GL_LINE LINE}, point antialiasing or line segment antialiasing, respectively, apply.

    + * + * @param face the face for which to set the rasterizing method. One of:
    {@link #GL_FRONT FRONT}{@link #GL_BACK BACK}{@link #GL_FRONT_AND_BACK FRONT_AND_BACK}
    + * @param mode the rasterization mode. One of:
    {@link #GL_POINT POINT}{@link #GL_LINE LINE}{@link #GL_FILL FILL}
    + */ public void glPolygonMode(int face, int mode); + + /** + *

    Reference Page

    + *

    + * Defines the color buffer to which fragment color zero is written. + * + * @param mode the color buffer to draw to. + */ public void glDrawBuffer(int mode); + + /** + *

    Reference Page

    + *

    + * Defines the color buffer from which values are obtained. + * + * @param mode the color buffer to read from. + */ public void glReadBuffer(int mode); - public void glCompressedTexImage3D(int target, int level, int internalformat, int width, int height, int depth, int border, ByteBuffer data); - public void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, ByteBuffer data); - public void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, int format, int type, ByteBuffer data); - public void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, int depth, int format, int type, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Specifies a three-dimensional texture image in a compressed format. + * + * @param target the target texture. + * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + * @param internalFormat the format of the compressed image data. + * @param width the width of the texture image + * @param height the height of the texture image + * @param depth the depth of the texture image + * @param border must be 0 + * @param data a pointer to the compressed image data + */ + public void glCompressedTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, + int border, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Respecifies only a cubic subregion of an existing 3D texel array, with incoming data stored in a specific compressed image format. + * + * @param target the target texture. + * @param level the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image. + * @param xoffset a texel offset in the x direction within the texture array. + * @param yoffset a texel offset in the y direction within the texture array. + * @param zoffset a texel offset in the z direction within the texture array. + * @param width the width of the texture subimage. + * @param height the height of the texture subimage. + * @param depth the depth of the texture subimage. + * @param format the format of the compressed image data stored at address {@code data}. + * @param data a pointer to the compressed image data. + */ + public void glCompressedTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, + int height, int depth, int format, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Specifies a three-dimensional texture image. + * + * @param target the texture target. + * @param level the level-of-detail number. + * @param internalFormat the texture internal format. + * @param width the texture width. + * @param height the texture height. + * @param depth the texture depth. + * @param border the texture border width. + * @param format the texel data format. + * @param type the texel data type. + * @param data the texel data. + */ + public void glTexImage3D(int target, int level, int internalFormat, int width, int height, int depth, int border, + int format, int type, ByteBuffer data); + + /** + *

    Reference Page

    + *

    + * Respecifies a cubic subregion of an existing 3D texel array. No change is made to the internalformat, width, height, depth, or border parameters of + * the specified texel array, nor is any change made to texel values outside the specified subregion. + * + * @param target the texture target. + * @param level the level-of-detail-number. + * @param xoffset the x coordinate of the texel subregion. + * @param yoffset the y coordinate of the texel subregion. + * @param zoffset the z coordinate of the texel subregion. + * @param width the subregion width. + * @param height the subregion height. + * @param depth the subregion depth. + * @param format the pixel data format. + * @param type the pixel data type. + * @param data the pixel data. + */ + public void glTexSubImage3D(int target, int level, int xoffset, int yoffset, int zoffset, int width, int height, + int depth, int format, int type, ByteBuffer data); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL3.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL3.java index b3e112545..595f5ff85 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL3.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL3.java @@ -65,7 +65,7 @@ public interface GL3 extends GL2 { public static final int GL_RG16I = 33337; public static final int GL_RG16UI = 33338; public static final int GL_RG32I = 33339; - public static final int GL_RG32UI = 33340; + public static final int GL_RG32UI = 33340; public static final int GL_RGBA32UI = 36208; public static final int GL_RGB32UI = 36209; public static final int GL_RGBA16UI = 36214; @@ -82,10 +82,50 @@ public interface GL3 extends GL2 { public static final int GL_RG_INTEGER = 33320; public static final int GL_RGB_INTEGER = 36248; public static final int GL_RGBA_INTEGER = 36249; - - public void glBindFragDataLocation(int param1, int param2, String param3); /// GL3+ - public void glBindVertexArray(int param1); /// GL3+ + + /** + *

    Reference Page

    + *

    + * Binds a user-defined varying out variable to a fragment shader color number. + * + * @param program the name of the program containing varying out variable whose binding to modify. + * @param colorNumber the color number to bind the user-defined varying out variable to. + * @param name the name of the user-defined varying out variable whose binding to modify. + */ + public void glBindFragDataLocation(int program, int colorNumber, String name); /// GL3+ + + /** + *

    Reference Page

    + *

    + * Binds a vertex array object + * + * @param array the name of the vertex array to bind. + */ + public void glBindVertexArray(int array); /// GL3+ + + /** + * Deletes vertex array objects. + * + * @param arrays an array containing the n names of the objects to be deleted. + */ public void glDeleteVertexArrays(IntBuffer arrays); /// GL3+ - public void glGenVertexArrays(IntBuffer param1); /// GL3+ - public String glGetString(int param1, int param2); /// GL3+ + + /** + *

    Reference Page

    + * + * Generates vertex array object names. + * + * @param arrays a buffer in which the generated vertex array object names are stored. + */ + public void glGenVertexArrays(IntBuffer arrays); /// GL3+ + + /** + *

    Reference Page

    + *

    + * Queries indexed string state. + * + * @param name the indexed state to query. One of:
    {@link GL#GL_EXTENSIONS EXTENSIONS}{@link GL2#GL_SHADING_LANGUAGE_VERSION SHADING_LANGUAGE_VERSION}
    + * @param index the index of the particular element being queried. + */ + public String glGetString(int name, int index); /// GL3+ } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL4.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL4.java index 058bc00ec..9afe4755b 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GL4.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GL4.java @@ -31,16 +31,23 @@ */ package com.jme3.renderer.opengl; -import java.nio.IntBuffer; - /** * GL functions only available on vanilla desktop OpenGL 4.0. * * @author Kirill Vainer */ public interface GL4 extends GL3 { - public static final int GL_TESS_CONTROL_SHADER=0x8E88; - public static final int GL_TESS_EVALUATION_SHADER=0x8E87; - public static final int GL_PATCHES=0xE; + + public static final int GL_TESS_CONTROL_SHADER = 0x8E88; + public static final int GL_TESS_EVALUATION_SHADER = 0x8E87; + public static final int GL_PATCHES = 0xE; + + /** + *

    Reference Page

    + *

    + * Specifies the integer value of the specified parameter for patch primitives. + * + * @param count the new value for the parameter given by {@code pname} + */ public void glPatchParameter(int count); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLExt.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLExt.java index c6d420cc7..642ac0c71 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLExt.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLExt.java @@ -36,81 +36,200 @@ import java.nio.IntBuffer; /** * GL functions provided by extensions. - * + *

    * Always must check against a renderer capability prior to using those. - * + * * @author Kirill Vainer */ public interface GLExt { - public static final int GL_ALREADY_SIGNALED = 0x911A; - public static final int GL_COMPRESSED_RGB8_ETC2 = 0x9274; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; - public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; - public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; - public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; - public static final int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; - public static final int GL_CONDITION_SATISFIED = 0x911C; - public static final int GL_DEPTH_COMPONENT32F = 0x8CAC; - public static final int GL_DEPTH24_STENCIL8_EXT = 0x88F0; - public static final int GL_DEPTH_STENCIL_EXT = 0x84F9; - public static final int GL_ETC1_RGB8_OES = 0x8D64; - public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; - public static final int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; - public static final int GL_HALF_FLOAT_ARB = 0x140B; - public static final int GL_HALF_FLOAT_OES = 0x8D61; - public static final int GL_LUMINANCE16F_ARB = 0x881E; - public static final int GL_LUMINANCE32F_ARB = 0x8818; - public static final int GL_LUMINANCE_ALPHA16F_ARB = 0x881F; - public static final int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E; - public static final int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F; - public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; - public static final int GL_MAX_SAMPLES_EXT = 0x8D57; - public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; - public static final int GL_MULTISAMPLE_ARB = 0x809D; - public static final int GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE; - public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; - public static final int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; - public static final int GL_R11F_G11F_B10F_EXT = 0x8C3A; - public static final int GL_RGBA8 = 0x8058; - public static final int GL_RGB16F_ARB = 0x881B; - public static final int GL_RGB32F_ARB = 0x8815; - public static final int GL_RGB9_E5_EXT = 0x8C3D; - public static final int GL_RGBA16F_ARB = 0x881A; - public static final int GL_RGBA32F_ARB = 0x8814; - public static final int GL_SAMPLES_ARB = 0x80A9; - public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; - public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; - public static final int GL_SAMPLE_POSITION = 0x8E50; - public static final int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; - public static final int GL_SLUMINANCE8_EXT = 0x8C47; - public static final int GL_SRGB8_ALPHA8_EXT = 0x8C43; - public static final int GL_SRGB8_EXT = 0x8C41; - public static final int GL_SYNC_FLUSH_COMMANDS_BIT = 0x1; - public static final int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117; - public static final int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; - public static final int GL_TEXTURE_2D_MULTISAMPLE = 0x9100; - public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102; - public static final int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F; - public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; - public static final int GL_TIMEOUT_EXPIRED = 0x911B; - public static final int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; - public static final int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; - public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; - public static final int GL_WAIT_FAILED = 0x911D; + public static final int GL_ALREADY_SIGNALED = 0x911A; + public static final int GL_COMPRESSED_RGB8_ETC2 = 0x9274; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2; + public static final int GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3; + public static final int GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT = 0x8C4D; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT = 0x8C4E; + public static final int GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT = 0x8C4F; + public static final int GL_COMPRESSED_SRGB_S3TC_DXT1_EXT = 0x8C4C; + public static final int GL_CONDITION_SATISFIED = 0x911C; + public static final int GL_DEPTH_COMPONENT32F = 0x8CAC; + public static final int GL_DEPTH24_STENCIL8_EXT = 0x88F0; + public static final int GL_DEPTH_STENCIL_EXT = 0x84F9; + public static final int GL_ETC1_RGB8_OES = 0x8D64; + public static final int GL_FRAMEBUFFER_SRGB_CAPABLE_EXT = 0x8DBA; + public static final int GL_FRAMEBUFFER_SRGB_EXT = 0x8DB9; + public static final int GL_HALF_FLOAT_ARB = 0x140B; + public static final int GL_HALF_FLOAT_OES = 0x8D61; + public static final int GL_LUMINANCE16F_ARB = 0x881E; + public static final int GL_LUMINANCE32F_ARB = 0x8818; + public static final int GL_LUMINANCE_ALPHA16F_ARB = 0x881F; + public static final int GL_MAX_COLOR_TEXTURE_SAMPLES = 0x910E; + public static final int GL_MAX_DEPTH_TEXTURE_SAMPLES = 0x910F; + public static final int GL_MAX_DRAW_BUFFERS_ARB = 0x8824; + public static final int GL_MAX_SAMPLES_EXT = 0x8D57; + public static final int GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FF; + public static final int GL_MULTISAMPLE_ARB = 0x809D; + public static final int GL_NUM_PROGRAM_BINARY_FORMATS = 0x87FE; + public static final int GL_PIXEL_PACK_BUFFER_ARB = 0x88EB; + public static final int GL_PIXEL_UNPACK_BUFFER_ARB = 0x88EC; + public static final int GL_R11F_G11F_B10F_EXT = 0x8C3A; + public static final int GL_RGBA8 = 0x8058; + public static final int GL_RGB16F_ARB = 0x881B; + public static final int GL_RGB32F_ARB = 0x8815; + public static final int GL_RGB9_E5_EXT = 0x8C3D; + public static final int GL_RGBA16F_ARB = 0x881A; + public static final int GL_RGBA32F_ARB = 0x8814; + public static final int GL_SAMPLES_ARB = 0x80A9; + public static final int GL_SAMPLE_ALPHA_TO_COVERAGE_ARB = 0x809E; + public static final int GL_SAMPLE_BUFFERS_ARB = 0x80A8; + public static final int GL_SAMPLE_POSITION = 0x8E50; + public static final int GL_SLUMINANCE8_ALPHA8_EXT = 0x8C45; + public static final int GL_SLUMINANCE8_EXT = 0x8C47; + public static final int GL_SRGB8_ALPHA8_EXT = 0x8C43; + public static final int GL_SRGB8_EXT = 0x8C41; + public static final int GL_SYNC_FLUSH_COMMANDS_BIT = 0x1; + public static final int GL_SYNC_GPU_COMMANDS_COMPLETE = 0x9117; + public static final int GL_TEXTURE_2D_ARRAY_EXT = 0x8C1A; + public static final int GL_TEXTURE_2D_MULTISAMPLE = 0x9100; + public static final int GL_TEXTURE_2D_MULTISAMPLE_ARRAY = 0x9102; + public static final int GL_TEXTURE_CUBE_MAP_SEAMLESS = 0x884F; + public static final int GL_TEXTURE_MAX_ANISOTROPY_EXT = 0x84FE; + public static final int GL_TIMEOUT_EXPIRED = 0x911B; + public static final int GL_UNSIGNED_INT_10F_11F_11F_REV_EXT = 0x8C3B; + public static final int GL_UNSIGNED_INT_24_8_EXT = 0x84FA; + public static final int GL_UNSIGNED_INT_5_9_9_9_REV_EXT = 0x8C3E; + public static final int GL_WAIT_FAILED = 0x911D; + + /** + *

    Reference Page

    + *

    + * Creates and initializes a buffer object's data store. + *

    + *

    {@code usage} is a hint to the GL implementation as to how a buffer object's data store will be accessed. This enables the GL implementation to make + * more intelligent decisions that may significantly impact buffer object performance. It does not, however, constrain the actual usage of the data store. + * {@code usage} can be broken down into two parts: first, the frequency of access (modification and usage), and second, the nature of that access. The + * frequency of access may be one of these:

    + *

    + *

      + *
    • STREAM - The data store contents will be modified once and used at most a few times.
    • + *
    • STATIC - The data store contents will be modified once and used many times.
    • + *
    • DYNAMIC - The data store contents will be modified repeatedly and used many times.
    • + *
    + *

    + *

    The nature of access may be one of these:

    + *

    + *

      + *
    • DRAW - The data store contents are modified by the application, and used as the source for GL drawing and image specification commands.
    • + *
    • READ - The data store contents are modified by reading data from the GL, and used to return that data when queried by the application.
    • + *
    • COPY - The data store contents are modified by reading data from the GL, and used as the source for GL drawing and image specification commands.
    • + *
    + * + * @param target the target buffer object. + * @param data a pointer to data that will be copied into the data store for initialization, or {@code NULL} if no data is to be copied. + * @param usage the expected usage pattern of the data store. + */ + public void glBufferData(int target, IntBuffer data, int usage); + + /** + *

    Reference Page

    + *

    + * Updates a subset of a buffer object's data store. + * + * @param target the target buffer object. + * @param offset the offset into the buffer object's data store where data replacement will begin, measured in bytes. + * @param data a pointer to the new data that will be copied into the data store. + */ + public void glBufferSubData(int target, long offset, IntBuffer data); + + /** + * Causes the client to block and wait for a sync object to become signaled. If {@code sync} is signaled when {@code glClientWaitSync} is called, + * {@code glClientWaitSync} returns immediately, otherwise it will block and wait for up to timeout nanoseconds for {@code sync} to become signaled. + * + * @param sync the sync object whose status to wait on. + * @param flags a bitfield controlling the command flushing behavior. + * @param timeout the timeout, specified in nanoseconds, for which the implementation should wait for {@code sync} to become signaled. + * @return the status is one of ALREADY_SIGNALED, TIMEOUT_EXPIRED, CONDITION_SATISFIED or WAIT_FAILED. + */ + public int glClientWaitSync(Object sync, int flags, long timeout); + + /** + * Deletes a sync object. + * + * @param sync the sync object to be deleted. + */ + public void glDeleteSync(Object sync); + + /** + * Draw multiple instances of a range of elements. + * + * @param mode the kind of primitives to render. + * @param first the starting index in the enabled arrays. + * @param count the number of indices to be rendered. + * @param primCount the number of instances of the specified range of indices to be rendered. + */ + public void glDrawArraysInstancedARB(int mode, int first, int count, int primCount); + + /** + *

    Reference Page

    + *

    + * Specifies a list of color buffers to be drawn into. + * + * @param bufs an array of symbolic constants specifying the buffers into which fragment colors or data values will be written. + */ + public void glDrawBuffers(IntBuffer bufs); + + /** + * Draws multiple instances of a set of elements. + * + * @param mode the kind of primitives to render. + * @param indicesCount the number of elements to be rendered. + * @param type the type of the values in {@code indices}. + * @param indicesBufferOffset a pointer to the location where the indices are stored. + * @param primCount the number of instances of the specified range of indices to be rendered. + */ + public void glDrawElementsInstancedARB(int mode, int indicesCount, int type, long indicesBufferOffset, int primCount); + + /** + * Creates a new sync object and inserts it into the GL command stream. + * + * @param condition the condition that must be met to set the sync object's state to signaled. + * @param flags a bitwise combination of flags controlling the behavior of the sync object. No flags are presently defined for this operation and {@code flags} must be zero. + */ + public Object glFenceSync(int condition, int flags); + + /** + * Retrieves the location of a sample. + * + * @param pname the sample parameter name. + * @param index the index of the sample whose position to query. + * @param val an array to receive the position of the sample. + */ + public void glGetMultisample(int pname, int index, FloatBuffer val); + + /** + * Establishes the data storage, format, dimensions, and number of samples of a 2D multisample texture's image. + * + * @param target the target of the operation. + * @param samples the number of samples in the multisample texture's image + * @param internalFormat the internal format to be used to store the multisample texture's image. {@code internalformat} must specify a color-renderable, depth-renderable, + * or stencil-renderable format. + * @param width the width of the multisample texture's image, in texels + * @param height the height of the multisample texture's image, in texels + * @param fixedSampleLocations whether the image will use identical sample locations and the same number of samples for all texels in the image, and the sample locations will not + * depend on the internal format or size of the image + */ + public void glTexImage2DMultisample(int target, int samples, int internalFormat, int width, int height, + boolean fixedSampleLocations); - public void glBufferData(int target, IntBuffer data, int usage); - public void glBufferSubData(int target, long offset, IntBuffer data); - public int glClientWaitSync(Object sync, int flags, long timeout); - public void glDeleteSync(Object sync); - public void glDrawArraysInstancedARB(int mode, int first, int count, int primcount); - public void glDrawBuffers(IntBuffer bufs); - public void glDrawElementsInstancedARB(int mode, int indices_count, int type, long indices_buffer_offset, int primcount); - public Object glFenceSync(int condition, int flags); - public void glGetMultisample(int pname, int index, FloatBuffer val); - public void glTexImage2DMultisample(int target, int samples, int internalformat, int width, int height, boolean fixedsamplelocations); - public void glVertexAttribDivisorARB(int index, int divisor); + /** + * Modifies the rate at which generic vertex attributes advance when rendering multiple instances of primitives in a single draw call. If {@code divisor} + * is zero, the attribute at slot {@code index} advances once per vertex. If {@code divisor} is non-zero, the attribute advances once per {@code divisor} + * instances of the set(s) of vertices being rendered. An attribute is referred to as {@code instanced} if its {@code divisor} value is non-zero. + * + * @param index the attribute index. + * @param divisor the divisor value. + */ + public void glVertexAttribDivisorARB(int index, int divisor); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLFbo.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLFbo.java index 97a579203..e049f7dfc 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLFbo.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLFbo.java @@ -34,15 +34,15 @@ package com.jme3.renderer.opengl; import java.nio.IntBuffer; /** - * Framebuffer object functions. - * - * Available by default in OpenGL ES 2, but on desktop GL 2 + * Framebuffer object functions. + *

    + * Available by default in OpenGL ES 2, but on desktop GL 2 * an extension is required. - * + * * @author Kirill Vainer */ public interface GLFbo { - + public static final int GL_COLOR_ATTACHMENT0_EXT = 0x8CE0; public static final int GL_COLOR_ATTACHMENT1_EXT = 0x8CE1; public static final int GL_COLOR_ATTACHMENT2_EXT = 0x8CE2; @@ -80,19 +80,33 @@ public interface GLFbo { public static final int GL_READ_FRAMEBUFFER_BINDING_EXT = 0x8CAA; public static final int GL_READ_FRAMEBUFFER_EXT = 0x8CA8; public static final int GL_RENDERBUFFER_EXT = 0x8D41; - - public void glBindFramebufferEXT(int param1, int param2); - public void glBindRenderbufferEXT(int param1, int param2); - public void glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter); - public int glCheckFramebufferStatusEXT(int param1); - public void glDeleteFramebuffersEXT(IntBuffer param1); - public void glDeleteRenderbuffersEXT(IntBuffer param1); - public void glFramebufferRenderbufferEXT(int param1, int param2, int param3, int param4); - public void glFramebufferTexture2DEXT(int param1, int param2, int param3, int param4, int param5); + + public void glBindFramebufferEXT(int target, int frameBuffer); + + public void glBindRenderbufferEXT(int target, int renderBuffer); + + public void glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, + int dstY1, int mask, int filter); + + public int glCheckFramebufferStatusEXT(int target); + + public void glDeleteFramebuffersEXT(IntBuffer frameBuffers); + + public void glDeleteRenderbuffersEXT(IntBuffer renderBuffers); + + public void glFramebufferRenderbufferEXT(int target, int attachment, int renderBufferTarget, int renderBuffer); + + public void glFramebufferTexture2DEXT(int target, int attachment, int texTarget, int texture, int level); + public void glFramebufferTextureLayerEXT(int target, int attachment, int texture, int level, int layer); - public void glGenFramebuffersEXT(IntBuffer param1); - public void glGenRenderbuffersEXT(IntBuffer param1); - public void glGenerateMipmapEXT(int param1); - public void glRenderbufferStorageEXT(int param1, int param2, int param3, int param4); - public void glRenderbufferStorageMultisampleEXT(int target, int samples, int internalformat, int width, int height); + + public void glGenFramebuffersEXT(IntBuffer frameBuffers); + + public void glGenRenderbuffersEXT(IntBuffer renderBuffers); + + public void glGenerateMipmapEXT(int target); + + public void glRenderbufferStorageEXT(int target, int internalFormat, int width, int height); + + public void glRenderbufferStorageMultisampleEXT(int target, int samples, int internalFormat, int width, int height); } diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java index e90affb3d..9851f3418 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/GLRenderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2014 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -222,7 +222,7 @@ public final class GLRenderer implements Renderer { if (glslVer < 400) { break; } - // so that future OpenGL revisions wont break jme3 + // so that future OpenGL revisions won't break jme3 // fall through intentional case 450: caps.add(Caps.GLSL450); @@ -450,7 +450,7 @@ public final class GLRenderer implements Renderer { logger.log(Level.FINER, "Samples: {0}", samples); boolean enabled = gl.glIsEnabled(GLExt.GL_MULTISAMPLE_ARB); if (samples > 0 && available && !enabled) { - // Doesn't seem to be neccessary .. OGL spec says its always + // Doesn't seem to be necessary .. OGL spec says it's always // set by default? gl.glEnable(GLExt.GL_MULTISAMPLE_ARB); } @@ -870,7 +870,7 @@ public final class GLRenderer implements Renderer { } private int convertBlendEquationAlpha(RenderState.BlendEquationAlpha blendEquationAlpha) { - //Note: InheritColor mode should already be handled, that is why it does not belong the the switch case. + //Note: InheritColor mode should already be handled, that is why it does not belong the switch case. switch (blendEquationAlpha) { case Add: return GL2.GL_FUNC_ADD; diff --git a/jme3-core/src/main/java/com/jme3/renderer/opengl/TextureUtil.java b/jme3-core/src/main/java/com/jme3/renderer/opengl/TextureUtil.java index 7adc3ff19..7d2ff78d3 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/opengl/TextureUtil.java +++ b/jme3-core/src/main/java/com/jme3/renderer/opengl/TextureUtil.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2014 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -268,7 +268,7 @@ final class TextureUtil { int[] mipSizes = image.getMipMapSizes(); int pos = 0; - // TODO: Remove unneccessary allocation + // TODO: Remove unnecessary allocation if (mipSizes == null) { if (data != null) { mipSizes = new int[]{data.capacity()}; diff --git a/jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java b/jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java index 9a0ed3632..5fd2aade9 100644 --- a/jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java +++ b/jme3-core/src/main/java/com/jme3/renderer/queue/RenderQueue.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -101,7 +101,7 @@ public class RenderQueue { /** * A special mode used for rendering transparent objects that - * should not be effected by {@link SceneProcessor}. + * should not be affected by {@link SceneProcessor}. * Generally this would contain translucent objects, and * also objects that do not write to the depth buffer such as * particle emitters. @@ -165,7 +165,7 @@ public class RenderQueue { * *

    The most significant comparator is the one for the transparent * bucket since there is no correct way to sort the transparent bucket - * that will handle all geometry all the time. In certain cases, the + * that will handle all geometries all the time. In certain cases, the * application may know the best way to sort and now has the option of * configuring a specific implementation.

    * diff --git a/jme3-core/src/main/java/com/jme3/scene/CameraNode.java b/jme3-core/src/main/java/com/jme3/scene/CameraNode.java index 44fed8208..220686f56 100644 --- a/jme3-core/src/main/java/com/jme3/scene/CameraNode.java +++ b/jme3-core/src/main/java/com/jme3/scene/CameraNode.java @@ -1,122 +1,123 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package com.jme3.scene; - -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.renderer.Camera; -import com.jme3.scene.control.CameraControl; -import com.jme3.scene.control.CameraControl.ControlDirection; -import com.jme3.util.clone.Cloner; -import java.io.IOException; - -/** - * CameraNode simply uses {@link CameraControl} to implement - * linking of camera and node data. - * - * @author Tim8Dev - */ -public class CameraNode extends Node { - - private CameraControl camControl; - - /** - * Serialization only. Do not use. - */ - public CameraNode() { - } - - public CameraNode(String name, Camera camera) { - this(name, new CameraControl(camera)); - } - - public CameraNode(String name, CameraControl control) { - super(name); - addControl(control); - camControl = control; - } - - public void setEnabled(boolean enabled) { - camControl.setEnabled(enabled); - } - - public boolean isEnabled() { - return camControl.isEnabled(); - } - - public void setControlDir(ControlDirection controlDir) { - camControl.setControlDir(controlDir); - } - - public void setCamera(Camera camera) { - camControl.setCamera(camera); - } - - public ControlDirection getControlDir() { - return camControl.getControlDir(); - } - - public Camera getCamera() { - return camControl.getCamera(); - } - -// @Override -// public void lookAt(Vector3f position, Vector3f upVector) { -// this.lookAt(position, upVector); -// camControl.getCamera().lookAt(position, upVector); -// } - - /** - * Called internally by com.jme3.util.clone.Cloner. Do not call directly. - */ - @Override - public void cloneFields( Cloner cloner, Object original ) { - super.cloneFields(cloner, original); - - // A change in behavior... I think previously CameraNode was probably - // not really cloneable... or at least its camControl would be pointing - // to the wrong control. -pspeed - this.camControl = cloner.clone(camControl); - } - - @Override - public void read(JmeImporter im) throws IOException { - super.read(im); - camControl = (CameraControl)im.getCapsule(this).readSavable("camControl", null); - } - - @Override - public void write(JmeExporter ex) throws IOException { - super.write(ex); - ex.getCapsule(this).write(camControl, "camControl", null); - } -} +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.scene; + +import com.jme3.export.JmeExporter; +import com.jme3.export.JmeImporter; +import com.jme3.renderer.Camera; +import com.jme3.scene.control.CameraControl; +import com.jme3.scene.control.CameraControl.ControlDirection; +import com.jme3.util.clone.Cloner; +import java.io.IOException; + +/** + * CameraNode simply uses {@link CameraControl} to implement + * linking of camera and node data. + * + * @author Tim8Dev + */ +public class CameraNode extends Node { + + private CameraControl camControl; + + /** + * Serialization only. Do not use. + */ + public CameraNode() { + super(); + } + + public CameraNode(String name, Camera camera) { + this(name, new CameraControl(camera)); + } + + public CameraNode(String name, CameraControl control) { + super(name); + addControl(control); + camControl = control; + } + + public void setEnabled(boolean enabled) { + camControl.setEnabled(enabled); + } + + public boolean isEnabled() { + return camControl.isEnabled(); + } + + public void setControlDir(ControlDirection controlDir) { + camControl.setControlDir(controlDir); + } + + public void setCamera(Camera camera) { + camControl.setCamera(camera); + } + + public ControlDirection getControlDir() { + return camControl.getControlDir(); + } + + public Camera getCamera() { + return camControl.getCamera(); + } + +// @Override +// public void lookAt(Vector3f position, Vector3f upVector) { +// this.lookAt(position, upVector); +// camControl.getCamera().lookAt(position, upVector); +// } + + /** + * Called internally by com.jme3.util.clone.Cloner. Do not call directly. + */ + @Override + public void cloneFields( Cloner cloner, Object original ) { + super.cloneFields(cloner, original); + + // A change in behavior... I think previously CameraNode was probably + // not really cloneable... or at least its camControl would be pointing + // to the wrong control. -pspeed + this.camControl = cloner.clone(camControl); + } + + @Override + public void read(JmeImporter im) throws IOException { + super.read(im); + camControl = (CameraControl)im.getCapsule(this).readSavable("camControl", null); + } + + @Override + public void write(JmeExporter ex) throws IOException { + super.write(ex); + ex.getCapsule(this).write(camControl, "camControl", null); + } +} diff --git a/jme3-core/src/main/java/com/jme3/scene/Geometry.java b/jme3-core/src/main/java/com/jme3/scene/Geometry.java index 6ba209bc3..78ea0c349 100644 --- a/jme3-core/src/main/java/com/jme3/scene/Geometry.java +++ b/jme3-core/src/main/java/com/jme3/scene/Geometry.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,9 +43,9 @@ import com.jme3.material.Material; import com.jme3.math.Matrix4f; import com.jme3.renderer.Camera; import com.jme3.scene.VertexBuffer.Type; +import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.IdentityCloneFunction; -import com.jme3.util.TempVars; import java.io.IOException; import java.util.Queue; import java.util.logging.Level; @@ -137,20 +137,6 @@ public class Geometry extends Spatial { return super.checkCulling(cam); } - /** - * Update the world transform of this Geometry and clear the - * TRANSFORM refresh flag. - */ - @Override - void checkDoTransformUpdate() { - if (ignoreTransform) { - worldTransform.loadIdentity(); - refreshFlags &= ~RF_TRANSFORM; - } else { - super.checkDoTransformUpdate(); - } - } - /** * @return If ignoreTransform mode is set. * @@ -165,7 +151,6 @@ public class Geometry extends Spatial { */ public void setIgnoreTransform(boolean ignoreTransform) { this.ignoreTransform = ignoreTransform; - setTransformRefresh(); } /** @@ -413,6 +398,9 @@ public class Geometry extends Spatial { // Compute the cached world matrix cachedWorldMat.loadIdentity(); + if (ignoreTransform) { + return; + } cachedWorldMat.setRotationQuaternion(worldTransform.getRotation()); cachedWorldMat.setTranslation(worldTransform.getTranslation()); @@ -518,36 +506,6 @@ public class Geometry extends Spatial { return (Geometry)super.clone(cloneMaterial); } - /** - * The old clone() method that did not use the new Cloner utility. - */ - @Override - public Geometry oldClone(boolean cloneMaterial) { - Geometry geomClone = (Geometry) super.clone(cloneMaterial); - - // This geometry is managed, - // but the cloned one is not attached to anything, hence not managed. - if (geomClone.isGrouped()) { - geomClone.groupNode = null; - geomClone.startIndex = -1; - } - - geomClone.cachedWorldMat = cachedWorldMat.clone(); - if (material != null) { - if (cloneMaterial) { - geomClone.material = material.clone(); - } else { - geomClone.material = material; - } - } - - if (mesh != null && mesh.getBuffer(Type.BindPosePosition) != null) { - geomClone.mesh = mesh.cloneForAnim(); - } - - return geomClone; - } - /** * This version of clone is a shallow clone, in other words, the * same mesh is referenced as the original geometry. @@ -583,7 +541,7 @@ public class Geometry extends Spatial { super.cloneFields(cloner, original); // If this is a grouped node and if our group node is - // also cloned then we'll grab it's reference. + // also cloned then we'll grab its reference. if( groupNode != null ) { if( cloner.isCloned(groupNode) ) { // Then resolve the reference diff --git a/jme3-core/src/main/java/com/jme3/scene/Mesh.java b/jme3-core/src/main/java/com/jme3/scene/Mesh.java index 7921624f7..e07c2cfa2 100644 --- a/jme3-core/src/main/java/com/jme3/scene/Mesh.java +++ b/jme3-core/src/main/java/com/jme3/scene/Mesh.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -139,8 +139,8 @@ public class Mesh implements Savable, Cloneable, JmeCloneable { */ Hybrid(false), /** - * Used for Tesselation only. Requires to set the number of vertices - * for each patch (default is 3 for triangle tesselation) + * Used for Tessellation only. Requires to set the number of vertices + * for each patch (default is 3 for triangle tessellation) */ Patch(true); private boolean listMode = false; @@ -182,7 +182,7 @@ public class Mesh implements Savable, Cloneable, JmeCloneable { private int vertCount = -1; private int elementCount = -1; private int instanceCount = -1; - private int patchVertexCount=3; //only used for tesselation + private int patchVertexCount=3; //only used for tessellation private int maxNumWeights = -1; // only if using skeletal animation private int[] elementLengths; @@ -353,7 +353,7 @@ public class Mesh implements Savable, Cloneable, JmeCloneable { VertexBuffer pos = getBuffer(Type.Position); if (pos == null || getBuffer(Type.BoneIndex) == null) { // ignore, this mesh doesn't have positional data - // or it doesn't have bone-vertex assignments, so its not animated + // or it doesn't have bone-vertex assignments, so it's not animated return; } @@ -1494,7 +1494,7 @@ public class Mesh implements Savable, Cloneable, JmeCloneable { } /** - * Gets the amout of vertices used for each patch; + * Gets the amount of vertices used for each patch; * @return */ public int getPatchVertexCount() { diff --git a/jme3-core/src/main/java/com/jme3/scene/Node.java b/jme3-core/src/main/java/com/jme3/scene/Node.java index 7806addd0..3e1482955 100644 --- a/jme3-core/src/main/java/com/jme3/scene/Node.java +++ b/jme3-core/src/main/java/com/jme3/scene/Node.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -154,7 +154,7 @@ public class Node extends Spatial { @Override protected void updateWorldBound(){ super.updateWorldBound(); - // for a node, the world bound is a combination of all it's children + // for a node, the world bound is a combination of all its children // bounds BoundingVolume resultBound = null; for (Spatial child : children.getArray()) { @@ -433,7 +433,7 @@ public class Node extends Spatial { setBoundRefresh(); // our world transform no longer influences the child. - // XXX: Not neccessary? Since child will have transform updated + // XXX: Not necessary? Since child will have transform updated // when attached anyway. child.setTransformRefresh(); // lights are also inherited from parent diff --git a/jme3-core/src/main/java/com/jme3/scene/Spatial.java b/jme3-core/src/main/java/com/jme3/scene/Spatial.java index 8a7e2afe9..c36b5f347 100644 --- a/jme3-core/src/main/java/com/jme3/scene/Spatial.java +++ b/jme3-core/src/main/java/com/jme3/scene/Spatial.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2013 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -48,18 +48,18 @@ import com.jme3.renderer.queue.RenderQueue; import com.jme3.renderer.queue.RenderQueue.Bucket; import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.control.Control; +import com.jme3.util.SafeArrayList; +import com.jme3.util.TempVars; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.IdentityCloneFunction; import com.jme3.util.clone.JmeCloneable; -import com.jme3.util.SafeArrayList; -import com.jme3.util.TempVars; import java.io.IOException; import java.util.*; import java.util.logging.Logger; /** * Spatial defines the base class for scene graph nodes. It - * maintains a link to a parent, it's local transforms and the world's + * maintains a link to a parent, its local transforms and the world's * transforms. All other scene graph elements, such as {@link Node} and * {@link Geometry} are subclasses of Spatial. * @@ -567,8 +567,8 @@ public abstract class Spatial implements Savable, Cloneable, Collidable, Cloneab * Should be overridden by Node and Geometry. */ protected void updateWorldBound() { - // the world bound of a leaf is the same as it's model bound - // for a node, the world bound is a combination of all it's children + // the world bound of a leaf is the same as its model bound + // for a node, the world bound is a combination of all its children // bounds // -> handled by subclass refreshFlags &= ~RF_BOUND; @@ -966,7 +966,7 @@ public abstract class Spatial implements Savable, Cloneable, Collidable, Cloneab } /** - * removeFromParent removes this Spatial from it's parent. + * removeFromParent removes this Spatial from its parent. * * @return true if it has a parent and performed the remove. */ @@ -1367,66 +1367,11 @@ public abstract class Spatial implements Savable, Cloneable, Collidable, Cloneab } /** - * The old clone() method that did not use the new Cloner utility. + * The old clone() method that did not use the new Cloner utility. */ + @Deprecated public Spatial oldClone(boolean cloneMaterial) { - try { - Spatial clone = (Spatial) super.clone(); - if (worldBound != null) { - clone.worldBound = worldBound.clone(); - } - clone.worldLights = worldLights.clone(); - clone.localLights = localLights.clone(); - - // Set the new owner of the light lists - clone.localLights.setOwner(clone); - clone.worldLights.setOwner(clone); - - clone.worldOverrides = new SafeArrayList<>(MatParamOverride.class); - clone.localOverrides = new SafeArrayList<>(MatParamOverride.class); - - for (MatParamOverride override : localOverrides) { - clone.localOverrides.add((MatParamOverride) override.clone()); - } - - // No need to force cloned to update. - // This node already has the refresh flags - // set below so it will have to update anyway. - clone.worldTransform = worldTransform.clone(); - clone.localTransform = localTransform.clone(); - - if (clone instanceof Node) { - Node node = (Node) this; - Node nodeClone = (Node) clone; - nodeClone.children = new SafeArrayList(Spatial.class); - for (Spatial child : node.children) { - Spatial childClone = child.clone(cloneMaterial); - childClone.parent = nodeClone; - nodeClone.children.add(childClone); - } - } - - clone.parent = null; - clone.setBoundRefresh(); - clone.setTransformRefresh(); - clone.setLightListRefresh(); - clone.setMatParamOverrideRefresh(); - - clone.controls = new SafeArrayList(Control.class); - for (int i = 0; i < controls.size(); i++) { - Control newControl = controls.get(i).cloneForSpatial(clone); - newControl.setSpatial(clone); - clone.controls.add(newControl); - } - - if (userData != null) { - clone.userData = (HashMap) userData.clone(); - } - - return clone; - } catch (CloneNotSupportedException ex) { - throw new AssertionError(); - } + throw new UnsupportedOperationException(); } /** @@ -1436,9 +1381,6 @@ public abstract class Spatial implements Savable, Cloneable, Collidable, Cloneab * Note that meshes of geometries are not cloned explicitly, they * are shared if static, or specially cloned if animated. * - * All controls will be cloned using the Control.cloneForSpatial method - * on the clone. - * * @see Mesh#cloneForAnim() */ @Override diff --git a/jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java b/jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java index 05da60f0f..4afbb437b 100644 --- a/jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java +++ b/jme3-core/src/main/java/com/jme3/scene/control/AbstractControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -84,27 +84,10 @@ public abstract class AbstractControl implements Control, JmeCloneable { */ protected abstract void controlRender(RenderManager rm, ViewPort vp); - /** - * Default implementation of cloneForSpatial() that - * simply clones the control and sets the spatial. - *
    -     *  AbstractControl c = clone();
    -     *  c.spatial = null;
    -     *  c.setSpatial(spatial);
    -     *  
    - * - * Controls that wish to be persisted must be Cloneable. - */ + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - try { - AbstractControl c = (AbstractControl)clone(); - c.spatial = null; // to keep setSpatial() from throwing an exception - c.setSpatial(spatial); - return c; - } catch(CloneNotSupportedException e) { - throw new RuntimeException( "Can't clone control for spatial", e ); - } + throw new UnsupportedOperationException(); } @Override diff --git a/jme3-core/src/main/java/com/jme3/scene/control/Control.java b/jme3-core/src/main/java/com/jme3/scene/control/Control.java index 63d7b43c8..d3d0e221f 100644 --- a/jme3-core/src/main/java/com/jme3/scene/control/Control.java +++ b/jme3-core/src/main/java/com/jme3/scene/control/Control.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -47,11 +47,15 @@ import com.jme3.scene.Spatial; public interface Control extends Savable { /** - * Creates a clone of the Control, the given Spatial is the cloned - * version of the spatial to which this control is attached to. + * Creates a clone of the Control, the given Spatial is the cloned version + * of the spatial to which this control is attached to. + * * @param spatial * @return A clone of this control for the spatial + * @deprecated Use + * {@link com.jme3.util.clone.JmeCloneable#cloneFields(com.jme3.util.clone.Cloner, java.lang.Object)} */ + @Deprecated public Control cloneForSpatial(Spatial spatial); /** diff --git a/jme3-core/src/main/java/com/jme3/scene/control/LightControl.java b/jme3-core/src/main/java/com/jme3/scene/control/LightControl.java index 36d29c542..1cdfdaf07 100644 --- a/jme3-core/src/main/java/com/jme3/scene/control/LightControl.java +++ b/jme3-core/src/main/java/com/jme3/scene/control/LightControl.java @@ -42,8 +42,9 @@ import com.jme3.light.SpotLight; import com.jme3.math.Vector3f; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; -import com.jme3.scene.Spatial; import com.jme3.util.TempVars; +import com.jme3.util.clone.Cloner; + import java.io.IOException; /** @@ -54,7 +55,10 @@ import java.io.IOException; */ public class LightControl extends AbstractControl { - public static enum ControlDirection { + private static final String CONTROL_DIR_NAME = "controlDir"; + private static final String LIGHT_NAME = "light"; + + public enum ControlDirection { /** * Means, that the Light's transform is "copied" @@ -67,6 +71,7 @@ public class LightControl extends AbstractControl { */ SpatialToLight; } + private Light light; private ControlDirection controlDir = ControlDirection.SpatialToLight; @@ -113,7 +118,7 @@ public class LightControl extends AbstractControl { if (spatial != null && light != null) { switch (controlDir) { case SpatialToLight: - spatialTolight(light); + spatialToLight(light); break; case LightToSpatial: lightToSpatial(light); @@ -122,22 +127,29 @@ public class LightControl extends AbstractControl { } } - private void spatialTolight(Light light) { + private void spatialToLight(Light light) { + + final Vector3f worldTranslation = spatial.getWorldTranslation(); + if (light instanceof PointLight) { - ((PointLight) light).setPosition(spatial.getWorldTranslation()); + ((PointLight) light).setPosition(worldTranslation); + return; } - TempVars vars = TempVars.get(); + + final TempVars vars = TempVars.get(); + final Vector3f vec = vars.vect1; if (light instanceof DirectionalLight) { - ((DirectionalLight) light).setDirection(vars.vect1.set(spatial.getWorldTranslation()).multLocal(-1.0f)); + ((DirectionalLight) light).setDirection(vec.set(worldTranslation).multLocal(-1.0f)); } if (light instanceof SpotLight) { - ((SpotLight) light).setPosition(spatial.getWorldTranslation()); - ((SpotLight) light).setDirection(spatial.getWorldRotation().multLocal(vars.vect1.set(Vector3f.UNIT_Y).multLocal(-1))); + final SpotLight spotLight = (SpotLight) light; + spotLight.setPosition(worldTranslation); + spotLight.setDirection(spatial.getWorldRotation().multLocal(vec.set(Vector3f.UNIT_Y).multLocal(-1))); } - vars.release(); + vars.release(); } private void lightToSpatial(Light light) { @@ -158,8 +170,6 @@ public class LightControl extends AbstractControl { } vars.release(); //TODO add code for Spot light here when it's done - - } @Override @@ -167,23 +177,18 @@ public class LightControl extends AbstractControl { // nothing to do } - // default implementation from AbstractControl is equivalent - //@Override - //public Control cloneForSpatial(Spatial newSpatial) { - // LightControl control = new LightControl(light, controlDir); - // control.setSpatial(newSpatial); - // control.setEnabled(isEnabled()); - // return control; - //} - private static final String CONTROL_DIR_NAME = "controlDir"; - private static final String LIGHT_NAME = "light"; - + @Override + public void cloneFields(final Cloner cloner, final Object original) { + super.cloneFields(cloner, original); + light = cloner.clone(light); + } + @Override public void read(JmeImporter im) throws IOException { super.read(im); InputCapsule ic = im.getCapsule(this); controlDir = ic.readEnum(CONTROL_DIR_NAME, ControlDirection.class, ControlDirection.SpatialToLight); - light = (Light)ic.readSavable(LIGHT_NAME, null); + light = (Light) ic.readSavable(LIGHT_NAME, null); } @Override diff --git a/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java b/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java index eac48db4e..fd74de5d1 100644 --- a/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java +++ b/jme3-core/src/main/java/com/jme3/scene/control/LodControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,7 +43,6 @@ import com.jme3.renderer.ViewPort; import com.jme3.scene.Geometry; import com.jme3.scene.Mesh; import com.jme3.scene.Spatial; -import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; @@ -141,15 +140,6 @@ public class LodControl extends AbstractControl implements Cloneable, JmeCloneab } } - @Override - public Control cloneForSpatial(Spatial spatial) { - LodControl clone = (LodControl) super.cloneForSpatial(spatial); - clone.lastDistance = 0; - clone.lastLevel = 0; - clone.numTris = numTris != null ? numTris.clone() : null; - return clone; - } - @Override public Object jmeClone() { LodControl clone = (LodControl)super.jmeClone(); diff --git a/jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java b/jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java index 9c101c73e..8e276c32f 100644 --- a/jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java +++ b/jme3-core/src/main/java/com/jme3/scene/control/UpdateControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,9 +34,6 @@ package com.jme3.scene.control; import com.jme3.app.AppTask; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; -import com.jme3.scene.Spatial; -import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; import java.util.concurrent.Callable; import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.Future; @@ -87,15 +84,6 @@ public class UpdateControl extends AbstractControl { } - @Override - public Control cloneForSpatial(Spatial newSpatial) { - UpdateControl control = new UpdateControl(); - control.setSpatial(newSpatial); - control.setEnabled(isEnabled()); - control.taskQueue.addAll(taskQueue); - return control; - } - @Override public Object jmeClone() { UpdateControl clone = (UpdateControl)super.jmeClone(); diff --git a/jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java b/jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java index 0b1855bc9..5f6425823 100644 --- a/jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java +++ b/jme3-core/src/main/java/com/jme3/scene/debug/Arrow.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -56,7 +56,7 @@ public class Arrow extends Mesh { 0.05f, 0, 0.9f, // tip right -0.05f, 0, 0.9f, // tip left 0, 0.05f, 0.9f, // tip top - 0, -0.05f, 0.9f, // tip buttom + 0, -0.05f, 0.9f, // tip bottom }; /** diff --git a/jme3-core/src/main/java/com/jme3/scene/debug/Grid.java b/jme3-core/src/main/java/com/jme3/scene/debug/Grid.java index 563981804..f9e5e119e 100644 --- a/jme3-core/src/main/java/com/jme3/scene/debug/Grid.java +++ b/jme3-core/src/main/java/com/jme3/scene/debug/Grid.java @@ -32,9 +32,9 @@ package com.jme3.scene.debug; import com.jme3.scene.Mesh; -import com.jme3.scene.Mesh.Mode; import com.jme3.scene.VertexBuffer.Type; import com.jme3.util.BufferUtils; + import java.nio.FloatBuffer; import java.nio.ShortBuffer; @@ -45,6 +45,9 @@ import java.nio.ShortBuffer; */ public class Grid extends Mesh { + public Grid() { + } + /** * Creates a grid debug shape. * @param xLines diff --git a/jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java b/jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java index 04338eac6..cf0244355 100644 --- a/jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java +++ b/jme3-core/src/main/java/com/jme3/scene/debug/WireSphere.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2017 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -106,6 +106,9 @@ public class WireSphere extends Mesh { // pb.put(0).put(0).put(radius); // pb.put(0).put(0).put(-radius); + /* + * Update vertex positions for the great circle in the X-Y plane. + */ float rate = FastMath.TWO_PI / (float) samples; float angle = 0; for (int i = 0; i < samples; i++) { @@ -114,7 +117,9 @@ public class WireSphere extends Mesh { pb.put(x).put(y).put(0); angle += rate; } - + /* + * Update vertex positions for the great circle in the Y-Z plane. + */ angle = 0; for (int i = 0; i < samples; i++) { float x = radius * FastMath.cos(angle); @@ -122,23 +127,20 @@ public class WireSphere extends Mesh { pb.put(0).put(x).put(y); angle += rate; } - + /* + * Update vertex positions for 'zSamples' parallel circles. + */ float zRate = (radius * 2) / (float) (zSamples); float zHeight = -radius + (zRate / 2f); - - float rb = 1f / zSamples; float b = rb / 2f; - for (int k = 0; k < zSamples; k++) { angle = 0; - float scale = FastMath.sin(b * FastMath.PI); + float scale = 2f * FastMath.sqrt(b - b * b); for (int i = 0; i < samples; i++) { float x = radius * FastMath.cos(angle); float y = radius * FastMath.sin(angle); - pb.put(x * scale).put(zHeight).put(y * scale); - angle += rate; } zHeight += zRate; diff --git a/jme3-core/src/main/java/com/jme3/scene/debug/custom/BoneShape.java b/jme3-core/src/main/java/com/jme3/scene/debug/custom/BoneShape.java index 7a0a0300a..1b6208619 100644 --- a/jme3-core/src/main/java/com/jme3/scene/debug/custom/BoneShape.java +++ b/jme3-core/src/main/java/com/jme3/scene/debug/custom/BoneShape.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -49,7 +49,7 @@ import java.io.IOException; import java.nio.FloatBuffer; /** - * A simple cylinder, defined by it's height and radius. + * A simple cylinder, defined by its height and radius. * (Ported to jME3) * * @author Mark Powell diff --git a/jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java b/jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java index 42f8a7615..2ddaa4cc1 100644 --- a/jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java +++ b/jme3-core/src/main/java/com/jme3/scene/instancing/InstancedNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 jMonkeyEngine + * Copyright (c) 2014-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,19 +31,15 @@ */ package com.jme3.scene.instancing; +import com.jme3.export.JmeExporter; +import com.jme3.export.JmeImporter; +import com.jme3.material.MatParam; import com.jme3.material.Material; import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; -import com.jme3.scene.Geometry; -import com.jme3.scene.GeometryGroupNode; -import com.jme3.scene.Mesh; -import com.jme3.scene.Node; -import com.jme3.scene.Spatial; -import com.jme3.scene.UserData; +import com.jme3.renderer.queue.RenderQueue; +import com.jme3.scene.*; import com.jme3.scene.control.Control; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.material.MatParam; import com.jme3.util.clone.Cloner; import com.jme3.util.clone.JmeCloneable; import java.io.IOException; @@ -135,11 +131,10 @@ public class InstancedNode extends GeometryGroupNode { this.node = node; } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - return this; - // WARNING: Sets wrong control on spatial. Will be - // fixed automatically by InstancedNode.clone() method. + throw new UnsupportedOperationException(); } @Override @@ -217,6 +212,7 @@ public class InstancedNode extends GeometryGroupNode { ig.setMesh(lookUp.mesh); ig.setUserData(UserData.JME_PHYSICSIGNORE, true); ig.setCullHint(CullHint.Never); + ig.setShadowMode(RenderQueue.ShadowMode.Inherit); instancesMap.put(lookUp.clone(), ig); attachChild(ig); } diff --git a/jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java b/jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java index ab5db2462..7ffee1905 100644 --- a/jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java +++ b/jme3-core/src/main/java/com/jme3/scene/shape/AbstractBox.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -98,7 +98,7 @@ public abstract class AbstractBox extends Mesh { /** * Update the points that define the texture of the box. *

    - * It's a one-to-one ratio, where each plane of the box has it's own copy + * It's a one-to-one ratio, where each plane of the box has its own copy * of the texture. That is, the texture is repeated one time for each face. */ protected abstract void duUpdateGeometryTextures(); diff --git a/jme3-core/src/main/java/com/jme3/scene/shape/Box.java b/jme3-core/src/main/java/com/jme3/scene/shape/Box.java index 05f85427c..f94611de3 100644 --- a/jme3-core/src/main/java/com/jme3/scene/shape/Box.java +++ b/jme3-core/src/main/java/com/jme3/scene/shape/Box.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -113,7 +113,7 @@ public class Box extends AbstractBox { * Constructor instantiates a new Box object. *

    * The minimum and maximum point are provided, these two points define the - * shape and size of the box but not it's orientation or position. You should + * shape and size of the box but not its orientation or position. You should * use the {@link com.jme3.scene.Spatial#setLocalTranslation(com.jme3.math.Vector3f) } * and {@link com.jme3.scene.Spatial#setLocalRotation(com.jme3.math.Quaternion) } * methods to define those properties. @@ -136,7 +136,7 @@ public class Box extends AbstractBox { /** * Creates a clone of this box. *

    - * The cloned box will have '_clone' appended to it's name, but all other + * The cloned box will have '_clone' appended to its name, but all other * properties will be the same as this box. */ @Override diff --git a/jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java b/jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java index 97dd70f30..a3dbadbf9 100644 --- a/jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java +++ b/jme3-core/src/main/java/com/jme3/scene/shape/Cylinder.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -44,7 +44,7 @@ import com.jme3.util.BufferUtils; import java.io.IOException; /** - * A simple cylinder, defined by it's height and radius. + * A simple cylinder, defined by its height and radius. * (Ported to jME3) * * @author Mark Powell diff --git a/jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java b/jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java index 44aa41723..e02e7221b 100644 --- a/jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java +++ b/jme3-core/src/main/java/com/jme3/scene/shape/Sphere.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -47,7 +47,7 @@ import java.nio.FloatBuffer; import java.nio.ShortBuffer; /** - * Sphere represents a 3D object with all points equidistance + * Sphere represents a 3D object with all points equidistant * from a center point. * * @author Joshua Slack @@ -62,7 +62,7 @@ public class Sphere extends Mesh { */ Original, /** - * Wrap texure radially, but spherically project along z-axis + * Wrap texture radially, but spherically project along z-axis */ Projected, /** diff --git a/jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java b/jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java index 602f47f82..1300bf361 100644 --- a/jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java +++ b/jme3-core/src/main/java/com/jme3/shader/Glsl100ShaderGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,6 +35,7 @@ import com.jme3.asset.AssetManager; import com.jme3.material.ShaderGenerationInfo; import com.jme3.material.plugins.ConditionParser; import com.jme3.shader.Shader.ShaderType; + import java.util.ArrayList; import java.util.List; @@ -50,7 +51,8 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * the indentation characters 1à tabulation characters */ private final static String INDENTCHAR = "\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t"; - private ShaderNodeVariable inPosTmp; + + protected ShaderNodeVariable inPosTmp; /** * creates a Glsl100ShaderGenerator @@ -81,8 +83,8 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { /** * {@inheritDoc} * - * attributes are all declared, inPositon is declared even if it's not in - * the list and it's condition is nulled. + * attributes are all declared, inPosition is declared even if it's not in + * the list and its condition is nulled. */ @Override protected void generateAttributes(StringBuilder source, ShaderGenerationInfo info) { @@ -99,7 +101,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { declareAttribute(source, var); } - if (!inPosition) { + if (!inPosition) { inPosTmp = new ShaderNodeVariable("vec3", "inPosition"); declareAttribute(source, inPosTmp); } @@ -110,7 +112,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { protected void generateVaryings(StringBuilder source, ShaderGenerationInfo info, ShaderType type) { source.append("\n"); for (ShaderNodeVariable var : info.getVaryings()) { - declareVarying(source, var, type == ShaderType.Vertex ? false : true); + declareVarying(source, var, type != ShaderType.Vertex); } } @@ -141,7 +143,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { @Override protected void generateStartOfMainSection(StringBuilder source, ShaderGenerationInfo info, ShaderType type) { source.append("\n"); - source.append("void main(){\n"); + source.append("void main() {\n"); indent(); appendIndent(source); if (type == ShaderType.Vertex) { @@ -226,6 +228,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * * 4. mapping outputs to global output if needed
    * + * *
    * All of this is embed in a #if conditional statement if needed */ @@ -237,27 +240,58 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { comment(source, shaderNode, "Begin"); startCondition(shaderNode.getCondition(), source); - List declaredInputs = new ArrayList(); + final List declaredInputs = new ArrayList<>(); + + // Decalring variables with default values first + final ShaderNodeDefinition definition = shaderNode.getDefinition(); + + for (final ShaderNodeVariable var : definition.getInputs()) { + + if (var.getType().startsWith("sampler")) { + continue; + } + + final String fullName = shaderNode.getName() + "_" + var.getName(); + + final ShaderNodeVariable variable = new ShaderNodeVariable(var.getType(), shaderNode.getName(), + var.getName(), var.getMultiplicity()); + + if (!isVarying(info, variable)) { + declareVariable(source, variable, var.getDefaultValue(), true, null); + } + + nodeSource = replaceVariableName(nodeSource, variable); + declaredInputs.add(fullName); + } + for (VariableMapping mapping : shaderNode.getInputMapping()) { + final ShaderNodeVariable rightVariable = mapping.getRightVariable(); + final ShaderNodeVariable leftVariable = mapping.getLeftVariable(); + + String newName = shaderNode.getName() + "_" + leftVariable.getName(); + boolean isDeclared = declaredInputs.contains(newName); //Variables fed with a sampler matparam or world param are replaced by the matparam itself //It avoids issue with samplers that have to be uniforms. - if (isWorldOrMaterialParam(mapping.getRightVariable()) && mapping.getRightVariable().getType().startsWith("sampler")) { - nodeSource = replace(nodeSource, mapping.getLeftVariable(), mapping.getRightVariable().getPrefix() + mapping.getRightVariable().getName()); + if (rightVariable != null && isWorldOrMaterialParam(rightVariable) && rightVariable.getType().startsWith("sampler")) { + nodeSource = replace(nodeSource, leftVariable, rightVariable.getPrefix() + rightVariable.getName()); } else { - if (mapping.getLeftVariable().getType().startsWith("sampler")) { + + if (leftVariable.getType().startsWith("sampler")) { throw new IllegalArgumentException("a Sampler must be a uniform"); } - map(mapping, source); - String newName = shaderNode.getName() + "_" + mapping.getLeftVariable().getName(); - if (!declaredInputs.contains(newName)) { - nodeSource = replace(nodeSource, mapping.getLeftVariable(), newName); - declaredInputs.add(newName); - } + map(mapping, source, !isDeclared); + } + + if (!isDeclared) { + nodeSource = replace(nodeSource, leftVariable, newName); + declaredInputs.add(newName); } } - - for (ShaderNodeVariable var : shaderNode.getDefinition().getOutputs()) { + + + + for (ShaderNodeVariable var : definition.getOutputs()) { ShaderNodeVariable v = new ShaderNodeVariable(var.getType(), shaderNode.getName(), var.getName(), var.getMultiplicity()); if (!declaredInputs.contains(shaderNode.getName() + "_" + var.getName())) { if (!isVarying(info, v)) { @@ -270,7 +304,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { source.append(nodeSource); for (VariableMapping mapping : shaderNode.getOutputMapping()) { - map(mapping, source); + map(mapping, source, true); } endCondition(shaderNode.getCondition(), source); comment(source, shaderNode, "End"); @@ -299,7 +333,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * declares a variable, embed in a conditional block if needed. the namespace is appended with "_" * @param source the StringBuilder to use * @param var the variable to declare - * @param value the initialization value to assign the the variable + * @param value the initialization value to assign the variable */ protected void declareVariable(StringBuilder source, ShaderNodeVariable var, String value) { declareVariable(source, var, value, true, null); @@ -320,7 +354,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * declares a variable, embed in a conditional block if needed. * @param source the StringBuilder to use * @param var the variable to declare - * @param value the initialization value to assign the the variable + * @param value the initialization value to assign the variable * @param appendNameSpace true to append the nameSpace + "_" * @param modifier the modifier of the variable (attribute, varying, in , out,...) */ @@ -383,56 +417,71 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { } /** - * Appends a mapping to the source, embed in a conditional block if needed, + * Appends a mapping to the source, embed in a conditional block if needed, * with variables nameSpaces and swizzle. + * * @param mapping the VariableMapping to append - * @param source the StringBuilder to use + * @param source the StringBuilder to use */ - protected void map(VariableMapping mapping, StringBuilder source) { + protected void map(VariableMapping mapping, StringBuilder source, boolean declare) { + + final ShaderNodeVariable leftVariable = mapping.getLeftVariable(); + final ShaderNodeVariable rightVariable = mapping.getRightVariable(); + final String rightExpression = mapping.getRightExpression(); + startCondition(mapping.getCondition(), source); appendIndent(source); - if (!mapping.getLeftVariable().isShaderOutput()) { - source.append(mapping.getLeftVariable().getType()); + if (!leftVariable.isShaderOutput() && declare) { + source.append(leftVariable.getType()); source.append(" "); } - source.append(mapping.getLeftVariable().getNameSpace()); + source.append(leftVariable.getNameSpace()); source.append("_"); - source.append(mapping.getLeftVariable().getName()); - if (mapping.getLeftVariable().getMultiplicity() != null){ + source.append(leftVariable.getName()); + if (leftVariable.getMultiplicity() != null){ source.append("["); - source.append(mapping.getLeftVariable().getMultiplicity()); + source.append(leftVariable.getMultiplicity()); source.append("]"); } - - //left swizzle, the variable can't be declared and assigned on the same line. + + // left swizzle, the variable can't be declared and assigned on the same line. if (mapping.getLeftSwizzling().length() > 0) { //initialize the declared variable to 0.0 source.append(" = "); - source.append(mapping.getLeftVariable().getType()); + source.append(leftVariable.getType()); source.append("(0.0);\n"); appendIndent(source); - //assign the value on a new line - source.append(mapping.getLeftVariable().getNameSpace()); + // assign the value on a new line + source.append(leftVariable.getNameSpace()); source.append("_"); - source.append(mapping.getLeftVariable().getName()); + source.append(leftVariable.getName()); source.append("."); source.append(mapping.getLeftSwizzling()); } source.append(" = "); - String namePrefix = getAppendableNameSpace(mapping.getRightVariable()); - source.append(namePrefix); - source.append(mapping.getRightVariable().getPrefix()); - source.append(mapping.getRightVariable().getName()); - if (mapping.getRightSwizzling().length() > 0) { - source.append("."); - source.append(mapping.getRightSwizzling()); + + if (rightVariable != null) { + + String namePrefix = getAppendableNameSpace(rightVariable); + source.append(namePrefix); + source.append(rightVariable.getPrefix()); + source.append(rightVariable.getName()); + + if (mapping.getRightSwizzling().length() > 0) { + source.append("."); + source.append(mapping.getRightSwizzling()); + } + + } else { + source.append(rightExpression); } + source.append(";\n"); endCondition(mapping.getCondition(), source); } /** - * replaces a variable name in a shaderNode source code by prefixing it + * replaces a variable name in a shaderNode source code by prefixing it * with its nameSpace and "_" if needed. * @param nodeSource the source to modify * @param var the variable to replace @@ -497,7 +546,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * appropriate defined based on the mapping condition of this variable. * Complex condition syntax are handled. * - * @param nodeSource the sahderNode source code + * @param nodeSource the shaderNode source code * @param shaderNode the ShaderNode being processed * @return the modified shaderNode source. */ @@ -574,9 +623,9 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { /** * Declares a varying * @param source the StringBuilder to use - * @param var the variable to declare as an varying + * @param var the variable to declare as a varying * @param input a boolean set to true if the this varying is an input. - * this in not used in this implementation but can be used in overridings + * this in not used in this implementation but can be used in overriding * implementation */ protected void declareVarying(StringBuilder source, ShaderNodeVariable var, boolean input) { @@ -603,7 +652,7 @@ public class Glsl100ShaderGenerator extends ShaderGenerator { * makes sure inPosition attribute is of type vec3 or vec4 * @param var the inPosition attribute */ - private void fixInPositionType(ShaderNodeVariable var) { + protected void fixInPositionType(ShaderNodeVariable var) { if(!var.getType().equals("vec3") || !var.getType().equals("vec4")){ var.setType("vec3"); } diff --git a/jme3-core/src/main/java/com/jme3/shader/Shader.java b/jme3-core/src/main/java/com/jme3/shader/Shader.java index d6fc495f2..72ecbca17 100644 --- a/jme3-core/src/main/java/com/jme3/shader/Shader.java +++ b/jme3-core/src/main/java/com/jme3/shader/Shader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -65,7 +65,7 @@ public final class Shader extends NativeObject { private final IntMap attribs; /** - * Type of shader. The shader will control the pipeline of it's type. + * Type of shader. The shader will control the pipeline of its type. */ public static enum ShaderType { @@ -83,12 +83,12 @@ public final class Shader extends NativeObject { */ Geometry("geom"), /** - * Controls tesselation factor (e.g how often a input patch should be + * Controls tessellation factor (e.g how often a input patch should be * subdivided) */ TessellationControl("tsctrl"), /** - * Controls tesselation transform (e.g similar to the vertex shader, but + * Controls tessellation transform (e.g similar to the vertex shader, but * required to mix inputs manual) */ TessellationEvaluation("tseval"); @@ -106,7 +106,7 @@ public final class Shader extends NativeObject { /** * Shader source describes a shader object in OpenGL. Each shader source - * is assigned a certain pipeline which it controls (described by it's type). + * is assigned a certain pipeline which it controls (described by its type). */ public static class ShaderSource extends NativeObject { @@ -127,7 +127,7 @@ public final class Shader extends NativeObject { protected ShaderSource(ShaderSource ss){ super(ss.id); // No data needs to be copied. - // (This is a destructable clone) + // (This is a destructible clone) } public ShaderSource(){ @@ -227,7 +227,7 @@ public final class Shader extends NativeObject { } /** - * Do not use this constructor. Used for destructable clones only. + * Do not use this constructor. Used for destructible clones only. */ protected Shader(Shader s){ super(s.id); @@ -361,7 +361,7 @@ public final class Shader extends NativeObject { */ public void resetLocations() { if (uniforms != null) { - // NOTE: Shader sources will be reset seperately from the shader itself. + // NOTE: Shader sources will be reset separately from the shader itself. for (Uniform uniform : uniforms.values()) { uniform.reset(); // fixes issue with re-initialization } diff --git a/jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java b/jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java index db3878afd..a86340ab9 100644 --- a/jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java +++ b/jme3-core/src/main/java/com/jme3/shader/ShaderGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -31,14 +31,15 @@ */ package com.jme3.shader; -import com.jme3.asset.AssetKey; import com.jme3.asset.AssetManager; import com.jme3.material.ShaderGenerationInfo; -import com.jme3.material.Technique; import com.jme3.material.TechniqueDef; import com.jme3.shader.Shader.ShaderType; -import java.util.List; -import java.util.regex.*; +import com.jme3.shader.plugins.ShaderAssetKey; + +import java.util.*; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * This class is the base for a shader generator using the ShaderNodes system, @@ -49,6 +50,11 @@ import java.util.regex.*; */ public abstract class ShaderGenerator { + public static final String NAME_SPACE_GLOBAL = "Global"; + public static final String NAME_SPACE_VERTEX_ATTRIBUTE = "Attr"; + public static final String NAME_SPACE_MAT_PARAM = "MatParam"; + public static final String NAME_SPACE_WORLD_PARAM = "WorldParam"; + /** * the asset manager */ @@ -66,6 +72,8 @@ public abstract class ShaderGenerator { */ Pattern extensions = Pattern.compile("(#extension.*\\s+)"); + private Map imports = new LinkedHashMap<>(); + /** * Build a shaderGenerator * @@ -126,7 +134,9 @@ public abstract class ShaderGenerator { // Too much code assumes that type is either Vertex or Fragment return null; } - + + imports.clear(); + indent = 0; StringBuilder sourceDeclaration = new StringBuilder(); @@ -145,6 +155,12 @@ public abstract class ShaderGenerator { generateEndOfMainSection(source, info, type); + //insert imports backward + int insertIndex = sourceDeclaration.length(); + for (String importSource : imports.values()) { + sourceDeclaration.insert(insertIndex, importSource); + } + sourceDeclaration.append(source); return moveExtensionsUp(sourceDeclaration); @@ -186,7 +202,13 @@ public abstract class ShaderGenerator { if (shaderNode.getDefinition().getType() == type) { int index = findShaderIndexFromVersion(shaderNode, type); String shaderPath = shaderNode.getDefinition().getShadersPath().get(index); - String loadedSource = (String) assetManager.loadAsset(new AssetKey(shaderPath)); + Map sources = (Map) assetManager.loadAsset(new ShaderAssetKey(shaderPath, false)); + String loadedSource = sources.get("[main]"); + for (String name : sources.keySet()) { + if (!name.equals("[main]")) { + imports.put(name, sources.get(name)); + } + } appendNodeDeclarationAndMain(loadedSource, sourceDeclaration, source, shaderNode, info, shaderPath); } } @@ -203,7 +225,7 @@ public abstract class ShaderGenerator { * @see ShaderGenerator#generateNodeMainSection * * @param loadedSource the actual source code loaded for this node. - * @param shaderPath path the the shader file + * @param shaderPath path to the shader file * @param sourceDeclaration the Shader declaration part string builder. * @param source the Shader main part StringBuilder. * @param shaderNode the shader node. @@ -266,7 +288,7 @@ public abstract class ShaderGenerator { /** * Appends the given shaderNode declarative part to the shader declarative - * part. If needed the sahder type can be determined by fetching the + * part. If needed the shader type can be determined by fetching the * shaderNode's definition type. * * @see ShaderNode#getDefinition() diff --git a/jme3-core/src/main/java/com/jme3/shader/ShaderNode.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNode.java index 4f5779363..5ef500ffd 100644 --- a/jme3-core/src/main/java/com/jme3/shader/ShaderNode.java +++ b/jme3-core/src/main/java/com/jme3/shader/ShaderNode.java @@ -31,11 +31,8 @@ */ package com.jme3.shader; -import com.jme3.export.InputCapsule; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.export.OutputCapsule; -import com.jme3.export.Savable; +import com.jme3.export.*; + import java.io.IOException; import java.util.ArrayList; import java.util.List; @@ -59,15 +56,16 @@ public class ShaderNode implements Savable, Cloneable { private String name; private ShaderNodeDefinition definition; private String condition; - private List inputMapping = new ArrayList(); - private List outputMapping = new ArrayList(); + + private List inputMapping = new ArrayList<>(); + private List outputMapping = new ArrayList<>(); /** - * creates a ShaderNode + * Creates a shader node. * - * @param name the name - * @param definition the ShaderNodeDefinition - * @param condition the condition to activate this node + * @param name the name. + * @param definition the shader node definition. + * @param condition the condition to activate this node. */ public ShaderNode(String name, ShaderNodeDefinition definition, String condition) { this.name = name; @@ -76,12 +74,13 @@ public class ShaderNode implements Savable, Cloneable { } /** - * creates a ShaderNode + * Creates a shader node. */ public ShaderNode() { } /** + * Gets the name of the node. * * @return the name of the node */ @@ -90,82 +89,83 @@ public class ShaderNode implements Savable, Cloneable { } /** - * sets the name of th node + * Sets the name of the node. * - * @param name the name + * @param name the name of the node. */ public void setName(String name) { this.name = name; } /** - * returns the definition + * Returns the shader node definition. * - * @return the ShaderNodeDefinition + * @return the shader node definition. */ public ShaderNodeDefinition getDefinition() { return definition; } /** - * sets the definition + * Sets the shader node definition. * - * @param definition the ShaderNodeDefinition + * @param definition the shader node definition. */ public void setDefinition(ShaderNodeDefinition definition) { this.definition = definition; } /** + * Gets the condition. * - * @return the condition + * @return the condition. */ public String getCondition() { return condition; } /** - * sets the condition + * Sets the condition. * - * @param condition the condition + * @param condition the condition. */ public void setCondition(String condition) { this.condition = condition; } /** - * return a list of VariableMapping representing the input mappings of this - * node + * Returns a list of variable mapping representing the input mappings of this + * node. * - * @return the input mappings + * @return the input mappings. */ public List getInputMapping() { return inputMapping; } /** - * sets the input mappings + * Sets the input mappings. * - * @param inputMapping the input mappings + * @param inputMapping the input mappings. */ public void setInputMapping(List inputMapping) { this.inputMapping = inputMapping; } /** - * return a list of VariableMapping representing the output mappings of this - * node + * Returns a list of variable mapping representing the output mappings of this + * node. * - * @return the output mappings + * @return the output mappings. */ public List getOutputMapping() { return outputMapping; } /** - * sets the output mappings + * Sets the output mappings. * - * @param outputMapping the output mappings + * @param outputMapping the output mappings. */ public void setOutputMapping(List outputMapping) { this.outputMapping = outputMapping; @@ -179,7 +179,7 @@ public class ShaderNode implements Savable, Cloneable { */ @Override public void write(JmeExporter ex) throws IOException { - OutputCapsule oc = (OutputCapsule) ex.getCapsule(this); + OutputCapsule oc = ex.getCapsule(this); oc.write(name, "name", ""); oc.write(definition, "definition", null); oc.write(condition, "condition", null); @@ -188,14 +188,14 @@ public class ShaderNode implements Savable, Cloneable { } /** - * jme serialization + * jme serialization * * @param im the importer * @throws IOException */ @Override public void read(JmeImporter im) throws IOException { - InputCapsule ic = (InputCapsule) im.getCapsule(this); + InputCapsule ic = im.getCapsule(this); name = ic.readString("name", ""); definition = (ShaderNodeDefinition) ic.readSavable("definition", null); condition = ic.readString("condition", null); @@ -210,24 +210,48 @@ public class ShaderNode implements Savable, Cloneable { */ @Override public String toString() { - return "\nShaderNode{" + "\nname=" + name + ", \ndefinition=" + definition.getName() + ", \ncondition=" + condition + ", \ninputMapping=" + inputMapping + ", \noutputMapping=" + outputMapping + '}'; + + final StringBuilder builder = new StringBuilder("ShaderNode:"); + builder.append("\n\tname=").append(name) + .append("\n\tdefinition=").append(definition.getName()) + .append("\n\tcondition=").append(condition); + + if (!inputMapping.isEmpty()) { + builder.append("\n\tinputMapping:\n"); + for (final VariableMapping mapping : inputMapping) { + builder.append("\t\t").append(mapping).append('\n'); + } + } + + if (!outputMapping.isEmpty()) { + builder.append("\n\toutputMapping:\n"); + for (final VariableMapping mapping : outputMapping) { + builder.append("\t\t").append(mapping).append('\n'); + } + } + + if (builder.charAt(builder.length() - 1) == '\n') { + builder.delete(builder.length() - 1, builder.length()); + } + + return builder.toString(); } @Override public ShaderNode clone() throws CloneNotSupportedException { ShaderNode clone = (ShaderNode) super.clone(); - //No need to clone the definition. + // No need to clone the definition. clone.definition = definition; clone.inputMapping = new ArrayList<>(); for (VariableMapping variableMapping : inputMapping) { - clone.inputMapping.add((VariableMapping) variableMapping.clone()); + clone.inputMapping.add(variableMapping.clone()); } clone.outputMapping = new ArrayList<>(); for (VariableMapping variableMapping : outputMapping) { - clone.outputMapping.add((VariableMapping) variableMapping.clone()); + clone.outputMapping.add(variableMapping.clone()); } return clone; diff --git a/jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java index 88adae648..ba5fc0161 100644 --- a/jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java +++ b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeDefinition.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -169,7 +169,7 @@ public class ShaderNodeDefinition implements Savable { } /** - * retrun the path of this definition + * return the path of this definition * @return */ public String getPath() { diff --git a/jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java index a1363ead1..5038efb70 100644 --- a/jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java +++ b/jme3-core/src/main/java/com/jme3/shader/ShaderNodeVariable.java @@ -50,8 +50,10 @@ public class ShaderNodeVariable implements Savable, Cloneable { private String type; private String nameSpace; private String condition; - private boolean shaderOutput = false; private String multiplicity; + private String defaultValue; + + private boolean shaderOutput = false; /** * creates a ShaderNodeVariable @@ -180,6 +182,24 @@ public class ShaderNodeVariable implements Savable, Cloneable { this.nameSpace = nameSpace; } + /** + * Gets the default value of this variable. + * + * @return the default value of this variable. + */ + public String getDefaultValue() { + return defaultValue; + } + + /** + * Sets the default value of this variable. + * + * @param defaultValue the default value of this variable. + */ + public void setDefaultValue(final String defaultValue) { + this.defaultValue = defaultValue; + } + @Override public int hashCode() { int hash = 7; @@ -230,7 +250,7 @@ public class ShaderNodeVariable implements Savable, Cloneable { */ @Override public void write(JmeExporter ex) throws IOException { - OutputCapsule oc = (OutputCapsule) ex.getCapsule(this); + OutputCapsule oc = ex.getCapsule(this); oc.write(name, "name", ""); oc.write(type, "type", ""); oc.write(prefix, "prefix", ""); @@ -238,7 +258,7 @@ public class ShaderNodeVariable implements Savable, Cloneable { oc.write(condition, "condition", null); oc.write(shaderOutput, "shaderOutput", false); oc.write(multiplicity, "multiplicity", null); - + oc.write(defaultValue, "defaultValue", null); } /** @@ -249,14 +269,15 @@ public class ShaderNodeVariable implements Savable, Cloneable { */ @Override public void read(JmeImporter im) throws IOException { - InputCapsule ic = (InputCapsule) im.getCapsule(this); + InputCapsule ic = im.getCapsule(this); name = ic.readString("name", ""); type = ic.readString("type", ""); prefix = ic.readString("pefix", ""); nameSpace = ic.readString("nameSpace", ""); - condition = ic.readString("condition", null); + condition = ic.readString("condition", null); shaderOutput = ic.readBoolean("shaderOutput", false); multiplicity = ic.readString("multiplicity", null); + defaultValue = ic.readString("defaultValue", null); } /** @@ -278,7 +299,7 @@ public class ShaderNodeVariable implements Savable, Cloneable { @Override public String toString() { - return "\n" + type + ' ' + (nameSpace != null ? (nameSpace + '.') : "") + name; + return type + ' ' + (nameSpace != null ? (nameSpace + '.') : "") + name; } /** diff --git a/jme3-core/src/main/java/com/jme3/shader/Uniform.java b/jme3-core/src/main/java/com/jme3/shader/Uniform.java index 5475e8e2c..914104845 100644 --- a/jme3-core/src/main/java/com/jme3/shader/Uniform.java +++ b/jme3-core/src/main/java/com/jme3/shader/Uniform.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2017 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -33,9 +33,9 @@ package com.jme3.shader; import com.jme3.math.*; import com.jme3.util.BufferUtils; -import java.nio.Buffer; -import java.nio.FloatBuffer; -import java.nio.IntBuffer; +import com.jme3.util.TempVars; + +import java.nio.*; public class Uniform extends ShaderVariable { @@ -348,22 +348,37 @@ public class Uniform extends ShaderVariable { if (value.equals(this.value)) { return; } - if (value instanceof ColorRGBA) { - if (this.value == null) { - this.value = new ColorRGBA(); + + TempVars vars = TempVars.get(); + Vector4f vec4 = vars.vect4f1; + //handle the null case + if (this.value == null) { + try { + this.value = value.getClass().newInstance(); + } catch (InstantiationException | IllegalAccessException e) { + throw new IllegalArgumentException("Cannot instanciate param of class " + value.getClass().getCanonicalName()); } - ((ColorRGBA) this.value).set((ColorRGBA) value); + } + //feed the pivot vec 4 with the correct value + if (value instanceof ColorRGBA) { + ColorRGBA c = (ColorRGBA) value; + vec4.set(c.r, c.g, c.b, c.a); } else if (value instanceof Vector4f) { - if (this.value == null) { - this.value = new Vector4f(); - } - ((Vector4f) this.value).set((Vector4f) value); + vec4.set((Vector4f) value); } else { - if (this.value == null) { - this.value = new Quaternion(); - } - ((Quaternion) this.value).set((Quaternion) value); + Quaternion q = (Quaternion) value; + vec4.set(q.getX(), q.getY(), q.getZ(), q.getW()); + } + + //feed this.value with the collected values. + if (this.value instanceof ColorRGBA) { + ((ColorRGBA) this.value).set(vec4.x, vec4.y, vec4.z, vec4.w); + } else if (value instanceof Vector4f) { + ((Vector4f) this.value).set(vec4); + } else { + ((Quaternion) this.value).set(vec4.x, vec4.y, vec4.z, vec4.w); } + vars.release(); break; // Only use check if equals optimization for primitive values case Int: diff --git a/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java b/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java index 46b689cd9..1235dde7f 100644 --- a/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java +++ b/jme3-core/src/main/java/com/jme3/shader/UniformBinding.java @@ -195,7 +195,14 @@ public enum UniformBinding { * The light color when rendering in multi pass mode * Type: vec4 */ - LightColor("vec4"); + LightColor("vec4"), + + /** + * The normal matrix in world space for World space lighting. The inverse transpose of the world matrix. + * Converts normals from model space to world space. + * Type: mat3 + */ + WorldNormalMatrix("mat3"); String glslType; diff --git a/jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java b/jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java index f9ead8979..340fc162c 100644 --- a/jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java +++ b/jme3-core/src/main/java/com/jme3/shader/UniformBindingManager.java @@ -36,6 +36,7 @@ import com.jme3.math.*; import com.jme3.renderer.Camera; import com.jme3.renderer.RenderManager; import com.jme3.system.Timer; + import java.util.ArrayList; /** @@ -66,6 +67,7 @@ public class UniformBindingManager { private Matrix4f worldViewMatrix = new Matrix4f(); private Matrix4f worldViewProjMatrix = new Matrix4f(); private Matrix3f normalMatrix = new Matrix3f(); + private Matrix3f worldNormalMatrix = new Matrix3f(); private Matrix4f worldMatrixInv = new Matrix4f(); private Matrix3f worldMatrixInvTrsp = new Matrix3f(); private Matrix4f viewMatrixInv = new Matrix4f(); @@ -114,6 +116,13 @@ public class UniformBindingManager { normalMatrix.transposeLocal(); u.setValue(VarType.Matrix3, normalMatrix); break; + case WorldNormalMatrix: + tempMatrix.set(worldMatrix); + tempMatrix.toRotationMatrix(worldNormalMatrix); + worldNormalMatrix.invertLocal(); + worldNormalMatrix.transposeLocal(); + u.setValue(VarType.Matrix3, worldNormalMatrix); + break; case WorldViewProjectionMatrix: worldViewProjMatrix.set(viewProjMatrix); worldViewProjMatrix.multLocal(worldMatrix); diff --git a/jme3-core/src/main/java/com/jme3/shader/VariableMapping.java b/jme3-core/src/main/java/com/jme3/shader/VariableMapping.java index 4a88c5d9f..a9a1e2366 100644 --- a/jme3-core/src/main/java/com/jme3/shader/VariableMapping.java +++ b/jme3-core/src/main/java/com/jme3/shader/VariableMapping.java @@ -31,15 +31,13 @@ */ package com.jme3.shader; -import com.jme3.export.InputCapsule; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.export.OutputCapsule; -import com.jme3.export.Savable; +import com.jme3.export.*; + import java.io.IOException; +import java.util.Objects; /** - * represents a mapping between 2 ShaderNodeVariables + * Represents a mapping between 2 shader node variables or a left shader node variable and a value expression. * * @author Nehon */ @@ -47,68 +45,91 @@ public class VariableMapping implements Savable, Cloneable { private ShaderNodeVariable leftVariable; private ShaderNodeVariable rightVariable; + private String rightExpression; private String condition; private String leftSwizzling = ""; private String rightSwizzling = ""; /** - * creates a VariableMapping + * Creates a VariableMapping. */ public VariableMapping() { } /** - * creates a VariableMapping + * Creates a VariableMapping. * - * @param leftVariable the left hand side variable of the expression - * @param leftSwizzling the swizzling of the left variable - * @param rightVariable the right hand side variable of the expression + * @param leftVariable the left hand side variable of the expression + * @param leftSwizzling the swizzling of the left variable + * @param rightVariable the right hand side variable of the expression * @param rightSwizzling the swizzling of the right variable - * @param condition the condition for this mapping + * @param condition the condition for this mapping */ - public VariableMapping(ShaderNodeVariable leftVariable, String leftSwizzling, ShaderNodeVariable rightVariable, String rightSwizzling, String condition) { + public VariableMapping(ShaderNodeVariable leftVariable, String leftSwizzling, ShaderNodeVariable rightVariable, + String rightSwizzling, String condition) { this.leftVariable = leftVariable; this.rightVariable = rightVariable; this.condition = condition; - this.leftSwizzling = leftSwizzling; - this.rightSwizzling = rightSwizzling; + this.leftSwizzling = Objects.requireNonNull(leftSwizzling); + this.rightSwizzling = Objects.requireNonNull(rightSwizzling); } /** + * Gets the left variable. * - * @return the left variable + * @return the left variable. */ public ShaderNodeVariable getLeftVariable() { return leftVariable; } /** - * sets the left variable + * Sets the left variable. * - * @param leftVariable the left variable + * @param leftVariable the left variable. */ public void setLeftVariable(ShaderNodeVariable leftVariable) { this.leftVariable = leftVariable; } /** + * Gets the right variable. * - * @return the right variable + * @return the right variable or null. */ public ShaderNodeVariable getRightVariable() { return rightVariable; } /** - * sets the right variable + * Sets the right variable. * - * @param rightVariable the right variable + * @param rightVariable the right variable. */ public void setRightVariable(ShaderNodeVariable rightVariable) { this.rightVariable = rightVariable; } /** + * Gets the right expression. + * + * @return the right expression or null. + */ + public String getRightExpression() { + return rightExpression; + } + + /** + * Sets the right expression. + * + * @param rightExpression the right expression. + */ + public void setRightExpression(final String rightExpression) { + this.rightExpression = rightExpression; + } + + /** + * Gets the condition. * * @return the condition */ @@ -117,46 +138,48 @@ public class VariableMapping implements Savable, Cloneable { } /** - * sets the condition + * Sets the condition. * - * @param condition the condition + * @param condition the condition or null. */ public void setCondition(String condition) { this.condition = condition; } /** + * Gets the left swizzle. * - * @return the left swizzle + * @return the left swizzle or empty string. */ public String getLeftSwizzling() { return leftSwizzling; } /** - * sets the left swizzle + * Sets the left swizzle. * - * @param leftSwizzling the left swizzle + * @param leftSwizzling the left swizzle. */ public void setLeftSwizzling(String leftSwizzling) { - this.leftSwizzling = leftSwizzling; + this.leftSwizzling = Objects.requireNonNull(leftSwizzling); } /** + * Gets the right swizzle. * - * @return the right swizzle + * @return the right swizzle or empty string. */ public String getRightSwizzling() { return rightSwizzling; } /** - * sets the right swizzle + * Sets the right swizzle. * - * @param rightSwizzling the right swizzle + * @param rightSwizzling the right swizzle. */ public void setRightSwizzling(String rightSwizzling) { - this.rightSwizzling = rightSwizzling; + this.rightSwizzling = Objects.requireNonNull(rightSwizzling); } /** @@ -167,9 +190,10 @@ public class VariableMapping implements Savable, Cloneable { */ @Override public void write(JmeExporter ex) throws IOException { - OutputCapsule oc = (OutputCapsule) ex.getCapsule(this); + OutputCapsule oc = ex.getCapsule(this); oc.write(leftVariable, "leftVariable", null); oc.write(rightVariable, "rightVariable", null); + oc.write(rightExpression, "rightExpression", null); oc.write(condition, "condition", ""); oc.write(leftSwizzling, "leftSwizzling", ""); oc.write(rightSwizzling, "rightSwizzling", ""); @@ -183,9 +207,10 @@ public class VariableMapping implements Savable, Cloneable { */ @Override public void read(JmeImporter im) throws IOException { - InputCapsule ic = (InputCapsule) im.getCapsule(this); + InputCapsule ic = im.getCapsule(this); leftVariable = (ShaderNodeVariable) ic.readSavable("leftVariable", null); rightVariable = (ShaderNodeVariable) ic.readSavable("rightVariable", null); + rightExpression = ic.readString("rightExpression", null); condition = ic.readString("condition", ""); leftSwizzling = ic.readString("leftSwizzling", ""); rightSwizzling = ic.readString("rightSwizzling", ""); @@ -193,16 +218,45 @@ public class VariableMapping implements Savable, Cloneable { @Override public String toString() { - return "\n{" + leftVariable.toString() + (leftSwizzling.length() > 0 ? ("." + leftSwizzling) : "") + " = " + rightVariable.getType() + " " + rightVariable.getNameSpace() + "." + rightVariable.getName() + (rightSwizzling.length() > 0 ? ("." + rightSwizzling) : "") + " : " + condition + "}"; + + final StringBuilder builder = new StringBuilder(leftVariable.toString()); + + if (!leftSwizzling.isEmpty()) { + builder.append('.').append(leftSwizzling); + } + + builder.append(" = "); + + if (rightVariable != null) { + + builder.append(rightVariable.getType()) + .append(' ') + .append(rightVariable.getNameSpace()) + .append('.') + .append(rightVariable.getName()); + + if (!rightSwizzling.isEmpty()) { + builder.append('.').append(rightSwizzling); + } + + } else if (rightExpression != null) { + builder.append(rightExpression); + } + + if (condition != null && !condition.isEmpty()) { + builder.append(" : ").append(condition); + } + + return builder.toString(); } @Override protected VariableMapping clone() throws CloneNotSupportedException { VariableMapping clone = (VariableMapping) super.clone(); - clone.leftVariable = leftVariable.clone(); - clone.rightVariable = rightVariable.clone(); - + if (rightVariable != null) { + clone.rightVariable = rightVariable.clone(); + } return clone; } } diff --git a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java index aa80fa0c6..7146e0d22 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -62,6 +62,12 @@ public abstract class AbstractShadowFilter ext protected T shadowRenderer; protected ViewPort viewPort; + /** + * used for serialization + */ + protected AbstractShadowFilter(){ + } + /** * Abstract class constructor * @@ -172,7 +178,7 @@ public abstract class AbstractShadowFilter ext } /** - * returns the shdaow intensity + * returns the shadow intensity * * @see #setShadowIntensity(float shadowIntensity) * @return shadowIntensity @@ -296,7 +302,7 @@ public abstract class AbstractShadowFilter ext /** - * returns the the edge filtering mode + * returns the edge filtering mode * * @see EdgeFilteringMode * @return @@ -305,6 +311,24 @@ public abstract class AbstractShadowFilter ext return shadowRenderer.getEdgeFilteringMode(); } + /** + * Read the number of shadow maps rendered by this filter. + * + * @return count + */ + public int getNumShadowMaps() { + return shadowRenderer.getNumShadowMaps(); + } + + /** + * Read the size of each shadow map rendered by this filter. + * + * @return a map's height (which is also its width, in pixels) + */ + public int getShadowMapSize() { + return shadowRenderer.getShadowMapSize(); + } + @Override public AbstractShadowFilter jmeClone() { try { diff --git a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java index 8494cd0b3..baef0a90a 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/AbstractShadowRenderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -482,7 +482,7 @@ public abstract class AbstractShadowRenderer implements SceneProcessor, Savable, getReceivers(lightReceivers); if (lightReceivers.size() != 0) { - //setting params to recieving geometry list + //setting params to receiving geometry list setMatParams(lightReceivers); Camera cam = viewPort.getCamera(); @@ -725,6 +725,24 @@ public abstract class AbstractShadowRenderer implements SceneProcessor, Savable, return (int) (edgesThickness * 10); } + /** + * Read the number of shadow maps rendered by this renderer. + * + * @return count + */ + public int getNumShadowMaps() { + return nbShadowMaps; + } + + /** + * Read the size of each shadow map rendered by this renderer. + * + * @return a map's height (which is also its width, in pixels) + */ + public int getShadowMapSize() { + return (int) shadowMapSize; + } + /** * Sets the shadow edges thickness. default is 10, setting it to lower values * can help to reduce the jagged effect of the shadow edges @@ -734,7 +752,7 @@ public abstract class AbstractShadowRenderer implements SceneProcessor, Savable, public void setEdgesThickness(int edgesThickness) { this.edgesThickness = Math.max(1, Math.min(edgesThickness, 10)); this.edgesThickness *= 0.1f; - postshadowMat.setFloat("PCFEdge", edgesThickness); + postshadowMat.setFloat("PCFEdge", this.edgesThickness); } /** diff --git a/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java index 844755cb7..2d745b3fe 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/DirectionalLightShadowFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -42,10 +42,10 @@ import java.io.IOException; /** * * This Filter does basically the same as a DirectionalLightShadowRenderer - * except it renders the post shadow pass as a fulscreen quad pass instead of a + * except it renders the post shadow pass as a fullscreen quad pass instead of a * geometry pass. It's mostly faster than PssmShadowRenderer as long as you have - * more than a about ten shadow recieving objects. The expense is the draw back - * that the shadow Recieve mode set on spatial is ignored. So basically all and + * more than a about ten shadow receiving objects. The expense is the draw back + * that the shadow Receive mode set on spatial is ignored. So basically all and * only objects that render depth in the scene receive shadows. See this post * for more details * http://jmonkeyengine.org/groups/general-2/forum/topic/silly-question-about-shadow-rendering/#post-191599 @@ -56,6 +56,16 @@ import java.io.IOException; */ public class DirectionalLightShadowFilter extends AbstractShadowFilter { + /** + * Used for serialzation. + * Use DirectionalLightShadowFilter#DirectionalLightShadowFilter + * (AssetManager assetManager, int shadowMapSize, int nbSplits) + * instead. + */ + public DirectionalLightShadowFilter() { + super(); + } + /** * Creates a DirectionalLightShadowFilter Shadow Filter More info on the * technique at It splits the view frustum in several parts and compute * a shadow map for each one.
    splits are distributed so that the closer they * are from the camera, the smaller they are to maximize the resolution used of - * the shadow map.
    This result in a better quality shadow than standard + * the shadow map.
    This results in a better quality shadow than standard * shadow mapping.
    for more informations on this read this
    http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html
    *

    @@ -73,7 +73,7 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { private boolean stabilize = true; /** - * Used for serialzation use + * Used for serialization use * DirectionalLightShadowRenderer#DirectionalLightShadowRenderer(AssetManager * assetManager, int shadowMapSize, int nbSplits) */ @@ -185,7 +185,7 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { // update frustum points based on current camera and split ShadowUtil.updateFrustumPoints(viewPort.getCamera(), splitsArray[shadowMapIndex], splitsArray[shadowMapIndex + 1], points); - //Updating shadow cam with curent split frustra + //Updating shadow cam with current split frusta if (lightReceivers.size()==0) { for (Spatial scene : viewPort.getScenes()) { ShadowUtil.getGeometriesInCamFrustum(scene, viewPort.getCamera(), RenderQueue.ShadowMode.Receive, lightReceivers); @@ -234,7 +234,7 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { } /** - * returns the labda parameter see #setLambda(float lambda) + * returns the lambda parameter see #setLambda(float lambda) * * @return lambda */ @@ -244,10 +244,10 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { /* * Adjust the repartition of the different shadow maps in the shadow extend - * usualy goes from 0.0 to 1.0 + * usually goes from 0.0 to 1.0 * a low value give a more linear repartition resulting in a constant quality in the shadow over the extends, but near shadows could look very jagged * a high value give a more logarithmic repartition resulting in a high quality for near shadows, but the quality quickly decrease over the extend. - * the default value is set to 0.65f (theoric optimal value). + * the default value is set to 0.65f (theoretic optimal value). * @param lambda the lambda value. */ public void setLambda(float lambda) { @@ -262,8 +262,8 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { } /** - * Enables the stabilization of the shadows's edges. (default is true) - * This prevents shadows' edges to flicker when the camera moves + * Enables the stabilization of the shadow's edges. (default is true) + * This prevents shadow edges from flickering when the camera moves. * However it can lead to some shadow quality loss in some particular scenes. * @param stabilize */ @@ -283,7 +283,7 @@ public class DirectionalLightShadowRenderer extends AbstractShadowRenderer { super.read(im); InputCapsule ic = im.getCapsule(this); lambda = ic.readFloat("lambda", 0.65f); - zFarOverride = ic.readInt("zFarOverride", 0); + zFarOverride = ic.readFloat("zFarOverride", 0); light = (DirectionalLight) ic.readSavable("light", null); fadeInfo = (Vector2f) ic.readSavable("fadeInfo", null); fadeLength = ic.readFloat("fadeLength", 0f); diff --git a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java index 82730860a..1e26772dd 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -42,10 +42,10 @@ import java.io.IOException; /** * * This Filter does basically the same as a PointLightShadowRenderer except it - * renders the post shadow pass as a fulscreen quad pass instead of a geometry + * renders the post shadow pass as a fullscreen quad pass instead of a geometry * pass. It's mostly faster than PointLightShadowRenderer as long as you have - * more than a about ten shadow recieving objects. The expense is the draw back - * that the shadow Recieve mode set on spatial is ignored. So basically all and + * more than a about ten shadow receiving objects. The expense is the draw back + * that the shadow Receive mode set on spatial is ignored. So basically all and * only objects that render depth in the scene receive shadows. See this post * for more details * http://jmonkeyengine.org/groups/general-2/forum/topic/silly-question-about-shadow-rendering/#post-191599 @@ -56,6 +56,16 @@ import java.io.IOException; */ public class PointLightShadowFilter extends AbstractShadowFilter { + /** + * Used for serialization. + * Use PointLightShadowFilter#PointLightShadowFilter(AssetManager + * assetManager, int shadowMapSize) + * instead. + */ + public PointLightShadowFilter() { + super(); + } + /** * Creates a PointLightShadowFilter * diff --git a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java index 407f72367..a16c4353b 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PointLightShadowRenderer.java @@ -63,9 +63,10 @@ public class PointLightShadowRenderer extends AbstractShadowRenderer { private Geometry[] frustums = null; /** - * Used for serialization use - * PointLightShadowRenderer"PointLightShadowRenderer(AssetManager + * Used for serialization. + * Use PointLightShadowRenderer#PointLightShadowRenderer(AssetManager * assetManager, int shadowMapSize) + * instead. */ public PointLightShadowRenderer() { super(); diff --git a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java index eecd9a28a..f403f22c6 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -52,9 +52,9 @@ import java.io.IOException; /** * * This Filter does basically the same as a PssmShadowRenderer except it renders - * the post shadow pass as a fulscreen quad pass instead of a geometry pass. - * It's mostly faster than PssmShadowRenderer as long as you have more than a about ten shadow recieving objects. - * The expense is the draw back that the shadow Recieve mode set on spatial is ignored. + * the post shadow pass as a fullscreen quad pass instead of a geometry pass. + * It's mostly faster than PssmShadowRenderer as long as you have more than a about ten shadow receiving objects. + * The expense is the draw back that the shadow Receive mode set on spatial is ignored. * So basically all and only objects that render depth in the scene receive shadows. * See this post for more details http://jmonkeyengine.org/groups/general-2/forum/topic/silly-question-about-shadow-rendering/#post-191599 * @@ -69,6 +69,16 @@ public class PssmShadowFilter extends Filter { private PssmShadowRenderer pssmRenderer; private ViewPort viewPort; + /** + * Used for serialization. + * Use PssmShadowFilter#PssmShadowFilter(AssetManager + * assetManager, int size, int nbSplits) + * instead. + */ + public PssmShadowFilter() { + super(); + } + /** * Creates a PSSM Shadow Filter * More info on the technique at http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html @@ -150,10 +160,10 @@ public class PssmShadowFilter extends Filter { /** * Adjust the repartition of the different shadow maps in the shadow extend - * usualy goes from 0.0 to 1.0 + * usually goes from 0.0 to 1.0 * a low value give a more linear repartition resulting in a constant quality in the shadow over the extends, but near shadows could look very jagged * a high value give a more logarithmic repartition resulting in a high quality for near shadows, but the quality quickly decrease over the extend. - * the default value is set to 0.65f (theoric optimal value). + * the default value is set to 0.65f (theoretic optimal value). * @param lambda the lambda value. */ public void setLambda(float lambda) { @@ -224,8 +234,8 @@ public class PssmShadowFilter extends Filter { } /** - * Set this to false if you want to use several PssmRederers to have multiple shadows cast by multiple light sources. - * Make sure the last PssmRenderer in the stack DO flush the queues, but not the others + * Set this to false if you want to use several PssmRenderers to have multiple shadows cast by multiple light sources. + * Make sure the last PssmRenderer in the stack DOES flush the queues, but not the others * @param flushQueues */ public void setFlushQueues(boolean flushQueues) { diff --git a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java index 022d4eb0c..08164d1b6 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/PssmShadowRenderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -63,11 +63,11 @@ import java.util.ArrayList; import java.util.List; /** - * PssmShadow renderer use Parrallel Split Shadow Mapping technique (pssm)
    + * PssmShadow renderer use Parallel Split Shadow Mapping technique (pssm)
    * It splits the view frustum in several parts and compute a shadow map for each * one.
    splits are distributed so that the closer they are from the camera, * the smaller they are to maximize the resolution used of the shadow map.
    - * This result in a better quality shadow than standard shadow mapping.
    for + * This results in a better quality shadow than standard shadow mapping.
    for * more informations on this read this http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html
    *

    @@ -324,7 +324,7 @@ public class PssmShadowRenderer implements SceneProcessor { applyHWShadows = true; } - //debug function that create a displayable frustrum + //debug function that create a displayable frustum private Geometry createFrustum(Vector3f[] pts, int i) { WireFrustum frustum = new WireFrustum(pts); Geometry frustumMdl = new Geometry("f", frustum); @@ -430,7 +430,7 @@ public class PssmShadowRenderer implements SceneProcessor { // update frustum points based on current camera and split ShadowUtil.updateFrustumPoints(viewCam, splitsArray[i], splitsArray[i + 1], points); - //Updating shadow cam with curent split frustra + //Updating shadow cam with current split frusta ShadowUtil.updateShadowCamera(viewPort, lightReceivers, shadowCam, points, splitOccluders, shadowMapSize); //saving light view projection matrix for this split @@ -484,7 +484,7 @@ public class PssmShadowRenderer implements SceneProcessor { } /** - * For debugging purpose Allow to "snapshot" the current frustrum to the + * For debugging purpose Allow to "snapshot" the current frustum to the * scene */ public void displayDebug() { @@ -497,7 +497,7 @@ public class PssmShadowRenderer implements SceneProcessor { displayShadowMap(renderManager.getRenderer()); } if (!noOccluders) { - //setting params to recieving geometry list + //setting params to receiving geometry list setMatParams(); Camera cam = viewPort.getCamera(); @@ -604,10 +604,10 @@ public class PssmShadowRenderer implements SceneProcessor { /* * Adjust the repartition of the different shadow maps in the shadow extend - * usualy goes from 0.0 to 1.0 + * usually goes from 0.0 to 1.0 * a low value give a more linear repartition resulting in a constant quality in the shadow over the extends, but near shadows could look very jagged * a high value give a more logarithmic repartition resulting in a high quality for near shadows, but the quality quickly decrease over the extend. - * the default value is set to 0.65f (theoric optimal value). + * the default value is set to 0.65f (theoretic optimal value). * @param lambda the lambda value. */ public void setLambda(float lambda) { @@ -695,9 +695,9 @@ public class PssmShadowRenderer implements SceneProcessor { } /** - * Set this to false if you want to use several PssmRederers to have + * Set this to false if you want to use several PssmRenderers to have * multiple shadows cast by multiple light sources. Make sure the last - * PssmRenderer in the stack DO flush the queues, but not the others + * PssmRenderer in the stack DOES flush the queues, but not the others * * @param flushQueues */ diff --git a/jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java b/jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java index 89081670d..b6ed55135 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java +++ b/jme3-core/src/main/java/com/jme3/shadow/ShadowUtil.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -32,9 +32,7 @@ package com.jme3.shadow; import com.jme3.bounding.BoundingBox; -import com.jme3.bounding.BoundingSphere; import com.jme3.bounding.BoundingVolume; -import com.jme3.collision.UnsupportedCollisionException; import com.jme3.math.FastMath; import com.jme3.math.Matrix4f; import com.jme3.math.Transform; @@ -44,7 +42,6 @@ import com.jme3.renderer.Camera; import com.jme3.renderer.ViewPort; import com.jme3.renderer.queue.GeometryList; import com.jme3.renderer.queue.RenderQueue; -import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.Geometry; import com.jme3.scene.Node; import com.jme3.scene.Spatial; @@ -510,9 +507,9 @@ public class ShadowUtil { /** * Populates the outputGeometryList with the geometry of the - * inputGeomtryList that are in the frustum of the given camera + * inputGeometryList that are in the frustum of the given camera * - * @param inputGeometryList The list containing all geometry to check + * @param inputGeometryList The list containing all geometries to check * against the camera frustum * @param camera the camera to check geometries against * @param outputGeometryList the list of all geometries that are in the @@ -601,10 +598,10 @@ public class ShadowUtil { /** * Populates the outputGeometryList with the geometry of the - * inputGeomtryList that are in the radius of a light. + * inputGeometryList that are in the radius of a light. * The array of camera must be an array of 6 cameras initialized so they represent the light viewspace of a pointlight * - * @param inputGeometryList The list containing all geometry to check + * @param inputGeometryList The list containing all geometries to check * against the camera frustum * @param cameras the camera array to check geometries against * @param outputGeometryList the list of all geometries that are in the diff --git a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java index 11126467d..85f235d8b 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java +++ b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -42,10 +42,10 @@ import java.io.IOException; /** * * This Filter does basically the same as a SpotLightShadowRenderer except it - * renders the post shadow pass as a fulscreen quad pass instead of a geometry + * renders the post shadow pass as a fullscreen quad pass instead of a geometry * pass. It's mostly faster than PssmShadowRenderer as long as you have more - * than a about ten shadow recieving objects. The expense is the draw back that - * the shadow Recieve mode set on spatial is ignored. So basically all and only + * than a about ten shadow receiving objects. The expense is the draw back that + * the shadow Receive mode set on spatial is ignored. So basically all and only * objects that render depth in the scene receive shadows. See this post for * more details * http://jmonkeyengine.org/groups/general-2/forum/topic/silly-question-about-shadow-rendering/#post-191599 @@ -56,6 +56,16 @@ import java.io.IOException; */ public class SpotLightShadowFilter extends AbstractShadowFilter { + /** + * Used for serialization. + * Use SpotLightShadowFilter#SpotLightShadowFilter(AssetManager assetManager, + * int shadowMapSize) + * instead. + */ + public SpotLightShadowFilter() { + super(); + } + /** * Creates a SpotLight Shadow Filter * diff --git a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java index d3c7fcb52..3f04f3d1a 100644 --- a/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java +++ b/jme3-core/src/main/java/com/jme3/shadow/SpotLightShadowRenderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -52,11 +52,11 @@ import com.jme3.util.clone.Cloner; import java.io.IOException; /** - * SpotLightShadowRenderer renderer use Parrallel Split Shadow Mapping technique + * SpotLightShadowRenderer renderer use Parallel Split Shadow Mapping technique * (pssm)
    It splits the view frustum in several parts and compute a shadow * map for each one.
    splits are distributed so that the closer they are from * the camera, the smaller they are to maximize the resolution used of the - * shadow map.
    This result in a better quality shadow than standard shadow + * shadow map.
    This results in a better quality shadow than standard shadow * mapping.
    for more informations on this read this http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html
    *

    diff --git a/jme3-core/src/main/java/com/jme3/system/Annotations.java b/jme3-core/src/main/java/com/jme3/system/Annotations.java index 46b5ef478..8d93ea793 100644 --- a/jme3-core/src/main/java/com/jme3/system/Annotations.java +++ b/jme3-core/src/main/java/com/jme3/system/Annotations.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,7 +43,7 @@ public class Annotations { /** * Annotation used for math primitive fields, method parameters or method return values. - * Specifies that the primitve is read only and should not be changed. + * Specifies that the primitive is read only and should not be changed. */ @Documented @Retention(RetentionPolicy.RUNTIME) diff --git a/jme3-core/src/main/java/com/jme3/system/AppSettings.java b/jme3-core/src/main/java/com/jme3/system/AppSettings.java index e21050d16..1e058f329 100644 --- a/jme3-core/src/main/java/com/jme3/system/AppSettings.java +++ b/jme3-core/src/main/java/com/jme3/system/AppSettings.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -71,7 +71,7 @@ public final class AppSettings extends HashMap { public static final String LWJGL_OPENGL2 = "LWJGL-OpenGL2"; /** - * Use LWJGL as the display system and force using the core OpenGL3.3 renderer. + * Use LWJGL as the display system and force using the core OpenGL3.2 renderer. *

    * If the underlying system does not support OpenGL3.2, then the context * initialization will throw an exception. Note that currently jMonkeyEngine @@ -379,7 +379,7 @@ public final class AppSettings extends HashMap { } } else { // Use old method for compatibility with older preferences - // TODO: Remove when no longer neccessary + // TODO: Remove when no longer necessary Object defaultValue = defaults.get(key); if (defaultValue instanceof Integer) { put(key, prefs.getInt(key, (Integer) defaultValue)); @@ -1084,7 +1084,7 @@ public final class AppSettings extends HashMap { } /** - * Determine if the the display context will swap buffers every frame. + * Determine if the display context will swap buffers every frame. * * @return True if buffer swapping is enabled, false otherwise. * diff --git a/jme3-core/src/main/java/com/jme3/system/JmeSystem.java b/jme3-core/src/main/java/com/jme3/system/JmeSystem.java index 51c2173fd..4d57de017 100644 --- a/jme3-core/src/main/java/com/jme3/system/JmeSystem.java +++ b/jme3-core/src/main/java/com/jme3/system/JmeSystem.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -122,7 +122,7 @@ public class JmeSystem { * Compresses a raw image into a stream. * * The encoding is performed via system libraries. On desktop, the encoding - * is performed via ImageIO, whereas on Android, is is done via the + * is performed via ImageIO, whereas on Android, is done via the * Bitmap class. * * @param outStream The stream where to write the image data. diff --git a/jme3-core/src/main/java/com/jme3/texture/Texture.java b/jme3-core/src/main/java/com/jme3/texture/Texture.java index 6be00700b..253423d00 100644 --- a/jme3-core/src/main/java/com/jme3/texture/Texture.java +++ b/jme3-core/src/main/java/com/jme3/texture/Texture.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -525,7 +525,7 @@ public abstract class Texture implements CloneableSmartAsset, Savable, Cloneable final Texture other = (Texture) obj; // NOTE: Since images are generally considered unique assets in jME3, - // using the image's equals() implementation is not neccessary here + // using the image's equals() implementation is not necessary here // (would be too slow) if (this.image != other.image) { return false; @@ -549,7 +549,7 @@ public abstract class Texture implements CloneableSmartAsset, Savable, Cloneable public int hashCode() { int hash = 5; // NOTE: Since images are generally considered unique assets in jME3, - // using the image's hashCode() implementation is not neccessary here + // using the image's hashCode() implementation is not necessary here // (would be too slow) hash = 67 * hash + (this.image != null ? System.identityHashCode(this.image) : 0); hash = 67 * hash + (this.minificationFilter != null ? this.minificationFilter.hashCode() : 0); diff --git a/jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java b/jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java index ac1989d5c..d00ab7e22 100644 --- a/jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java +++ b/jme3-core/src/main/java/com/jme3/texture/image/ByteAlignedImageCodec.java @@ -110,7 +110,7 @@ class ByteAlignedImageCodec extends ImageCodec { } public void readComponents(ByteBuffer buf, int x, int y, int width, int offset, int[] components, byte[] tmp) { - readPixelRaw(buf, (x + y * width + offset) * bpp + offset, bpp, tmp); + readPixelRaw(buf, (x + y * width ) * bpp + offset, bpp, tmp); components[0] = readComponent(tmp, ap, az); components[1] = readComponent(tmp, rp, rz); components[2] = readComponent(tmp, gp, gz); diff --git a/jme3-core/src/main/java/com/jme3/texture/image/LastTextureState.java b/jme3-core/src/main/java/com/jme3/texture/image/LastTextureState.java index 4df767b0b..b39580210 100644 --- a/jme3-core/src/main/java/com/jme3/texture/image/LastTextureState.java +++ b/jme3-core/src/main/java/com/jme3/texture/image/LastTextureState.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -61,7 +61,7 @@ public final class LastTextureState { anisoFilter = 1; // The default in OpenGL is OFF, so we avoid setting this per texture - // if its not used. + // if it's not used. shadowCompareMode = Texture.ShadowCompareMode.Off; } } diff --git a/jme3-core/src/main/java/com/jme3/util/BufferUtils.java b/jme3-core/src/main/java/com/jme3/util/BufferUtils.java index 628b2451d..d4546b7e3 100644 --- a/jme3-core/src/main/java/com/jme3/util/BufferUtils.java +++ b/jme3-core/src/main/java/com/jme3/util/BufferUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -291,7 +291,7 @@ public final class BufferUtils { * @param buf * the buffer to insert into * @param index - * the postion to place the data; in terms of colors not floats + * the position to place the data; in terms of colors not floats */ public static void setInBuffer(ColorRGBA color, FloatBuffer buf, int index) { buf.position(index * 4); @@ -349,7 +349,7 @@ public final class BufferUtils { * @param buf * the buffer to insert into * @param index - * the postion to place the data; in terms of vectors not floats + * the position to place the data; in terms of vectors not floats */ public static void setInBuffer(Vector3f vector, FloatBuffer buf, int index) { if (buf == null) { @@ -1027,7 +1027,7 @@ public final class BufferUtils { /** * Creates a new ByteBuffer with the same contents as the given ByteBuffer. - * The new ByteBuffer is seperate from the old one and changes are not + * The new ByteBuffer is separate from the old one and changes are not * reflected across. If you want to reflect changes, consider using * Buffer.duplicate(). * diff --git a/jme3-core/src/main/java/com/jme3/util/ListSort.java b/jme3-core/src/main/java/com/jme3/util/ListSort.java index b88235f37..cede1ff8a 100644 --- a/jme3-core/src/main/java/com/jme3/util/ListSort.java +++ b/jme3-core/src/main/java/com/jme3/util/ListSort.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -46,7 +46,7 @@ import java.util.Comparator; * difference that the temporary necessary memory space are allocated as the * geometry list grows and reused all along the application execution. * - * Usage : ListSort has to be instanciated and kept with the geometry list ( or + * Usage : ListSort has to be instantiated and kept with the geometry list ( or * w/e it may have to sort) Then the allocate method has to be called to * allocate necessary tmp space needed for the sort. This should be called once * for optimal performance, but can be called several times if the length of the @@ -91,7 +91,7 @@ public class ListSort { * class + array was a convoluted pain. */ /** - * array of start indices in the original array for runs : run i sarting + * array of start indices in the original array for runs : run i starting * index is at runIndices[i] */ private int[] runsIndices = null; @@ -108,12 +108,12 @@ public class ListSort { /** * MIN_GALLOP set to 7 constant as described in listsort.txt. this magic * number indicates how many wins should trigger the switch from binary - * search to gallopping mode + * search to galloping mode */ private static final int MIN_GALLOP = 7; /** * This variable allows to adjust when switching to galloping mode. lowered - * when the data are "naturally" structured highered when data are random. + * when the data are "naturally" structured, raised when data are random. */ private int minGallop = MIN_GALLOP; @@ -342,7 +342,7 @@ public class ListSort { */ int nbElems = start - left; /* - * grabbed from java7 TimSort, the swich is an optimization to + * grabbed from java7 TimSort, the switch is an optimization to * arraycopy in case there are 1 or 2 elements only to copy */ switch (nbElems) { diff --git a/jme3-core/src/main/java/com/jme3/util/LittleEndien.java b/jme3-core/src/main/java/com/jme3/util/LittleEndien.java index 6b15a7d45..abff3acca 100644 --- a/jme3-core/src/main/java/com/jme3/util/LittleEndien.java +++ b/jme3-core/src/main/java/com/jme3/util/LittleEndien.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -34,7 +34,7 @@ package com.jme3.util; import java.io.*; /** - * LittleEndien is a class to read littleendien stored data + * LittleEndien is a class to read little-endian stored data * via a InputStream. All functions work as defined in DataInput, but * assume they come from a LittleEndien input stream. Currently used to read .ms3d and .3ds files. * @author Jack Lindamood diff --git a/jme3-core/src/main/java/com/jme3/util/MipMapGenerator.java b/jme3-core/src/main/java/com/jme3/util/MipMapGenerator.java index 3ac6a7ecd..7ea5b23f7 100644 --- a/jme3-core/src/main/java/com/jme3/util/MipMapGenerator.java +++ b/jme3-core/src/main/java/com/jme3/util/MipMapGenerator.java @@ -34,8 +34,8 @@ package com.jme3.util; import com.jme3.math.ColorRGBA; import com.jme3.math.FastMath; import com.jme3.texture.Image; -import com.jme3.texture.Image.Format; import com.jme3.texture.image.ImageRaster; + import java.nio.ByteBuffer; import java.util.ArrayList; @@ -58,8 +58,8 @@ public class MipMapGenerator { float xRatio = ((float)(input.getWidth() - 1)) / output.getWidth(); float yRatio = ((float)(input.getHeight() - 1)) / output.getHeight(); - - ColorRGBA outputColor = new ColorRGBA(); + + ColorRGBA outputColor = new ColorRGBA(0, 0, 0, 0); ColorRGBA bottomLeft = new ColorRGBA(); ColorRGBA bottomRight = new ColorRGBA(); ColorRGBA topLeft = new ColorRGBA(); @@ -72,29 +72,21 @@ public class MipMapGenerator { int x2 = (int)x2f; int y2 = (int)y2f; - - float xDiff = x2f - x2; - float yDiff = y2f - y2; - + input.getPixel(x2, y2, bottomLeft); input.getPixel(x2 + 1, y2, bottomRight); input.getPixel(x2, y2 + 1, topLeft); input.getPixel(x2 + 1, y2 + 1, topRight); - - bottomLeft.multLocal( (1f - xDiff) * (1f - yDiff) ); - bottomRight.multLocal( (xDiff) * (1f - yDiff) ); - topLeft.multLocal( (1f - xDiff) * (yDiff) ); - topRight.multLocal( (xDiff) * (yDiff) ); - + outputColor.set(bottomLeft).addLocal(bottomRight) .addLocal(topLeft).addLocal(topRight); - + outputColor.multLocal(1f / 4f); output.setPixel(x, y, outputColor); } } return outputImage; } - + public static Image resizeToPowerOf2(Image original){ int potWidth = FastMath.nearestPowerOfTwo(original.getWidth()); int potHeight = FastMath.nearestPowerOfTwo(original.getHeight()); diff --git a/jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java b/jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java index 9df5853ca..cea15e9ed 100644 --- a/jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java +++ b/jme3-core/src/main/java/com/jme3/util/NativeObjectManager.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -158,7 +158,7 @@ public class NativeObjectManager { } if (deleteBufs && UNSAFE && realObj != null) { // Only the real object has native buffers. - // The destructable clone has nothing and cannot be used in this case. + // The destructible clone has nothing and cannot be used in this case. realObj.deleteNativeBuffersInternal(); } } diff --git a/jme3-core/src/main/java/com/jme3/util/PrimitiveAllocator.java b/jme3-core/src/main/java/com/jme3/util/PrimitiveAllocator.java index d49c02105..9762dc158 100644 --- a/jme3-core/src/main/java/com/jme3/util/PrimitiveAllocator.java +++ b/jme3-core/src/main/java/com/jme3/util/PrimitiveAllocator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,7 +35,7 @@ import java.nio.Buffer; import java.nio.ByteBuffer; /** - * This class contains a primitve allocator with no special logic, should work + * This class contains a primitive allocator with no special logic, should work * on any jvm */ public final class PrimitiveAllocator implements BufferAllocator { @@ -43,7 +43,7 @@ public final class PrimitiveAllocator implements BufferAllocator { @Override public void destroyDirectBuffer(Buffer toBeDestroyed) { // no exception by intent, as this way naivly written java7/8 - // applications wont crash on 9 assuming they can dispose buffers + // applications won't crash on 9 assuming they can dispose buffers System.err.println("Warning destroyBuffer not supported"); } diff --git a/jme3-core/src/main/java/com/jme3/util/ReflectionAllocator.java b/jme3-core/src/main/java/com/jme3/util/ReflectionAllocator.java index 6ddc5fb87..a55d7c918 100644 --- a/jme3-core/src/main/java/com/jme3/util/ReflectionAllocator.java +++ b/jme3-core/src/main/java/com/jme3/util/ReflectionAllocator.java @@ -149,10 +149,14 @@ public final class ReflectionAllocator implements BufferAllocator { // first Object viewedBuffer = localViewedBufferMethod.invoke(toBeDestroyed); if (viewedBuffer != null) { - destroyDirectBuffer((Buffer) viewedBuffer); - } else { - Logger.getLogger(BufferUtils.class.getName()).log(Level.SEVERE, - "Buffer cannot be destroyed: {0}", toBeDestroyed); + if (viewedBuffer instanceof Buffer) { + destroyDirectBuffer((Buffer) viewedBuffer); + } + // Else nothing to do, we may be on android which has an + // internal system for freeing direct buffers + } else { + Logger.getLogger(BufferUtils.class.getName()).log(Level.SEVERE, + "Buffer cannot be destroyed: {0}", toBeDestroyed); } } } diff --git a/jme3-core/src/main/java/com/jme3/util/SafeArrayList.java b/jme3-core/src/main/java/com/jme3/util/SafeArrayList.java index 30593cd4b..0085b20d3 100644 --- a/jme3-core/src/main/java/com/jme3/util/SafeArrayList.java +++ b/jme3-core/src/main/java/com/jme3/util/SafeArrayList.java @@ -92,9 +92,15 @@ public class SafeArrayList implements List, Cloneable { this.elementType = elementType; } - public SafeArrayList(Class elementType, Collection c) { + public SafeArrayList(final Class elementType, final int capacity) { this.elementType = elementType; - addAll(c); + this.buffer = new ArrayList<>(capacity); + } + + public SafeArrayList(final Class elementType, final Collection collection) { + this.elementType = elementType; + this.buffer = new ArrayList<>(collection); + this.size = buffer.size(); } public SafeArrayList clone() { @@ -150,12 +156,12 @@ public class SafeArrayList implements List, Cloneable { return buffer; if( backingArray == null ) { - buffer = new ArrayList(); + buffer = new ArrayList<>(); } else { // Only keep the array or the buffer but never both at // the same time. 1) it saves space, 2) it keeps the rest // of the code safer. - buffer = new ArrayList( Arrays.asList(backingArray) ); + buffer = new ArrayList<>( Arrays.asList(backingArray) ); backingArray = null; } return buffer; @@ -243,10 +249,19 @@ public class SafeArrayList implements List, Cloneable { } public boolean equals(Object o) { - if( o == this ) + + if (o == this) { return true; - if( !(o instanceof List) ) //covers null too + } else if (o instanceof SafeArrayList) { + + final Object[] targetArray = ((SafeArrayList) o).getArray(); + final E[] array = getArray(); + + return Arrays.equals(targetArray, array); + } else if (!(o instanceof List)) {//covers null too return false; + } + List other = (List)o; Iterator i1 = iterator(); Iterator i2 = other.iterator(); diff --git a/jme3-core/src/main/java/com/jme3/util/SkyFactory.java b/jme3-core/src/main/java/com/jme3/util/SkyFactory.java index 730ee3b11..2d435d50f 100644 --- a/jme3-core/src/main/java/com/jme3/util/SkyFactory.java +++ b/jme3-core/src/main/java/com/jme3/util/SkyFactory.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -85,7 +85,7 @@ public class SkyFactory { * Create a sky with radius=10 using the given cubemap or spheremap texture. * * For the sky to be visible, its radius must fall between the near and far - * planes of the camera's frustrum. + * planes of the camera's frustum. * * @param assetManager from which to load materials * @param texture to use @@ -115,7 +115,7 @@ public class SkyFactory { * Create a sky with radius=10 using the given cubemap or spheremap texture. * * For the sky to be visible, its radius must fall between the near and far - * planes of the camera's frustrum. + * planes of the camera's frustum. * * @param assetManager from which to load materials * @param texture to use @@ -149,7 +149,7 @@ public class SkyFactory { *

* @param sphereRadius the sky sphere's radius: for the sky to be visible, * its radius must fall between the near and far planes of the camera's - * frustrum + * frustum * @return a new spatial representing the sky, ready to be attached to the * scene graph * @deprecated use {@link SkyFactory#createSky(com.jme3.asset.AssetManager, com.jme3.texture.Texture, com.jme3.math.Vector3f, com.jme3.util.SkyFactory.EnvMapType, int)} @@ -171,7 +171,7 @@ public class SkyFactory { * @param envMapType see {@link EnvMapType} * @param sphereRadius the sky sphere's radius: for the sky to be visible, * its radius must fall between the near and far planes of the camera's - * frustrum + * frustum * @return a new spatial representing the sky, ready to be attached to the * scene graph */ @@ -191,7 +191,7 @@ public class SkyFactory { skyMat.setVector3("NormalScale", normalScale); switch (envMapType){ case CubeMap : - // make sure its a cubemap + // make sure it's a cubemap if (!(texture instanceof TextureCubeMap)) { Image img = texture.getImage(); texture = new TextureCubeMap(); @@ -342,7 +342,7 @@ public class SkyFactory { * Create a cube-mapped sky with radius=10 using six textures. * * For the sky to be visible, its radius must fall between the near and far - * planes of the camera's frustrum. + * planes of the camera's frustum. * * @param assetManager from which to load materials * @param west texture for the western face of the cube @@ -379,7 +379,7 @@ public class SkyFactory { * transformation to the normal. * @param sphereRadius the sky sphere's radius: for the sky to be visible, * its radius must fall between the near and far planes of the camera's - * frustrum + * frustum * @return a new spatial representing the sky, ready to be attached to the * scene graph */ diff --git a/jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java b/jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java index ac6b05a8c..a1ee64060 100644 --- a/jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java +++ b/jme3-core/src/main/java/com/jme3/util/TangentBinormalGenerator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -266,7 +266,7 @@ public class TangentBinormalGenerator { return vertices; } - //Don't remove splitmirorred boolean,It's not used right now, but i intend to + //Don't remove splitmirorred boolean,It's not used right now, but I intend to //make this method also split vertice with rotated tangent space and I'll //add another splitRotated boolean private static List splitVertices(Mesh mesh, List vertexData, boolean splitMirorred) { diff --git a/jme3-core/src/main/java/com/jme3/util/clone/Cloner.java b/jme3-core/src/main/java/com/jme3/util/clone/Cloner.java index 3cc2b5576..1e10f33cf 100644 --- a/jme3-core/src/main/java/com/jme3/util/clone/Cloner.java +++ b/jme3-core/src/main/java/com/jme3/util/clone/Cloner.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 jMonkeyEngine + * Copyright (c) 2016-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -61,7 +61,7 @@ import java.util.concurrent.ConcurrentHashMap; * This two step process has a few benefits. First, it means that objects * can easily have a regular shallow clone implementation just like any * normal Java objects. Second, the deep cloning of fields happens after - * creation wich means that the clone is available to future field cloning + * creation which means that the clone is available to future field cloning * to resolve circular references.

* *

Similar to Java serialization, the handling of specific object @@ -71,7 +71,7 @@ import java.util.concurrent.ConcurrentHashMap; * (For example, adding the IdentityCloneFunction for Mesh.class would cause * all mesh instances to be shared with the original object graph.)

* - *

By default, the Cloner registers serveral default clone functions + *

By default, the Cloner registers several default clone functions * as follows:

*
    *
  • java.util.ArrayList: ListCloneFunction @@ -187,7 +187,7 @@ public class Cloner { *
  • Else an IllegalArgumentException is thrown. *
* - *

The abililty to selectively use clone functions is useful when + *

The ability to selectively use clone functions is useful when * being called from a clone function.

* * Note: objects returned by this method may not have yet had their cloneField() diff --git a/jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java b/jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java index 13a9e0e71..28234d7bc 100644 --- a/jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java +++ b/jme3-core/src/main/java/com/jme3/util/clone/JmeCloneable.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 jMonkeyEngine + * Copyright (c) 2016-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -88,7 +88,7 @@ public interface JmeCloneable extends Cloneable { * * @param cloner The cloner that is performing the cloning operation. The * cloneFields method can call back into the cloner to make - * clones if its subordinate fields. + * clones of its subordinate fields. * @param original The original object from which this object was cloned. * This is provided for the very rare case that this object needs * to refer to its original for some reason. In general, all of diff --git a/jme3-core/src/main/java/com/jme3/util/mikktspace/MikktspaceTangentGenerator.java b/jme3-core/src/main/java/com/jme3/util/mikktspace/MikktspaceTangentGenerator.java index 15dc1277d..dbaedb098 100644 --- a/jme3-core/src/main/java/com/jme3/util/mikktspace/MikktspaceTangentGenerator.java +++ b/jme3-core/src/main/java/com/jme3/util/mikktspace/MikktspaceTangentGenerator.java @@ -950,7 +950,7 @@ public class MikktspaceTangentGenerator { } if ((pMyTriInfo.flag & GROUP_WITH_ANY) != 0) { // first to group with a group-with-anything triangle - // determines it's orientation. + // determines its orientation. // This is the only existing order dependency in the code!! if (pMyTriInfo.assignedGroup[0] == null && pMyTriInfo.assignedGroup[1] == null diff --git a/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.frag b/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.frag index 3e130d415..0f5225f39 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.frag +++ b/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.frag @@ -167,7 +167,6 @@ void main(){ vec3 normal = norm; #endif - float specular = 0.5; #ifdef SPECGLOSSPIPELINE #ifdef USE_PACKED_SG @@ -189,12 +188,18 @@ void main(){ #endif vec4 diffuseColor = albedo;// * (1.0 - max(max(specularColor.r, specularColor.g), specularColor.b)); Roughness = 1.0 - glossiness; - #else + vec3 fZero = specularColor.xyz; + #else + float specular = 0.5; float nonMetalSpec = 0.08 * specular; vec4 specularColor = (nonMetalSpec - nonMetalSpec * Metallic) + albedo * Metallic; vec4 diffuseColor = albedo - albedo * Metallic; + vec3 fZero = vec3(specular); #endif + gl_FragColor.rgb = vec3(0.0); + vec3 ao = vec3(1.0); + #ifdef LIGHTMAP vec3 lightMapColor; #ifdef SEPARATE_TEXCOORD @@ -204,12 +209,14 @@ void main(){ #endif #ifdef AO_MAP lightMapColor.gb = lightMapColor.rr; + ao = lightMapColor; + #else + gl_FragColor.rgb += diffuseColor.rgb * lightMapColor; #endif specularColor.rgb *= lightMapColor; - albedo.rgb *= lightMapColor; #endif - gl_FragColor.rgb = vec3(0.0); + float ndotv = max( dot( normal, viewDir ),0.0); for( int i = 0;i < NB_LIGHTS; i+=3){ vec4 lightColor = g_LightData[i]; @@ -233,8 +240,8 @@ void main(){ vec3 directDiffuse; vec3 directSpecular; - PBR_ComputeDirectLight(normal, lightDir.xyz, viewDir, - lightColor.rgb,specular, Roughness, ndotv, + float hdotv = PBR_ComputeDirectLight(normal, lightDir.xyz, viewDir, + lightColor.rgb, fZero, Roughness, ndotv, directDiffuse, directSpecular); vec3 directLighting = diffuseColor.rgb *directDiffuse + directSpecular; @@ -263,7 +270,7 @@ void main(){ indirectSpecular = ApproximateSpecularIBLPolynomial(g_PrefEnvMap, specularColor.rgb, Roughness, ndotv, dominantR, nbMipMaps); indirectSpecular *= vec3(horiz); - vec3 indirectLighting = indirectDiffuse + indirectSpecular; + vec3 indirectLighting = (indirectDiffuse + indirectSpecular) * ao; gl_FragColor.rgb = gl_FragColor.rgb + indirectLighting * step( 0.0, g_LightProbeData.w); #endif diff --git a/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.j3md b/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.j3md index 59d24acfc..fbe8b2814 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.j3md +++ b/jme3-core/src/main/resources/Common/MatDefs/Light/PBRLighting.j3md @@ -133,6 +133,7 @@ MaterialDef PBR Lighting { WorldViewProjectionMatrix CameraPosition WorldMatrix + WorldNormalMatrix ViewProjectionMatrix ViewMatrix } diff --git a/jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md b/jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md index b35c17a9d..1fdab8264 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md +++ b/jme3-core/src/main/resources/Common/MatDefs/Misc/UnshadedNodes.j3md @@ -18,26 +18,26 @@ MaterialDef UnshadedNodes { ShaderNode GpuSkinning { Definition : BasicGPUSkinning : Common/MatDefs/ShaderNodes/HardwareSkinning/HardwareSkinning.j3sn Condition : NumberOfBones - InputMapping { + InputMappings { modelPosition = Global.position boneMatrices = MatParam.BoneMatrices boneWeight = Attr.inHWBoneWeight boneIndex = Attr.inHWBoneIndex } - OutputMapping { + OutputMappings { Global.position = modModelPosition } } ShaderNode UnshadedVert { Definition : CommonVert : Common/MatDefs/ShaderNodes/Common/CommonVert.j3sn - InputMapping { + InputMappings { worldViewProjectionMatrix = WorldParam.WorldViewProjectionMatrix modelPosition = Global.position.xyz texCoord1 = Attr.inTexCoord : ColorMap || (LightMap && !SeparateTexCoord) texCoord2 = Attr.inTexCoord2 : SeparateTexCoord vertColor = Attr.inColor : VertexColor } - OutputMapping { + OutputMappings { Global.position = projPosition } } @@ -89,7 +89,7 @@ MaterialDef UnshadedNodes { ShaderNode AlphaDiscardThreshold { Definition : AlphaDiscard : Common/MatDefs/ShaderNodes/Basic/AlphaDiscard.j3sn Condition : AlphaDiscardThreshold - InputMapping { + InputMappings { alpha = Global.outColor.a threshold = MatParam.AlphaDiscardThreshold } diff --git a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn index 414615b6a..bfa07d93d 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn +++ b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMix.j3sn @@ -10,9 +10,9 @@ ShaderNodeDefinitions{ @output outColor the mixed color } Input { - vec4 color1 - vec4 color2 - float factor + vec4 color1 vec4(1.0) + vec4 color2 vec4(1.0) + float factor 0.5 } Output { vec4 outColor diff --git a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn index 4d1f44328..657976e8a 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn +++ b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Basic/ColorMult.j3sn @@ -9,8 +9,8 @@ ShaderNodeDefinitions{ @output outColor the resulting color } Input { - vec4 color1 - vec4 color2 + vec4 color1 vec4(1.0) + vec4 color2 vec4(1.0) } Output { vec4 outColor diff --git a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/Mult.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/Mult.j3sn index 8a44949b4..2820438d5 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/Mult.j3sn +++ b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/Mult.j3sn @@ -9,8 +9,8 @@ ShaderNodeDefinitions{ @output outFloat the resulting coord } Input { - float float1 - float float2 + float float1 1.0 + float float2 1.0 } Output { float outFloat diff --git a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec2.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec2.j3sn index ab30d5015..dc6d4fcb1 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec2.j3sn +++ b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec2.j3sn @@ -9,8 +9,8 @@ ShaderNodeDefinitions{ @output outCoord the resulting coord } Input { - vec2 coord1 - vec2 coord2 + vec2 coord1 vec2(1.0) + vec2 coord2 vec2(1.0) } Output { vec2 outCoord diff --git a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec3.j3sn b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec3.j3sn index ab3fdb4c1..3dcd63fbe 100644 --- a/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec3.j3sn +++ b/jme3-core/src/main/resources/Common/MatDefs/ShaderNodes/Math/MultVec3.j3sn @@ -9,8 +9,8 @@ ShaderNodeDefinitions{ @output outPos the resulting position } Input { - vec2 pos1 - vec2 pos2 + vec3 pos1 vec3(1.0) + vec3 pos2 vec3(1.0) } Output { vec2 outPos diff --git a/jme3-core/src/main/resources/Common/ShaderLib/Instancing.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/Instancing.glsllib index 5a45ed2f2..37c3a40cf 100644 --- a/jme3-core/src/main/resources/Common/ShaderLib/Instancing.glsllib +++ b/jme3-core/src/main/resources/Common/ShaderLib/Instancing.glsllib @@ -25,6 +25,7 @@ uniform mat4 g_WorldViewMatrix; uniform mat4 g_WorldViewProjectionMatrix; uniform mat4 g_ViewProjectionMatrix; uniform mat3 g_NormalMatrix; +uniform mat3 g_WorldNormalMatrix; #if defined INSTANCING @@ -101,7 +102,7 @@ vec3 TransformNormal(vec3 normal) { } vec3 TransformWorldNormal(vec3 normal) { - return normalize((g_WorldMatrix * vec4(normal,0.0)).xyz); + return normalize(g_WorldNormalMatrix * normal); } diff --git a/jme3-core/src/main/resources/Common/ShaderLib/PBR.glsllib b/jme3-core/src/main/resources/Common/ShaderLib/PBR.glsllib index c5201f12f..81d56dc95 100644 --- a/jme3-core/src/main/resources/Common/ShaderLib/PBR.glsllib +++ b/jme3-core/src/main/resources/Common/ShaderLib/PBR.glsllib @@ -9,50 +9,6 @@ vec3 F_Shlick(float vh, vec3 F0){ return mix(F0, vec3(1.0, 1.0, 1.0), fresnelFact); } -void PBR_ComputeDirectLightSpecWF(vec3 normal, vec3 lightDir, vec3 viewDir, - vec3 lightColor, vec3 specColor, float roughness, float ndotv, - out vec3 outDiffuse, out vec3 outSpecular){ - // Compute halfway vector. - vec3 halfVec = normalize(lightDir + viewDir); - - // Compute ndotl, ndoth, vdoth terms which are needed later. - float ndotl = max( dot(normal, lightDir), 0.0); - float ndoth = max( dot(normal, halfVec), 0.0); - float hdotv = max( dot(viewDir, halfVec), 0.0); - - // Compute diffuse using energy-conserving Lambert. - // Alternatively, use Oren-Nayar for really rough - // materials or if you have lots of processing power ... - outDiffuse = vec3(ndotl) * lightColor; - - //cook-torrence, microfacet BRDF : http://blog.selfshadow.com/publications/s2013-shading-course/karis/s2013_pbs_epic_notes_v2.pdf - - float alpha = roughness * roughness; - - //D, GGX normaal Distribution function - float alpha2 = alpha * alpha; - float sum = ((ndoth * ndoth) * (alpha2 - 1.0) + 1.0); - float denom = PI * sum * sum; - float D = alpha2 / denom; - - // Compute Fresnel function via Schlick's approximation. - vec3 fresnel = F_Shlick(hdotv, specColor); - - //G Shchlick GGX Gometry shadowing term, k = alpha/2 - float k = alpha * 0.5; - - // UE4 way to optimise shlick GGX Gometry shadowing term - //http://graphicrants.blogspot.co.uk/2013/08/specular-brdf-reference.html - float G_V = ndotv + sqrt( (ndotv - ndotv * k) * ndotv + k ); - float G_L = ndotl + sqrt( (ndotl - ndotl * k) * ndotl + k ); - // the max here is to avoid division by 0 that may cause some small glitches. - float G = 1.0/max( G_V * G_L ,0.01); - - float specular = D * G * ndotl; - - outSpecular = fresnel * vec3(specular) * lightColor; -} - vec3 sphericalHarmonics( const in vec3 normal, const vec3 sph[9] ){ float x = normal.x; float y = normal.y; @@ -76,8 +32,8 @@ vec3 sphericalHarmonics( const in vec3 normal, const vec3 sph[9] ){ } -void PBR_ComputeDirectLight(vec3 normal, vec3 lightDir, vec3 viewDir, - vec3 lightColor, float fZero, float roughness, float ndotv, +float PBR_ComputeDirectLight(vec3 normal, vec3 lightDir, vec3 viewDir, + vec3 lightColor, vec3 fZero, float roughness, float ndotv, out vec3 outDiffuse, out vec3 outSpecular){ // Compute halfway vector. vec3 halfVec = normalize(lightDir + viewDir); @@ -103,7 +59,7 @@ void PBR_ComputeDirectLight(vec3 normal, vec3 lightDir, vec3 viewDir, float D = alpha2 / denom; // Compute Fresnel function via Schlick's approximation. - float fresnel = fZero + ( 1.0 - fZero ) * pow( 2.0, (-5.55473 * hdotv - 6.98316) * hdotv); + vec3 fresnel = F_Shlick(hdotv, fZero); //G Shchlick GGX Gometry shadowing term, k = alpha/2 float k = alpha * 0.5; @@ -124,9 +80,10 @@ void PBR_ComputeDirectLight(vec3 normal, vec3 lightDir, vec3 viewDir, // the max here is to avoid division by 0 that may cause some small glitches. float G = 1.0/max( G_V * G_L ,0.01); - float specular = D * fresnel * G * ndotl; + float specular = D * G * ndotl; - outSpecular = vec3(specular) * lightColor; + outSpecular = vec3(specular) * fresnel * lightColor; + return hdotv; } vec3 integrateBRDFApprox( const in vec3 specular, float roughness, float NoV ){ diff --git a/jme3-core/src/main/resources/com/jme3/asset/General.cfg b/jme3-core/src/main/resources/com/jme3/asset/General.cfg index 80b038ba6..2b3b25d93 100644 --- a/jme3-core/src/main/resources/com/jme3/asset/General.cfg +++ b/jme3-core/src/main/resources/com/jme3/asset/General.cfg @@ -25,3 +25,4 @@ LOADER com.jme3.shader.plugins.GLSLLoader : vert, frag, geom, tsctrl, tseval, gl LOADER com.jme3.scene.plugins.fbx.FbxLoader : fbx LOADER com.jme3.scene.plugins.gltf.GltfLoader : gltf LOADER com.jme3.scene.plugins.gltf.BinLoader : bin +LOADER com.jme3.scene.plugins.gltf.GlbLoader : glb diff --git a/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java index eb12bf908..3ad1b8b22 100644 --- a/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java +++ b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryExporter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -255,7 +255,7 @@ public class BinaryExporter implements JmeExporter { } ByteArrayOutputStream out = new ByteArrayOutputStream(); - // write out data to a seperate stream + // write out data to a separate stream int location = 0; // keep track of location for each piece HashMap> alreadySaved = new HashMap>( diff --git a/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java index 794617393..cca304a3b 100644 --- a/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java +++ b/jme3-core/src/plugins/java/com/jme3/export/binary/BinaryInputCapsule.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -975,7 +975,7 @@ final class BinaryInputCapsule implements InputCapsule { /* * UTF-8 crash course: * - * UTF-8 codepoints map to UTF-16 codepoints and vv, which is what Java uses for it's Strings. + * UTF-8 codepoints map to UTF-16 codepoints and vv, which is what Java uses for its Strings. * (so a UTF-8 codepoint can contain all possible values for a Java char) * * A UTF-8 codepoint can be 1, 2 or 3 bytes long. How long a codepint is can be told by reading the first byte: @@ -1003,7 +1003,7 @@ final class BinaryInputCapsule implements InputCapsule { /* * @see ISSUE 276 * - * We'll transfer the bytes into a seperate byte array. + * We'll transfer the bytes into a separate byte array. * While we do that we'll take the opportunity to check if the byte data is valid UTF-8. * * If it is not UTF-8 it is most likely saved with the BinaryOutputCapsule bug, that saves Strings using their native @@ -1020,7 +1020,7 @@ final class BinaryInputCapsule implements InputCapsule { * * It is impossible to detect which one-byte encoding is used. Since UTF8 and practically all 1-byte encodings share the most * used characters (the "none-high" ones) parsing them will give the same result. However, not all byte sequences are legal in - * UTF-8 (see explantion above). If not UTF-8 encoded content is detected we therefor fallback on latin1. We also log a warning. + * UTF-8 (see explantion above). If not UTF-8 encoded content is detected we therefore fall back on latin1. We also log a warning. * * By this method we detect all use of 1 byte encoding if they: * - use a "high" codepoint after a "low" codepoint or a sequence of codepoints that is valid as UTF-8 bytes, that starts with 1000 @@ -1078,9 +1078,9 @@ final class BinaryInputCapsule implements InputCapsule { ); // We use ISO8859_1 to be consistent across platforms. We could default to native encoding, but this would lead to inconsistent // behaviour across platforms! - // Developers that have previously saved their exports using the old exporter (wich uses native encoding), can temporarly + // Developers that have previously saved their exports using the old exporter (which uses native encoding), can temporarly // remove the ""ISO8859_1" parameter, and change the above if statement to "if (false)". - // They should then import and re-export their models using the same enviroment they were orginally created in. + // They should then import and re-export their models using the same environment they were originally created in. return new String(bytes, "ISO8859_1"); } } catch (UnsupportedEncodingException uee) { diff --git a/jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java b/jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java index 62b01ecc5..f66a7fc7e 100644 --- a/jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java +++ b/jme3-core/src/plugins/java/com/jme3/export/binary/ByteUtils.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -269,7 +269,7 @@ public class ByteUtils { } public static long convertLongFromBytes(byte[] bytes, int offset) { - // Convert it to an long + // Convert it to a long return ((((long) bytes[offset+7]) & 0xFF) + ((((long) bytes[offset+6]) & 0xFF) << 8) + ((((long) bytes[offset+5]) & 0xFF) << 16) @@ -340,7 +340,7 @@ public class ByteUtils { // ********** byte <> float METHODS ********** /** - * Writes an float out to an OutputStream. + * Writes a float out to an OutputStream. * * @param outputStream * The OutputStream the float will be written to diff --git a/jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java index 2041fba09..07569ce90 100644 --- a/jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java +++ b/jme3-core/src/plugins/java/com/jme3/material/plugins/ConditionParser.java @@ -51,8 +51,8 @@ public class ConditionParser { public static void main(String argv[]) { ConditionParser parser = new ConditionParser(); - List defines = parser.extractDefines("(LightMap && SeparateTexCoord) || !ColorMap"); - + //List defines = parser.extractDefines("(LightMap && SeparateTexCoord) || !ColorMap"); + List defines = parser.extractDefines("RoughnessMap && MetallicRoughnessMap"); for (String string : defines) { System.err.println(string); } @@ -78,15 +78,15 @@ public class ConditionParser { * parse a condition and returns the list of defines of this condition. * additionally this methods updates the formattedExpression with uppercased * defines names - * - * supported expression syntax example: + * + * supported expression syntax example: * * "(LightMap && SeparateTexCoord) || !ColorMap" * "#if (defined(LightMap) && defined(SeparateTexCoord)) || !defined(ColorMap)" * "#ifdef LightMap" * "#ifdef (LightMap && SeparateTexCoord) || !ColorMap" * - * + * * @param expression the expression to parse * @return the list of defines */ @@ -99,13 +99,13 @@ public class ConditionParser { while (m.find()) { String match = m.group(); defines.add(match); - formattedExpression = formattedExpression.replaceAll(match, "defined(" + match.toUpperCase() + ")"); + formattedExpression = formattedExpression.replaceAll("\\b" + match + "\\b", "defined(" + match.toUpperCase() + ")"); } return defines; } /** - * + * * @return the formatted expression previously updated by extractDefines */ public String getFormattedExpression() { diff --git a/jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java index 7d6184b3f..04873b9dd 100644 --- a/jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/material/plugins/J3MLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -932,7 +932,7 @@ public class J3MLoader implements AssetLoader { } /** - * Internal object used for holding a {@link com.jme3.material.plugins.J3MLoader.TextureOption} and it's value. Also + * Internal object used for holding a {@link com.jme3.material.plugins.J3MLoader.TextureOption} and its value. Also * contains a couple of convenience methods for applying the TextureOption to either a TextureKey or a Texture. */ private static class TextureOptionValue { diff --git a/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java index a14937f82..05ef9fd54 100644 --- a/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeDefinitionLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,7 +43,7 @@ import java.io.InputStream; import java.util.List; /** - * ShaderNodeDefnition file loader (.j3sn) + * ShaderNodeDefinition file loader (.j3sn) * * a j3sn file is a block style file like j3md or j3m. It must contain one * ShaderNodeDefinition{} block that contains several ShaderNodeDefinition{} diff --git a/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java index 13f035426..9eecd12b7 100644 --- a/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java +++ b/jme3-core/src/plugins/java/com/jme3/material/plugins/ShaderNodeLoaderDelegate.java @@ -38,15 +38,10 @@ import com.jme3.material.MatParam; import com.jme3.material.MaterialDef; import com.jme3.material.ShaderGenerationInfo; import com.jme3.material.TechniqueDef; -import com.jme3.shader.Shader; -import com.jme3.shader.ShaderNode; -import com.jme3.shader.ShaderNodeDefinition; -import com.jme3.shader.ShaderNodeVariable; -import com.jme3.shader.ShaderUtils; -import com.jme3.shader.UniformBinding; -import com.jme3.shader.VarType; -import com.jme3.shader.VariableMapping; +import com.jme3.shader.Shader.ShaderType; +import com.jme3.shader.*; import com.jme3.util.blockparser.Statement; + import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; @@ -65,15 +60,18 @@ import java.util.Map; */ public class ShaderNodeLoaderDelegate { + private static final boolean[] IM_HAS_NAME_SPACE = {false, true}; + private static final boolean[] OM_HAS_NAME_SPACE = {true, false}; + protected Map nodeDefinitions; protected Map nodes; protected ShaderNodeDefinition shaderNodeDefinition; protected ShaderNode shaderNode; protected TechniqueDef techniqueDef; - protected Map attributes = new HashMap(); - protected Map vertexDeclaredUniforms = new HashMap(); - protected Map fragmentDeclaredUniforms = new HashMap(); - protected Map varyings = new HashMap(); + protected Map attributes = new HashMap<>(); + protected Map vertexDeclaredUniforms = new HashMap<>(); + protected Map fragmentDeclaredUniforms = new HashMap<>(); + protected Map varyings = new HashMap<>(); protected MaterialDef materialDef; protected String shaderLanguage; protected String shaderName; @@ -165,7 +163,7 @@ public class ShaderNodeLoaderDelegate { if (line.startsWith("Type")) { String type = line.substring(line.lastIndexOf(':') + 1).trim(); - shaderNodeDefinition.setType(Shader.ShaderType.valueOf(type)); + shaderNodeDefinition.setType(ShaderType.valueOf(type)); } else if (line.startsWith("Shader ")) { readShaderStatement(statement); shaderNodeDefinition.getShadersLanguage().add(shaderLanguage); @@ -217,11 +215,15 @@ public class ShaderNodeLoaderDelegate { * @throws IOException */ protected ShaderNodeVariable readVariable(Statement statement) throws IOException { + String line = statement.getLine().trim().replaceAll("\\s*\\[", "["); String[] splitVar = line.split("\\s"); - if (splitVar.length != 2) { - throw new MatParseException("2 arguments", splitVar.length + "", statement); + + if (splitVar.length > 3) { + throw new MatParseException("More than 3 arguments", splitVar.length + "", statement); } + + String defaultValue = splitVar.length > 2? splitVar[2] : null; String varName = splitVar[1]; String varType = splitVar[0]; String multiplicity = null; @@ -230,13 +232,19 @@ public class ShaderNodeLoaderDelegate { //we have an array String[] arr = splitVar[1].split("\\["); varName = arr[0].trim(); - multiplicity = arr[1].replaceAll("\\]", "").trim(); + multiplicity = arr[1].replaceAll("\\]", "").trim(); } + if (varNames.contains(varName + ";")) { throw new MatParseException("Duplicate variable name " + varName, statement); } + varNames += varName + ";"; - return new ShaderNodeVariable(varType, "", varName, multiplicity); + + final ShaderNodeVariable variable = new ShaderNodeVariable(varType, "", varName, multiplicity); + variable.setDefaultValue(defaultValue); + + return variable; } /** @@ -257,61 +265,86 @@ public class ShaderNodeLoaderDelegate { * @throws IOException */ protected void readShaderNode(List statements) throws IOException { + + final ShaderGenerationInfo generationInfo = techniqueDef.getShaderGenerationInfo(); + final List unusedNodes = generationInfo.getUnusedNodes(); + for (Statement statement : statements) { + String line = statement.getLine(); String[] split = statement.getLine().split("[ \\{]"); + if (line.startsWith("Definition")) { ShaderNodeDefinition def = findDefinition(statement); - shaderNode.setDefinition(def); + shaderNode.setDefinition(def); if(def.isNoOutput()){ - techniqueDef.getShaderGenerationInfo().getUnusedNodes().remove(shaderNode.getName()); + unusedNodes.remove(shaderNode.getName()); } } else if (line.startsWith("Condition")) { String condition = line.substring(line.lastIndexOf(":") + 1).trim(); extractCondition(condition, statement); shaderNode.setCondition(conditionParser.getFormattedExpression()); - } else if (line.startsWith("InputMapping")) { - for (Statement statement1 : statement.getContents()) { - VariableMapping mapping = readInputMapping(statement1); - techniqueDef.getShaderGenerationInfo().getUnusedNodes().remove(mapping.getRightVariable().getNameSpace()); + } else if (line.startsWith("InputMappings")) { + for (final Statement subStatement : statement.getContents()) { + + VariableMapping mapping = readInputMapping(subStatement); + + final ShaderNodeVariable rightVariable = mapping.getRightVariable(); + if (rightVariable != null) { + unusedNodes.remove(rightVariable.getNameSpace()); + } + shaderNode.getInputMapping().add(mapping); } - } else if (line.startsWith("OutputMapping")) { + } else if (line.startsWith("OutputMappings")) { for (Statement statement1 : statement.getContents()) { VariableMapping mapping = readOutputMapping(statement1); - techniqueDef.getShaderGenerationInfo().getUnusedNodes().remove(shaderNode.getName()); + unusedNodes.remove(shaderNode.getName()); shaderNode.getOutputMapping().add(mapping); - } + } } else { throw new MatParseException("ShaderNodeDefinition", split[0], statement); } } - } /** - * reads a mapping statement. Sets the nameSpace, name and swizzling of the + * Reads a mapping statement. Sets the nameSpace, name and swizzling of the * left variable. Sets the name, nameSpace and swizzling of the right - * variable types will be determined later. + * variable types will be determined later. Also, we can have the right part as expression. + *
+     * Format variable to variable: <nameSpace>.<varName>[.<swizzling>] = <nameSpace>.<varName>[.<swizzling>][:Condition]
+     * Format expression to variable: <nameSpace>.<varName>[.<swizzling>] = %% expression %% [:Condition]
+     * 
* - * - * Format : .[.] = - * .[.][:Condition] - * - * - * @param statement the statement to read - * @return the read mapping + * @param statement the statement to read. + * @return the read mapping. + * @throws MatParseException if the statement isn't valid. */ - protected VariableMapping parseMapping(Statement statement, boolean[] hasNameSpace) throws IOException { + protected VariableMapping parseMapping(Statement statement, boolean[] hasNameSpace) throws MatParseException { + VariableMapping mapping = new VariableMapping(); String[] cond = statement.getLine().split(":"); - String[] vars = cond[0].split("="); + checkMappingFormat(vars, statement); + ShaderNodeVariable[] variables = new ShaderNodeVariable[2]; String[] swizzle = new String[2]; + String rightExpression = null; + for (int i = 0; i < vars.length; i++) { - String[] expression = vars[i].trim().split("\\."); + + final String var = vars[i].trim(); + + // it seems that is expression, not variable + if (var.contains("%%")) { + rightExpression = var.substring(2, var.length() - 2); + continue; + } + + String[] expression = var.split("\\."); + if (hasNameSpace[i]) { if (expression.length <= 3) { variables[i] = new ShaderNodeVariable("", expression[0].trim(), expression[1].trim()); @@ -327,13 +360,17 @@ public class ShaderNodeLoaderDelegate { swizzle[i] = expression[1].trim(); } } - } mapping.setLeftVariable(variables[0]); mapping.setLeftSwizzling(swizzle[0] != null ? swizzle[0] : ""); - mapping.setRightVariable(variables[1]); - mapping.setRightSwizzling(swizzle[1] != null ? swizzle[1] : ""); + + if (rightExpression != null) { + mapping.setRightExpression(rightExpression); + } else { + mapping.setRightVariable(variables[1]); + mapping.setRightSwizzling(swizzle[1] != null ? swizzle[1] : ""); + } if (cond.length > 1) { extractCondition(cond[1], statement); @@ -391,11 +428,11 @@ public class ShaderNodeLoaderDelegate { } /** - * search a variable in the given list and updates its type and namespace + * Searches a variable in the given list and updates its type and namespace. * - * @param var the variable to update - * @param list the variables list - * @return true if the variable has been found and updated + * @param var the variable to update. + * @param list the variables list. + * @return true if the variable has been found and updated. */ protected boolean updateVariableFromList(ShaderNodeVariable var, List list) { for (ShaderNodeVariable shaderNodeVariable : list) { @@ -410,10 +447,10 @@ public class ShaderNodeLoaderDelegate { } /** - * updates the type of the right variable of a mapping from the type of the - * left variable + * Updates the type of the right variable of a mapping from the type of the + * left variable. * - * @param mapping the mapping to consider + * @param mapping the mapping to consider. */ protected void updateRightTypeFromLeftType(VariableMapping mapping) { String type = mapping.getLeftVariable().getType(); @@ -429,24 +466,25 @@ public class ShaderNodeLoaderDelegate { } /** - * check if once a mapping expression is split by "=" the resulting array - * have 2 elements + * Checks if once a mapping expression is split by "=" the resulting array + * have 2 elements. * - * @param vars the array - * @param statement the statement - * @throws IOException + * @param vars the array. + * @param statement the statement. + * @throws MatParseException if the array isn't correct. */ - protected void checkMappingFormat(String[] vars, Statement statement) throws IOException { + protected void checkMappingFormat(String[] vars, Statement statement) throws MatParseException { if (vars.length != 2) { - throw new MatParseException("Not a valid expression should be '[.] = .[.][:Condition]'", statement); + throw new MatParseException("Not a valid expression should be '[.] = " + + ".[.][:Condition]'", statement); } } /** - * finds a MatParam in the materialDef from the given name + * Finds a {@link MatParam} in the {@link MaterialDef} from the given name. * - * @param varName the matparam name - * @return the MatParam + * @param varName the material param name. + * @return the found {@link MatParam} or null. */ protected MatParam findMatParam(String varName) { for (MatParam matParam : materialDef.getMaterialParams()) { @@ -483,6 +521,7 @@ public class ShaderNodeLoaderDelegate { * @return true if the param was added to the map */ protected boolean updateRightFromUniforms(UniformBinding param, VariableMapping mapping, Map map) { + ShaderNodeVariable right = mapping.getRightVariable(); String name = param.toString(); @@ -503,60 +542,74 @@ public class ShaderNodeLoaderDelegate { } /** - * updates the right variable of the given mapping from a MatParam (a + * Updates the right variable of the given mapping from a {@link MatParam} (a * WorldParam) it checks if the uniform hasn't already been loaded, add it * to the maps if not. * - * @param param the MatParam - * @param mapping the mapping - * @param map the map of uniforms to search into - * @return true if the param was added to the map + * @param param the mat param. + * @param mapping the mapping. + * @param map the map of uniforms to search into. + * @return true if the param was added to the map. */ - public boolean updateRightFromUniforms(MatParam param, VariableMapping mapping, Map map, Statement statement) throws MatParseException { - ShaderNodeVariable right = mapping.getRightVariable(); + public boolean updateRightFromUniforms(MatParam param, VariableMapping mapping, Map map, + Statement statement) throws MatParseException { + + final ShaderNodeVariable left = mapping.getLeftVariable(); + final ShaderNodeVariable right = mapping.getRightVariable(); + DeclaredVariable dv = map.get(param.getName()); + if (dv == null) { + right.setType(param.getVarType().getGlslType()); right.setName(param.getName()); right.setPrefix("m_"); - if(mapping.getLeftVariable().getMultiplicity() != null){ - if(!param.getVarType().name().endsWith("Array")){ + + if (left.getMultiplicity() != null) { + + if (!param.getVarType().name().endsWith("Array")) { throw new MatParseException(param.getName() + " is not of Array type", statement); } - String multiplicity = mapping.getLeftVariable().getMultiplicity(); + + String multiplicity = left.getMultiplicity(); try { Integer.parseInt(multiplicity); - } catch (NumberFormatException nfe) { - //multiplicity is not an int attempting to find for a material parameter. + } catch (final NumberFormatException nfe) { + // multiplicity is not an int attempting to find for a material parameter. MatParam mp = findMatParam(multiplicity); if (mp != null) { - //It's tied to a material param, let's create a define and use this as the multiplicity + // It's tied to a material param, let's create a define and use this as the multiplicity addDefine(multiplicity, VarType.Int); multiplicity = multiplicity.toUpperCase(); - mapping.getLeftVariable().setMultiplicity(multiplicity); - //only declare the variable if the define is defined. - mapping.getLeftVariable().setCondition(mergeConditions(mapping.getLeftVariable().getCondition(), "defined(" + multiplicity + ")", "||")); + left.setMultiplicity(multiplicity); + // only declare the variable if the define is defined. + left.setCondition(mergeConditions(left.getCondition(), "defined(" + multiplicity + ")", "||")); } else { - throw new MatParseException("Wrong multiplicity for variable" + mapping.getLeftVariable().getName() + ". " + multiplicity + " should be an int or a declared material parameter.", statement); + throw new MatParseException("Wrong multiplicity for variable" + left.getName() + ". " + + multiplicity + " should be an int or a declared material parameter.", statement); } } - //the right variable must have the same multiplicity and the same condition. + + // the right variable must have the same multiplicity and the same condition. right.setMultiplicity(multiplicity); - right.setCondition(mapping.getLeftVariable().getCondition()); - } + right.setCondition(left.getCondition()); + } + dv = new DeclaredVariable(right); map.put(right.getName(), dv); - dv.addNode(shaderNode); + dv.addNode(shaderNode); mapping.setRightVariable(right); return true; - } + } + dv.addNode(shaderNode); mapping.setRightVariable(dv.var); + return false; } /** - * updates a variable from the Attribute list + * Updates a variable from the attribute list. * * @param right the variable * @param mapping the mapping @@ -585,11 +638,11 @@ public class ShaderNodeLoaderDelegate { } /** - * find a variable with the given name from the list of variable + * Finds a variable with the given name from the list of variable. * - * @param vars a list of shaderNodeVariables - * @param rightVarName the variable name to search for - * @return the found variable or null is not found + * @param vars the list of shader node variables. + * @param rightVarName the variable name to search for. + * @return the found variable or null is not found. */ public ShaderNodeVariable findNodeOutput(List vars, String rightVarName) { ShaderNodeVariable var = null; @@ -602,152 +655,196 @@ public class ShaderNodeLoaderDelegate { } /** - * extract and check a condition expression + * Extracts and checks a condition expression. * - * @param cond the condition expression - * @param statement the statement being read - * @throws IOException + * @param condition the condition expression. + * @param statement the statement being read. + * @throws MatParseException if the condition isn't valid. */ - public void extractCondition(String cond, Statement statement) throws IOException { - List defines = conditionParser.extractDefines(cond); + public void extractCondition(String condition, Statement statement) throws MatParseException { + List defines = conditionParser.extractDefines(condition); for (String string : defines) { MatParam param = findMatParam(string); if (param != null) { addDefine(param.getName(), param.getVarType()); } else { - throw new MatParseException("Invalid condition, condition must match a Material Parameter named " + cond, statement); + throw new MatParseException("Invalid condition, condition must match a Material Parameter named " + condition, statement); } } } /** - * reads an input mapping + * Reads an input mapping. * - * @param statement1 the statement being read - * @return the mapping - * @throws IOException + * @param statement the statement being read. + * @return the variable mapping. + * @throws MatParseException if we have a problem with parsing input mapping statement. */ - public VariableMapping readInputMapping(Statement statement1) throws IOException { - VariableMapping mapping = null; + public VariableMapping readInputMapping(Statement statement) throws MatParseException { + + VariableMapping mapping; try { - mapping = parseMapping(statement1, new boolean[]{false, true}); - } catch (Exception e) { - throw new MatParseException("Unexpected mapping format", statement1, e); + mapping = parseMapping(statement, IM_HAS_NAME_SPACE); + } catch (final Exception e) { + throw new MatParseException("Unexpected mapping format", statement, e); } - ShaderNodeVariable left = mapping.getLeftVariable(); - ShaderNodeVariable right = mapping.getRightVariable(); - if (!updateVariableFromList(left, shaderNode.getDefinition().getInputs())) { - throw new MatParseException(left.getName() + " is not an input variable of " + shaderNode.getDefinition().getName(), statement1); + + final ShaderNodeDefinition definition = shaderNode.getDefinition(); + final ShaderNodeVariable left = mapping.getLeftVariable(); + final ShaderNodeVariable right = mapping.getRightVariable(); + final String expression = mapping.getRightExpression(); + + if (!updateVariableFromList(left, definition.getInputs())) { + throw new MatParseException(left.getName() + " is not an input variable of " + definition.getName(), statement); + } else if (left.getType().startsWith("sampler") && (right == null || !right.getNameSpace().equals(ShaderGenerator.NAME_SPACE_MAT_PARAM))) { + throw new MatParseException("Samplers can only be assigned to MatParams", statement); } - if (left.getType().startsWith("sampler") && !right.getNameSpace().equals("MatParam")) { - throw new MatParseException("Samplers can only be assigned to MatParams", statement1); + if (right == null && expression == null) { + throw new MatParseException("The mapping doesn't have a right variable or a right expression.", statement); } - if (right.getNameSpace().equals("Global")) { - right.setType("vec4");//Globals are all vec4 for now (maybe forever...) - storeGlobal(right, statement1); + if (right == null) { + return mapping; + } - } else if (right.getNameSpace().equals("Attr")) { - if (shaderNode.getDefinition().getType() == Shader.ShaderType.Fragment) { - throw new MatParseException("Cannot have an attribute as input in a fragment shader" + right.getName(), statement1); + if (right.getNameSpace().equals(ShaderGenerator.NAME_SPACE_GLOBAL)) { + right.setType("vec4"); // Globals are all vec4 for now (maybe forever...) + storeGlobal(right, statement); + } else if (right.getNameSpace().equals(ShaderGenerator.NAME_SPACE_VERTEX_ATTRIBUTE)) { + if (definition.getType() == ShaderType.Fragment) { + throw new MatParseException("Cannot have an attribute as input in a fragment shader" + right.getName(), statement); } updateVarFromAttributes(mapping.getRightVariable(), mapping); storeAttribute(mapping.getRightVariable()); - } else if (right.getNameSpace().equals("MatParam")) { + } else if (right.getNameSpace().equals(ShaderGenerator.NAME_SPACE_MAT_PARAM)) { + MatParam param = findMatParam(right.getName()); if (param == null) { - throw new MatParseException("Could not find a Material Parameter named " + right.getName(), statement1); + throw new MatParseException("Could not find a Material Parameter named " + right.getName(), statement); } - if (shaderNode.getDefinition().getType() == Shader.ShaderType.Vertex) { - if (updateRightFromUniforms(param, mapping, vertexDeclaredUniforms, statement1)) { + + if (definition.getType() == ShaderType.Vertex) { + if (updateRightFromUniforms(param, mapping, vertexDeclaredUniforms, statement)) { + updateMaterialTextureType(statement, mapping, left, param); storeVertexUniform(mapping.getRightVariable()); } } else { - if (updateRightFromUniforms(param, mapping, fragmentDeclaredUniforms, statement1)) { - if (mapping.getRightVariable().getType().contains("|")) { - String type = fixSamplerType(left.getType(), mapping.getRightVariable().getType()); - if (type != null) { - mapping.getRightVariable().setType(type); - } else { - throw new MatParseException(param.getVarType().toString() + " can only be matched to one of " + param.getVarType().getGlslType().replaceAll("\\|", ",") + " found " + left.getType(), statement1); - } - } + if (updateRightFromUniforms(param, mapping, fragmentDeclaredUniforms, statement)) { + updateMaterialTextureType(statement, mapping, left, param); storeFragmentUniform(mapping.getRightVariable()); } } - } else if (right.getNameSpace().equals("WorldParam")) { + } else if (right.getNameSpace().equals(ShaderGenerator.NAME_SPACE_WORLD_PARAM)) { + UniformBinding worldParam = findWorldParam(right.getName()); if (worldParam == null) { - throw new MatParseException("Could not find a World Parameter named " + right.getName(), statement1); + throw new MatParseException("Could not find a World Parameter named " + right.getName(), statement); } - if (shaderNode.getDefinition().getType() == Shader.ShaderType.Vertex) { - if (updateRightFromUniforms(worldParam, mapping, vertexDeclaredUniforms)) { + + if (definition.getType() == ShaderType.Vertex) { + if (updateRightFromUniforms(worldParam, mapping, vertexDeclaredUniforms)) { storeVertexUniform(mapping.getRightVariable()); } } else { - if (updateRightFromUniforms(worldParam, mapping, fragmentDeclaredUniforms)) { + if (updateRightFromUniforms(worldParam, mapping, fragmentDeclaredUniforms)) { storeFragmentUniform(mapping.getRightVariable()); } } } else { + ShaderNode node = nodes.get(right.getNameSpace()); + if (node == null) { - throw new MatParseException("Undeclared node" + right.getNameSpace() + ". Make sure this node is declared before the current node", statement1); + throw new MatParseException("Undeclared node" + right.getNameSpace() + + ". Make sure this node is declared before the current node", statement); } + ShaderNodeVariable var = findNodeOutput(node.getDefinition().getOutputs(), right.getName()); + if (var == null) { - throw new MatParseException("Cannot find output variable" + right.getName() + " form ShaderNode " + node.getName(), statement1); + throw new MatParseException("Cannot find output variable" + right.getName() + + " form ShaderNode " + node.getName(), statement); } + right.setNameSpace(node.getName()); right.setType(var.getType()); right.setMultiplicity(var.getMultiplicity()); - mapping.setRightVariable(right); - storeVaryings(node, mapping.getRightVariable()); + mapping.setRightVariable(right); + + storeVaryings(node, mapping.getRightVariable()); } - checkTypes(mapping, statement1); + checkTypes(mapping, statement); return mapping; } /** - * reads an output mapping + * Updates the material texture type of the variable mapping. * - * @param statement1 the statement being read + * @param statement the statement. + * @param mapping the variable mapping. + * @param left the left variable. + * @param param the material parameter. + * @throws MatParseException if the texture type isn't valid. + */ + private void updateMaterialTextureType(final Statement statement, final VariableMapping mapping, + final ShaderNodeVariable left, final MatParam param) throws MatParseException { + + if (!mapping.getRightVariable().getType().contains("|")) { + return; + } + + final String type = fixSamplerType(left.getType(), mapping.getRightVariable().getType()); + + if (type != null) { + mapping.getRightVariable().setType(type); + } else { + throw new MatParseException(param.getVarType().toString() + " can only be matched to one of " + + param.getVarType().getGlslType().replaceAll("\\|", ",") + " found " + left.getType(), statement); + } + } + + /** + * Reads an output mapping. + * + * @param statement the statement being read. * @return the mapping - * @throws IOException + * @throws MatParseException if we have a problem with parsing the statement. */ - public VariableMapping readOutputMapping(Statement statement1) throws IOException { - VariableMapping mapping = null; + public VariableMapping readOutputMapping(Statement statement) throws MatParseException { + + VariableMapping mapping; try { - mapping = parseMapping(statement1, new boolean[]{true, false}); - } catch (Exception e) { - throw new MatParseException("Unexpected mapping format", statement1, e); + mapping = parseMapping(statement, OM_HAS_NAME_SPACE); + } catch (final Exception e) { + throw new MatParseException("Unexpected mapping format", statement, e); } - ShaderNodeVariable left = mapping.getLeftVariable(); - ShaderNodeVariable right = mapping.getRightVariable(); + final ShaderNodeDefinition definition = shaderNode.getDefinition(); + final ShaderNodeVariable left = mapping.getLeftVariable(); + final ShaderNodeVariable right = mapping.getRightVariable(); if (left.getType().startsWith("sampler") || right.getType().startsWith("sampler")) { - throw new MatParseException("Samplers can only be inputs", statement1); + throw new MatParseException("Samplers can only be inputs", statement); } - if (left.getNameSpace().equals("Global")) { - left.setType("vec4");//Globals are all vec4 for now (maybe forever...) - storeGlobal(left, statement1); + if (left.getNameSpace().equals(ShaderGenerator.NAME_SPACE_GLOBAL)) { + left.setType("vec4"); // Globals are all vec4 for now (maybe forever...) + storeGlobal(left, statement); } else { - throw new MatParseException("Only Global nameSpace is allowed for outputMapping, got" + left.getNameSpace(), statement1); + throw new MatParseException("Only Global nameSpace is allowed for outputMapping, got" + left.getNameSpace(), statement); } - if (!updateVariableFromList(right, shaderNode.getDefinition().getOutputs())) { - throw new MatParseException(right.getName() + " is not an output variable of " + shaderNode.getDefinition().getName(), statement1); + if (!updateVariableFromList(right, definition.getOutputs())) { + throw new MatParseException(right.getName() + " is not an output variable of " + definition.getName(), statement); } - checkTypes(mapping, statement1); + checkTypes(mapping, statement); return mapping; } @@ -775,7 +872,6 @@ public class ShaderNodeLoaderDelegate { shaderNode = new ShaderNode(); shaderNode.setName(name); techniqueDef.getShaderGenerationInfo().getUnusedNodes().add(name); - readShaderNode(statement.getContents()); nodes.put(name, shaderNode); techniqueDef.getShaderNodes().add(shaderNode); @@ -808,45 +904,54 @@ public class ShaderNodeLoaderDelegate { } /** - * stores a global output + * Stores a global output. * - * @param var the variable to store - * @param statement1 the statement being read - * @throws IOException + * @param var the variable to store. + * @param varStatement the statement being read. + * @throws MatParseException if we have duplicates of a global vertex output variable. */ - public void storeGlobal(ShaderNodeVariable var, Statement statement1) throws IOException { + public void storeGlobal(ShaderNodeVariable var, Statement varStatement) throws MatParseException { var.setShaderOutput(true); - if (shaderNode.getDefinition().getType() == Shader.ShaderType.Vertex) { - ShaderNodeVariable global = techniqueDef.getShaderGenerationInfo().getVertexGlobal(); + + final ShaderGenerationInfo generationInfo = techniqueDef.getShaderGenerationInfo(); + final ShaderNodeDefinition definition = shaderNode.getDefinition(); + + if (definition.getType() == ShaderType.Vertex) { + + ShaderNodeVariable global = generationInfo.getVertexGlobal(); + if (global != null) { + if (!global.getName().equals(var.getName())) { - throw new MatParseException("A global output is already defined for the vertex shader: " + global.getName() + ". vertex shader can only have one global output", statement1); + throw new MatParseException("A global output is already defined for the vertex shader: " + + global.getName() + ". vertex shader can only have one global output", varStatement); } + } else { - techniqueDef.getShaderGenerationInfo().setVertexGlobal(var); + generationInfo.setVertexGlobal(var); } - } else if (shaderNode.getDefinition().getType() == Shader.ShaderType.Fragment) { - storeVariable(var, techniqueDef.getShaderGenerationInfo().getFragmentGlobals()); + + } else if (definition.getType() == ShaderType.Fragment) { + storeVariable(var, generationInfo.getFragmentGlobals()); } } /** - * store an attribute + * Stores an attribute. * - * @param var the variable to store + * @param var the variable to store. */ public void storeAttribute(ShaderNodeVariable var) { storeVariable(var, techniqueDef.getShaderGenerationInfo().getAttributes()); } /** - * store a vertex uniform + * Stores a vertex uniform. * - * @param var the variable to store + * @param var the variable to store. */ public void storeVertexUniform(ShaderNodeVariable var) { storeVariable(var, techniqueDef.getShaderGenerationInfo().getVertexUniforms()); - } /** @@ -856,7 +961,6 @@ public class ShaderNodeLoaderDelegate { */ public void storeFragmentUniform(ShaderNodeVariable var) { storeVariable(var, techniqueDef.getShaderGenerationInfo().getFragmentUniforms()); - } /** @@ -869,39 +973,51 @@ public class ShaderNodeLoaderDelegate { } /** - * find the definition from this statement (loads it if necessary) + * Find the definition from this statement (loads it if necessary) * * @param statement the statement being read * @return the definition * @throws IOException */ public ShaderNodeDefinition findDefinition(Statement statement) throws IOException { - String defLine[] = statement.getLine().split(":"); - String defName = defLine[1].trim(); - ShaderNodeDefinition def = getNodeDefinitions().get(defName); - if (def == null) { - if (defLine.length == 3) { - List defs = null; - try { - defs = assetManager.loadAsset(new ShaderNodeDefinitionKey(defLine[2].trim())); - } catch (AssetNotFoundException e) { - throw new MatParseException("Couldn't find " + defLine[2].trim(), statement, e); - } + final String defLine[] = statement.getLine().split(":"); - for (ShaderNodeDefinition definition : defs) { - if (defName.equals(definition.getName())) { - def = definition; - } - if (!(getNodeDefinitions().containsKey(definition.getName()))) { - getNodeDefinitions().put(definition.getName(), definition); - } - } + if (defLine.length != 3) { + throw new MatParseException("Can't find shader node definition for: ", statement); + } + + final Map nodeDefinitions = getNodeDefinitions(); + final String definitionName = defLine[1].trim(); + final String definitionPath = defLine[2].trim(); + final String fullName = definitionName + ":" + definitionPath; + + ShaderNodeDefinition def = nodeDefinitions.get(fullName); + if (def != null) { + return def; + } + + List defs; + try { + defs = assetManager.loadAsset(new ShaderNodeDefinitionKey(definitionPath)); + } catch (final AssetNotFoundException e) { + throw new MatParseException("Couldn't find " + definitionPath, statement, e); + } + + for (final ShaderNodeDefinition definition : defs) { + if (definitionName.equals(definition.getName())) { + def = definition; } - if (def == null) { - throw new MatParseException(defName + " is not a declared as Shader Node Definition", statement); + final String key = definition.getName() + ":" + definitionPath; + if (!(nodeDefinitions.containsKey(key))) { + nodeDefinitions.put(key, definition); } } + + if (def == null) { + throw new MatParseException(definitionName + " is not a declared as Shader Node Definition", statement); + } + return def; } @@ -913,23 +1029,35 @@ public class ShaderNodeLoaderDelegate { */ public void storeVaryings(ShaderNode node, ShaderNodeVariable variable) { variable.setShaderOutput(true); - if (node.getDefinition().getType() == Shader.ShaderType.Vertex && shaderNode.getDefinition().getType() == Shader.ShaderType.Fragment) { - DeclaredVariable dv = varyings.get(variable.getName()); - if (dv == null) { - techniqueDef.getShaderGenerationInfo().getVaryings().add(variable); - dv = new DeclaredVariable(variable); - varyings.put(variable.getName(), dv); - } - dv.addNode(shaderNode); - //if a variable is declared with the same name as an input and an output and is a varying, set it as a shader output so it's declared as a varying only once. - for (VariableMapping variableMapping : node.getInputMapping()) { - if (variableMapping.getLeftVariable().getName().equals(variable.getName())) { - variableMapping.getLeftVariable().setShaderOutput(true); - } - } + final ShaderNodeDefinition nodeDefinition = node.getDefinition(); + final ShaderNodeDefinition currentDefinition = shaderNode.getDefinition(); + + if (nodeDefinition.getType() != ShaderType.Vertex || + currentDefinition.getType() != ShaderType.Fragment) { + return; + } + + final String fullName = node.getName() + "." + variable.getName(); + + DeclaredVariable declaredVar = varyings.get(fullName); + + if (declaredVar == null) { + techniqueDef.getShaderGenerationInfo().getVaryings().add(variable); + declaredVar = new DeclaredVariable(variable); + varyings.put(fullName, declaredVar); } + declaredVar.addNode(shaderNode); + + // if a variable is declared with the same name as an input and an output and is a varying, + // set it as a shader output so it's declared as a varying only once. + for (final VariableMapping variableMapping : node.getInputMapping()) { + final ShaderNodeVariable leftVariable = variableMapping.getLeftVariable(); + if (leftVariable.getName().equals(variable.getName())) { + leftVariable.setShaderOutput(true); + } + } } /** @@ -954,11 +1082,11 @@ public class ShaderNodeLoaderDelegate { } /** - * search a variable in a list from its name and merge the conditions of the - * variables + * Searches a variable in a list from its name and merges the conditions of the + * variables. * - * @param variable the variable - * @param varList the variable list + * @param variable the variable. + * @param varList the variable list. */ public void storeVariable(ShaderNodeVariable variable, List varList) { for (ShaderNodeVariable var : varList) { @@ -992,7 +1120,7 @@ public class ShaderNodeLoaderDelegate { private Map getNodeDefinitions() { if (nodeDefinitions == null) { - nodeDefinitions = new HashMap(); + nodeDefinitions = new HashMap<>(); } return nodeDefinitions; } diff --git a/jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java b/jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java index d3368e45f..5545f480d 100644 --- a/jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/shader/plugins/GLSLLoader.java @@ -129,11 +129,11 @@ public class GLSLLoader implements AssetLoader { private ShaderDependencyNode nextIndependentNode() throws IOException { Collection allNodes = dependCache.values(); - + if (allNodes.isEmpty()) { return null; } - + for (ShaderDependencyNode node : allNodes) { if (node.getDependOnMe().isEmpty()) { return node; @@ -144,11 +144,11 @@ public class GLSLLoader implements AssetLoader { for (ShaderDependencyNode node : allNodes){ System.out.println(node.getName()); } - + throw new IOException("Circular dependency."); } - private String resolveDependencies(ShaderDependencyNode node, Set alreadyInjectedSet, StringBuilder extensions) { + private String resolveDependencies(ShaderDependencyNode node, Set alreadyInjectedSet, StringBuilder extensions, boolean injectDependencies) { if (alreadyInjectedSet.contains(node)) { return "// " + node.getName() + " was already injected at the top.\n"; } else { @@ -181,6 +181,10 @@ public class GLSLLoader implements AssetLoader { // to retrieve the fragment shader, use the content manager this.assetManager = info.getManager(); Reader reader = new InputStreamReader(info.openStream()); + boolean injectDependencies = true; + if (info.getKey() instanceof ShaderAssetKey) { + injectDependencies = ((ShaderAssetKey) info.getKey()).isInjectDependencies(); + } String extension = info.getKey().getExtension(); if (extension.equals("glsllib") || extension.equals("glsl")) { // NOTE: Loopback, GLSLLIB is loaded by this loader @@ -189,10 +193,25 @@ public class GLSLLoader implements AssetLoader { } else { ShaderDependencyNode rootNode = loadNode(reader, "[main]"); StringBuilder extensions = new StringBuilder(); - String code = resolveDependencies(rootNode, new HashSet(), extensions); - extensions.append(code); - dependCache.clear(); - return extensions.toString(); + if (injectDependencies) { + String code = resolveDependencies(rootNode, new HashSet(), extensions, injectDependencies); + extensions.append(code); + dependCache.clear(); + return extensions.toString(); + } else { + Map files = new LinkedHashMap<>(); + HashSet dependencies = new HashSet<>(); + String code = resolveDependencies(rootNode, dependencies, extensions, injectDependencies); + extensions.append(code); + files.put("[main]", extensions.toString()); + + for (ShaderDependencyNode dependency : dependencies) { + files.put(dependency.getName(), dependency.getSource()); + } + + dependCache.clear(); + return files; + } } } } diff --git a/jme3-core/src/plugins/java/com/jme3/shader/plugins/ShaderAssetKey.java b/jme3-core/src/plugins/java/com/jme3/shader/plugins/ShaderAssetKey.java new file mode 100644 index 000000000..e27d92539 --- /dev/null +++ b/jme3-core/src/plugins/java/com/jme3/shader/plugins/ShaderAssetKey.java @@ -0,0 +1,24 @@ +package com.jme3.shader.plugins; + +import com.jme3.asset.AssetKey; + +/** + * Created by Nehon on 28/10/2017. + */ +public class ShaderAssetKey extends AssetKey { + + private boolean injectDependencies = false; + + public ShaderAssetKey(String name, boolean injectDependencies) { + super(name); + this.injectDependencies = injectDependencies; + } + + public boolean isInjectDependencies() { + return injectDependencies; + } + + public void setInjectDependencies(boolean injectDependencies) { + this.injectDependencies = injectDependencies; + } +} diff --git a/jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java index 315d71955..50f7fe5c0 100644 --- a/jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/texture/plugins/HDRLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -149,7 +149,7 @@ public class HDRLoader implements AssetLoader { rleTempBuffer = BufferUtils.createByteBuffer(width * 4); } - // read each component seperately + // read each component separately for (int i = 0; i < 4; i++) { // read WIDTH bytes for the channel for (int j = 0; j < width;) { diff --git a/jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java index e37e4f6bc..a94641f7e 100644 --- a/jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/texture/plugins/PFMLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -101,7 +101,7 @@ public class PFMLoader implements AssetLoader { ByteOrder order = scale < 0 ? ByteOrder.LITTLE_ENDIAN : ByteOrder.BIG_ENDIAN; boolean needEndienFlip = order != ByteOrder.nativeOrder(); - // make sure all unneccessary stuff gets deleted from heap + // make sure all unnecessary stuff gets deleted from heap // before allocating large amount of memory System.gc(); diff --git a/jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java index 20f50df12..4ecb60b8f 100644 --- a/jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java +++ b/jme3-core/src/plugins/java/com/jme3/texture/plugins/TGALoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -214,7 +214,7 @@ public final class TGALoader implements AssetLoader { byte alpha = 0; // Faster than doing a 16-or-24-or-32 check on each individual pixel, - // just make a seperate loop for each. + // just make a separate loop for each. if (pixelDepth == 16) { byte[] data = new byte[2]; float scalar = 255f / 31f; @@ -287,7 +287,7 @@ public final class TGALoader implements AssetLoader { byte blue = 0; byte alpha = 0; // Faster than doing a 16-or-24-or-32 check on each individual pixel, - // just make a seperate loop for each. + // just make a separate loop for each. if (pixelDepth == 32) { for (int i = 0; i <= (height - 1); ++i) { if (!flip) { @@ -312,7 +312,7 @@ public final class TGALoader implements AssetLoader { rawData[rawDataIndex++] = alpha; } } else { - // Its not RLE packed, but the next pixels are raw. + // It's not RLE packed, but the next pixels are raw. j += count; while (count-- >= 0) { blue = dis.readByte(); @@ -349,7 +349,7 @@ public final class TGALoader implements AssetLoader { rawData[rawDataIndex++] = blue; } } else { - // Its not RLE packed, but the next pixels are raw. + // It's not RLE packed, but the next pixels are raw. j += count; while (count-- >= 0) { blue = dis.readByte(); @@ -388,7 +388,7 @@ public final class TGALoader implements AssetLoader { rawData[rawDataIndex++] = blue; } } else { - // Its not RLE packed, but the next pixels are raw. + // It's not RLE packed, but the next pixels are raw. j += count; while (count-- >= 0) { data[1] = dis.readByte(); diff --git a/jme3-core/src/plugins/java/com/jme3/texture/plugins/ktx/KTXLoader.java b/jme3-core/src/plugins/java/com/jme3/texture/plugins/ktx/KTXLoader.java index 376774a0d..2aaa709cd 100644 --- a/jme3-core/src/plugins/java/com/jme3/texture/plugins/ktx/KTXLoader.java +++ b/jme3-core/src/plugins/java/com/jme3/texture/plugins/ktx/KTXLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -166,9 +166,9 @@ public class KTXLoader implements AssetLoader { int offset = 0; //iterate over data for (int mipLevel = 0; mipLevel < numberOfMipmapLevels; mipLevel++) { - //size of the image in byte. + //size of the image in bytes. //this value is bogus in many example, when using mipmaps. - //instead we compute the theorical size and display a warning when it does not match. + //instead we compute the theoretical size and display a warning when it does not match. int fileImageSize = in.readInt(); int width = Math.max(1, pixelWidth >> mipLevel); @@ -312,7 +312,7 @@ public class KTXLoader implements AssetLoader { } /** - * Chacks the file id + * Checks the file id * @param b * @return */ diff --git a/jme3-core/src/test/java/com/jme3/light/LightFilterTest.java b/jme3-core/src/test/java/com/jme3/light/LightFilterTest.java index 447682964..aab30ff17 100644 --- a/jme3-core/src/test/java/com/jme3/light/LightFilterTest.java +++ b/jme3-core/src/test/java/com/jme3/light/LightFilterTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2015 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -231,21 +231,21 @@ public class LightFilterTest { geom.setLocalTranslation(Vector3f.ZERO); geom.setModelBound(new BoundingSphere(1f, Vector3f.ZERO)); - // Infinit spot lights are only filtered + // Infinite spot lights are only filtered // if the geometry is outside the infinite cone. sl.setSpotRange(0); checkFilteredLights(1); - //the geommetry is outside the infinit cone (cone direction going away from the geom) + //the geommetry is outside the infinite cone (cone direction going away from the geom) sl.setPosition(Vector3f.UNIT_Z.mult(1+FastMath.ZERO_TOLERANCE)); checkFilteredLights(0); - //place the spote ligth in the corner of the box geom, (in order to test bounding sphere) + //place the spot light in the corner of the box geom, (in order to test bounding sphere) sl.setDirection(new Vector3f(1, 1, 0).normalizeLocal()); geom.setLocalTranslation(0, 0, 10); sl.setPosition(sl.getDirection().mult(-2f).add(geom.getLocalTranslation())); - // make it barely reach the sphere, incorect with a box + // make it barely reach the sphere, incorrect with a box sl.setSpotRange(1f - FastMath.ZERO_TOLERANCE); checkFilteredLights(0); @@ -253,7 +253,7 @@ public class LightFilterTest { sl.setSpotRange(1f + FastMath.ZERO_TOLERANCE); checkFilteredLights(1); - // extent the range + // extend the range sl.setPosition(Vector3f.ZERO); sl.setDirection(Vector3f.UNIT_Z); sl.setSpotRange(20); diff --git a/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java index ac4ff75eb..b27e29035 100644 --- a/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java +++ b/jme3-desktop/src/main/java/com/jme3/input/awt/AwtKeyInput.java @@ -371,6 +371,8 @@ public class AwtKeyInput implements KeyInput, KeyListener { return KeyEvent.VK_ALT; //todo: location left case KEY_RMENU: return KeyEvent.VK_ALT; //todo: location right + case KEY_PRTSCR: + return KeyEvent.VK_PRINTSCREEN; } logger.log(Level.WARNING, "unsupported key:{0}", key); return 0x10000 + key; @@ -600,6 +602,8 @@ public class AwtKeyInput implements KeyInput, KeyListener { return KEY_LMENU; //Left vs. Right need to improve case KeyEvent.VK_META: return KEY_RCONTROL; + case KeyEvent.VK_PRINTSCREEN: + return KEY_PRTSCR; } logger.log( Level.WARNING, "unsupported key:{0}", key); diff --git a/jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java b/jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java index 0a8e82360..79a72f571 100644 --- a/jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java +++ b/jme3-desktop/src/main/java/jme3tools/navigation/Coordinate.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -116,7 +116,7 @@ public class Coordinate { * This constructor takes a coordinate in the ALRS formats i.e * 38∞31.64'N for lat, and 28∞19.12'W for long * Note: ALRS positions are occasionally written with the decimal minutes - * apostrophe in the 'wrong' place and with an non CP1252 compliant decimal character. + * apostrophe in the 'wrong' place and with a non CP1252 compliant decimal character. * This issue has to be corrected in the source database * @param coOrdinate * @throws InvalidPositionException diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java index 8308c8a46..efcc319a7 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/CartoonEdgeFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -165,7 +165,7 @@ public class CartoonEdgeFilter extends Filter { /** * sets the edge intensity
- * Defineshow visilble will be the outlined edges + * Defineshow visible will be the outlined edges * @param edgeIntensity */ public void setEdgeIntensity(float edgeIntensity) { diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java index 50173c3fc..58f1c7941 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/ColorOverlayFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ public class ColorOverlayFilter extends Filter { private ColorRGBA color = ColorRGBA.White; /** - * creates a colorOverlayFilter with a white coor (transparent) + * creates a colorOverlayFilter with a white color (transparent) */ public ColorOverlayFilter() { super("Color Overlay"); diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java index 699a252cd..31399e79c 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/CrossHatchFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -269,35 +269,35 @@ public class CrossHatchFilter extends Filter { } /** - * Returns treshold for lines 1 + * Returns threshold for lines 1 */ public float getLuminance1() { return luminance1; } /** - * Returns treshold for lines 2 + * Returns threshold for lines 2 */ public float getLuminance2() { return luminance2; } /** - * Returns treshold for lines 3 + * Returns threshold for lines 3 */ public float getLuminance3() { return luminance3; } /** - * Returns treshold for lines 4 + * Returns threshold for lines 4 */ public float getLuminance4() { return luminance4; } /** - * Returns treshold for blobs + * Returns threshold for blobs */ public float getLuminance5() { return luminance5; diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java index 381bff2ff..872b3566e 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/DepthOfFieldFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -54,10 +54,13 @@ public class DepthOfFieldFilter extends Filter { private float focusDistance = 50f; private float focusRange = 10f; private float blurScale = 1f; + private float blurThreshold = 0.2f; // These values are set internally based on the // viewport size. private float xScale; private float yScale; + + private boolean debugUnfocus; /** * Creates a DepthOfField filter @@ -83,7 +86,8 @@ public class DepthOfFieldFilter extends Filter { material = new Material(assets, "Common/MatDefs/Post/DepthOfField.j3md"); material.setFloat("FocusDistance", focusDistance); material.setFloat("FocusRange", focusRange); - + material.setFloat("BlurThreshold", blurThreshold); + material.setBoolean("DebugUnfocus", debugUnfocus); xScale = 1.0f / w; yScale = 1.0f / h; @@ -136,7 +140,7 @@ public class DepthOfFieldFilter extends Filter { /** * Sets the blur amount by scaling the convolution filter up or * down. A value of 1 (the default) performs a sparse 5x5 evenly - * distribubted convolution at pixel level accuracy. Higher values skip + * distributed convolution at pixel level accuracy. Higher values skip * more pixels, and so on until you are no longer blurring the image * but simply hashing it. * @@ -161,13 +165,62 @@ public class DepthOfFieldFilter extends Filter { return blurScale; } + /** + * Sets the minimum blur factor before the convolution filter is + * calculated. The default is 0.2 which means if the "unfocus" + * amount is less than 0.2 (where 0 is no blur and 1.0 is full blurScale) + * then no blur will be applied at all. Depending on the GPU implementation, + * this may be an optimization since it uses branching to skip the expensive + * convolution filter. + * + *

In scenes where the focus distance is close (like 0) and the focus range + * is relatively large, this threshold will remove some subtlety in + * the near-camera blurring and should be set smaller than the default + * or to 0 to disable completely. Sometimes that cut-off is desired if + * mid-to-far field unfocusing is all that is desired.

+ */ + public void setBlurThreshold( float f ) { + this.blurThreshold = f; + if (material != null) { + material.setFloat("BlurThreshold", blurThreshold); + } + } + + /** + * returns the blur threshold. + * @return + */ + public float getBlurThreshold() { + return blurThreshold; + } + + /** + * Turns on/off debugging of the 'unfocus' value that is used to + * mix the convolution filter. When this is on, the 'unfocus' value + * is rendered as gray scale. This can be used to more easily visualize + * where in your view the focus is centered and how steep the gradient/cutoff + * is, etc.. + */ + public void setDebugUnfocus( boolean b ) { + this.debugUnfocus = b; + if( material != null ) { + material.setBoolean("DebugUnfocus", debugUnfocus); + } + } + + public boolean getDebugUnfocus() { + return debugUnfocus; + } + @Override public void write(JmeExporter ex) throws IOException { super.write(ex); OutputCapsule oc = ex.getCapsule(this); oc.write(blurScale, "blurScale", 1f); + oc.write(blurScale, "blurThreshold", 0.2f); oc.write(focusDistance, "focusDistance", 50f); oc.write(focusRange, "focusRange", 10f); + oc.write(debugUnfocus, "debugUnfocus", false); // strange to write this I guess } @Override @@ -175,7 +228,9 @@ public class DepthOfFieldFilter extends Filter { super.read(im); InputCapsule ic = im.getCapsule(this); blurScale = ic.readFloat("blurScale", 1f); + blurThreshold = ic.readFloat("blurThreshold", 0.2f); focusDistance = ic.readFloat("focusDistance", 50f); focusRange = ic.readFloat("focusRange", 10f); + debugUnfocus = ic.readBoolean("debugUnfocus", false); } } diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java index be7fe46ab..ba8210c30 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/FadeFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -154,7 +154,7 @@ public class FadeFilter extends Filter { /** * return the current value of the fading - * can be used to chack if fade is complete (eg value=1) + * can be used to check if fade is complete (eg value=1) * @return */ public float getValue() { diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java index 271358454..3d98e1165 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/LightScatteringFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -47,8 +47,8 @@ import com.jme3.renderer.queue.RenderQueue; import java.io.IOException; /** - * LightScattering filters creates rays comming from a light sources - * This is often reffered as god rays. + * LightScattering filters create rays coming from light sources + * This is often referred to as god rays. * * @author Rémy Bouquet aka Nehon */ @@ -67,7 +67,7 @@ public class LightScatteringFilter extends Filter { private ViewPort viewPort; /** - * creates a lightScaterring filter + * creates a lightScattering filter */ public LightScatteringFilter() { super("Light Scattering"); @@ -200,7 +200,7 @@ public class LightScatteringFilter extends Filter { } /** - * returns the nmber of samples for the radial blur + * returns the number of samples for the radial blur * @return */ public int getNbSamples() { @@ -209,7 +209,7 @@ public class LightScatteringFilter extends Filter { /** * sets the number of samples for the radial blur default is 50 - * the higher the value the higher the quality, but the slower the performances. + * the higher the value the higher the quality, but the slower the performance. * @param nbSamples */ public void setNbSamples(int nbSamples) { diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java index 2e380c610..f3400c553 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/PosterizationFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -115,7 +115,7 @@ public class PosterizationFilter extends Filter { } /** - * Sets urrent strength value, i.e. influence on final image + * Sets current strength value, i.e. influence on final image */ public void setStrength(float strength) { this.strength = strength; diff --git a/jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java b/jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java index 3fb25b51e..28cc2c28c 100644 --- a/jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/filters/RadialBlurFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -63,7 +63,7 @@ public class RadialBlurFilter extends Filter { /** * Creates a RadialBlurFilter * @param sampleDist the distance between samples - * @param sampleStrength the strenght of each sample + * @param sampleStrength the strength of each sample */ public RadialBlurFilter(float sampleDist, float sampleStrength) { this(); @@ -124,7 +124,7 @@ public class RadialBlurFilter extends Filter { } /** - * sets the sample streanght default is 2.2 + * sets the sample strength default is 2.2 * @param sampleStrength */ public void setSampleStrength(float sampleStrength) { diff --git a/jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java b/jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java index 3645bfd36..611f9954f 100644 --- a/jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java +++ b/jme3-effects/src/main/java/com/jme3/post/ssao/SSAOFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ import java.util.ArrayList; /** * SSAO stands for screen space ambient occlusion - * It's a technique that fake ambient lighting by computing shadows that near by objects would casts on each others + * It's a technique that fakes ambient lighting by computing shadows that near by objects would casts on each others * under the effect of an ambient light * more info on this in this blog post http://jmonkeyengine.org/2010/08/16/screen-space-ambient-occlusion-for-jmonkeyengine-3-0/ * @@ -207,7 +207,7 @@ public class SSAOFilter extends Filter { } /** - * Sets the the width of the occlusion cone considered by the occludee default is 0.1f + * Sets the width of the occlusion cone considered by the occludee default is 0.1f * @param bias */ public void setBias(float bias) { @@ -247,7 +247,7 @@ public class SSAOFilter extends Filter { } /** - * Sets the radius of the area where random samples will be picked dafault 5.1f + * Sets the radius of the area where random samples will be picked default 5.1f * @param sampleRadius */ public void setSampleRadius(float sampleRadius) { diff --git a/jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java b/jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java index 7f07cd550..36ae8ee60 100644 --- a/jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java +++ b/jme3-effects/src/main/java/com/jme3/water/SimpleWaterProcessor.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -50,7 +50,7 @@ import com.jme3.ui.Picture; * * Simple Water renders a simple plane that use reflection and refraction to look like water. * It's pretty basic, but much faster than the WaterFilter - * It's useful if you aim low specs hardware and still want a good looking water. + * It's useful if you aim for low specs hardware and still want a good looking water. * Usage is : * * SimpleWaterProcessor waterProcessor = new SimpleWaterProcessor(assetManager); @@ -514,7 +514,7 @@ public class SimpleWaterProcessor implements SceneProcessor { /** - * retruns true if the waterprocessor is in debug mode + * returns true if the waterprocessor is in debug mode * @return */ public boolean isDebug() { diff --git a/jme3-effects/src/main/java/com/jme3/water/WaterFilter.java b/jme3-effects/src/main/java/com/jme3/water/WaterFilter.java index a1240d12d..162abb85e 100644 --- a/jme3-effects/src/main/java/com/jme3/water/WaterFilter.java +++ b/jme3-effects/src/main/java/com/jme3/water/WaterFilter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -569,8 +569,8 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { /** * This is a constant related to the index of refraction (IOR) used to compute the fresnel term. * F = R0 + (1-R0)( 1 - N.V)^5 - * where F is the fresnel term, R0 the constant, N the normal vector and V tne view vector. - * It usually depend on the material you are lookinh through (here water). + * where F is the fresnel term, R0 the constant, N the normal vector and V the view vector. + * It usually depend on the material you are looking through (here water). * Default value is 0.3f * In practice, the lowest the value and the less the reflection can be seen on water * @param refractionConstant @@ -683,7 +683,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { } /** - * returns the refractionStrenght + * returns the refractionStrength * @return */ public float getRefractionStrength() { @@ -692,7 +692,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { /** * This value modifies current fresnel term. If you want to weaken - * reflections use bigger value. If you want to empasize them use + * reflections use bigger value. If you want to emphasize them use * value smaller then 0. Default is 0.0f. * @param refractionStrength */ @@ -725,7 +725,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { } /** - * returns the foam existance vector + * returns the foam existence vector * @return */ public Vector3f getFoamExistence() { @@ -766,7 +766,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { } /** - * Returns the color exctinction vector of the water + * Returns the color extinction vector of the water * @return */ public Vector3f getColorExtinction() { @@ -778,7 +778,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { * the first value is for red * the second is for green * the third is for blue - * Play with thos parameters to "trouble" the water + * Play with those parameters to "trouble" the water * default is (5.0, 20.0, 30.0f); * @param colorExtinction */ @@ -864,7 +864,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { } /** - * Sets the shinines factor of the water + * Sets the shininess factor of the water * default is 0.7f * @param shininess */ @@ -876,7 +876,7 @@ public class WaterFilter extends Filter implements JmeCloneable, Cloneable { } /** - * retruns the speed of the waves + * returns the speed of the waves * @return */ public float getSpeed() { diff --git a/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag index cdc1a3526..ccf20ba59 100644 --- a/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag +++ b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.frag @@ -10,7 +10,7 @@ uniform float m_FocusDistance; uniform float m_XScale; uniform float m_YScale; -vec2 m_NearFar = vec2( 0.1, 1000.0 ); +uniform vec2 g_FrustumNearFar; void main() { @@ -31,8 +31,8 @@ void main() { // z * (zb - a) = b // z = b / (zb - a) // - float a = m_NearFar.y / (m_NearFar.y - m_NearFar.x); - float b = m_NearFar.y * m_NearFar.x / (m_NearFar.x - m_NearFar.y); + float a = g_FrustumNearFar.y / (g_FrustumNearFar.y - g_FrustumNearFar.x); + float b = g_FrustumNearFar.y * g_FrustumNearFar.x / (g_FrustumNearFar.x - g_FrustumNearFar.y); float z = b / (zBuffer - a); // Above could be the same for any depth-based filter @@ -42,7 +42,7 @@ void main() { // at +/- m_FocusRange to either side of that. float unfocus = min( 1.0, abs( z - m_FocusDistance ) / m_FocusRange ); - if( unfocus < 0.2 ) { + if( unfocus < BLUR_THRESHOLD ) { // If we are mostly in focus then don't bother with the // convolution filter gl_FragColor = texVal; @@ -86,7 +86,11 @@ void main() { gl_FragColor = mix( texVal, sum, unfocus ); - // I used this for debugging the range - // gl_FragColor.r = unfocus; + #ifdef DEBUG_UNFOCUS + // Used for debugging the range or user settings + gl_FragColor.r = unfocus; + gl_FragColor.g = unfocus; + gl_FragColor.b = unfocus; + #endif } -} \ No newline at end of file +} diff --git a/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md index a4fe79601..908889951 100644 --- a/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md +++ b/jme3-effects/src/main/resources/Common/MatDefs/Post/DepthOfField.j3md @@ -9,6 +9,8 @@ MaterialDef Depth Of Field { Float FocusDistance; Float XScale; Float YScale; + Float BlurThreshold : 0.2; + Boolean DebugUnfocus : false; } Technique { @@ -16,12 +18,15 @@ MaterialDef Depth Of Field { FragmentShader GLSL150 GLSL100: Common/MatDefs/Post/DepthOfField.frag WorldParameters { + FrustumNearFar } Defines { RESOLVE_MS : NumSamples RESOLVE_DEPTH_MS : NumSamplesDepth + BLUR_THRESHOLD : BlurThreshold + DEBUG_UNFOCUS : DebugUnfocus } } -} \ No newline at end of file +} diff --git a/jme3-examples/src/main/java/jme3test/TestChooser.java b/jme3-examples/src/main/java/jme3test/TestChooser.java index 5c2c572a1..c47196035 100644 --- a/jme3-examples/src/main/java/jme3test/TestChooser.java +++ b/jme3-examples/src/main/java/jme3test/TestChooser.java @@ -76,7 +76,7 @@ public class TestChooser extends JDialog { /** * Only accessed from EDT */ - private Object[] selectedClass = null; + private java.util.List selectedClass = null; private boolean showSetting = true; /** @@ -246,7 +246,7 @@ public class TestChooser extends JDialog { }; } - private void startApp(final Object[] appClass){ + private void startApp(final java.util.List appClass){ if (appClass == null){ JOptionPane.showMessageDialog(rootPane, "Please select a test from the list", @@ -257,8 +257,8 @@ public class TestChooser extends JDialog { new Thread(new Runnable(){ public void run(){ - for (int i = 0; i < appClass.length; i++) { - Class clazz = (Class)appClass[i]; + for (int i = 0; i < appClass.size(); i++) { + Class clazz = (Class)appClass.get(i); try { if (LegacyApplication.class.isAssignableFrom(clazz)) { Object app = clazz.newInstance(); @@ -333,7 +333,7 @@ public class TestChooser extends JDialog { list.getSelectionModel().addListSelectionListener( new ListSelectionListener() { public void valueChanged(ListSelectionEvent e) { - selectedClass = list.getSelectedValues(); + selectedClass = list.getSelectedValuesList(); } }); list.addMouseListener(new MouseAdapter() { @@ -485,7 +485,7 @@ public class TestChooser extends JDialog { }); jtf.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - selectedClass = classes.getSelectedValues(); + selectedClass = classes.getSelectedValuesList(); startApp(selectedClass); } }); diff --git a/jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java b/jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java index 177050118..d1d415128 100644 --- a/jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java +++ b/jme3-examples/src/main/java/jme3test/animation/SubtitleTrack.java @@ -31,7 +31,7 @@ */ package jme3test.animation; -import com.jme3.cinematic.events.GuiTrack; +import com.jme3.cinematic.events.GuiEvent; import de.lessvoid.nifty.Nifty; import de.lessvoid.nifty.elements.render.TextRenderer; @@ -39,7 +39,7 @@ import de.lessvoid.nifty.elements.render.TextRenderer; * * @author Nehon */ -public class SubtitleTrack extends GuiTrack{ +public class SubtitleTrack extends GuiEvent{ private String text=""; public SubtitleTrack(Nifty nifty, String screen,float initialDuration, String text) { @@ -50,7 +50,8 @@ public class SubtitleTrack extends GuiTrack{ @Override public void onPlay() { super.onPlay(); - nifty.getScreen(screen).findElementByName("text").getRenderer(TextRenderer.class).setText(text); + nifty.getScreen(screen).findElementById("text") + .getRenderer(TextRenderer.class).setText(text); } diff --git a/jme3-examples/src/main/java/jme3test/animation/TestCinematic.java b/jme3-examples/src/main/java/jme3test/animation/TestCinematic.java index a066426e4..93ad16f7f 100644 --- a/jme3-examples/src/main/java/jme3test/animation/TestCinematic.java +++ b/jme3-examples/src/main/java/jme3test/animation/TestCinematic.java @@ -57,7 +57,7 @@ import com.jme3.scene.CameraNode; import com.jme3.scene.Geometry; import com.jme3.scene.Spatial; import com.jme3.scene.shape.Box; -import com.jme3.shadow.PssmShadowRenderer; +import com.jme3.shadow.DirectionalLightShadowRenderer; import de.lessvoid.nifty.Nifty; public class TestCinematic extends SimpleApplication { @@ -237,10 +237,11 @@ public class TestCinematic extends SimpleApplication { fpp.addFilter(fade); if (renderer.getCaps().contains(Caps.GLSL100)) { - PssmShadowRenderer pssm = new PssmShadowRenderer(assetManager, 512, 1); - pssm.setDirection(new Vector3f(0, -1, -1).normalizeLocal()); - pssm.setShadowIntensity(0.4f); - viewPort.addProcessor(pssm); + DirectionalLightShadowRenderer dlsr + = new DirectionalLightShadowRenderer(assetManager, 512, 1); + dlsr.setLight(light); + dlsr.setShadowIntensity(0.4f); + viewPort.addProcessor(dlsr); viewPort.addProcessor(fpp); } } diff --git a/jme3-examples/src/main/java/jme3test/audio/TestAmbient.java b/jme3-examples/src/main/java/jme3test/audio/TestAmbient.java index 2703d53da..6d300525e 100644 --- a/jme3-examples/src/main/java/jme3test/audio/TestAmbient.java +++ b/jme3-examples/src/main/java/jme3test/audio/TestAmbient.java @@ -29,6 +29,7 @@ package jme3test.audio; import com.jme3.app.SimpleApplication; +import com.jme3.audio.AudioData.DataType; import com.jme3.audio.AudioNode; import com.jme3.audio.Environment; import com.jme3.material.Material; @@ -55,13 +56,15 @@ public class TestAmbient extends SimpleApplication { Environment env = new Environment(eax); audioRenderer.setEnvironment(env); - waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", false); + waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", + DataType.Buffer); waves.setPositional(true); waves.setLocalTranslation(new Vector3f(0, 0,0)); waves.setMaxDistance(100); waves.setRefDistance(5); - nature = new AudioNode(assetManager, "Sound/Environment/Nature.ogg", true); + nature = new AudioNode(assetManager, "Sound/Environment/Nature.ogg", + DataType.Stream); nature.setPositional(false); nature.setVolume(3); diff --git a/jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java b/jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java index 6d7ceb913..35332b11d 100644 --- a/jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java +++ b/jme3-examples/src/main/java/jme3test/audio/TestMusicStreaming.java @@ -34,6 +34,7 @@ package jme3test.audio; import com.jme3.app.SimpleApplication; import com.jme3.asset.plugins.UrlLocator; +import com.jme3.audio.AudioData; import com.jme3.audio.AudioNode; public class TestMusicStreaming extends SimpleApplication { @@ -46,7 +47,8 @@ public class TestMusicStreaming extends SimpleApplication { @Override public void simpleInitApp(){ assetManager.registerLocator("http://www.vorbis.com/music/", UrlLocator.class); - AudioNode audioSource = new AudioNode(assetManager, "Lumme-Badloop.ogg", true); + AudioNode audioSource = new AudioNode(assetManager, "Lumme-Badloop.ogg", + AudioData.DataType.Stream); audioSource.setPositional(false); audioSource.setReverbEnabled(false); audioSource.play(); diff --git a/jme3-examples/src/main/java/jme3test/audio/TestReverb.java b/jme3-examples/src/main/java/jme3test/audio/TestReverb.java index 262f2984d..8fd5d1b7f 100644 --- a/jme3-examples/src/main/java/jme3test/audio/TestReverb.java +++ b/jme3-examples/src/main/java/jme3test/audio/TestReverb.java @@ -29,6 +29,7 @@ package jme3test.audio; import com.jme3.app.SimpleApplication; +import com.jme3.audio.AudioData; import com.jme3.audio.AudioNode; import com.jme3.audio.Environment; import com.jme3.math.FastMath; @@ -47,7 +48,8 @@ public class TestReverb extends SimpleApplication { @Override public void simpleInitApp() { - audioSource = new AudioNode(assetManager, "Sound/Effects/Bang.wav"); + audioSource = new AudioNode(assetManager, "Sound/Effects/Bang.wav", + AudioData.DataType.Buffer); float[] eax = new float[]{15, 38.0f, 0.300f, -1000, -3300, 0, 1.49f, 0.54f, 1.00f, -2560, 0.162f, 0.00f, 0.00f, 0.00f, diff --git a/jme3-examples/src/main/java/jme3test/audio/TestWav.java b/jme3-examples/src/main/java/jme3test/audio/TestWav.java index 2c145ec75..09fcfe714 100644 --- a/jme3-examples/src/main/java/jme3test/audio/TestWav.java +++ b/jme3-examples/src/main/java/jme3test/audio/TestWav.java @@ -30,6 +30,7 @@ package jme3test.audio; import com.jme3.app.SimpleApplication; +import com.jme3.audio.AudioData; import com.jme3.audio.AudioNode; public class TestWav extends SimpleApplication { @@ -54,7 +55,8 @@ public class TestWav extends SimpleApplication { @Override public void simpleInitApp() { - audioSource = new AudioNode(assetManager, "Sound/Effects/Gun.wav", false); + audioSource = new AudioNode(assetManager, "Sound/Effects/Gun.wav", + AudioData.DataType.Buffer); audioSource.setLooping(false); } } diff --git a/jme3-examples/src/main/java/jme3test/bullet/BombControl.java b/jme3-examples/src/main/java/jme3test/bullet/BombControl.java index c02e5a441..4d9af6a45 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/BombControl.java +++ b/jme3-examples/src/main/java/jme3test/bullet/BombControl.java @@ -102,8 +102,9 @@ public class BombControl extends RigidBodyControl implements PhysicsCollisionLis effect.setGravity(0, -5f, 0); effect.setLowLife(.4f); effect.setHighLife(.5f); - effect.setInitialVelocity(new Vector3f(0, 7, 0)); - effect.setVelocityVariation(1f); + effect.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 7, 0)); + effect.getParticleInfluencer().setVelocityVariation(1f); effect.setImagesX(2); effect.setImagesY(2); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); diff --git a/jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java b/jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java index a286501bb..f914f5da5 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java +++ b/jme3-examples/src/main/java/jme3test/bullet/PhysicsHoverControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -96,9 +96,10 @@ public class PhysicsHoverControl extends PhysicsVehicle implements PhysicsContro createWheels(); } + @Deprecated @Override public Control cloneForSpatial(Spatial spatial) { - throw new UnsupportedOperationException("Not supported yet."); + throw new UnsupportedOperationException(); } @Override diff --git a/jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java b/jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java index bb057606e..531331d13 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java +++ b/jme3-examples/src/main/java/jme3test/bullet/PhysicsTestHelper.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -206,7 +206,7 @@ public class PhysicsTestHelper { } /** - * creates the necessary inputlistener and action to shoot balls from teh camera + * creates the necessary inputlistener and action to shoot balls from the camera * @param app * @param rootNode * @param space diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java b/jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java index 7b0df933d..feffac8e6 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestBrickTower.java @@ -81,9 +81,6 @@ import com.jme3.scene.Geometry; import com.jme3.scene.shape.Box; import com.jme3.scene.shape.Sphere; import com.jme3.scene.shape.Sphere.TextureMode; -import com.jme3.shadow.PssmShadowRenderer; -import com.jme3.shadow.PssmShadowRenderer.CompareMode; -import com.jme3.shadow.PssmShadowRenderer.FilterMode; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; @@ -104,7 +101,6 @@ public class TestBrickTower extends SimpleApplication { Material mat; Material mat2; Material mat3; - PssmShadowRenderer bsr; private Sphere bullet; private Box brick; private SphereCollisionShape bulletCollisionShape; @@ -139,13 +135,6 @@ public class TestBrickTower extends SimpleApplication { inputManager.addMapping("shoot", new MouseButtonTrigger(MouseInput.BUTTON_LEFT)); inputManager.addListener(actionListener, "shoot"); rootNode.setShadowMode(ShadowMode.Off); - bsr = new PssmShadowRenderer(assetManager, 1024, 2); - bsr.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); - bsr.setLambda(0.55f); - bsr.setShadowIntensity(0.6f); - bsr.setCompareMode(CompareMode.Hardware); - bsr.setFilterMode(FilterMode.PCF4); - viewPort.addProcessor(bsr); } private PhysicsSpace getPhysicsSpace() { diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java b/jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java index 0173f1a44..ce61e355e 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestBrickWall.java @@ -52,7 +52,6 @@ import com.jme3.scene.Geometry; import com.jme3.scene.shape.Box; import com.jme3.scene.shape.Sphere; import com.jme3.scene.shape.Sphere.TextureMode; -import com.jme3.shadow.BasicShadowRenderer; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; @@ -68,7 +67,6 @@ public class TestBrickWall extends SimpleApplication { Material mat; Material mat2; Material mat3; - BasicShadowRenderer bsr; private static Sphere bullet; private static Box brick; private static SphereCollisionShape bulletCollisionShape; @@ -106,9 +104,6 @@ public class TestBrickWall extends SimpleApplication { inputManager.addListener(actionListener, "gc"); rootNode.setShadowMode(ShadowMode.Off); - bsr = new BasicShadowRenderer(assetManager, 256); - bsr.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); - viewPort.addProcessor(bsr); } private PhysicsSpace getPhysicsSpace() { diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java b/jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java index ca64536de..d628d4616 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestFancyCar.java @@ -51,7 +51,6 @@ import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.Geometry; import com.jme3.scene.Node; import com.jme3.scene.Spatial; -import com.jme3.shadow.BasicShadowRenderer; import com.jme3.system.AppSettings; public class TestFancyCar extends SimpleApplication implements ActionListener { @@ -90,11 +89,6 @@ public class TestFancyCar extends SimpleApplication implements ActionListener { bulletAppState = new BulletAppState(); stateManager.attach(bulletAppState); // bulletAppState.getPhysicsSpace().enableDebug(assetManager); - if (settings.getRenderer().startsWith("LWJGL")) { - BasicShadowRenderer bsr = new BasicShadowRenderer(assetManager, 512); - bsr.setDirection(new Vector3f(-0.5f, -0.3f, -0.3f).normalizeLocal()); - // viewPort.addProcessor(bsr); - } cam.setFrustumFar(150f); flyCam.setMoveSpeed(10); diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java b/jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java index d1def4203..a241072a2 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestHoveringTank.java @@ -54,9 +54,8 @@ import com.jme3.renderer.Camera; import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.Geometry; import com.jme3.scene.Spatial; -import com.jme3.shadow.PssmShadowRenderer; -import com.jme3.shadow.PssmShadowRenderer.CompareMode; -import com.jme3.shadow.PssmShadowRenderer.FilterMode; +import com.jme3.shadow.DirectionalLightShadowRenderer; +import com.jme3.shadow.EdgeFilteringMode; import com.jme3.system.AppSettings; import com.jme3.terrain.geomipmap.TerrainLodControl; import com.jme3.terrain.geomipmap.TerrainQuad; @@ -65,6 +64,7 @@ import com.jme3.terrain.heightmap.ImageBasedHeightMap; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import java.util.ArrayList; import java.util.List; @@ -113,21 +113,22 @@ public class TestHoveringTank extends SimpleApplication implements AnalogListene stateManager.attach(bulletAppState); // bulletAppState.getPhysicsSpace().enableDebug(assetManager); bulletAppState.getPhysicsSpace().setAccuracy(1f/30f); - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", EnvMapType.CubeMap)); - PssmShadowRenderer pssmr = new PssmShadowRenderer(assetManager, 2048, 3); - pssmr.setDirection(new Vector3f(-0.5f, -0.3f, -0.3f).normalizeLocal()); - pssmr.setLambda(0.55f); - pssmr.setShadowIntensity(0.6f); - pssmr.setCompareMode(CompareMode.Hardware); - pssmr.setFilterMode(FilterMode.Bilinear); - viewPort.addProcessor(pssmr); + DirectionalLightShadowRenderer dlsr + = new DirectionalLightShadowRenderer(assetManager, 2048, 3); + dlsr.setLambda(0.55f); + dlsr.setShadowIntensity(0.6f); + dlsr.setEdgeFilteringMode(EdgeFilteringMode.Bilinear); + viewPort.addProcessor(dlsr); setupKeys(); createTerrain(); buildPlayer(); DirectionalLight dl = new DirectionalLight(); + dlsr.setLight(dl); dl.setColor(new ColorRGBA(1.0f, 0.94f, 0.8f, 1f).multLocal(1.3f)); dl.setDirection(new Vector3f(-0.5f, -0.3f, -0.3f).normalizeLocal()); rootNode.addLight(dl); diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java b/jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java index e63cd03e5..84bf607a4 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestKinematicAddToPhysicsSpaceIssue.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -66,9 +66,9 @@ public class TestKinematicAddToPhysicsSpaceIssue extends SimpleApplication { physicsSphere.getControl(RigidBodyControl.class).setPhysicsLocation(new Vector3f(3, 6, 0)); rootNode.attachChild(physicsSphere); - //Setting the rigidBody to kinematic before adding it to the physic space + //Setting the rigidBody to kinematic before adding it to the physics space physicsSphere.getControl(RigidBodyControl.class).setKinematic(true); - //adding it to the physic space + //adding it to the physics space getPhysicsSpace().add(physicsSphere); //Making it not kinematic again, it should fall under gravity, it doesn't physicsSphere.getControl(RigidBodyControl.class).setKinematic(false); @@ -78,7 +78,7 @@ public class TestKinematicAddToPhysicsSpaceIssue extends SimpleApplication { physicsSphere2.getControl(RigidBodyControl.class).setPhysicsLocation(new Vector3f(5, 6, 0)); rootNode.attachChild(physicsSphere2); - //Adding the rigid body to physic space + //Adding the rigid body to physics space getPhysicsSpace().add(physicsSphere2); //making it kinematic physicsSphere2.getControl(RigidBodyControl.class).setKinematic(false); diff --git a/jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java b/jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java index c7e937c0b..d5b42d01b 100644 --- a/jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java +++ b/jme3-examples/src/main/java/jme3test/bullet/TestWalkingChar.java @@ -217,8 +217,9 @@ public class TestWalkingChar extends SimpleApplication implements ActionListener effect.setGravity(0, -5, 0); effect.setLowLife(.4f); effect.setHighLife(.5f); - effect.setInitialVelocity(new Vector3f(0, 7, 0)); - effect.setVelocityVariation(1f); + effect.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 7, 0)); + effect.getParticleInfluencer().setVelocityVariation(1f); effect.setImagesX(2); effect.setImagesY(2); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); @@ -237,7 +238,9 @@ public class TestWalkingChar extends SimpleApplication implements ActionListener } private void createSky() { - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); } private void createTerrain() { diff --git a/jme3-examples/src/main/java/jme3test/effect/TestEverything.java b/jme3-examples/src/main/java/jme3test/effect/TestEverything.java index be05958c3..62f06a422 100644 --- a/jme3-examples/src/main/java/jme3test/effect/TestEverything.java +++ b/jme3-examples/src/main/java/jme3test/effect/TestEverything.java @@ -36,7 +36,8 @@ import com.jme3.app.SimpleApplication; import com.jme3.light.DirectionalLight; import com.jme3.material.Material; import com.jme3.math.*; -import com.jme3.post.HDRRenderer; +import com.jme3.post.FilterPostProcessor; +import com.jme3.post.filters.ToneMapFilter; import com.jme3.renderer.Caps; import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.Geometry; @@ -44,7 +45,7 @@ import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.scene.Spatial.CullHint; import com.jme3.scene.shape.Box; -import com.jme3.shadow.BasicShadowRenderer; +import com.jme3.shadow.DirectionalLightShadowRenderer; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.util.SkyFactory; @@ -52,8 +53,8 @@ import com.jme3.util.TangentBinormalGenerator; public class TestEverything extends SimpleApplication { - private BasicShadowRenderer bsr; - private HDRRenderer hdrRender; + private DirectionalLightShadowRenderer dlsr; + private ToneMapFilter toneMapFilter; private Vector3f lightDir = new Vector3f(-1, -1, .5f).normalizeLocal(); public static void main(String[] args){ @@ -63,26 +64,20 @@ public class TestEverything extends SimpleApplication { public void setupHdr(){ if (renderer.getCaps().contains(Caps.GLSL100)){ - hdrRender = new HDRRenderer(assetManager, renderer); - hdrRender.setMaxIterations(40); - hdrRender.setSamples(settings.getSamples()); - - hdrRender.setWhiteLevel(3); - hdrRender.setExposure(0.72f); - hdrRender.setThrottle(1); + toneMapFilter = new ToneMapFilter(); + toneMapFilter.setWhitePoint(new Vector3f(3f, 3f, 3f)); + FilterPostProcessor fpp = new FilterPostProcessor(assetManager); + fpp.addFilter(toneMapFilter); + viewPort.addProcessor(fpp); // setPauseOnLostFocus(false); - // new HDRConfig(hdrRender).setVisible(true); - - viewPort.addProcessor(hdrRender); } } public void setupBasicShadow(){ if (renderer.getCaps().contains(Caps.GLSL100)){ - bsr = new BasicShadowRenderer(assetManager, 1024); - bsr.setDirection(lightDir); - viewPort.addProcessor(bsr); + dlsr = new DirectionalLightShadowRenderer(assetManager, 1024, 1); + viewPort.addProcessor(dlsr); } } @@ -93,16 +88,20 @@ public class TestEverything extends SimpleApplication { }else{ envMap = assetManager.loadTexture("Textures/Sky/St Peters/StPeters.jpg"); } - rootNode.attachChild(SkyFactory.createSky(assetManager, envMap, new Vector3f(-1,-1,-1), true)); + rootNode.attachChild(SkyFactory.createSky(assetManager, envMap, + new Vector3f(-1,-1,-1), SkyFactory.EnvMapType.SphereMap)); } public void setupLighting(){ boolean hdr = false; - if (hdrRender != null){ - hdr = hdrRender.isEnabled(); + if (toneMapFilter != null){ + hdr = toneMapFilter.isEnabled(); } DirectionalLight dl = new DirectionalLight(); + if (dlsr != null) { + dlsr.setLight(dl); + } dl.setDirection(lightDir); if (hdr){ dl.setColor(new ColorRGBA(3, 3, 3, 1)); diff --git a/jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java b/jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java index 5d2d781a6..ff5100ffe 100644 --- a/jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java +++ b/jme3-examples/src/main/java/jme3test/effect/TestExplosionEffect.java @@ -98,8 +98,9 @@ public class TestExplosionEffect extends SimpleApplication { flash.setGravity(0, 0, 0); flash.setLowLife(.2f); flash.setHighLife(.2f); - flash.setInitialVelocity(new Vector3f(0, 5f, 0)); - flash.setVelocityVariation(1); + flash.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 5f, 0)); + flash.getParticleInfluencer().setVelocityVariation(1); flash.setImagesX(2); flash.setImagesY(2); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); @@ -120,8 +121,9 @@ public class TestExplosionEffect extends SimpleApplication { roundspark.setGravity(0, -.5f, 0); roundspark.setLowLife(1.8f); roundspark.setHighLife(2f); - roundspark.setInitialVelocity(new Vector3f(0, 3, 0)); - roundspark.setVelocityVariation(.5f); + roundspark.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 3, 0)); + roundspark.getParticleInfluencer().setVelocityVariation(.5f); roundspark.setImagesX(1); roundspark.setImagesY(1); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); @@ -165,8 +167,9 @@ public class TestExplosionEffect extends SimpleApplication { smoketrail.setGravity(0, 1, 0); smoketrail.setLowLife(.4f); smoketrail.setHighLife(.5f); - smoketrail.setInitialVelocity(new Vector3f(0, 12, 0)); - smoketrail.setVelocityVariation(1); + smoketrail.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 12, 0)); + smoketrail.getParticleInfluencer().setVelocityVariation(1); smoketrail.setImagesX(1); smoketrail.setImagesY(3); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); @@ -190,8 +193,9 @@ public class TestExplosionEffect extends SimpleApplication { debris.setGravity(0, 12f, 0); debris.setLowLife(1.4f); debris.setHighLife(1.5f); - debris.setInitialVelocity(new Vector3f(0, 15, 0)); - debris.setVelocityVariation(.60f); + debris.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 15, 0)); + debris.getParticleInfluencer().setVelocityVariation(.60f); debris.setImagesX(3); debris.setImagesY(3); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); @@ -214,8 +218,9 @@ public class TestExplosionEffect extends SimpleApplication { shockwave.setGravity(0, 0, 0); shockwave.setLowLife(0.5f); shockwave.setHighLife(0.5f); - shockwave.setInitialVelocity(new Vector3f(0, 0, 0)); - shockwave.setVelocityVariation(0f); + shockwave.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, 0, 0)); + shockwave.getParticleInfluencer().setVelocityVariation(0f); shockwave.setImagesX(1); shockwave.setImagesY(1); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); diff --git a/jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java b/jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java index d603e229a..b38eed97a 100644 --- a/jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java +++ b/jme3-examples/src/main/java/jme3test/effect/TestMovingParticle.java @@ -60,10 +60,11 @@ public class TestMovingParticle extends SimpleApplication { public void simpleInitApp() { emit = new ParticleEmitter("Emitter", Type.Triangle, 300); emit.setGravity(0, 0, 0); - emit.setVelocityVariation(1); + emit.getParticleInfluencer().setVelocityVariation(1); emit.setLowLife(1); emit.setHighLife(1); - emit.setInitialVelocity(new Vector3f(0, .5f, 0)); + emit.getParticleInfluencer() + .setInitialVelocity(new Vector3f(0, .5f, 0)); emit.setImagesX(15); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); mat.setTexture("Texture", assetManager.loadTexture("Effects/Smoke/Smoke.png")); diff --git a/jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java b/jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java index d245de23f..d38fdbdf9 100644 --- a/jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java +++ b/jme3-examples/src/main/java/jme3test/effect/TestParticleExportingCloning.java @@ -57,7 +57,7 @@ public class TestParticleExportingCloning extends SimpleApplication { emit.setGravity(0, 0, 0); emit.setLowLife(5); emit.setHighLife(10); - emit.setInitialVelocity(new Vector3f(0, 0, 0)); + emit.getParticleInfluencer().setInitialVelocity(new Vector3f(0, 0, 0)); emit.setImagesX(15); Material mat = new Material(assetManager, "Common/MatDefs/Misc/Particle.j3md"); mat.setTexture("Texture", assetManager.loadTexture("Effects/Smoke/Smoke.png")); diff --git a/jme3-examples/src/main/java/jme3test/gui/TestBitmapFontLayout.java b/jme3-examples/src/main/java/jme3test/gui/TestBitmapFontLayout.java new file mode 100644 index 000000000..8d210c330 --- /dev/null +++ b/jme3-examples/src/main/java/jme3test/gui/TestBitmapFontLayout.java @@ -0,0 +1,551 @@ +/* + * Copyright (c) 20018 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * + * 3. Neither the name of the copyright holder nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS + * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES + * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, + * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED + * OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +package jme3test.gui; + +import java.awt.BorderLayout; +import java.awt.Color; +import java.awt.Font; +import java.awt.FontFormatException; +import java.awt.FontMetrics; +import java.awt.Graphics; +import java.awt.Graphics2D; +import java.awt.GridBagConstraints; +import java.awt.GridBagLayout; +import java.awt.GridLayout; +import java.awt.RenderingHints; +import java.awt.Toolkit; +import java.awt.geom.AffineTransform; +import java.awt.image.BufferedImage; +import java.awt.font.TextAttribute; +import java.io.IOException; +import java.util.*; +import javax.swing.*; + +import com.jme3.app.DebugKeysAppState; +import com.jme3.app.StatsAppState; +import com.jme3.app.SimpleApplication; +import com.jme3.app.state.ScreenshotAppState; +import com.jme3.bounding.BoundingBox; +import com.jme3.font.BitmapCharacter; +import com.jme3.font.BitmapCharacterSet; +import com.jme3.font.BitmapFont; +import com.jme3.font.BitmapText; +import com.jme3.input.KeyInput; +import com.jme3.input.controls.ActionListener; +import com.jme3.input.controls.KeyTrigger; +import com.jme3.material.Material; +import com.jme3.math.ColorRGBA; +import com.jme3.math.Vector3f; +import com.jme3.scene.*; +import com.jme3.scene.debug.WireBox; +import com.jme3.scene.shape.*; +import com.jme3.texture.Image; +import com.jme3.texture.Texture; +import com.jme3.texture.Texture2D; +import com.jme3.texture.plugins.AWTLoader; + +/** + * + * @author pspeed42 + */ +public class TestBitmapFontLayout extends SimpleApplication { + + public static final String SCROLL_UP = "scroll up"; + public static final String SCROLL_DOWN = "scroll down"; + public static final String SCROLL_LEFT = "scroll left"; + public static final String SCROLL_RIGHT = "scroll right"; + public static final String ZOOM_IN = "zoom in"; + public static final String ZOOM_OUT = "zoom out"; + public static final String RESET_ZOOM = "reset zoom"; + public static final String RESET_VIEW = "reset view"; + + public static final float ZOOM_SPEED = 0.1f; + public static final float SCROLL_SPEED = 50; + + private Node testRoot = new Node("test root"); + private Node scrollRoot = new Node("scroll root"); + private Vector3f scroll = new Vector3f(0, 0, 0); + private Vector3f zoom = new Vector3f(0, 0, 0); + + public static void main(String[] args){ + TestBitmapFontLayout app = new TestBitmapFontLayout(); + app.start(); + } + + public TestBitmapFontLayout() { + super(new StatsAppState(), + new DebugKeysAppState(), + new ScreenshotAppState("", System.currentTimeMillis())); + } + + public static Font loadTtf( String resource ) { + try { + return Font.createFont(Font.TRUETYPE_FONT, + TestBitmapFontLayout.class.getResourceAsStream(resource)); + } catch( FontFormatException | IOException e ) { + throw new RuntimeException("Error loading resource:" + resource, e); + } + } + + protected Texture renderAwtFont( TestConfig test, int width, int height, BitmapFont bitmapFont ) { + + BitmapCharacterSet charset = bitmapFont.getCharSet(); + + // Create an image at least as big as our JME text + System.out.println("Creating image size:" + width + ", " + height); + BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_ARGB); + Graphics2D g2 = (Graphics2D)image.getGraphics(); + + g2.setColor(Color.lightGray); + g2.fillRect(0, 0, width, height); + g2.setColor(Color.cyan); + g2.drawRect(0, 0, width, height); + + g2.setColor(new Color(0, 0, 128)); + //g2.drawLine(0, 0, 50, 50); + //g2.drawLine(xFont, yFont, xFont + 30, yFont); + //g2.drawLine(xFont, yFont, xFont, yFont + 30); + + //g2.drawString("Testing", 0, 10); + + Font font = test.awtFont; + System.out.println("Java font:" + font); + + float size = font.getSize2D(); + FontMetrics fm = g2.getFontMetrics(font); + System.out.println("Java font metrics:" + fm); + + String[] lines = test.text.split("\n"); + + g2.setFont(font); + g2.setRenderingHint( + RenderingHints.KEY_TEXT_ANTIALIASING, + RenderingHints.VALUE_TEXT_ANTIALIAS_ON); + + int y = fm.getLeading() + fm.getMaxAscent(); + for( String s : lines ) { + g2.drawString(s, 0, y); + y += fm.getHeight(); + } + + g2.dispose(); + + Image jmeImage = new AWTLoader().load(image, true); + return new Texture2D(jmeImage); + } + + protected Node createVisual( TestConfig test ) { + Node result = new Node(test.name); + + // For reasons I have trouble articulating, I want the visual's 0,0,0 to be + // the same as the JME rendered text. All other things will then be positioned relative + // to that. + // JME BitmapText (currently) renders from what it thinks the top of the letter is + // down. The actual bitmap text bounds may extend upwards... so we need to account + // for that in any labeling we add above it. + // Thus we add and setup the main test text first. + + BitmapFont bitmapFont = assetManager.loadFont(test.jmeFont); + BitmapCharacterSet charset = bitmapFont.getCharSet(); + + System.out.println("Test name:" + test.name); + System.out.println("Charset line height:" + charset.getLineHeight()); + System.out.println(" base:" + charset.getBase()); + System.out.println(" rendered size:" + charset.getRenderedSize()); + System.out.println(" width:" + charset.getWidth() + " height:" + charset.getHeight()); + + BitmapText bitmapText = new BitmapText(bitmapFont); + bitmapText.setText(test.text); + bitmapText.setColor(ColorRGBA.Black); + result.attachChild(bitmapText); + + // And force it to update because BitmapText builds itself lazily. + result.updateLogicalState(0.1f); + BoundingBox bb = (BoundingBox)bitmapText.getWorldBound(); + + BitmapText label = new BitmapText(assetManager.loadFont("Interface/Fonts/Default.fnt")); + label.setText("Test:" + test.name); + // Move the label up by its own size plus whatever extra headspace + // that the test text might have... plus a couple pixels of padding. + float yOffset = Math.max(0, bb.getCenter().y + bb.getYExtent()); + label.move(0, label.getSize() + yOffset + 2, 0); + label.setColor(new ColorRGBA(0, 0.2f, 0, 1f)); + result.attachChild(label); + + + // Bitmap text won't update itself automatically... it's lazy. + // That means it won't be able to tell us its bounding volume, etc... so + // we'll force it to update. + result.updateLogicalState(0.1f); + + // Add a bounding box visual + WireBox box = new WireBox(bb.getXExtent(), bb.getYExtent(), bb.getZExtent()); + Geometry geom = new Geometry(test.name + " bounds", box); + geom.setMaterial(new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md")); + geom.getMaterial().setColor("Color", ColorRGBA.Red); + geom.setLocalTranslation(bb.getCenter()); + result.attachChild(geom); + + // Add a box to show 0,0 + font size + float size = bitmapText.getLineHeight() * 0.5f; + box = new WireBox(size, size, 0); + geom = new Geometry(test.name + " metric", box); + geom.setMaterial(new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md")); + geom.getMaterial().setColor("Color", ColorRGBA.Blue); + geom.setLocalTranslation(size, -size, 0); + result.attachChild(geom); + + float yBaseline = -charset.getBase(); + Line line = new Line(new Vector3f(0, yBaseline, 0), new Vector3f(50, yBaseline, 0)); + geom = new Geometry(test.name + " base", line); + geom.setMaterial(new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md")); + geom.getMaterial().setColor("Color", ColorRGBA.Green); + result.attachChild(geom); + + System.out.println("text bb:" + bb); + // We want the width and the height to cover the whole potential area + // for the font. So it can't just be the rendered bounds but must encompass + // the whole abstract font space... 0, 0, to center + extents. + //int width = (int)Math.round(bb.getCenter().x + bb.getXExtent()); + //int height = (int)Math.round(-bb.getCenter().y + bb.getYExtent()); + // No, that's not right either because in case like this: + // text bb:BoundingBox [Center: (142.0, -15.5, 0.0) xExtent: 142.0 yExtent: 20.5 zExtent: 0.0] + // We get: + // Creating image size:284, 36 + // ...when it should be at least 41 high. + float x1 = bb.getCenter().x - bb.getXExtent(); + float x2 = bb.getCenter().x + bb.getXExtent(); + float y1 = bb.getCenter().y - bb.getYExtent(); + float y2 = bb.getCenter().y + bb.getYExtent(); + System.out.println("xy1:" + x1 + ", " + y1 + " xy2:" + x2 + ", " + y2); + int width = (int)Math.round(x2 - Math.min(0, x1)); + int height = (int)Math.round(y2 - Math.min(0, y1)); + + Texture awtText = renderAwtFont(test, width, height, bitmapFont); + Quad quad = new Quad(width, height); + geom = new Geometry(test.name + " awt1", quad); + geom.setMaterial(new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md")); + geom.getMaterial().setTexture("ColorMap", awtText); + // Quads render from the lower left corner up + geom.move(0, -height, 0); + + // That quad is now positioned directly over where the bitmap text is. + // We'll clone it and move one right and one down + Geometry right = geom.clone(); + right.move(width, 0, 0); + result.attachChild(right); + + Geometry down = geom.clone(); + down.move(0, bb.getCenter().y - bb.getYExtent() - 1, 0); + result.attachChild(down); + + return result; + } + + @Override + public void simpleInitApp() { + setPauseOnLostFocus(false); + setDisplayStatView(false); + setDisplayFps(false); + viewPort.setBackgroundColor(ColorRGBA.LightGray); + + setupTestScene(); + setupUserInput(); + + setupInstructionsNote(); + } + + protected void setupInstructionsNote() { + // Add some instructional text + String instructions = "WASD/Cursor Keys = scroll\n" + + "+/- = zoom\n" + + "space = reset view\n" + + "0 = reset zoom\n"; + BitmapText note = new BitmapText(guiFont); + note.setText(instructions); + note.setColor(new ColorRGBA(0, 0.3f, 0, 1)); + note.updateLogicalState(0.1f); + + BoundingBox bb = (BoundingBox)note.getWorldBound(); + + note.setLocalTranslation(cam.getWidth() - bb.getXExtent() * 2 - 20, + cam.getHeight() - 20, 10); + + guiNode.attachChild(note); + + BitmapText note2 = note.clone(); + note2.setColor(ColorRGBA.Black); + note2.move(1, -1, -2); + guiNode.attachChild(note2); + + BitmapText note3 = note.clone(); + note3.setColor(ColorRGBA.White); + note3.move(-1, 1, -1); + guiNode.attachChild(note3); + + } + + protected void setupTestScene() { + String fox = "The quick brown fox jumps over the lazy dog."; + String loremIpsum = "Lorem ipsum dolor sit amet, consectetur adipiscing elit"; + String foxIpsum = fox + "\n" + loremIpsum; + + List tests = new ArrayList<>(); + + + // Note: for some Java fonts we reduce the point size to more closely + // match the pixel size... other than the Java-rendered fonts from Hiero, it will never + // be exact because of different font engines. + tests.add(new TestConfig("Hiero Java FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/FreeSerif16I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 16f))); + + tests.add(new TestConfig("Hiero FreeType FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/FT-FreeSerif16I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 14f))); + + tests.add(new TestConfig("Hiero Native FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/Native-FreeSerif16I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 15f))); + + tests.add(new TestConfig("AngelCode FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/BM-FreeSerif16I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 12f))); + // It's actually between 12 and 13 but Java rounds up. + + tests.add(new TestConfig("Hiero Padded FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/FreeSerif16Ipad5555.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 16f))); + + tests.add(new TestConfig("AngelCode Padded FreeSerif-16-Italic", + foxIpsum, + "jme3test/font/BM-FreeSerif16Ipad5555.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 12f))); + // It's actually between 12 and 13 but Java rounds up. + + tests.add(new TestConfig("Hiero FreeSerif-32", + foxIpsum, + "jme3test/font/FreeSerif32.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(32f))); + + tests.add(new TestConfig("AngelCode FreeSerif-32", + foxIpsum, + "jme3test/font/BM-FreeSerif32.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(25f))); + + tests.add(new TestConfig("Hiero FreeSerif-64-Italic", + foxIpsum, + "jme3test/font/FreeSerif64I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 64f))); + + tests.add(new TestConfig("AngelCode FreeSerif-64-Italic", + foxIpsum, + "jme3test/font/BM-FreeSerif64I.fnt", + loadTtf("/jme3test/font/FreeSerif.ttf").deriveFont(Font.ITALIC, 50f))); + + + /*tests.add(new TestConfig("Japanese", + "\u3042\u3047\u3070\u3090\u309E\u3067\u308A\u3089\n"+ + "\u3042\u3047\u3070\u3090\u309E\u3067\u308A\u3089", + "jme3test/font/DJapaSubset.fnt", + loadTtf("/jme3test/font/DroidSansFallback.ttf").deriveFont(32f)));*/ + + /*tests.add(new TestConfig("DroidSansMono-32", + "Ă㥹ĔĕĖėχψωӮӯ₴₵₹\n"+ + "Ă㥹ĔĕĖėχψωӮӯ₴₵₹", + "jme3test/font/DMono32BI.fnt", + loadTtf("/jme3test/font/DroidSansMono.ttf").deriveFont(32f)));*/ + + /*tests.add(new TestConfig("DroidSansMono-32", + "Ă㥹ĔĕĖėχψωӮӯ\n"+ + "Ă㥹ĔĕĖėχψωӮӯ", + "jme3test/font/DMono32BI.fnt", + loadTtf("/jme3test/font/DroidSansMono.ttf").deriveFont(Font.BOLD | Font.ITALIC, 32f))); + */ + + // Setup the test root node so that y = 0 is the top of the screen + testRoot.setLocalTranslation(0, cam.getHeight(), 0); + testRoot.attachChild(scrollRoot); + guiNode.attachChild(testRoot); + + float y = 0; //cam.getHeight(); + + for( TestConfig test : tests ) { + System.out.println("y:" + y); + + Node vis = createVisual(test); + + BoundingBox bb = (BoundingBox)vis.getWorldBound(); + System.out.println("bb:" + bb); + + // Render it relative to y, projecting down + vis.setLocalTranslation(1 + bb.getCenter().x - bb.getXExtent(), + y - bb.getCenter().y - bb.getYExtent(), + 0); + //vis.setLocalTranslation(1, y, 0); + scrollRoot.attachChild(vis); + + // Position to render the next one + y -= bb.getYExtent() * 2; + + // plus 5 pixels of padding + y -= 5; + } + } + + protected void resetZoom() { + testRoot.setLocalScale(1, 1, 1); + } + + protected void resetView() { + resetZoom(); + scrollRoot.setLocalTranslation(0, 0, 0); + } + + protected void setupUserInput() { + + inputManager.addMapping(SCROLL_UP, new KeyTrigger(KeyInput.KEY_UP), + new KeyTrigger(KeyInput.KEY_W)); + inputManager.addMapping(SCROLL_DOWN, new KeyTrigger(KeyInput.KEY_DOWN), + new KeyTrigger(KeyInput.KEY_S)); + inputManager.addMapping(SCROLL_LEFT, new KeyTrigger(KeyInput.KEY_LEFT), + new KeyTrigger(KeyInput.KEY_A)); + inputManager.addMapping(SCROLL_RIGHT, new KeyTrigger(KeyInput.KEY_RIGHT), + new KeyTrigger(KeyInput.KEY_D)); + inputManager.addMapping(ZOOM_IN, new KeyTrigger(KeyInput.KEY_ADD), + new KeyTrigger(KeyInput.KEY_EQUALS), + new KeyTrigger(KeyInput.KEY_Q)); + inputManager.addMapping(ZOOM_OUT, new KeyTrigger(KeyInput.KEY_MINUS), + new KeyTrigger(KeyInput.KEY_SUBTRACT), + new KeyTrigger(KeyInput.KEY_Z)); + inputManager.addMapping(RESET_VIEW, new KeyTrigger(KeyInput.KEY_SPACE)); + inputManager.addMapping(RESET_ZOOM, new KeyTrigger(KeyInput.KEY_0)); + + inputManager.addListener(new KeyStateListener(), + RESET_VIEW, RESET_ZOOM, + SCROLL_UP, SCROLL_DOWN, SCROLL_LEFT, SCROLL_RIGHT, + ZOOM_IN, ZOOM_OUT); + } + + public void simpleUpdate( float tpf ) { + if( scroll.lengthSquared() != 0 ) { + scrollRoot.move(scroll.mult(tpf)); + } + if( zoom.lengthSquared() != 0 ) { + Vector3f current = testRoot.getLocalScale(); + testRoot.setLocalScale(current.add(zoom.mult(tpf))); + } + } + + private class KeyStateListener implements ActionListener { + public void onAction(String name, boolean value, float tpf) { + switch( name ) { + case RESET_VIEW: + // Only on the up + if( !value ) { + resetView(); + } + break; + case RESET_ZOOM: + // Only on the up + if( !value ) { + resetZoom(); + } + break; + case ZOOM_IN: + if( value ) { + zoom.set(ZOOM_SPEED, ZOOM_SPEED, 0); + } else { + zoom.set(0, 0, 0); + } + break; + case ZOOM_OUT: + if( value ) { + zoom.set(-ZOOM_SPEED, -ZOOM_SPEED, 0); + } else { + zoom.set(0, 0, 0); + } + break; + case SCROLL_UP: + if( value ) { + scroll.set(0, -SCROLL_SPEED, 0); + } else { + scroll.set(0, 0, 0); + } + break; + case SCROLL_DOWN: + if( value ) { + scroll.set(0, SCROLL_SPEED, 0); + } else { + scroll.set(0, 0, 0); + } + break; + case SCROLL_LEFT: + if( value ) { + scroll.set(SCROLL_SPEED, 0, 0); + } else { + scroll.set(0, 0, 0); + } + break; + case SCROLL_RIGHT: + if( value ) { + scroll.set(-SCROLL_SPEED, 0, 0); + } else { + scroll.set(0, 0, 0); + } + break; + } + } + } + + private class TestConfig { + String name; + String jmeFont; + Font awtFont; + String text; + + public TestConfig( String name, String text, String jmeFont, Font awtFont ) { + this.name = name; + this.text = text; + this.jmeFont = jmeFont; + this.awtFont = awtFont; + } + } +} diff --git a/jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java index b9943879c..bc13e01e8 100644 --- a/jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java +++ b/jme3-examples/src/main/java/jme3test/helloworld/HelloAudio.java @@ -1,6 +1,7 @@ package jme3test.helloworld; import com.jme3.app.SimpleApplication; +import com.jme3.audio.AudioData.DataType; import com.jme3.audio.AudioNode; import com.jme3.input.MouseInput; import com.jme3.input.controls.ActionListener; @@ -42,14 +43,16 @@ public class HelloAudio extends SimpleApplication { /** We create two audio nodes. */ private void initAudio() { /* gun shot sound is to be triggered by a mouse click. */ - audio_gun = new AudioNode(assetManager, "Sound/Effects/Gun.wav", false); + audio_gun = new AudioNode(assetManager, + "Sound/Effects/Gun.wav", DataType.Buffer); audio_gun.setPositional(false); audio_gun.setLooping(false); audio_gun.setVolume(2); rootNode.attachChild(audio_gun); /* nature sound - keeps playing in a loop. */ - audio_nature = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", true); + audio_nature = new AudioNode(assetManager, + "Sound/Environment/Ocean Waves.ogg", DataType.Stream); audio_nature.setLooping(true); // activate continuous playing audio_nature.setPositional(true); audio_nature.setVolume(3); diff --git a/jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java b/jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java index f1355e03e..0da38215d 100644 --- a/jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java +++ b/jme3-examples/src/main/java/jme3test/helloworld/HelloPhysics.java @@ -1,5 +1,5 @@ /** - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -204,12 +204,12 @@ public class HelloPhysics extends SimpleApplication { rootNode.attachChild(ball_geo); /** Position the cannon ball */ ball_geo.setLocalTranslation(cam.getLocation()); - /** Make the ball physcial with a mass > 0.0f */ + /** Make the ball physical with a mass > 0.0f */ ball_phy = new RigidBodyControl(1f); /** Add physical ball to physics space. */ ball_geo.addControl(ball_phy); bulletAppState.getPhysicsSpace().add(ball_phy); - /** Accelerate the physcial ball to shoot it. */ + /** Accelerate the physical ball to shoot it. */ ball_phy.setLinearVelocity(cam.getDirection().mult(25)); } diff --git a/jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java b/jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java index b6041a519..d933f9638 100644 --- a/jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java +++ b/jme3-examples/src/main/java/jme3test/input/TestChaseCamera.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -97,7 +97,7 @@ public class TestChaseCamera extends SimpleApplication implements AnalogListener //WARNING : setting this trigger disable the rotation on right and left mouse button click //chaseCam.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE)); - //Uncomment this to set mutiple triggers to enable rotation of the cam + //Uncomment this to set multiple triggers to enable rotation of the cam //Here spade bar and middle mouse button //chaseCam.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE),new KeyTrigger(KeyInput.KEY_SPACE)); diff --git a/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java b/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java index a3db00ff2..00d6dd81a 100644 --- a/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java +++ b/jme3-examples/src/main/java/jme3test/input/TestChaseCameraAppState.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -90,7 +90,7 @@ public class TestChaseCameraAppState extends SimpleApplication implements Analog //WARNING : setting this trigger disable the rotation on right and left mouse button click //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE)); - //Uncomment this to set mutiple triggers to enable rotation of the cam + //Uncomment this to set multiple triggers to enable rotation of the cam //Here space bar and middle mouse button //chaseCamAS.setToggleRotationTrigger(new MouseButtonTrigger(MouseInput.BUTTON_MIDDLE),new KeyTrigger(KeyInput.KEY_SPACE)); diff --git a/jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java b/jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java index 6e3ad412b..79aacc616 100644 --- a/jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java +++ b/jme3-examples/src/main/java/jme3test/light/TestDirectionalLightShadow.java @@ -59,6 +59,7 @@ import com.jme3.shadow.EdgeFilteringMode; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import com.jme3.util.TangentBinormalGenerator; public class TestDirectionalLightShadow extends SimpleApplication implements ActionListener, AnalogListener { @@ -155,7 +156,8 @@ public class TestDirectionalLightShadow extends SimpleApplication implements Act al.setColor(ColorRGBA.White.mult(0.02f)); rootNode.addLight(al); - Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Scenes/Beach/FullskiesSunset0068.dds", EnvMapType.CubeMap); sky.setLocalScale(350); rootNode.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java b/jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java index ff674f664..4785b33c1 100644 --- a/jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java +++ b/jme3-examples/src/main/java/jme3test/light/TestEnvironmentMapping.java @@ -48,7 +48,8 @@ public class TestEnvironmentMapping extends SimpleApplication { chaseCam.setLookAtOffset(new Vector3f(0,0.5f,-1.0f)); buggy.addControl(chaseCam); rootNode.attachChild(buggy); - rootNode.attachChild(SkyFactory.createSky(assetManager, tex, false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, tex, + SkyFactory.EnvMapType.CubeMap)); FilterPostProcessor fpp = new FilterPostProcessor(assetManager); BloomFilter bf = new BloomFilter(BloomFilter.GlowMode.Objects); diff --git a/jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java b/jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java deleted file mode 100644 index 9f851d39c..000000000 --- a/jme3-examples/src/main/java/jme3test/light/TestPssmShadow.java +++ /dev/null @@ -1,426 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ -package jme3test.light; - -import com.jme3.app.SimpleApplication; -import com.jme3.export.JmeExporter; -import com.jme3.export.JmeImporter; -import com.jme3.export.Savable; -import com.jme3.font.BitmapText; -import com.jme3.input.KeyInput; -import com.jme3.input.controls.ActionListener; -import com.jme3.input.controls.AnalogListener; -import com.jme3.input.controls.KeyTrigger; -import com.jme3.light.AmbientLight; -import com.jme3.light.DirectionalLight; -import com.jme3.material.Material; -import com.jme3.math.ColorRGBA; -import com.jme3.math.FastMath; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector2f; -import com.jme3.math.Vector3f; -import com.jme3.post.FilterPostProcessor; -import com.jme3.post.filters.FXAAFilter; -import com.jme3.renderer.RenderManager; -import com.jme3.renderer.ViewPort; -import com.jme3.renderer.queue.RenderQueue.ShadowMode; -import com.jme3.scene.Geometry; -import com.jme3.scene.Spatial; -import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; -import com.jme3.scene.shape.Box; -import com.jme3.scene.shape.Sphere; -import com.jme3.shadow.PssmShadowFilter; -import com.jme3.shadow.PssmShadowRenderer; -import com.jme3.shadow.PssmShadowRenderer.CompareMode; -import com.jme3.shadow.PssmShadowRenderer.FilterMode; -import com.jme3.texture.Texture; -import com.jme3.texture.Texture.WrapMode; -import com.jme3.util.SkyFactory; -import com.jme3.util.TangentBinormalGenerator; -import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; -import java.io.IOException; - -public class TestPssmShadow extends SimpleApplication implements ActionListener { - - private Spatial[] obj; - private Material[] mat; - private boolean hardwareShadows = false; - private PssmShadowRenderer pssmRenderer; - private PssmShadowFilter pssmFilter; - private Geometry ground; - private Material matGroundU; - private Material matGroundL; - - public static void main(String[] args) { - TestPssmShadow app = new TestPssmShadow(); - app.start(); - } - - public void loadScene() { - obj = new Spatial[2]; - mat = new Material[2]; - mat[0] = assetManager.loadMaterial("Common/Materials/RedColor.j3m"); - mat[1] = assetManager.loadMaterial("Textures/Terrain/Pond/Pond.j3m"); - mat[1].setBoolean("UseMaterialColors", true); - mat[1].setColor("Ambient", ColorRGBA.White.mult(0.5f)); - mat[1].setColor("Diffuse", ColorRGBA.White.clone()); - - - obj[0] = new Geometry("sphere", new Sphere(30, 30, 2)); - obj[0].setShadowMode(ShadowMode.CastAndReceive); - obj[1] = new Geometry("cube", new Box(1.0f, 1.0f, 1.0f)); - obj[1].setShadowMode(ShadowMode.CastAndReceive); - TangentBinormalGenerator.generate(obj[1]); - TangentBinormalGenerator.generate(obj[0]); - - - for (int i = 0; i < 60; i++) { - Spatial t = obj[FastMath.nextRandomInt(0, obj.length - 1)].clone(false); - t.setLocalScale(FastMath.nextRandomFloat() * 10f); - t.setMaterial(mat[FastMath.nextRandomInt(0, mat.length - 1)]); - rootNode.attachChild(t); - t.setLocalTranslation(FastMath.nextRandomFloat() * 200f, FastMath.nextRandomFloat() * 30f + 20, 30f * (i + 2f)); - } - - Box b = new Box(1000, 2, 1000); - b.scaleTextureCoordinates(new Vector2f(10, 10)); - ground = new Geometry("soil", b); - ground.setLocalTranslation(0, 10, 550); - matGroundU = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); - matGroundU.setColor("Color", ColorRGBA.Green); - - - matGroundL = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); - Texture grass = assetManager.loadTexture("Textures/Terrain/splat/grass.jpg"); - grass.setWrap(WrapMode.Repeat); - matGroundL.setTexture("DiffuseMap", grass); - - ground.setMaterial(matGroundL); - - ground.setShadowMode(ShadowMode.CastAndReceive); - rootNode.attachChild(ground); - - l = new DirectionalLight(); - l.setDirection(new Vector3f(-1, -1, -1)); - rootNode.addLight(l); - - AmbientLight al = new AmbientLight(); - al.setColor(ColorRGBA.White.mult(0.5f)); - rootNode.addLight(al); - - Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false); - sky.setLocalScale(350); - - rootNode.attachChild(sky); - } - DirectionalLight l; - - @Override - public void simpleInitApp() { - // put the camera in a bad position - cam.setLocation(new Vector3f(65.25412f, 44.38738f, 9.087874f)); - cam.setRotation(new Quaternion(0.078139365f, 0.050241485f, -0.003942559f, 0.9956679f)); - - flyCam.setMoveSpeed(100); - - loadScene(); - - pssmRenderer = new PssmShadowRenderer(assetManager, 1024, 3); - //pssmRenderer.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); - pssmRenderer.setDirection(new Vector3f(-0.5973172f, -0.56583486f, 0.8846725f).normalizeLocal()); - pssmRenderer.setLambda(0.55f); - pssmRenderer.setShadowIntensity(0.6f); - pssmRenderer.setCompareMode(CompareMode.Software); - pssmRenderer.setFilterMode(FilterMode.Dither); - - pssmRenderer.displayFrustum(); - viewPort.addProcessor(pssmRenderer); - - - - pssmFilter = new PssmShadowFilter(assetManager, 1024, 3); - //pssmFilter.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); - pssmRenderer.setDirection(new Vector3f(-0.5973172f, -0.56583486f, 0.8846725f).normalizeLocal()); - pssmFilter.setLambda(0.55f); - pssmFilter.setShadowIntensity(0.6f); - pssmFilter.setCompareMode(CompareMode.Software); - pssmFilter.setFilterMode(FilterMode.Dither); - pssmFilter.setEnabled(false); - - -// pssmFilter.setShadowZFadeLength(300); -// pssmFilter.setShadowZExtend(500); - - FilterPostProcessor fpp = new FilterPostProcessor(assetManager); - // fpp.setNumSamples(4); - fpp.addFilter(pssmFilter); - - viewPort.addProcessor(fpp); - - - initInputs(); - } - BitmapText infoText; - - private void initInputs() { - /** Write text on the screen (HUD) */ - guiFont = assetManager.loadFont("Interface/Fonts/Default.fnt"); - infoText = new BitmapText(guiFont, false); - infoText.setSize(guiFont.getCharSet().getRenderedSize()); - - - inputManager.addMapping("toggle", new KeyTrigger(KeyInput.KEY_SPACE)); - inputManager.addMapping("changeFiltering", new KeyTrigger(KeyInput.KEY_F)); - inputManager.addMapping("ShadowUp", new KeyTrigger(KeyInput.KEY_T)); - inputManager.addMapping("ShadowDown", new KeyTrigger(KeyInput.KEY_G)); - inputManager.addMapping("ThicknessUp", new KeyTrigger(KeyInput.KEY_Y)); - inputManager.addMapping("ThicknessDown", new KeyTrigger(KeyInput.KEY_H)); - inputManager.addMapping("lambdaUp", new KeyTrigger(KeyInput.KEY_U)); - inputManager.addMapping("lambdaDown", new KeyTrigger(KeyInput.KEY_J)); - inputManager.addMapping("toggleHW", new KeyTrigger(KeyInput.KEY_RETURN)); - inputManager.addMapping("switchGroundMat", new KeyTrigger(KeyInput.KEY_M)); - inputManager.addMapping("splits", new KeyTrigger(KeyInput.KEY_X)); - - inputManager.addMapping("up", new KeyTrigger(KeyInput.KEY_NUMPAD8)); - inputManager.addMapping("down", new KeyTrigger(KeyInput.KEY_NUMPAD2)); - inputManager.addMapping("right", new KeyTrigger(KeyInput.KEY_NUMPAD6)); - inputManager.addMapping("left", new KeyTrigger(KeyInput.KEY_NUMPAD4)); - inputManager.addMapping("fwd", new KeyTrigger(KeyInput.KEY_PGUP)); - inputManager.addMapping("back", new KeyTrigger(KeyInput.KEY_PGDN)); - - - - inputManager.addListener(this, "lambdaUp", "lambdaDown", "toggleHW", "toggle", "ShadowUp", "ShadowDown", "ThicknessUp", "ThicknessDown", "changeFiltering", - "switchGroundMat", "splits", "up", "down", "right", "left", "fwd", "back"); - - } - - private void print(String str) { - infoText.setText(str); - infoText.setLocalTranslation(cam.getWidth() * 0.5f - infoText.getLineWidth() * 0.5f, infoText.getLineHeight(), 0); - guiNode.attachChild(infoText); - infoText.removeControl(ctrl); - infoText.addControl(ctrl); - } - AbstractControl ctrl = new AbstractControl() { - - float time; - - @Override - protected void controlUpdate(float tpf) { - time += tpf; - if (time > 3) { - spatial.removeFromParent(); - spatial.removeControl(this); - } - } - - @Override - public void setSpatial(Spatial spatial) { - super.setSpatial(spatial); - time = 0; - } - - @Override - public Object jmeClone() { - return null; - } - - @Override - public void cloneFields( Cloner cloner, Object original ) { - } - - @Override - protected void controlRender(RenderManager rm, ViewPort vp) { - } - - @Override - public Control cloneForSpatial(Spatial spatial) { - return null; - } - }; - int filteringIndex = 2; - int renderModeIndex = 0; - - public void onAction(String name, boolean keyPressed, float tpf) { - if (name.equals("toggle") && keyPressed) { - renderModeIndex += 1; - renderModeIndex %= 3; - - switch (renderModeIndex) { - case 0: - viewPort.addProcessor(pssmRenderer); - break; - case 1: - viewPort.removeProcessor(pssmRenderer); - pssmFilter.setEnabled(true); - break; - case 2: - pssmFilter.setEnabled(false); - break; - } - - - - } else if (name.equals("toggleHW") && keyPressed) { - hardwareShadows = !hardwareShadows; - pssmRenderer.setCompareMode(hardwareShadows ? CompareMode.Hardware : CompareMode.Software); - pssmFilter.setCompareMode(hardwareShadows ? CompareMode.Hardware : CompareMode.Software); - System.out.println("HW Shadows: " + hardwareShadows); - } -// -// renderShadows = true; -// viewPort.addProcessor(pssmRenderer); - - if (name.equals("changeFiltering") && keyPressed) { - filteringIndex = (filteringIndex + 1) % FilterMode.values().length; - FilterMode m = FilterMode.values()[filteringIndex]; - pssmRenderer.setFilterMode(m); - pssmFilter.setFilterMode(m); - print("Filter mode : " + m.toString()); - } - - if (name.equals("lambdaUp") && keyPressed) { - pssmRenderer.setLambda(pssmRenderer.getLambda() + 0.01f); - pssmFilter.setLambda(pssmRenderer.getLambda() + 0.01f); - System.out.println("Lambda : " + pssmRenderer.getLambda()); - } else if (name.equals("lambdaDown") && keyPressed) { - pssmRenderer.setLambda(pssmRenderer.getLambda() - 0.01f); - pssmFilter.setLambda(pssmRenderer.getLambda() - 0.01f); - System.out.println("Lambda : " + pssmRenderer.getLambda()); - } - - if (name.equals("ShadowUp") && keyPressed) { - pssmRenderer.setShadowIntensity(pssmRenderer.getShadowIntensity() + 0.1f); - pssmFilter.setShadowIntensity(pssmRenderer.getShadowIntensity() + 0.1f); - System.out.println("Shadow intensity : " + pssmRenderer.getShadowIntensity()); - } - if (name.equals("ShadowDown") && keyPressed) { - pssmRenderer.setShadowIntensity(pssmRenderer.getShadowIntensity() - 0.1f); - pssmFilter.setShadowIntensity(pssmRenderer.getShadowIntensity() - 0.1f); - System.out.println("Shadow intensity : " + pssmRenderer.getShadowIntensity()); - } - if (name.equals("ThicknessUp") && keyPressed) { - pssmRenderer.setEdgesThickness(pssmRenderer.getEdgesThickness() + 1); - pssmFilter.setEdgesThickness(pssmRenderer.getEdgesThickness() + 1); - System.out.println("Shadow thickness : " + pssmRenderer.getEdgesThickness()); - } - if (name.equals("ThicknessDown") && keyPressed) { - pssmRenderer.setEdgesThickness(pssmRenderer.getEdgesThickness() - 1); - pssmFilter.setEdgesThickness(pssmRenderer.getEdgesThickness() - 1); - System.out.println("Shadow thickness : " + pssmRenderer.getEdgesThickness()); - } - if (name.equals("switchGroundMat") && keyPressed) { - if (ground.getMaterial() == matGroundL) { - ground.setMaterial(matGroundU); - } else { - ground.setMaterial(matGroundL); - } - } - -// if (name.equals("splits") && keyPressed) { -// pssmRenderer.displayFrustum(); -// } - - - if (name.equals("up")) { - up = keyPressed; - } - if (name.equals("down")) { - down = keyPressed; - } - if (name.equals("right")) { - right = keyPressed; - } - if (name.equals("left") ) { - left = keyPressed; - } - if (name.equals("fwd")) { - fwd = keyPressed; - } - if (name.equals("back")) { - back = keyPressed; - } - - } - boolean up = false; - boolean down = false; - boolean left = false; - boolean right = false; - boolean fwd = false; - boolean back = false; - float time = 0; - float s = 1f; - - @Override - public void simpleUpdate(float tpf) { - if (up) { - Vector3f v = l.getDirection(); - v.y += tpf / s; - setDir(v); - } - if (down) { - Vector3f v = l.getDirection(); - v.y -= tpf / s; - setDir(v); - } - if (right) { - Vector3f v = l.getDirection(); - v.x += tpf / s; - setDir(v); - } - if (left) { - Vector3f v = l.getDirection(); - v.x -= tpf / s; - setDir(v); - } - if (fwd) { - Vector3f v = l.getDirection(); - v.z += tpf / s; - setDir(v); - } - if (back) { - Vector3f v = l.getDirection(); - v.z -= tpf / s; - setDir(v); - } - - } - - private void setDir(Vector3f v) { - l.setDirection(v); - pssmFilter.setDirection(v); - pssmRenderer.setDirection(v); - } -} diff --git a/jme3-examples/src/main/java/jme3test/light/TestShadow.java b/jme3-examples/src/main/java/jme3test/light/TestShadow.java deleted file mode 100644 index d3c7122fb..000000000 --- a/jme3-examples/src/main/java/jme3test/light/TestShadow.java +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package jme3test.light; - -import com.jme3.app.SimpleApplication; -import com.jme3.material.Material; -import com.jme3.math.ColorRGBA; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector3f; -import com.jme3.renderer.Camera; -import com.jme3.renderer.queue.RenderQueue.ShadowMode; -import com.jme3.scene.Geometry; -import com.jme3.scene.Spatial; -import com.jme3.scene.debug.WireFrustum; -import com.jme3.scene.shape.Box; -import com.jme3.shadow.BasicShadowRenderer; -import com.jme3.shadow.ShadowUtil; - -public class TestShadow extends SimpleApplication { - - float angle; - Spatial lightMdl; - Spatial teapot; - Geometry frustumMdl; - WireFrustum frustum; - - private BasicShadowRenderer bsr; - private Vector3f[] points; - - { - points = new Vector3f[8]; - for (int i = 0; i < points.length; i++) points[i] = new Vector3f(); - } - - public static void main(String[] args){ - TestShadow app = new TestShadow(); - app.start(); - } - - @Override - public void simpleInitApp() { - // put the camera in a bad position - cam.setLocation(new Vector3f(0.7804813f, 1.7502685f, -2.1556435f)); - cam.setRotation(new Quaternion(0.1961598f, -0.7213164f, 0.2266092f, 0.6243975f)); - cam.setFrustumFar(10); - - Material mat = assetManager.loadMaterial("Common/Materials/WhiteColor.j3m"); - rootNode.setShadowMode(ShadowMode.Off); - Box floor = new Box(3, 0.1f, 3); - Geometry floorGeom = new Geometry("Floor", floor); - floorGeom.setMaterial(mat); - floorGeom.setLocalTranslation(0,-0.2f,0); - floorGeom.setShadowMode(ShadowMode.Receive); - rootNode.attachChild(floorGeom); - - teapot = assetManager.loadModel("Models/Teapot/Teapot.obj"); - teapot.setLocalScale(2f); - teapot.setMaterial(mat); - teapot.setShadowMode(ShadowMode.CastAndReceive); - rootNode.attachChild(teapot); -// lightMdl = new Geometry("Light", new Sphere(10, 10, 0.1f)); -// lightMdl.setMaterial(mat); -// // disable shadowing for light representation -// lightMdl.setShadowMode(ShadowMode.Off); -// rootNode.attachChild(lightMdl); - - bsr = new BasicShadowRenderer(assetManager, 512); - bsr.setDirection(new Vector3f(-1, -1, -1).normalizeLocal()); - viewPort.addProcessor(bsr); - - frustum = new WireFrustum(bsr.getPoints()); - frustumMdl = new Geometry("f", frustum); - frustumMdl.setCullHint(Spatial.CullHint.Never); - frustumMdl.setShadowMode(ShadowMode.Off); - frustumMdl.setMaterial(new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md")); - frustumMdl.getMaterial().getAdditionalRenderState().setWireframe(true); - frustumMdl.getMaterial().setColor("Color", ColorRGBA.Red); - rootNode.attachChild(frustumMdl); - } - - @Override - public void simpleUpdate(float tpf){ - Camera shadowCam = bsr.getShadowCamera(); - ShadowUtil.updateFrustumPoints2(shadowCam, points); - - frustum.update(points); - // rotate teapot around Y axis - teapot.rotate(0, tpf * 0.25f, 0); - } - -} diff --git a/jme3-examples/src/main/java/jme3test/light/TestShadowBug.java b/jme3-examples/src/main/java/jme3test/light/TestShadowBug.java index cecb53224..acf2d6df1 100644 --- a/jme3-examples/src/main/java/jme3test/light/TestShadowBug.java +++ b/jme3-examples/src/main/java/jme3test/light/TestShadowBug.java @@ -100,14 +100,12 @@ public class TestShadowBug extends SimpleApplication { slsr.setLight(spot); slsr.setEdgeFilteringMode(EdgeFilteringMode.Nearest); slsr.setShadowIntensity(0.6f); - slsr.setFlushQueues(false); viewPort.addProcessor(slsr); PointLightShadowRenderer plsr = new PointLightShadowRenderer(assetManager, 512); plsr.setLight(lamp_light); plsr.setShadowIntensity(0.6f); plsr.setEdgeFilteringMode(EdgeFilteringMode.Nearest); - plsr.setFlushQueues(false); viewPort.addProcessor(plsr); viewPort.getCamera().setLocation(new Vector3f(192.0f, 10f, 192f)); diff --git a/jme3-examples/src/main/java/jme3test/light/pbr/RefEnv.java b/jme3-examples/src/main/java/jme3test/light/pbr/RefEnv.java index 17f3efa55..a88e12bb0 100644 --- a/jme3-examples/src/main/java/jme3test/light/pbr/RefEnv.java +++ b/jme3-examples/src/main/java/jme3test/light/pbr/RefEnv.java @@ -11,12 +11,8 @@ import com.jme3.input.controls.ActionListener; import com.jme3.input.controls.KeyTrigger; import com.jme3.light.LightProbe; import com.jme3.material.Material; -import com.jme3.math.ColorRGBA; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector3f; -import com.jme3.scene.Geometry; -import com.jme3.scene.Node; -import com.jme3.scene.Spatial; +import com.jme3.math.*; +import com.jme3.scene.*; import com.jme3.ui.Picture; import com.jme3.util.SkyFactory; @@ -39,11 +35,13 @@ public class RefEnv extends SimpleApplication { @Override public void simpleInitApp() { - cam.setLocation(new Vector3f(-17.713732f, 1.8661976f, 17.156784f)); - cam.setRotation(new Quaternion(0.021403445f, 0.9428821f, -0.06178002f, 0.32664734f)); + cam.setLocation(new Vector3f(-17.95047f, 4.917353f, -17.970531f)); + cam.setRotation(new Quaternion(0.11724457f, 0.29356146f, -0.03630452f, 0.94802815f)); +// cam.setLocation(new Vector3f(14.790441f, 7.164179f, 19.720007f)); +// cam.setRotation(new Quaternion(-0.038261678f, 0.9578362f, -0.15233073f, -0.24058504f)); flyCam.setDragToRotate(true); flyCam.setMoveSpeed(5); - Spatial sc = assetManager.loadModel("Models/gltf/ref/scene.gltf"); + Spatial sc = assetManager.loadModel("Scenes/PBR/ref/scene.gltf"); rootNode.attachChild(sc); Spatial sky = SkyFactory.createSky(assetManager, "Textures/Sky/Path.hdr", SkyFactory.EnvMapType.EquirectMap); rootNode.attachChild(sky); @@ -68,7 +66,7 @@ public class RefEnv extends SimpleApplication { public void onAction(String name, boolean isPressed, float tpf) { if (name.equals("tex") && isPressed) { if (tex == null) { - return; + tex = EnvMapUtils.getCubeMapCrossDebugViewWithMipMaps(stateManager.getState(EnvironmentCamera.class).debugEnv, assetManager); } if (tex.getParent() == null) { guiNode.attachChild(tex); @@ -120,13 +118,12 @@ public class RefEnv extends SimpleApplication { frame++; if (frame == 2) { - final LightProbe probe = LightProbeFactory.makeProbe(stateManager.getState(EnvironmentCamera.class), rootNode, new JobProgressAdapter() { + final LightProbe probe = LightProbeFactory.makeProbe(stateManager.getState(EnvironmentCamera.class), rootNode, EnvMapUtils.GenerationType.Fast, new JobProgressAdapter() { @Override public void done(LightProbe result) { System.err.println("Done rendering env maps"); tex = EnvMapUtils.getCubeMapCrossDebugViewWithMipMaps(result.getPrefilteredEnvMap(), assetManager); - // guiNode.attachChild(tex); rootNode.getChild(0).setCullHint(Spatial.CullHint.Dynamic); } }); diff --git a/jme3-examples/src/main/java/jme3test/light/pbr/TestPBRLighting.java b/jme3-examples/src/main/java/jme3test/light/pbr/TestPBRLighting.java index 122b2612b..5cb276a07 100644 --- a/jme3-examples/src/main/java/jme3test/light/pbr/TestPBRLighting.java +++ b/jme3-examples/src/main/java/jme3test/light/pbr/TestPBRLighting.java @@ -33,27 +33,22 @@ package jme3test.light.pbr; import com.jme3.app.SimpleApplication; import com.jme3.bounding.BoundingSphere; -import com.jme3.environment.util.*; -import com.jme3.light.LightProbe; -import com.jme3.environment.LightProbeFactory; import com.jme3.environment.EnvironmentCamera; +import com.jme3.environment.LightProbeFactory; import com.jme3.environment.generation.JobProgressAdapter; +import com.jme3.environment.util.EnvMapUtils; +import com.jme3.environment.util.LightsDebugState; import com.jme3.input.ChaseCamera; import com.jme3.input.KeyInput; import com.jme3.input.controls.ActionListener; import com.jme3.input.controls.KeyTrigger; import com.jme3.light.DirectionalLight; +import com.jme3.light.LightProbe; import com.jme3.material.Material; -import com.jme3.math.ColorRGBA; -import com.jme3.math.FastMath; -import com.jme3.math.Vector3f; +import com.jme3.math.*; import com.jme3.post.FilterPostProcessor; -import com.jme3.post.filters.FXAAFilter; import com.jme3.post.filters.ToneMapFilter; -import com.jme3.post.ssao.SSAOFilter; -import com.jme3.scene.Geometry; -import com.jme3.scene.Node; -import com.jme3.scene.Spatial; +import com.jme3.scene.*; import com.jme3.texture.plugins.ktx.KTXLoader; import com.jme3.util.MaterialDebugAppState; import com.jme3.util.SkyFactory; diff --git a/jme3-examples/src/main/java/jme3test/material/TestMatParamOverride.java b/jme3-examples/src/main/java/jme3test/material/TestMatParamOverride.java index 224290f25..6124d9edd 100644 --- a/jme3-examples/src/main/java/jme3test/material/TestMatParamOverride.java +++ b/jme3-examples/src/main/java/jme3test/material/TestMatParamOverride.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2016 jMonkeyEngine + * Copyright (c) 2009-2017 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -38,6 +38,8 @@ import com.jme3.input.controls.KeyTrigger; import com.jme3.material.MatParamOverride; import com.jme3.material.Material; import com.jme3.math.ColorRGBA; +import com.jme3.math.Quaternion; +import com.jme3.math.Vector4f; import com.jme3.scene.Geometry; import com.jme3.scene.shape.Box; import com.jme3.shader.VarType; @@ -50,7 +52,15 @@ import com.jme3.shader.VarType; public class TestMatParamOverride extends SimpleApplication { private Box box = new Box(1, 1, 1); - private MatParamOverride override = new MatParamOverride(VarType.Vector4, "Color", ColorRGBA.Yellow); + final MatParamOverride overrideYellow + = new MatParamOverride(VarType.Vector4, "Color", + ColorRGBA.Yellow); + final MatParamOverride overrideWhite + = new MatParamOverride(VarType.Vector4, "Color", + Vector4f.UNIT_XYZW); + final MatParamOverride overrideGray + = new MatParamOverride(VarType.Vector4, "Color", + new Quaternion(0.5f, 0.5f, 0.5f, 1f)); public static void main(String[] args) { TestMatParamOverride app = new TestMatParamOverride(); @@ -74,19 +84,30 @@ public class TestMatParamOverride extends SimpleApplication { createBox(0, ColorRGBA.Green); createBox(3, ColorRGBA.Blue); - inputManager.addMapping("override", new KeyTrigger(KeyInput.KEY_SPACE)); + System.out.println("Press G, W, Y, or space bar ..."); + inputManager.addMapping("overrideClear", new KeyTrigger(KeyInput.KEY_SPACE)); + inputManager.addMapping("overrideGray", new KeyTrigger(KeyInput.KEY_G)); + inputManager.addMapping("overrideWhite", new KeyTrigger(KeyInput.KEY_W)); + inputManager.addMapping("overrideYellow", new KeyTrigger(KeyInput.KEY_Y)); inputManager.addListener(new ActionListener() { @Override public void onAction(String name, boolean isPressed, float tpf) { - if (name.equals("override") && isPressed) { - if (!rootNode.getLocalMatParamOverrides().isEmpty()) { + if (isPressed) { + if (name.equals("overrideClear")) { rootNode.clearMatParamOverrides(); - } else { - rootNode.addMatParamOverride(override); + } else if (name.equals("overrideGray")) { + rootNode.clearMatParamOverrides(); + rootNode.addMatParamOverride(overrideGray); + } else if (name.equals("overrideWhite")) { + rootNode.clearMatParamOverrides(); + rootNode.addMatParamOverride(overrideWhite); + } else if (name.equals("overrideYellow")) { + rootNode.clearMatParamOverrides(); + rootNode.addMatParamOverride(overrideYellow); } System.out.println(rootNode.getLocalMatParamOverrides()); } } - }, "override"); + }, "overrideClear", "overrideGray", "overrideWhite", "overrideYellow"); } } diff --git a/jme3-examples/src/main/java/jme3test/model/TestGltfLoading.java b/jme3-examples/src/main/java/jme3test/model/TestGltfLoading.java index 3373638fa..d3d0da624 100644 --- a/jme3-examples/src/main/java/jme3test/model/TestGltfLoading.java +++ b/jme3-examples/src/main/java/jme3test/model/TestGltfLoading.java @@ -34,6 +34,7 @@ package jme3test.model; import com.jme3.animation.*; import com.jme3.app.ChaseCameraAppState; import com.jme3.app.SimpleApplication; +import com.jme3.asset.plugins.FileLocator; import com.jme3.input.KeyInput; import com.jme3.input.controls.ActionListener; import com.jme3.input.controls.KeyTrigger; @@ -76,6 +77,9 @@ public class TestGltfLoading extends SimpleApplication { SkeletonDebugAppState skeletonDebugAppState = new SkeletonDebugAppState(); getStateManager().attach(skeletonDebugAppState); + String folder = System.getProperty("user.home"); + assetManager.registerLocator(folder, FileLocator.class); + // cam.setLocation(new Vector3f(4.0339394f, 2.645184f, 6.4627485f)); // cam.setRotation(new Quaternion(-0.013950467f, 0.98604023f, -0.119502485f, -0.11510504f)); cam.setFrustumPerspective(45f, (float) cam.getWidth() / cam.getHeight(), 0.1f, 100f); diff --git a/jme3-examples/src/main/java/jme3test/model/TestGltfLoading2.java b/jme3-examples/src/main/java/jme3test/model/TestGltfLoading2.java new file mode 100644 index 000000000..7988da4fa --- /dev/null +++ b/jme3-examples/src/main/java/jme3test/model/TestGltfLoading2.java @@ -0,0 +1,319 @@ +/* + * Copyright (c) 2009-2012 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package jme3test.model; + +import com.jme3.animation.*; +import com.jme3.app.ChaseCameraAppState; +import com.jme3.app.SimpleApplication; +import com.jme3.input.KeyInput; +import com.jme3.input.controls.ActionListener; +import com.jme3.input.controls.KeyTrigger; +import com.jme3.math.*; +import com.jme3.renderer.Limits; +import com.jme3.scene.Node; +import com.jme3.scene.Spatial; +import com.jme3.scene.control.Control; +import com.jme3.scene.debug.custom.SkeletonDebugAppState; +import com.jme3.scene.plugins.gltf.GltfModelKey; + +import java.util.*; + +public class TestGltfLoading2 extends SimpleApplication { + + Node autoRotate = new Node("autoRotate"); + List assets = new ArrayList<>(); + Node probeNode; + float time = 0; + int assetIndex = 0; + boolean useAutoRotate = false; + private final static String indentString = "\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t"; + int duration = 2; + boolean playAnim = true; + + public static void main(String[] args) { + TestGltfLoading2 app = new TestGltfLoading2(); + app.start(); + } + + /* + WARNING this test case can't wok without the assets, and considering their size, they are not pushed into the repo + you can find them here : + https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0 + https://sketchfab.com/features/gltf + You have to copy them in Model/gltf folder in the test-data project. + */ + public void simpleInitApp() { + + SkeletonDebugAppState skeletonDebugAppState = new SkeletonDebugAppState(); + getStateManager().attach(skeletonDebugAppState); + + // cam.setLocation(new Vector3f(4.0339394f, 2.645184f, 6.4627485f)); + // cam.setRotation(new Quaternion(-0.013950467f, 0.98604023f, -0.119502485f, -0.11510504f)); + cam.setFrustumPerspective(45f, (float) cam.getWidth() / cam.getHeight(), 0.1f, 100f); + renderer.setDefaultAnisotropicFilter(Math.min(renderer.getLimits().get(Limits.TextureAnisotropy), 8)); + setPauseOnLostFocus(false); + + flyCam.setMoveSpeed(5); + flyCam.setDragToRotate(true); + flyCam.setEnabled(false); + viewPort.setBackgroundColor(new ColorRGBA().setAsSrgb(0.2f, 0.2f, 0.2f, 1.0f)); + rootNode.attachChild(autoRotate); + probeNode = (Node) assetManager.loadModel("Scenes/defaultProbe.j3o"); + autoRotate.attachChild(probeNode); + +// DirectionalLight dl = new DirectionalLight(); +// dl.setDirection(new Vector3f(-1f, -1.0f, -1f).normalizeLocal()); +// dl.setColor(new ColorRGBA(1f, 1f, 1f, 1.0f)); +// rootNode.addLight(dl); + +// DirectionalLight dl2 = new DirectionalLight(); +// dl2.setDirection(new Vector3f(1f, 1.0f, 1f).normalizeLocal()); +// dl2.setColor(new ColorRGBA(0.5f, 0.5f, 0.5f, 1.0f)); +// rootNode.addLight(dl2); + +// PointLight pl = new PointLight(new Vector3f(5.0f, 5.0f, 5.0f), ColorRGBA.White, 30); +// rootNode.addLight(pl); +// PointLight pl1 = new PointLight(new Vector3f(-5.0f, -5.0f, -5.0f), ColorRGBA.White.mult(0.5f), 50); +// rootNode.addLight(pl1); + //loadModel("Models/gltf/buffalo/scene.gltf", new Vector3f(0, -1, 0), 0.1f); + //loadModel("Models/gltf/war/scene.gltf", new Vector3f(0, -1, 0), 0.1f); + loadModel("Models/gltf/ganjaarl/scene.gltf", new Vector3f(0, -1, 0), 0.01f); + //loadModel("Models/gltf/hero/scene.gltf", new Vector3f(0, -1, 0), 0.1f); + //loadModel("Models/gltf/mercy/scene.gltf", new Vector3f(0, -1, 0), 0.01f); + //loadModel("Models/gltf/crab/scene.gltf", Vector3f.ZERO, 1); + //loadModel("Models/gltf/manta/scene.gltf", Vector3f.ZERO, 0.2f); +// loadModel("Models/gltf/bone/scene.gltf", Vector3f.ZERO, 0.1f); +// loadModel("Models/gltf/box/box.gltf", Vector3f.ZERO, 1); +// loadModel("Models/gltf/duck/Duck.gltf", new Vector3f(0, -1, 0), 1); +// loadModel("Models/gltf/damagedHelmet/damagedHelmet.gltf", Vector3f.ZERO, 1); +// loadModel("Models/gltf/hornet/scene.gltf", new Vector3f(0, -0.5f, 0), 0.4f); +//// loadModel("Models/gltf/adamHead/adamHead.gltf", Vector3f.ZERO, 0.6f); + //loadModel("Models/gltf/busterDrone/busterDrone.gltf", new Vector3f(0, 0f, 0), 0.8f); +// loadModel("Models/gltf/animatedCube/AnimatedCube.gltf", Vector3f.ZERO, 0.5f); +// +// //loadModel("Models/gltf/BoxAnimated/BoxAnimated.gltf", new Vector3f(0, 0f, 0), 0.8f); +// + //loadModel("Models/gltf/RiggedFigure/RiggedSimple.gltf", new Vector3f(0, -0.3f, 0), 0.2f); + //loadModel("Models/gltf/RiggedFigure/RiggedFigure.gltf", new Vector3f(0, -1f, 0), 1f); + //loadModel("Models/gltf/CesiumMan/CesiumMan.gltf", new Vector3f(0, -1, 0), 1f); + //loadModel("Models/gltf/BrainStem/BrainStem.gltf", new Vector3f(0, -1, 0), 1f); + //loadModel("Models/gltf/Jaime/Jaime.gltf", new Vector3f(0, -1, 0), 1f); + //loadModel("Models/gltf/GiantWorm/GiantWorm.gltf", new Vector3f(0, -1, 0), 1f); + //loadModel("Models/gltf/RiggedFigure/WalkingLady.gltf", new Vector3f(0, -0.f, 0), 1f); + //loadModel("Models/gltf/Monster/Monster.gltf", Vector3f.ZERO, 0.03f); + +// loadModel("Models/gltf/corset/Corset.gltf", new Vector3f(0, -1, 0), 20f); + // loadModel("Models/gltf/boxInter/BoxInterleaved.gltf", new Vector3f(0, 0, 0), 1f); + + + probeNode.attachChild(assets.get(0)); + + ChaseCameraAppState chaseCam = new ChaseCameraAppState(); + chaseCam.setTarget(probeNode); + getStateManager().attach(chaseCam); + chaseCam.setInvertHorizontalAxis(true); + chaseCam.setInvertVerticalAxis(true); + chaseCam.setZoomSpeed(0.5f); + chaseCam.setMinVerticalRotation(-FastMath.HALF_PI); + chaseCam.setRotationSpeed(3); + chaseCam.setDefaultDistance(3); + chaseCam.setDefaultVerticalRotation(0.3f); + + inputManager.addMapping("autorotate", new KeyTrigger(KeyInput.KEY_SPACE)); + inputManager.addListener(new ActionListener() { + @Override + public void onAction(String name, boolean isPressed, float tpf) { + if (isPressed) { + useAutoRotate = !useAutoRotate; + } + } + }, "autorotate"); + + inputManager.addMapping("toggleAnim", new KeyTrigger(KeyInput.KEY_RETURN)); + + inputManager.addListener(new ActionListener() { + @Override + public void onAction(String name, boolean isPressed, float tpf) { + if (isPressed) { + playAnim = !playAnim; + if (playAnim) { + playFirstAnim(rootNode); + } else { + stopAnim(rootNode); + } + } + } + }, "toggleAnim"); + inputManager.addMapping("nextAnim", new KeyTrigger(KeyInput.KEY_RIGHT)); + inputManager.addListener(new ActionListener() { + @Override + public void onAction(String name, boolean isPressed, float tpf) { + if (isPressed && animControl != null) { + AnimChannel c = animControl.getChannel(0); + if (c == null) { + c = animControl.createChannel(); + } + String anim = anims.poll(); + anims.add(anim); + c.setAnim(anim); + } + } + }, "nextAnim"); + + dumpScene(rootNode, 0); + } + + private T findControl(Spatial s, Class controlClass) { + T ctrl = s.getControl(controlClass); + if (ctrl != null) { + return ctrl; + } + if (s instanceof Node) { + Node n = (Node) s; + for (Spatial spatial : n.getChildren()) { + ctrl = findControl(spatial, controlClass); + if (ctrl != null) { + return ctrl; + } + } + } + return null; + } + + private void loadModel(String path, Vector3f offset, float scale) { + GltfModelKey k = new GltfModelKey(path); + //k.setKeepSkeletonPose(true); + Spatial s = assetManager.loadModel(k); + s.scale(scale); + s.move(offset); + assets.add(s); + if (playAnim) { + playFirstAnim(s); + } + + SkeletonControl ctrl = findControl(s, SkeletonControl.class); + + // ctrl.getSpatial().removeControl(ctrl); + if (ctrl == null) { + return; + } + //System.err.println(ctrl.getSkeleton().toString()); + //ctrl.setHardwareSkinningPreferred(false); + // getStateManager().getState(SkeletonDebugAppState.class).addSkeleton(ctrl, true); +// AnimControl aCtrl = findControl(s, AnimControl.class); +// //ctrl.getSpatial().removeControl(ctrl); +// if (aCtrl == null) { +// return; +// } +// if (aCtrl.getSkeleton() != null) { +// getStateManager().getState(SkeletonDebugAppState.class).addSkeleton(aCtrl.getSkeleton(), aCtrl.getSpatial(), true); +// } + + } + + Queue anims = new LinkedList<>(); + AnimControl animControl; + + private void playFirstAnim(Spatial s) { + + AnimControl control = s.getControl(AnimControl.class); + if (control != null) { + anims.clear(); + for (String name : control.getAnimationNames()) { + anims.add(name); + } + if (anims.isEmpty()) { + return; + } + String anim = anims.poll(); + anims.add(anim); + control.createChannel().setAnim(anim); + animControl = control; + } + if (s instanceof Node) { + Node n = (Node) s; + for (Spatial spatial : n.getChildren()) { + playFirstAnim(spatial); + } + } + } + + private void stopAnim(Spatial s) { + + AnimControl control = s.getControl(AnimControl.class); + if (control != null) { + for (int i = 0; i < control.getNumChannels(); i++) { + AnimChannel ch = control.getChannel(i); + ch.reset(true); + } + control.clearChannels(); + } + if (s instanceof Node) { + Node n = (Node) s; + for (Spatial spatial : n.getChildren()) { + stopAnim(spatial); + } + } + } + + @Override + public void simpleUpdate(float tpf) { + + if (!useAutoRotate) { + return; + } + time += tpf; + autoRotate.rotate(0, tpf * 0.5f, 0); + if (time > duration) { + assets.get(assetIndex).removeFromParent(); + assetIndex = (assetIndex + 1) % assets.size(); + if (assetIndex == 0) { + duration = 10; + } + probeNode.attachChild(assets.get(assetIndex)); + time = 0; + } + } + + private void dumpScene(Spatial s, int indent) { + System.err.println(indentString.substring(0, indent) + s.getName() + " (" + s.getClass().getSimpleName() + ") / " + + s.getLocalTransform().getTranslation().toString() + ", " + + s.getLocalTransform().getRotation().toString() + ", " + + s.getLocalTransform().getScale().toString()); + if (s instanceof Node) { + Node n = (Node) s; + for (Spatial spatial : n.getChildren()) { + dumpScene(spatial, indent + 1); + } + } + } +} diff --git a/jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java b/jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java index 55768517c..dfd249711 100644 --- a/jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java +++ b/jme3-examples/src/main/java/jme3test/model/anim/TestAnimationFactory.java @@ -52,14 +52,14 @@ public class TestAnimationFactory extends SimpleApplication { //creating a translation keyFrame at time = 3 with a translation on the x axis of 5 WU animationFactory.addTimeTranslation(3, new Vector3f(5, 0, 0)); - //reseting the translation to the start position at time = 6 + //resetting the translation to the start position at time = 6 animationFactory.addTimeTranslation(6, new Vector3f(0, 0, 0)); //Creating a scale keyFrame at time = 2 with the unit scale. animationFactory.addTimeScale(2, new Vector3f(1, 1, 1)); //Creating a scale keyFrame at time = 4 scaling to 1.5 animationFactory.addTimeScale(4, new Vector3f(1.5f, 1.5f, 1.5f)); - //reseting the scale to the start value at time = 5 + //resetting the scale to the start value at time = 5 animationFactory.addTimeScale(5, new Vector3f(1, 1, 1)); diff --git a/jme3-examples/src/main/java/jme3test/model/anim/TestAttachmentsNode.java b/jme3-examples/src/main/java/jme3test/model/anim/TestAttachmentsNode.java index ab592d05e..89e60559d 100644 --- a/jme3-examples/src/main/java/jme3test/model/anim/TestAttachmentsNode.java +++ b/jme3-examples/src/main/java/jme3test/model/anim/TestAttachmentsNode.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -51,7 +51,7 @@ import com.jme3.scene.Spatial; import com.jme3.scene.shape.Box; /** - * Simple application to an test attachments node on the Jaime model. + * Simple application to test an attachments node on the Jaime model. * * Derived from {@link jme3test.model.anim.TestOgreAnim}. */ diff --git a/jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java b/jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java index b5eeb5365..93403587a 100644 --- a/jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java +++ b/jme3-examples/src/main/java/jme3test/model/anim/TestCustomAnim.java @@ -93,7 +93,7 @@ public class TestCustomAnim extends SimpleApplication { box.setBuffer(indicesBuf); // Create bind pose buffers - box.generateBindPose(true); + box.generateBindPose(); // Create skeleton bone = new Bone("root"); diff --git a/jme3-examples/src/main/java/jme3test/network/MovingAverage.java b/jme3-examples/src/main/java/jme3test/network/MovingAverage.java index ef7a5e7cb..991b5e5f6 100644 --- a/jme3-examples/src/main/java/jme3test/network/MovingAverage.java +++ b/jme3-examples/src/main/java/jme3test/network/MovingAverage.java @@ -32,8 +32,7 @@ package jme3test.network; -@Deprecated -public class MovingAverage { +class MovingAverage { private long[] samples; private long sum; diff --git a/jme3-examples/src/main/java/jme3test/network/TestLatency.java b/jme3-examples/src/main/java/jme3test/network/TestLatency.java index 6f49a003b..c47ae0556 100644 --- a/jme3-examples/src/main/java/jme3test/network/TestLatency.java +++ b/jme3-examples/src/main/java/jme3test/network/TestLatency.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -85,7 +85,7 @@ public class TestLatency { long curTime = getTime(); //System.out.println("Time sent: " + timeMsg.timeSent); //System.out.println("Time received by server: " + timeMsg.timeReceived); - //System.out.println("Time recieved by client: " + curTime); + //System.out.println("Time received by client: " + curTime); long latency = (curTime - timeMsg.timeSent); System.out.println("Latency: " + (latency) + " ms"); diff --git a/jme3-examples/src/main/java/jme3test/post/TestBloom.java b/jme3-examples/src/main/java/jme3test/post/TestBloom.java index 1a394bf36..9572568ea 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestBloom.java +++ b/jme3-examples/src/main/java/jme3test/post/TestBloom.java @@ -49,6 +49,7 @@ import com.jme3.scene.Spatial; import com.jme3.scene.debug.WireFrustum; import com.jme3.scene.shape.Box; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; public class TestBloom extends SimpleApplication { @@ -114,7 +115,9 @@ public class TestBloom extends SimpleApplication { rootNode.addLight(light); // load sky - Spatial sky = SkyFactory.createSky(assetManager, "Textures/Sky/Bright/FullskiesBlueClear03.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/FullskiesBlueClear03.dds", + EnvMapType.CubeMap); sky.setCullHint(Spatial.CullHint.Never); rootNode.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/post/TestBloomAlphaThreshold.java b/jme3-examples/src/main/java/jme3test/post/TestBloomAlphaThreshold.java index 0514aced5..b9f136726 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestBloomAlphaThreshold.java +++ b/jme3-examples/src/main/java/jme3test/post/TestBloomAlphaThreshold.java @@ -51,6 +51,7 @@ import com.jme3.scene.Spatial; import com.jme3.scene.debug.WireFrustum; import com.jme3.scene.shape.Box; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; public class TestBloomAlphaThreshold extends SimpleApplication { @@ -101,7 +102,10 @@ public class TestBloomAlphaThreshold extends SimpleApplication teapot.setLocalScale(10.0f); rootNode.attachChild(teapot); - Geometry soil = new Geometry("soil", new Box(new Vector3f(0, -13, 550), 800, 10, 700)); + Vector3f boxMin1 = new Vector3f(-800f, -23f, -150f); + Vector3f boxMax1 = new Vector3f(800f, 3f, 1250f); + Box boxMesh1 = new Box(boxMin1, boxMax1); + Geometry soil = new Geometry("soil", boxMesh1); soil.setMaterial(matSoil); soil.setShadowMode(ShadowMode.CastAndReceive); rootNode.attachChild(soil); @@ -110,7 +114,10 @@ public class TestBloomAlphaThreshold extends SimpleApplication matBox.setTexture("ColorMap", assetManager.loadTexture("Textures/ColoredTex/Monkey.png")); matBox.setFloat("AlphaDiscardThreshold", 0.5f); - Geometry box = new Geometry("box", new Box(new Vector3f(-3.5f, 10, -2), 2, 2, 2)); + Vector3f boxMin2 = new Vector3f(-5.5f, 8f, -4f); + Vector3f boxMax2 = new Vector3f(-1.5f, 12f, 0f); + Box boxMesh2 = new Box(boxMin2, boxMax2); + Geometry box = new Geometry("box", boxMesh2); box.setMaterial(matBox); box.setQueueBucket(RenderQueue.Bucket.Translucent); // box.setShadowMode(ShadowMode.CastAndReceive); @@ -122,7 +129,9 @@ public class TestBloomAlphaThreshold extends SimpleApplication rootNode.addLight(light); // load sky - Spatial sky = SkyFactory.createSky(assetManager, "Textures/Sky/Bright/FullskiesBlueClear03.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/FullskiesBlueClear03.dds", + EnvMapType.CubeMap); sky.setCullHint(Spatial.CullHint.Never); rootNode.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java b/jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java index ff3ef081c..5cc3669ae 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java +++ b/jme3-examples/src/main/java/jme3test/post/TestCrossHatch.java @@ -49,6 +49,7 @@ import com.jme3.scene.Spatial; import com.jme3.scene.debug.WireFrustum; import com.jme3.scene.shape.Box; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; public class TestCrossHatch extends SimpleApplication { @@ -114,7 +115,9 @@ public class TestCrossHatch extends SimpleApplication { rootNode.addLight(light); // load sky - Spatial sky = SkyFactory.createSky(assetManager, "Textures/Sky/Bright/FullskiesBlueClear03.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/FullskiesBlueClear03.dds", + EnvMapType.CubeMap); sky.setCullHint(Spatial.CullHint.Never); rootNode.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java b/jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java index 9966adc61..263d45ff3 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java +++ b/jme3-examples/src/main/java/jme3test/post/TestDepthOfField.java @@ -21,6 +21,7 @@ import com.jme3.terrain.heightmap.ImageBasedHeightMap; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import java.util.ArrayList; import java.util.List; @@ -65,7 +66,8 @@ public class TestDepthOfField extends SimpleApplication { cam.setRotation(new Quaternion().fromAngles(new float[]{FastMath.PI * 0.06f, FastMath.PI * 0.65f, 0})); - Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Scenes/Beach/FullskiesSunset0068.dds", EnvMapType.CubeMap); sky.setLocalScale(350); mainScene.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/post/TestFog.java b/jme3-examples/src/main/java/jme3test/post/TestFog.java index 5cecc4bde..544932ab6 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestFog.java +++ b/jme3-examples/src/main/java/jme3test/post/TestFog.java @@ -77,7 +77,9 @@ public class TestFog extends SimpleApplication { cam.setRotation(new Quaternion(0.023536969f, 0.9361278f, -0.016098259f, -0.35050195f)); // load sky - mainScene.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + mainScene.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); createTerrain(mainScene); diff --git a/jme3-examples/src/main/java/jme3test/post/TestHDR.java b/jme3-examples/src/main/java/jme3test/post/TestHDR.java deleted file mode 100644 index 6cfcbdb7f..000000000 --- a/jme3-examples/src/main/java/jme3test/post/TestHDR.java +++ /dev/null @@ -1,93 +0,0 @@ -/* - * Copyright (c) 2009-2012 jMonkeyEngine - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * * Neither the name of 'jMonkeyEngine' nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR - * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, - * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, - * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -package jme3test.post; - -import com.jme3.app.SimpleApplication; -import com.jme3.material.Material; -import com.jme3.math.Vector3f; -import com.jme3.post.HDRRenderer; -import com.jme3.scene.Geometry; -import com.jme3.scene.shape.Box; -import com.jme3.ui.Picture; - -public class TestHDR extends SimpleApplication { - - private HDRRenderer hdrRender; - private Picture dispQuad; - - public static void main(String[] args){ - TestHDR app = new TestHDR(); - app.start(); - } - - public Geometry createHDRBox(){ - Box boxMesh = new Box(1, 1, 1); - Geometry box = new Geometry("Box", boxMesh); - Material mat = new Material(assetManager, "Common/MatDefs/Misc/Unshaded.j3md"); - mat.setTexture("ColorMap", assetManager.loadTexture("Textures/HdrTest/Memorial.hdr")); - box.setMaterial(mat); - return box; - } - -// private Material disp; - - @Override - public void simpleInitApp() { - hdrRender = new HDRRenderer(assetManager, renderer); - hdrRender.setSamples(0); - hdrRender.setMaxIterations(20); - hdrRender.setExposure(0.87f); - hdrRender.setThrottle(0.33f); - viewPort.addProcessor(hdrRender); -// config.setVisible(true); - rootNode.attachChild(createHDRBox()); - } - - public void simpleUpdate(float tpf){ - if (hdrRender.isInitialized() && dispQuad == null){ - dispQuad = hdrRender.createDisplayQuad(); - dispQuad.setWidth(128); - dispQuad.setHeight(128); - dispQuad.setPosition(30, cam.getHeight() - 128 - 30); - guiNode.attachChild(dispQuad); - } - } - -// public void displayAvg(Renderer r){ -// r.setFrameBuffer(null); -// disp = prepare(-1, -1, settings.getWidth(), settings.getHeight(), 3, -1, scene64, disp); -// r.clearBuffers(true, true, true); -// r.renderGeometry(pic); -// } - -} diff --git a/jme3-examples/src/main/java/jme3test/post/TestLightScattering.java b/jme3-examples/src/main/java/jme3test/post/TestLightScattering.java index 2f12f3892..c2940cab6 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestLightScattering.java +++ b/jme3-examples/src/main/java/jme3test/post/TestLightScattering.java @@ -44,7 +44,6 @@ import com.jme3.renderer.queue.RenderQueue.ShadowMode; import com.jme3.scene.Geometry; import com.jme3.scene.Node; import com.jme3.scene.Spatial; -import com.jme3.shadow.PssmShadowRenderer; import com.jme3.util.SkyFactory; import com.jme3.util.TangentBinormalGenerator; @@ -76,7 +75,9 @@ public class TestLightScattering extends SimpleApplication { rootNode.attachChild(scene); // load sky - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/FullskiesBlueClear03.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/FullskiesBlueClear03.dds", + SkyFactory.EnvMapType.CubeMap)); DirectionalLight sun = new DirectionalLight(); Vector3f lightDir = new Vector3f(-0.12f, -0.3729129f, 0.74847335f); diff --git a/jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java b/jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java index 477dd96c7..adbc036c7 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java +++ b/jme3-examples/src/main/java/jme3test/post/TestMultiViewsFilters.java @@ -126,7 +126,9 @@ public class TestMultiViewsFilters extends SimpleApplication { - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); final FilterPostProcessor fpp = new FilterPostProcessor(assetManager); final FilterPostProcessor fpp2 = new FilterPostProcessor(assetManager); diff --git a/jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java b/jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java index 010651379..46efd639a 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java +++ b/jme3-examples/src/main/java/jme3test/post/TestMultiplesFilters.java @@ -72,7 +72,9 @@ public class TestMultiplesFilters extends SimpleApplication { cam.setRotation(new Quaternion(0.0016069f, 0.9810479f, -0.008143323f, 0.19358753f)); // load sky - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); // create the geometry and attach it // load the level from zip or http zip diff --git a/jme3-examples/src/main/java/jme3test/post/TestPostFilters.java b/jme3-examples/src/main/java/jme3test/post/TestPostFilters.java index c5fc0b9d8..c2ee5b04b 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestPostFilters.java +++ b/jme3-examples/src/main/java/jme3test/post/TestPostFilters.java @@ -50,6 +50,7 @@ import com.jme3.system.AppSettings; import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import com.jme3.util.TangentBinormalGenerator; public class TestPostFilters extends SimpleApplication implements ActionListener { @@ -88,7 +89,9 @@ public class TestPostFilters extends SimpleApplication implements ActionListener } else { envMap = assetManager.loadTexture("Textures/Sky/St Peters/StPeters.jpg"); } - rootNode.attachChild(SkyFactory.createSky(assetManager, envMap, new Vector3f(-1, -1, -1), true)); + Spatial sky = SkyFactory.createSky(assetManager, envMap, + new Vector3f(-1f, -1f, -1f), EnvMapType.SphereMap); + rootNode.attachChild(sky); } public void setupLighting() { diff --git a/jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java b/jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java index e5aa79d55..b3473b7ec 100644 --- a/jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java +++ b/jme3-examples/src/main/java/jme3test/post/TestRenderToCubemap.java @@ -41,12 +41,14 @@ import com.jme3.math.Vector3f; import com.jme3.renderer.Camera; import com.jme3.renderer.ViewPort; import com.jme3.scene.Geometry; +import com.jme3.scene.Spatial; import com.jme3.scene.shape.Box; import com.jme3.texture.FrameBuffer; import com.jme3.texture.Image.Format; import com.jme3.texture.Texture; import com.jme3.texture.TextureCubeMap; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; /** * Renders a rotating box to a cubemap texture, then applies the cubemap @@ -114,7 +116,9 @@ public class TestRenderToCubemap extends SimpleApplication { cam.lookAt(Vector3f.ZERO, Vector3f.UNIT_Y); Texture offTex = setupOffscreenView(); - rootNode.attachChild(SkyFactory.createSky(assetManager, offTex, false)); + Spatial sky = SkyFactory.createSky(assetManager, offTex, + EnvMapType.CubeMap); + rootNode.attachChild(sky); } @Override diff --git a/jme3-examples/src/main/java/jme3test/renderer/TestAspectRatio.java b/jme3-examples/src/main/java/jme3test/renderer/TestAspectRatio.java index c557b7f5f..bdb526710 100644 --- a/jme3-examples/src/main/java/jme3test/renderer/TestAspectRatio.java +++ b/jme3-examples/src/main/java/jme3test/renderer/TestAspectRatio.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2017 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -38,7 +38,7 @@ import com.jme3.scene.Geometry; import com.jme3.scene.shape.Box; /** - * Simple application to an test a viewport/camera with a different aspect ratio + * Simple application to test a viewport/camera with a different aspect ratio * than the display -- issue #357. The cube should render as a blue square, not * a rectangle. * diff --git a/jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java b/jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java index cadc42e54..2567d94fa 100644 --- a/jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java +++ b/jme3-examples/src/main/java/jme3test/scene/TestSceneLoading.java @@ -66,7 +66,9 @@ public class TestSceneLoading extends SimpleApplication { this.flyCam.setMoveSpeed(10); // load sky - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); File file = new File("wildhouse.zip"); if (!file.exists()) { diff --git a/jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java index 7eff18b8f..5da9d9d2b 100644 --- a/jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java +++ b/jme3-examples/src/main/java/jme3test/terrain/TerrainTest.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,7 +53,7 @@ import com.jme3.texture.Texture.WrapMode; /** * Demonstrates how to use terrain. * The base terrain class it uses is TerrainQuad, which is a quad tree of actual - * meshes called TerainPatches. + * meshes called TerrainPatches. * There are a couple options for the terrain in this test: * The first is wireframe mode. Here you can see the underlying trianglestrip structure. * You will notice some off lines; these are degenerate triangles and are part of the @@ -203,7 +203,7 @@ public class TerrainTest extends SimpleApplication { matRock.setBoolean("useTriPlanarMapping", true); // planar textures don't use the mesh's texture coordinates but real world coordinates, // so we need to convert these texture coordinate scales into real world scales so it looks - // the same when we switch to/from tr-planar mode + // the same when we switch to/from tri-planar mode matRock.setFloat("Tex1Scale", 1f / (float) (512f / grassScale)); matRock.setFloat("Tex2Scale", 1f / (float) (512f / dirtScale)); matRock.setFloat("Tex3Scale", 1f / (float) (512f / rockScale)); diff --git a/jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java index 32f1734e6..6822251ba 100644 --- a/jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java +++ b/jme3-examples/src/main/java/jme3test/terrain/TerrainTestCollision.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -48,6 +48,7 @@ import com.jme3.light.DirectionalLight; import com.jme3.light.PointLight; import com.jme3.material.Material; import com.jme3.math.ColorRGBA; +import com.jme3.math.Quaternion; import com.jme3.math.Ray; import com.jme3.math.Vector2f; import com.jme3.math.Vector3f; @@ -176,16 +177,15 @@ public class TerrainTestCollision extends SimpleApplication { dl.setColor(new ColorRGBA(0.50f, 0.40f, 0.50f, 1.0f)); rootNode.addLight(dl); - cam.setLocation(new Vector3f(0, 25, -10)); - cam.lookAtDirection(new Vector3f(0, -1, 0).normalizeLocal(), Vector3f.UNIT_Y); + cam.setLocation(new Vector3f(43f, 121f, 10f)); + cam.setRotation(new Quaternion(0.15824f, -0.79309f, 0.23223f, 0.5404f)); } public void loadHintText() { hintText = new BitmapText(guiFont, false); hintText.setSize(guiFont.getCharSet().getRenderedSize()); hintText.setLocalTranslation(0, getCamera().getHeight(), 0); - //hintText.setText("Hit T to switch to wireframe"); - hintText.setText(""); + hintText.setText("Press T to toggle wireframe"); guiNode.attachChild(hintText); } @@ -241,7 +241,7 @@ public class TerrainTestCollision extends SimpleApplication { public void onAction(String binding, boolean keyPressed, float tpf) { if (binding.equals("wireframe") && !keyPressed) { wireframe = !wireframe; - if (!wireframe) { + if (wireframe) { terrain.setMaterial(matWire); } else { terrain.setMaterial(matRock); diff --git a/jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java b/jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java index d9ef51db1..8e90d181a 100644 --- a/jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java +++ b/jme3-examples/src/main/java/jme3test/tools/TestSaveGame.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -62,7 +62,7 @@ public class TestSaveGame extends SimpleApplication { Spatial model = (Spatial) assetManager.loadModel("Models/Oto/Oto.mesh.xml"); myPlayer.attachChild(model); - //before saving the game, the model should be detached so its not saved along with the node + //before saving the game, the model should be detached so it's not saved along with the node myPlayer.detachAllChildren(); SaveGame.saveGame("mycompany/mygame", "savegame_001", myPlayer); diff --git a/jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java b/jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java index 2821b818c..2611d9696 100644 --- a/jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java +++ b/jme3-examples/src/main/java/jme3test/water/TestMultiPostWater.java @@ -20,6 +20,7 @@ import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.texture.Texture2D; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import com.jme3.water.WaterFilter; import java.util.ArrayList; import java.util.List; @@ -73,7 +74,8 @@ public class TestMultiPostWater extends SimpleApplication { cam.setRotation(new Quaternion().fromAngles(new float[]{FastMath.PI * 0.06f, FastMath.PI * 0.65f, 0})); - Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Scenes/Beach/FullskiesSunset0068.dds", EnvMapType.CubeMap); sky.setLocalScale(350); mainScene.attachChild(sky); diff --git a/jme3-examples/src/main/java/jme3test/water/TestPostWater.java b/jme3-examples/src/main/java/jme3test/water/TestPostWater.java index e1d3a08dd..21e11d153 100644 --- a/jme3-examples/src/main/java/jme3test/water/TestPostWater.java +++ b/jme3-examples/src/main/java/jme3test/water/TestPostWater.java @@ -1,6 +1,7 @@ package jme3test.water; import com.jme3.app.SimpleApplication; +import com.jme3.audio.AudioData.DataType; import com.jme3.audio.AudioNode; import com.jme3.audio.LowPassFilter; import com.jme3.effect.ParticleEmitter; @@ -35,6 +36,7 @@ import com.jme3.texture.Texture; import com.jme3.texture.Texture.WrapMode; import com.jme3.texture.Texture2D; import com.jme3.util.SkyFactory; +import com.jme3.util.SkyFactory.EnvMapType; import com.jme3.water.WaterFilter; import java.util.ArrayList; import java.util.List; @@ -93,7 +95,8 @@ public class TestPostWater extends SimpleApplication { - Spatial sky = SkyFactory.createSky(assetManager, "Scenes/Beach/FullskiesSunset0068.dds", false); + Spatial sky = SkyFactory.createSky(assetManager, + "Scenes/Beach/FullskiesSunset0068.dds", EnvMapType.CubeMap); sky.setLocalScale(350); mainScene.attachChild(sky); @@ -149,7 +152,8 @@ public class TestPostWater extends SimpleApplication { uw = cam.getLocation().y < waterHeight; - waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", false); + waves = new AudioNode(assetManager, "Sound/Environment/Ocean Waves.ogg", + DataType.Buffer); waves.setLooping(true); waves.setReverbEnabled(true); if (uw) { diff --git a/jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java b/jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java index e178c12ac..16441025c 100644 --- a/jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java +++ b/jme3-examples/src/main/java/jme3test/water/TestPostWaterLake.java @@ -62,7 +62,9 @@ public class TestPostWaterLake extends SimpleApplication { // cam.setRotation(new Quaternion(0.03f, 0.9f, 0f, 0.4f)); // load sky - rootNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + rootNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); File file = new File("wildhouse.zip"); diff --git a/jme3-examples/src/main/java/jme3test/water/TestSceneWater.java b/jme3-examples/src/main/java/jme3test/water/TestSceneWater.java index 41e71c2d3..4e0d8d6fc 100644 --- a/jme3-examples/src/main/java/jme3test/water/TestSceneWater.java +++ b/jme3-examples/src/main/java/jme3test/water/TestSceneWater.java @@ -66,7 +66,9 @@ public class TestSceneWater extends SimpleApplication { cam.setRotation(new Quaternion(0.03f, 0.9f, 0f, 0.4f)); // load sky - mainScene.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + mainScene.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); File file = new File("wildhouse.zip"); diff --git a/jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java b/jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java index 4a8855df6..c8ba06fed 100644 --- a/jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java +++ b/jme3-examples/src/main/java/jme3test/water/TestSimpleWater.java @@ -103,7 +103,9 @@ public class TestSimpleWater extends SimpleApplication implements ActionListener sceneNode.attachChild(geom); // load sky - sceneNode.attachChild(SkyFactory.createSky(assetManager, "Textures/Sky/Bright/BrightSky.dds", false)); + sceneNode.attachChild(SkyFactory.createSky(assetManager, + "Textures/Sky/Bright/BrightSky.dds", + SkyFactory.EnvMapType.CubeMap)); rootNode.attachChild(sceneNode); //add lightPos Geometry diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I.fnt b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I.fnt new file mode 100644 index 000000000..f77819afb --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I.fnt @@ -0,0 +1,1031 @@ +info face="FreeSerif" size=16 bold=0 italic=1 charset="" unicode=1 stretchH=100 smooth=1 aa=2 padding=0,0,0,0 spacing=3,3 outline=0 +common lineHeight=16 base=12 scaleW=1024 scaleH=1024 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="BM-FreeSerif16I_0.png" +chars count=406 +char id=-1 x=889 y=16 width=11 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=32 x=489 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=15 +char id=33 x=36 y=45 width=5 height=10 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=34 x=196 y=56 width=4 height=4 xoffset=3 yoffset=2 xadvance=5 page=0 chnl=15 +char id=35 x=468 y=44 width=8 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=36 x=403 y=16 width=9 height=12 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=37 x=66 y=32 width=10 height=10 xoffset=2 yoffset=2 xadvance=11 page=0 chnl=15 +char id=38 x=945 y=15 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=39 x=1019 y=41 width=2 height=4 xoffset=3 yoffset=2 xadvance=2 page=0 chnl=15 +char id=40 x=543 y=16 width=7 height=12 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=41 x=553 y=16 width=6 height=12 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=15 +char id=42 x=53 y=58 width=6 height=6 xoffset=2 yoffset=2 xadvance=6 page=0 chnl=15 +char id=43 x=897 y=42 width=8 height=7 xoffset=1 yoffset=5 xadvance=7 page=0 chnl=15 +char id=44 x=209 y=56 width=3 height=4 xoffset=0 yoffset=10 xadvance=3 page=0 chnl=15 +char id=45 x=475 y=56 width=4 height=1 xoffset=1 yoffset=8 xadvance=4 page=0 chnl=15 +char id=46 x=408 y=56 width=2 height=2 xoffset=1 yoffset=10 xadvance=3 page=0 chnl=15 +char id=47 x=489 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=48 x=500 y=31 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=49 x=27 y=45 width=6 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=50 x=194 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=51 x=632 y=30 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=52 x=522 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=53 x=230 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=54 x=242 y=31 width=9 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=55 x=533 y=31 width=8 height=10 xoffset=2 yoffset=3 xadvance=6 page=0 chnl=15 +char id=56 x=544 y=31 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=57 x=555 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=58 x=8 y=58 width=4 height=7 xoffset=1 yoffset=5 xadvance=3 page=0 chnl=15 +char id=59 x=701 y=43 width=4 height=9 xoffset=0 yoffset=5 xadvance=3 page=0 chnl=15 +char id=60 x=733 y=43 width=9 height=8 xoffset=1 yoffset=5 xadvance=7 page=0 chnl=15 +char id=61 x=127 y=56 width=9 height=4 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=62 x=721 y=43 width=9 height=8 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=15 +char id=63 x=989 y=28 width=6 height=10 xoffset=2 yoffset=2 xadvance=6 page=0 chnl=15 +char id=64 x=1001 y=15 width=11 height=10 xoffset=2 yoffset=2 xadvance=12 page=0 chnl=15 +char id=65 x=131 y=31 width=10 height=10 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=66 x=335 y=44 width=10 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=67 x=14 y=32 width=10 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=68 x=181 y=44 width=12 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=69 x=268 y=44 width=11 height=9 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=70 x=240 y=44 width=11 height=9 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=15 +char id=71 x=27 y=32 width=10 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=72 x=101 y=44 width=13 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=73 x=479 y=44 width=8 height=9 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=15 +char id=74 x=398 y=31 width=9 height=10 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=15 +char id=75 x=165 y=44 width=13 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=76 x=397 y=44 width=9 height=9 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=77 x=65 y=45 width=15 height=9 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=15 +char id=78 x=828 y=16 width=13 height=10 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=79 x=40 y=32 width=10 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=80 x=322 y=44 width=10 height=9 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=15 +char id=81 x=265 y=16 width=10 height=12 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=82 x=296 y=44 width=10 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=83 x=254 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=84 x=361 y=44 width=9 height=9 xoffset=2 yoffset=3 xadvance=8 page=0 chnl=15 +char id=85 x=987 y=15 width=11 height=10 xoffset=2 yoffset=3 xadvance=9 page=0 chnl=15 +char id=86 x=105 y=31 width=10 height=10 xoffset=3 yoffset=3 xadvance=9 page=0 chnl=15 +char id=87 x=777 y=16 width=14 height=10 xoffset=2 yoffset=3 xadvance=12 page=0 chnl=15 +char id=88 x=133 y=44 width=13 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=89 x=282 y=44 width=11 height=9 xoffset=2 yoffset=3 xadvance=9 page=0 chnl=15 +char id=90 x=254 y=44 width=11 height=9 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=91 x=415 y=16 width=8 height=12 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=15 +char id=92 x=60 y=45 width=2 height=10 xoffset=2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=93 x=523 y=16 width=7 height=12 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=94 x=35 y=58 width=6 height=6 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=95 x=344 y=56 width=8 height=2 xoffset=-1 yoffset=12 xadvance=6 page=0 chnl=15 +char id=96 x=306 y=56 width=3 height=3 xoffset=3 yoffset=2 xadvance=4 page=0 chnl=15 +char id=97 x=951 y=41 width=7 height=7 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=98 x=979 y=28 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=99 x=941 y=42 width=7 height=7 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=100 x=687 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=101 x=1001 y=41 width=6 height=7 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=102 x=278 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=103 x=374 y=31 width=9 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=104 x=467 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=105 x=18 y=45 width=6 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=106 x=922 y=0 width=8 height=13 xoffset=-2 yoffset=2 xadvance=3 page=0 chnl=15 +char id=107 x=170 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=108 x=1015 y=15 width=6 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=109 x=808 y=42 width=12 height=7 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=110 x=908 y=42 width=8 height=7 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=111 x=991 y=41 width=7 height=7 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=112 x=302 y=31 width=9 height=10 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=113 x=577 y=31 width=8 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=114 x=981 y=41 width=7 height=7 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=15 +char id=115 x=1010 y=41 width=6 height=7 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=15 +char id=116 x=693 y=43 width=5 height=9 xoffset=1 yoffset=4 xadvance=3 page=0 chnl=15 +char id=117 x=971 y=41 width=7 height=7 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=118 x=961 y=41 width=7 height=7 xoffset=2 yoffset=5 xadvance=6 page=0 chnl=15 +char id=119 x=823 y=42 width=10 height=7 xoffset=2 yoffset=5 xadvance=9 page=0 chnl=15 +char id=120 x=930 y=42 width=8 height=7 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=121 x=410 y=31 width=9 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=122 x=919 y=42 width=8 height=7 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=123 x=580 y=16 width=6 height=12 xoffset=2 yoffset=2 xadvance=6 page=0 chnl=15 +char id=124 x=44 y=45 width=5 height=10 xoffset=0 yoffset=2 xadvance=2 page=0 chnl=15 +char id=125 x=513 y=16 width=7 height=12 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=126 x=239 y=56 width=7 height=3 xoffset=1 yoffset=7 xadvance=7 page=0 chnl=15 +char id=160 x=493 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=15 +char id=161 x=1016 y=28 width=5 height=10 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=15 +char id=162 x=797 y=29 width=8 height=10 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=15 +char id=163 x=206 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=164 x=708 y=43 width=10 height=8 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=165 x=433 y=44 width=9 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=166 x=52 y=45 width=5 height=10 xoffset=0 yoffset=2 xadvance=2 page=0 chnl=15 +char id=167 x=503 y=16 width=7 height=12 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=168 x=384 y=56 width=5 height=2 xoffset=2 yoffset=3 xadvance=4 page=0 chnl=15 +char id=169 x=648 y=16 width=11 height=11 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=170 x=120 y=56 width=4 height=5 xoffset=2 yoffset=2 xadvance=3 page=0 chnl=15 +char id=171 x=15 y=58 width=7 height=6 xoffset=1 yoffset=6 xadvance=6 page=0 chnl=15 +char id=172 x=93 y=56 width=8 height=5 xoffset=1 yoffset=6 xadvance=7 page=0 chnl=15 +char id=173 x=482 y=56 width=4 height=1 xoffset=1 yoffset=8 xadvance=4 page=0 chnl=15 +char id=174 x=606 y=16 width=11 height=11 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=175 x=392 y=56 width=5 height=2 xoffset=2 yoffset=3 xadvance=4 page=0 chnl=15 +char id=176 x=112 y=56 width=5 height=5 xoffset=3 yoffset=2 xadvance=5 page=0 chnl=15 +char id=177 x=348 y=44 width=10 height=9 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=15 +char id=178 x=44 y=58 width=6 height=6 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=179 x=78 y=57 width=5 height=6 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=15 +char id=180 x=299 y=56 width=4 height=3 xoffset=3 yoffset=2 xadvance=4 page=0 chnl=15 +char id=181 x=362 y=31 width=9 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=182 x=391 y=16 width=9 height=12 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=183 x=413 y=56 width=2 height=2 xoffset=2 yoffset=8 xadvance=3 page=0 chnl=15 +char id=184 x=182 y=56 width=4 height=4 xoffset=0 yoffset=11 xadvance=4 page=0 chnl=15 +char id=185 x=86 y=56 width=4 height=6 xoffset=2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=186 x=104 y=56 width=5 height=5 xoffset=2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=187 x=25 y=58 width=7 height=6 xoffset=0 yoffset=6 xadvance=6 page=0 chnl=15 +char id=188 x=973 y=15 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=189 x=0 y=32 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=190 x=875 y=16 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=191 x=9 y=45 width=6 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=192 x=681 y=0 width=10 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=193 x=193 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=194 x=42 y=17 width=11 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=195 x=168 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=196 x=182 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=197 x=694 y=0 width=10 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=198 x=83 y=44 width=15 height=9 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=15 +char id=199 x=499 y=0 width=10 height=13 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=200 x=431 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=201 x=417 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=202 x=196 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=203 x=210 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=204 x=933 y=0 width=8 height=13 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=205 x=899 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=206 x=481 y=16 width=8 height=12 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=207 x=492 y=16 width=8 height=12 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=208 x=196 y=44 width=12 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=209 x=960 y=0 width=13 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=210 x=564 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=211 x=473 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=212 x=486 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=213 x=291 y=16 width=10 height=12 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=214 x=330 y=16 width=10 height=12 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=215 x=874 y=42 width=9 height=7 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=216 x=944 y=0 width=13 height=12 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=217 x=263 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=218 x=347 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=219 x=291 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=220 x=70 y=16 width=11 height=12 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=221 x=277 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=222 x=309 y=44 width=10 height=9 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=15 +char id=223 x=290 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=224 x=899 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=225 x=566 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=226 x=919 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=227 x=545 y=44 width=8 height=9 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=228 x=523 y=44 width=8 height=9 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=229 x=731 y=16 width=7 height=11 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=230 x=836 y=42 width=10 height=7 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=15 +char id=231 x=829 y=29 width=7 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=232 x=1007 y=28 width=6 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=233 x=849 y=29 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=234 x=869 y=29 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=235 x=627 y=43 width=7 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=236 x=998 y=28 width=6 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=237 x=819 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=238 x=949 y=28 width=7 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=239 x=577 y=44 width=7 height=9 xoffset=0 yoffset=3 xadvance=3 page=0 chnl=15 +char id=240 x=808 y=29 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=241 x=421 y=44 width=9 height=9 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=242 x=959 y=28 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=243 x=775 y=29 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=244 x=939 y=29 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=245 x=512 y=44 width=8 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=246 x=501 y=44 width=8 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=247 x=769 y=42 width=8 height=8 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=15 +char id=248 x=409 y=44 width=9 height=9 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=15 +char id=249 x=889 y=29 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=250 x=764 y=29 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=251 x=909 y=29 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=252 x=617 y=43 width=7 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=253 x=743 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=254 x=731 y=0 width=9 height=13 xoffset=-1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=255 x=355 y=16 width=9 height=12 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=256 x=620 y=16 width=11 height=11 xoffset=0 yoffset=1 xadvance=9 page=0 chnl=15 +char id=257 x=490 y=44 width=8 height=9 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=15 +char id=258 x=361 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=259 x=731 y=30 width=8 height=10 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=260 x=56 y=17 width=11 height=12 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=261 x=647 y=43 width=7 height=9 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=262 x=538 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=263 x=709 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=264 x=551 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=265 x=969 y=28 width=7 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=266 x=278 y=16 width=10 height=12 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=267 x=657 y=43 width=7 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=268 x=525 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=269 x=621 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=270 x=178 y=0 width=12 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=271 x=79 y=31 width=10 height=10 xoffset=1 yoffset=2 xadvance=8 page=0 chnl=15 +char id=272 x=211 y=44 width=12 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=273 x=386 y=31 width=9 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=274 x=634 y=16 width=11 height=11 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=15 +char id=275 x=637 y=43 width=7 height=9 xoffset=1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=276 x=98 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=277 x=720 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=278 x=126 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=279 x=676 y=43 width=6 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=280 x=84 y=16 width=11 height=12 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=281 x=667 y=43 width=6 height=9 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=282 x=112 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=283 x=753 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=284 x=668 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=285 x=815 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=286 x=642 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=287 x=863 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=288 x=252 y=16 width=10 height=12 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=289 x=367 y=16 width=9 height=12 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=290 x=16 y=0 width=10 height=14 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=291 x=41 y=0 width=9 height=14 xoffset=0 yoffset=1 xadvance=6 page=0 chnl=15 +char id=292 x=162 y=0 width=13 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=293 x=755 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=15 +char id=294 x=117 y=44 width=13 height=9 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=295 x=786 y=29 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=296 x=343 y=16 width=9 height=12 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=297 x=567 y=44 width=7 height=9 xoffset=0 yoffset=3 xadvance=3 page=0 chnl=15 +char id=298 x=687 y=16 width=8 height=11 xoffset=0 yoffset=1 xadvance=4 page=0 chnl=15 +char id=299 x=780 y=42 width=7 height=8 xoffset=0 yoffset=4 xadvance=3 page=0 chnl=15 +char id=300 x=779 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=301 x=597 y=44 width=7 height=9 xoffset=0 yoffset=3 xadvance=3 page=0 chnl=15 +char id=302 x=448 y=16 width=8 height=12 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=15 +char id=303 x=571 y=16 width=6 height=12 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=304 x=459 y=16 width=8 height=12 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=305 x=0 y=58 width=5 height=7 xoffset=0 yoffset=5 xadvance=3 page=0 chnl=15 +char id=306 x=844 y=16 width=13 height=10 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=307 x=851 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=308 x=839 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=15 +char id=309 x=827 y=0 width=9 height=13 xoffset=-2 yoffset=2 xadvance=3 page=0 chnl=15 +char id=310 x=130 y=0 width=13 height=13 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=311 x=29 y=0 width=9 height=14 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=312 x=862 y=42 width=9 height=7 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=313 x=707 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=314 x=911 y=0 width=8 height=13 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=15 +char id=315 x=791 y=0 width=9 height=13 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=316 x=53 y=0 width=7 height=14 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=317 x=118 y=31 width=10 height=10 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=318 x=511 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=319 x=445 y=44 width=9 height=9 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=320 x=879 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=321 x=385 y=44 width=9 height=9 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=15 +char id=322 x=0 y=45 width=6 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=323 x=98 y=0 width=13 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=324 x=314 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=325 x=114 y=0 width=13 height=13 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=326 x=709 y=16 width=8 height=11 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=327 x=146 y=0 width=13 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=328 x=266 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=329 x=610 y=30 width=8 height=10 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=330 x=903 y=16 width=11 height=10 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=15 +char id=331 x=643 y=30 width=8 height=10 xoffset=0 yoffset=5 xadvance=6 page=0 chnl=15 +char id=332 x=317 y=16 width=10 height=12 xoffset=1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=333 x=534 y=44 width=8 height=9 xoffset=1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=334 x=512 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=335 x=676 y=30 width=8 height=10 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=336 x=445 y=0 width=11 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=337 x=218 y=31 width=9 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=338 x=811 y=16 width=14 height=10 xoffset=1 yoffset=2 xadvance=12 page=0 chnl=15 +char id=339 x=849 y=42 width=10 height=7 xoffset=1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=340 x=655 y=0 width=10 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=341 x=742 y=30 width=8 height=10 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=342 x=629 y=0 width=10 height=13 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=343 x=720 y=16 width=8 height=11 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=15 +char id=344 x=140 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=345 x=665 y=30 width=8 height=10 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=346 x=616 y=0 width=10 height=13 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=15 +char id=347 x=478 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=348 x=767 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=15 +char id=349 x=859 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=350 x=803 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=15 +char id=351 x=929 y=29 width=7 height=10 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=15 +char id=352 x=603 y=0 width=10 height=13 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=15 +char id=353 x=445 y=31 width=8 height=10 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=15 +char id=354 x=304 y=16 width=10 height=12 xoffset=1 yoffset=3 xadvance=8 page=0 chnl=15 +char id=355 x=751 y=16 width=6 height=11 xoffset=0 yoffset=4 xadvance=3 page=0 chnl=15 +char id=356 x=875 y=0 width=9 height=13 xoffset=2 yoffset=0 xadvance=8 page=0 chnl=15 +char id=357 x=456 y=31 width=8 height=10 xoffset=1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=358 x=373 y=44 width=9 height=9 xoffset=2 yoffset=3 xadvance=8 page=0 chnl=15 +char id=359 x=685 y=43 width=5 height=9 xoffset=1 yoffset=4 xadvance=3 page=0 chnl=15 +char id=360 x=28 y=17 width=11 height=12 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=361 x=556 y=44 width=8 height=9 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=362 x=0 y=17 width=11 height=12 xoffset=2 yoffset=1 xadvance=9 page=0 chnl=15 +char id=363 x=607 y=43 width=7 height=9 xoffset=1 yoffset=4 xadvance=6 page=0 chnl=15 +char id=364 x=207 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=365 x=434 y=31 width=8 height=10 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=15 +char id=366 x=221 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=367 x=741 y=16 width=7 height=11 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=368 x=235 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=369 x=350 y=31 width=9 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=370 x=154 y=16 width=11 height=12 xoffset=2 yoffset=3 xadvance=9 page=0 chnl=15 +char id=371 x=587 y=44 width=7 height=9 xoffset=1 yoffset=5 xadvance=6 page=0 chnl=15 +char id=372 x=81 y=0 width=14 height=13 xoffset=2 yoffset=0 xadvance=12 page=0 chnl=15 +char id=373 x=157 y=31 width=10 height=10 xoffset=2 yoffset=2 xadvance=9 page=0 chnl=15 +char id=374 x=459 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=375 x=887 y=0 width=9 height=13 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=376 x=224 y=16 width=11 height=12 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=377 x=305 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=378 x=422 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=379 x=14 y=17 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=380 x=457 y=44 width=8 height=9 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=15 +char id=381 x=238 y=16 width=11 height=12 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=15 +char id=382 x=326 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=383 x=338 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=15 +char id=399 x=144 y=31 width=10 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=402 x=590 y=0 width=10 height=13 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=416 x=1006 y=0 width=12 height=12 xoffset=1 yoffset=1 xadvance=9 page=0 chnl=15 +char id=417 x=745 y=43 width=9 height=8 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=15 +char id=431 x=991 y=0 width=12 height=12 xoffset=2 yoffset=1 xadvance=10 page=0 chnl=15 +char id=432 x=757 y=43 width=9 height=8 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=15 +char id=461 x=976 y=0 width=12 height=12 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=462 x=698 y=30 width=8 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=463 x=379 y=16 width=9 height=12 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=15 +char id=464 x=839 y=29 width=7 height=10 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=15 +char id=465 x=577 y=0 width=10 height=13 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=15 +char id=466 x=599 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=467 x=319 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=468 x=588 y=31 width=8 height=10 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=469 x=333 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=470 x=698 y=16 width=8 height=11 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=471 x=375 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=472 x=426 y=16 width=8 height=12 xoffset=1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=473 x=389 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=474 x=470 y=16 width=8 height=12 xoffset=1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=475 x=403 y=0 width=11 height=13 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=15 +char id=476 x=533 y=16 width=7 height=12 xoffset=1 yoffset=1 xadvance=6 page=0 chnl=15 +char id=506 x=249 y=0 width=11 height=13 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=507 x=719 y=0 width=9 height=13 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=15 +char id=508 x=63 y=0 width=15 height=13 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=15 +char id=509 x=53 y=32 width=10 height=10 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=15 +char id=510 x=0 y=0 width=13 height=14 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=511 x=675 y=16 width=9 height=11 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=710 x=268 y=56 width=5 height=3 xoffset=2 yoffset=2 xadvance=4 page=0 chnl=15 +char id=711 x=276 y=56 width=5 height=3 xoffset=3 yoffset=2 xadvance=4 page=0 chnl=15 +char id=713 x=400 y=56 width=5 height=2 xoffset=2 yoffset=3 xadvance=4 page=0 chnl=15 +char id=728 x=284 y=56 width=5 height=3 xoffset=3 yoffset=3 xadvance=4 page=0 chnl=15 +char id=729 x=418 y=56 width=2 height=2 xoffset=4 yoffset=3 xadvance=4 page=0 chnl=15 +char id=730 x=233 y=56 width=3 height=4 xoffset=3 yoffset=2 xadvance=4 page=0 chnl=15 +char id=731 x=312 y=56 width=3 height=3 xoffset=0 yoffset=11 xadvance=4 page=0 chnl=15 +char id=732 x=366 y=56 width=6 height=2 xoffset=2 yoffset=3 xadvance=4 page=0 chnl=15 +char id=733 x=249 y=56 width=7 height=3 xoffset=2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=768 x=318 y=56 width=3 height=3 xoffset=-1 yoffset=2 xadvance=0 page=0 chnl=15 +char id=769 x=292 y=56 width=4 height=3 xoffset=-1 yoffset=2 xadvance=0 page=0 chnl=15 +char id=771 x=375 y=56 width=6 height=2 xoffset=-2 yoffset=3 xadvance=0 page=0 chnl=15 +char id=777 x=324 y=56 width=3 height=3 xoffset=-1 yoffset=2 xadvance=0 page=0 chnl=15 +char id=803 x=423 y=56 width=2 height=2 xoffset=-5 yoffset=12 xadvance=0 page=0 chnl=15 +char id=8204 x=513 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8205 x=517 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8206 x=521 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8207 x=525 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8211 x=464 y=56 width=8 height=1 xoffset=0 yoffset=8 xadvance=6 page=0 chnl=15 +char id=8212 x=428 y=56 width=15 height=1 xoffset=0 yoffset=8 xadvance=13 page=0 chnl=15 +char id=8213 x=446 y=56 width=15 height=1 xoffset=0 yoffset=8 xadvance=13 page=0 chnl=15 +char id=8215 x=259 y=56 width=6 height=3 xoffset=0 yoffset=12 xadvance=6 page=0 chnl=15 +char id=8216 x=215 y=56 width=3 height=4 xoffset=3 yoffset=2 xadvance=3 page=0 chnl=15 +char id=8217 x=227 y=56 width=3 height=4 xoffset=3 yoffset=2 xadvance=3 page=0 chnl=15 +char id=8218 x=221 y=56 width=3 height=4 xoffset=0 yoffset=10 xadvance=3 page=0 chnl=15 +char id=8219 x=203 y=56 width=3 height=4 xoffset=3 yoffset=2 xadvance=3 page=0 chnl=15 +char id=8220 x=174 y=56 width=5 height=4 xoffset=3 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8221 x=166 y=56 width=5 height=4 xoffset=3 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8222 x=149 y=56 width=6 height=4 xoffset=0 yoffset=10 xadvance=6 page=0 chnl=15 +char id=8224 x=562 y=16 width=6 height=12 xoffset=2 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8225 x=437 y=16 width=8 height=12 xoffset=1 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8226 x=158 y=56 width=5 height=4 xoffset=1 yoffset=5 xadvance=4 page=0 chnl=15 +char id=8230 x=330 y=56 width=11 height=2 xoffset=1 yoffset=10 xadvance=13 page=0 chnl=15 +char id=8234 x=497 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8235 x=501 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8236 x=505 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8237 x=509 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8238 x=529 y=56 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8240 x=589 y=16 width=14 height=11 xoffset=1 yoffset=2 xadvance=13 page=0 chnl=15 +char id=8242 x=189 y=56 width=4 height=4 xoffset=2 yoffset=2 xadvance=3 page=0 chnl=15 +char id=8243 x=139 y=56 width=7 height=4 xoffset=2 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8249 x=70 y=57 width=5 height=6 xoffset=1 yoffset=6 xadvance=3 page=0 chnl=15 +char id=8250 x=62 y=58 width=5 height=6 xoffset=0 yoffset=6 xadvance=3 page=0 chnl=15 +char id=8252 x=92 y=31 width=10 height=10 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=15 +char id=8254 x=355 y=56 width=8 height=2 xoffset=2 yoffset=3 xadvance=6 page=0 chnl=15 +char id=8260 x=917 y=16 width=11 height=10 xoffset=-2 yoffset=2 xadvance=2 page=0 chnl=15 +char id=8355 x=226 y=44 width=11 height=9 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=15 +char id=8356 x=182 y=31 width=9 height=10 xoffset=0 yoffset=2 xadvance=6 page=0 chnl=15 +char id=8359 x=794 y=16 width=14 height=10 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=15 +char id=8362 x=149 y=44 width=13 height=9 xoffset=0 yoffset=3 xadvance=11 page=0 chnl=15 +char id=8363 x=662 y=16 width=10 height=11 xoffset=0 yoffset=1 xadvance=7 page=0 chnl=15 +char id=8364 x=931 y=16 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=8453 x=959 y=15 width=11 height=10 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=15 +char id=8467 x=654 y=30 width=8 height=10 xoffset=1 yoffset=2 xadvance=5 page=0 chnl=15 +char id=8470 x=760 y=16 width=14 height=10 xoffset=0 yoffset=3 xadvance=11 page=0 chnl=15 +char id=8482 x=790 y=42 width=15 height=7 xoffset=2 yoffset=2 xadvance=13 page=0 chnl=15 +char id=8486 x=860 y=16 width=12 height=10 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=15 +char id=8494 x=886 y=42 width=8 height=7 xoffset=1 yoffset=5 xadvance=7 page=0 chnl=15 +kernings count=620 +kerning first=212 second=260 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=44 second=8217 amount=-1 +kerning first=44 second=8220 amount=-1 +kerning first=44 second=8221 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=45 second=69 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=45 second=74 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=45 second=86 amount=-1 +kerning first=45 second=87 amount=-1 +kerning first=45 second=89 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=212 second=65 amount=-1 +kerning first=211 second=260 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=211 second=65 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=45 second=195 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=45 second=221 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=208 second=260 amount=-1 +kerning first=208 second=256 amount=-1 +kerning first=208 second=198 amount=-1 +kerning first=208 second=197 amount=-1 +kerning first=208 second=196 amount=-1 +kerning first=208 second=194 amount=-1 +kerning first=208 second=193 amount=-1 +kerning first=208 second=192 amount=-1 +kerning first=208 second=65 amount=-1 +kerning first=206 second=8249 amount=-1 +kerning first=206 second=171 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=206 second=45 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=199 second=45 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=197 second=8221 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=197 second=8220 amount=-1 +kerning first=197 second=8217 amount=-1 +kerning first=197 second=374 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=197 second=356 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=197 second=354 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=197 second=221 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=197 second=89 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=197 second=87 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=197 second=86 amount=-1 +kerning first=45 second=330 amount=-1 +kerning first=197 second=84 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=196 second=8221 amount=-1 +kerning first=196 second=8220 amount=-1 +kerning first=196 second=8217 amount=-1 +kerning first=196 second=374 amount=-1 +kerning first=196 second=356 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=196 second=354 amount=-1 +kerning first=45 second=356 amount=-1 +kerning first=196 second=221 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=196 second=89 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=196 second=87 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=196 second=86 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=196 second=84 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=45 second=374 amount=-1 +kerning first=195 second=8249 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=195 second=8221 amount=-1 +kerning first=195 second=8220 amount=-1 +kerning first=195 second=8217 amount=-1 +kerning first=195 second=374 amount=-1 +kerning first=195 second=356 amount=-1 +kerning first=195 second=354 amount=-1 +kerning first=195 second=221 amount=-1 +kerning first=195 second=171 amount=-1 +kerning first=195 second=89 amount=-1 +kerning first=195 second=87 amount=-1 +kerning first=195 second=86 amount=-1 +kerning first=195 second=84 amount=-1 +kerning first=195 second=45 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=194 second=8221 amount=-1 +kerning first=194 second=8220 amount=-1 +kerning first=194 second=8217 amount=-1 +kerning first=194 second=374 amount=-1 +kerning first=194 second=356 amount=-1 +kerning first=194 second=354 amount=-1 +kerning first=194 second=221 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=194 second=89 amount=-1 +kerning first=194 second=87 amount=-1 +kerning first=194 second=86 amount=-1 +kerning first=194 second=84 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=193 second=8221 amount=-1 +kerning first=193 second=8220 amount=-1 +kerning first=193 second=8217 amount=-1 +kerning first=193 second=374 amount=-1 +kerning first=46 second=8217 amount=-1 +kerning first=46 second=8220 amount=-1 +kerning first=46 second=8221 amount=-1 +kerning first=193 second=356 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=193 second=354 amount=-1 +kerning first=193 second=221 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=193 second=89 amount=-1 +kerning first=193 second=87 amount=-1 +kerning first=65 second=84 amount=-1 +kerning first=193 second=86 amount=-1 +kerning first=65 second=86 amount=-1 +kerning first=65 second=87 amount=-1 +kerning first=65 second=89 amount=-1 +kerning first=193 second=84 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=192 second=8221 amount=-1 +kerning first=192 second=8220 amount=-1 +kerning first=192 second=8217 amount=-1 +kerning first=192 second=374 amount=-1 +kerning first=192 second=356 amount=-1 +kerning first=192 second=354 amount=-1 +kerning first=192 second=221 amount=-1 +kerning first=192 second=171 amount=-1 +kerning first=192 second=89 amount=-1 +kerning first=192 second=87 amount=-1 +kerning first=192 second=86 amount=-1 +kerning first=192 second=84 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=187 second=374 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=65 second=221 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=187 second=330 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=187 second=296 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=187 second=221 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=187 second=201 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=187 second=195 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=187 second=89 amount=-1 +kerning first=187 second=87 amount=-1 +kerning first=187 second=86 amount=-1 +kerning first=187 second=85 amount=-1 +kerning first=187 second=84 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=187 second=74 amount=-1 +kerning first=187 second=73 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=187 second=70 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=65 second=354 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=65 second=356 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=121 second=44 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=65 second=374 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=118 second=46 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=113 second=106 amount=1 +kerning first=110 second=8221 amount=-1 +kerning first=110 second=8220 amount=-1 +kerning first=110 second=8217 amount=-1 +kerning first=109 second=8221 amount=-1 +kerning first=109 second=8220 amount=-1 +kerning first=109 second=8217 amount=-1 +kerning first=104 second=8221 amount=-1 +kerning first=65 second=8217 amount=-1 +kerning first=65 second=8220 amount=-1 +kerning first=65 second=8221 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=104 second=8220 amount=-1 +kerning first=104 second=8217 amount=-1 +kerning first=102 second=254 amount=1 +kerning first=102 second=98 amount=1 +kerning first=89 second=8249 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=89 second=291 amount=-1 +kerning first=66 second=46 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=89 second=289 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=89 second=287 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=66 second=74 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=89 second=260 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=89 second=256 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=66 second=90 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=89 second=225 amount=-1 +kerning first=89 second=198 amount=-1 +kerning first=89 second=197 amount=-1 +kerning first=89 second=196 amount=-1 +kerning first=66 second=103 amount=-1 +kerning first=89 second=194 amount=-1 +kerning first=89 second=193 amount=-1 +kerning first=89 second=192 amount=-1 +kerning first=89 second=171 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=89 second=74 amount=-1 +kerning first=89 second=65 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=89 second=45 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=87 second=8249 amount=-1 +kerning first=87 second=291 amount=-1 +kerning first=87 second=289 amount=-1 +kerning first=87 second=287 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=87 second=261 amount=-1 +kerning first=87 second=260 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=87 second=256 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=87 second=198 amount=-1 +kerning first=87 second=197 amount=-1 +kerning first=87 second=196 amount=-1 +kerning first=87 second=194 amount=-1 +kerning first=87 second=193 amount=-1 +kerning first=87 second=192 amount=-1 +kerning first=87 second=171 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=87 second=65 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=87 second=45 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=86 second=8249 amount=-1 +kerning first=86 second=291 amount=-1 +kerning first=86 second=289 amount=-1 +kerning first=86 second=287 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=86 second=260 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=86 second=256 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=86 second=198 amount=-1 +kerning first=86 second=197 amount=-1 +kerning first=86 second=196 amount=-1 +kerning first=86 second=194 amount=-1 +kerning first=86 second=193 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=86 second=192 amount=-1 +kerning first=86 second=171 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=86 second=103 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=86 second=65 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=86 second=45 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=85 second=8249 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=85 second=291 amount=-1 +kerning first=85 second=289 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=85 second=287 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=66 second=287 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=66 second=289 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=66 second=291 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=85 second=171 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=85 second=46 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=85 second=45 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=85 second=44 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=66 second=330 amount=-1 +kerning first=84 second=291 amount=-1 +kerning first=84 second=289 amount=-1 +kerning first=84 second=287 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=84 second=260 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=84 second=256 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=84 second=198 amount=-1 +kerning first=84 second=197 amount=-1 +kerning first=84 second=196 amount=-1 +kerning first=84 second=194 amount=-1 +kerning first=84 second=193 amount=-1 +kerning first=84 second=192 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=84 second=65 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=83 second=260 amount=-1 +kerning first=66 second=377 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=66 second=379 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=66 second=381 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=83 second=256 amount=-1 +kerning first=83 second=198 amount=-1 +kerning first=83 second=197 amount=-1 +kerning first=83 second=196 amount=-1 +kerning first=83 second=194 amount=-1 +kerning first=83 second=193 amount=-1 +kerning first=83 second=192 amount=-1 +kerning first=83 second=65 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=66 second=8217 amount=-1 +kerning first=66 second=8220 amount=-1 +kerning first=66 second=8221 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=80 second=198 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=80 second=46 amount=-1 +kerning first=80 second=44 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=74 second=8249 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=74 second=198 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=74 second=171 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=74 second=45 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=67 second=8249 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I_0.png b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I_0.png new file mode 100644 index 000000000..42977ca06 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16I_0.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555.fnt b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555.fnt new file mode 100644 index 000000000..61497cf7f --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555.fnt @@ -0,0 +1,1031 @@ +info face="FreeSerif" size=16 bold=0 italic=1 charset="" unicode=1 stretchH=100 smooth=1 aa=2 padding=5,5,5,5 spacing=3,3 outline=0 +common lineHeight=16 base=12 scaleW=512 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="BM-FreeSerif16Ipad5555_0.png" +chars count=406 +char id=-1 x=352 y=152 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=32 x=427 y=367 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=3 page=0 chnl=15 +char id=33 x=76 y=271 width=15 height=20 xoffset=-4 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=34 x=276 y=353 width=14 height=14 xoffset=-2 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=35 x=312 y=290 width=18 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=36 x=487 y=103 width=19 height=22 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=37 x=188 y=176 width=20 height=20 xoffset=-3 yoffset=-3 xadvance=11 page=0 chnl=15 +char id=38 x=448 y=152 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=39 x=373 y=353 width=12 height=14 xoffset=-2 yoffset=-3 xadvance=2 page=0 chnl=15 +char id=40 x=248 y=128 width=17 height=22 xoffset=-4 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=41 x=268 y=128 width=16 height=22 xoffset=-5 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=42 x=466 y=331 width=16 height=16 xoffset=-3 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=43 x=111 y=338 width=18 height=17 xoffset=-4 yoffset=0 xadvance=7 page=0 chnl=15 +char id=44 x=293 y=353 width=13 height=14 xoffset=-5 yoffset=5 xadvance=3 page=0 chnl=15 +char id=45 x=393 y=368 width=14 height=11 xoffset=-4 yoffset=3 xadvance=4 page=0 chnl=15 +char id=46 x=256 y=374 width=12 height=12 xoffset=-4 yoffset=5 xadvance=3 page=0 chnl=15 +char id=47 x=457 y=198 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=48 x=478 y=198 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=49 x=57 y=271 width=16 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=50 x=416 y=175 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=51 x=231 y=222 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=52 x=21 y=225 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=53 x=482 y=175 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=54 x=0 y=202 width=19 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=55 x=42 y=225 width=18 height=20 xoffset=-3 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=56 x=63 y=225 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=57 x=84 y=225 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=58 x=371 y=333 width=14 height=17 xoffset=-4 yoffset=0 xadvance=3 page=0 chnl=15 +char id=59 x=495 y=75 width=14 height=19 xoffset=-5 yoffset=0 xadvance=3 page=0 chnl=15 +char id=60 x=319 y=312 width=19 height=18 xoffset=-4 yoffset=0 xadvance=7 page=0 chnl=15 +char id=61 x=127 y=358 width=19 height=14 xoffset=-5 yoffset=1 xadvance=7 page=0 chnl=15 +char id=62 x=297 y=312 width=19 height=18 xoffset=-5 yoffset=-1 xadvance=7 page=0 chnl=15 +char id=63 x=443 y=244 width=16 height=20 xoffset=-3 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=64 x=48 y=179 width=21 height=20 xoffset=-3 yoffset=-3 xadvance=12 page=0 chnl=15 +char id=65 x=303 y=176 width=20 height=20 xoffset=-5 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=66 x=69 y=294 width=20 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=67 x=96 y=179 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=68 x=316 y=268 width=22 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=69 x=463 y=267 width=21 height=19 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=70 x=415 y=267 width=21 height=19 xoffset=-5 yoffset=-2 xadvance=7 page=0 chnl=15 +char id=71 x=119 y=179 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=72 x=186 y=271 width=23 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=73 x=333 y=290 width=18 height=19 xoffset=-5 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=74 x=286 y=199 width=19 height=20 xoffset=-5 yoffset=-2 xadvance=5 page=0 chnl=15 +char id=75 x=290 y=268 width=23 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=76 x=181 y=293 width=19 height=19 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=77 x=130 y=271 width=25 height=19 xoffset=-5 yoffset=-2 xadvance=12 page=0 chnl=15 +char id=78 x=251 y=153 width=23 height=20 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=79 x=142 y=179 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=80 x=46 y=294 width=20 height=19 xoffset=-5 yoffset=-2 xadvance=7 page=0 chnl=15 +char id=81 x=239 y=103 width=20 height=22 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=82 x=0 y=294 width=20 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=83 x=22 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=7 page=0 chnl=15 +char id=84 x=115 y=294 width=19 height=19 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=85 x=24 y=179 width=21 height=20 xoffset=-3 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=86 x=257 y=176 width=20 height=20 xoffset=-2 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=87 x=170 y=153 width=24 height=20 xoffset=-3 yoffset=-2 xadvance=12 page=0 chnl=15 +char id=88 x=238 y=268 width=23 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=89 x=487 y=267 width=21 height=19 xoffset=-3 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=90 x=439 y=267 width=21 height=19 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=91 x=0 y=130 width=18 height=22 xoffset=-5 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=92 x=496 y=26 width=12 height=20 xoffset=-3 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=93 x=208 y=128 width=17 height=22 xoffset=-5 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=94 x=428 y=331 width=16 height=16 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=95 x=122 y=376 width=18 height=12 xoffset=-6 yoffset=7 xadvance=6 page=0 chnl=15 +char id=96 x=34 y=377 width=13 height=13 xoffset=-2 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=97 x=215 y=337 width=17 height=17 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=98 x=404 y=244 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=99 x=195 y=337 width=17 height=17 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=100 x=336 y=222 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=101 x=315 y=333 width=16 height=17 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=102 x=66 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=103 x=242 y=199 width=19 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=104 x=415 y=198 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=105 x=38 y=271 width=16 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=106 x=110 y=79 width=18 height=23 xoffset=-7 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=107 x=372 y=175 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=108 x=424 y=244 width=16 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=109 x=454 y=311 width=22 height=17 xoffset=-5 yoffset=0 xadvance=10 page=0 chnl=15 +char id=110 x=132 y=338 width=18 height=17 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=111 x=295 y=333 width=17 height=17 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=112 x=110 y=202 width=19 height=20 xoffset=-6 yoffset=0 xadvance=6 page=0 chnl=15 +char id=113 x=126 y=225 width=18 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=114 x=275 y=333 width=17 height=17 xoffset=-5 yoffset=0 xadvance=4 page=0 chnl=15 +char id=115 x=334 y=333 width=16 height=17 xoffset=-5 yoffset=0 xadvance=5 page=0 chnl=15 +char id=116 x=256 y=312 width=15 height=19 xoffset=-4 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=117 x=255 y=336 width=17 height=17 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=118 x=235 y=337 width=17 height=17 xoffset=-3 yoffset=0 xadvance=6 page=0 chnl=15 +char id=119 x=479 y=311 width=20 height=17 xoffset=-3 yoffset=0 xadvance=9 page=0 chnl=15 +char id=120 x=174 y=337 width=18 height=17 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=121 x=308 y=199 width=19 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=122 x=153 y=337 width=18 height=17 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=123 x=325 y=128 width=16 height=22 xoffset=-3 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=124 x=94 y=271 width=15 height=20 xoffset=-5 yoffset=-3 xadvance=2 page=0 chnl=15 +char id=125 x=188 y=128 width=17 height=22 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=126 x=388 y=352 width=17 height=13 xoffset=-4 yoffset=2 xadvance=7 page=0 chnl=15 +char id=160 x=441 y=366 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=3 page=0 chnl=15 +char id=161 x=494 y=52 width=15 height=20 xoffset=-5 yoffset=0 xadvance=4 page=0 chnl=15 +char id=162 x=42 y=248 width=18 height=20 xoffset=-5 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=163 x=438 y=175 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=164 x=274 y=312 width=20 height=18 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=165 x=247 y=290 width=19 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=166 x=112 y=271 width=15 height=20 xoffset=-5 yoffset=-3 xadvance=2 page=0 chnl=15 +char id=167 x=168 y=128 width=17 height=22 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=168 x=202 y=374 width=15 height=12 xoffset=-3 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=169 x=443 y=128 width=21 height=21 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=170 x=110 y=358 width=14 height=15 xoffset=-3 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=171 x=388 y=333 width=17 height=16 xoffset=-4 yoffset=1 xadvance=6 page=0 chnl=15 +char id=172 x=53 y=358 width=18 height=15 xoffset=-4 yoffset=1 xadvance=7 page=0 chnl=15 +char id=173 x=410 y=367 width=14 height=11 xoffset=-4 yoffset=3 xadvance=4 page=0 chnl=15 +char id=174 x=371 y=128 width=21 height=21 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=175 x=220 y=374 width=15 height=12 xoffset=-3 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=176 x=92 y=358 width=15 height=15 xoffset=-2 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=177 x=92 y=294 width=20 height=19 xoffset=-5 yoffset=-2 xadvance=7 page=0 chnl=15 +char id=178 x=447 y=331 width=16 height=16 xoffset=-4 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=179 x=18 y=358 width=15 height=16 xoffset=-4 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=180 x=17 y=377 width=14 height=13 xoffset=-2 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=181 x=220 y=199 width=19 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=182 x=465 y=103 width=19 height=22 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=183 x=271 y=373 width=12 height=12 xoffset=-3 yoffset=3 xadvance=3 page=0 chnl=15 +char id=184 x=242 y=357 width=14 height=14 xoffset=-5 yoffset=6 xadvance=4 page=0 chnl=15 +char id=185 x=36 y=358 width=14 height=16 xoffset=-3 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=186 x=74 y=358 width=15 height=15 xoffset=-3 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=187 x=408 y=332 width=17 height=16 xoffset=-5 yoffset=1 xadvance=6 page=0 chnl=15 +char id=188 x=0 y=179 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=189 x=72 y=179 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=190 x=328 y=153 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=191 x=19 y=271 width=16 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=192 x=184 y=52 width=20 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=193 x=323 y=0 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=194 x=351 y=78 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=195 x=72 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=196 x=96 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=197 x=207 y=52 width=20 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=198 x=158 y=271 width=25 height=19 xoffset=-5 yoffset=-2 xadvance=12 page=0 chnl=15 +char id=199 x=358 y=26 width=20 height=23 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=200 x=240 y=26 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=201 x=216 y=26 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=202 x=120 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=203 x=144 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=204 x=131 y=79 width=18 height=23 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=205 x=88 y=79 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=206 x=126 y=130 width=18 height=22 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=207 x=147 y=130 width=18 height=22 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=208 x=341 y=268 width=22 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=209 x=178 y=78 width=23 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=210 x=473 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=211 x=312 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=212 x=335 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=213 x=285 y=103 width=20 height=22 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=214 x=354 y=103 width=20 height=22 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=215 x=68 y=338 width=19 height=17 xoffset=-5 yoffset=0 xadvance=7 page=0 chnl=15 +char id=216 x=152 y=78 width=23 height=22 xoffset=-5 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=217 x=443 y=0 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=218 x=96 y=27 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=219 x=0 y=27 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=220 x=399 y=78 width=21 height=22 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=221 x=467 y=0 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=222 x=23 y=294 width=20 height=19 xoffset=-5 yoffset=-2 xadvance=7 page=0 chnl=15 +char id=223 x=88 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=224 x=244 y=245 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=225 x=105 y=225 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=226 x=284 y=245 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=227 x=459 y=289 width=18 height=19 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=228 x=417 y=289 width=18 height=19 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=229 x=84 y=155 width=17 height=21 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=230 x=0 y=338 width=20 height=17 xoffset=-5 yoffset=0 xadvance=8 page=0 chnl=15 +char id=231 x=104 y=248 width=17 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=232 x=481 y=244 width=16 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=233 x=144 y=248 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=234 x=184 y=248 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=235 x=120 y=316 width=17 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=236 x=462 y=244 width=16 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=237 x=84 y=248 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=238 x=344 y=245 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=239 x=20 y=316 width=17 height=19 xoffset=-5 yoffset=-2 xadvance=3 page=0 chnl=15 +char id=240 x=63 y=248 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=241 x=225 y=292 width=19 height=19 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=242 x=364 y=245 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=243 x=0 y=248 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=244 x=324 y=245 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=245 x=396 y=289 width=18 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=246 x=375 y=290 width=18 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=247 x=385 y=312 width=18 height=18 xoffset=-4 yoffset=-1 xadvance=7 page=0 chnl=15 +char id=248 x=203 y=293 width=19 height=19 xoffset=-5 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=249 x=224 y=245 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=250 x=483 y=221 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=251 x=264 y=245 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=252 x=100 y=316 width=17 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=253 x=296 y=52 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=254 x=274 y=52 width=19 height=23 xoffset=-6 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=255 x=399 y=103 width=19 height=22 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=256 x=395 y=128 width=21 height=21 xoffset=-5 yoffset=-4 xadvance=9 page=0 chnl=15 +char id=257 x=354 y=290 width=18 height=19 xoffset=-5 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=258 x=120 y=26 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=259 x=420 y=221 width=18 height=20 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=260 x=375 y=78 width=21 height=22 xoffset=-5 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=261 x=160 y=315 width=17 height=19 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=262 x=427 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=263 x=378 y=221 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=264 x=450 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=265 x=384 y=244 width=17 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=266 x=262 y=103 width=20 height=22 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=267 x=180 y=315 width=17 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=268 x=404 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=269 x=210 y=222 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=270 x=298 y=0 width=22 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=271 x=211 y=176 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=8 page=0 chnl=15 +char id=272 x=366 y=268 width=22 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=273 x=264 y=199 width=19 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=274 x=419 y=128 width=21 height=21 xoffset=-5 yoffset=-4 xadvance=8 page=0 chnl=15 +char id=275 x=140 y=315 width=17 height=19 xoffset=-4 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=276 x=447 y=78 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=277 x=399 y=221 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=278 x=0 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=279 x=219 y=315 width=16 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=280 x=423 y=78 width=21 height=22 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=281 x=200 y=315 width=16 height=19 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=282 x=471 y=78 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=283 x=462 y=221 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=284 x=161 y=52 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=285 x=428 y=52 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=286 x=115 y=53 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=287 x=22 y=79 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=288 x=216 y=103 width=20 height=22 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=289 x=421 y=103 width=19 height=22 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=290 x=26 y=0 width=20 height=24 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=291 x=71 y=0 width=19 height=24 xoffset=-5 yoffset=-4 xadvance=6 page=0 chnl=15 +char id=292 x=272 y=0 width=23 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=293 x=318 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=6 page=0 chnl=15 +char id=294 x=212 y=270 width=23 height=19 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=295 x=21 y=248 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=296 x=377 y=103 width=19 height=22 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=297 x=0 y=316 width=17 height=19 xoffset=-5 yoffset=-2 xadvance=3 page=0 chnl=15 +char id=298 x=0 y=155 width=18 height=21 xoffset=-5 yoffset=-4 xadvance=4 page=0 chnl=15 +char id=299 x=406 y=311 width=17 height=18 xoffset=-5 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=300 x=362 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=301 x=60 y=316 width=17 height=19 xoffset=-5 yoffset=-2 xadvance=3 page=0 chnl=15 +char id=302 x=63 y=130 width=18 height=22 xoffset=-5 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=303 x=306 y=128 width=16 height=22 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=304 x=84 y=130 width=18 height=22 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=305 x=353 y=333 width=15 height=17 xoffset=-5 yoffset=0 xadvance=3 page=0 chnl=15 +char id=306 x=277 y=153 width=23 height=20 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=307 x=0 y=79 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=7 page=0 chnl=15 +char id=308 x=472 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=5 page=0 chnl=15 +char id=309 x=450 y=52 width=19 height=23 xoffset=-7 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=310 x=220 y=0 width=23 height=23 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=311 x=49 y=0 width=19 height=24 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=312 x=46 y=338 width=19 height=17 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=313 x=230 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=314 x=491 y=0 width=18 height=23 xoffset=-5 yoffset=-5 xadvance=3 page=0 chnl=15 +char id=315 x=384 y=52 width=19 height=23 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=316 x=93 y=0 width=17 height=24 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=317 x=280 y=176 width=20 height=20 xoffset=-5 yoffset=-3 xadvance=8 page=0 chnl=15 +char id=318 x=0 y=225 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=319 x=269 y=290 width=19 height=19 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=320 x=204 y=247 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=321 x=159 y=293 width=19 height=19 xoffset=-5 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=322 x=0 y=271 width=16 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=323 x=168 y=0 width=23 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=324 x=132 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=325 x=194 y=0 width=23 height=23 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=326 x=42 y=155 width=18 height=21 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=327 x=246 y=0 width=23 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=328 x=44 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=329 x=189 y=224 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=7 page=0 chnl=15 +char id=330 x=376 y=152 width=21 height=20 xoffset=-5 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=331 x=252 y=222 width=18 height=20 xoffset=-5 yoffset=0 xadvance=6 page=0 chnl=15 +char id=332 x=331 y=103 width=20 height=22 xoffset=-4 yoffset=-4 xadvance=9 page=0 chnl=15 +char id=333 x=438 y=289 width=18 height=19 xoffset=-4 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=334 x=381 y=26 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=335 x=315 y=222 width=18 height=20 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=336 x=264 y=26 width=21 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=337 x=460 y=175 width=19 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=338 x=224 y=153 width=24 height=20 xoffset=-4 yoffset=-3 xadvance=12 page=0 chnl=15 +char id=339 x=23 y=338 width=20 height=17 xoffset=-4 yoffset=0 xadvance=9 page=0 chnl=15 +char id=340 x=138 y=52 width=20 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=341 x=441 y=221 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=342 x=92 y=53 width=20 height=23 xoffset=-5 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=343 x=63 y=155 width=18 height=21 xoffset=-6 yoffset=0 xadvance=4 page=0 chnl=15 +char id=344 x=24 y=105 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=345 x=294 y=222 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=346 x=69 y=53 width=20 height=23 xoffset=-5 yoffset=-5 xadvance=7 page=0 chnl=15 +char id=347 x=436 y=198 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=348 x=340 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=7 page=0 chnl=15 +char id=349 x=164 y=248 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=350 x=406 y=52 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=7 page=0 chnl=15 +char id=351 x=304 y=245 width=17 height=20 xoffset=-5 yoffset=0 xadvance=5 page=0 chnl=15 +char id=352 x=46 y=53 width=20 height=23 xoffset=-5 yoffset=-5 xadvance=7 page=0 chnl=15 +char id=353 x=373 y=198 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=354 x=308 y=103 width=20 height=22 xoffset=-4 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=355 x=124 y=155 width=16 height=21 xoffset=-5 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=356 x=44 y=79 width=19 height=23 xoffset=-3 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=357 x=394 y=198 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=358 x=137 y=293 width=19 height=19 xoffset=-3 yoffset=-2 xadvance=8 page=0 chnl=15 +char id=359 x=238 y=314 width=15 height=19 xoffset=-4 yoffset=-1 xadvance=3 page=0 chnl=15 +char id=360 x=327 y=78 width=21 height=22 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=361 x=480 y=289 width=18 height=19 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=362 x=279 y=78 width=21 height=22 xoffset=-3 yoffset=-4 xadvance=9 page=0 chnl=15 +char id=363 x=80 y=316 width=17 height=19 xoffset=-4 yoffset=-1 xadvance=6 page=0 chnl=15 +char id=364 x=347 y=0 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=365 x=352 y=199 width=18 height=20 xoffset=-4 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=366 x=371 y=0 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=367 x=104 y=155 width=17 height=21 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=368 x=395 y=0 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=369 x=198 y=199 width=19 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=370 x=48 y=105 width=21 height=22 xoffset=-3 yoffset=-2 xadvance=9 page=0 chnl=15 +char id=371 x=40 y=316 width=17 height=19 xoffset=-4 yoffset=0 xadvance=6 page=0 chnl=15 +char id=372 x=141 y=0 width=24 height=23 xoffset=-3 yoffset=-5 xadvance=12 page=0 chnl=15 +char id=373 x=349 y=176 width=20 height=20 xoffset=-3 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=374 x=288 y=26 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=375 x=66 y=79 width=19 height=23 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=376 x=168 y=103 width=21 height=22 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=377 x=24 y=27 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=378 x=330 y=199 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=379 x=303 y=78 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=380 x=291 y=290 width=18 height=19 xoffset=-5 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=381 x=192 y=103 width=21 height=22 xoffset=-5 yoffset=-5 xadvance=8 page=0 chnl=15 +char id=382 x=154 y=202 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=383 x=176 y=201 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=399 x=326 y=176 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=402 x=23 y=53 width=20 height=23 xoffset=-6 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=416 x=254 y=78 width=22 height=22 xoffset=-4 yoffset=-4 xadvance=9 page=0 chnl=15 +char id=417 x=341 y=312 width=19 height=18 xoffset=-4 yoffset=-1 xadvance=7 page=0 chnl=15 +char id=431 x=229 y=78 width=22 height=22 xoffset=-3 yoffset=-4 xadvance=10 page=0 chnl=15 +char id=432 x=363 y=312 width=19 height=18 xoffset=-4 yoffset=-1 xadvance=7 page=0 chnl=15 +char id=461 x=204 y=78 width=22 height=22 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=462 x=357 y=222 width=18 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=463 x=443 y=103 width=19 height=22 xoffset=-5 yoffset=-5 xadvance=4 page=0 chnl=15 +char id=464 x=124 y=248 width=17 height=20 xoffset=-5 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=465 x=0 y=53 width=20 height=23 xoffset=-4 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=466 x=168 y=225 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=467 x=48 y=27 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=468 x=147 y=225 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=469 x=72 y=27 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=470 x=21 y=155 width=18 height=21 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=471 x=144 y=26 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=472 x=21 y=130 width=18 height=22 xoffset=-4 yoffset=-4 xadvance=6 page=0 chnl=15 +char id=473 x=168 y=26 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=474 x=105 y=130 width=18 height=22 xoffset=-4 yoffset=-4 xadvance=6 page=0 chnl=15 +char id=475 x=192 y=26 width=21 height=23 xoffset=-3 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=476 x=228 y=128 width=17 height=22 xoffset=-4 yoffset=-4 xadvance=6 page=0 chnl=15 +char id=506 x=419 y=0 width=21 height=23 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=507 x=252 y=52 width=19 height=23 xoffset=-5 yoffset=-5 xadvance=6 page=0 chnl=15 +char id=508 x=113 y=0 width=25 height=23 xoffset=-5 yoffset=-5 xadvance=12 page=0 chnl=15 +char id=509 x=165 y=178 width=20 height=20 xoffset=-5 yoffset=-3 xadvance=8 page=0 chnl=15 +char id=510 x=0 y=0 width=23 height=24 xoffset=-5 yoffset=-5 xadvance=9 page=0 chnl=15 +char id=511 x=490 y=128 width=19 height=21 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=710 x=447 y=350 width=15 height=13 xoffset=-3 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=711 x=465 y=350 width=15 height=13 xoffset=-2 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=713 x=238 y=374 width=15 height=12 xoffset=-3 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=728 x=483 y=350 width=15 height=13 xoffset=-2 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=729 x=286 y=370 width=12 height=12 xoffset=-1 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=730 x=357 y=353 width=13 height=14 xoffset=-2 yoffset=-3 xadvance=4 page=0 chnl=15 +char id=731 x=50 y=377 width=13 height=13 xoffset=-5 yoffset=6 xadvance=4 page=0 chnl=15 +char id=732 x=164 y=375 width=16 height=12 xoffset=-3 yoffset=-2 xadvance=4 page=0 chnl=15 +char id=733 x=408 y=351 width=17 height=13 xoffset=-3 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=768 x=66 y=376 width=13 height=13 xoffset=-6 yoffset=-3 xadvance=0 page=0 chnl=15 +char id=769 x=0 y=377 width=14 height=13 xoffset=-6 yoffset=-3 xadvance=0 page=0 chnl=15 +char id=771 x=183 y=374 width=16 height=12 xoffset=-7 yoffset=-2 xadvance=0 page=0 chnl=15 +char id=777 x=82 y=376 width=13 height=13 xoffset=-6 yoffset=-3 xadvance=0 page=0 chnl=15 +char id=803 x=301 y=370 width=12 height=12 xoffset=-10 yoffset=7 xadvance=0 page=0 chnl=15 +char id=8204 x=0 y=393 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8205 x=14 y=393 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8206 x=28 y=393 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8207 x=42 y=393 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8211 x=372 y=370 width=18 height=11 xoffset=-5 yoffset=3 xadvance=6 page=0 chnl=15 +char id=8212 x=316 y=370 width=25 height=11 xoffset=-5 yoffset=3 xadvance=13 page=0 chnl=15 +char id=8213 x=344 y=370 width=25 height=11 xoffset=-5 yoffset=3 xadvance=13 page=0 chnl=15 +char id=8215 x=428 y=350 width=16 height=13 xoffset=-5 yoffset=7 xadvance=6 page=0 chnl=15 +char id=8216 x=309 y=353 width=13 height=14 xoffset=-2 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=8217 x=341 y=353 width=13 height=14 xoffset=-2 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=8218 x=325 y=353 width=13 height=14 xoffset=-5 yoffset=5 xadvance=3 page=0 chnl=15 +char id=8219 x=496 y=152 width=13 height=14 xoffset=-2 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=8220 x=224 y=357 width=15 height=14 xoffset=-2 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=8221 x=206 y=357 width=15 height=14 xoffset=-2 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=8222 x=169 y=357 width=16 height=14 xoffset=-5 yoffset=5 xadvance=6 page=0 chnl=15 +char id=8224 x=287 y=128 width=16 height=22 xoffset=-3 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=8225 x=42 y=130 width=18 height=22 xoffset=-4 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=8226 x=188 y=357 width=15 height=14 xoffset=-4 yoffset=0 xadvance=4 page=0 chnl=15 +char id=8230 x=98 y=376 width=21 height=12 xoffset=-4 yoffset=5 xadvance=13 page=0 chnl=15 +char id=8234 x=455 y=366 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8235 x=469 y=366 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8236 x=483 y=366 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8237 x=497 y=366 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8238 x=56 y=393 width=11 height=11 xoffset=-5 yoffset=-5 xadvance=0 page=0 chnl=15 +char id=8240 x=344 y=128 width=24 height=21 xoffset=-4 yoffset=-3 xadvance=13 page=0 chnl=15 +char id=8242 x=259 y=356 width=14 height=14 xoffset=-3 yoffset=-3 xadvance=3 page=0 chnl=15 +char id=8243 x=149 y=358 width=17 height=14 xoffset=-3 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=8249 x=0 y=358 width=15 height=16 xoffset=-4 yoffset=1 xadvance=3 page=0 chnl=15 +char id=8250 x=485 y=331 width=15 height=16 xoffset=-5 yoffset=1 xadvance=3 page=0 chnl=15 +char id=8252 x=234 y=176 width=20 height=20 xoffset=-4 yoffset=-3 xadvance=9 page=0 chnl=15 +char id=8254 x=143 y=375 width=18 height=12 xoffset=-3 yoffset=-2 xadvance=6 page=0 chnl=15 +char id=8260 x=400 y=152 width=21 height=20 xoffset=-7 yoffset=-3 xadvance=2 page=0 chnl=15 +char id=8355 x=391 y=267 width=21 height=19 xoffset=-5 yoffset=-2 xadvance=7 page=0 chnl=15 +char id=8356 x=394 y=175 width=19 height=20 xoffset=-5 yoffset=-3 xadvance=6 page=0 chnl=15 +char id=8359 x=197 y=153 width=24 height=20 xoffset=-5 yoffset=-2 xadvance=12 page=0 chnl=15 +char id=8362 x=264 y=268 width=23 height=19 xoffset=-5 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=8363 x=467 y=128 width=20 height=21 xoffset=-5 yoffset=-4 xadvance=7 page=0 chnl=15 +char id=8364 x=424 y=152 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=8453 x=472 y=152 width=21 height=20 xoffset=-4 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=8467 x=273 y=222 width=18 height=20 xoffset=-4 yoffset=-3 xadvance=5 page=0 chnl=15 +char id=8470 x=143 y=155 width=24 height=20 xoffset=-5 yoffset=-2 xadvance=11 page=0 chnl=15 +char id=8482 x=426 y=311 width=25 height=17 xoffset=-3 yoffset=-3 xadvance=13 page=0 chnl=15 +char id=8486 x=303 y=153 width=22 height=20 xoffset=-5 yoffset=-3 xadvance=10 page=0 chnl=15 +char id=8494 x=90 y=338 width=18 height=17 xoffset=-4 yoffset=0 xadvance=7 page=0 chnl=15 +kernings count=620 +kerning first=212 second=260 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=44 second=8217 amount=-1 +kerning first=44 second=8220 amount=-1 +kerning first=44 second=8221 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=45 second=69 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=45 second=74 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=45 second=86 amount=-1 +kerning first=45 second=87 amount=-1 +kerning first=45 second=89 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=212 second=65 amount=-1 +kerning first=211 second=260 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=211 second=65 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=45 second=195 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=45 second=221 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=208 second=260 amount=-1 +kerning first=208 second=256 amount=-1 +kerning first=208 second=198 amount=-1 +kerning first=208 second=197 amount=-1 +kerning first=208 second=196 amount=-1 +kerning first=208 second=194 amount=-1 +kerning first=208 second=193 amount=-1 +kerning first=208 second=192 amount=-1 +kerning first=208 second=65 amount=-1 +kerning first=206 second=8249 amount=-1 +kerning first=206 second=171 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=206 second=45 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=199 second=45 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=197 second=8221 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=197 second=8220 amount=-1 +kerning first=197 second=8217 amount=-1 +kerning first=197 second=374 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=197 second=356 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=197 second=354 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=197 second=221 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=197 second=89 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=197 second=87 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=197 second=86 amount=-1 +kerning first=45 second=330 amount=-1 +kerning first=197 second=84 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=196 second=8221 amount=-1 +kerning first=196 second=8220 amount=-1 +kerning first=196 second=8217 amount=-1 +kerning first=196 second=374 amount=-1 +kerning first=196 second=356 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=196 second=354 amount=-1 +kerning first=45 second=356 amount=-1 +kerning first=196 second=221 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=196 second=89 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=196 second=87 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=196 second=86 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=196 second=84 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=45 second=374 amount=-1 +kerning first=195 second=8249 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=195 second=8221 amount=-1 +kerning first=195 second=8220 amount=-1 +kerning first=195 second=8217 amount=-1 +kerning first=195 second=374 amount=-1 +kerning first=195 second=356 amount=-1 +kerning first=195 second=354 amount=-1 +kerning first=195 second=221 amount=-1 +kerning first=195 second=171 amount=-1 +kerning first=195 second=89 amount=-1 +kerning first=195 second=87 amount=-1 +kerning first=195 second=86 amount=-1 +kerning first=195 second=84 amount=-1 +kerning first=195 second=45 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=194 second=8221 amount=-1 +kerning first=194 second=8220 amount=-1 +kerning first=194 second=8217 amount=-1 +kerning first=194 second=374 amount=-1 +kerning first=194 second=356 amount=-1 +kerning first=194 second=354 amount=-1 +kerning first=194 second=221 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=194 second=89 amount=-1 +kerning first=194 second=87 amount=-1 +kerning first=194 second=86 amount=-1 +kerning first=194 second=84 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=193 second=8221 amount=-1 +kerning first=193 second=8220 amount=-1 +kerning first=193 second=8217 amount=-1 +kerning first=193 second=374 amount=-1 +kerning first=46 second=8217 amount=-1 +kerning first=46 second=8220 amount=-1 +kerning first=46 second=8221 amount=-1 +kerning first=193 second=356 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=193 second=354 amount=-1 +kerning first=193 second=221 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=193 second=89 amount=-1 +kerning first=193 second=87 amount=-1 +kerning first=65 second=84 amount=-1 +kerning first=193 second=86 amount=-1 +kerning first=65 second=86 amount=-1 +kerning first=65 second=87 amount=-1 +kerning first=65 second=89 amount=-1 +kerning first=193 second=84 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=192 second=8221 amount=-1 +kerning first=192 second=8220 amount=-1 +kerning first=192 second=8217 amount=-1 +kerning first=192 second=374 amount=-1 +kerning first=192 second=356 amount=-1 +kerning first=192 second=354 amount=-1 +kerning first=192 second=221 amount=-1 +kerning first=192 second=171 amount=-1 +kerning first=192 second=89 amount=-1 +kerning first=192 second=87 amount=-1 +kerning first=192 second=86 amount=-1 +kerning first=192 second=84 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=187 second=374 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=65 second=221 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=187 second=330 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=187 second=296 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=187 second=221 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=187 second=201 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=187 second=195 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=187 second=89 amount=-1 +kerning first=187 second=87 amount=-1 +kerning first=187 second=86 amount=-1 +kerning first=187 second=85 amount=-1 +kerning first=187 second=84 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=187 second=74 amount=-1 +kerning first=187 second=73 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=187 second=70 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=65 second=354 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=65 second=356 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=121 second=44 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=65 second=374 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=118 second=46 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=113 second=106 amount=1 +kerning first=110 second=8221 amount=-1 +kerning first=110 second=8220 amount=-1 +kerning first=110 second=8217 amount=-1 +kerning first=109 second=8221 amount=-1 +kerning first=109 second=8220 amount=-1 +kerning first=109 second=8217 amount=-1 +kerning first=104 second=8221 amount=-1 +kerning first=65 second=8217 amount=-1 +kerning first=65 second=8220 amount=-1 +kerning first=65 second=8221 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=104 second=8220 amount=-1 +kerning first=104 second=8217 amount=-1 +kerning first=102 second=254 amount=1 +kerning first=102 second=98 amount=1 +kerning first=89 second=8249 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=89 second=291 amount=-1 +kerning first=66 second=46 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=89 second=289 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=89 second=287 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=66 second=74 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=89 second=260 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=89 second=256 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=66 second=90 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=89 second=225 amount=-1 +kerning first=89 second=198 amount=-1 +kerning first=89 second=197 amount=-1 +kerning first=89 second=196 amount=-1 +kerning first=66 second=103 amount=-1 +kerning first=89 second=194 amount=-1 +kerning first=89 second=193 amount=-1 +kerning first=89 second=192 amount=-1 +kerning first=89 second=171 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=89 second=74 amount=-1 +kerning first=89 second=65 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=89 second=45 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=87 second=8249 amount=-1 +kerning first=87 second=291 amount=-1 +kerning first=87 second=289 amount=-1 +kerning first=87 second=287 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=87 second=261 amount=-1 +kerning first=87 second=260 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=87 second=256 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=87 second=198 amount=-1 +kerning first=87 second=197 amount=-1 +kerning first=87 second=196 amount=-1 +kerning first=87 second=194 amount=-1 +kerning first=87 second=193 amount=-1 +kerning first=87 second=192 amount=-1 +kerning first=87 second=171 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=87 second=65 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=87 second=45 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=86 second=8249 amount=-1 +kerning first=86 second=291 amount=-1 +kerning first=86 second=289 amount=-1 +kerning first=86 second=287 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=86 second=260 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=86 second=256 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=86 second=198 amount=-1 +kerning first=86 second=197 amount=-1 +kerning first=86 second=196 amount=-1 +kerning first=86 second=194 amount=-1 +kerning first=86 second=193 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=86 second=192 amount=-1 +kerning first=86 second=171 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=86 second=103 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=86 second=65 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=86 second=45 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=85 second=8249 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=85 second=291 amount=-1 +kerning first=85 second=289 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=85 second=287 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=66 second=287 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=66 second=289 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=66 second=291 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=85 second=171 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=85 second=46 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=85 second=45 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=85 second=44 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=66 second=330 amount=-1 +kerning first=84 second=291 amount=-1 +kerning first=84 second=289 amount=-1 +kerning first=84 second=287 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=84 second=260 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=84 second=256 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=84 second=198 amount=-1 +kerning first=84 second=197 amount=-1 +kerning first=84 second=196 amount=-1 +kerning first=84 second=194 amount=-1 +kerning first=84 second=193 amount=-1 +kerning first=84 second=192 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=84 second=65 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=83 second=260 amount=-1 +kerning first=66 second=377 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=66 second=379 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=66 second=381 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=83 second=256 amount=-1 +kerning first=83 second=198 amount=-1 +kerning first=83 second=197 amount=-1 +kerning first=83 second=196 amount=-1 +kerning first=83 second=194 amount=-1 +kerning first=83 second=193 amount=-1 +kerning first=83 second=192 amount=-1 +kerning first=83 second=65 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=66 second=8217 amount=-1 +kerning first=66 second=8220 amount=-1 +kerning first=66 second=8221 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=80 second=198 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=80 second=46 amount=-1 +kerning first=80 second=44 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=74 second=8249 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=74 second=198 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=74 second=171 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=74 second=45 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=67 second=8249 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555_0.png b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555_0.png new file mode 100644 index 000000000..72b806625 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif16Ipad5555_0.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32.fnt b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32.fnt new file mode 100644 index 000000000..c7b6891c1 --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32.fnt @@ -0,0 +1,5904 @@ +info face="FreeSerif" size=32 bold=0 italic=0 charset="" unicode=1 stretchH=100 smooth=1 aa=2 padding=0,0,0,0 spacing=3,3 outline=0 +common lineHeight=32 base=24 scaleW=512 scaleH=512 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="BM-FreeSerif32_0.png" +chars count=406 +char id=-1 x=148 y=222 width=15 height=18 xoffset=2 yoffset=6 xadvance=18 page=0 chnl=15 +char id=32 x=507 y=229 width=1 height=1 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=15 +char id=33 x=110 y=201 width=4 height=19 xoffset=3 yoffset=6 xadvance=9 page=0 chnl=15 +char id=34 x=422 y=256 width=7 height=7 xoffset=2 yoffset=6 xadvance=11 page=0 chnl=15 +char id=35 x=200 y=222 width=14 height=18 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=36 x=224 y=109 width=12 height=22 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=15 +char id=37 x=241 y=134 width=19 height=19 xoffset=1 yoffset=6 xadvance=22 page=0 chnl=15 +char id=38 x=263 y=134 width=19 height=19 xoffset=1 yoffset=6 xadvance=20 page=0 chnl=15 +char id=39 x=505 y=238 width=3 height=7 xoffset=1 yoffset=6 xadvance=5 page=0 chnl=15 +char id=40 x=495 y=82 width=8 height=23 xoffset=1 yoffset=6 xadvance=9 page=0 chnl=15 +char id=41 x=0 y=112 width=8 height=23 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=42 x=170 y=262 width=10 height=12 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=43 x=340 y=241 width=14 height=14 xoffset=0 yoffset=10 xadvance=15 page=0 chnl=15 +char id=44 x=465 y=255 width=5 height=7 xoffset=1 yoffset=21 xadvance=6 page=0 chnl=15 +char id=45 x=333 y=270 width=7 height=2 xoffset=1 yoffset=17 xadvance=9 page=0 chnl=15 +char id=46 x=179 y=277 width=4 height=4 xoffset=1 yoffset=21 xadvance=6 page=0 chnl=15 +char id=47 x=471 y=175 width=9 height=19 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=48 x=206 y=156 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=49 x=404 y=219 width=8 height=18 xoffset=2 yoffset=6 xadvance=13 page=0 chnl=15 +char id=50 x=233 y=221 width=13 height=18 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=51 x=498 y=131 width=11 height=19 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=52 x=249 y=221 width=13 height=18 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=53 x=135 y=179 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=54 x=60 y=180 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=55 x=90 y=180 width=12 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=56 x=378 y=176 width=11 height=19 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=57 x=165 y=179 width=12 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=58 x=505 y=197 width=4 height=13 xoffset=2 yoffset=11 xadvance=7 page=0 chnl=15 +char id=59 x=154 y=243 width=5 height=17 xoffset=1 yoffset=11 xadvance=7 page=0 chnl=15 +char id=60 x=289 y=242 width=14 height=15 xoffset=0 yoffset=10 xadvance=15 page=0 chnl=15 +char id=61 x=280 y=260 width=14 height=8 xoffset=0 yoffset=13 xadvance=15 page=0 chnl=15 +char id=62 x=306 y=242 width=14 height=15 xoffset=0 yoffset=10 xadvance=15 page=0 chnl=15 +char id=63 x=458 y=175 width=10 height=19 xoffset=1 yoffset=6 xadvance=12 page=0 chnl=15 +char id=64 x=219 y=134 width=19 height=19 xoffset=3 yoffset=6 xadvance=24 page=0 chnl=15 +char id=65 x=235 y=200 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=66 x=0 y=226 width=16 height=18 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=67 x=478 y=131 width=17 height=19 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=68 x=257 y=200 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=69 x=19 y=226 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=70 x=76 y=224 width=15 height=18 xoffset=0 yoffset=6 xadvance=15 page=0 chnl=15 +char id=71 x=285 y=134 width=19 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=72 x=279 y=200 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=73 x=368 y=219 width=9 height=18 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=74 x=406 y=176 width=10 height=19 xoffset=0 yoffset=6 xadvance=10 page=0 chnl=15 +char id=75 x=345 y=198 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=76 x=38 y=226 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=77 x=143 y=201 width=23 height=18 xoffset=0 yoffset=6 xadvance=23 page=0 chnl=15 +char id=78 x=307 y=133 width=19 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=79 x=436 y=131 width=18 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=80 x=94 y=224 width=15 height=18 xoffset=0 yoffset=6 xadvance=15 page=0 chnl=15 +char id=81 x=179 y=83 width=19 height=23 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=82 x=389 y=198 width=18 height=18 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=83 x=459 y=153 width=12 height=19 xoffset=1 yoffset=6 xadvance=15 page=0 chnl=15 +char id=84 x=57 y=226 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=85 x=351 y=132 width=19 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=86 x=131 y=135 width=19 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=87 x=0 y=138 width=25 height=19 xoffset=0 yoffset=6 xadvance=25 page=0 chnl=15 +char id=88 x=191 y=201 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=89 x=213 y=200 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=90 x=410 y=198 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=91 x=41 y=111 width=6 height=23 xoffset=2 yoffset=6 xadvance=9 page=0 chnl=15 +char id=92 x=59 y=204 width=8 height=19 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=15 +char id=93 x=32 y=111 width=6 height=23 xoffset=1 yoffset=6 xadvance=9 page=0 chnl=15 +char id=94 x=194 y=262 width=12 height=11 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=95 x=258 y=275 width=14 height=2 xoffset=0 yoffset=25 xadvance=13 page=0 chnl=15 +char id=96 x=10 y=283 width=7 height=6 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=97 x=48 y=267 width=12 height=13 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=98 x=222 y=156 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=99 x=78 y=267 width=11 height=13 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=100 x=174 y=157 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=101 x=92 y=265 width=11 height=13 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=102 x=419 y=176 width=10 height=19 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=103 x=429 y=154 width=12 height=19 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=104 x=302 y=156 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=105 x=100 y=202 width=7 height=19 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=106 x=274 y=28 width=8 height=25 xoffset=-2 yoffset=5 xadvance=7 page=0 chnl=15 +char id=107 x=93 y=157 width=14 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=108 x=90 y=202 width=7 height=19 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=109 x=387 y=240 width=21 height=13 xoffset=0 yoffset=11 xadvance=20 page=0 chnl=15 +char id=110 x=16 y=267 width=13 height=13 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=111 x=63 y=267 width=12 height=13 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=112 x=254 y=156 width=13 height=19 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=113 x=270 y=156 width=13 height=19 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=114 x=106 y=265 width=9 height=13 xoffset=0 yoffset=11 xadvance=9 page=0 chnl=15 +char id=115 x=118 y=264 width=9 height=13 xoffset=1 yoffset=11 xadvance=10 page=0 chnl=15 +char id=116 x=243 y=242 width=8 height=16 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=15 +char id=117 x=32 y=267 width=13 height=13 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=118 x=489 y=238 width=13 height=13 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=119 x=411 y=240 width=18 height=13 xoffset=0 yoffset=12 xadvance=19 page=0 chnl=15 +char id=120 x=140 y=263 width=13 height=12 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=121 x=217 y=221 width=13 height=18 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=122 x=156 y=263 width=11 height=12 xoffset=0 yoffset=12 xadvance=12 page=0 chnl=15 +char id=123 x=502 y=0 width=7 height=24 xoffset=2 yoffset=5 xadvance=13 page=0 chnl=15 +char id=124 x=507 y=175 width=2 height=19 xoffset=1 yoffset=6 xadvance=5 page=0 chnl=15 +char id=125 x=22 y=112 width=7 height=23 xoffset=3 yoffset=6 xadvance=13 page=0 chnl=15 +char id=126 x=38 y=283 width=13 height=5 xoffset=1 yoffset=15 xadvance=14 page=0 chnl=15 +char id=160 x=353 y=269 width=1 height=1 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=15 +char id=161 x=504 y=153 width=4 height=19 xoffset=2 yoffset=11 xadvance=9 page=0 chnl=15 +char id=162 x=496 y=108 width=11 height=20 xoffset=1 yoffset=8 xadvance=13 page=0 chnl=15 +char id=163 x=398 y=154 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=164 x=254 y=242 width=15 height=15 xoffset=-1 yoffset=8 xadvance=13 page=0 chnl=15 +char id=165 x=429 y=198 width=16 height=18 xoffset=-1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=166 x=506 y=82 width=2 height=19 xoffset=1 yoffset=6 xadvance=5 page=0 chnl=15 +char id=167 x=268 y=109 width=10 height=22 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=168 x=167 y=278 width=9 height=4 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=15 +char id=169 x=292 y=109 width=20 height=21 xoffset=0 yoffset=4 xadvance=21 page=0 chnl=15 +char id=170 x=352 y=258 width=8 height=8 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=171 x=209 y=262 width=12 height=11 xoffset=0 yoffset=12 xadvance=12 page=0 chnl=15 +char id=172 x=297 y=260 width=14 height=8 xoffset=0 yoffset=13 xadvance=15 page=0 chnl=15 +char id=173 x=343 y=269 width=7 height=2 xoffset=1 yoffset=17 xadvance=9 page=0 chnl=15 +char id=174 x=315 y=108 width=20 height=21 xoffset=0 yoffset=4 xadvance=21 page=0 chnl=15 +char id=175 x=309 y=271 width=9 height=2 xoffset=0 yoffset=8 xadvance=9 page=0 chnl=15 +char id=176 x=340 y=258 width=9 height=8 xoffset=1 yoffset=6 xadvance=10 page=0 chnl=15 +char id=177 x=166 y=222 width=14 height=18 xoffset=0 yoffset=7 xadvance=15 page=0 chnl=15 +char id=178 x=239 y=261 width=9 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=15 +char id=179 x=183 y=262 width=8 height=12 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=15 +char id=180 x=0 y=283 width=7 height=6 xoffset=2 yoffset=5 xadvance=9 page=0 chnl=15 +char id=181 x=183 y=222 width=14 height=18 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=182 x=384 y=82 width=13 height=23 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=183 x=505 y=248 width=4 height=4 xoffset=1 yoffset=16 xadvance=6 page=0 chnl=15 +char id=184 x=432 y=255 width=6 height=7 xoffset=1 yoffset=23 xadvance=9 page=0 chnl=15 +char id=185 x=271 y=260 width=6 height=11 xoffset=1 yoffset=6 xadvance=8 page=0 chnl=15 +char id=186 x=328 y=259 width=9 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=15 +char id=187 x=224 y=261 width=12 height=11 xoffset=0 yoffset=12 xadvance=12 page=0 chnl=15 +char id=188 x=175 y=135 width=19 height=19 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=15 +char id=189 x=108 y=135 width=20 height=19 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=15 +char id=190 x=197 y=134 width=19 height=19 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=15 +char id=191 x=445 y=175 width=10 height=19 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=192 x=355 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=193 x=421 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=194 x=110 y=57 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=195 x=91 y=84 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=196 x=47 y=85 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=197 x=465 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=198 x=117 y=201 width=23 height=18 xoffset=0 yoffset=6 xadvance=23 page=0 chnl=15 +char id=199 x=174 y=56 width=17 height=24 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=200 x=365 y=55 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=201 x=346 y=55 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=202 x=327 y=55 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=203 x=346 y=82 width=16 height=23 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=204 x=0 y=85 width=9 height=24 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=205 x=497 y=55 width=9 height=24 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=206 x=485 y=55 width=9 height=24 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=207 x=483 y=82 width=9 height=23 xoffset=0 yoffset=1 xadvance=9 page=0 chnl=15 +char id=208 x=169 y=201 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=209 x=135 y=84 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=210 x=481 y=0 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=211 x=42 y=30 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=212 x=460 y=0 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=213 x=266 y=83 width=18 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=214 x=245 y=83 width=18 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=215 x=323 y=242 width=14 height=14 xoffset=0 yoffset=10 xadvance=15 page=0 chnl=15 +char id=216 x=139 y=110 width=18 height=22 xoffset=0 yoffset=4 xadvance=19 page=0 chnl=15 +char id=217 x=373 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=218 x=219 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=219 x=417 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=220 x=201 y=83 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=221 x=333 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=222 x=112 y=223 width=15 height=18 xoffset=0 yoffset=6 xadvance=15 page=0 chnl=15 +char id=223 x=158 y=157 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=224 x=444 y=153 width=12 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=225 x=474 y=153 width=12 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=226 x=120 y=179 width=12 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=227 x=296 y=221 width=12 height=18 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=228 x=0 y=247 width=12 height=17 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=229 x=481 y=108 width=12 height=20 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=15 +char id=230 x=453 y=239 width=17 height=13 xoffset=0 yoffset=11 xadvance=17 page=0 chnl=15 +char id=231 x=294 y=178 width=11 height=19 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=232 x=392 y=176 width=11 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=233 x=308 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=234 x=322 y=177 width=11 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=235 x=89 y=245 width=11 height=17 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=236 x=80 y=202 width=7 height=19 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=237 x=48 y=204 width=8 height=19 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=238 x=392 y=219 width=9 height=18 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=239 x=143 y=243 width=8 height=17 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=15 +char id=240 x=0 y=182 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=241 x=443 y=219 width=13 height=17 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=242 x=489 y=153 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=243 x=75 y=180 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=244 x=105 y=179 width=12 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=245 x=281 y=221 width=12 height=18 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=246 x=45 y=247 width=12 height=17 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=247 x=272 y=242 width=14 height=15 xoffset=0 yoffset=10 xadvance=15 page=0 chnl=15 +char id=248 x=311 y=221 width=12 height=18 xoffset=0 yoffset=9 xadvance=13 page=0 chnl=15 +char id=249 x=350 y=154 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=250 x=366 y=154 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=251 x=190 y=157 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=252 x=459 y=218 width=13 height=17 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=253 x=139 y=29 width=13 height=25 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=254 x=155 y=29 width=13 height=25 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=255 x=400 y=82 width=13 height=23 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=256 x=338 y=108 width=19 height=21 xoffset=0 yoffset=3 xadvance=19 page=0 chnl=15 +char id=257 x=30 y=247 width=12 height=17 xoffset=0 yoffset=8 xadvance=12 page=0 chnl=15 +char id=258 x=0 y=58 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=259 x=30 y=182 width=12 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=260 x=23 y=85 width=21 height=23 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=261 x=60 y=247 width=12 height=17 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=262 x=83 y=29 width=17 height=25 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=263 x=238 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=264 x=103 y=29 width=17 height=25 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=265 x=364 y=176 width=11 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=266 x=307 y=82 width=17 height=23 xoffset=0 yoffset=1 xadvance=18 page=0 chnl=15 +char id=267 x=340 y=220 width=11 height=18 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=268 x=63 y=29 width=17 height=25 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=269 x=280 y=178 width=11 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=270 x=443 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=271 x=20 y=160 width=16 height=19 xoffset=0 yoffset=5 xadvance=17 page=0 chnl=15 +char id=272 x=301 y=200 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=273 x=334 y=154 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=274 x=360 y=108 width=16 height=21 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=15 +char id=275 x=117 y=244 width=11 height=17 xoffset=0 yoffset=8 xadvance=12 page=0 chnl=15 +char id=276 x=289 y=55 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=277 x=350 y=176 width=11 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=278 x=365 y=82 width=16 height=23 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=279 x=326 y=220 width=11 height=18 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=280 x=287 y=83 width=17 height=23 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=281 x=103 y=245 width=11 height=17 xoffset=0 yoffset=11 xadvance=12 page=0 chnl=15 +char id=282 x=308 y=55 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=283 x=336 y=176 width=11 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=284 x=66 y=57 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=285 x=446 y=55 width=12 height=24 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=286 x=311 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=287 x=431 y=55 width=12 height=24 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=288 x=69 y=84 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=289 x=416 y=82 width=12 height=23 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=290 x=92 y=0 width=19 height=26 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=291 x=154 y=0 width=12 height=26 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=15 +char id=292 x=399 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=293 x=400 y=55 width=13 height=24 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=15 +char id=294 x=323 y=199 width=19 height=18 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=295 x=126 y=157 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=296 x=459 y=82 width=9 height=23 xoffset=0 yoffset=1 xadvance=9 page=0 chnl=15 +char id=297 x=131 y=243 width=9 height=17 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=15 +char id=298 x=395 y=108 width=9 height=21 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=15 +char id=299 x=220 y=242 width=9 height=16 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=15 +char id=300 x=461 y=55 width=9 height=24 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=301 x=415 y=219 width=8 height=18 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=302 x=445 y=82 width=11 height=23 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=303 x=11 y=112 width=8 height=23 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=304 x=471 y=82 width=9 height=23 xoffset=0 yoffset=1 xadvance=9 page=0 chnl=15 +char id=305 x=130 y=264 width=7 height=13 xoffset=0 yoffset=11 xadvance=7 page=0 chnl=15 +char id=306 x=153 y=135 width=19 height=19 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=307 x=231 y=28 width=12 height=25 xoffset=0 yoffset=5 xadvance=14 page=0 chnl=15 +char id=308 x=260 y=28 width=11 height=25 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=15 +char id=309 x=246 y=28 width=11 height=25 xoffset=-2 yoffset=5 xadvance=7 page=0 chnl=15 +char id=310 x=70 y=0 width=19 height=26 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=311 x=21 y=0 width=14 height=27 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=312 x=473 y=238 width=13 height=13 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=313 x=232 y=56 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=314 x=12 y=85 width=8 height=24 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=15 +char id=315 x=135 y=0 width=16 height=26 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=316 x=38 y=0 width=7 height=27 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=317 x=39 y=160 width=16 height=19 xoffset=0 yoffset=5 xadvance=16 page=0 chnl=15 +char id=318 x=266 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=319 x=448 y=197 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=320 x=252 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=321 x=467 y=197 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=322 x=70 y=202 width=7 height=19 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=15 +char id=323 x=351 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=324 x=286 y=156 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=325 x=48 y=0 width=19 height=26 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=326 x=379 y=108 width=13 height=21 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=327 x=377 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=328 x=265 y=221 width=13 height=18 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=329 x=58 y=158 width=15 height=19 xoffset=0 yoffset=5 xadvance=15 page=0 chnl=15 +char id=330 x=373 y=132 width=18 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=331 x=150 y=179 width=12 height=19 xoffset=0 yoffset=11 xadvance=13 page=0 chnl=15 +char id=332 x=118 y=110 width=18 height=22 xoffset=0 yoffset=3 xadvance=19 page=0 chnl=15 +char id=333 x=15 y=247 width=12 height=17 xoffset=0 yoffset=8 xadvance=13 page=0 chnl=15 +char id=334 x=0 y=30 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=335 x=414 y=154 width=12 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=336 x=439 y=0 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=337 x=15 y=182 width=12 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=338 x=56 y=136 width=23 height=19 xoffset=0 yoffset=6 xadvance=23 page=0 chnl=15 +char id=339 x=432 y=239 width=18 height=13 xoffset=0 yoffset=11 xadvance=19 page=0 chnl=15 +char id=340 x=153 y=57 width=18 height=24 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=341 x=36 y=204 width=9 height=19 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=342 x=114 y=0 width=18 height=26 xoffset=0 yoffset=6 xadvance=18 page=0 chnl=15 +char id=343 x=407 y=108 width=9 height=21 xoffset=0 yoffset=11 xadvance=9 page=0 chnl=15 +char id=344 x=132 y=57 width=18 height=24 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=345 x=380 y=219 width=9 height=18 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=346 x=216 y=28 width=12 height=25 xoffset=1 yoffset=0 xadvance=15 page=0 chnl=15 +char id=347 x=24 y=204 width=9 height=19 xoffset=1 yoffset=5 xadvance=10 page=0 chnl=15 +char id=348 x=201 y=28 width=12 height=25 xoffset=1 yoffset=0 xadvance=15 page=0 chnl=15 +char id=349 x=12 y=204 width=9 height=19 xoffset=0 yoffset=6 xadvance=10 page=0 chnl=15 +char id=350 x=416 y=55 width=12 height=24 xoffset=1 yoffset=6 xadvance=15 page=0 chnl=15 +char id=351 x=495 y=175 width=9 height=19 xoffset=1 yoffset=11 xadvance=10 page=0 chnl=15 +char id=352 x=171 y=28 width=12 height=25 xoffset=1 yoffset=0 xadvance=15 page=0 chnl=15 +char id=353 x=0 y=204 width=9 height=19 xoffset=1 yoffset=6 xadvance=10 page=0 chnl=15 +char id=354 x=251 y=56 width=16 height=24 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=355 x=281 y=109 width=8 height=22 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=15 +char id=356 x=213 y=56 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=357 x=224 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=15 +char id=358 x=486 y=197 width=16 height=18 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=15 +char id=359 x=232 y=242 width=8 height=16 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=15 +char id=360 x=223 y=83 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=361 x=475 y=218 width=13 height=17 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=15 +char id=362 x=96 y=110 width=19 height=22 xoffset=0 yoffset=3 xadvance=19 page=0 chnl=15 +char id=363 x=491 y=218 width=13 height=17 xoffset=0 yoffset=8 xadvance=13 page=0 chnl=15 +char id=364 x=285 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=365 x=238 y=156 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=366 x=307 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=367 x=449 y=108 width=13 height=20 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=15 +char id=368 x=395 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=369 x=110 y=157 width=13 height=19 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=370 x=157 y=84 width=19 height=23 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=371 x=426 y=219 width=14 height=17 xoffset=0 yoffset=12 xadvance=13 page=0 chnl=15 +char id=372 x=169 y=0 width=25 height=25 xoffset=0 yoffset=0 xadvance=25 page=0 chnl=15 +char id=373 x=394 y=132 width=18 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=374 x=88 y=57 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=375 x=384 y=55 width=13 height=24 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=376 x=113 y=84 width=19 height=23 xoffset=0 yoffset=1 xadvance=19 page=0 chnl=15 +char id=377 x=270 y=56 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=378 x=210 y=178 width=11 height=19 xoffset=0 yoffset=5 xadvance=12 page=0 chnl=15 +char id=379 x=327 y=82 width=16 height=23 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=15 +char id=380 x=75 y=247 width=11 height=17 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=15 +char id=381 x=194 y=56 width=16 height=24 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=15 +char id=382 x=354 y=219 width=11 height=18 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=383 x=432 y=176 width=10 height=19 xoffset=0 yoffset=5 xadvance=9 page=0 chnl=15 +char id=399 x=415 y=132 width=18 height=19 xoffset=0 yoffset=6 xadvance=19 page=0 chnl=15 +char id=402 x=123 y=29 width=13 height=25 xoffset=-1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=416 x=74 y=110 width=19 height=22 xoffset=0 yoffset=2 xadvance=19 page=0 chnl=15 +char id=417 x=203 y=243 width=14 height=16 xoffset=0 yoffset=9 xadvance=14 page=0 chnl=15 +char id=431 x=50 y=111 width=21 height=22 xoffset=0 yoffset=2 xadvance=21 page=0 chnl=15 +char id=432 x=185 y=243 width=15 height=16 xoffset=0 yoffset=9 xadvance=14 page=0 chnl=15 +char id=461 x=487 y=28 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=462 x=45 y=182 width=12 height=19 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=15 +char id=463 x=473 y=55 width=9 height=24 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=15 +char id=464 x=483 y=175 width=9 height=19 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=15 +char id=465 x=21 y=30 width=18 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=466 x=195 y=179 width=12 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=467 x=22 y=58 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=468 x=382 y=154 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=469 x=329 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=470 x=465 y=108 width=13 height=20 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=15 +char id=471 x=197 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=472 x=160 y=110 width=13 height=22 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=473 x=263 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=474 x=176 y=110 width=13 height=22 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=475 x=241 y=0 width=19 height=25 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=476 x=192 y=109 width=13 height=22 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=506 x=44 y=58 width=19 height=24 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=507 x=186 y=28 width=12 height=25 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=15 +char id=508 x=285 y=28 width=23 height=24 xoffset=0 yoffset=0 xadvance=23 page=0 chnl=15 +char id=509 x=0 y=160 width=17 height=19 xoffset=0 yoffset=5 xadvance=17 page=0 chnl=15 +char id=510 x=0 y=0 width=18 height=27 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=15 +char id=511 x=239 y=109 width=12 height=22 xoffset=0 yoffset=5 xadvance=13 page=0 chnl=15 +char id=710 x=66 y=283 width=9 height=5 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=711 x=54 y=283 width=9 height=5 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=713 x=321 y=271 width=9 height=2 xoffset=0 yoffset=8 xadvance=9 page=0 chnl=15 +char id=728 x=90 y=283 width=8 height=5 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=15 +char id=729 x=186 y=277 width=3 height=4 xoffset=3 yoffset=7 xadvance=9 page=0 chnl=15 +char id=730 x=20 y=283 width=6 height=6 xoffset=1 yoffset=5 xadvance=9 page=0 chnl=15 +char id=731 x=101 y=281 width=6 height=5 xoffset=1 yoffset=23 xadvance=9 page=0 chnl=15 +char id=732 x=143 y=278 width=9 height=4 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=15 +char id=733 x=481 y=254 width=11 height=6 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=15 +char id=768 x=29 y=283 width=6 height=6 xoffset=-8 yoffset=5 xadvance=0 page=0 chnl=15 +char id=769 x=495 y=254 width=7 height=6 xoffset=-7 yoffset=5 xadvance=0 page=0 chnl=15 +char id=771 x=155 y=278 width=9 height=4 xoffset=-9 yoffset=7 xadvance=0 page=0 chnl=15 +char id=777 x=110 y=281 width=5 height=5 xoffset=-7 yoffset=5 xadvance=0 page=0 chnl=15 +char id=803 x=192 y=277 width=3 height=3 xoffset=-8 yoffset=25 xadvance=0 page=0 chnl=15 +char id=8204 x=506 y=104 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8205 x=507 y=213 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8206 x=507 y=217 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8207 x=507 y=221 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8211 x=292 y=271 width=14 height=2 xoffset=0 yoffset=17 xadvance=13 page=0 chnl=15 +char id=8212 x=228 y=275 width=27 height=2 xoffset=0 yoffset=17 xadvance=26 page=0 chnl=15 +char id=8213 x=198 y=276 width=27 height=2 xoffset=0 yoffset=17 xadvance=26 page=0 chnl=15 +char id=8215 x=78 y=283 width=9 height=5 xoffset=2 yoffset=24 xadvance=12 page=0 chnl=15 +char id=8216 x=441 y=255 width=5 height=7 xoffset=1 yoffset=6 xadvance=6 page=0 chnl=15 +char id=8217 x=457 y=255 width=5 height=7 xoffset=1 yoffset=6 xadvance=6 page=0 chnl=15 +char id=8218 x=473 y=254 width=5 height=7 xoffset=1 yoffset=21 xadvance=6 page=0 chnl=15 +char id=8219 x=449 y=255 width=5 height=7 xoffset=1 yoffset=6 xadvance=6 page=0 chnl=15 +char id=8220 x=383 y=256 width=10 height=7 xoffset=1 yoffset=6 xadvance=12 page=0 chnl=15 +char id=8221 x=396 y=256 width=10 height=7 xoffset=1 yoffset=6 xadvance=12 page=0 chnl=15 +char id=8222 x=409 y=256 width=10 height=7 xoffset=1 yoffset=21 xadvance=12 page=0 chnl=15 +char id=8224 x=254 y=109 width=11 height=22 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=8225 x=431 y=82 width=11 height=23 xoffset=1 yoffset=6 xadvance=13 page=0 chnl=15 +char id=8226 x=363 y=256 width=8 height=8 xoffset=1 yoffset=11 xadvance=9 page=0 chnl=15 +char id=8230 x=118 y=280 width=22 height=4 xoffset=2 yoffset=21 xadvance=26 page=0 chnl=15 +char id=8234 x=365 y=267 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8235 x=361 y=269 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8236 x=357 y=269 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8237 x=507 y=233 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8238 x=507 y=225 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8240 x=419 y=108 width=27 height=20 xoffset=0 yoffset=5 xadvance=26 page=0 chnl=15 +char id=8242 x=374 y=256 width=6 height=8 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=15 +char id=8243 x=314 y=260 width=11 height=8 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=15 +char id=8249 x=251 y=261 width=7 height=11 xoffset=0 yoffset=12 xadvance=6 page=0 chnl=15 +char id=8250 x=261 y=260 width=7 height=11 xoffset=0 yoffset=12 xadvance=6 page=0 chnl=15 +char id=8252 x=142 y=157 width=13 height=19 xoffset=3 yoffset=6 xadvance=18 page=0 chnl=15 +char id=8254 x=275 y=274 width=14 height=2 xoffset=0 yoffset=8 xadvance=13 page=0 chnl=15 +char id=8260 x=76 y=158 width=14 height=19 xoffset=-4 yoffset=6 xadvance=4 page=0 chnl=15 +char id=8355 x=130 y=222 width=15 height=18 xoffset=0 yoffset=6 xadvance=15 page=0 chnl=15 +char id=8356 x=318 y=155 width=13 height=19 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=15 +char id=8359 x=28 y=138 width=25 height=19 xoffset=0 yoffset=6 xadvance=25 page=0 chnl=15 +char id=8362 x=162 y=243 width=20 height=16 xoffset=1 yoffset=8 xadvance=23 page=0 chnl=15 +char id=8363 x=208 y=109 width=13 height=22 xoffset=0 yoffset=2 xadvance=13 page=0 chnl=15 +char id=8364 x=329 y=132 width=19 height=19 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=15 +char id=8453 x=457 y=131 width=18 height=19 xoffset=1 yoffset=5 xadvance=21 page=0 chnl=15 +char id=8467 x=180 y=179 width=12 height=19 xoffset=0 yoffset=6 xadvance=11 page=0 chnl=15 +char id=8470 x=82 y=135 width=23 height=19 xoffset=0 yoffset=6 xadvance=23 page=0 chnl=15 +char id=8482 x=357 y=240 width=27 height=13 xoffset=0 yoffset=6 xadvance=27 page=0 chnl=15 +char id=8486 x=367 y=198 width=19 height=18 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=15 +char id=8494 x=0 y=267 width=13 height=13 xoffset=0 yoffset=11 xadvance=14 page=0 chnl=15 +kernings count=5493 +kerning first=212 second=8221 amount=-1 +kerning first=44 second=45 amount=-1 +kerning first=44 second=171 amount=-1 +kerning first=44 second=8217 amount=-2 +kerning first=44 second=8220 amount=-2 +kerning first=44 second=8221 amount=-2 +kerning first=44 second=8249 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=45 second=66 amount=-2 +kerning first=45 second=68 amount=-2 +kerning first=45 second=69 amount=-2 +kerning first=45 second=70 amount=-2 +kerning first=45 second=72 amount=-2 +kerning first=45 second=73 amount=-2 +kerning first=45 second=74 amount=-1 +kerning first=45 second=75 amount=-2 +kerning first=45 second=76 amount=-2 +kerning first=45 second=77 amount=-2 +kerning first=45 second=78 amount=-2 +kerning first=45 second=80 amount=-2 +kerning first=45 second=82 amount=-2 +kerning first=45 second=83 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=45 second=86 amount=-1 +kerning first=45 second=87 amount=-1 +kerning first=45 second=89 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=212 second=8220 amount=-1 +kerning first=212 second=8217 amount=-1 +kerning first=212 second=382 amount=-1 +kerning first=45 second=103 amount=-1 +kerning first=212 second=381 amount=-1 +kerning first=212 second=380 amount=-1 +kerning first=45 second=106 amount=-1 +kerning first=212 second=379 amount=-1 +kerning first=212 second=378 amount=-1 +kerning first=45 second=109 amount=-1 +kerning first=45 second=110 amount=-1 +kerning first=45 second=112 amount=-1 +kerning first=45 second=114 amount=-1 +kerning first=212 second=377 amount=-1 +kerning first=212 second=374 amount=-1 +kerning first=212 second=356 amount=-1 +kerning first=45 second=118 amount=-1 +kerning first=45 second=119 amount=-1 +kerning first=45 second=120 amount=-1 +kerning first=45 second=121 amount=-1 +kerning first=45 second=122 amount=-2 +kerning first=45 second=192 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=45 second=195 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=45 second=200 amount=-2 +kerning first=45 second=201 amount=-2 +kerning first=45 second=202 amount=-2 +kerning first=45 second=203 amount=-2 +kerning first=45 second=204 amount=-2 +kerning first=45 second=205 amount=-2 +kerning first=45 second=206 amount=-2 +kerning first=45 second=207 amount=-2 +kerning first=45 second=209 amount=-2 +kerning first=45 second=217 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=45 second=221 amount=-1 +kerning first=45 second=223 amount=-1 +kerning first=212 second=354 amount=-1 +kerning first=212 second=344 amount=-1 +kerning first=212 second=330 amount=-1 +kerning first=212 second=327 amount=-1 +kerning first=212 second=325 amount=-1 +kerning first=212 second=323 amount=-1 +kerning first=212 second=317 amount=-1 +kerning first=45 second=241 amount=-1 +kerning first=212 second=315 amount=-1 +kerning first=212 second=313 amount=-1 +kerning first=212 second=310 amount=-1 +kerning first=212 second=304 amount=-1 +kerning first=45 second=253 amount=-1 +kerning first=212 second=302 amount=-1 +kerning first=45 second=255 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=212 second=298 amount=-1 +kerning first=212 second=296 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=212 second=282 amount=-1 +kerning first=45 second=270 amount=-2 +kerning first=45 second=274 amount=-2 +kerning first=45 second=278 amount=-2 +kerning first=45 second=280 amount=-2 +kerning first=45 second=282 amount=-2 +kerning first=45 second=287 amount=-1 +kerning first=45 second=289 amount=-1 +kerning first=45 second=291 amount=-1 +kerning first=45 second=296 amount=-2 +kerning first=45 second=298 amount=-2 +kerning first=45 second=302 amount=-2 +kerning first=212 second=280 amount=-1 +kerning first=212 second=278 amount=-1 +kerning first=212 second=274 amount=-1 +kerning first=45 second=310 amount=-2 +kerning first=212 second=270 amount=-1 +kerning first=45 second=313 amount=-2 +kerning first=212 second=260 amount=-1 +kerning first=45 second=315 amount=-2 +kerning first=212 second=256 amount=-1 +kerning first=45 second=317 amount=-2 +kerning first=212 second=221 amount=-1 +kerning first=45 second=323 amount=-2 +kerning first=45 second=324 amount=-1 +kerning first=45 second=325 amount=-2 +kerning first=45 second=326 amount=-1 +kerning first=45 second=327 amount=-2 +kerning first=45 second=328 amount=-1 +kerning first=45 second=330 amount=-2 +kerning first=45 second=331 amount=-1 +kerning first=45 second=344 amount=-2 +kerning first=45 second=345 amount=-1 +kerning first=45 second=346 amount=-1 +kerning first=212 second=209 amount=-1 +kerning first=45 second=350 amount=-1 +kerning first=212 second=207 amount=-1 +kerning first=45 second=352 amount=-1 +kerning first=212 second=206 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=212 second=205 amount=-1 +kerning first=45 second=356 amount=-1 +kerning first=212 second=204 amount=-1 +kerning first=212 second=203 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=212 second=202 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=212 second=201 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=212 second=200 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=45 second=374 amount=-1 +kerning first=45 second=375 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=45 second=378 amount=-2 +kerning first=45 second=379 amount=-1 +kerning first=45 second=380 amount=-2 +kerning first=45 second=381 amount=-1 +kerning first=45 second=382 amount=-2 +kerning first=212 second=196 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=212 second=122 amount=-1 +kerning first=212 second=90 amount=-1 +kerning first=212 second=89 amount=-1 +kerning first=212 second=87 amount=-1 +kerning first=212 second=86 amount=-1 +kerning first=212 second=84 amount=-1 +kerning first=212 second=82 amount=-1 +kerning first=212 second=80 amount=-1 +kerning first=212 second=78 amount=-1 +kerning first=212 second=77 amount=-1 +kerning first=212 second=76 amount=-1 +kerning first=212 second=75 amount=-1 +kerning first=212 second=74 amount=-1 +kerning first=212 second=73 amount=-1 +kerning first=212 second=72 amount=-1 +kerning first=212 second=70 amount=-1 +kerning first=212 second=69 amount=-1 +kerning first=212 second=68 amount=-1 +kerning first=212 second=66 amount=-1 +kerning first=212 second=65 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=211 second=8221 amount=-1 +kerning first=211 second=8220 amount=-1 +kerning first=211 second=8217 amount=-1 +kerning first=211 second=382 amount=-1 +kerning first=46 second=45 amount=-1 +kerning first=46 second=171 amount=-1 +kerning first=46 second=8217 amount=-2 +kerning first=46 second=8220 amount=-2 +kerning first=46 second=8221 amount=-2 +kerning first=46 second=8249 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=65 second=83 amount=-1 +kerning first=65 second=84 amount=-2 +kerning first=65 second=85 amount=-1 +kerning first=65 second=86 amount=-2 +kerning first=65 second=87 amount=-2 +kerning first=65 second=89 amount=-2 +kerning first=65 second=98 amount=-1 +kerning first=211 second=381 amount=-1 +kerning first=211 second=380 amount=-1 +kerning first=211 second=379 amount=-1 +kerning first=211 second=378 amount=-1 +kerning first=65 second=103 amount=-1 +kerning first=65 second=104 amount=-1 +kerning first=211 second=377 amount=-1 +kerning first=65 second=107 amount=-1 +kerning first=65 second=108 amount=-1 +kerning first=211 second=374 amount=-1 +kerning first=65 second=112 amount=-1 +kerning first=211 second=356 amount=-1 +kerning first=65 second=115 amount=-1 +kerning first=211 second=354 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=65 second=118 amount=-1 +kerning first=65 second=119 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=65 second=217 amount=-1 +kerning first=65 second=218 amount=-1 +kerning first=65 second=219 amount=-1 +kerning first=65 second=220 amount=-1 +kerning first=65 second=221 amount=-2 +kerning first=211 second=344 amount=-1 +kerning first=211 second=330 amount=-1 +kerning first=211 second=327 amount=-1 +kerning first=211 second=325 amount=-1 +kerning first=211 second=323 amount=-1 +kerning first=211 second=317 amount=-1 +kerning first=211 second=315 amount=-1 +kerning first=211 second=313 amount=-1 +kerning first=211 second=310 amount=-1 +kerning first=211 second=304 amount=-1 +kerning first=211 second=302 amount=-1 +kerning first=211 second=298 amount=-1 +kerning first=211 second=296 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=65 second=251 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=65 second=254 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=211 second=282 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=211 second=280 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=211 second=278 amount=-1 +kerning first=211 second=274 amount=-1 +kerning first=211 second=270 amount=-1 +kerning first=211 second=260 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=211 second=221 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=65 second=287 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=65 second=289 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=65 second=291 amount=-1 +kerning first=211 second=209 amount=-1 +kerning first=211 second=207 amount=-1 +kerning first=65 second=311 amount=-1 +kerning first=65 second=314 amount=-1 +kerning first=65 second=316 amount=-1 +kerning first=65 second=318 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=211 second=206 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=211 second=205 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=211 second=204 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=211 second=203 amount=-1 +kerning first=65 second=346 amount=-1 +kerning first=65 second=347 amount=-1 +kerning first=65 second=350 amount=-1 +kerning first=65 second=351 amount=-1 +kerning first=65 second=352 amount=-1 +kerning first=65 second=353 amount=-1 +kerning first=65 second=354 amount=-2 +kerning first=211 second=202 amount=-1 +kerning first=65 second=356 amount=-2 +kerning first=65 second=361 amount=-1 +kerning first=65 second=362 amount=-1 +kerning first=65 second=363 amount=-1 +kerning first=65 second=364 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=65 second=366 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=65 second=368 amount=-1 +kerning first=65 second=369 amount=-1 +kerning first=65 second=370 amount=-1 +kerning first=65 second=374 amount=-2 +kerning first=65 second=375 amount=-1 +kerning first=211 second=201 amount=-1 +kerning first=211 second=200 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=211 second=122 amount=-1 +kerning first=211 second=90 amount=-1 +kerning first=211 second=89 amount=-1 +kerning first=211 second=87 amount=-1 +kerning first=211 second=86 amount=-1 +kerning first=211 second=84 amount=-1 +kerning first=211 second=82 amount=-1 +kerning first=65 second=8217 amount=-2 +kerning first=65 second=8220 amount=-2 +kerning first=65 second=8221 amount=-2 +kerning first=65 second=8249 amount=-1 +kerning first=211 second=80 amount=-1 +kerning first=211 second=78 amount=-1 +kerning first=211 second=77 amount=-1 +kerning first=211 second=76 amount=-1 +kerning first=211 second=75 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=66 second=46 amount=-1 +kerning first=66 second=65 amount=-2 +kerning first=66 second=66 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=66 second=74 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=66 second=83 amount=-2 +kerning first=66 second=84 amount=-1 +kerning first=66 second=85 amount=-1 +kerning first=66 second=86 amount=-1 +kerning first=66 second=87 amount=-1 +kerning first=66 second=89 amount=-1 +kerning first=66 second=90 amount=-1 +kerning first=66 second=97 amount=-1 +kerning first=66 second=98 amount=-1 +kerning first=211 second=74 amount=-1 +kerning first=211 second=73 amount=-1 +kerning first=211 second=72 amount=-1 +kerning first=66 second=102 amount=-1 +kerning first=66 second=103 amount=-1 +kerning first=66 second=104 amount=-1 +kerning first=66 second=105 amount=-1 +kerning first=66 second=106 amount=-1 +kerning first=66 second=107 amount=-1 +kerning first=66 second=108 amount=-1 +kerning first=66 second=109 amount=-1 +kerning first=66 second=110 amount=-1 +kerning first=211 second=70 amount=-1 +kerning first=66 second=112 amount=-1 +kerning first=211 second=69 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=66 second=116 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=66 second=118 amount=-1 +kerning first=66 second=119 amount=-1 +kerning first=66 second=120 amount=-1 +kerning first=66 second=121 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=66 second=187 amount=-1 +kerning first=66 second=192 amount=-2 +kerning first=66 second=193 amount=-2 +kerning first=66 second=194 amount=-2 +kerning first=66 second=196 amount=-2 +kerning first=66 second=197 amount=-2 +kerning first=66 second=198 amount=-2 +kerning first=66 second=199 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=66 second=211 amount=-1 +kerning first=66 second=212 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=66 second=217 amount=-1 +kerning first=66 second=218 amount=-1 +kerning first=66 second=219 amount=-1 +kerning first=66 second=220 amount=-1 +kerning first=66 second=221 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=66 second=224 amount=-1 +kerning first=66 second=225 amount=-1 +kerning first=66 second=226 amount=-1 +kerning first=66 second=227 amount=-1 +kerning first=66 second=228 amount=-1 +kerning first=66 second=229 amount=-1 +kerning first=66 second=230 amount=-1 +kerning first=211 second=68 amount=-1 +kerning first=211 second=66 amount=-1 +kerning first=211 second=65 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=66 second=237 amount=-1 +kerning first=210 second=8221 amount=-1 +kerning first=66 second=241 amount=-1 +kerning first=210 second=8220 amount=-1 +kerning first=210 second=8217 amount=-1 +kerning first=210 second=382 amount=-1 +kerning first=210 second=381 amount=-1 +kerning first=210 second=380 amount=-1 +kerning first=210 second=379 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=66 second=251 amount=-1 +kerning first=66 second=252 amount=-1 +kerning first=66 second=253 amount=-1 +kerning first=66 second=254 amount=-1 +kerning first=66 second=255 amount=-1 +kerning first=66 second=256 amount=-2 +kerning first=66 second=257 amount=-1 +kerning first=66 second=259 amount=-1 +kerning first=66 second=260 amount=-2 +kerning first=66 second=261 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=210 second=378 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=210 second=377 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=210 second=374 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=210 second=356 amount=-1 +kerning first=210 second=354 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=210 second=344 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=210 second=330 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=210 second=327 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=66 second=287 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=66 second=289 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=66 second=291 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=66 second=303 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=66 second=305 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=66 second=311 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=66 second=314 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=66 second=316 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=66 second=318 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=66 second=324 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=66 second=326 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=66 second=328 amount=-1 +kerning first=66 second=330 amount=-1 +kerning first=66 second=331 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=210 second=325 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=210 second=323 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=210 second=317 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=210 second=315 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=66 second=346 amount=-2 +kerning first=66 second=347 amount=-1 +kerning first=66 second=350 amount=-2 +kerning first=66 second=351 amount=-1 +kerning first=66 second=352 amount=-2 +kerning first=66 second=353 amount=-1 +kerning first=66 second=354 amount=-1 +kerning first=66 second=355 amount=-1 +kerning first=66 second=356 amount=-1 +kerning first=66 second=361 amount=-1 +kerning first=66 second=362 amount=-1 +kerning first=66 second=363 amount=-1 +kerning first=66 second=364 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=66 second=366 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=66 second=368 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=66 second=370 amount=-1 +kerning first=66 second=374 amount=-1 +kerning first=66 second=375 amount=-1 +kerning first=66 second=377 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=66 second=379 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=66 second=381 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=210 second=313 amount=-1 +kerning first=210 second=310 amount=-1 +kerning first=210 second=304 amount=-1 +kerning first=210 second=302 amount=-1 +kerning first=210 second=298 amount=-1 +kerning first=210 second=296 amount=-1 +kerning first=210 second=282 amount=-1 +kerning first=210 second=280 amount=-1 +kerning first=210 second=278 amount=-1 +kerning first=210 second=274 amount=-1 +kerning first=210 second=270 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=210 second=221 amount=-1 +kerning first=210 second=209 amount=-1 +kerning first=210 second=207 amount=-1 +kerning first=210 second=206 amount=-1 +kerning first=210 second=205 amount=-1 +kerning first=210 second=204 amount=-1 +kerning first=210 second=203 amount=-1 +kerning first=210 second=202 amount=-1 +kerning first=210 second=201 amount=-1 +kerning first=210 second=200 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=66 second=8217 amount=-2 +kerning first=66 second=8220 amount=-2 +kerning first=66 second=8221 amount=-2 +kerning first=66 second=8249 amount=-1 +kerning first=66 second=8250 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=210 second=122 amount=-1 +kerning first=210 second=90 amount=-1 +kerning first=210 second=89 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=210 second=87 amount=-1 +kerning first=67 second=65 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=67 second=67 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=67 second=71 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=67 second=73 amount=-1 +kerning first=67 second=74 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=67 second=79 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=67 second=81 amount=-1 +kerning first=67 second=82 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=210 second=86 amount=-1 +kerning first=67 second=85 amount=-1 +kerning first=210 second=84 amount=-1 +kerning first=210 second=82 amount=-1 +kerning first=210 second=80 amount=-1 +kerning first=67 second=90 amount=-1 +kerning first=210 second=78 amount=-1 +kerning first=210 second=77 amount=-1 +kerning first=67 second=99 amount=-1 +kerning first=67 second=100 amount=-1 +kerning first=67 second=101 amount=-1 +kerning first=67 second=102 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=210 second=76 amount=-1 +kerning first=210 second=75 amount=-1 +kerning first=210 second=74 amount=-1 +kerning first=210 second=73 amount=-1 +kerning first=210 second=72 amount=-1 +kerning first=210 second=70 amount=-1 +kerning first=210 second=69 amount=-1 +kerning first=67 second=111 amount=-1 +kerning first=67 second=112 amount=-1 +kerning first=67 second=113 amount=-1 +kerning first=210 second=68 amount=-1 +kerning first=210 second=66 amount=-1 +kerning first=67 second=117 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=67 second=192 amount=-1 +kerning first=67 second=193 amount=-1 +kerning first=67 second=194 amount=-1 +kerning first=67 second=196 amount=-1 +kerning first=67 second=197 amount=-1 +kerning first=67 second=198 amount=-1 +kerning first=67 second=199 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=67 second=202 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=67 second=210 amount=-1 +kerning first=67 second=211 amount=-1 +kerning first=67 second=212 amount=-1 +kerning first=67 second=213 amount=-1 +kerning first=67 second=214 amount=-1 +kerning first=67 second=216 amount=-1 +kerning first=67 second=217 amount=-1 +kerning first=67 second=218 amount=-1 +kerning first=67 second=219 amount=-1 +kerning first=67 second=220 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=209 second=375 amount=-1 +kerning first=209 second=369 amount=-1 +kerning first=209 second=367 amount=-1 +kerning first=209 second=365 amount=-1 +kerning first=209 second=363 amount=-1 +kerning first=209 second=361 amount=-1 +kerning first=209 second=353 amount=-1 +kerning first=209 second=352 amount=-1 +kerning first=67 second=231 amount=-1 +kerning first=67 second=232 amount=-1 +kerning first=67 second=233 amount=-1 +kerning first=67 second=234 amount=-1 +kerning first=67 second=235 amount=-1 +kerning first=209 second=351 amount=-1 +kerning first=67 second=240 amount=-1 +kerning first=209 second=350 amount=-1 +kerning first=67 second=242 amount=-1 +kerning first=67 second=243 amount=-1 +kerning first=67 second=244 amount=-1 +kerning first=67 second=245 amount=-1 +kerning first=67 second=246 amount=-1 +kerning first=67 second=248 amount=-1 +kerning first=67 second=249 amount=-1 +kerning first=67 second=250 amount=-1 +kerning first=67 second=251 amount=-1 +kerning first=67 second=252 amount=-1 +kerning first=209 second=347 amount=-1 +kerning first=209 second=346 amount=-1 +kerning first=209 second=339 amount=-1 +kerning first=67 second=256 amount=-1 +kerning first=209 second=338 amount=-1 +kerning first=209 second=337 amount=-1 +kerning first=67 second=260 amount=-1 +kerning first=209 second=336 amount=-1 +kerning first=67 second=262 amount=-1 +kerning first=67 second=263 amount=-1 +kerning first=67 second=264 amount=-1 +kerning first=67 second=266 amount=-1 +kerning first=67 second=267 amount=-1 +kerning first=67 second=268 amount=-1 +kerning first=67 second=269 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=67 second=275 amount=-1 +kerning first=67 second=277 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=67 second=279 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=67 second=281 amount=-1 +kerning first=67 second=282 amount=-1 +kerning first=67 second=283 amount=-1 +kerning first=67 second=284 amount=-1 +kerning first=67 second=286 amount=-1 +kerning first=67 second=287 amount=-1 +kerning first=67 second=288 amount=-1 +kerning first=67 second=289 amount=-1 +kerning first=67 second=290 amount=-1 +kerning first=67 second=291 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=67 second=302 amount=-1 +kerning first=209 second=335 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=209 second=334 amount=-1 +kerning first=67 second=310 amount=-1 +kerning first=209 second=333 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=209 second=332 amount=-1 +kerning first=67 second=315 amount=-1 +kerning first=209 second=291 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=209 second=290 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=209 second=289 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=209 second=288 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=209 second=287 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=209 second=286 amount=-1 +kerning first=67 second=332 amount=-1 +kerning first=67 second=333 amount=-1 +kerning first=67 second=334 amount=-1 +kerning first=67 second=335 amount=-1 +kerning first=67 second=336 amount=-1 +kerning first=67 second=337 amount=-1 +kerning first=67 second=338 amount=-1 +kerning first=67 second=339 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=209 second=284 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=209 second=283 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=209 second=281 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=209 second=279 amount=-1 +kerning first=209 second=277 amount=-1 +kerning first=209 second=275 amount=-1 +kerning first=67 second=361 amount=-1 +kerning first=67 second=362 amount=-1 +kerning first=67 second=363 amount=-1 +kerning first=67 second=364 amount=-1 +kerning first=67 second=365 amount=-1 +kerning first=67 second=366 amount=-1 +kerning first=67 second=367 amount=-1 +kerning first=67 second=368 amount=-1 +kerning first=67 second=369 amount=-1 +kerning first=67 second=370 amount=-1 +kerning first=209 second=269 amount=-1 +kerning first=209 second=268 amount=-1 +kerning first=67 second=377 amount=-1 +kerning first=67 second=378 amount=-1 +kerning first=67 second=379 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=67 second=381 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=209 second=267 amount=-1 +kerning first=209 second=266 amount=-1 +kerning first=209 second=264 amount=-1 +kerning first=209 second=263 amount=-1 +kerning first=209 second=262 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=209 second=255 amount=-1 +kerning first=209 second=253 amount=-1 +kerning first=209 second=251 amount=-1 +kerning first=209 second=250 amount=-1 +kerning first=209 second=248 amount=-1 +kerning first=209 second=246 amount=-1 +kerning first=209 second=245 amount=-1 +kerning first=209 second=244 amount=-1 +kerning first=209 second=243 amount=-1 +kerning first=209 second=242 amount=-1 +kerning first=209 second=240 amount=-1 +kerning first=209 second=235 amount=-1 +kerning first=209 second=234 amount=-1 +kerning first=209 second=233 amount=-1 +kerning first=209 second=232 amount=-1 +kerning first=209 second=231 amount=-1 +kerning first=67 second=8249 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=209 second=228 amount=-1 +kerning first=209 second=227 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=68 second=46 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=68 second=66 amount=-1 +kerning first=68 second=68 amount=-1 +kerning first=68 second=69 amount=-1 +kerning first=68 second=70 amount=-1 +kerning first=68 second=72 amount=-1 +kerning first=68 second=73 amount=-1 +kerning first=68 second=74 amount=-1 +kerning first=68 second=75 amount=-1 +kerning first=68 second=76 amount=-1 +kerning first=68 second=77 amount=-1 +kerning first=68 second=78 amount=-1 +kerning first=68 second=80 amount=-1 +kerning first=68 second=82 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=68 second=84 amount=-1 +kerning first=209 second=216 amount=-1 +kerning first=68 second=86 amount=-1 +kerning first=68 second=87 amount=-1 +kerning first=68 second=89 amount=-1 +kerning first=68 second=90 amount=-1 +kerning first=209 second=214 amount=-1 +kerning first=209 second=213 amount=-1 +kerning first=209 second=212 amount=-1 +kerning first=209 second=211 amount=-1 +kerning first=209 second=210 amount=-1 +kerning first=209 second=199 amount=-1 +kerning first=68 second=122 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=68 second=200 amount=-1 +kerning first=68 second=201 amount=-1 +kerning first=68 second=202 amount=-1 +kerning first=68 second=203 amount=-1 +kerning first=68 second=204 amount=-1 +kerning first=68 second=205 amount=-1 +kerning first=68 second=206 amount=-1 +kerning first=68 second=207 amount=-1 +kerning first=68 second=209 amount=-1 +kerning first=209 second=121 amount=-1 +kerning first=209 second=119 amount=-1 +kerning first=209 second=118 amount=-1 +kerning first=209 second=117 amount=-1 +kerning first=68 second=221 amount=-1 +kerning first=209 second=115 amount=-1 +kerning first=209 second=113 amount=-1 +kerning first=209 second=111 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=209 second=101 amount=-1 +kerning first=209 second=100 amount=-1 +kerning first=209 second=99 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=209 second=83 amount=-1 +kerning first=209 second=81 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=209 second=79 amount=-1 +kerning first=68 second=270 amount=-1 +kerning first=68 second=274 amount=-1 +kerning first=68 second=278 amount=-1 +kerning first=68 second=280 amount=-1 +kerning first=68 second=282 amount=-1 +kerning first=209 second=71 amount=-1 +kerning first=209 second=67 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=68 second=296 amount=-1 +kerning first=68 second=298 amount=-1 +kerning first=68 second=302 amount=-1 +kerning first=208 second=8221 amount=-1 +kerning first=68 second=304 amount=-1 +kerning first=208 second=8220 amount=-1 +kerning first=68 second=310 amount=-1 +kerning first=68 second=313 amount=-1 +kerning first=68 second=315 amount=-1 +kerning first=68 second=317 amount=-1 +kerning first=68 second=323 amount=-1 +kerning first=68 second=325 amount=-1 +kerning first=68 second=327 amount=-1 +kerning first=68 second=330 amount=-1 +kerning first=68 second=344 amount=-1 +kerning first=208 second=8217 amount=-1 +kerning first=208 second=382 amount=-1 +kerning first=208 second=381 amount=-1 +kerning first=68 second=354 amount=-1 +kerning first=68 second=356 amount=-1 +kerning first=208 second=380 amount=-1 +kerning first=208 second=379 amount=-1 +kerning first=208 second=378 amount=-1 +kerning first=208 second=377 amount=-1 +kerning first=208 second=374 amount=-1 +kerning first=68 second=374 amount=-1 +kerning first=68 second=377 amount=-1 +kerning first=68 second=378 amount=-1 +kerning first=68 second=379 amount=-1 +kerning first=68 second=380 amount=-1 +kerning first=68 second=381 amount=-1 +kerning first=68 second=382 amount=-1 +kerning first=208 second=356 amount=-1 +kerning first=208 second=354 amount=-1 +kerning first=208 second=344 amount=-1 +kerning first=208 second=330 amount=-1 +kerning first=208 second=327 amount=-1 +kerning first=208 second=325 amount=-1 +kerning first=208 second=323 amount=-1 +kerning first=208 second=317 amount=-1 +kerning first=208 second=315 amount=-1 +kerning first=208 second=313 amount=-1 +kerning first=208 second=310 amount=-1 +kerning first=208 second=304 amount=-1 +kerning first=208 second=302 amount=-1 +kerning first=208 second=298 amount=-1 +kerning first=208 second=296 amount=-1 +kerning first=208 second=282 amount=-1 +kerning first=68 second=8217 amount=-1 +kerning first=68 second=8220 amount=-1 +kerning first=68 second=8221 amount=-1 +kerning first=208 second=280 amount=-1 +kerning first=208 second=278 amount=-1 +kerning first=69 second=45 amount=-1 +kerning first=208 second=274 amount=-1 +kerning first=69 second=65 amount=-1 +kerning first=69 second=66 amount=-1 +kerning first=208 second=270 amount=-1 +kerning first=69 second=68 amount=-1 +kerning first=69 second=69 amount=-1 +kerning first=69 second=70 amount=-1 +kerning first=208 second=260 amount=-1 +kerning first=69 second=72 amount=-1 +kerning first=69 second=73 amount=-1 +kerning first=208 second=256 amount=-1 +kerning first=69 second=75 amount=-1 +kerning first=69 second=76 amount=-1 +kerning first=69 second=77 amount=-1 +kerning first=69 second=78 amount=-1 +kerning first=208 second=221 amount=-1 +kerning first=69 second=80 amount=-1 +kerning first=208 second=209 amount=-1 +kerning first=69 second=82 amount=-1 +kerning first=69 second=83 amount=-1 +kerning first=208 second=207 amount=-1 +kerning first=69 second=85 amount=-1 +kerning first=208 second=206 amount=-1 +kerning first=208 second=205 amount=-1 +kerning first=208 second=204 amount=-1 +kerning first=208 second=203 amount=-1 +kerning first=208 second=202 amount=-1 +kerning first=208 second=201 amount=-1 +kerning first=69 second=102 amount=-1 +kerning first=69 second=103 amount=-1 +kerning first=208 second=200 amount=-1 +kerning first=208 second=198 amount=-1 +kerning first=208 second=197 amount=-1 +kerning first=208 second=196 amount=-1 +kerning first=208 second=194 amount=-1 +kerning first=208 second=193 amount=-1 +kerning first=69 second=112 amount=-1 +kerning first=208 second=192 amount=-1 +kerning first=69 second=117 amount=-1 +kerning first=208 second=122 amount=-1 +kerning first=208 second=90 amount=-1 +kerning first=208 second=89 amount=-1 +kerning first=69 second=122 amount=-1 +kerning first=69 second=171 amount=-1 +kerning first=69 second=192 amount=-1 +kerning first=69 second=193 amount=-1 +kerning first=69 second=194 amount=-1 +kerning first=69 second=196 amount=-1 +kerning first=69 second=197 amount=-1 +kerning first=69 second=198 amount=-1 +kerning first=208 second=87 amount=-1 +kerning first=69 second=200 amount=-1 +kerning first=69 second=201 amount=-1 +kerning first=69 second=202 amount=-1 +kerning first=69 second=203 amount=-1 +kerning first=69 second=204 amount=-1 +kerning first=69 second=205 amount=-1 +kerning first=69 second=206 amount=-1 +kerning first=69 second=207 amount=-1 +kerning first=69 second=209 amount=-1 +kerning first=208 second=86 amount=-1 +kerning first=208 second=84 amount=-1 +kerning first=208 second=82 amount=-1 +kerning first=208 second=80 amount=-1 +kerning first=208 second=78 amount=-1 +kerning first=208 second=77 amount=-1 +kerning first=69 second=217 amount=-1 +kerning first=69 second=218 amount=-1 +kerning first=69 second=219 amount=-1 +kerning first=69 second=220 amount=-1 +kerning first=208 second=76 amount=-1 +kerning first=208 second=75 amount=-1 +kerning first=208 second=74 amount=-1 +kerning first=208 second=73 amount=-1 +kerning first=208 second=72 amount=-1 +kerning first=208 second=70 amount=-1 +kerning first=208 second=69 amount=-1 +kerning first=208 second=68 amount=-1 +kerning first=208 second=66 amount=-1 +kerning first=208 second=65 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=69 second=249 amount=-1 +kerning first=69 second=250 amount=-1 +kerning first=69 second=251 amount=-1 +kerning first=69 second=252 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=69 second=256 amount=-1 +kerning first=207 second=375 amount=-1 +kerning first=207 second=369 amount=-1 +kerning first=69 second=260 amount=-1 +kerning first=207 second=367 amount=-1 +kerning first=207 second=365 amount=-1 +kerning first=207 second=363 amount=-1 +kerning first=207 second=361 amount=-1 +kerning first=207 second=353 amount=-1 +kerning first=69 second=270 amount=-1 +kerning first=69 second=274 amount=-1 +kerning first=69 second=278 amount=-1 +kerning first=69 second=280 amount=-1 +kerning first=69 second=282 amount=-1 +kerning first=207 second=352 amount=-1 +kerning first=207 second=351 amount=-1 +kerning first=69 second=287 amount=-1 +kerning first=207 second=350 amount=-1 +kerning first=69 second=289 amount=-1 +kerning first=207 second=347 amount=-1 +kerning first=69 second=291 amount=-1 +kerning first=69 second=296 amount=-1 +kerning first=69 second=298 amount=-1 +kerning first=69 second=302 amount=-1 +kerning first=207 second=346 amount=-1 +kerning first=69 second=304 amount=-1 +kerning first=207 second=339 amount=-1 +kerning first=69 second=310 amount=-1 +kerning first=207 second=338 amount=-1 +kerning first=69 second=313 amount=-1 +kerning first=207 second=337 amount=-1 +kerning first=69 second=315 amount=-1 +kerning first=207 second=336 amount=-1 +kerning first=69 second=317 amount=-1 +kerning first=207 second=335 amount=-1 +kerning first=69 second=323 amount=-1 +kerning first=207 second=334 amount=-1 +kerning first=69 second=325 amount=-1 +kerning first=207 second=333 amount=-1 +kerning first=69 second=327 amount=-1 +kerning first=207 second=332 amount=-1 +kerning first=69 second=330 amount=-1 +kerning first=207 second=291 amount=-1 +kerning first=207 second=290 amount=-1 +kerning first=207 second=289 amount=-1 +kerning first=207 second=288 amount=-1 +kerning first=207 second=287 amount=-1 +kerning first=69 second=344 amount=-1 +kerning first=69 second=346 amount=-1 +kerning first=207 second=286 amount=-1 +kerning first=69 second=350 amount=-1 +kerning first=207 second=284 amount=-1 +kerning first=69 second=352 amount=-1 +kerning first=207 second=283 amount=-1 +kerning first=207 second=281 amount=-1 +kerning first=207 second=279 amount=-1 +kerning first=69 second=361 amount=-1 +kerning first=69 second=362 amount=-1 +kerning first=69 second=363 amount=-1 +kerning first=69 second=364 amount=-1 +kerning first=69 second=365 amount=-1 +kerning first=69 second=366 amount=-1 +kerning first=69 second=367 amount=-1 +kerning first=69 second=368 amount=-1 +kerning first=69 second=369 amount=-1 +kerning first=69 second=370 amount=-1 +kerning first=207 second=277 amount=-1 +kerning first=207 second=275 amount=-1 +kerning first=69 second=378 amount=-1 +kerning first=207 second=269 amount=-1 +kerning first=69 second=380 amount=-1 +kerning first=207 second=268 amount=-1 +kerning first=69 second=382 amount=-1 +kerning first=207 second=267 amount=-1 +kerning first=207 second=266 amount=-1 +kerning first=207 second=264 amount=-1 +kerning first=207 second=263 amount=-1 +kerning first=207 second=262 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=207 second=255 amount=-1 +kerning first=207 second=253 amount=-1 +kerning first=207 second=251 amount=-1 +kerning first=207 second=250 amount=-1 +kerning first=207 second=248 amount=-1 +kerning first=207 second=246 amount=-1 +kerning first=207 second=245 amount=-1 +kerning first=207 second=244 amount=-1 +kerning first=207 second=243 amount=-1 +kerning first=207 second=242 amount=-1 +kerning first=207 second=240 amount=-1 +kerning first=207 second=235 amount=-1 +kerning first=207 second=234 amount=-1 +kerning first=207 second=233 amount=-1 +kerning first=69 second=8249 amount=-1 +kerning first=207 second=232 amount=-1 +kerning first=207 second=231 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=207 second=228 amount=-1 +kerning first=70 second=44 amount=-1 +kerning first=70 second=45 amount=-1 +kerning first=70 second=46 amount=-1 +kerning first=70 second=65 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=207 second=224 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=70 second=97 amount=-1 +kerning first=207 second=216 amount=-1 +kerning first=207 second=214 amount=-1 +kerning first=207 second=213 amount=-1 +kerning first=207 second=212 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=207 second=211 amount=-1 +kerning first=207 second=210 amount=-1 +kerning first=207 second=199 amount=-1 +kerning first=207 second=121 amount=-1 +kerning first=207 second=119 amount=-1 +kerning first=70 second=115 amount=-1 +kerning first=207 second=118 amount=-1 +kerning first=207 second=117 amount=-1 +kerning first=207 second=115 amount=-1 +kerning first=207 second=113 amount=-1 +kerning first=70 second=122 amount=-1 +kerning first=70 second=171 amount=-1 +kerning first=70 second=192 amount=-1 +kerning first=70 second=193 amount=-1 +kerning first=70 second=194 amount=-1 +kerning first=70 second=196 amount=-1 +kerning first=70 second=197 amount=-1 +kerning first=70 second=198 amount=-1 +kerning first=207 second=111 amount=-1 +kerning first=207 second=103 amount=-1 +kerning first=207 second=101 amount=-1 +kerning first=207 second=100 amount=-1 +kerning first=207 second=99 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=207 second=83 amount=-1 +kerning first=207 second=81 amount=-1 +kerning first=207 second=79 amount=-1 +kerning first=70 second=225 amount=-1 +kerning first=70 second=226 amount=-1 +kerning first=70 second=227 amount=-1 +kerning first=207 second=71 amount=-1 +kerning first=70 second=229 amount=-1 +kerning first=70 second=230 amount=-1 +kerning first=207 second=67 amount=-1 +kerning first=206 second=8249 amount=-1 +kerning first=206 second=375 amount=-1 +kerning first=206 second=369 amount=-1 +kerning first=206 second=367 amount=-1 +kerning first=206 second=365 amount=-1 +kerning first=206 second=363 amount=-1 +kerning first=206 second=361 amount=-1 +kerning first=206 second=353 amount=-1 +kerning first=206 second=352 amount=-1 +kerning first=206 second=351 amount=-1 +kerning first=206 second=350 amount=-1 +kerning first=206 second=347 amount=-1 +kerning first=206 second=346 amount=-1 +kerning first=206 second=339 amount=-1 +kerning first=70 second=256 amount=-1 +kerning first=70 second=257 amount=-1 +kerning first=70 second=259 amount=-1 +kerning first=70 second=260 amount=-1 +kerning first=70 second=261 amount=-1 +kerning first=206 second=338 amount=-1 +kerning first=206 second=337 amount=-1 +kerning first=206 second=336 amount=-1 +kerning first=206 second=335 amount=-1 +kerning first=206 second=334 amount=-1 +kerning first=206 second=333 amount=-1 +kerning first=206 second=332 amount=-1 +kerning first=206 second=291 amount=-1 +kerning first=206 second=290 amount=-1 +kerning first=206 second=289 amount=-1 +kerning first=206 second=288 amount=-1 +kerning first=206 second=287 amount=-1 +kerning first=206 second=286 amount=-1 +kerning first=206 second=284 amount=-1 +kerning first=70 second=287 amount=-1 +kerning first=206 second=283 amount=-1 +kerning first=70 second=289 amount=-1 +kerning first=206 second=281 amount=-1 +kerning first=70 second=291 amount=-1 +kerning first=206 second=279 amount=-1 +kerning first=206 second=277 amount=-1 +kerning first=206 second=275 amount=-1 +kerning first=206 second=269 amount=-1 +kerning first=206 second=268 amount=-1 +kerning first=206 second=267 amount=-1 +kerning first=206 second=266 amount=-1 +kerning first=206 second=264 amount=-1 +kerning first=206 second=263 amount=-1 +kerning first=206 second=262 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=206 second=259 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=70 second=347 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=70 second=351 amount=-1 +kerning first=70 second=352 amount=-1 +kerning first=70 second=353 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=206 second=255 amount=-1 +kerning first=206 second=253 amount=-1 +kerning first=206 second=251 amount=-1 +kerning first=206 second=250 amount=-1 +kerning first=70 second=378 amount=-1 +kerning first=70 second=380 amount=-1 +kerning first=70 second=382 amount=-1 +kerning first=206 second=248 amount=-1 +kerning first=206 second=246 amount=-1 +kerning first=206 second=245 amount=-1 +kerning first=206 second=244 amount=-1 +kerning first=206 second=243 amount=-1 +kerning first=206 second=242 amount=-1 +kerning first=206 second=240 amount=-1 +kerning first=206 second=235 amount=-1 +kerning first=206 second=234 amount=-1 +kerning first=206 second=233 amount=-1 +kerning first=70 second=8249 amount=-1 +kerning first=206 second=232 amount=-1 +kerning first=206 second=231 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=206 second=228 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=71 second=46 amount=-1 +kerning first=71 second=65 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=206 second=225 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=206 second=216 amount=-1 +kerning first=206 second=214 amount=-1 +kerning first=206 second=213 amount=-1 +kerning first=206 second=212 amount=-1 +kerning first=206 second=211 amount=-1 +kerning first=206 second=210 amount=-1 +kerning first=206 second=199 amount=-1 +kerning first=206 second=171 amount=-1 +kerning first=206 second=121 amount=-1 +kerning first=71 second=83 amount=-1 +kerning first=71 second=84 amount=-1 +kerning first=206 second=119 amount=-1 +kerning first=71 second=86 amount=-1 +kerning first=71 second=87 amount=-1 +kerning first=71 second=89 amount=-1 +kerning first=71 second=90 amount=-1 +kerning first=206 second=118 amount=-1 +kerning first=206 second=117 amount=-1 +kerning first=71 second=102 amount=-1 +kerning first=71 second=103 amount=-1 +kerning first=206 second=115 amount=-1 +kerning first=206 second=113 amount=-1 +kerning first=206 second=111 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=206 second=101 amount=-1 +kerning first=206 second=100 amount=-1 +kerning first=206 second=99 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=206 second=83 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=71 second=192 amount=-1 +kerning first=71 second=193 amount=-1 +kerning first=71 second=194 amount=-1 +kerning first=71 second=196 amount=-1 +kerning first=71 second=197 amount=-1 +kerning first=71 second=198 amount=-1 +kerning first=206 second=81 amount=-1 +kerning first=206 second=79 amount=-1 +kerning first=206 second=71 amount=-1 +kerning first=206 second=67 amount=-1 +kerning first=206 second=45 amount=-1 +kerning first=205 second=375 amount=-1 +kerning first=205 second=369 amount=-1 +kerning first=205 second=367 amount=-1 +kerning first=205 second=365 amount=-1 +kerning first=205 second=363 amount=-1 +kerning first=205 second=361 amount=-1 +kerning first=205 second=353 amount=-1 +kerning first=205 second=352 amount=-1 +kerning first=71 second=221 amount=-1 +kerning first=205 second=351 amount=-1 +kerning first=205 second=350 amount=-1 +kerning first=205 second=347 amount=-1 +kerning first=205 second=346 amount=-1 +kerning first=205 second=339 amount=-1 +kerning first=205 second=338 amount=-1 +kerning first=205 second=337 amount=-1 +kerning first=205 second=336 amount=-1 +kerning first=205 second=335 amount=-1 +kerning first=205 second=334 amount=-1 +kerning first=205 second=333 amount=-1 +kerning first=205 second=332 amount=-1 +kerning first=71 second=256 amount=-1 +kerning first=205 second=291 amount=-1 +kerning first=205 second=290 amount=-1 +kerning first=71 second=260 amount=-1 +kerning first=205 second=289 amount=-1 +kerning first=205 second=288 amount=-1 +kerning first=205 second=287 amount=-1 +kerning first=205 second=286 amount=-1 +kerning first=205 second=284 amount=-1 +kerning first=205 second=283 amount=-1 +kerning first=71 second=287 amount=-1 +kerning first=71 second=289 amount=-1 +kerning first=71 second=291 amount=-1 +kerning first=205 second=281 amount=-1 +kerning first=205 second=279 amount=-1 +kerning first=205 second=277 amount=-1 +kerning first=205 second=275 amount=-1 +kerning first=205 second=269 amount=-1 +kerning first=205 second=268 amount=-1 +kerning first=205 second=267 amount=-1 +kerning first=205 second=266 amount=-1 +kerning first=205 second=264 amount=-1 +kerning first=205 second=263 amount=-1 +kerning first=205 second=262 amount=-1 +kerning first=205 second=261 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=205 second=255 amount=-1 +kerning first=205 second=253 amount=-1 +kerning first=205 second=251 amount=-1 +kerning first=71 second=346 amount=-1 +kerning first=71 second=350 amount=-1 +kerning first=71 second=352 amount=-1 +kerning first=71 second=354 amount=-1 +kerning first=71 second=356 amount=-1 +kerning first=205 second=250 amount=-1 +kerning first=205 second=248 amount=-1 +kerning first=205 second=246 amount=-1 +kerning first=205 second=245 amount=-1 +kerning first=205 second=244 amount=-1 +kerning first=205 second=243 amount=-1 +kerning first=205 second=242 amount=-1 +kerning first=205 second=240 amount=-1 +kerning first=205 second=235 amount=-1 +kerning first=205 second=234 amount=-1 +kerning first=71 second=374 amount=-1 +kerning first=71 second=377 amount=-1 +kerning first=205 second=233 amount=-1 +kerning first=71 second=379 amount=-1 +kerning first=205 second=232 amount=-1 +kerning first=71 second=381 amount=-1 +kerning first=205 second=231 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=205 second=229 amount=-1 +kerning first=205 second=228 amount=-1 +kerning first=205 second=227 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=205 second=216 amount=-1 +kerning first=205 second=214 amount=-1 +kerning first=205 second=213 amount=-1 +kerning first=205 second=212 amount=-1 +kerning first=205 second=211 amount=-1 +kerning first=205 second=210 amount=-1 +kerning first=205 second=199 amount=-1 +kerning first=205 second=121 amount=-1 +kerning first=205 second=119 amount=-1 +kerning first=205 second=118 amount=-1 +kerning first=205 second=117 amount=-1 +kerning first=205 second=115 amount=-1 +kerning first=205 second=113 amount=-1 +kerning first=205 second=111 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=205 second=101 amount=-1 +kerning first=205 second=100 amount=-1 +kerning first=205 second=99 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=205 second=83 amount=-1 +kerning first=205 second=81 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=205 second=79 amount=-1 +kerning first=72 second=67 amount=-1 +kerning first=72 second=71 amount=-1 +kerning first=205 second=71 amount=-1 +kerning first=72 second=79 amount=-1 +kerning first=72 second=81 amount=-1 +kerning first=72 second=83 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=72 second=99 amount=-1 +kerning first=72 second=100 amount=-1 +kerning first=72 second=101 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=205 second=67 amount=-1 +kerning first=72 second=111 amount=-1 +kerning first=204 second=375 amount=-1 +kerning first=72 second=113 amount=-1 +kerning first=72 second=115 amount=-1 +kerning first=72 second=117 amount=-1 +kerning first=72 second=118 amount=-1 +kerning first=72 second=119 amount=-1 +kerning first=72 second=121 amount=-1 +kerning first=204 second=369 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=72 second=199 amount=-1 +kerning first=72 second=210 amount=-1 +kerning first=72 second=211 amount=-1 +kerning first=72 second=212 amount=-1 +kerning first=72 second=213 amount=-1 +kerning first=72 second=214 amount=-1 +kerning first=72 second=216 amount=-1 +kerning first=72 second=224 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=72 second=228 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=72 second=231 amount=-1 +kerning first=72 second=232 amount=-1 +kerning first=72 second=233 amount=-1 +kerning first=72 second=234 amount=-1 +kerning first=72 second=235 amount=-1 +kerning first=204 second=367 amount=-1 +kerning first=72 second=240 amount=-1 +kerning first=72 second=242 amount=-1 +kerning first=72 second=243 amount=-1 +kerning first=72 second=244 amount=-1 +kerning first=72 second=245 amount=-1 +kerning first=72 second=246 amount=-1 +kerning first=72 second=248 amount=-1 +kerning first=204 second=365 amount=-1 +kerning first=72 second=250 amount=-1 +kerning first=72 second=251 amount=-1 +kerning first=204 second=363 amount=-1 +kerning first=72 second=253 amount=-1 +kerning first=72 second=255 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=72 second=262 amount=-1 +kerning first=72 second=263 amount=-1 +kerning first=72 second=264 amount=-1 +kerning first=72 second=266 amount=-1 +kerning first=72 second=267 amount=-1 +kerning first=72 second=268 amount=-1 +kerning first=72 second=269 amount=-1 +kerning first=72 second=275 amount=-1 +kerning first=72 second=277 amount=-1 +kerning first=72 second=279 amount=-1 +kerning first=72 second=281 amount=-1 +kerning first=72 second=283 amount=-1 +kerning first=72 second=284 amount=-1 +kerning first=72 second=286 amount=-1 +kerning first=72 second=287 amount=-1 +kerning first=72 second=288 amount=-1 +kerning first=72 second=289 amount=-1 +kerning first=72 second=290 amount=-1 +kerning first=72 second=291 amount=-1 +kerning first=204 second=361 amount=-1 +kerning first=204 second=353 amount=-1 +kerning first=72 second=332 amount=-1 +kerning first=72 second=333 amount=-1 +kerning first=72 second=334 amount=-1 +kerning first=72 second=335 amount=-1 +kerning first=72 second=336 amount=-1 +kerning first=72 second=337 amount=-1 +kerning first=72 second=338 amount=-1 +kerning first=72 second=339 amount=-1 +kerning first=72 second=346 amount=-1 +kerning first=72 second=347 amount=-1 +kerning first=72 second=350 amount=-1 +kerning first=72 second=351 amount=-1 +kerning first=72 second=352 amount=-1 +kerning first=72 second=353 amount=-1 +kerning first=72 second=361 amount=-1 +kerning first=72 second=363 amount=-1 +kerning first=72 second=365 amount=-1 +kerning first=72 second=367 amount=-1 +kerning first=72 second=369 amount=-1 +kerning first=72 second=375 amount=-1 +kerning first=204 second=352 amount=-1 +kerning first=204 second=351 amount=-1 +kerning first=204 second=350 amount=-1 +kerning first=204 second=347 amount=-1 +kerning first=204 second=346 amount=-1 +kerning first=204 second=339 amount=-1 +kerning first=204 second=338 amount=-1 +kerning first=204 second=337 amount=-1 +kerning first=204 second=336 amount=-1 +kerning first=204 second=335 amount=-1 +kerning first=204 second=334 amount=-1 +kerning first=204 second=333 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=204 second=332 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=204 second=291 amount=-1 +kerning first=73 second=67 amount=-1 +kerning first=73 second=71 amount=-1 +kerning first=204 second=290 amount=-1 +kerning first=73 second=79 amount=-1 +kerning first=73 second=81 amount=-1 +kerning first=73 second=83 amount=-1 +kerning first=73 second=97 amount=-1 +kerning first=73 second=99 amount=-1 +kerning first=73 second=100 amount=-1 +kerning first=73 second=101 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=204 second=289 amount=-1 +kerning first=73 second=111 amount=-1 +kerning first=204 second=288 amount=-1 +kerning first=73 second=113 amount=-1 +kerning first=73 second=115 amount=-1 +kerning first=73 second=117 amount=-1 +kerning first=73 second=118 amount=-1 +kerning first=73 second=119 amount=-1 +kerning first=73 second=121 amount=-1 +kerning first=204 second=287 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=73 second=199 amount=-1 +kerning first=73 second=210 amount=-1 +kerning first=73 second=211 amount=-1 +kerning first=73 second=212 amount=-1 +kerning first=73 second=213 amount=-1 +kerning first=73 second=214 amount=-1 +kerning first=73 second=216 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=73 second=228 amount=-1 +kerning first=73 second=229 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=73 second=231 amount=-1 +kerning first=73 second=232 amount=-1 +kerning first=73 second=233 amount=-1 +kerning first=73 second=234 amount=-1 +kerning first=73 second=235 amount=-1 +kerning first=204 second=286 amount=-1 +kerning first=73 second=240 amount=-1 +kerning first=73 second=242 amount=-1 +kerning first=73 second=243 amount=-1 +kerning first=73 second=244 amount=-1 +kerning first=73 second=245 amount=-1 +kerning first=73 second=246 amount=-1 +kerning first=73 second=248 amount=-1 +kerning first=204 second=284 amount=-1 +kerning first=73 second=250 amount=-1 +kerning first=73 second=251 amount=-1 +kerning first=204 second=283 amount=-1 +kerning first=73 second=253 amount=-1 +kerning first=73 second=255 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=73 second=262 amount=-1 +kerning first=73 second=263 amount=-1 +kerning first=73 second=264 amount=-1 +kerning first=73 second=266 amount=-1 +kerning first=73 second=267 amount=-1 +kerning first=73 second=268 amount=-1 +kerning first=73 second=269 amount=-1 +kerning first=73 second=275 amount=-1 +kerning first=73 second=277 amount=-1 +kerning first=73 second=279 amount=-1 +kerning first=73 second=281 amount=-1 +kerning first=73 second=283 amount=-1 +kerning first=73 second=284 amount=-1 +kerning first=73 second=286 amount=-1 +kerning first=73 second=287 amount=-1 +kerning first=73 second=288 amount=-1 +kerning first=73 second=289 amount=-1 +kerning first=73 second=290 amount=-1 +kerning first=73 second=291 amount=-1 +kerning first=204 second=281 amount=-1 +kerning first=204 second=279 amount=-1 +kerning first=73 second=332 amount=-1 +kerning first=73 second=333 amount=-1 +kerning first=73 second=334 amount=-1 +kerning first=73 second=335 amount=-1 +kerning first=73 second=336 amount=-1 +kerning first=73 second=337 amount=-1 +kerning first=73 second=338 amount=-1 +kerning first=73 second=339 amount=-1 +kerning first=73 second=346 amount=-1 +kerning first=73 second=347 amount=-1 +kerning first=73 second=350 amount=-1 +kerning first=73 second=351 amount=-1 +kerning first=73 second=352 amount=-1 +kerning first=73 second=353 amount=-1 +kerning first=73 second=361 amount=-1 +kerning first=73 second=363 amount=-1 +kerning first=73 second=365 amount=-1 +kerning first=73 second=367 amount=-1 +kerning first=73 second=369 amount=-1 +kerning first=73 second=375 amount=-1 +kerning first=204 second=277 amount=-1 +kerning first=204 second=275 amount=-1 +kerning first=204 second=269 amount=-1 +kerning first=204 second=268 amount=-1 +kerning first=204 second=267 amount=-1 +kerning first=204 second=266 amount=-1 +kerning first=204 second=264 amount=-1 +kerning first=204 second=263 amount=-1 +kerning first=204 second=262 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=204 second=257 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=204 second=255 amount=-1 +kerning first=74 second=45 amount=-1 +kerning first=204 second=253 amount=-1 +kerning first=74 second=65 amount=-2 +kerning first=74 second=67 amount=-1 +kerning first=74 second=71 amount=-1 +kerning first=74 second=74 amount=-1 +kerning first=74 second=79 amount=-1 +kerning first=74 second=81 amount=-1 +kerning first=204 second=251 amount=-1 +kerning first=204 second=250 amount=-1 +kerning first=204 second=248 amount=-1 +kerning first=204 second=246 amount=-1 +kerning first=204 second=245 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=74 second=99 amount=-1 +kerning first=74 second=100 amount=-1 +kerning first=74 second=101 amount=-1 +kerning first=204 second=244 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=74 second=105 amount=-1 +kerning first=204 second=243 amount=-1 +kerning first=204 second=242 amount=-1 +kerning first=74 second=111 amount=-1 +kerning first=74 second=112 amount=-1 +kerning first=74 second=113 amount=-1 +kerning first=204 second=240 amount=-1 +kerning first=74 second=115 amount=-1 +kerning first=204 second=235 amount=-1 +kerning first=204 second=234 amount=-1 +kerning first=204 second=233 amount=-1 +kerning first=74 second=171 amount=-1 +kerning first=74 second=192 amount=-2 +kerning first=74 second=193 amount=-2 +kerning first=74 second=194 amount=-2 +kerning first=74 second=196 amount=-2 +kerning first=74 second=197 amount=-2 +kerning first=74 second=198 amount=-2 +kerning first=74 second=199 amount=-1 +kerning first=74 second=210 amount=-1 +kerning first=74 second=211 amount=-1 +kerning first=74 second=212 amount=-1 +kerning first=74 second=213 amount=-1 +kerning first=74 second=214 amount=-1 +kerning first=74 second=216 amount=-1 +kerning first=204 second=232 amount=-1 +kerning first=204 second=231 amount=-1 +kerning first=74 second=224 amount=-1 +kerning first=74 second=225 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=74 second=228 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=74 second=231 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=74 second=233 amount=-1 +kerning first=74 second=234 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=74 second=237 amount=-1 +kerning first=74 second=240 amount=-1 +kerning first=204 second=228 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=74 second=243 amount=-1 +kerning first=74 second=244 amount=-1 +kerning first=74 second=245 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=74 second=248 amount=-1 +kerning first=74 second=256 amount=-2 +kerning first=74 second=257 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=74 second=260 amount=-2 +kerning first=74 second=261 amount=-1 +kerning first=74 second=262 amount=-1 +kerning first=74 second=263 amount=-1 +kerning first=74 second=264 amount=-1 +kerning first=74 second=266 amount=-1 +kerning first=74 second=267 amount=-1 +kerning first=74 second=268 amount=-1 +kerning first=74 second=269 amount=-1 +kerning first=74 second=275 amount=-1 +kerning first=74 second=277 amount=-1 +kerning first=74 second=279 amount=-1 +kerning first=74 second=281 amount=-1 +kerning first=74 second=283 amount=-1 +kerning first=74 second=284 amount=-1 +kerning first=74 second=286 amount=-1 +kerning first=74 second=287 amount=-1 +kerning first=74 second=288 amount=-1 +kerning first=74 second=289 amount=-1 +kerning first=74 second=290 amount=-1 +kerning first=74 second=291 amount=-1 +kerning first=74 second=303 amount=-1 +kerning first=74 second=305 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=204 second=216 amount=-1 +kerning first=204 second=214 amount=-1 +kerning first=74 second=332 amount=-1 +kerning first=74 second=333 amount=-1 +kerning first=74 second=334 amount=-1 +kerning first=74 second=335 amount=-1 +kerning first=74 second=336 amount=-1 +kerning first=74 second=337 amount=-1 +kerning first=74 second=338 amount=-1 +kerning first=74 second=339 amount=-1 +kerning first=204 second=213 amount=-1 +kerning first=204 second=212 amount=-1 +kerning first=74 second=347 amount=-1 +kerning first=204 second=211 amount=-1 +kerning first=74 second=351 amount=-1 +kerning first=204 second=210 amount=-1 +kerning first=74 second=353 amount=-1 +kerning first=204 second=199 amount=-1 +kerning first=204 second=121 amount=-1 +kerning first=204 second=119 amount=-1 +kerning first=204 second=118 amount=-1 +kerning first=204 second=117 amount=-1 +kerning first=204 second=115 amount=-1 +kerning first=204 second=113 amount=-1 +kerning first=204 second=111 amount=-1 +kerning first=204 second=103 amount=-1 +kerning first=204 second=101 amount=-1 +kerning first=204 second=100 amount=-1 +kerning first=204 second=99 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=204 second=83 amount=-1 +kerning first=204 second=81 amount=-1 +kerning first=204 second=79 amount=-1 +kerning first=204 second=71 amount=-1 +kerning first=204 second=67 amount=-1 +kerning first=203 second=8249 amount=-1 +kerning first=74 second=8249 amount=-1 +kerning first=203 second=382 amount=-1 +kerning first=203 second=380 amount=-1 +kerning first=203 second=378 amount=-1 +kerning first=203 second=370 amount=-1 +kerning first=203 second=369 amount=-1 +kerning first=203 second=368 amount=-1 +kerning first=75 second=45 amount=-2 +kerning first=203 second=367 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=75 second=83 amount=-1 +kerning first=75 second=84 amount=-1 +kerning first=75 second=85 amount=-1 +kerning first=75 second=86 amount=-1 +kerning first=75 second=87 amount=-1 +kerning first=75 second=89 amount=-1 +kerning first=203 second=366 amount=-1 +kerning first=203 second=365 amount=-1 +kerning first=75 second=99 amount=-1 +kerning first=75 second=100 amount=-1 +kerning first=75 second=101 amount=-1 +kerning first=75 second=103 amount=-1 +kerning first=203 second=364 amount=-1 +kerning first=203 second=363 amount=-1 +kerning first=203 second=362 amount=-1 +kerning first=203 second=361 amount=-1 +kerning first=75 second=111 amount=-1 +kerning first=203 second=352 amount=-1 +kerning first=75 second=113 amount=-1 +kerning first=203 second=350 amount=-1 +kerning first=203 second=346 amount=-1 +kerning first=203 second=344 amount=-1 +kerning first=75 second=117 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=75 second=121 amount=-1 +kerning first=75 second=171 amount=-2 +kerning first=75 second=199 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=75 second=214 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=75 second=217 amount=-1 +kerning first=75 second=218 amount=-1 +kerning first=75 second=219 amount=-1 +kerning first=75 second=220 amount=-1 +kerning first=75 second=221 amount=-1 +kerning first=203 second=330 amount=-1 +kerning first=203 second=327 amount=-1 +kerning first=203 second=325 amount=-1 +kerning first=203 second=323 amount=-1 +kerning first=203 second=317 amount=-1 +kerning first=203 second=315 amount=-1 +kerning first=203 second=313 amount=-1 +kerning first=75 second=231 amount=-1 +kerning first=75 second=232 amount=-1 +kerning first=75 second=233 amount=-1 +kerning first=75 second=234 amount=-1 +kerning first=75 second=235 amount=-1 +kerning first=75 second=240 amount=-1 +kerning first=75 second=242 amount=-1 +kerning first=75 second=243 amount=-1 +kerning first=75 second=244 amount=-1 +kerning first=75 second=245 amount=-1 +kerning first=75 second=246 amount=-1 +kerning first=75 second=248 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=75 second=253 amount=-1 +kerning first=203 second=310 amount=-1 +kerning first=75 second=255 amount=-1 +kerning first=203 second=304 amount=-1 +kerning first=203 second=302 amount=-1 +kerning first=203 second=298 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=75 second=263 amount=-1 +kerning first=75 second=264 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=75 second=267 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=75 second=269 amount=-1 +kerning first=75 second=275 amount=-1 +kerning first=75 second=277 amount=-1 +kerning first=75 second=279 amount=-1 +kerning first=75 second=281 amount=-1 +kerning first=75 second=283 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=75 second=287 amount=-1 +kerning first=75 second=288 amount=-1 +kerning first=75 second=289 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=75 second=291 amount=-1 +kerning first=203 second=296 amount=-1 +kerning first=203 second=291 amount=-1 +kerning first=203 second=289 amount=-1 +kerning first=203 second=287 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=75 second=333 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=75 second=335 amount=-1 +kerning first=75 second=336 amount=-1 +kerning first=75 second=337 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=75 second=339 amount=-1 +kerning first=203 second=282 amount=-1 +kerning first=75 second=346 amount=-1 +kerning first=203 second=280 amount=-1 +kerning first=75 second=350 amount=-1 +kerning first=203 second=278 amount=-1 +kerning first=75 second=352 amount=-1 +kerning first=203 second=274 amount=-1 +kerning first=75 second=354 amount=-1 +kerning first=203 second=270 amount=-1 +kerning first=75 second=356 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=75 second=362 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=75 second=364 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=75 second=366 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=75 second=368 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=75 second=370 amount=-1 +kerning first=75 second=374 amount=-1 +kerning first=75 second=375 amount=-1 +kerning first=203 second=260 amount=-1 +kerning first=203 second=256 amount=-1 +kerning first=203 second=252 amount=-1 +kerning first=203 second=251 amount=-1 +kerning first=203 second=250 amount=-1 +kerning first=203 second=249 amount=-1 +kerning first=203 second=220 amount=-1 +kerning first=203 second=219 amount=-1 +kerning first=203 second=218 amount=-1 +kerning first=203 second=217 amount=-1 +kerning first=203 second=209 amount=-1 +kerning first=203 second=207 amount=-1 +kerning first=203 second=206 amount=-1 +kerning first=203 second=205 amount=-1 +kerning first=75 second=8217 amount=-1 +kerning first=75 second=8220 amount=-1 +kerning first=75 second=8221 amount=-1 +kerning first=75 second=8249 amount=-2 +kerning first=203 second=204 amount=-1 +kerning first=76 second=65 amount=-1 +kerning first=76 second=66 amount=-1 +kerning first=203 second=203 amount=-1 +kerning first=76 second=68 amount=-1 +kerning first=76 second=69 amount=-1 +kerning first=76 second=70 amount=-1 +kerning first=203 second=202 amount=-1 +kerning first=76 second=72 amount=-1 +kerning first=76 second=73 amount=-1 +kerning first=203 second=201 amount=-1 +kerning first=76 second=75 amount=-1 +kerning first=76 second=76 amount=-1 +kerning first=76 second=77 amount=-1 +kerning first=76 second=78 amount=-1 +kerning first=203 second=200 amount=-1 +kerning first=76 second=80 amount=-1 +kerning first=203 second=198 amount=-1 +kerning first=76 second=82 amount=-1 +kerning first=203 second=197 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=76 second=90 amount=-1 +kerning first=76 second=98 amount=-1 +kerning first=76 second=103 amount=-1 +kerning first=76 second=104 amount=-1 +kerning first=76 second=105 amount=-1 +kerning first=76 second=106 amount=-1 +kerning first=76 second=107 amount=-1 +kerning first=76 second=108 amount=-1 +kerning first=203 second=196 amount=-1 +kerning first=203 second=194 amount=-1 +kerning first=76 second=112 amount=-1 +kerning first=203 second=193 amount=-1 +kerning first=76 second=117 amount=-1 +kerning first=76 second=118 amount=-1 +kerning first=76 second=119 amount=-1 +kerning first=203 second=192 amount=-1 +kerning first=76 second=121 amount=-1 +kerning first=76 second=122 amount=-1 +kerning first=203 second=171 amount=-1 +kerning first=76 second=192 amount=-1 +kerning first=76 second=193 amount=-1 +kerning first=76 second=194 amount=-1 +kerning first=76 second=196 amount=-1 +kerning first=76 second=197 amount=-1 +kerning first=76 second=198 amount=-1 +kerning first=203 second=122 amount=-1 +kerning first=76 second=200 amount=-1 +kerning first=76 second=201 amount=-1 +kerning first=76 second=202 amount=-1 +kerning first=76 second=203 amount=-1 +kerning first=76 second=204 amount=-1 +kerning first=76 second=205 amount=-1 +kerning first=76 second=206 amount=-1 +kerning first=76 second=207 amount=-1 +kerning first=76 second=209 amount=-1 +kerning first=203 second=117 amount=-1 +kerning first=203 second=112 amount=-1 +kerning first=203 second=103 amount=-1 +kerning first=203 second=102 amount=-1 +kerning first=203 second=85 amount=-1 +kerning first=203 second=83 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=203 second=82 amount=-1 +kerning first=76 second=237 amount=-1 +kerning first=203 second=80 amount=-1 +kerning first=76 second=249 amount=-1 +kerning first=76 second=250 amount=-1 +kerning first=76 second=251 amount=-1 +kerning first=76 second=252 amount=-1 +kerning first=76 second=253 amount=-1 +kerning first=76 second=254 amount=-1 +kerning first=76 second=255 amount=-1 +kerning first=76 second=256 amount=-1 +kerning first=76 second=260 amount=-1 +kerning first=203 second=78 amount=-1 +kerning first=203 second=77 amount=-1 +kerning first=203 second=76 amount=-1 +kerning first=203 second=75 amount=-1 +kerning first=76 second=270 amount=-1 +kerning first=76 second=274 amount=-1 +kerning first=76 second=278 amount=-1 +kerning first=76 second=280 amount=-1 +kerning first=76 second=282 amount=-1 +kerning first=203 second=73 amount=-1 +kerning first=203 second=72 amount=-1 +kerning first=76 second=287 amount=-1 +kerning first=203 second=70 amount=-1 +kerning first=76 second=289 amount=-1 +kerning first=203 second=69 amount=-1 +kerning first=76 second=291 amount=-1 +kerning first=76 second=296 amount=-1 +kerning first=76 second=298 amount=-1 +kerning first=76 second=302 amount=-1 +kerning first=76 second=303 amount=-1 +kerning first=76 second=304 amount=-1 +kerning first=76 second=305 amount=-1 +kerning first=76 second=310 amount=-1 +kerning first=76 second=311 amount=-1 +kerning first=76 second=313 amount=-1 +kerning first=76 second=314 amount=-1 +kerning first=76 second=315 amount=-1 +kerning first=76 second=316 amount=-1 +kerning first=76 second=317 amount=-1 +kerning first=76 second=318 amount=-1 +kerning first=76 second=323 amount=-1 +kerning first=203 second=68 amount=-1 +kerning first=76 second=325 amount=-1 +kerning first=203 second=66 amount=-1 +kerning first=76 second=327 amount=-1 +kerning first=203 second=65 amount=-1 +kerning first=76 second=330 amount=-1 +kerning first=203 second=45 amount=-1 +kerning first=202 second=8249 amount=-1 +kerning first=202 second=382 amount=-1 +kerning first=202 second=380 amount=-1 +kerning first=202 second=378 amount=-1 +kerning first=76 second=344 amount=-1 +kerning first=202 second=370 amount=-1 +kerning first=202 second=369 amount=-1 +kerning first=202 second=368 amount=-1 +kerning first=202 second=367 amount=-1 +kerning first=202 second=366 amount=-1 +kerning first=202 second=365 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=76 second=361 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=76 second=363 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=76 second=365 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=76 second=367 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=76 second=369 amount=-1 +kerning first=76 second=370 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=76 second=375 amount=-1 +kerning first=76 second=377 amount=-1 +kerning first=76 second=378 amount=-1 +kerning first=76 second=379 amount=-1 +kerning first=76 second=380 amount=-1 +kerning first=76 second=381 amount=-1 +kerning first=76 second=382 amount=-1 +kerning first=202 second=364 amount=-1 +kerning first=202 second=363 amount=-1 +kerning first=202 second=362 amount=-1 +kerning first=202 second=361 amount=-1 +kerning first=202 second=352 amount=-1 +kerning first=202 second=350 amount=-1 +kerning first=202 second=346 amount=-1 +kerning first=202 second=344 amount=-1 +kerning first=202 second=330 amount=-1 +kerning first=202 second=327 amount=-1 +kerning first=202 second=325 amount=-1 +kerning first=202 second=323 amount=-1 +kerning first=202 second=317 amount=-1 +kerning first=202 second=315 amount=-1 +kerning first=202 second=313 amount=-1 +kerning first=202 second=310 amount=-1 +kerning first=202 second=304 amount=-1 +kerning first=202 second=302 amount=-1 +kerning first=202 second=298 amount=-1 +kerning first=202 second=296 amount=-1 +kerning first=202 second=291 amount=-1 +kerning first=202 second=289 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=202 second=287 amount=-1 +kerning first=202 second=282 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=202 second=280 amount=-1 +kerning first=77 second=67 amount=-1 +kerning first=77 second=71 amount=-1 +kerning first=202 second=278 amount=-1 +kerning first=77 second=79 amount=-1 +kerning first=77 second=81 amount=-1 +kerning first=77 second=83 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=77 second=99 amount=-1 +kerning first=77 second=100 amount=-1 +kerning first=77 second=101 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=202 second=274 amount=-1 +kerning first=77 second=111 amount=-1 +kerning first=202 second=270 amount=-1 +kerning first=77 second=113 amount=-1 +kerning first=77 second=115 amount=-1 +kerning first=77 second=117 amount=-1 +kerning first=77 second=118 amount=-1 +kerning first=77 second=119 amount=-1 +kerning first=77 second=121 amount=-1 +kerning first=202 second=260 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=77 second=199 amount=-1 +kerning first=77 second=210 amount=-1 +kerning first=77 second=211 amount=-1 +kerning first=77 second=212 amount=-1 +kerning first=77 second=213 amount=-1 +kerning first=77 second=214 amount=-1 +kerning first=77 second=216 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=77 second=228 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=77 second=231 amount=-1 +kerning first=77 second=232 amount=-1 +kerning first=77 second=233 amount=-1 +kerning first=77 second=234 amount=-1 +kerning first=77 second=235 amount=-1 +kerning first=202 second=256 amount=-1 +kerning first=77 second=240 amount=-1 +kerning first=77 second=242 amount=-1 +kerning first=77 second=243 amount=-1 +kerning first=77 second=244 amount=-1 +kerning first=77 second=245 amount=-1 +kerning first=77 second=246 amount=-1 +kerning first=77 second=248 amount=-1 +kerning first=202 second=252 amount=-1 +kerning first=77 second=250 amount=-1 +kerning first=77 second=251 amount=-1 +kerning first=202 second=251 amount=-1 +kerning first=77 second=253 amount=-1 +kerning first=77 second=255 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=77 second=262 amount=-1 +kerning first=77 second=263 amount=-1 +kerning first=77 second=264 amount=-1 +kerning first=77 second=266 amount=-1 +kerning first=77 second=267 amount=-1 +kerning first=77 second=268 amount=-1 +kerning first=77 second=269 amount=-1 +kerning first=77 second=275 amount=-1 +kerning first=77 second=277 amount=-1 +kerning first=77 second=279 amount=-1 +kerning first=77 second=281 amount=-1 +kerning first=77 second=283 amount=-1 +kerning first=77 second=284 amount=-1 +kerning first=77 second=286 amount=-1 +kerning first=77 second=287 amount=-1 +kerning first=77 second=288 amount=-1 +kerning first=77 second=289 amount=-1 +kerning first=77 second=290 amount=-1 +kerning first=77 second=291 amount=-1 +kerning first=202 second=250 amount=-1 +kerning first=202 second=249 amount=-1 +kerning first=77 second=332 amount=-1 +kerning first=77 second=333 amount=-1 +kerning first=77 second=334 amount=-1 +kerning first=77 second=335 amount=-1 +kerning first=77 second=336 amount=-1 +kerning first=77 second=337 amount=-1 +kerning first=77 second=338 amount=-1 +kerning first=77 second=339 amount=-1 +kerning first=77 second=346 amount=-1 +kerning first=77 second=347 amount=-1 +kerning first=77 second=350 amount=-1 +kerning first=77 second=351 amount=-1 +kerning first=77 second=352 amount=-1 +kerning first=77 second=353 amount=-1 +kerning first=77 second=361 amount=-1 +kerning first=77 second=363 amount=-1 +kerning first=77 second=365 amount=-1 +kerning first=77 second=367 amount=-1 +kerning first=77 second=369 amount=-1 +kerning first=77 second=375 amount=-1 +kerning first=202 second=220 amount=-1 +kerning first=202 second=219 amount=-1 +kerning first=202 second=218 amount=-1 +kerning first=202 second=217 amount=-1 +kerning first=202 second=209 amount=-1 +kerning first=202 second=207 amount=-1 +kerning first=202 second=206 amount=-1 +kerning first=202 second=205 amount=-1 +kerning first=202 second=204 amount=-1 +kerning first=202 second=203 amount=-1 +kerning first=202 second=202 amount=-1 +kerning first=202 second=201 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=202 second=200 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=202 second=198 amount=-1 +kerning first=78 second=67 amount=-1 +kerning first=78 second=71 amount=-1 +kerning first=202 second=197 amount=-1 +kerning first=78 second=79 amount=-1 +kerning first=78 second=81 amount=-1 +kerning first=78 second=83 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=78 second=99 amount=-1 +kerning first=78 second=100 amount=-1 +kerning first=78 second=101 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=202 second=196 amount=-1 +kerning first=78 second=111 amount=-1 +kerning first=202 second=194 amount=-1 +kerning first=78 second=113 amount=-1 +kerning first=78 second=115 amount=-1 +kerning first=78 second=117 amount=-1 +kerning first=78 second=118 amount=-1 +kerning first=78 second=119 amount=-1 +kerning first=78 second=121 amount=-1 +kerning first=202 second=193 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=78 second=199 amount=-1 +kerning first=78 second=210 amount=-1 +kerning first=78 second=211 amount=-1 +kerning first=78 second=212 amount=-1 +kerning first=78 second=213 amount=-1 +kerning first=78 second=214 amount=-1 +kerning first=78 second=216 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=78 second=225 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=78 second=227 amount=-1 +kerning first=78 second=228 amount=-1 +kerning first=78 second=229 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=78 second=231 amount=-1 +kerning first=78 second=232 amount=-1 +kerning first=78 second=233 amount=-1 +kerning first=78 second=234 amount=-1 +kerning first=78 second=235 amount=-1 +kerning first=202 second=192 amount=-1 +kerning first=78 second=240 amount=-1 +kerning first=78 second=242 amount=-1 +kerning first=78 second=243 amount=-1 +kerning first=78 second=244 amount=-1 +kerning first=78 second=245 amount=-1 +kerning first=78 second=246 amount=-1 +kerning first=78 second=248 amount=-1 +kerning first=202 second=171 amount=-1 +kerning first=78 second=250 amount=-1 +kerning first=78 second=251 amount=-1 +kerning first=202 second=122 amount=-1 +kerning first=78 second=253 amount=-1 +kerning first=78 second=255 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=78 second=261 amount=-1 +kerning first=78 second=262 amount=-1 +kerning first=78 second=263 amount=-1 +kerning first=78 second=264 amount=-1 +kerning first=78 second=266 amount=-1 +kerning first=78 second=267 amount=-1 +kerning first=78 second=268 amount=-1 +kerning first=78 second=269 amount=-1 +kerning first=78 second=275 amount=-1 +kerning first=78 second=277 amount=-1 +kerning first=78 second=279 amount=-1 +kerning first=78 second=281 amount=-1 +kerning first=78 second=283 amount=-1 +kerning first=78 second=284 amount=-1 +kerning first=78 second=286 amount=-1 +kerning first=78 second=287 amount=-1 +kerning first=78 second=288 amount=-1 +kerning first=78 second=289 amount=-1 +kerning first=78 second=290 amount=-1 +kerning first=78 second=291 amount=-1 +kerning first=202 second=117 amount=-1 +kerning first=202 second=112 amount=-1 +kerning first=78 second=332 amount=-1 +kerning first=78 second=333 amount=-1 +kerning first=78 second=334 amount=-1 +kerning first=78 second=335 amount=-1 +kerning first=78 second=336 amount=-1 +kerning first=78 second=337 amount=-1 +kerning first=78 second=338 amount=-1 +kerning first=78 second=339 amount=-1 +kerning first=78 second=346 amount=-1 +kerning first=78 second=347 amount=-1 +kerning first=78 second=350 amount=-1 +kerning first=78 second=351 amount=-1 +kerning first=78 second=352 amount=-1 +kerning first=78 second=353 amount=-1 +kerning first=78 second=361 amount=-1 +kerning first=78 second=363 amount=-1 +kerning first=78 second=365 amount=-1 +kerning first=78 second=367 amount=-1 +kerning first=78 second=369 amount=-1 +kerning first=78 second=375 amount=-1 +kerning first=202 second=103 amount=-1 +kerning first=202 second=102 amount=-1 +kerning first=202 second=85 amount=-1 +kerning first=202 second=83 amount=-1 +kerning first=202 second=82 amount=-1 +kerning first=202 second=80 amount=-1 +kerning first=202 second=78 amount=-1 +kerning first=202 second=77 amount=-1 +kerning first=202 second=76 amount=-1 +kerning first=202 second=75 amount=-1 +kerning first=202 second=73 amount=-1 +kerning first=202 second=72 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=202 second=70 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=79 second=66 amount=-1 +kerning first=79 second=68 amount=-1 +kerning first=79 second=69 amount=-1 +kerning first=79 second=70 amount=-1 +kerning first=79 second=72 amount=-1 +kerning first=79 second=73 amount=-1 +kerning first=79 second=74 amount=-1 +kerning first=79 second=75 amount=-1 +kerning first=79 second=76 amount=-1 +kerning first=79 second=77 amount=-1 +kerning first=79 second=78 amount=-1 +kerning first=79 second=80 amount=-1 +kerning first=79 second=82 amount=-1 +kerning first=202 second=69 amount=-1 +kerning first=79 second=84 amount=-1 +kerning first=202 second=68 amount=-1 +kerning first=79 second=86 amount=-1 +kerning first=79 second=87 amount=-1 +kerning first=79 second=89 amount=-1 +kerning first=79 second=90 amount=-1 +kerning first=202 second=66 amount=-1 +kerning first=202 second=65 amount=-1 +kerning first=202 second=45 amount=-1 +kerning first=201 second=8249 amount=-1 +kerning first=201 second=382 amount=-1 +kerning first=201 second=380 amount=-1 +kerning first=79 second=122 amount=-1 +kerning first=201 second=378 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=79 second=200 amount=-1 +kerning first=79 second=201 amount=-1 +kerning first=79 second=202 amount=-1 +kerning first=79 second=203 amount=-1 +kerning first=79 second=204 amount=-1 +kerning first=79 second=205 amount=-1 +kerning first=79 second=206 amount=-1 +kerning first=79 second=207 amount=-1 +kerning first=79 second=209 amount=-1 +kerning first=201 second=370 amount=-1 +kerning first=201 second=369 amount=-1 +kerning first=201 second=368 amount=-1 +kerning first=201 second=367 amount=-1 +kerning first=79 second=221 amount=-1 +kerning first=201 second=366 amount=-1 +kerning first=201 second=365 amount=-1 +kerning first=201 second=364 amount=-1 +kerning first=201 second=363 amount=-1 +kerning first=201 second=362 amount=-1 +kerning first=201 second=361 amount=-1 +kerning first=201 second=352 amount=-1 +kerning first=201 second=350 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=201 second=346 amount=-1 +kerning first=201 second=344 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=201 second=330 amount=-1 +kerning first=79 second=270 amount=-1 +kerning first=79 second=274 amount=-1 +kerning first=79 second=278 amount=-1 +kerning first=79 second=280 amount=-1 +kerning first=79 second=282 amount=-1 +kerning first=201 second=327 amount=-1 +kerning first=201 second=325 amount=-1 +kerning first=201 second=323 amount=-1 +kerning first=79 second=296 amount=-1 +kerning first=79 second=298 amount=-1 +kerning first=79 second=302 amount=-1 +kerning first=201 second=317 amount=-1 +kerning first=79 second=304 amount=-1 +kerning first=201 second=315 amount=-1 +kerning first=79 second=310 amount=-1 +kerning first=79 second=313 amount=-1 +kerning first=79 second=315 amount=-1 +kerning first=79 second=317 amount=-1 +kerning first=79 second=323 amount=-1 +kerning first=79 second=325 amount=-1 +kerning first=79 second=327 amount=-1 +kerning first=79 second=330 amount=-1 +kerning first=79 second=344 amount=-1 +kerning first=201 second=313 amount=-1 +kerning first=201 second=310 amount=-1 +kerning first=201 second=304 amount=-1 +kerning first=79 second=354 amount=-1 +kerning first=79 second=356 amount=-1 +kerning first=201 second=302 amount=-1 +kerning first=201 second=298 amount=-1 +kerning first=201 second=296 amount=-1 +kerning first=201 second=291 amount=-1 +kerning first=201 second=289 amount=-1 +kerning first=79 second=374 amount=-1 +kerning first=79 second=377 amount=-1 +kerning first=79 second=378 amount=-1 +kerning first=79 second=379 amount=-1 +kerning first=79 second=380 amount=-1 +kerning first=79 second=381 amount=-1 +kerning first=79 second=382 amount=-1 +kerning first=201 second=287 amount=-1 +kerning first=201 second=282 amount=-1 +kerning first=201 second=280 amount=-1 +kerning first=201 second=278 amount=-1 +kerning first=201 second=274 amount=-1 +kerning first=201 second=270 amount=-1 +kerning first=201 second=260 amount=-1 +kerning first=201 second=256 amount=-1 +kerning first=201 second=252 amount=-1 +kerning first=201 second=251 amount=-1 +kerning first=201 second=250 amount=-1 +kerning first=201 second=249 amount=-1 +kerning first=201 second=220 amount=-1 +kerning first=201 second=219 amount=-1 +kerning first=201 second=218 amount=-1 +kerning first=201 second=217 amount=-1 +kerning first=79 second=8217 amount=-1 +kerning first=79 second=8220 amount=-1 +kerning first=79 second=8221 amount=-1 +kerning first=201 second=209 amount=-1 +kerning first=80 second=44 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=80 second=46 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=201 second=207 amount=-1 +kerning first=201 second=206 amount=-1 +kerning first=201 second=205 amount=-1 +kerning first=201 second=204 amount=-1 +kerning first=201 second=203 amount=-1 +kerning first=201 second=202 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=201 second=201 amount=-1 +kerning first=201 second=200 amount=-1 +kerning first=201 second=198 amount=-1 +kerning first=201 second=197 amount=-1 +kerning first=201 second=196 amount=-1 +kerning first=201 second=194 amount=-1 +kerning first=201 second=193 amount=-1 +kerning first=201 second=192 amount=-1 +kerning first=201 second=171 amount=-1 +kerning first=201 second=122 amount=-1 +kerning first=201 second=117 amount=-1 +kerning first=201 second=112 amount=-1 +kerning first=201 second=103 amount=-1 +kerning first=201 second=102 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=201 second=85 amount=-1 +kerning first=201 second=83 amount=-1 +kerning first=201 second=82 amount=-1 +kerning first=201 second=80 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=80 second=198 amount=-1 +kerning first=201 second=78 amount=-1 +kerning first=201 second=77 amount=-1 +kerning first=201 second=76 amount=-1 +kerning first=201 second=75 amount=-1 +kerning first=201 second=73 amount=-1 +kerning first=201 second=72 amount=-1 +kerning first=201 second=70 amount=-1 +kerning first=201 second=69 amount=-1 +kerning first=201 second=68 amount=-1 +kerning first=201 second=66 amount=-1 +kerning first=201 second=65 amount=-1 +kerning first=201 second=45 amount=-1 +kerning first=200 second=8249 amount=-1 +kerning first=200 second=382 amount=-1 +kerning first=200 second=380 amount=-1 +kerning first=200 second=378 amount=-1 +kerning first=200 second=370 amount=-1 +kerning first=200 second=369 amount=-1 +kerning first=200 second=368 amount=-1 +kerning first=200 second=367 amount=-1 +kerning first=200 second=366 amount=-1 +kerning first=200 second=365 amount=-1 +kerning first=200 second=364 amount=-1 +kerning first=200 second=363 amount=-1 +kerning first=200 second=362 amount=-1 +kerning first=200 second=361 amount=-1 +kerning first=200 second=352 amount=-1 +kerning first=200 second=350 amount=-1 +kerning first=200 second=346 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=200 second=344 amount=-1 +kerning first=200 second=330 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=200 second=327 amount=-1 +kerning first=200 second=325 amount=-1 +kerning first=200 second=323 amount=-1 +kerning first=200 second=317 amount=-1 +kerning first=200 second=315 amount=-1 +kerning first=200 second=313 amount=-1 +kerning first=200 second=310 amount=-1 +kerning first=200 second=304 amount=-1 +kerning first=200 second=302 amount=-1 +kerning first=200 second=298 amount=-1 +kerning first=200 second=296 amount=-1 +kerning first=200 second=291 amount=-1 +kerning first=200 second=289 amount=-1 +kerning first=200 second=287 amount=-1 +kerning first=80 second=287 amount=-1 +kerning first=80 second=289 amount=-1 +kerning first=80 second=291 amount=-1 +kerning first=200 second=282 amount=-1 +kerning first=200 second=280 amount=-1 +kerning first=200 second=278 amount=-1 +kerning first=200 second=274 amount=-1 +kerning first=200 second=270 amount=-1 +kerning first=200 second=260 amount=-1 +kerning first=200 second=256 amount=-1 +kerning first=200 second=252 amount=-1 +kerning first=200 second=251 amount=-1 +kerning first=200 second=250 amount=-1 +kerning first=200 second=249 amount=-1 +kerning first=200 second=220 amount=-1 +kerning first=200 second=219 amount=-1 +kerning first=200 second=218 amount=-1 +kerning first=200 second=217 amount=-1 +kerning first=200 second=209 amount=-1 +kerning first=200 second=207 amount=-1 +kerning first=200 second=206 amount=-1 +kerning first=200 second=205 amount=-1 +kerning first=200 second=204 amount=-1 +kerning first=200 second=203 amount=-1 +kerning first=200 second=202 amount=-1 +kerning first=200 second=201 amount=-1 +kerning first=200 second=200 amount=-1 +kerning first=200 second=198 amount=-1 +kerning first=200 second=197 amount=-1 +kerning first=200 second=196 amount=-1 +kerning first=200 second=194 amount=-1 +kerning first=200 second=193 amount=-1 +kerning first=200 second=192 amount=-1 +kerning first=200 second=171 amount=-1 +kerning first=200 second=122 amount=-1 +kerning first=200 second=117 amount=-1 +kerning first=200 second=112 amount=-1 +kerning first=200 second=103 amount=-1 +kerning first=200 second=102 amount=-1 +kerning first=200 second=85 amount=-1 +kerning first=200 second=83 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=200 second=82 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=81 second=66 amount=-1 +kerning first=81 second=68 amount=-1 +kerning first=81 second=69 amount=-1 +kerning first=81 second=70 amount=-1 +kerning first=81 second=72 amount=-1 +kerning first=81 second=73 amount=-1 +kerning first=81 second=74 amount=-1 +kerning first=81 second=75 amount=-1 +kerning first=81 second=76 amount=-1 +kerning first=81 second=77 amount=-1 +kerning first=81 second=78 amount=-1 +kerning first=81 second=80 amount=-1 +kerning first=81 second=82 amount=-1 +kerning first=200 second=80 amount=-1 +kerning first=81 second=84 amount=-1 +kerning first=200 second=78 amount=-1 +kerning first=81 second=86 amount=-1 +kerning first=81 second=87 amount=-1 +kerning first=81 second=89 amount=-1 +kerning first=81 second=90 amount=-1 +kerning first=200 second=77 amount=-1 +kerning first=200 second=76 amount=-1 +kerning first=200 second=75 amount=-1 +kerning first=200 second=73 amount=-1 +kerning first=200 second=72 amount=-1 +kerning first=200 second=70 amount=-1 +kerning first=81 second=122 amount=-1 +kerning first=200 second=69 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=81 second=200 amount=-1 +kerning first=81 second=201 amount=-1 +kerning first=81 second=202 amount=-1 +kerning first=81 second=203 amount=-1 +kerning first=81 second=204 amount=-1 +kerning first=81 second=205 amount=-1 +kerning first=81 second=206 amount=-1 +kerning first=81 second=207 amount=-1 +kerning first=81 second=209 amount=-1 +kerning first=200 second=68 amount=-1 +kerning first=200 second=66 amount=-1 +kerning first=200 second=65 amount=-1 +kerning first=200 second=45 amount=-1 +kerning first=81 second=221 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=199 second=382 amount=-1 +kerning first=199 second=381 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=199 second=379 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=199 second=377 amount=-1 +kerning first=199 second=370 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=199 second=369 amount=-1 +kerning first=199 second=368 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=199 second=367 amount=-1 +kerning first=81 second=270 amount=-1 +kerning first=81 second=274 amount=-1 +kerning first=81 second=278 amount=-1 +kerning first=81 second=280 amount=-1 +kerning first=81 second=282 amount=-1 +kerning first=199 second=366 amount=-1 +kerning first=199 second=365 amount=-1 +kerning first=199 second=364 amount=-1 +kerning first=81 second=296 amount=-1 +kerning first=81 second=298 amount=-1 +kerning first=81 second=302 amount=-1 +kerning first=199 second=363 amount=-1 +kerning first=81 second=304 amount=-1 +kerning first=199 second=362 amount=-1 +kerning first=81 second=310 amount=-1 +kerning first=81 second=313 amount=-1 +kerning first=81 second=315 amount=-1 +kerning first=81 second=317 amount=-1 +kerning first=81 second=323 amount=-1 +kerning first=81 second=325 amount=-1 +kerning first=81 second=327 amount=-1 +kerning first=81 second=330 amount=-1 +kerning first=81 second=344 amount=-1 +kerning first=199 second=361 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=81 second=354 amount=-1 +kerning first=81 second=356 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=199 second=339 amount=-1 +kerning first=199 second=338 amount=-1 +kerning first=199 second=337 amount=-1 +kerning first=81 second=374 amount=-1 +kerning first=81 second=377 amount=-1 +kerning first=81 second=378 amount=-1 +kerning first=81 second=379 amount=-1 +kerning first=81 second=380 amount=-1 +kerning first=81 second=381 amount=-1 +kerning first=81 second=382 amount=-1 +kerning first=199 second=336 amount=-1 +kerning first=199 second=335 amount=-1 +kerning first=199 second=334 amount=-1 +kerning first=199 second=333 amount=-1 +kerning first=199 second=332 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=199 second=298 amount=-1 +kerning first=81 second=8217 amount=-1 +kerning first=81 second=8220 amount=-1 +kerning first=81 second=8221 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=82 second=44 amount=-1 +kerning first=82 second=45 amount=-2 +kerning first=82 second=46 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=82 second=71 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=82 second=83 amount=-1 +kerning first=82 second=84 amount=-1 +kerning first=82 second=85 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=82 second=97 amount=-1 +kerning first=82 second=98 amount=-1 +kerning first=82 second=99 amount=-1 +kerning first=82 second=100 amount=-1 +kerning first=82 second=101 amount=-1 +kerning first=82 second=103 amount=-1 +kerning first=82 second=104 amount=-1 +kerning first=199 second=291 amount=-1 +kerning first=199 second=290 amount=-1 +kerning first=82 second=107 amount=-1 +kerning first=82 second=108 amount=-1 +kerning first=82 second=111 amount=-1 +kerning first=199 second=289 amount=-1 +kerning first=82 second=113 amount=-1 +kerning first=82 second=115 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=82 second=117 amount=-1 +kerning first=82 second=118 amount=-1 +kerning first=82 second=119 amount=-1 +kerning first=82 second=121 amount=-1 +kerning first=82 second=171 amount=-2 +kerning first=82 second=199 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=82 second=224 amount=-1 +kerning first=82 second=225 amount=-1 +kerning first=82 second=226 amount=-1 +kerning first=82 second=227 amount=-1 +kerning first=82 second=228 amount=-1 +kerning first=82 second=229 amount=-1 +kerning first=82 second=230 amount=-1 +kerning first=82 second=231 amount=-1 +kerning first=82 second=232 amount=-1 +kerning first=82 second=233 amount=-1 +kerning first=82 second=234 amount=-1 +kerning first=82 second=235 amount=-1 +kerning first=199 second=288 amount=-1 +kerning first=82 second=240 amount=-1 +kerning first=82 second=242 amount=-1 +kerning first=82 second=243 amount=-1 +kerning first=82 second=244 amount=-1 +kerning first=82 second=245 amount=-1 +kerning first=82 second=246 amount=-1 +kerning first=82 second=248 amount=-1 +kerning first=82 second=249 amount=-1 +kerning first=82 second=250 amount=-1 +kerning first=82 second=251 amount=-1 +kerning first=82 second=252 amount=-1 +kerning first=82 second=253 amount=-1 +kerning first=82 second=254 amount=-1 +kerning first=82 second=255 amount=-1 +kerning first=82 second=257 amount=-1 +kerning first=82 second=259 amount=-1 +kerning first=82 second=261 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=82 second=263 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=82 second=267 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=82 second=269 amount=-1 +kerning first=82 second=275 amount=-1 +kerning first=82 second=277 amount=-1 +kerning first=82 second=279 amount=-1 +kerning first=82 second=281 amount=-1 +kerning first=82 second=283 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=82 second=287 amount=-1 +kerning first=82 second=288 amount=-1 +kerning first=82 second=289 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=82 second=291 amount=-1 +kerning first=199 second=287 amount=-1 +kerning first=199 second=286 amount=-1 +kerning first=82 second=311 amount=-1 +kerning first=82 second=314 amount=-1 +kerning first=82 second=316 amount=-1 +kerning first=82 second=318 amount=-1 +kerning first=82 second=332 amount=-1 +kerning first=82 second=333 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=82 second=335 amount=-1 +kerning first=82 second=336 amount=-1 +kerning first=82 second=337 amount=-1 +kerning first=82 second=338 amount=-1 +kerning first=82 second=339 amount=-1 +kerning first=82 second=346 amount=-1 +kerning first=82 second=347 amount=-1 +kerning first=82 second=350 amount=-1 +kerning first=82 second=351 amount=-1 +kerning first=82 second=352 amount=-1 +kerning first=82 second=353 amount=-1 +kerning first=82 second=354 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=82 second=356 amount=-1 +kerning first=82 second=361 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=82 second=363 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=82 second=365 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=82 second=367 amount=-1 +kerning first=82 second=368 amount=-1 +kerning first=82 second=369 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=82 second=375 amount=-1 +kerning first=199 second=284 amount=-1 +kerning first=199 second=283 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=199 second=281 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=199 second=279 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=199 second=277 amount=-1 +kerning first=199 second=275 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=199 second=270 amount=-1 +kerning first=199 second=269 amount=-1 +kerning first=199 second=268 amount=-1 +kerning first=199 second=267 amount=-1 +kerning first=82 second=8217 amount=-2 +kerning first=82 second=8220 amount=-2 +kerning first=82 second=8221 amount=-2 +kerning first=82 second=8249 amount=-2 +kerning first=83 second=44 amount=-1 +kerning first=83 second=45 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=83 second=65 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=83 second=68 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=83 second=74 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=199 second=266 amount=-1 +kerning first=83 second=84 amount=-1 +kerning first=83 second=85 amount=-1 +kerning first=83 second=86 amount=-1 +kerning first=83 second=87 amount=-1 +kerning first=83 second=89 amount=-1 +kerning first=199 second=264 amount=-1 +kerning first=199 second=263 amount=-1 +kerning first=83 second=98 amount=-1 +kerning first=199 second=262 amount=-1 +kerning first=199 second=260 amount=-1 +kerning first=199 second=256 amount=-1 +kerning first=83 second=102 amount=-1 +kerning first=83 second=103 amount=-1 +kerning first=83 second=104 amount=-1 +kerning first=83 second=105 amount=-1 +kerning first=199 second=252 amount=-1 +kerning first=83 second=107 amount=-1 +kerning first=83 second=108 amount=-1 +kerning first=199 second=251 amount=-1 +kerning first=199 second=250 amount=-1 +kerning first=199 second=249 amount=-1 +kerning first=83 second=112 amount=-1 +kerning first=199 second=248 amount=-1 +kerning first=83 second=114 amount=-1 +kerning first=199 second=246 amount=-1 +kerning first=199 second=245 amount=-1 +kerning first=199 second=244 amount=-1 +kerning first=83 second=118 amount=-1 +kerning first=83 second=119 amount=-1 +kerning first=83 second=120 amount=-1 +kerning first=83 second=121 amount=-1 +kerning first=83 second=122 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=199 second=243 amount=-1 +kerning first=83 second=192 amount=-1 +kerning first=83 second=193 amount=-1 +kerning first=83 second=194 amount=-1 +kerning first=83 second=196 amount=-1 +kerning first=83 second=197 amount=-1 +kerning first=83 second=198 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=83 second=203 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=83 second=209 amount=-1 +kerning first=83 second=217 amount=-1 +kerning first=83 second=218 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=83 second=220 amount=-1 +kerning first=83 second=221 amount=-1 +kerning first=199 second=242 amount=-1 +kerning first=199 second=240 amount=-1 +kerning first=199 second=235 amount=-1 +kerning first=199 second=234 amount=-1 +kerning first=199 second=233 amount=-1 +kerning first=199 second=232 amount=-1 +kerning first=199 second=231 amount=-1 +kerning first=199 second=220 amount=-1 +kerning first=199 second=219 amount=-1 +kerning first=199 second=218 amount=-1 +kerning first=199 second=217 amount=-1 +kerning first=199 second=216 amount=-1 +kerning first=199 second=214 amount=-1 +kerning first=83 second=237 amount=-1 +kerning first=199 second=213 amount=-1 +kerning first=199 second=212 amount=-1 +kerning first=199 second=211 amount=-1 +kerning first=199 second=210 amount=-1 +kerning first=199 second=209 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=83 second=253 amount=-1 +kerning first=83 second=254 amount=-1 +kerning first=83 second=255 amount=-1 +kerning first=83 second=256 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=199 second=199 amount=-1 +kerning first=83 second=260 amount=-1 +kerning first=199 second=198 amount=-1 +kerning first=199 second=197 amount=-1 +kerning first=199 second=196 amount=-1 +kerning first=199 second=194 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=199 second=193 amount=-1 +kerning first=199 second=192 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=199 second=122 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=199 second=117 amount=-1 +kerning first=83 second=287 amount=-1 +kerning first=83 second=289 amount=-1 +kerning first=83 second=291 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=83 second=303 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=83 second=305 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=83 second=311 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=83 second=314 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=83 second=316 amount=-1 +kerning first=83 second=317 amount=-1 +kerning first=83 second=318 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=199 second=113 amount=-1 +kerning first=83 second=325 amount=-1 +kerning first=199 second=112 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=199 second=111 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=199 second=102 amount=-1 +kerning first=199 second=101 amount=-1 +kerning first=199 second=100 amount=-1 +kerning first=199 second=99 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=83 second=345 amount=-1 +kerning first=199 second=90 amount=-1 +kerning first=199 second=85 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=199 second=81 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=83 second=354 amount=-1 +kerning first=199 second=79 amount=-1 +kerning first=83 second=356 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=199 second=74 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=83 second=374 amount=-1 +kerning first=83 second=375 amount=-1 +kerning first=199 second=73 amount=-1 +kerning first=83 second=378 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=83 second=380 amount=-1 +kerning first=199 second=71 amount=-1 +kerning first=83 second=382 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=199 second=67 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=199 second=65 amount=-1 +kerning first=199 second=45 amount=-1 +kerning first=198 second=8249 amount=-1 +kerning first=198 second=382 amount=-1 +kerning first=198 second=380 amount=-1 +kerning first=198 second=378 amount=-1 +kerning first=198 second=370 amount=-1 +kerning first=198 second=369 amount=-1 +kerning first=198 second=368 amount=-1 +kerning first=198 second=367 amount=-1 +kerning first=198 second=366 amount=-1 +kerning first=198 second=365 amount=-1 +kerning first=198 second=364 amount=-1 +kerning first=198 second=363 amount=-1 +kerning first=198 second=362 amount=-1 +kerning first=198 second=361 amount=-1 +kerning first=198 second=352 amount=-1 +kerning first=198 second=350 amount=-1 +kerning first=198 second=346 amount=-1 +kerning first=198 second=344 amount=-1 +kerning first=198 second=330 amount=-1 +kerning first=83 second=8217 amount=-1 +kerning first=83 second=8220 amount=-1 +kerning first=83 second=8221 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=198 second=327 amount=-1 +kerning first=198 second=325 amount=-1 +kerning first=198 second=323 amount=-1 +kerning first=198 second=317 amount=-1 +kerning first=198 second=315 amount=-1 +kerning first=198 second=313 amount=-1 +kerning first=84 second=44 amount=-2 +kerning first=84 second=45 amount=-2 +kerning first=84 second=46 amount=-2 +kerning first=84 second=65 amount=-2 +kerning first=198 second=310 amount=-1 +kerning first=84 second=67 amount=-1 +kerning first=198 second=304 amount=-1 +kerning first=198 second=302 amount=-1 +kerning first=198 second=298 amount=-1 +kerning first=84 second=71 amount=-1 +kerning first=198 second=296 amount=-1 +kerning first=198 second=291 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=198 second=289 amount=-1 +kerning first=198 second=287 amount=-1 +kerning first=198 second=282 amount=-1 +kerning first=198 second=280 amount=-1 +kerning first=84 second=79 amount=-1 +kerning first=198 second=278 amount=-1 +kerning first=84 second=81 amount=-1 +kerning first=198 second=274 amount=-1 +kerning first=84 second=83 amount=-1 +kerning first=198 second=270 amount=-1 +kerning first=84 second=90 amount=-1 +kerning first=84 second=97 amount=-2 +kerning first=84 second=99 amount=-1 +kerning first=84 second=100 amount=-1 +kerning first=84 second=101 amount=-1 +kerning first=198 second=260 amount=-1 +kerning first=84 second=103 amount=-2 +kerning first=84 second=105 amount=-1 +kerning first=84 second=109 amount=-1 +kerning first=84 second=110 amount=-1 +kerning first=84 second=111 amount=-1 +kerning first=84 second=112 amount=-1 +kerning first=84 second=113 amount=-1 +kerning first=198 second=256 amount=-1 +kerning first=84 second=115 amount=-1 +kerning first=198 second=252 amount=-1 +kerning first=84 second=117 amount=-1 +kerning first=84 second=118 amount=-1 +kerning first=84 second=119 amount=-1 +kerning first=84 second=120 amount=-1 +kerning first=84 second=121 amount=-1 +kerning first=84 second=122 amount=-1 +kerning first=84 second=171 amount=-2 +kerning first=84 second=187 amount=-1 +kerning first=84 second=192 amount=-2 +kerning first=84 second=193 amount=-2 +kerning first=84 second=194 amount=-2 +kerning first=84 second=196 amount=-2 +kerning first=84 second=197 amount=-2 +kerning first=84 second=198 amount=-2 +kerning first=84 second=199 amount=-1 +kerning first=198 second=251 amount=-1 +kerning first=198 second=250 amount=-1 +kerning first=198 second=249 amount=-1 +kerning first=198 second=220 amount=-1 +kerning first=198 second=219 amount=-1 +kerning first=198 second=218 amount=-1 +kerning first=198 second=217 amount=-1 +kerning first=198 second=209 amount=-1 +kerning first=198 second=207 amount=-1 +kerning first=84 second=210 amount=-1 +kerning first=84 second=211 amount=-1 +kerning first=84 second=212 amount=-1 +kerning first=84 second=213 amount=-1 +kerning first=84 second=214 amount=-1 +kerning first=84 second=216 amount=-1 +kerning first=198 second=206 amount=-1 +kerning first=198 second=205 amount=-1 +kerning first=198 second=204 amount=-1 +kerning first=198 second=203 amount=-1 +kerning first=84 second=223 amount=-1 +kerning first=84 second=224 amount=-1 +kerning first=84 second=225 amount=-2 +kerning first=84 second=226 amount=-2 +kerning first=84 second=227 amount=-2 +kerning first=84 second=228 amount=-1 +kerning first=84 second=229 amount=-2 +kerning first=84 second=230 amount=-2 +kerning first=84 second=231 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=84 second=233 amount=-1 +kerning first=84 second=234 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=84 second=237 amount=-1 +kerning first=84 second=240 amount=-1 +kerning first=84 second=241 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=84 second=243 amount=-1 +kerning first=84 second=244 amount=-1 +kerning first=84 second=245 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=84 second=248 amount=-1 +kerning first=198 second=202 amount=-1 +kerning first=84 second=250 amount=-1 +kerning first=84 second=251 amount=-1 +kerning first=198 second=201 amount=-1 +kerning first=84 second=253 amount=-1 +kerning first=84 second=255 amount=-1 +kerning first=84 second=256 amount=-2 +kerning first=84 second=257 amount=-2 +kerning first=84 second=259 amount=-2 +kerning first=84 second=260 amount=-2 +kerning first=84 second=261 amount=-2 +kerning first=84 second=262 amount=-1 +kerning first=84 second=263 amount=-1 +kerning first=84 second=264 amount=-1 +kerning first=84 second=266 amount=-1 +kerning first=84 second=267 amount=-1 +kerning first=84 second=268 amount=-1 +kerning first=84 second=269 amount=-1 +kerning first=198 second=200 amount=-1 +kerning first=198 second=198 amount=-1 +kerning first=84 second=275 amount=-1 +kerning first=84 second=277 amount=-1 +kerning first=198 second=197 amount=-1 +kerning first=84 second=279 amount=-1 +kerning first=198 second=196 amount=-1 +kerning first=84 second=281 amount=-1 +kerning first=198 second=194 amount=-1 +kerning first=84 second=283 amount=-1 +kerning first=84 second=284 amount=-1 +kerning first=84 second=286 amount=-1 +kerning first=84 second=287 amount=-2 +kerning first=84 second=288 amount=-1 +kerning first=84 second=289 amount=-2 +kerning first=84 second=290 amount=-1 +kerning first=84 second=291 amount=-2 +kerning first=198 second=193 amount=-1 +kerning first=198 second=192 amount=-1 +kerning first=198 second=171 amount=-1 +kerning first=84 second=303 amount=-1 +kerning first=198 second=122 amount=-1 +kerning first=84 second=305 amount=-1 +kerning first=198 second=117 amount=-1 +kerning first=198 second=112 amount=-1 +kerning first=198 second=103 amount=-1 +kerning first=198 second=102 amount=-1 +kerning first=198 second=85 amount=-1 +kerning first=84 second=324 amount=-1 +kerning first=198 second=83 amount=-1 +kerning first=84 second=326 amount=-1 +kerning first=198 second=82 amount=-1 +kerning first=84 second=328 amount=-1 +kerning first=198 second=80 amount=-1 +kerning first=84 second=331 amount=-1 +kerning first=84 second=332 amount=-1 +kerning first=84 second=333 amount=-1 +kerning first=84 second=334 amount=-1 +kerning first=84 second=335 amount=-1 +kerning first=84 second=336 amount=-1 +kerning first=84 second=337 amount=-1 +kerning first=84 second=338 amount=-1 +kerning first=84 second=339 amount=-1 +kerning first=198 second=78 amount=-1 +kerning first=198 second=77 amount=-1 +kerning first=84 second=346 amount=-1 +kerning first=84 second=347 amount=-1 +kerning first=84 second=350 amount=-1 +kerning first=84 second=351 amount=-1 +kerning first=84 second=352 amount=-1 +kerning first=84 second=353 amount=-1 +kerning first=198 second=76 amount=-1 +kerning first=84 second=361 amount=-1 +kerning first=198 second=75 amount=-1 +kerning first=84 second=363 amount=-1 +kerning first=198 second=73 amount=-1 +kerning first=84 second=365 amount=-1 +kerning first=198 second=72 amount=-1 +kerning first=84 second=367 amount=-1 +kerning first=198 second=70 amount=-1 +kerning first=84 second=369 amount=-1 +kerning first=198 second=69 amount=-1 +kerning first=84 second=375 amount=-1 +kerning first=84 second=377 amount=-1 +kerning first=84 second=378 amount=-1 +kerning first=84 second=379 amount=-1 +kerning first=84 second=380 amount=-1 +kerning first=84 second=381 amount=-1 +kerning first=84 second=382 amount=-1 +kerning first=198 second=68 amount=-1 +kerning first=198 second=66 amount=-1 +kerning first=198 second=65 amount=-1 +kerning first=198 second=45 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=197 second=8221 amount=-2 +kerning first=197 second=8220 amount=-2 +kerning first=197 second=8217 amount=-2 +kerning first=197 second=375 amount=-1 +kerning first=197 second=374 amount=-2 +kerning first=197 second=370 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=197 second=368 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=197 second=366 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=197 second=364 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=197 second=362 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=197 second=356 amount=-2 +kerning first=84 second=8249 amount=-2 +kerning first=84 second=8250 amount=-1 +kerning first=197 second=354 amount=-2 +kerning first=197 second=353 amount=-1 +kerning first=197 second=352 amount=-1 +kerning first=197 second=351 amount=-1 +kerning first=197 second=350 amount=-1 +kerning first=85 second=44 amount=-2 +kerning first=85 second=45 amount=-2 +kerning first=85 second=46 amount=-2 +kerning first=85 second=65 amount=-1 +kerning first=197 second=347 amount=-1 +kerning first=197 second=346 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=197 second=338 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=85 second=83 amount=-1 +kerning first=197 second=334 amount=-1 +kerning first=85 second=97 amount=-1 +kerning first=85 second=99 amount=-1 +kerning first=85 second=100 amount=-1 +kerning first=85 second=101 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=85 second=105 amount=-1 +kerning first=85 second=109 amount=-1 +kerning first=85 second=110 amount=-1 +kerning first=85 second=111 amount=-1 +kerning first=85 second=112 amount=-1 +kerning first=85 second=113 amount=-1 +kerning first=197 second=318 amount=-1 +kerning first=85 second=115 amount=-1 +kerning first=197 second=316 amount=-1 +kerning first=85 second=118 amount=-1 +kerning first=85 second=119 amount=-1 +kerning first=85 second=120 amount=-1 +kerning first=197 second=314 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=85 second=171 amount=-2 +kerning first=85 second=192 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=197 second=311 amount=-1 +kerning first=197 second=291 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=197 second=289 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=197 second=287 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=85 second=223 amount=-1 +kerning first=85 second=224 amount=-1 +kerning first=85 second=225 amount=-1 +kerning first=85 second=226 amount=-1 +kerning first=85 second=227 amount=-1 +kerning first=85 second=228 amount=-1 +kerning first=85 second=229 amount=-1 +kerning first=85 second=230 amount=-1 +kerning first=85 second=231 amount=-1 +kerning first=85 second=232 amount=-1 +kerning first=85 second=233 amount=-1 +kerning first=85 second=234 amount=-1 +kerning first=85 second=235 amount=-1 +kerning first=85 second=237 amount=-1 +kerning first=85 second=240 amount=-1 +kerning first=85 second=241 amount=-1 +kerning first=85 second=242 amount=-1 +kerning first=85 second=243 amount=-1 +kerning first=85 second=244 amount=-1 +kerning first=85 second=245 amount=-1 +kerning first=85 second=246 amount=-1 +kerning first=85 second=248 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=197 second=268 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=197 second=264 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=85 second=257 amount=-1 +kerning first=85 second=259 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=85 second=261 amount=-1 +kerning first=197 second=254 amount=-1 +kerning first=85 second=263 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=197 second=252 amount=-1 +kerning first=85 second=267 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=85 second=269 amount=-1 +kerning first=85 second=275 amount=-1 +kerning first=85 second=277 amount=-1 +kerning first=85 second=279 amount=-1 +kerning first=85 second=281 amount=-1 +kerning first=85 second=283 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=85 second=287 amount=-1 +kerning first=197 second=221 amount=-2 +kerning first=85 second=289 amount=-1 +kerning first=197 second=220 amount=-1 +kerning first=85 second=291 amount=-1 +kerning first=85 second=303 amount=-1 +kerning first=85 second=305 amount=-1 +kerning first=85 second=324 amount=-1 +kerning first=85 second=326 amount=-1 +kerning first=85 second=328 amount=-1 +kerning first=85 second=331 amount=-1 +kerning first=197 second=219 amount=-1 +kerning first=85 second=333 amount=-1 +kerning first=197 second=218 amount=-1 +kerning first=85 second=335 amount=-1 +kerning first=197 second=217 amount=-1 +kerning first=85 second=337 amount=-1 +kerning first=197 second=216 amount=-1 +kerning first=85 second=339 amount=-1 +kerning first=197 second=214 amount=-1 +kerning first=85 second=346 amount=-1 +kerning first=85 second=347 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=85 second=351 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=85 second=353 amount=-1 +kerning first=197 second=213 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=197 second=199 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=197 second=121 amount=-1 +kerning first=85 second=378 amount=-1 +kerning first=197 second=119 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=197 second=118 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=197 second=115 amount=-1 +kerning first=197 second=112 amount=-1 +kerning first=197 second=108 amount=-1 +kerning first=197 second=107 amount=-1 +kerning first=197 second=104 amount=-1 +kerning first=197 second=103 amount=-1 +kerning first=197 second=98 amount=-1 +kerning first=197 second=89 amount=-2 +kerning first=197 second=87 amount=-2 +kerning first=197 second=86 amount=-2 +kerning first=85 second=8249 amount=-2 +kerning first=197 second=85 amount=-1 +kerning first=197 second=84 amount=-2 +kerning first=197 second=83 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=197 second=79 amount=-1 +kerning first=86 second=44 amount=-2 +kerning first=86 second=45 amount=-2 +kerning first=86 second=46 amount=-2 +kerning first=86 second=65 amount=-2 +kerning first=197 second=71 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=196 second=8221 amount=-2 +kerning first=196 second=8220 amount=-2 +kerning first=86 second=74 amount=-1 +kerning first=196 second=8217 amount=-2 +kerning first=196 second=375 amount=-1 +kerning first=196 second=374 amount=-2 +kerning first=196 second=370 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=196 second=368 amount=-1 +kerning first=86 second=83 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=86 second=90 amount=-1 +kerning first=86 second=97 amount=-2 +kerning first=86 second=99 amount=-1 +kerning first=86 second=100 amount=-1 +kerning first=86 second=101 amount=-1 +kerning first=196 second=366 amount=-1 +kerning first=86 second=103 amount=-2 +kerning first=86 second=105 amount=-1 +kerning first=86 second=109 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=86 second=111 amount=-1 +kerning first=86 second=112 amount=-1 +kerning first=86 second=113 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=86 second=115 amount=-1 +kerning first=196 second=364 amount=-1 +kerning first=86 second=117 amount=-1 +kerning first=86 second=118 amount=-1 +kerning first=86 second=119 amount=-1 +kerning first=86 second=120 amount=-1 +kerning first=86 second=121 amount=-1 +kerning first=86 second=122 amount=-1 +kerning first=86 second=171 amount=-2 +kerning first=86 second=187 amount=-1 +kerning first=86 second=192 amount=-2 +kerning first=86 second=193 amount=-2 +kerning first=86 second=194 amount=-2 +kerning first=86 second=196 amount=-2 +kerning first=86 second=197 amount=-2 +kerning first=86 second=198 amount=-2 +kerning first=86 second=199 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=196 second=362 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=196 second=356 amount=-2 +kerning first=196 second=354 amount=-2 +kerning first=196 second=353 amount=-1 +kerning first=196 second=352 amount=-1 +kerning first=196 second=351 amount=-1 +kerning first=196 second=350 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=196 second=347 amount=-1 +kerning first=196 second=346 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=86 second=224 amount=-1 +kerning first=86 second=225 amount=-2 +kerning first=86 second=226 amount=-2 +kerning first=86 second=227 amount=-2 +kerning first=86 second=228 amount=-1 +kerning first=86 second=229 amount=-2 +kerning first=86 second=230 amount=-2 +kerning first=86 second=231 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=86 second=233 amount=-1 +kerning first=86 second=234 amount=-1 +kerning first=86 second=235 amount=-1 +kerning first=86 second=237 amount=-1 +kerning first=86 second=240 amount=-1 +kerning first=86 second=241 amount=-1 +kerning first=86 second=242 amount=-1 +kerning first=86 second=243 amount=-1 +kerning first=86 second=244 amount=-1 +kerning first=86 second=245 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=86 second=248 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=86 second=250 amount=-1 +kerning first=86 second=251 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=86 second=253 amount=-1 +kerning first=86 second=255 amount=-1 +kerning first=86 second=256 amount=-2 +kerning first=86 second=257 amount=-2 +kerning first=86 second=259 amount=-2 +kerning first=86 second=260 amount=-2 +kerning first=86 second=261 amount=-2 +kerning first=86 second=262 amount=-1 +kerning first=86 second=263 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=86 second=267 amount=-1 +kerning first=86 second=268 amount=-1 +kerning first=86 second=269 amount=-1 +kerning first=196 second=318 amount=-1 +kerning first=196 second=316 amount=-1 +kerning first=86 second=275 amount=-1 +kerning first=86 second=277 amount=-1 +kerning first=196 second=314 amount=-1 +kerning first=86 second=279 amount=-1 +kerning first=196 second=311 amount=-1 +kerning first=86 second=281 amount=-1 +kerning first=196 second=291 amount=-1 +kerning first=86 second=283 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=86 second=286 amount=-1 +kerning first=86 second=287 amount=-2 +kerning first=86 second=288 amount=-1 +kerning first=86 second=289 amount=-2 +kerning first=86 second=290 amount=-1 +kerning first=86 second=291 amount=-2 +kerning first=196 second=290 amount=-1 +kerning first=196 second=289 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=86 second=303 amount=-1 +kerning first=196 second=287 amount=-1 +kerning first=86 second=305 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=196 second=284 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=196 second=266 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=86 second=324 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=86 second=326 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=86 second=328 amount=-1 +kerning first=196 second=254 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=86 second=333 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=86 second=335 amount=-1 +kerning first=86 second=336 amount=-1 +kerning first=86 second=337 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=86 second=339 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=196 second=252 amount=-1 +kerning first=86 second=346 amount=-1 +kerning first=86 second=347 amount=-1 +kerning first=86 second=350 amount=-1 +kerning first=86 second=351 amount=-1 +kerning first=86 second=352 amount=-1 +kerning first=86 second=353 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=86 second=361 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=86 second=363 amount=-1 +kerning first=196 second=249 amount=-1 +kerning first=86 second=365 amount=-1 +kerning first=196 second=221 amount=-2 +kerning first=86 second=367 amount=-1 +kerning first=196 second=220 amount=-1 +kerning first=86 second=369 amount=-1 +kerning first=196 second=219 amount=-1 +kerning first=86 second=375 amount=-1 +kerning first=86 second=377 amount=-1 +kerning first=86 second=378 amount=-1 +kerning first=86 second=379 amount=-1 +kerning first=86 second=380 amount=-1 +kerning first=86 second=381 amount=-1 +kerning first=86 second=382 amount=-1 +kerning first=196 second=218 amount=-1 +kerning first=196 second=217 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=196 second=211 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=196 second=119 amount=-1 +kerning first=196 second=118 amount=-1 +kerning first=196 second=117 amount=-1 +kerning first=196 second=115 amount=-1 +kerning first=196 second=112 amount=-1 +kerning first=196 second=108 amount=-1 +kerning first=196 second=107 amount=-1 +kerning first=196 second=104 amount=-1 +kerning first=196 second=103 amount=-1 +kerning first=196 second=98 amount=-1 +kerning first=86 second=8249 amount=-2 +kerning first=86 second=8250 amount=-1 +kerning first=196 second=89 amount=-2 +kerning first=196 second=87 amount=-2 +kerning first=196 second=86 amount=-2 +kerning first=196 second=85 amount=-1 +kerning first=196 second=84 amount=-2 +kerning first=87 second=44 amount=-2 +kerning first=87 second=45 amount=-2 +kerning first=87 second=46 amount=-2 +kerning first=87 second=65 amount=-2 +kerning first=196 second=83 amount=-1 +kerning first=87 second=67 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=195 second=8249 amount=-1 +kerning first=195 second=8221 amount=-2 +kerning first=195 second=8220 amount=-2 +kerning first=195 second=8217 amount=-2 +kerning first=87 second=79 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=195 second=374 amount=-2 +kerning first=87 second=83 amount=-1 +kerning first=195 second=370 amount=-1 +kerning first=87 second=90 amount=-1 +kerning first=87 second=97 amount=-2 +kerning first=87 second=99 amount=-1 +kerning first=87 second=100 amount=-1 +kerning first=87 second=101 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=87 second=103 amount=-2 +kerning first=87 second=105 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=87 second=111 amount=-1 +kerning first=87 second=112 amount=-1 +kerning first=87 second=113 amount=-1 +kerning first=195 second=368 amount=-1 +kerning first=87 second=115 amount=-1 +kerning first=195 second=367 amount=-1 +kerning first=87 second=117 amount=-1 +kerning first=87 second=118 amount=-1 +kerning first=87 second=119 amount=-1 +kerning first=87 second=120 amount=-1 +kerning first=87 second=121 amount=-1 +kerning first=87 second=122 amount=-1 +kerning first=87 second=171 amount=-2 +kerning first=87 second=187 amount=-1 +kerning first=87 second=192 amount=-2 +kerning first=87 second=193 amount=-2 +kerning first=87 second=194 amount=-2 +kerning first=87 second=196 amount=-2 +kerning first=87 second=197 amount=-2 +kerning first=87 second=198 amount=-2 +kerning first=87 second=199 amount=-1 +kerning first=195 second=366 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=195 second=364 amount=-1 +kerning first=195 second=363 amount=-1 +kerning first=195 second=362 amount=-1 +kerning first=195 second=361 amount=-1 +kerning first=195 second=356 amount=-2 +kerning first=195 second=354 amount=-2 +kerning first=195 second=353 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=87 second=212 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=195 second=352 amount=-1 +kerning first=195 second=351 amount=-1 +kerning first=195 second=350 amount=-1 +kerning first=195 second=347 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=87 second=224 amount=-1 +kerning first=87 second=225 amount=-2 +kerning first=87 second=226 amount=-2 +kerning first=87 second=227 amount=-2 +kerning first=87 second=228 amount=-1 +kerning first=87 second=229 amount=-2 +kerning first=87 second=230 amount=-2 +kerning first=87 second=231 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=87 second=233 amount=-1 +kerning first=87 second=234 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=87 second=237 amount=-1 +kerning first=87 second=240 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=87 second=243 amount=-1 +kerning first=87 second=244 amount=-1 +kerning first=87 second=245 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=87 second=248 amount=-1 +kerning first=195 second=346 amount=-1 +kerning first=87 second=250 amount=-1 +kerning first=87 second=251 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=87 second=253 amount=-1 +kerning first=87 second=255 amount=-1 +kerning first=87 second=256 amount=-2 +kerning first=87 second=257 amount=-2 +kerning first=87 second=259 amount=-2 +kerning first=87 second=260 amount=-2 +kerning first=87 second=261 amount=-2 +kerning first=87 second=262 amount=-1 +kerning first=87 second=263 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=87 second=267 amount=-1 +kerning first=87 second=268 amount=-1 +kerning first=87 second=269 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=87 second=275 amount=-1 +kerning first=87 second=277 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=87 second=279 amount=-1 +kerning first=195 second=318 amount=-1 +kerning first=87 second=281 amount=-1 +kerning first=195 second=316 amount=-1 +kerning first=87 second=283 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=87 second=286 amount=-1 +kerning first=87 second=287 amount=-2 +kerning first=87 second=288 amount=-1 +kerning first=87 second=289 amount=-2 +kerning first=87 second=290 amount=-1 +kerning first=87 second=291 amount=-2 +kerning first=195 second=314 amount=-1 +kerning first=195 second=311 amount=-1 +kerning first=195 second=291 amount=-1 +kerning first=87 second=303 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=87 second=305 amount=-1 +kerning first=195 second=289 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=195 second=287 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=87 second=324 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=87 second=326 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=87 second=328 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=87 second=333 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=87 second=335 amount=-1 +kerning first=87 second=336 amount=-1 +kerning first=87 second=337 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=87 second=339 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=87 second=346 amount=-1 +kerning first=87 second=347 amount=-1 +kerning first=87 second=350 amount=-1 +kerning first=87 second=351 amount=-1 +kerning first=87 second=352 amount=-1 +kerning first=87 second=353 amount=-1 +kerning first=195 second=254 amount=-1 +kerning first=87 second=361 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=87 second=363 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=87 second=365 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=87 second=367 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=87 second=369 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=87 second=375 amount=-1 +kerning first=87 second=377 amount=-1 +kerning first=87 second=378 amount=-1 +kerning first=87 second=379 amount=-1 +kerning first=87 second=380 amount=-1 +kerning first=87 second=381 amount=-1 +kerning first=87 second=382 amount=-1 +kerning first=195 second=221 amount=-2 +kerning first=195 second=220 amount=-1 +kerning first=195 second=219 amount=-1 +kerning first=195 second=218 amount=-1 +kerning first=195 second=217 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=195 second=199 amount=-1 +kerning first=195 second=171 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=195 second=119 amount=-1 +kerning first=195 second=118 amount=-1 +kerning first=195 second=117 amount=-1 +kerning first=195 second=115 amount=-1 +kerning first=195 second=112 amount=-1 +kerning first=195 second=108 amount=-1 +kerning first=195 second=107 amount=-1 +kerning first=87 second=8249 amount=-2 +kerning first=87 second=8250 amount=-1 +kerning first=195 second=104 amount=-1 +kerning first=195 second=103 amount=-1 +kerning first=195 second=98 amount=-1 +kerning first=195 second=89 amount=-2 +kerning first=195 second=87 amount=-2 +kerning first=195 second=86 amount=-2 +kerning first=88 second=45 amount=-2 +kerning first=195 second=85 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=88 second=71 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=88 second=81 amount=-1 +kerning first=88 second=83 amount=-1 +kerning first=88 second=84 amount=-1 +kerning first=88 second=85 amount=-1 +kerning first=88 second=86 amount=-1 +kerning first=88 second=87 amount=-1 +kerning first=88 second=89 amount=-1 +kerning first=195 second=84 amount=-2 +kerning first=195 second=83 amount=-1 +kerning first=88 second=99 amount=-1 +kerning first=88 second=100 amount=-1 +kerning first=88 second=101 amount=-1 +kerning first=88 second=103 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=195 second=67 amount=-1 +kerning first=88 second=111 amount=-1 +kerning first=195 second=45 amount=-1 +kerning first=88 second=113 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=194 second=8221 amount=-2 +kerning first=194 second=8220 amount=-2 +kerning first=88 second=117 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=88 second=121 amount=-1 +kerning first=88 second=171 amount=-2 +kerning first=88 second=199 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=88 second=214 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=88 second=217 amount=-1 +kerning first=88 second=218 amount=-1 +kerning first=88 second=219 amount=-1 +kerning first=88 second=220 amount=-1 +kerning first=88 second=221 amount=-1 +kerning first=194 second=8217 amount=-2 +kerning first=194 second=375 amount=-1 +kerning first=194 second=374 amount=-2 +kerning first=194 second=370 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=194 second=368 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=88 second=231 amount=-1 +kerning first=88 second=232 amount=-1 +kerning first=88 second=233 amount=-1 +kerning first=88 second=234 amount=-1 +kerning first=88 second=235 amount=-1 +kerning first=88 second=240 amount=-1 +kerning first=88 second=242 amount=-1 +kerning first=88 second=243 amount=-1 +kerning first=88 second=244 amount=-1 +kerning first=88 second=245 amount=-1 +kerning first=88 second=246 amount=-1 +kerning first=88 second=248 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=88 second=253 amount=-1 +kerning first=194 second=366 amount=-1 +kerning first=88 second=255 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=194 second=364 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=88 second=262 amount=-1 +kerning first=88 second=263 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=88 second=267 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=88 second=269 amount=-1 +kerning first=88 second=275 amount=-1 +kerning first=88 second=277 amount=-1 +kerning first=88 second=279 amount=-1 +kerning first=88 second=281 amount=-1 +kerning first=88 second=283 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=88 second=287 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=88 second=289 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=88 second=291 amount=-1 +kerning first=194 second=362 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=194 second=356 amount=-2 +kerning first=194 second=354 amount=-2 +kerning first=88 second=332 amount=-1 +kerning first=88 second=333 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=88 second=335 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=88 second=337 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=88 second=339 amount=-1 +kerning first=194 second=353 amount=-1 +kerning first=88 second=346 amount=-1 +kerning first=194 second=352 amount=-1 +kerning first=88 second=350 amount=-1 +kerning first=194 second=351 amount=-1 +kerning first=88 second=352 amount=-1 +kerning first=194 second=350 amount=-1 +kerning first=88 second=354 amount=-1 +kerning first=194 second=347 amount=-1 +kerning first=88 second=356 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=88 second=362 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=88 second=364 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=88 second=366 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=88 second=368 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=88 second=370 amount=-1 +kerning first=88 second=374 amount=-1 +kerning first=88 second=375 amount=-1 +kerning first=194 second=346 amount=-1 +kerning first=194 second=338 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=194 second=334 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=194 second=318 amount=-1 +kerning first=194 second=316 amount=-1 +kerning first=194 second=314 amount=-1 +kerning first=194 second=311 amount=-1 +kerning first=194 second=291 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=194 second=289 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=194 second=287 amount=-1 +kerning first=88 second=8217 amount=-1 +kerning first=88 second=8220 amount=-1 +kerning first=88 second=8221 amount=-1 +kerning first=88 second=8249 amount=-2 +kerning first=89 second=44 amount=-2 +kerning first=89 second=45 amount=-2 +kerning first=89 second=46 amount=-2 +kerning first=89 second=65 amount=-2 +kerning first=194 second=286 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=89 second=74 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=194 second=254 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=89 second=83 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=89 second=90 amount=-1 +kerning first=89 second=97 amount=-2 +kerning first=89 second=99 amount=-1 +kerning first=89 second=100 amount=-1 +kerning first=89 second=101 amount=-1 +kerning first=194 second=221 amount=-2 +kerning first=89 second=103 amount=-2 +kerning first=89 second=105 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=89 second=111 amount=-1 +kerning first=89 second=112 amount=-1 +kerning first=89 second=113 amount=-1 +kerning first=194 second=220 amount=-1 +kerning first=89 second=115 amount=-1 +kerning first=194 second=219 amount=-1 +kerning first=89 second=117 amount=-1 +kerning first=89 second=118 amount=-1 +kerning first=89 second=119 amount=-1 +kerning first=89 second=120 amount=-1 +kerning first=89 second=121 amount=-1 +kerning first=89 second=122 amount=-1 +kerning first=89 second=171 amount=-2 +kerning first=89 second=187 amount=-1 +kerning first=89 second=192 amount=-2 +kerning first=89 second=193 amount=-2 +kerning first=89 second=194 amount=-2 +kerning first=89 second=196 amount=-2 +kerning first=89 second=197 amount=-2 +kerning first=89 second=198 amount=-2 +kerning first=89 second=199 amount=-1 +kerning first=194 second=218 amount=-1 +kerning first=194 second=217 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=194 second=199 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=194 second=119 amount=-1 +kerning first=194 second=118 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=89 second=224 amount=-1 +kerning first=89 second=225 amount=-2 +kerning first=89 second=226 amount=-2 +kerning first=89 second=227 amount=-2 +kerning first=89 second=228 amount=-1 +kerning first=89 second=229 amount=-2 +kerning first=89 second=230 amount=-2 +kerning first=89 second=231 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=89 second=233 amount=-1 +kerning first=89 second=234 amount=-1 +kerning first=89 second=235 amount=-1 +kerning first=89 second=237 amount=-1 +kerning first=89 second=240 amount=-1 +kerning first=89 second=241 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=89 second=243 amount=-1 +kerning first=89 second=244 amount=-1 +kerning first=89 second=245 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=89 second=248 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=89 second=250 amount=-1 +kerning first=89 second=251 amount=-1 +kerning first=194 second=115 amount=-1 +kerning first=89 second=253 amount=-1 +kerning first=89 second=255 amount=-1 +kerning first=89 second=256 amount=-2 +kerning first=89 second=257 amount=-2 +kerning first=89 second=259 amount=-2 +kerning first=89 second=260 amount=-2 +kerning first=89 second=261 amount=-2 +kerning first=89 second=262 amount=-1 +kerning first=89 second=263 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=89 second=266 amount=-1 +kerning first=89 second=267 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=89 second=269 amount=-1 +kerning first=194 second=112 amount=-1 +kerning first=194 second=108 amount=-1 +kerning first=89 second=275 amount=-1 +kerning first=89 second=277 amount=-1 +kerning first=194 second=107 amount=-1 +kerning first=89 second=279 amount=-1 +kerning first=194 second=104 amount=-1 +kerning first=89 second=281 amount=-1 +kerning first=194 second=103 amount=-1 +kerning first=89 second=283 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=89 second=287 amount=-2 +kerning first=89 second=288 amount=-1 +kerning first=89 second=289 amount=-2 +kerning first=89 second=290 amount=-1 +kerning first=89 second=291 amount=-2 +kerning first=194 second=98 amount=-1 +kerning first=194 second=89 amount=-2 +kerning first=194 second=87 amount=-2 +kerning first=89 second=303 amount=-1 +kerning first=194 second=86 amount=-2 +kerning first=89 second=305 amount=-1 +kerning first=194 second=85 amount=-1 +kerning first=194 second=84 amount=-2 +kerning first=194 second=83 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=89 second=324 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=89 second=326 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=89 second=328 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=89 second=333 amount=-1 +kerning first=89 second=334 amount=-1 +kerning first=89 second=335 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=89 second=337 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=89 second=339 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=193 second=8221 amount=-2 +kerning first=89 second=346 amount=-1 +kerning first=89 second=347 amount=-1 +kerning first=89 second=350 amount=-1 +kerning first=89 second=351 amount=-1 +kerning first=89 second=352 amount=-1 +kerning first=89 second=353 amount=-1 +kerning first=193 second=8220 amount=-2 +kerning first=89 second=361 amount=-1 +kerning first=193 second=8217 amount=-2 +kerning first=89 second=363 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=89 second=365 amount=-1 +kerning first=193 second=374 amount=-2 +kerning first=89 second=367 amount=-1 +kerning first=193 second=370 amount=-1 +kerning first=89 second=369 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=89 second=375 amount=-1 +kerning first=89 second=377 amount=-1 +kerning first=89 second=378 amount=-1 +kerning first=89 second=379 amount=-1 +kerning first=89 second=380 amount=-1 +kerning first=89 second=381 amount=-1 +kerning first=89 second=382 amount=-1 +kerning first=193 second=368 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=193 second=366 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=193 second=364 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=193 second=362 amount=-1 +kerning first=193 second=361 amount=-1 +kerning first=193 second=356 amount=-2 +kerning first=193 second=354 amount=-2 +kerning first=193 second=353 amount=-1 +kerning first=193 second=352 amount=-1 +kerning first=193 second=351 amount=-1 +kerning first=193 second=350 amount=-1 +kerning first=193 second=347 amount=-1 +kerning first=193 second=346 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=193 second=332 amount=-1 +kerning first=193 second=318 amount=-1 +kerning first=89 second=8249 amount=-2 +kerning first=89 second=8250 amount=-1 +kerning first=193 second=316 amount=-1 +kerning first=193 second=314 amount=-1 +kerning first=193 second=311 amount=-1 +kerning first=193 second=291 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=193 second=289 amount=-1 +kerning first=90 second=45 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=193 second=287 amount=-1 +kerning first=193 second=286 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=193 second=268 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=193 second=264 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=193 second=254 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=193 second=221 amount=-2 +kerning first=193 second=220 amount=-1 +kerning first=193 second=219 amount=-1 +kerning first=193 second=218 amount=-1 +kerning first=90 second=84 amount=-1 +kerning first=90 second=86 amount=-1 +kerning first=90 second=87 amount=-1 +kerning first=90 second=89 amount=-1 +kerning first=193 second=217 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=193 second=212 amount=-1 +kerning first=90 second=102 amount=-1 +kerning first=90 second=103 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=193 second=119 amount=-1 +kerning first=90 second=115 amount=-1 +kerning first=193 second=118 amount=-1 +kerning first=90 second=117 amount=-1 +kerning first=90 second=118 amount=-1 +kerning first=90 second=119 amount=-1 +kerning first=90 second=121 amount=-1 +kerning first=90 second=122 amount=-1 +kerning first=90 second=171 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=193 second=115 amount=-1 +kerning first=193 second=112 amount=-1 +kerning first=193 second=108 amount=-1 +kerning first=193 second=107 amount=-1 +kerning first=193 second=104 amount=-1 +kerning first=193 second=103 amount=-1 +kerning first=193 second=98 amount=-1 +kerning first=193 second=89 amount=-2 +kerning first=193 second=87 amount=-2 +kerning first=193 second=86 amount=-2 +kerning first=193 second=85 amount=-1 +kerning first=193 second=84 amount=-2 +kerning first=193 second=83 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=193 second=71 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=192 second=8221 amount=-2 +kerning first=192 second=8220 amount=-2 +kerning first=192 second=8217 amount=-2 +kerning first=90 second=221 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=192 second=374 amount=-2 +kerning first=192 second=370 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=192 second=368 amount=-1 +kerning first=192 second=367 amount=-1 +kerning first=192 second=366 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=192 second=364 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=192 second=362 amount=-1 +kerning first=192 second=361 amount=-1 +kerning first=192 second=356 amount=-2 +kerning first=192 second=354 amount=-2 +kerning first=192 second=353 amount=-1 +kerning first=192 second=352 amount=-1 +kerning first=192 second=351 amount=-1 +kerning first=192 second=350 amount=-1 +kerning first=192 second=347 amount=-1 +kerning first=192 second=346 amount=-1 +kerning first=192 second=338 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=90 second=249 amount=-1 +kerning first=90 second=250 amount=-1 +kerning first=90 second=251 amount=-1 +kerning first=90 second=252 amount=-1 +kerning first=90 second=253 amount=-1 +kerning first=90 second=255 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=192 second=318 amount=-1 +kerning first=192 second=316 amount=-1 +kerning first=192 second=314 amount=-1 +kerning first=192 second=311 amount=-1 +kerning first=192 second=291 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=192 second=289 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=192 second=287 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=192 second=255 amount=-1 +kerning first=192 second=254 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=90 second=287 amount=-1 +kerning first=192 second=221 amount=-2 +kerning first=90 second=289 amount=-1 +kerning first=192 second=220 amount=-1 +kerning first=90 second=291 amount=-1 +kerning first=192 second=219 amount=-1 +kerning first=192 second=218 amount=-1 +kerning first=192 second=217 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=192 second=211 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=192 second=171 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=192 second=119 amount=-1 +kerning first=192 second=118 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=192 second=115 amount=-1 +kerning first=192 second=112 amount=-1 +kerning first=192 second=108 amount=-1 +kerning first=192 second=107 amount=-1 +kerning first=192 second=104 amount=-1 +kerning first=192 second=103 amount=-1 +kerning first=192 second=98 amount=-1 +kerning first=192 second=89 amount=-2 +kerning first=192 second=87 amount=-2 +kerning first=192 second=86 amount=-2 +kerning first=192 second=85 amount=-1 +kerning first=192 second=84 amount=-2 +kerning first=192 second=83 amount=-1 +kerning first=90 second=347 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=90 second=351 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=90 second=353 amount=-1 +kerning first=90 second=354 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=90 second=356 amount=-1 +kerning first=90 second=361 amount=-1 +kerning first=90 second=363 amount=-1 +kerning first=90 second=365 amount=-1 +kerning first=90 second=367 amount=-1 +kerning first=90 second=369 amount=-1 +kerning first=90 second=374 amount=-1 +kerning first=90 second=375 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=90 second=378 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=90 second=380 amount=-1 +kerning first=187 second=382 amount=-2 +kerning first=90 second=382 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=187 second=380 amount=-2 +kerning first=187 second=379 amount=-1 +kerning first=187 second=378 amount=-2 +kerning first=187 second=377 amount=-1 +kerning first=187 second=375 amount=-1 +kerning first=187 second=374 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=187 second=352 amount=-1 +kerning first=187 second=350 amount=-1 +kerning first=187 second=346 amount=-1 +kerning first=187 second=345 amount=-1 +kerning first=187 second=344 amount=-2 +kerning first=187 second=331 amount=-1 +kerning first=187 second=330 amount=-2 +kerning first=187 second=328 amount=-1 +kerning first=187 second=327 amount=-2 +kerning first=90 second=8249 amount=-1 +kerning first=187 second=326 amount=-1 +kerning first=187 second=325 amount=-2 +kerning first=187 second=324 amount=-1 +kerning first=187 second=323 amount=-2 +kerning first=187 second=317 amount=-2 +kerning first=187 second=315 amount=-2 +kerning first=187 second=313 amount=-2 +kerning first=97 second=45 amount=-1 +kerning first=187 second=310 amount=-2 +kerning first=187 second=302 amount=-2 +kerning first=187 second=298 amount=-2 +kerning first=187 second=296 amount=-2 +kerning first=187 second=291 amount=-1 +kerning first=187 second=289 amount=-1 +kerning first=187 second=287 amount=-1 +kerning first=97 second=103 amount=-1 +kerning first=187 second=282 amount=-2 +kerning first=187 second=280 amount=-2 +kerning first=187 second=278 amount=-2 +kerning first=187 second=274 amount=-2 +kerning first=187 second=270 amount=-2 +kerning first=187 second=260 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=187 second=255 amount=-1 +kerning first=187 second=253 amount=-1 +kerning first=187 second=241 amount=-1 +kerning first=187 second=223 amount=-1 +kerning first=187 second=221 amount=-1 +kerning first=97 second=118 amount=-1 +kerning first=97 second=119 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=97 second=121 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=97 second=171 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=187 second=209 amount=-2 +kerning first=187 second=207 amount=-2 +kerning first=187 second=206 amount=-2 +kerning first=187 second=205 amount=-2 +kerning first=187 second=204 amount=-2 +kerning first=187 second=203 amount=-2 +kerning first=187 second=202 amount=-2 +kerning first=187 second=201 amount=-2 +kerning first=187 second=200 amount=-2 +kerning first=187 second=198 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=187 second=195 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=187 second=122 amount=-2 +kerning first=187 second=121 amount=-1 +kerning first=187 second=120 amount=-1 +kerning first=187 second=119 amount=-1 +kerning first=187 second=118 amount=-1 +kerning first=187 second=114 amount=-1 +kerning first=187 second=112 amount=-1 +kerning first=97 second=253 amount=-1 +kerning first=187 second=110 amount=-1 +kerning first=97 second=255 amount=-1 +kerning first=187 second=109 amount=-1 +kerning first=187 second=106 amount=-1 +kerning first=187 second=103 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=187 second=89 amount=-1 +kerning first=187 second=87 amount=-1 +kerning first=187 second=86 amount=-1 +kerning first=187 second=85 amount=-1 +kerning first=187 second=84 amount=-1 +kerning first=187 second=83 amount=-1 +kerning first=187 second=82 amount=-2 +kerning first=187 second=80 amount=-2 +kerning first=187 second=78 amount=-2 +kerning first=97 second=287 amount=-1 +kerning first=97 second=289 amount=-1 +kerning first=97 second=291 amount=-1 +kerning first=187 second=77 amount=-2 +kerning first=187 second=76 amount=-2 +kerning first=187 second=75 amount=-2 +kerning first=187 second=74 amount=-1 +kerning first=187 second=73 amount=-2 +kerning first=187 second=72 amount=-2 +kerning first=187 second=70 amount=-2 +kerning first=187 second=69 amount=-2 +kerning first=187 second=68 amount=-2 +kerning first=187 second=66 amount=-2 +kerning first=187 second=65 amount=-1 +kerning first=171 second=374 amount=-1 +kerning first=171 second=356 amount=-1 +kerning first=171 second=354 amount=-1 +kerning first=171 second=221 amount=-1 +kerning first=171 second=89 amount=-1 +kerning first=171 second=87 amount=-1 +kerning first=171 second=86 amount=-1 +kerning first=171 second=84 amount=-1 +kerning first=122 second=8249 amount=-1 +kerning first=122 second=382 amount=-1 +kerning first=122 second=380 amount=-1 +kerning first=122 second=378 amount=-1 +kerning first=122 second=375 amount=-1 +kerning first=122 second=371 amount=-1 +kerning first=97 second=375 amount=-1 +kerning first=122 second=369 amount=-1 +kerning first=122 second=367 amount=-1 +kerning first=122 second=365 amount=-1 +kerning first=122 second=363 amount=-1 +kerning first=122 second=361 amount=-1 +kerning first=122 second=353 amount=-1 +kerning first=122 second=351 amount=-1 +kerning first=122 second=347 amount=-1 +kerning first=122 second=331 amount=-1 +kerning first=122 second=328 amount=-1 +kerning first=122 second=326 amount=-1 +kerning first=122 second=324 amount=-1 +kerning first=122 second=318 amount=-1 +kerning first=122 second=316 amount=-1 +kerning first=122 second=314 amount=-1 +kerning first=97 second=8217 amount=-1 +kerning first=97 second=8220 amount=-1 +kerning first=97 second=8221 amount=-1 +kerning first=97 second=8249 amount=-1 +kerning first=122 second=311 amount=-1 +kerning first=122 second=305 amount=-1 +kerning first=122 second=291 amount=-1 +kerning first=122 second=289 amount=-1 +kerning first=122 second=287 amount=-1 +kerning first=98 second=44 amount=-1 +kerning first=98 second=46 amount=-1 +kerning first=122 second=255 amount=-1 +kerning first=122 second=253 amount=-1 +kerning first=122 second=252 amount=-1 +kerning first=98 second=103 amount=-1 +kerning first=122 second=251 amount=-1 +kerning first=122 second=250 amount=-1 +kerning first=98 second=106 amount=-1 +kerning first=122 second=249 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=122 second=241 amount=-1 +kerning first=122 second=171 amount=-1 +kerning first=122 second=122 amount=-1 +kerning first=122 second=121 amount=-1 +kerning first=98 second=115 amount=-1 +kerning first=122 second=119 amount=-1 +kerning first=122 second=118 amount=-1 +kerning first=98 second=118 amount=-1 +kerning first=98 second=119 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=98 second=121 amount=-1 +kerning first=98 second=122 amount=-1 +kerning first=98 second=187 amount=-1 +kerning first=122 second=117 amount=-1 +kerning first=122 second=115 amount=-1 +kerning first=122 second=112 amount=-1 +kerning first=122 second=110 amount=-1 +kerning first=122 second=109 amount=-1 +kerning first=122 second=108 amount=-1 +kerning first=122 second=107 amount=-1 +kerning first=122 second=106 amount=-1 +kerning first=122 second=104 amount=-1 +kerning first=122 second=103 amount=-1 +kerning first=122 second=102 amount=-1 +kerning first=122 second=45 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=98 second=253 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=98 second=255 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=98 second=287 amount=-1 +kerning first=98 second=289 amount=-1 +kerning first=98 second=291 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=121 second=339 amount=-1 +kerning first=121 second=337 amount=-1 +kerning first=121 second=335 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=98 second=318 amount=-1 +kerning first=121 second=333 amount=-1 +kerning first=121 second=331 amount=-1 +kerning first=121 second=328 amount=-1 +kerning first=121 second=326 amount=-1 +kerning first=121 second=324 amount=-1 +kerning first=98 second=347 amount=-1 +kerning first=98 second=351 amount=-1 +kerning first=98 second=353 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=121 second=307 amount=-1 +kerning first=121 second=305 amount=-1 +kerning first=121 second=303 amount=-1 +kerning first=121 second=291 amount=-1 +kerning first=98 second=375 amount=-1 +kerning first=98 second=378 amount=-1 +kerning first=98 second=380 amount=-1 +kerning first=98 second=382 amount=-1 +kerning first=121 second=289 amount=-1 +kerning first=121 second=287 amount=-1 +kerning first=121 second=283 amount=-1 +kerning first=121 second=281 amount=-1 +kerning first=121 second=279 amount=-1 +kerning first=121 second=277 amount=-1 +kerning first=121 second=275 amount=-1 +kerning first=121 second=273 amount=-1 +kerning first=121 second=271 amount=-1 +kerning first=121 second=269 amount=-1 +kerning first=121 second=267 amount=-1 +kerning first=98 second=8217 amount=-1 +kerning first=98 second=8220 amount=-1 +kerning first=98 second=8221 amount=-1 +kerning first=98 second=8250 amount=-1 +kerning first=121 second=263 amount=-1 +kerning first=121 second=261 amount=-1 +kerning first=121 second=259 amount=-1 +kerning first=121 second=257 amount=-1 +kerning first=121 second=248 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=99 second=45 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=99 second=98 amount=-1 +kerning first=121 second=246 amount=-1 +kerning first=121 second=245 amount=-1 +kerning first=121 second=244 amount=-1 +kerning first=99 second=102 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=99 second=104 amount=-1 +kerning first=99 second=105 amount=-1 +kerning first=99 second=106 amount=-1 +kerning first=99 second=107 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=121 second=243 amount=-1 +kerning first=121 second=242 amount=-1 +kerning first=121 second=241 amount=-1 +kerning first=121 second=240 amount=-1 +kerning first=121 second=237 amount=-1 +kerning first=121 second=235 amount=-1 +kerning first=121 second=234 amount=-1 +kerning first=121 second=233 amount=-1 +kerning first=99 second=117 amount=-1 +kerning first=99 second=118 amount=-1 +kerning first=99 second=119 amount=-1 +kerning first=99 second=120 amount=-1 +kerning first=99 second=121 amount=-1 +kerning first=99 second=122 amount=-1 +kerning first=99 second=171 amount=-1 +kerning first=121 second=232 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=99 second=227 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=121 second=231 amount=-1 +kerning first=121 second=230 amount=-1 +kerning first=121 second=229 amount=-1 +kerning first=121 second=228 amount=-1 +kerning first=121 second=227 amount=-1 +kerning first=99 second=237 amount=-1 +kerning first=121 second=226 amount=-1 +kerning first=121 second=225 amount=-1 +kerning first=121 second=224 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=121 second=122 amount=-1 +kerning first=121 second=115 amount=-1 +kerning first=121 second=113 amount=-1 +kerning first=121 second=112 amount=-1 +kerning first=99 second=249 amount=-1 +kerning first=99 second=250 amount=-1 +kerning first=99 second=251 amount=-1 +kerning first=99 second=252 amount=-1 +kerning first=99 second=253 amount=-1 +kerning first=99 second=254 amount=-1 +kerning first=99 second=255 amount=-1 +kerning first=99 second=257 amount=-1 +kerning first=99 second=259 amount=-1 +kerning first=99 second=261 amount=-1 +kerning first=121 second=111 amount=-1 +kerning first=121 second=110 amount=-1 +kerning first=121 second=109 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=121 second=106 amount=-1 +kerning first=121 second=105 amount=-1 +kerning first=121 second=103 amount=-1 +kerning first=121 second=101 amount=-1 +kerning first=121 second=100 amount=-1 +kerning first=121 second=99 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=99 second=291 amount=-1 +kerning first=99 second=303 amount=-1 +kerning first=121 second=97 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=99 second=311 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=99 second=316 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=121 second=46 amount=-2 +kerning first=121 second=45 amount=-1 +kerning first=121 second=44 amount=-2 +kerning first=120 second=8249 amount=-1 +kerning first=120 second=8221 amount=-1 +kerning first=120 second=8220 amount=-1 +kerning first=120 second=8217 amount=-1 +kerning first=120 second=382 amount=-1 +kerning first=120 second=380 amount=-1 +kerning first=120 second=378 amount=-1 +kerning first=120 second=375 amount=-1 +kerning first=120 second=371 amount=-1 +kerning first=120 second=369 amount=-1 +kerning first=99 second=361 amount=-1 +kerning first=99 second=363 amount=-1 +kerning first=99 second=365 amount=-1 +kerning first=99 second=367 amount=-1 +kerning first=99 second=369 amount=-1 +kerning first=99 second=371 amount=-1 +kerning first=99 second=375 amount=-1 +kerning first=99 second=378 amount=-1 +kerning first=99 second=380 amount=-1 +kerning first=99 second=382 amount=-1 +kerning first=120 second=367 amount=-1 +kerning first=120 second=365 amount=-1 +kerning first=120 second=363 amount=-1 +kerning first=120 second=361 amount=-1 +kerning first=120 second=353 amount=-1 +kerning first=120 second=351 amount=-1 +kerning first=120 second=347 amount=-1 +kerning first=120 second=339 amount=-1 +kerning first=120 second=337 amount=-1 +kerning first=120 second=335 amount=-1 +kerning first=120 second=333 amount=-1 +kerning first=120 second=291 amount=-1 +kerning first=120 second=289 amount=-1 +kerning first=99 second=8217 amount=-1 +kerning first=99 second=8220 amount=-1 +kerning first=99 second=8221 amount=-1 +kerning first=99 second=8249 amount=-1 +kerning first=120 second=287 amount=-1 +kerning first=120 second=283 amount=-1 +kerning first=120 second=281 amount=-1 +kerning first=120 second=279 amount=-1 +kerning first=120 second=277 amount=-1 +kerning first=100 second=45 amount=-1 +kerning first=120 second=275 amount=-1 +kerning first=120 second=273 amount=-1 +kerning first=120 second=271 amount=-1 +kerning first=120 second=269 amount=-1 +kerning first=120 second=267 amount=-1 +kerning first=120 second=263 amount=-1 +kerning first=100 second=103 amount=-1 +kerning first=120 second=261 amount=-1 +kerning first=120 second=259 amount=-1 +kerning first=120 second=257 amount=-1 +kerning first=120 second=255 amount=-1 +kerning first=120 second=254 amount=-1 +kerning first=120 second=253 amount=-1 +kerning first=120 second=252 amount=-1 +kerning first=120 second=251 amount=-1 +kerning first=120 second=250 amount=-1 +kerning first=120 second=249 amount=-1 +kerning first=120 second=248 amount=-1 +kerning first=120 second=246 amount=-1 +kerning first=120 second=245 amount=-1 +kerning first=100 second=118 amount=-1 +kerning first=100 second=119 amount=-1 +kerning first=120 second=244 amount=-1 +kerning first=100 second=121 amount=-1 +kerning first=120 second=243 amount=-1 +kerning first=100 second=171 amount=-1 +kerning first=120 second=242 amount=-1 +kerning first=120 second=240 amount=-1 +kerning first=120 second=235 amount=-1 +kerning first=120 second=234 amount=-1 +kerning first=120 second=233 amount=-1 +kerning first=120 second=232 amount=-1 +kerning first=120 second=231 amount=-1 +kerning first=120 second=230 amount=-1 +kerning first=120 second=229 amount=-1 +kerning first=120 second=228 amount=-1 +kerning first=120 second=227 amount=-1 +kerning first=120 second=226 amount=-1 +kerning first=120 second=225 amount=-1 +kerning first=120 second=224 amount=-1 +kerning first=120 second=171 amount=-1 +kerning first=120 second=122 amount=-1 +kerning first=120 second=121 amount=-1 +kerning first=120 second=119 amount=-1 +kerning first=120 second=118 amount=-1 +kerning first=120 second=117 amount=-1 +kerning first=120 second=115 amount=-1 +kerning first=120 second=113 amount=-1 +kerning first=120 second=112 amount=-1 +kerning first=120 second=111 amount=-1 +kerning first=120 second=103 amount=-1 +kerning first=100 second=253 amount=-1 +kerning first=120 second=101 amount=-1 +kerning first=100 second=255 amount=-1 +kerning first=120 second=100 amount=-1 +kerning first=120 second=99 amount=-1 +kerning first=120 second=98 amount=-1 +kerning first=120 second=97 amount=-1 +kerning first=120 second=45 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=119 second=339 amount=-1 +kerning first=100 second=287 amount=-1 +kerning first=100 second=289 amount=-1 +kerning first=100 second=291 amount=-1 +kerning first=119 second=337 amount=-1 +kerning first=119 second=335 amount=-1 +kerning first=119 second=333 amount=-1 +kerning first=119 second=331 amount=-1 +kerning first=119 second=328 amount=-1 +kerning first=119 second=326 amount=-1 +kerning first=119 second=324 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=119 second=314 amount=-1 +kerning first=119 second=307 amount=-1 +kerning first=119 second=305 amount=-1 +kerning first=119 second=303 amount=-1 +kerning first=119 second=291 amount=-1 +kerning first=119 second=289 amount=-1 +kerning first=119 second=287 amount=-1 +kerning first=119 second=283 amount=-1 +kerning first=119 second=281 amount=-1 +kerning first=119 second=279 amount=-1 +kerning first=119 second=277 amount=-1 +kerning first=119 second=275 amount=-1 +kerning first=119 second=273 amount=-1 +kerning first=119 second=271 amount=-1 +kerning first=119 second=269 amount=-1 +kerning first=119 second=267 amount=-1 +kerning first=100 second=375 amount=-1 +kerning first=119 second=263 amount=-1 +kerning first=119 second=261 amount=-1 +kerning first=119 second=259 amount=-1 +kerning first=119 second=257 amount=-1 +kerning first=119 second=248 amount=-1 +kerning first=119 second=246 amount=-1 +kerning first=119 second=245 amount=-1 +kerning first=119 second=244 amount=-1 +kerning first=119 second=243 amount=-1 +kerning first=119 second=242 amount=-1 +kerning first=119 second=241 amount=-1 +kerning first=119 second=240 amount=-1 +kerning first=119 second=237 amount=-1 +kerning first=119 second=235 amount=-1 +kerning first=119 second=234 amount=-1 +kerning first=119 second=233 amount=-1 +kerning first=100 second=8217 amount=-1 +kerning first=100 second=8220 amount=-1 +kerning first=100 second=8221 amount=-1 +kerning first=100 second=8249 amount=-1 +kerning first=119 second=232 amount=-1 +kerning first=119 second=231 amount=-1 +kerning first=119 second=230 amount=-1 +kerning first=119 second=229 amount=-1 +kerning first=119 second=228 amount=-1 +kerning first=101 second=44 amount=-1 +kerning first=101 second=46 amount=-1 +kerning first=101 second=97 amount=-1 +kerning first=101 second=98 amount=-1 +kerning first=119 second=227 amount=-1 +kerning first=119 second=226 amount=-1 +kerning first=119 second=225 amount=-1 +kerning first=101 second=102 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=101 second=105 amount=-1 +kerning first=101 second=106 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=119 second=224 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=119 second=113 amount=-1 +kerning first=119 second=112 amount=-1 +kerning first=119 second=111 amount=-1 +kerning first=119 second=110 amount=-1 +kerning first=101 second=117 amount=-1 +kerning first=101 second=118 amount=-1 +kerning first=101 second=119 amount=-1 +kerning first=101 second=120 amount=-1 +kerning first=101 second=121 amount=-1 +kerning first=101 second=122 amount=-1 +kerning first=101 second=187 amount=-1 +kerning first=119 second=109 amount=-1 +kerning first=101 second=224 amount=-1 +kerning first=101 second=225 amount=-1 +kerning first=101 second=226 amount=-1 +kerning first=101 second=227 amount=-1 +kerning first=101 second=228 amount=-1 +kerning first=101 second=229 amount=-1 +kerning first=101 second=230 amount=-1 +kerning first=119 second=108 amount=-1 +kerning first=119 second=106 amount=-1 +kerning first=119 second=105 amount=-1 +kerning first=119 second=103 amount=-1 +kerning first=119 second=101 amount=-1 +kerning first=101 second=237 amount=-1 +kerning first=119 second=100 amount=-1 +kerning first=119 second=99 amount=-1 +kerning first=119 second=97 amount=-1 +kerning first=119 second=46 amount=-2 +kerning first=119 second=45 amount=-1 +kerning first=119 second=44 amount=-2 +kerning first=118 second=8249 amount=-1 +kerning first=118 second=382 amount=-1 +kerning first=101 second=249 amount=-1 +kerning first=101 second=250 amount=-1 +kerning first=101 second=251 amount=-1 +kerning first=101 second=252 amount=-1 +kerning first=101 second=253 amount=-1 +kerning first=101 second=254 amount=-1 +kerning first=101 second=255 amount=-1 +kerning first=101 second=257 amount=-1 +kerning first=101 second=259 amount=-1 +kerning first=101 second=261 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=118 second=339 amount=-1 +kerning first=118 second=337 amount=-1 +kerning first=118 second=335 amount=-1 +kerning first=118 second=333 amount=-1 +kerning first=118 second=331 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=101 second=303 amount=-1 +kerning first=118 second=328 amount=-1 +kerning first=101 second=307 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=101 second=316 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=118 second=326 amount=-1 +kerning first=118 second=324 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=118 second=307 amount=-1 +kerning first=118 second=305 amount=-1 +kerning first=118 second=303 amount=-1 +kerning first=118 second=291 amount=-1 +kerning first=118 second=289 amount=-1 +kerning first=118 second=287 amount=-1 +kerning first=118 second=283 amount=-1 +kerning first=118 second=281 amount=-1 +kerning first=101 second=361 amount=-1 +kerning first=101 second=363 amount=-1 +kerning first=101 second=365 amount=-1 +kerning first=101 second=367 amount=-1 +kerning first=101 second=369 amount=-1 +kerning first=101 second=371 amount=-1 +kerning first=101 second=375 amount=-1 +kerning first=101 second=378 amount=-1 +kerning first=101 second=380 amount=-1 +kerning first=101 second=382 amount=-1 +kerning first=118 second=279 amount=-1 +kerning first=118 second=277 amount=-1 +kerning first=118 second=275 amount=-1 +kerning first=118 second=273 amount=-1 +kerning first=118 second=271 amount=-1 +kerning first=118 second=269 amount=-1 +kerning first=118 second=267 amount=-1 +kerning first=118 second=263 amount=-1 +kerning first=118 second=261 amount=-1 +kerning first=118 second=259 amount=-1 +kerning first=118 second=257 amount=-1 +kerning first=118 second=248 amount=-1 +kerning first=118 second=246 amount=-1 +kerning first=101 second=8217 amount=-1 +kerning first=101 second=8220 amount=-1 +kerning first=101 second=8221 amount=-1 +kerning first=101 second=8250 amount=-1 +kerning first=118 second=245 amount=-1 +kerning first=118 second=244 amount=-1 +kerning first=118 second=243 amount=-1 +kerning first=118 second=242 amount=-1 +kerning first=118 second=241 amount=-1 +kerning first=118 second=240 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=118 second=237 amount=-1 +kerning first=102 second=97 amount=-1 +kerning first=102 second=98 amount=1 +kerning first=118 second=235 amount=-1 +kerning first=118 second=234 amount=-1 +kerning first=118 second=233 amount=-1 +kerning first=118 second=232 amount=-1 +kerning first=102 second=103 amount=-1 +kerning first=102 second=104 amount=1 +kerning first=118 second=231 amount=-1 +kerning first=102 second=107 amount=1 +kerning first=102 second=108 amount=1 +kerning first=118 second=230 amount=-1 +kerning first=118 second=229 amount=-1 +kerning first=118 second=228 amount=-1 +kerning first=118 second=227 amount=-1 +kerning first=118 second=226 amount=-1 +kerning first=102 second=115 amount=-1 +kerning first=118 second=225 amount=-1 +kerning first=118 second=224 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=118 second=122 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=118 second=113 amount=-1 +kerning first=102 second=225 amount=-1 +kerning first=102 second=226 amount=-1 +kerning first=102 second=227 amount=-1 +kerning first=102 second=229 amount=-1 +kerning first=102 second=230 amount=-1 +kerning first=118 second=112 amount=-1 +kerning first=118 second=111 amount=-1 +kerning first=118 second=110 amount=-1 +kerning first=118 second=109 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=118 second=106 amount=-1 +kerning first=118 second=105 amount=-1 +kerning first=118 second=103 amount=-1 +kerning first=118 second=101 amount=-1 +kerning first=118 second=100 amount=-1 +kerning first=118 second=99 amount=-1 +kerning first=118 second=97 amount=-1 +kerning first=102 second=254 amount=1 +kerning first=118 second=46 amount=-2 +kerning first=102 second=257 amount=-1 +kerning first=102 second=259 amount=-1 +kerning first=102 second=261 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=118 second=44 amount=-2 +kerning first=117 second=8249 amount=-1 +kerning first=117 second=8221 amount=-1 +kerning first=117 second=8220 amount=-1 +kerning first=117 second=8217 amount=-1 +kerning first=117 second=382 amount=-1 +kerning first=117 second=380 amount=-1 +kerning first=117 second=378 amount=-1 +kerning first=117 second=375 amount=-1 +kerning first=102 second=287 amount=-1 +kerning first=102 second=289 amount=-1 +kerning first=102 second=291 amount=-1 +kerning first=117 second=353 amount=-1 +kerning first=102 second=311 amount=1 +kerning first=102 second=314 amount=1 +kerning first=102 second=316 amount=1 +kerning first=102 second=318 amount=1 +kerning first=117 second=351 amount=-1 +kerning first=117 second=347 amount=-1 +kerning first=117 second=318 amount=-1 +kerning first=117 second=316 amount=-1 +kerning first=117 second=314 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=117 second=289 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=117 second=255 amount=-1 +kerning first=102 second=347 amount=-1 +kerning first=102 second=351 amount=-1 +kerning first=102 second=353 amount=-1 +kerning first=117 second=254 amount=-1 +kerning first=117 second=253 amount=-1 +kerning first=117 second=171 amount=-1 +kerning first=117 second=122 amount=-1 +kerning first=117 second=121 amount=-1 +kerning first=117 second=120 amount=-1 +kerning first=117 second=119 amount=-1 +kerning first=117 second=118 amount=-1 +kerning first=117 second=115 amount=-1 +kerning first=117 second=112 amount=-1 +kerning first=117 second=108 amount=-1 +kerning first=117 second=106 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=117 second=98 amount=-1 +kerning first=117 second=46 amount=-1 +kerning first=117 second=45 amount=-1 +kerning first=117 second=44 amount=-1 +kerning first=116 second=291 amount=-1 +kerning first=116 second=289 amount=-1 +kerning first=116 second=287 amount=-1 +kerning first=116 second=103 amount=-1 +kerning first=115 second=8221 amount=-1 +kerning first=115 second=8220 amount=-1 +kerning first=102 second=8217 amount=1 +kerning first=102 second=8220 amount=1 +kerning first=102 second=8221 amount=1 +kerning first=102 second=8249 amount=-1 +kerning first=115 second=8217 amount=-1 +kerning first=115 second=382 amount=-1 +kerning first=115 second=380 amount=-1 +kerning first=115 second=378 amount=-1 +kerning first=115 second=375 amount=-1 +kerning first=103 second=44 amount=-1 +kerning first=103 second=45 amount=-1 +kerning first=103 second=46 amount=-1 +kerning first=103 second=97 amount=-1 +kerning first=115 second=353 amount=-1 +kerning first=115 second=351 amount=-1 +kerning first=115 second=347 amount=-1 +kerning first=115 second=307 amount=-1 +kerning first=115 second=303 amount=-1 +kerning first=103 second=103 amount=-1 +kerning first=103 second=104 amount=-1 +kerning first=103 second=105 amount=-1 +kerning first=103 second=107 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=115 second=255 amount=-1 +kerning first=115 second=254 amount=-1 +kerning first=115 second=253 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=115 second=237 amount=-1 +kerning first=115 second=122 amount=-1 +kerning first=115 second=121 amount=-1 +kerning first=115 second=120 amount=-1 +kerning first=103 second=120 amount=-1 +kerning first=115 second=119 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=115 second=118 amount=-1 +kerning first=103 second=224 amount=-1 +kerning first=103 second=225 amount=-1 +kerning first=103 second=226 amount=-1 +kerning first=103 second=227 amount=-1 +kerning first=103 second=228 amount=-1 +kerning first=103 second=229 amount=-1 +kerning first=103 second=230 amount=-1 +kerning first=115 second=115 amount=-1 +kerning first=115 second=112 amount=-1 +kerning first=115 second=105 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=115 second=102 amount=-1 +kerning first=103 second=237 amount=-1 +kerning first=115 second=98 amount=-1 +kerning first=115 second=46 amount=-1 +kerning first=115 second=44 amount=-1 +kerning first=114 second=291 amount=-1 +kerning first=114 second=289 amount=-1 +kerning first=114 second=287 amount=-1 +kerning first=114 second=103 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=113 second=8249 amount=-1 +kerning first=113 second=8221 amount=-1 +kerning first=113 second=8220 amount=-1 +kerning first=113 second=8217 amount=-1 +kerning first=113 second=382 amount=-1 +kerning first=113 second=380 amount=-1 +kerning first=103 second=257 amount=-1 +kerning first=103 second=259 amount=-1 +kerning first=103 second=261 amount=-1 +kerning first=113 second=378 amount=-1 +kerning first=113 second=371 amount=-1 +kerning first=113 second=369 amount=-1 +kerning first=113 second=367 amount=-1 +kerning first=113 second=365 amount=-1 +kerning first=113 second=363 amount=-1 +kerning first=113 second=361 amount=-1 +kerning first=113 second=353 amount=-1 +kerning first=113 second=351 amount=-1 +kerning first=113 second=347 amount=-1 +kerning first=103 second=287 amount=-1 +kerning first=103 second=289 amount=-1 +kerning first=103 second=291 amount=-1 +kerning first=103 second=303 amount=-1 +kerning first=113 second=331 amount=-1 +kerning first=103 second=307 amount=-1 +kerning first=103 second=311 amount=-1 +kerning first=103 second=314 amount=-1 +kerning first=103 second=316 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=113 second=328 amount=-1 +kerning first=113 second=326 amount=-1 +kerning first=113 second=324 amount=-1 +kerning first=113 second=318 amount=-1 +kerning first=113 second=316 amount=-1 +kerning first=113 second=314 amount=-1 +kerning first=113 second=311 amount=-1 +kerning first=113 second=305 amount=-1 +kerning first=113 second=261 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=103 second=351 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=113 second=259 amount=-1 +kerning first=113 second=257 amount=-1 +kerning first=113 second=254 amount=-1 +kerning first=113 second=252 amount=-1 +kerning first=113 second=251 amount=-1 +kerning first=113 second=250 amount=-1 +kerning first=113 second=249 amount=-1 +kerning first=113 second=241 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=103 second=380 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=113 second=230 amount=-1 +kerning first=113 second=229 amount=-1 +kerning first=113 second=228 amount=-1 +kerning first=113 second=227 amount=-1 +kerning first=113 second=226 amount=-1 +kerning first=113 second=225 amount=-1 +kerning first=113 second=224 amount=-1 +kerning first=113 second=171 amount=-1 +kerning first=113 second=122 amount=-1 +kerning first=113 second=119 amount=-1 +kerning first=113 second=118 amount=-1 +kerning first=113 second=117 amount=-1 +kerning first=113 second=115 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=113 second=110 amount=-1 +kerning first=113 second=109 amount=-1 +kerning first=113 second=108 amount=-1 +kerning first=113 second=107 amount=-1 +kerning first=113 second=106 amount=1 +kerning first=113 second=104 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=113 second=102 amount=-1 +kerning first=113 second=98 amount=-1 +kerning first=104 second=98 amount=-1 +kerning first=113 second=97 amount=-1 +kerning first=113 second=46 amount=-1 +kerning first=113 second=45 amount=-1 +kerning first=113 second=44 amount=-1 +kerning first=104 second=103 amount=-1 +kerning first=112 second=8250 amount=-1 +kerning first=104 second=106 amount=-1 +kerning first=112 second=8221 amount=-1 +kerning first=112 second=8220 amount=-1 +kerning first=112 second=8217 amount=-1 +kerning first=112 second=382 amount=-1 +kerning first=112 second=380 amount=-1 +kerning first=112 second=378 amount=-1 +kerning first=112 second=375 amount=-1 +kerning first=112 second=353 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=112 second=351 amount=-1 +kerning first=104 second=121 amount=-1 +kerning first=112 second=347 amount=-1 +kerning first=104 second=171 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=112 second=291 amount=-1 +kerning first=112 second=289 amount=-1 +kerning first=112 second=287 amount=-1 +kerning first=112 second=255 amount=-1 +kerning first=112 second=253 amount=-1 +kerning first=112 second=187 amount=-1 +kerning first=112 second=122 amount=-1 +kerning first=112 second=121 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=112 second=119 amount=-1 +kerning first=112 second=118 amount=-1 +kerning first=112 second=115 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=112 second=106 amount=-1 +kerning first=112 second=103 amount=-1 +kerning first=112 second=46 amount=-1 +kerning first=112 second=44 amount=-1 +kerning first=111 second=8250 amount=-1 +kerning first=111 second=8221 amount=-1 +kerning first=111 second=8220 amount=-1 +kerning first=111 second=8217 amount=-1 +kerning first=111 second=382 amount=-1 +kerning first=104 second=253 amount=-1 +kerning first=104 second=254 amount=-1 +kerning first=104 second=255 amount=-1 +kerning first=111 second=380 amount=-1 +kerning first=111 second=378 amount=-1 +kerning first=111 second=375 amount=-1 +kerning first=111 second=353 amount=-1 +kerning first=111 second=351 amount=-1 +kerning first=111 second=347 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=111 second=314 amount=-1 +kerning first=111 second=291 amount=-1 +kerning first=111 second=289 amount=-1 +kerning first=111 second=287 amount=-1 +kerning first=111 second=255 amount=-1 +kerning first=104 second=287 amount=-1 +kerning first=104 second=289 amount=-1 +kerning first=104 second=291 amount=-1 +kerning first=111 second=253 amount=-1 +kerning first=111 second=187 amount=-1 +kerning first=111 second=122 amount=-1 +kerning first=111 second=121 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=111 second=119 amount=-1 +kerning first=111 second=118 amount=-1 +kerning first=111 second=115 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=111 second=106 amount=-1 +kerning first=111 second=103 amount=-1 +kerning first=111 second=46 amount=-1 +kerning first=111 second=44 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=110 second=8221 amount=-1 +kerning first=110 second=8220 amount=-1 +kerning first=110 second=8217 amount=-1 +kerning first=110 second=375 amount=-1 +kerning first=110 second=291 amount=-1 +kerning first=110 second=289 amount=-1 +kerning first=110 second=287 amount=-1 +kerning first=110 second=255 amount=-1 +kerning first=110 second=254 amount=-1 +kerning first=104 second=375 amount=-1 +kerning first=110 second=253 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=110 second=121 amount=-1 +kerning first=110 second=119 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=110 second=106 amount=-1 +kerning first=110 second=103 amount=-1 +kerning first=110 second=98 amount=-1 +kerning first=110 second=45 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=109 second=8221 amount=-1 +kerning first=109 second=8220 amount=-1 +kerning first=109 second=8217 amount=-1 +kerning first=104 second=8217 amount=-1 +kerning first=104 second=8220 amount=-1 +kerning first=104 second=8221 amount=-1 +kerning first=104 second=8249 amount=-1 +kerning first=109 second=375 amount=-1 +kerning first=109 second=291 amount=-1 +kerning first=109 second=289 amount=-1 +kerning first=109 second=287 amount=-1 +kerning first=109 second=255 amount=-1 +kerning first=105 second=44 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=105 second=46 amount=-1 +kerning first=105 second=97 amount=-1 +kerning first=109 second=254 amount=-1 +kerning first=109 second=253 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=109 second=121 amount=-1 +kerning first=109 second=119 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=109 second=118 amount=-1 +kerning first=109 second=106 amount=-1 +kerning first=105 second=106 amount=-1 +kerning first=109 second=103 amount=-1 +kerning first=105 second=108 amount=-1 +kerning first=109 second=98 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=108 second=8221 amount=-1 +kerning first=108 second=8220 amount=-1 +kerning first=108 second=8217 amount=-1 +kerning first=105 second=115 amount=-1 +kerning first=108 second=375 amount=-1 +kerning first=108 second=371 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=108 second=369 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=108 second=367 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=108 second=365 amount=-1 +kerning first=105 second=224 amount=-1 +kerning first=105 second=225 amount=-1 +kerning first=105 second=226 amount=-1 +kerning first=105 second=227 amount=-1 +kerning first=105 second=228 amount=-1 +kerning first=105 second=229 amount=-1 +kerning first=105 second=230 amount=-1 +kerning first=108 second=363 amount=-1 +kerning first=108 second=361 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=108 second=261 amount=-1 +kerning first=108 second=259 amount=-1 +kerning first=108 second=257 amount=-1 +kerning first=108 second=255 amount=-1 +kerning first=108 second=253 amount=-1 +kerning first=108 second=252 amount=-1 +kerning first=108 second=251 amount=-1 +kerning first=108 second=250 amount=-1 +kerning first=108 second=249 amount=-1 +kerning first=108 second=230 amount=-1 +kerning first=108 second=229 amount=-1 +kerning first=108 second=228 amount=-1 +kerning first=108 second=227 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=108 second=226 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=105 second=257 amount=-1 +kerning first=105 second=259 amount=-1 +kerning first=105 second=261 amount=-1 +kerning first=108 second=225 amount=-1 +kerning first=108 second=224 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=108 second=121 amount=-1 +kerning first=108 second=119 amount=-1 +kerning first=108 second=118 amount=-1 +kerning first=108 second=117 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=108 second=103 amount=-1 +kerning first=108 second=97 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=105 second=291 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=107 second=8249 amount=-1 +kerning first=107 second=8221 amount=-1 +kerning first=107 second=8220 amount=-1 +kerning first=105 second=314 amount=-1 +kerning first=105 second=316 amount=-1 +kerning first=105 second=318 amount=-1 +kerning first=107 second=8217 amount=-1 +kerning first=107 second=353 amount=-1 +kerning first=107 second=351 amount=-1 +kerning first=107 second=347 amount=-1 +kerning first=107 second=339 amount=-1 +kerning first=107 second=337 amount=-1 +kerning first=107 second=335 amount=-1 +kerning first=107 second=333 amount=-1 +kerning first=107 second=291 amount=-1 +kerning first=105 second=347 amount=-1 +kerning first=105 second=351 amount=-1 +kerning first=105 second=353 amount=-1 +kerning first=107 second=289 amount=-1 +kerning first=107 second=287 amount=-1 +kerning first=107 second=283 amount=-1 +kerning first=107 second=281 amount=-1 +kerning first=107 second=279 amount=-1 +kerning first=107 second=277 amount=-1 +kerning first=107 second=275 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=107 second=273 amount=-1 +kerning first=107 second=271 amount=-1 +kerning first=107 second=269 amount=-1 +kerning first=107 second=267 amount=-1 +kerning first=107 second=263 amount=-1 +kerning first=107 second=248 amount=-1 +kerning first=107 second=246 amount=-1 +kerning first=107 second=245 amount=-1 +kerning first=107 second=244 amount=-1 +kerning first=107 second=243 amount=-1 +kerning first=107 second=242 amount=-1 +kerning first=107 second=240 amount=-1 +kerning first=107 second=235 amount=-1 +kerning first=107 second=234 amount=-1 +kerning first=107 second=233 amount=-1 +kerning first=107 second=232 amount=-1 +kerning first=105 second=8217 amount=-1 +kerning first=105 second=8220 amount=-1 +kerning first=105 second=8221 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=107 second=231 amount=-1 +kerning first=107 second=171 amount=-1 +kerning first=107 second=115 amount=-1 +kerning first=107 second=113 amount=-1 +kerning first=107 second=111 amount=-1 +kerning first=106 second=44 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=106 second=46 amount=-1 +kerning first=106 second=97 amount=-1 +kerning first=107 second=103 amount=-1 +kerning first=107 second=101 amount=-1 +kerning first=107 second=100 amount=-1 +kerning first=107 second=99 amount=-1 +kerning first=107 second=45 amount=-1 +kerning first=106 second=103 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=106 second=8221 amount=-1 +kerning first=106 second=106 amount=-1 +kerning first=106 second=8220 amount=-1 +kerning first=106 second=108 amount=-1 +kerning first=106 second=8217 amount=-1 +kerning first=106 second=375 amount=-1 +kerning first=106 second=353 amount=-1 +kerning first=106 second=351 amount=-1 +kerning first=106 second=347 amount=-1 +kerning first=106 second=318 amount=-1 +kerning first=106 second=115 amount=-1 +kerning first=106 second=316 amount=-1 +kerning first=106 second=314 amount=-1 +kerning first=106 second=118 amount=-1 +kerning first=106 second=119 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=106 second=121 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=106 second=224 amount=-1 +kerning first=106 second=225 amount=-1 +kerning first=106 second=226 amount=-1 +kerning first=106 second=227 amount=-1 +kerning first=106 second=228 amount=-1 +kerning first=106 second=229 amount=-1 +kerning first=106 second=230 amount=-1 +kerning first=106 second=261 amount=-1 +kerning first=106 second=259 amount=-1 +kerning first=106 second=257 amount=-1 +kerning first=106 second=255 amount=-1 +kerning first=106 second=253 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32_0.png b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32_0.png new file mode 100644 index 000000000..9af61dfa0 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif32_0.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I.fnt b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I.fnt new file mode 100644 index 000000000..f6cab8b7c --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I.fnt @@ -0,0 +1,8790 @@ +info face="FreeSerif" size=64 bold=0 italic=1 charset="" unicode=1 stretchH=100 smooth=1 aa=2 padding=0,0,0,0 spacing=3,3 outline=0 +common lineHeight=64 base=48 scaleW=1024 scaleH=1024 pages=1 packed=0 alphaChnl=0 redChnl=4 greenChnl=4 blueChnl=4 +page id=0 file="BM-FreeSerif64I_0.png" +chars count=406 +char id=-1 x=0 y=468 width=41 height=36 xoffset=4 yoffset=12 xadvance=37 page=0 chnl=15 +char id=32 x=1018 y=175 width=1 height=1 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=15 +char id=33 x=381 y=421 width=17 height=37 xoffset=7 yoffset=11 xadvance=18 page=0 chnl=15 +char id=34 x=786 y=520 width=16 height=14 xoffset=13 yoffset=11 xadvance=22 page=0 chnl=15 +char id=35 x=559 y=457 width=31 height=36 xoffset=4 yoffset=12 xadvance=26 page=0 chnl=15 +char id=36 x=877 y=204 width=31 height=44 xoffset=3 yoffset=9 xadvance=26 page=0 chnl=15 +char id=37 x=208 y=304 width=37 height=38 xoffset=10 yoffset=11 xadvance=44 page=0 chnl=15 +char id=38 x=596 y=252 width=42 height=38 xoffset=4 yoffset=11 xadvance=41 page=0 chnl=15 +char id=39 x=1013 y=203 width=7 height=14 xoffset=12 yoffset=11 xadvance=9 page=0 chnl=15 +char id=40 x=896 y=155 width=23 height=46 xoffset=5 yoffset=11 xadvance=18 page=0 chnl=15 +char id=41 x=922 y=155 width=23 height=46 xoffset=-1 yoffset=12 xadvance=18 page=0 chnl=15 +char id=42 x=333 y=541 width=23 height=23 xoffset=10 yoffset=11 xadvance=26 page=0 chnl=15 +char id=43 x=627 y=496 width=29 height=28 xoffset=5 yoffset=20 xadvance=30 page=0 chnl=15 +char id=44 x=867 y=520 width=10 height=13 xoffset=1 yoffset=42 xadvance=13 page=0 chnl=15 +char id=45 x=433 y=557 width=15 height=4 xoffset=5 yoffset=34 xadvance=18 page=0 chnl=15 +char id=46 x=1012 y=349 width=7 height=7 xoffset=4 yoffset=42 xadvance=13 page=0 chnl=15 +char id=47 x=768 y=293 width=29 height=38 xoffset=-1 yoffset=11 xadvance=15 page=0 chnl=15 +char id=48 x=62 y=346 width=28 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=49 x=206 y=427 width=23 height=37 xoffset=6 yoffset=11 xadvance=26 page=0 chnl=15 +char id=50 x=515 y=378 width=31 height=37 xoffset=1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=51 x=670 y=293 width=30 height=38 xoffset=2 yoffset=11 xadvance=26 page=0 chnl=15 +char id=52 x=943 y=373 width=29 height=37 xoffset=3 yoffset=11 xadvance=26 page=0 chnl=15 +char id=53 x=287 y=300 width=34 height=38 xoffset=2 yoffset=11 xadvance=26 page=0 chnl=15 +char id=54 x=432 y=299 width=32 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=55 x=625 y=457 width=28 height=36 xoffset=9 yoffset=12 xadvance=26 page=0 chnl=15 +char id=56 x=93 y=346 width=28 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=57 x=537 y=295 width=31 height=38 xoffset=2 yoffset=11 xadvance=26 page=0 chnl=15 +char id=58 x=26 y=544 width=14 height=26 xoffset=4 yoffset=23 xadvance=15 page=0 chnl=15 +char id=59 x=1006 y=373 width=15 height=32 xoffset=3 yoffset=23 xadvance=15 page=0 chnl=15 +char id=60 x=522 y=499 width=34 height=29 xoffset=5 yoffset=20 xadvance=30 page=0 chnl=15 +char id=61 x=638 y=527 width=33 height=15 xoffset=3 yoffset=27 xadvance=30 page=0 chnl=15 +char id=62 x=559 y=496 width=33 height=29 xoffset=1 yoffset=20 xadvance=30 page=0 chnl=15 +char id=63 x=232 y=426 width=23 height=37 xoffset=10 yoffset=11 xadvance=23 page=0 chnl=15 +char id=64 x=730 y=252 width=41 height=38 xoffset=11 yoffset=11 xadvance=49 page=0 chnl=15 +char id=65 x=971 y=333 width=38 height=37 xoffset=0 yoffset=11 xadvance=38 page=0 chnl=15 +char id=66 x=130 y=467 width=39 height=36 xoffset=0 yoffset=12 xadvance=35 page=0 chnl=15 +char id=67 x=85 y=305 width=39 height=38 xoffset=6 yoffset=11 xadvance=35 page=0 chnl=15 +char id=68 x=776 y=414 width=44 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=69 x=916 y=413 width=41 height=36 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=70 x=960 y=413 width=41 height=36 xoffset=0 yoffset=12 xadvance=29 page=0 chnl=15 +char id=71 x=774 y=251 width=40 height=38 xoffset=6 yoffset=11 xadvance=38 page=0 chnl=15 +char id=72 x=521 y=418 width=50 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=73 x=593 y=457 width=29 height=36 xoffset=0 yoffset=12 xadvance=18 page=0 chnl=15 +char id=74 x=651 y=374 width=31 height=37 xoffset=1 yoffset=12 xadvance=20 page=0 chnl=15 +char id=75 x=679 y=414 width=47 height=36 xoffset=1 yoffset=12 xadvance=38 page=0 chnl=15 +char id=76 x=409 y=460 width=35 height=36 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=77 x=401 y=421 width=58 height=36 xoffset=0 yoffset=12 xadvance=47 page=0 chnl=15 +char id=78 x=733 y=334 width=50 height=37 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=79 x=43 y=305 width=39 height=38 xoffset=6 yoffset=11 xadvance=38 page=0 chnl=15 +char id=80 x=214 y=467 width=38 height=36 xoffset=0 yoffset=12 xadvance=29 page=0 chnl=15 +char id=81 x=778 y=155 width=39 height=46 xoffset=6 yoffset=11 xadvance=38 page=0 chnl=15 +char id=82 x=172 y=467 width=39 height=36 xoffset=0 yoffset=12 xadvance=35 page=0 chnl=15 +char id=83 x=396 y=299 width=33 height=38 xoffset=3 yoffset=11 xadvance=29 page=0 chnl=15 +char id=84 x=371 y=462 width=35 height=36 xoffset=8 yoffset=12 xadvance=32 page=0 chnl=15 +char id=85 x=885 y=333 width=42 height=37 xoffset=8 yoffset=12 xadvance=38 page=0 chnl=15 +char id=86 x=0 y=388 width=37 height=37 xoffset=12 yoffset=12 xadvance=38 page=0 chnl=15 +char id=87 x=679 y=334 width=51 height=37 xoffset=11 yoffset=12 xadvance=50 page=0 chnl=15 +char id=88 x=627 y=416 width=49 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=89 x=88 y=468 width=39 height=36 xoffset=11 yoffset=12 xadvance=38 page=0 chnl=15 +char id=90 x=870 y=413 width=43 height=36 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=91 x=975 y=203 width=27 height=44 xoffset=1 yoffset=12 xadvance=18 page=0 chnl=15 +char id=92 x=1005 y=203 width=5 height=38 xoffset=11 yoffset=11 xadvance=16 page=0 chnl=15 +char id=93 x=945 y=204 width=27 height=44 xoffset=-1 yoffset=12 xadvance=18 page=0 chnl=15 +char id=94 x=520 y=532 width=23 height=20 xoffset=6 yoffset=12 xadvance=25 page=0 chnl=15 +char id=95 x=360 y=567 width=28 height=4 xoffset=-2 yoffset=51 xadvance=26 page=0 chnl=15 +char id=96 x=14 y=573 width=10 height=10 xoffset=12 yoffset=11 xadvance=18 page=0 chnl=15 +char id=97 x=987 y=490 width=24 height=26 xoffset=3 yoffset=23 xadvance=23 page=0 chnl=15 +char id=98 x=389 y=340 width=26 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=99 x=960 y=490 width=24 height=26 xoffset=4 yoffset=23 xadvance=23 page=0 chnl=15 +char id=100 x=502 y=297 width=32 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=101 x=933 y=490 width=24 height=26 xoffset=4 yoffset=23 xadvance=23 page=0 chnl=15 +char id=102 x=549 y=378 width=31 height=37 xoffset=1 yoffset=11 xadvance=18 page=0 chnl=15 +char id=103 x=266 y=386 width=34 height=37 xoffset=-1 yoffset=23 xadvance=26 page=0 chnl=15 +char id=104 x=685 y=374 width=30 height=37 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=105 x=357 y=422 width=21 height=37 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=106 x=109 y=108 width=30 height=49 xoffset=-7 yoffset=11 xadvance=15 page=0 chnl=15 +char id=107 x=303 y=382 width=34 height=37 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=108 x=308 y=422 width=22 height=37 xoffset=1 yoffset=11 xadvance=15 page=0 chnl=15 +char id=109 x=102 y=544 width=44 height=25 xoffset=0 yoffset=23 xadvance=41 page=0 chnl=15 +char id=110 x=219 y=542 width=29 height=25 xoffset=0 yoffset=23 xadvance=26 page=0 chnl=15 +char id=111 x=846 y=491 width=26 height=26 xoffset=4 yoffset=23 xadvance=26 page=0 chnl=15 +char id=112 x=117 y=387 width=35 height=37 xoffset=-4 yoffset=23 xadvance=26 page=0 chnl=15 +char id=113 x=0 y=428 width=28 height=37 xoffset=3 yoffset=23 xadvance=26 page=0 chnl=15 +char id=114 x=283 y=541 width=26 height=25 xoffset=0 yoffset=23 xadvance=18 page=0 chnl=15 +char id=115 x=0 y=544 width=23 height=26 xoffset=2 yoffset=23 xadvance=20 page=0 chnl=15 +char id=116 x=1004 y=413 width=17 height=33 xoffset=5 yoffset=16 xadvance=15 page=0 chnl=15 +char id=117 x=904 y=490 width=26 height=26 xoffset=5 yoffset=23 xadvance=26 page=0 chnl=15 +char id=118 x=875 y=491 width=26 height=26 xoffset=8 yoffset=23 xadvance=26 page=0 chnl=15 +char id=119 x=737 y=491 width=37 height=26 xoffset=9 yoffset=23 xadvance=38 page=0 chnl=15 +char id=120 x=185 y=542 width=31 height=25 xoffset=0 yoffset=23 xadvance=26 page=0 chnl=15 +char id=121 x=40 y=388 width=36 height=37 xoffset=-1 yoffset=23 xadvance=26 page=0 chnl=15 +char id=122 x=251 y=542 width=29 height=25 xoffset=1 yoffset=23 xadvance=23 page=0 chnl=15 +char id=123 x=396 y=158 width=24 height=47 xoffset=8 yoffset=11 xadvance=25 page=0 chnl=15 +char id=124 x=492 y=338 width=17 height=38 xoffset=3 yoffset=11 xadvance=10 page=0 chnl=15 +char id=125 x=369 y=158 width=24 height=47 xoffset=3 yoffset=11 xadvance=25 page=0 chnl=15 +char id=126 x=95 y=572 width=26 height=8 xoffset=6 yoffset=30 xadvance=29 page=0 chnl=15 +char id=160 x=1018 y=155 width=1 height=1 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=15 +char id=161 x=472 y=338 width=17 height=38 xoffset=2 yoffset=22 xadvance=18 page=0 chnl=15 +char id=162 x=518 y=253 width=29 height=39 xoffset=3 yoffset=16 xadvance=26 page=0 chnl=15 +char id=163 x=192 y=387 width=34 height=37 xoffset=1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=164 x=481 y=499 width=38 height=30 xoffset=0 yoffset=15 xadvance=26 page=0 chnl=15 +char id=165 x=255 y=466 width=36 height=36 xoffset=4 yoffset=12 xadvance=26 page=0 chnl=15 +char id=166 x=1001 y=52 width=17 height=38 xoffset=3 yoffset=11 xadvance=10 page=0 chnl=15 +char id=167 x=474 y=207 width=27 height=45 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=168 x=193 y=570 width=17 height=6 xoffset=11 yoffset=14 xadvance=18 page=0 chnl=15 +char id=169 x=279 y=257 width=43 height=40 xoffset=6 yoffset=9 xadvance=42 page=0 chnl=15 +char id=170 x=619 y=528 width=16 height=16 xoffset=8 yoffset=11 xadvance=14 page=0 chnl=15 +char id=171 x=423 y=533 width=27 height=21 xoffset=4 yoffset=25 xadvance=23 page=0 chnl=15 +char id=172 x=546 y=531 width=29 height=16 xoffset=7 yoffset=27 xadvance=30 page=0 chnl=15 +char id=173 x=451 y=557 width=15 height=4 xoffset=5 yoffset=34 xadvance=18 page=0 chnl=15 +char id=174 x=325 y=256 width=43 height=40 xoffset=6 yoffset=9 xadvance=42 page=0 chnl=15 +char id=175 x=391 y=562 width=18 height=4 xoffset=10 yoffset=15 xadvance=18 page=0 chnl=15 +char id=176 x=599 y=528 width=17 height=16 xoffset=12 yoffset=11 xadvance=21 page=0 chnl=15 +char id=177 x=686 y=453 width=36 height=35 xoffset=1 yoffset=13 xadvance=30 page=0 chnl=15 +char id=178 x=359 y=541 width=21 height=23 xoffset=5 yoffset=11 xadvance=17 page=0 chnl=15 +char id=179 x=383 y=536 width=19 height=23 xoffset=6 yoffset=11 xadvance=17 page=0 chnl=15 +char id=180 x=977 y=519 width=15 height=10 xoffset=14 yoffset=11 xadvance=18 page=0 chnl=15 +char id=181 x=376 y=381 width=33 height=37 xoffset=-1 yoffset=23 xadvance=26 page=0 chnl=15 +char id=182 x=805 y=204 width=35 height=44 xoffset=3 yoffset=12 xadvance=26 page=0 chnl=15 +char id=183 x=1014 y=489 width=6 height=6 xoffset=8 yoffset=32 xadvance=13 page=0 chnl=15 +char id=184 x=880 y=520 width=13 height=12 xoffset=-1 yoffset=47 xadvance=18 page=0 chnl=15 +char id=185 x=405 y=536 width=15 height=23 xoffset=8 yoffset=11 xadvance=17 page=0 chnl=15 +char id=186 x=578 y=528 width=18 height=16 xoffset=9 yoffset=11 xadvance=16 page=0 chnl=15 +char id=187 x=453 y=533 width=26 height=21 xoffset=1 yoffset=25 xadvance=23 page=0 chnl=15 +char id=188 x=903 y=251 width=40 height=38 xoffset=6 yoffset=11 xadvance=40 page=0 chnl=15 +char id=189 x=0 y=306 width=40 height=38 xoffset=5 yoffset=11 xadvance=40 page=0 chnl=15 +char id=190 x=686 y=252 width=41 height=38 xoffset=6 yoffset=11 xadvance=40 page=0 chnl=15 +char id=191 x=258 y=426 width=22 height=37 xoffset=0 yoffset=23 xadvance=23 page=0 chnl=15 +char id=192 x=912 y=104 width=38 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=193 x=295 y=107 width=43 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=194 x=743 y=104 width=40 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=195 x=972 y=155 width=43 height=45 xoffset=0 yoffset=3 xadvance=38 page=0 chnl=15 +char id=196 x=179 y=210 width=41 height=45 xoffset=0 yoffset=3 xadvance=38 page=0 chnl=15 +char id=197 x=353 y=55 width=39 height=49 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=198 x=462 y=421 width=56 height=36 xoffset=0 yoffset=12 xadvance=47 page=0 chnl=15 +char id=199 x=828 y=104 width=39 height=48 xoffset=6 yoffset=11 xadvance=35 page=0 chnl=15 +char id=200 x=656 y=105 width=41 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=201 x=568 y=105 width=41 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=202 x=524 y=105 width=41 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=203 x=135 y=211 width=41 height=45 xoffset=0 yoffset=3 xadvance=32 page=0 chnl=15 +char id=204 x=253 y=158 width=29 height=48 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=205 x=111 y=160 width=33 height=48 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=206 x=991 y=104 width=30 height=48 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=207 x=345 y=208 width=31 height=45 xoffset=0 yoffset=3 xadvance=18 page=0 chnl=15 +char id=208 x=823 y=414 width=44 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=209 x=423 y=158 width=50 height=46 xoffset=0 yoffset=3 xadvance=38 page=0 chnl=15 +char id=210 x=647 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=211 x=521 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=212 x=479 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=213 x=736 y=155 width=39 height=46 xoffset=6 yoffset=3 xadvance=38 page=0 chnl=15 +char id=214 x=694 y=156 width=39 height=46 xoffset=6 yoffset=3 xadvance=38 page=0 chnl=15 +char id=215 x=659 y=494 width=34 height=27 xoffset=3 yoffset=21 xadvance=30 page=0 chnl=15 +char id=216 x=529 y=205 width=48 height=44 xoffset=1 yoffset=8 xadvance=38 page=0 chnl=15 +char id=217 x=135 y=56 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=218 x=45 y=56 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=219 x=180 y=56 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=220 x=476 y=156 width=42 height=46 xoffset=8 yoffset=3 xadvance=38 page=0 chnl=15 +char id=221 x=870 y=104 width=39 height=48 xoffset=11 yoffset=0 xadvance=38 page=0 chnl=15 +char id=222 x=294 y=466 width=36 height=36 xoffset=0 yoffset=12 xadvance=30 page=0 chnl=15 +char id=223 x=324 y=300 width=33 height=38 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=224 x=418 y=340 width=24 height=38 xoffset=3 yoffset=11 xadvance=23 page=0 chnl=15 +char id=225 x=960 y=292 width=29 height=38 xoffset=3 yoffset=11 xadvance=23 page=0 chnl=15 +char id=226 x=214 y=345 width=27 height=38 xoffset=3 yoffset=11 xadvance=23 page=0 chnl=15 +char id=227 x=758 y=453 width=29 height=35 xoffset=3 yoffset=14 xadvance=23 page=0 chnl=15 +char id=228 x=821 y=453 width=28 height=35 xoffset=3 yoffset=14 xadvance=23 page=0 chnl=15 +char id=229 x=403 y=256 width=26 height=40 xoffset=3 yoffset=9 xadvance=23 page=0 chnl=15 +char id=230 x=777 y=491 width=36 height=26 xoffset=3 yoffset=23 xadvance=34 page=0 chnl=15 +char id=231 x=92 y=427 width=26 height=37 xoffset=2 yoffset=23 xadvance=23 page=0 chnl=15 +char id=232 x=445 y=340 width=24 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=233 x=0 y=347 width=28 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=234 x=273 y=343 width=26 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=235 x=883 y=452 width=27 height=35 xoffset=4 yoffset=14 xadvance=23 page=0 chnl=15 +char id=236 x=333 y=422 width=21 height=37 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=237 x=62 y=428 width=27 height=37 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=238 x=178 y=427 width=25 height=37 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=239 x=98 y=507 width=25 height=34 xoffset=0 yoffset=14 xadvance=15 page=0 chnl=15 +char id=240 x=703 y=293 width=30 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=241 x=0 y=507 width=34 height=34 xoffset=0 yoffset=14 xadvance=26 page=0 chnl=15 +char id=242 x=302 y=341 width=26 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=243 x=800 y=292 width=29 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=244 x=184 y=346 width=27 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=245 x=725 y=453 width=30 height=35 xoffset=4 yoffset=14 xadvance=26 page=0 chnl=15 +char id=246 x=852 y=453 width=28 height=35 xoffset=4 yoffset=14 xadvance=26 page=0 chnl=15 +char id=247 x=595 y=496 width=29 height=29 xoffset=5 yoffset=20 xadvance=30 page=0 chnl=15 +char id=248 x=523 y=457 width=33 height=36 xoffset=0 yoffset=18 xadvance=26 page=0 chnl=15 +char id=249 x=331 y=341 width=26 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=250 x=896 y=292 width=29 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=251 x=360 y=340 width=26 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=252 x=913 y=452 width=27 height=35 xoffset=5 yoffset=14 xadvance=26 page=0 chnl=15 +char id=253 x=809 y=52 width=36 height=49 xoffset=-1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=254 x=925 y=52 width=35 height=49 xoffset=-4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=255 x=820 y=155 width=36 height=46 xoffset=-1 yoffset=14 xadvance=26 page=0 chnl=15 +char id=256 x=29 y=259 width=42 height=43 xoffset=0 yoffset=5 xadvance=38 page=0 chnl=15 +char id=257 x=238 y=506 width=28 height=33 xoffset=3 yoffset=16 xadvance=23 page=0 chnl=15 +char id=258 x=341 y=107 width=43 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=259 x=911 y=373 width=29 height=37 xoffset=3 yoffset=12 xadvance=23 page=0 chnl=15 +char id=260 x=609 y=156 width=40 height=46 xoffset=0 yoffset=11 xadvance=38 page=0 chnl=15 +char id=261 x=126 y=507 width=24 height=34 xoffset=3 yoffset=23 xadvance=23 page=0 chnl=15 +char id=262 x=605 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=35 page=0 chnl=15 +char id=263 x=832 y=292 width=29 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=264 x=689 y=52 width=39 height=49 xoffset=6 yoffset=0 xadvance=35 page=0 chnl=15 +char id=265 x=124 y=346 width=27 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=266 x=652 y=156 width=39 height=46 xoffset=6 yoffset=3 xadvance=35 page=0 chnl=15 +char id=267 x=970 y=452 width=24 height=35 xoffset=4 yoffset=14 xadvance=23 page=0 chnl=15 +char id=268 x=311 y=55 width=39 height=49 xoffset=6 yoffset=0 xadvance=35 page=0 chnl=15 +char id=269 x=571 y=293 width=30 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=270 x=248 y=107 width=44 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=271 x=946 y=251 width=40 height=38 xoffset=4 yoffset=11 xadvance=33 page=0 chnl=15 +char id=272 x=729 y=414 width=44 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=273 x=360 y=299 width=33 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=274 x=74 y=259 width=41 height=43 xoffset=0 yoffset=5 xadvance=32 page=0 chnl=15 +char id=275 x=269 y=505 width=28 height=33 xoffset=4 yoffset=16 xadvance=23 page=0 chnl=15 +char id=276 x=285 y=158 width=41 height=47 xoffset=0 yoffset=1 xadvance=32 page=0 chnl=15 +char id=277 x=783 y=374 width=29 height=37 xoffset=4 yoffset=12 xadvance=23 page=0 chnl=15 +char id=278 x=91 y=211 width=41 height=45 xoffset=0 yoffset=3 xadvance=32 page=0 chnl=15 +char id=279 x=943 y=452 width=24 height=35 xoffset=4 yoffset=14 xadvance=23 page=0 chnl=15 +char id=280 x=223 y=210 width=41 height=45 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=281 x=997 y=452 width=24 height=34 xoffset=4 yoffset=23 xadvance=23 page=0 chnl=15 +char id=282 x=612 y=105 width=41 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=283 x=928 y=292 width=29 height=38 xoffset=4 yoffset=11 xadvance=23 page=0 chnl=15 +char id=284 x=268 y=55 width=40 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=285 x=0 y=108 width=34 height=49 xoffset=-1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=286 x=700 y=104 width=40 height=48 xoffset=6 yoffset=1 xadvance=38 page=0 chnl=15 +char id=287 x=38 y=160 width=34 height=48 xoffset=-1 yoffset=12 xadvance=26 page=0 chnl=15 +char id=288 x=566 y=156 width=40 height=46 xoffset=6 yoffset=3 xadvance=38 page=0 chnl=15 +char id=289 x=859 y=155 width=34 height=46 xoffset=-1 yoffset=14 xadvance=26 page=0 chnl=15 +char id=290 x=51 y=0 width=40 height=53 xoffset=6 yoffset=11 xadvance=38 page=0 chnl=15 +char id=291 x=131 y=0 width=34 height=53 xoffset=-1 yoffset=7 xadvance=26 page=0 chnl=15 +char id=292 x=727 y=0 width=50 height=49 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=293 x=0 y=160 width=35 height=48 xoffset=0 yoffset=0 xadvance=26 page=0 chnl=15 +char id=294 x=574 y=418 width=50 height=36 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=295 x=481 y=379 width=31 height=37 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=296 x=309 y=208 width=33 height=45 xoffset=0 yoffset=3 xadvance=18 page=0 chnl=15 +char id=297 x=330 y=505 width=27 height=33 xoffset=0 yoffset=15 xadvance=15 page=0 chnl=15 +char id=298 x=154 y=259 width=32 height=43 xoffset=0 yoffset=5 xadvance=18 page=0 chnl=15 +char id=299 x=380 y=501 width=26 height=32 xoffset=0 yoffset=16 xadvance=15 page=0 chnl=15 +char id=300 x=183 y=159 width=33 height=48 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=301 x=656 y=455 width=27 height=36 xoffset=0 yoffset=12 xadvance=15 page=0 chnl=15 +char id=302 x=411 y=208 width=29 height=45 xoffset=0 yoffset=12 xadvance=18 page=0 chnl=15 +char id=303 x=948 y=155 width=21 height=46 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=304 x=379 y=208 width=29 height=45 xoffset=0 yoffset=3 xadvance=18 page=0 chnl=15 +char id=305 x=312 y=541 width=18 height=25 xoffset=0 yoffset=23 xadvance=15 page=0 chnl=15 +char id=306 x=786 y=334 width=49 height=37 xoffset=0 yoffset=12 xadvance=37 page=0 chnl=15 +char id=307 x=887 y=52 width=35 height=49 xoffset=0 yoffset=11 xadvance=28 page=0 chnl=15 +char id=308 x=637 y=0 width=33 height=50 xoffset=1 yoffset=0 xadvance=20 page=0 chnl=15 +char id=309 x=37 y=108 width=33 height=49 xoffset=-7 yoffset=11 xadvance=15 page=0 chnl=15 +char id=310 x=247 y=0 width=47 height=52 xoffset=1 yoffset=12 xadvance=38 page=0 chnl=15 +char id=311 x=94 y=0 width=34 height=53 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=312 x=149 y=544 width=33 height=25 xoffset=0 yoffset=23 xadvance=26 page=0 chnl=15 +char id=313 x=963 y=52 width=35 height=49 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=314 x=219 y=159 width=31 height=48 xoffset=1 yoffset=0 xadvance=15 page=0 chnl=15 +char id=315 x=339 y=0 width=35 height=52 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=316 x=168 y=0 width=23 height=53 xoffset=0 yoffset=11 xadvance=15 page=0 chnl=15 +char id=317 x=930 y=333 width=38 height=37 xoffset=0 yoffset=11 xadvance=32 page=0 chnl=15 +char id=318 x=447 y=381 width=31 height=37 xoffset=1 yoffset=11 xadvance=21 page=0 chnl=15 +char id=319 x=447 y=460 width=35 height=36 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=320 x=121 y=427 width=26 height=37 xoffset=1 yoffset=11 xadvance=23 page=0 chnl=15 +char id=321 x=485 y=460 width=35 height=36 xoffset=0 yoffset=12 xadvance=32 page=0 chnl=15 +char id=322 x=283 y=426 width=22 height=37 xoffset=1 yoffset=11 xadvance=15 page=0 chnl=15 +char id=323 x=780 y=0 width=50 height=49 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=324 x=340 y=382 width=33 height=37 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=325 x=194 y=0 width=50 height=52 xoffset=0 yoffset=12 xadvance=38 page=0 chnl=15 +char id=326 x=215 y=258 width=29 height=41 xoffset=0 yoffset=23 xadvance=26 page=0 chnl=15 +char id=327 x=833 y=0 width=50 height=49 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=328 x=229 y=386 width=34 height=37 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=329 x=847 y=373 width=29 height=37 xoffset=3 yoffset=11 xadvance=29 page=0 chnl=15 +char id=330 x=550 y=252 width=43 height=38 xoffset=2 yoffset=11 xadvance=38 page=0 chnl=15 +char id=331 x=815 y=374 width=29 height=37 xoffset=0 yoffset=23 xadvance=26 page=0 chnl=15 +char id=332 x=724 y=205 width=39 height=44 xoffset=6 yoffset=5 xadvance=38 page=0 chnl=15 +char id=333 x=207 y=506 width=28 height=33 xoffset=4 yoffset=16 xadvance=26 page=0 chnl=15 +char id=334 x=563 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=335 x=751 y=374 width=29 height=37 xoffset=4 yoffset=12 xadvance=26 page=0 chnl=15 +char id=336 x=886 y=0 width=43 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=337 x=467 y=297 width=32 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=338 x=625 y=334 width=51 height=37 xoffset=6 yoffset=12 xadvance=47 page=0 chnl=15 +char id=339 x=696 y=491 width=38 height=26 xoffset=4 yoffset=23 xadvance=38 page=0 chnl=15 +char id=340 x=437 y=53 width=39 height=49 xoffset=0 yoffset=0 xadvance=35 page=0 chnl=15 +char id=341 x=879 y=373 width=29 height=37 xoffset=0 yoffset=11 xadvance=18 page=0 chnl=15 +char id=342 x=297 y=0 width=39 height=52 xoffset=0 yoffset=12 xadvance=35 page=0 chnl=15 +char id=343 x=247 y=258 width=29 height=41 xoffset=-2 yoffset=23 xadvance=18 page=0 chnl=15 +char id=344 x=479 y=105 width=42 height=48 xoffset=0 yoffset=0 xadvance=35 page=0 chnl=15 +char id=345 x=718 y=374 width=30 height=37 xoffset=0 yoffset=11 xadvance=18 page=0 chnl=15 +char id=346 x=770 y=52 width=36 height=49 xoffset=3 yoffset=0 xadvance=29 page=0 chnl=15 +char id=347 x=736 y=293 width=29 height=38 xoffset=2 yoffset=11 xadvance=20 page=0 chnl=15 +char id=348 x=73 y=108 width=33 height=49 xoffset=3 yoffset=0 xadvance=29 page=0 chnl=15 +char id=349 x=244 y=345 width=26 height=38 xoffset=2 yoffset=11 xadvance=20 page=0 chnl=15 +char id=350 x=147 y=159 width=33 height=48 xoffset=3 yoffset=11 xadvance=29 page=0 chnl=15 +char id=351 x=150 y=427 width=25 height=37 xoffset=0 yoffset=23 xadvance=20 page=0 chnl=15 +char id=352 x=731 y=52 width=36 height=49 xoffset=3 yoffset=0 xadvance=29 page=0 chnl=15 +char id=353 x=864 y=292 width=29 height=38 xoffset=2 yoffset=11 xadvance=20 page=0 chnl=15 +char id=354 x=329 y=158 width=37 height=47 xoffset=7 yoffset=12 xadvance=32 page=0 chnl=15 +char id=355 x=189 y=258 width=23 height=43 xoffset=-1 yoffset=16 xadvance=15 page=0 chnl=15 +char id=356 x=953 y=104 width=35 height=48 xoffset=8 yoffset=0 xadvance=32 page=0 chnl=15 +char id=357 x=154 y=346 width=27 height=38 xoffset=5 yoffset=11 xadvance=22 page=0 chnl=15 +char id=358 x=333 y=462 width=35 height=36 xoffset=8 yoffset=12 xadvance=32 page=0 chnl=15 +char id=359 x=360 y=501 width=17 height=33 xoffset=5 yoffset=16 xadvance=15 page=0 chnl=15 +char id=360 x=521 y=156 width=42 height=46 xoffset=8 yoffset=3 xadvance=38 page=0 chnl=15 +char id=361 x=790 y=453 width=28 height=35 xoffset=5 yoffset=14 xadvance=26 page=0 chnl=15 +char id=362 x=679 y=205 width=42 height=44 xoffset=8 yoffset=5 xadvance=38 page=0 chnl=15 +char id=363 x=300 y=505 width=27 height=33 xoffset=5 yoffset=16 xadvance=26 page=0 chnl=15 +char id=364 x=978 y=0 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=365 x=975 y=373 width=28 height=37 xoffset=5 yoffset=12 xadvance=26 page=0 chnl=15 +char id=366 x=512 y=0 width=42 height=50 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=367 x=432 y=256 width=26 height=40 xoffset=5 yoffset=9 xadvance=26 page=0 chnl=15 +char id=368 x=90 y=56 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=369 x=989 y=250 width=32 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=370 x=46 y=211 width=42 height=45 xoffset=8 yoffset=12 xadvance=38 page=0 chnl=15 +char id=371 x=69 y=507 width=26 height=34 xoffset=5 yoffset=23 xadvance=26 page=0 chnl=15 +char id=372 x=673 y=0 width=51 height=49 xoffset=11 yoffset=0 xadvance=50 page=0 chnl=15 +char id=373 x=168 y=305 width=37 height=38 xoffset=9 yoffset=11 xadvance=38 page=0 chnl=15 +char id=374 x=786 y=104 width=39 height=48 xoffset=11 yoffset=0 xadvance=38 page=0 chnl=15 +char id=375 x=848 y=52 width=36 height=49 xoffset=-1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=376 x=267 y=209 width=39 height=45 xoffset=11 yoffset=3 xadvance=38 page=0 chnl=15 +char id=377 x=387 y=107 width=43 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=378 x=583 y=376 width=31 height=37 xoffset=1 yoffset=11 xadvance=23 page=0 chnl=15 +char id=379 x=0 y=211 width=43 height=45 xoffset=0 yoffset=3 xadvance=32 page=0 chnl=15 +char id=380 x=37 y=507 width=29 height=34 xoffset=1 yoffset=14 xadvance=23 page=0 chnl=15 +char id=381 x=433 y=105 width=43 height=48 xoffset=0 yoffset=0 xadvance=32 page=0 chnl=15 +char id=382 x=412 y=381 width=32 height=37 xoffset=1 yoffset=11 xadvance=23 page=0 chnl=15 +char id=383 x=617 y=376 width=31 height=37 xoffset=1 yoffset=11 xadvance=18 page=0 chnl=15 +char id=399 x=127 y=305 width=38 height=38 xoffset=5 yoffset=11 xadvance=38 page=0 chnl=15 +char id=402 x=225 y=55 width=40 height=49 xoffset=-6 yoffset=11 xadvance=19 page=0 chnl=15 +char id=416 x=630 y=205 width=46 height=44 xoffset=6 yoffset=5 xadvance=38 page=0 chnl=15 +char id=417 x=445 y=499 width=33 height=31 xoffset=4 yoffset=18 xadvance=29 page=0 chnl=15 +char id=431 x=580 y=205 width=47 height=44 xoffset=8 yoffset=5 xadvance=41 page=0 chnl=15 +char id=432 x=409 y=499 width=33 height=31 xoffset=5 yoffset=18 xadvance=29 page=0 chnl=15 +char id=461 x=201 y=108 width=44 height=48 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=462 x=992 y=291 width=29 height=38 xoffset=3 yoffset=11 xadvance=23 page=0 chnl=15 +char id=463 x=75 y=160 width=33 height=48 xoffset=0 yoffset=0 xadvance=18 page=0 chnl=15 +char id=464 x=31 y=428 width=28 height=37 xoffset=0 yoffset=12 xadvance=15 page=0 chnl=15 +char id=465 x=395 y=53 width=39 height=49 xoffset=6 yoffset=0 xadvance=38 page=0 chnl=15 +char id=466 x=637 y=293 width=30 height=38 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=467 x=0 y=56 width=42 height=49 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=468 x=31 y=347 width=28 height=38 xoffset=5 yoffset=11 xadvance=26 page=0 chnl=15 +char id=469 x=467 y=0 width=42 height=50 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=470 x=371 y=256 width=29 height=40 xoffset=5 yoffset=9 xadvance=26 page=0 chnl=15 +char id=471 x=422 y=0 width=42 height=50 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=472 x=843 y=204 width=31 height=44 xoffset=5 yoffset=5 xadvance=26 page=0 chnl=15 +char id=473 x=557 y=0 width=40 height=50 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=474 x=911 y=204 width=31 height=44 xoffset=5 yoffset=5 xadvance=26 page=0 chnl=15 +char id=475 x=377 y=0 width=42 height=50 xoffset=8 yoffset=0 xadvance=38 page=0 chnl=15 +char id=476 x=0 y=259 width=26 height=44 xoffset=5 yoffset=5 xadvance=26 page=0 chnl=15 +char id=506 x=932 y=0 width=43 height=49 xoffset=0 yoffset=0 xadvance=38 page=0 chnl=15 +char id=507 x=600 y=0 width=34 height=50 xoffset=3 yoffset=0 xadvance=23 page=0 chnl=15 +char id=508 x=142 y=108 width=56 height=48 xoffset=0 yoffset=0 xadvance=47 page=0 chnl=15 +char id=509 x=248 y=302 width=36 height=38 xoffset=3 yoffset=11 xadvance=34 page=0 chnl=15 +char id=510 x=0 y=0 width=48 height=53 xoffset=1 yoffset=0 xadvance=38 page=0 chnl=15 +char id=511 x=118 y=259 width=33 height=43 xoffset=0 yoffset=11 xadvance=26 page=0 chnl=15 +char id=710 x=937 y=519 width=17 height=10 xoffset=9 yoffset=11 xadvance=18 page=0 chnl=15 +char id=711 x=957 y=519 width=17 height=10 xoffset=12 yoffset=11 xadvance=18 page=0 chnl=15 +char id=713 x=412 y=562 width=18 height=4 xoffset=10 yoffset=15 xadvance=18 page=0 chnl=15 +char id=728 x=76 y=572 width=16 height=9 xoffset=12 yoffset=12 xadvance=18 page=0 chnl=15 +char id=729 x=1012 y=359 width=6 height=6 xoffset=16 yoffset=14 xadvance=18 page=0 chnl=15 +char id=730 x=896 y=520 width=12 height=12 xoffset=14 yoffset=9 xadvance=18 page=0 chnl=15 +char id=731 x=0 y=573 width=11 height=10 xoffset=1 yoffset=47 xadvance=18 page=0 chnl=15 +char id=732 x=124 y=572 width=21 height=7 xoffset=9 yoffset=14 xadvance=18 page=0 chnl=15 +char id=733 x=911 y=519 width=23 height=10 xoffset=9 yoffset=11 xadvance=20 page=0 chnl=15 +char id=768 x=27 y=573 width=10 height=10 xoffset=-5 yoffset=11 xadvance=0 page=0 chnl=15 +char id=769 x=995 y=519 width=15 height=10 xoffset=-4 yoffset=11 xadvance=0 page=0 chnl=15 +char id=771 x=1001 y=93 width=20 height=6 xoffset=-8 yoffset=15 xadvance=0 page=0 chnl=15 +char id=777 x=40 y=573 width=10 height=10 xoffset=-2 yoffset=11 xadvance=0 page=0 chnl=15 +char id=803 x=1013 y=519 width=6 height=6 xoffset=-19 yoffset=51 xadvance=0 page=0 chnl=15 +char id=8204 x=1018 y=187 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8205 x=1018 y=191 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8206 x=1018 y=195 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8207 x=1018 y=159 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8211 x=329 y=569 width=28 height=4 xoffset=3 yoffset=34 xadvance=26 page=0 chnl=15 +char id=8212 x=213 y=570 width=55 height=4 xoffset=3 yoffset=34 xadvance=53 page=0 chnl=15 +char id=8213 x=271 y=570 width=55 height=4 xoffset=3 yoffset=34 xadvance=53 page=0 chnl=15 +char id=8215 x=53 y=572 width=20 height=9 xoffset=1 yoffset=50 xadvance=25 page=0 chnl=15 +char id=8216 x=805 y=520 width=10 height=14 xoffset=12 yoffset=11 xadvance=13 page=0 chnl=15 +char id=8217 x=818 y=520 width=10 height=14 xoffset=12 yoffset=11 xadvance=13 page=0 chnl=15 +char id=8218 x=854 y=520 width=10 height=13 xoffset=1 yoffset=42 xadvance=13 page=0 chnl=15 +char id=8219 x=1012 y=332 width=9 height=14 xoffset=13 yoffset=11 xadvance=13 page=0 chnl=15 +char id=8220 x=740 y=520 width=20 height=14 xoffset=12 yoffset=11 xadvance=23 page=0 chnl=15 +char id=8221 x=763 y=520 width=20 height=14 xoffset=12 yoffset=11 xadvance=23 page=0 chnl=15 +char id=8222 x=831 y=520 width=20 height=13 xoffset=1 yoffset=42 xadvance=23 page=0 chnl=15 +char id=8224 x=504 y=205 width=22 height=45 xoffset=10 yoffset=11 xadvance=26 page=0 chnl=15 +char id=8225 x=443 y=207 width=28 height=45 xoffset=4 yoffset=11 xadvance=26 page=0 chnl=15 +char id=8226 x=703 y=520 width=16 height=15 xoffset=7 yoffset=23 xadvance=18 page=0 chnl=15 +char id=8230 x=148 y=572 width=42 height=6 xoffset=7 yoffset=42 xadvance=53 page=0 chnl=15 +char id=8234 x=1018 y=171 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8235 x=1018 y=163 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8236 x=1018 y=167 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8237 x=1018 y=183 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8238 x=1018 y=179 width=1 height=1 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=15 +char id=8240 x=461 y=255 width=54 height=39 xoffset=4 yoffset=10 xadvance=53 page=0 chnl=15 +char id=8242 x=722 y=520 width=15 height=15 xoffset=10 yoffset=8 xadvance=13 page=0 chnl=15 +char id=8243 x=674 y=524 width=26 height=15 xoffset=9 yoffset=8 xadvance=22 page=0 chnl=15 +char id=8249 x=482 y=532 width=16 height=21 xoffset=4 yoffset=25 xadvance=13 page=0 chnl=15 +char id=8250 x=501 y=532 width=16 height=21 xoffset=1 yoffset=25 xadvance=13 page=0 chnl=15 +char id=8252 x=79 y=387 width=35 height=37 xoffset=7 yoffset=11 xadvance=35 page=0 chnl=15 +char id=8254 x=469 y=557 width=29 height=3 xoffset=9 yoffset=16 xadvance=26 page=0 chnl=15 +char id=8260 x=860 y=251 width=40 height=38 xoffset=-9 yoffset=11 xadvance=9 page=0 chnl=15 +char id=8355 x=44 y=468 width=41 height=36 xoffset=0 yoffset=12 xadvance=29 page=0 chnl=15 +char id=8356 x=155 y=387 width=34 height=37 xoffset=1 yoffset=11 xadvance=26 page=0 chnl=15 +char id=8359 x=512 y=338 width=55 height=37 xoffset=0 yoffset=12 xadvance=50 page=0 chnl=15 +char id=8362 x=153 y=506 width=51 height=33 xoffset=3 yoffset=15 xadvance=46 page=0 chnl=15 +char id=8363 x=766 y=204 width=36 height=44 xoffset=4 yoffset=5 xadvance=27 page=0 chnl=15 +char id=8364 x=641 y=252 width=42 height=38 xoffset=6 yoffset=11 xadvance=39 page=0 chnl=15 +char id=8453 x=817 y=251 width=40 height=38 xoffset=6 yoffset=11 xadvance=41 page=0 chnl=15 +char id=8467 x=604 y=293 width=30 height=38 xoffset=5 yoffset=11 xadvance=22 page=0 chnl=15 +char id=8470 x=570 y=336 width=52 height=37 xoffset=0 yoffset=12 xadvance=47 page=0 chnl=15 +char id=8482 x=43 y=544 width=56 height=25 xoffset=9 yoffset=12 xadvance=54 page=0 chnl=15 +char id=8486 x=838 y=333 width=44 height=37 xoffset=1 yoffset=11 xadvance=39 page=0 chnl=15 +char id=8494 x=816 y=491 width=27 height=26 xoffset=5 yoffset=23 xadvance=28 page=0 chnl=15 +kernings count=8379 +kerning first=212 second=8249 amount=-1 +kerning first=44 second=45 amount=-2 +kerning first=44 second=171 amount=-2 +kerning first=44 second=8217 amount=-4 +kerning first=44 second=8220 amount=-4 +kerning first=44 second=8221 amount=-4 +kerning first=44 second=8249 amount=-2 +kerning first=45 second=65 amount=-3 +kerning first=45 second=66 amount=-4 +kerning first=45 second=68 amount=-4 +kerning first=45 second=69 amount=-4 +kerning first=45 second=70 amount=-4 +kerning first=45 second=72 amount=-4 +kerning first=45 second=73 amount=-4 +kerning first=45 second=74 amount=-3 +kerning first=45 second=75 amount=-4 +kerning first=45 second=76 amount=-4 +kerning first=45 second=77 amount=-4 +kerning first=45 second=78 amount=-4 +kerning first=45 second=80 amount=-4 +kerning first=45 second=82 amount=-4 +kerning first=45 second=83 amount=-2 +kerning first=45 second=84 amount=-3 +kerning first=45 second=85 amount=-3 +kerning first=45 second=86 amount=-3 +kerning first=45 second=87 amount=-3 +kerning first=45 second=89 amount=-3 +kerning first=45 second=90 amount=-3 +kerning first=45 second=97 amount=-1 +kerning first=45 second=98 amount=-1 +kerning first=45 second=102 amount=-1 +kerning first=45 second=103 amount=-2 +kerning first=45 second=104 amount=-1 +kerning first=45 second=105 amount=-1 +kerning first=45 second=106 amount=-1 +kerning first=45 second=107 amount=-1 +kerning first=45 second=108 amount=-1 +kerning first=45 second=109 amount=-1 +kerning first=45 second=110 amount=-1 +kerning first=45 second=112 amount=-1 +kerning first=45 second=114 amount=-1 +kerning first=45 second=115 amount=-1 +kerning first=45 second=116 amount=-1 +kerning first=45 second=117 amount=-1 +kerning first=45 second=118 amount=-2 +kerning first=45 second=119 amount=-2 +kerning first=45 second=120 amount=-2 +kerning first=45 second=121 amount=-2 +kerning first=45 second=122 amount=-4 +kerning first=45 second=192 amount=-3 +kerning first=45 second=193 amount=-3 +kerning first=45 second=194 amount=-3 +kerning first=45 second=195 amount=-3 +kerning first=45 second=196 amount=-3 +kerning first=45 second=197 amount=-3 +kerning first=45 second=198 amount=-3 +kerning first=45 second=200 amount=-4 +kerning first=45 second=201 amount=-4 +kerning first=45 second=202 amount=-4 +kerning first=45 second=203 amount=-4 +kerning first=45 second=204 amount=-4 +kerning first=45 second=205 amount=-4 +kerning first=45 second=206 amount=-4 +kerning first=45 second=207 amount=-4 +kerning first=45 second=209 amount=-4 +kerning first=45 second=217 amount=-3 +kerning first=45 second=218 amount=-3 +kerning first=45 second=219 amount=-3 +kerning first=45 second=220 amount=-3 +kerning first=45 second=221 amount=-3 +kerning first=45 second=223 amount=-1 +kerning first=45 second=224 amount=-1 +kerning first=45 second=225 amount=-1 +kerning first=45 second=226 amount=-1 +kerning first=45 second=227 amount=-1 +kerning first=45 second=229 amount=-1 +kerning first=45 second=230 amount=-1 +kerning first=45 second=237 amount=-1 +kerning first=45 second=241 amount=-1 +kerning first=45 second=249 amount=-1 +kerning first=45 second=250 amount=-1 +kerning first=45 second=251 amount=-1 +kerning first=45 second=252 amount=-1 +kerning first=45 second=253 amount=-2 +kerning first=45 second=254 amount=-1 +kerning first=45 second=255 amount=-2 +kerning first=45 second=256 amount=-3 +kerning first=45 second=257 amount=-1 +kerning first=45 second=259 amount=-1 +kerning first=45 second=260 amount=-3 +kerning first=45 second=261 amount=-1 +kerning first=45 second=270 amount=-4 +kerning first=45 second=274 amount=-4 +kerning first=45 second=278 amount=-4 +kerning first=45 second=280 amount=-4 +kerning first=45 second=282 amount=-4 +kerning first=45 second=287 amount=-2 +kerning first=45 second=289 amount=-2 +kerning first=45 second=291 amount=-2 +kerning first=45 second=296 amount=-4 +kerning first=45 second=298 amount=-4 +kerning first=45 second=302 amount=-4 +kerning first=45 second=303 amount=-1 +kerning first=45 second=305 amount=-1 +kerning first=45 second=307 amount=-1 +kerning first=45 second=310 amount=-4 +kerning first=45 second=311 amount=-1 +kerning first=45 second=313 amount=-4 +kerning first=45 second=314 amount=-1 +kerning first=45 second=315 amount=-4 +kerning first=45 second=316 amount=-1 +kerning first=45 second=317 amount=-4 +kerning first=45 second=318 amount=-1 +kerning first=45 second=323 amount=-4 +kerning first=45 second=324 amount=-1 +kerning first=45 second=325 amount=-4 +kerning first=45 second=326 amount=-1 +kerning first=45 second=327 amount=-4 +kerning first=45 second=328 amount=-1 +kerning first=45 second=330 amount=-4 +kerning first=45 second=331 amount=-1 +kerning first=45 second=344 amount=-4 +kerning first=45 second=345 amount=-1 +kerning first=45 second=346 amount=-2 +kerning first=45 second=347 amount=-1 +kerning first=45 second=350 amount=-2 +kerning first=45 second=351 amount=-1 +kerning first=45 second=352 amount=-2 +kerning first=45 second=353 amount=-1 +kerning first=45 second=354 amount=-3 +kerning first=45 second=355 amount=-1 +kerning first=45 second=356 amount=-3 +kerning first=45 second=357 amount=-1 +kerning first=45 second=361 amount=-1 +kerning first=45 second=362 amount=-3 +kerning first=45 second=363 amount=-1 +kerning first=45 second=364 amount=-3 +kerning first=45 second=365 amount=-1 +kerning first=45 second=366 amount=-3 +kerning first=45 second=367 amount=-1 +kerning first=45 second=368 amount=-3 +kerning first=45 second=369 amount=-1 +kerning first=45 second=370 amount=-3 +kerning first=45 second=371 amount=-1 +kerning first=45 second=374 amount=-3 +kerning first=45 second=375 amount=-2 +kerning first=45 second=377 amount=-3 +kerning first=45 second=378 amount=-4 +kerning first=45 second=379 amount=-3 +kerning first=45 second=380 amount=-4 +kerning first=45 second=381 amount=-3 +kerning first=45 second=382 amount=-4 +kerning first=212 second=8221 amount=-1 +kerning first=212 second=8220 amount=-1 +kerning first=212 second=8217 amount=-1 +kerning first=212 second=382 amount=-1 +kerning first=212 second=381 amount=-1 +kerning first=212 second=380 amount=-1 +kerning first=212 second=379 amount=-1 +kerning first=212 second=378 amount=-1 +kerning first=212 second=377 amount=-1 +kerning first=212 second=374 amount=-1 +kerning first=212 second=370 amount=-1 +kerning first=212 second=368 amount=-1 +kerning first=212 second=366 amount=-1 +kerning first=212 second=364 amount=-1 +kerning first=212 second=362 amount=-1 +kerning first=212 second=356 amount=-1 +kerning first=212 second=354 amount=-1 +kerning first=212 second=352 amount=-1 +kerning first=212 second=350 amount=-1 +kerning first=212 second=346 amount=-1 +kerning first=212 second=344 amount=-1 +kerning first=212 second=330 amount=-1 +kerning first=212 second=327 amount=-1 +kerning first=212 second=325 amount=-1 +kerning first=212 second=323 amount=-1 +kerning first=212 second=317 amount=-1 +kerning first=212 second=315 amount=-1 +kerning first=212 second=313 amount=-1 +kerning first=212 second=310 amount=-1 +kerning first=212 second=304 amount=-1 +kerning first=46 second=45 amount=-2 +kerning first=46 second=171 amount=-2 +kerning first=46 second=8217 amount=-4 +kerning first=46 second=8220 amount=-4 +kerning first=46 second=8221 amount=-4 +kerning first=46 second=8249 amount=-2 +kerning first=65 second=45 amount=-3 +kerning first=65 second=67 amount=-2 +kerning first=65 second=71 amount=-2 +kerning first=65 second=79 amount=-2 +kerning first=65 second=81 amount=-2 +kerning first=65 second=83 amount=-2 +kerning first=65 second=84 amount=-5 +kerning first=65 second=85 amount=-2 +kerning first=65 second=86 amount=-5 +kerning first=65 second=87 amount=-5 +kerning first=65 second=89 amount=-5 +kerning first=65 second=98 amount=-1 +kerning first=65 second=99 amount=-1 +kerning first=65 second=100 amount=-1 +kerning first=65 second=101 amount=-1 +kerning first=212 second=302 amount=-1 +kerning first=65 second=103 amount=-2 +kerning first=65 second=104 amount=-1 +kerning first=212 second=298 amount=-1 +kerning first=65 second=107 amount=-1 +kerning first=65 second=108 amount=-1 +kerning first=65 second=111 amount=-1 +kerning first=65 second=112 amount=-2 +kerning first=65 second=113 amount=-1 +kerning first=65 second=115 amount=-2 +kerning first=65 second=116 amount=-1 +kerning first=65 second=117 amount=-2 +kerning first=65 second=118 amount=-2 +kerning first=65 second=119 amount=-2 +kerning first=65 second=121 amount=-2 +kerning first=65 second=171 amount=-3 +kerning first=65 second=199 amount=-2 +kerning first=65 second=210 amount=-2 +kerning first=65 second=211 amount=-2 +kerning first=65 second=212 amount=-2 +kerning first=65 second=213 amount=-2 +kerning first=65 second=214 amount=-2 +kerning first=65 second=216 amount=-2 +kerning first=65 second=217 amount=-2 +kerning first=65 second=218 amount=-2 +kerning first=65 second=219 amount=-2 +kerning first=65 second=220 amount=-2 +kerning first=65 second=221 amount=-5 +kerning first=65 second=231 amount=-1 +kerning first=65 second=232 amount=-1 +kerning first=65 second=233 amount=-1 +kerning first=65 second=234 amount=-1 +kerning first=65 second=235 amount=-1 +kerning first=212 second=296 amount=-1 +kerning first=65 second=240 amount=-1 +kerning first=65 second=242 amount=-1 +kerning first=65 second=243 amount=-1 +kerning first=65 second=244 amount=-1 +kerning first=65 second=245 amount=-1 +kerning first=65 second=246 amount=-1 +kerning first=65 second=248 amount=-1 +kerning first=65 second=249 amount=-2 +kerning first=65 second=250 amount=-2 +kerning first=65 second=251 amount=-2 +kerning first=65 second=252 amount=-2 +kerning first=65 second=253 amount=-2 +kerning first=65 second=254 amount=-1 +kerning first=65 second=255 amount=-2 +kerning first=65 second=262 amount=-2 +kerning first=65 second=263 amount=-1 +kerning first=65 second=264 amount=-2 +kerning first=65 second=266 amount=-2 +kerning first=65 second=267 amount=-1 +kerning first=65 second=268 amount=-2 +kerning first=65 second=269 amount=-1 +kerning first=65 second=275 amount=-1 +kerning first=65 second=277 amount=-1 +kerning first=65 second=279 amount=-1 +kerning first=65 second=281 amount=-1 +kerning first=65 second=283 amount=-1 +kerning first=65 second=284 amount=-2 +kerning first=65 second=286 amount=-2 +kerning first=65 second=287 amount=-2 +kerning first=65 second=288 amount=-2 +kerning first=65 second=289 amount=-2 +kerning first=65 second=290 amount=-2 +kerning first=65 second=291 amount=-2 +kerning first=212 second=291 amount=-1 +kerning first=212 second=289 amount=-1 +kerning first=65 second=311 amount=-1 +kerning first=65 second=314 amount=-1 +kerning first=65 second=316 amount=-1 +kerning first=65 second=318 amount=-1 +kerning first=65 second=332 amount=-2 +kerning first=65 second=333 amount=-1 +kerning first=65 second=334 amount=-2 +kerning first=65 second=335 amount=-1 +kerning first=65 second=336 amount=-2 +kerning first=65 second=337 amount=-1 +kerning first=65 second=338 amount=-2 +kerning first=65 second=339 amount=-1 +kerning first=65 second=346 amount=-2 +kerning first=65 second=347 amount=-2 +kerning first=65 second=350 amount=-2 +kerning first=65 second=351 amount=-2 +kerning first=65 second=352 amount=-2 +kerning first=65 second=353 amount=-2 +kerning first=65 second=354 amount=-5 +kerning first=65 second=355 amount=-1 +kerning first=65 second=356 amount=-5 +kerning first=65 second=361 amount=-2 +kerning first=65 second=362 amount=-2 +kerning first=65 second=363 amount=-2 +kerning first=65 second=364 amount=-2 +kerning first=65 second=365 amount=-2 +kerning first=65 second=366 amount=-2 +kerning first=65 second=367 amount=-2 +kerning first=65 second=368 amount=-2 +kerning first=65 second=369 amount=-2 +kerning first=65 second=370 amount=-2 +kerning first=65 second=374 amount=-5 +kerning first=65 second=375 amount=-2 +kerning first=212 second=287 amount=-1 +kerning first=212 second=282 amount=-1 +kerning first=212 second=280 amount=-1 +kerning first=212 second=278 amount=-1 +kerning first=212 second=274 amount=-1 +kerning first=212 second=270 amount=-1 +kerning first=212 second=261 amount=-1 +kerning first=212 second=260 amount=-3 +kerning first=212 second=259 amount=-1 +kerning first=212 second=257 amount=-1 +kerning first=212 second=256 amount=-3 +kerning first=212 second=230 amount=-1 +kerning first=212 second=229 amount=-1 +kerning first=212 second=228 amount=-1 +kerning first=212 second=227 amount=-1 +kerning first=65 second=8217 amount=-4 +kerning first=65 second=8220 amount=-4 +kerning first=65 second=8221 amount=-4 +kerning first=65 second=8249 amount=-3 +kerning first=212 second=226 amount=-1 +kerning first=212 second=225 amount=-1 +kerning first=212 second=224 amount=-1 +kerning first=212 second=221 amount=-1 +kerning first=212 second=220 amount=-1 +kerning first=66 second=44 amount=-3 +kerning first=66 second=45 amount=-2 +kerning first=66 second=46 amount=-3 +kerning first=66 second=65 amount=-4 +kerning first=66 second=66 amount=-3 +kerning first=66 second=67 amount=-2 +kerning first=66 second=68 amount=-3 +kerning first=66 second=69 amount=-3 +kerning first=66 second=70 amount=-3 +kerning first=66 second=71 amount=-2 +kerning first=66 second=72 amount=-3 +kerning first=66 second=73 amount=-3 +kerning first=66 second=74 amount=-3 +kerning first=66 second=75 amount=-3 +kerning first=66 second=76 amount=-3 +kerning first=66 second=77 amount=-3 +kerning first=66 second=78 amount=-3 +kerning first=66 second=79 amount=-2 +kerning first=66 second=80 amount=-3 +kerning first=66 second=81 amount=-2 +kerning first=66 second=82 amount=-3 +kerning first=66 second=83 amount=-3 +kerning first=66 second=84 amount=-2 +kerning first=66 second=85 amount=-2 +kerning first=66 second=86 amount=-2 +kerning first=66 second=87 amount=-2 +kerning first=66 second=89 amount=-2 +kerning first=66 second=90 amount=-3 +kerning first=66 second=97 amount=-2 +kerning first=66 second=98 amount=-2 +kerning first=212 second=219 amount=-1 +kerning first=212 second=218 amount=-1 +kerning first=212 second=217 amount=-1 +kerning first=66 second=102 amount=-2 +kerning first=66 second=103 amount=-3 +kerning first=66 second=104 amount=-2 +kerning first=66 second=105 amount=-2 +kerning first=66 second=106 amount=-2 +kerning first=66 second=107 amount=-2 +kerning first=66 second=108 amount=-2 +kerning first=66 second=109 amount=-2 +kerning first=66 second=110 amount=-2 +kerning first=212 second=209 amount=-1 +kerning first=66 second=112 amount=-3 +kerning first=212 second=207 amount=-1 +kerning first=66 second=114 amount=-2 +kerning first=66 second=115 amount=-2 +kerning first=66 second=116 amount=-1 +kerning first=66 second=117 amount=-2 +kerning first=66 second=118 amount=-2 +kerning first=66 second=119 amount=-2 +kerning first=66 second=120 amount=-2 +kerning first=66 second=121 amount=-2 +kerning first=66 second=122 amount=-3 +kerning first=66 second=171 amount=-2 +kerning first=66 second=187 amount=-1 +kerning first=66 second=192 amount=-4 +kerning first=66 second=193 amount=-4 +kerning first=66 second=194 amount=-4 +kerning first=66 second=196 amount=-4 +kerning first=66 second=197 amount=-4 +kerning first=66 second=198 amount=-4 +kerning first=66 second=199 amount=-2 +kerning first=66 second=200 amount=-3 +kerning first=66 second=201 amount=-3 +kerning first=66 second=202 amount=-3 +kerning first=66 second=203 amount=-3 +kerning first=66 second=204 amount=-3 +kerning first=66 second=205 amount=-3 +kerning first=66 second=206 amount=-3 +kerning first=66 second=207 amount=-3 +kerning first=66 second=209 amount=-3 +kerning first=66 second=210 amount=-2 +kerning first=66 second=211 amount=-2 +kerning first=66 second=212 amount=-2 +kerning first=66 second=213 amount=-2 +kerning first=66 second=214 amount=-2 +kerning first=66 second=216 amount=-2 +kerning first=66 second=217 amount=-2 +kerning first=66 second=218 amount=-2 +kerning first=66 second=219 amount=-2 +kerning first=66 second=220 amount=-2 +kerning first=66 second=221 amount=-2 +kerning first=66 second=223 amount=-2 +kerning first=66 second=224 amount=-2 +kerning first=66 second=225 amount=-2 +kerning first=66 second=226 amount=-2 +kerning first=66 second=227 amount=-2 +kerning first=66 second=228 amount=-2 +kerning first=66 second=229 amount=-2 +kerning first=66 second=230 amount=-2 +kerning first=212 second=206 amount=-1 +kerning first=212 second=205 amount=-1 +kerning first=212 second=204 amount=-1 +kerning first=212 second=203 amount=-1 +kerning first=212 second=202 amount=-1 +kerning first=66 second=237 amount=-2 +kerning first=212 second=201 amount=-1 +kerning first=66 second=241 amount=-2 +kerning first=212 second=200 amount=-1 +kerning first=212 second=198 amount=-3 +kerning first=212 second=197 amount=-3 +kerning first=212 second=196 amount=-3 +kerning first=212 second=194 amount=-3 +kerning first=212 second=193 amount=-3 +kerning first=66 second=249 amount=-2 +kerning first=66 second=250 amount=-2 +kerning first=66 second=251 amount=-2 +kerning first=66 second=252 amount=-2 +kerning first=66 second=253 amount=-2 +kerning first=66 second=254 amount=-2 +kerning first=66 second=255 amount=-2 +kerning first=66 second=256 amount=-4 +kerning first=66 second=257 amount=-2 +kerning first=66 second=259 amount=-2 +kerning first=66 second=260 amount=-4 +kerning first=66 second=261 amount=-2 +kerning first=66 second=262 amount=-2 +kerning first=212 second=192 amount=-3 +kerning first=66 second=264 amount=-2 +kerning first=66 second=266 amount=-2 +kerning first=212 second=171 amount=-1 +kerning first=66 second=268 amount=-2 +kerning first=212 second=122 amount=-1 +kerning first=66 second=270 amount=-3 +kerning first=66 second=274 amount=-3 +kerning first=212 second=120 amount=-1 +kerning first=212 second=106 amount=-1 +kerning first=66 second=278 amount=-3 +kerning first=212 second=103 amount=-1 +kerning first=66 second=280 amount=-3 +kerning first=212 second=97 amount=-1 +kerning first=66 second=282 amount=-3 +kerning first=212 second=90 amount=-1 +kerning first=66 second=284 amount=-2 +kerning first=66 second=286 amount=-2 +kerning first=66 second=287 amount=-3 +kerning first=66 second=288 amount=-2 +kerning first=66 second=289 amount=-3 +kerning first=66 second=290 amount=-2 +kerning first=66 second=291 amount=-3 +kerning first=66 second=296 amount=-3 +kerning first=66 second=298 amount=-3 +kerning first=66 second=302 amount=-3 +kerning first=66 second=303 amount=-2 +kerning first=66 second=304 amount=-3 +kerning first=66 second=305 amount=-2 +kerning first=66 second=310 amount=-3 +kerning first=66 second=311 amount=-2 +kerning first=66 second=313 amount=-3 +kerning first=66 second=314 amount=-2 +kerning first=66 second=315 amount=-3 +kerning first=66 second=316 amount=-2 +kerning first=66 second=317 amount=-3 +kerning first=66 second=318 amount=-2 +kerning first=66 second=323 amount=-3 +kerning first=66 second=324 amount=-2 +kerning first=66 second=325 amount=-3 +kerning first=66 second=326 amount=-2 +kerning first=66 second=327 amount=-3 +kerning first=66 second=328 amount=-2 +kerning first=66 second=330 amount=-3 +kerning first=66 second=331 amount=-2 +kerning first=66 second=332 amount=-2 +kerning first=212 second=89 amount=-1 +kerning first=66 second=334 amount=-2 +kerning first=212 second=87 amount=-1 +kerning first=66 second=336 amount=-2 +kerning first=212 second=86 amount=-1 +kerning first=66 second=338 amount=-2 +kerning first=212 second=85 amount=-1 +kerning first=66 second=344 amount=-3 +kerning first=66 second=345 amount=-2 +kerning first=66 second=346 amount=-3 +kerning first=66 second=347 amount=-2 +kerning first=66 second=350 amount=-3 +kerning first=66 second=351 amount=-2 +kerning first=66 second=352 amount=-3 +kerning first=66 second=353 amount=-2 +kerning first=66 second=354 amount=-2 +kerning first=66 second=355 amount=-1 +kerning first=66 second=356 amount=-2 +kerning first=66 second=361 amount=-2 +kerning first=66 second=362 amount=-2 +kerning first=66 second=363 amount=-2 +kerning first=66 second=364 amount=-2 +kerning first=66 second=365 amount=-2 +kerning first=66 second=366 amount=-2 +kerning first=66 second=367 amount=-2 +kerning first=66 second=368 amount=-2 +kerning first=66 second=369 amount=-2 +kerning first=66 second=370 amount=-2 +kerning first=66 second=374 amount=-2 +kerning first=66 second=375 amount=-2 +kerning first=66 second=377 amount=-3 +kerning first=66 second=378 amount=-3 +kerning first=66 second=379 amount=-3 +kerning first=66 second=380 amount=-3 +kerning first=66 second=381 amount=-3 +kerning first=66 second=382 amount=-3 +kerning first=212 second=84 amount=-1 +kerning first=212 second=83 amount=-1 +kerning first=212 second=82 amount=-1 +kerning first=212 second=80 amount=-1 +kerning first=212 second=78 amount=-1 +kerning first=212 second=77 amount=-1 +kerning first=212 second=76 amount=-1 +kerning first=212 second=75 amount=-1 +kerning first=212 second=74 amount=-1 +kerning first=212 second=73 amount=-1 +kerning first=212 second=72 amount=-1 +kerning first=212 second=70 amount=-1 +kerning first=212 second=69 amount=-1 +kerning first=212 second=68 amount=-1 +kerning first=212 second=66 amount=-1 +kerning first=212 second=65 amount=-3 +kerning first=212 second=46 amount=-2 +kerning first=212 second=45 amount=-1 +kerning first=212 second=44 amount=-2 +kerning first=211 second=8249 amount=-1 +kerning first=211 second=8221 amount=-1 +kerning first=211 second=8220 amount=-1 +kerning first=211 second=8217 amount=-1 +kerning first=211 second=382 amount=-1 +kerning first=211 second=381 amount=-1 +kerning first=211 second=380 amount=-1 +kerning first=66 second=8217 amount=-3 +kerning first=66 second=8220 amount=-3 +kerning first=66 second=8221 amount=-3 +kerning first=66 second=8249 amount=-2 +kerning first=66 second=8250 amount=-1 +kerning first=211 second=379 amount=-1 +kerning first=211 second=378 amount=-1 +kerning first=211 second=377 amount=-1 +kerning first=211 second=374 amount=-1 +kerning first=211 second=370 amount=-1 +kerning first=67 second=44 amount=-1 +kerning first=67 second=45 amount=-3 +kerning first=67 second=46 amount=-1 +kerning first=67 second=65 amount=-2 +kerning first=67 second=66 amount=-2 +kerning first=67 second=67 amount=-2 +kerning first=67 second=68 amount=-2 +kerning first=67 second=69 amount=-2 +kerning first=67 second=70 amount=-2 +kerning first=67 second=71 amount=-2 +kerning first=67 second=72 amount=-2 +kerning first=67 second=73 amount=-2 +kerning first=67 second=74 amount=-1 +kerning first=67 second=75 amount=-2 +kerning first=67 second=76 amount=-2 +kerning first=67 second=77 amount=-2 +kerning first=67 second=78 amount=-2 +kerning first=67 second=79 amount=-2 +kerning first=67 second=80 amount=-2 +kerning first=67 second=81 amount=-2 +kerning first=67 second=82 amount=-2 +kerning first=67 second=83 amount=-2 +kerning first=67 second=84 amount=-1 +kerning first=67 second=85 amount=-1 +kerning first=67 second=86 amount=-1 +kerning first=67 second=87 amount=-1 +kerning first=67 second=89 amount=-1 +kerning first=67 second=90 amount=-1 +kerning first=67 second=97 amount=-1 +kerning first=67 second=98 amount=-1 +kerning first=67 second=99 amount=-1 +kerning first=67 second=100 amount=-1 +kerning first=67 second=101 amount=-1 +kerning first=67 second=102 amount=-1 +kerning first=67 second=103 amount=-2 +kerning first=67 second=104 amount=-1 +kerning first=67 second=105 amount=-1 +kerning first=67 second=106 amount=-1 +kerning first=67 second=107 amount=-1 +kerning first=67 second=108 amount=-1 +kerning first=67 second=109 amount=-1 +kerning first=67 second=110 amount=-1 +kerning first=67 second=111 amount=-1 +kerning first=67 second=112 amount=-2 +kerning first=67 second=113 amount=-1 +kerning first=67 second=114 amount=-1 +kerning first=67 second=115 amount=-1 +kerning first=67 second=117 amount=-1 +kerning first=67 second=118 amount=-1 +kerning first=67 second=119 amount=-1 +kerning first=211 second=368 amount=-1 +kerning first=67 second=122 amount=-2 +kerning first=67 second=171 amount=-3 +kerning first=67 second=192 amount=-2 +kerning first=67 second=193 amount=-2 +kerning first=67 second=194 amount=-2 +kerning first=67 second=196 amount=-2 +kerning first=67 second=197 amount=-2 +kerning first=67 second=198 amount=-2 +kerning first=67 second=199 amount=-2 +kerning first=67 second=200 amount=-2 +kerning first=67 second=201 amount=-2 +kerning first=67 second=202 amount=-2 +kerning first=67 second=203 amount=-2 +kerning first=67 second=204 amount=-2 +kerning first=67 second=205 amount=-2 +kerning first=67 second=206 amount=-2 +kerning first=67 second=207 amount=-2 +kerning first=67 second=209 amount=-2 +kerning first=67 second=210 amount=-2 +kerning first=67 second=211 amount=-2 +kerning first=67 second=212 amount=-2 +kerning first=67 second=213 amount=-2 +kerning first=67 second=214 amount=-2 +kerning first=67 second=216 amount=-2 +kerning first=67 second=217 amount=-1 +kerning first=67 second=218 amount=-1 +kerning first=67 second=219 amount=-1 +kerning first=67 second=220 amount=-1 +kerning first=67 second=221 amount=-1 +kerning first=67 second=223 amount=-1 +kerning first=67 second=224 amount=-1 +kerning first=67 second=225 amount=-1 +kerning first=67 second=226 amount=-1 +kerning first=67 second=227 amount=-1 +kerning first=67 second=228 amount=-1 +kerning first=67 second=229 amount=-1 +kerning first=67 second=230 amount=-1 +kerning first=67 second=231 amount=-1 +kerning first=67 second=232 amount=-1 +kerning first=67 second=233 amount=-1 +kerning first=67 second=234 amount=-1 +kerning first=67 second=235 amount=-1 +kerning first=67 second=237 amount=-1 +kerning first=67 second=240 amount=-1 +kerning first=67 second=241 amount=-1 +kerning first=67 second=242 amount=-1 +kerning first=67 second=243 amount=-1 +kerning first=67 second=244 amount=-1 +kerning first=67 second=245 amount=-1 +kerning first=67 second=246 amount=-1 +kerning first=67 second=248 amount=-1 +kerning first=67 second=249 amount=-1 +kerning first=67 second=250 amount=-1 +kerning first=67 second=251 amount=-1 +kerning first=67 second=252 amount=-1 +kerning first=211 second=366 amount=-1 +kerning first=67 second=254 amount=-1 +kerning first=211 second=364 amount=-1 +kerning first=67 second=256 amount=-2 +kerning first=67 second=257 amount=-1 +kerning first=67 second=259 amount=-1 +kerning first=67 second=260 amount=-2 +kerning first=67 second=261 amount=-1 +kerning first=67 second=262 amount=-2 +kerning first=67 second=263 amount=-1 +kerning first=67 second=264 amount=-2 +kerning first=67 second=266 amount=-2 +kerning first=67 second=267 amount=-1 +kerning first=67 second=268 amount=-2 +kerning first=67 second=269 amount=-1 +kerning first=67 second=270 amount=-2 +kerning first=67 second=274 amount=-2 +kerning first=67 second=275 amount=-1 +kerning first=67 second=277 amount=-1 +kerning first=67 second=278 amount=-2 +kerning first=67 second=279 amount=-1 +kerning first=67 second=280 amount=-2 +kerning first=67 second=281 amount=-1 +kerning first=67 second=282 amount=-2 +kerning first=67 second=283 amount=-1 +kerning first=67 second=284 amount=-2 +kerning first=67 second=286 amount=-2 +kerning first=67 second=287 amount=-2 +kerning first=67 second=288 amount=-2 +kerning first=67 second=289 amount=-2 +kerning first=67 second=290 amount=-2 +kerning first=67 second=291 amount=-2 +kerning first=67 second=296 amount=-2 +kerning first=67 second=298 amount=-2 +kerning first=67 second=302 amount=-2 +kerning first=67 second=303 amount=-1 +kerning first=67 second=304 amount=-2 +kerning first=67 second=305 amount=-1 +kerning first=67 second=310 amount=-2 +kerning first=67 second=311 amount=-1 +kerning first=67 second=313 amount=-2 +kerning first=67 second=314 amount=-1 +kerning first=67 second=315 amount=-2 +kerning first=67 second=316 amount=-1 +kerning first=67 second=317 amount=-2 +kerning first=67 second=318 amount=-1 +kerning first=67 second=323 amount=-2 +kerning first=67 second=324 amount=-1 +kerning first=67 second=325 amount=-2 +kerning first=67 second=326 amount=-1 +kerning first=67 second=327 amount=-2 +kerning first=67 second=328 amount=-1 +kerning first=67 second=330 amount=-2 +kerning first=67 second=331 amount=-1 +kerning first=67 second=332 amount=-2 +kerning first=67 second=333 amount=-1 +kerning first=67 second=334 amount=-2 +kerning first=67 second=335 amount=-1 +kerning first=67 second=336 amount=-2 +kerning first=67 second=337 amount=-1 +kerning first=67 second=338 amount=-2 +kerning first=67 second=339 amount=-1 +kerning first=67 second=344 amount=-2 +kerning first=67 second=345 amount=-1 +kerning first=67 second=346 amount=-2 +kerning first=67 second=347 amount=-1 +kerning first=67 second=350 amount=-2 +kerning first=67 second=351 amount=-1 +kerning first=67 second=352 amount=-2 +kerning first=67 second=353 amount=-1 +kerning first=67 second=354 amount=-1 +kerning first=67 second=356 amount=-1 +kerning first=67 second=361 amount=-1 +kerning first=67 second=362 amount=-1 +kerning first=67 second=363 amount=-1 +kerning first=67 second=364 amount=-1 +kerning first=67 second=365 amount=-1 +kerning first=67 second=366 amount=-1 +kerning first=67 second=367 amount=-1 +kerning first=67 second=368 amount=-1 +kerning first=67 second=369 amount=-1 +kerning first=67 second=370 amount=-1 +kerning first=67 second=374 amount=-1 +kerning first=211 second=362 amount=-1 +kerning first=67 second=377 amount=-1 +kerning first=67 second=378 amount=-2 +kerning first=67 second=379 amount=-1 +kerning first=67 second=380 amount=-2 +kerning first=67 second=381 amount=-1 +kerning first=67 second=382 amount=-2 +kerning first=211 second=356 amount=-1 +kerning first=211 second=354 amount=-1 +kerning first=211 second=352 amount=-1 +kerning first=211 second=350 amount=-1 +kerning first=211 second=346 amount=-1 +kerning first=211 second=344 amount=-1 +kerning first=211 second=330 amount=-1 +kerning first=211 second=327 amount=-1 +kerning first=211 second=325 amount=-1 +kerning first=211 second=323 amount=-1 +kerning first=211 second=317 amount=-1 +kerning first=211 second=315 amount=-1 +kerning first=211 second=313 amount=-1 +kerning first=211 second=310 amount=-1 +kerning first=211 second=304 amount=-1 +kerning first=211 second=302 amount=-1 +kerning first=211 second=298 amount=-1 +kerning first=211 second=296 amount=-1 +kerning first=211 second=291 amount=-1 +kerning first=211 second=289 amount=-1 +kerning first=211 second=287 amount=-1 +kerning first=211 second=282 amount=-1 +kerning first=211 second=280 amount=-1 +kerning first=211 second=278 amount=-1 +kerning first=67 second=8249 amount=-3 +kerning first=211 second=274 amount=-1 +kerning first=211 second=270 amount=-1 +kerning first=211 second=261 amount=-1 +kerning first=211 second=260 amount=-3 +kerning first=211 second=259 amount=-1 +kerning first=68 second=44 amount=-2 +kerning first=68 second=45 amount=-1 +kerning first=68 second=46 amount=-2 +kerning first=68 second=65 amount=-3 +kerning first=68 second=66 amount=-1 +kerning first=68 second=68 amount=-1 +kerning first=68 second=69 amount=-1 +kerning first=68 second=70 amount=-1 +kerning first=68 second=72 amount=-1 +kerning first=68 second=73 amount=-1 +kerning first=68 second=74 amount=-1 +kerning first=68 second=75 amount=-1 +kerning first=68 second=76 amount=-1 +kerning first=68 second=77 amount=-1 +kerning first=68 second=78 amount=-1 +kerning first=68 second=80 amount=-1 +kerning first=68 second=82 amount=-1 +kerning first=68 second=83 amount=-1 +kerning first=68 second=84 amount=-1 +kerning first=68 second=85 amount=-1 +kerning first=68 second=86 amount=-1 +kerning first=68 second=87 amount=-1 +kerning first=68 second=89 amount=-1 +kerning first=68 second=90 amount=-1 +kerning first=68 second=97 amount=-1 +kerning first=68 second=103 amount=-1 +kerning first=211 second=257 amount=-1 +kerning first=68 second=106 amount=-1 +kerning first=211 second=256 amount=-3 +kerning first=68 second=120 amount=-1 +kerning first=68 second=122 amount=-1 +kerning first=68 second=171 amount=-1 +kerning first=68 second=192 amount=-3 +kerning first=68 second=193 amount=-3 +kerning first=68 second=194 amount=-3 +kerning first=68 second=196 amount=-3 +kerning first=68 second=197 amount=-3 +kerning first=68 second=198 amount=-3 +kerning first=68 second=200 amount=-1 +kerning first=68 second=201 amount=-1 +kerning first=68 second=202 amount=-1 +kerning first=68 second=203 amount=-1 +kerning first=68 second=204 amount=-1 +kerning first=68 second=205 amount=-1 +kerning first=68 second=206 amount=-1 +kerning first=68 second=207 amount=-1 +kerning first=68 second=209 amount=-1 +kerning first=68 second=217 amount=-1 +kerning first=68 second=218 amount=-1 +kerning first=68 second=219 amount=-1 +kerning first=68 second=220 amount=-1 +kerning first=68 second=221 amount=-1 +kerning first=68 second=224 amount=-1 +kerning first=68 second=225 amount=-1 +kerning first=68 second=226 amount=-1 +kerning first=68 second=227 amount=-1 +kerning first=68 second=228 amount=-1 +kerning first=68 second=229 amount=-1 +kerning first=68 second=230 amount=-1 +kerning first=211 second=230 amount=-1 +kerning first=68 second=256 amount=-3 +kerning first=68 second=257 amount=-1 +kerning first=68 second=259 amount=-1 +kerning first=68 second=260 amount=-3 +kerning first=68 second=261 amount=-1 +kerning first=68 second=270 amount=-1 +kerning first=68 second=274 amount=-1 +kerning first=68 second=278 amount=-1 +kerning first=68 second=280 amount=-1 +kerning first=68 second=282 amount=-1 +kerning first=68 second=287 amount=-1 +kerning first=68 second=289 amount=-1 +kerning first=68 second=291 amount=-1 +kerning first=68 second=296 amount=-1 +kerning first=68 second=298 amount=-1 +kerning first=68 second=302 amount=-1 +kerning first=211 second=229 amount=-1 +kerning first=68 second=304 amount=-1 +kerning first=211 second=228 amount=-1 +kerning first=68 second=310 amount=-1 +kerning first=68 second=313 amount=-1 +kerning first=68 second=315 amount=-1 +kerning first=68 second=317 amount=-1 +kerning first=68 second=323 amount=-1 +kerning first=68 second=325 amount=-1 +kerning first=68 second=327 amount=-1 +kerning first=68 second=330 amount=-1 +kerning first=68 second=344 amount=-1 +kerning first=68 second=346 amount=-1 +kerning first=68 second=350 amount=-1 +kerning first=68 second=352 amount=-1 +kerning first=68 second=354 amount=-1 +kerning first=68 second=356 amount=-1 +kerning first=68 second=362 amount=-1 +kerning first=68 second=364 amount=-1 +kerning first=68 second=366 amount=-1 +kerning first=68 second=368 amount=-1 +kerning first=68 second=370 amount=-1 +kerning first=68 second=374 amount=-1 +kerning first=68 second=377 amount=-1 +kerning first=68 second=378 amount=-1 +kerning first=68 second=379 amount=-1 +kerning first=68 second=380 amount=-1 +kerning first=68 second=381 amount=-1 +kerning first=68 second=382 amount=-1 +kerning first=211 second=227 amount=-1 +kerning first=211 second=226 amount=-1 +kerning first=211 second=225 amount=-1 +kerning first=211 second=224 amount=-1 +kerning first=211 second=221 amount=-1 +kerning first=211 second=220 amount=-1 +kerning first=211 second=219 amount=-1 +kerning first=211 second=218 amount=-1 +kerning first=211 second=217 amount=-1 +kerning first=211 second=209 amount=-1 +kerning first=211 second=207 amount=-1 +kerning first=211 second=206 amount=-1 +kerning first=211 second=205 amount=-1 +kerning first=211 second=204 amount=-1 +kerning first=211 second=203 amount=-1 +kerning first=211 second=202 amount=-1 +kerning first=68 second=8217 amount=-1 +kerning first=68 second=8220 amount=-1 +kerning first=68 second=8221 amount=-1 +kerning first=68 second=8249 amount=-1 +kerning first=69 second=44 amount=-1 +kerning first=69 second=45 amount=-1 +kerning first=69 second=46 amount=-1 +kerning first=69 second=65 amount=-1 +kerning first=69 second=66 amount=-1 +kerning first=69 second=67 amount=-1 +kerning first=69 second=68 amount=-1 +kerning first=69 second=69 amount=-1 +kerning first=69 second=70 amount=-1 +kerning first=69 second=71 amount=-1 +kerning first=69 second=72 amount=-1 +kerning first=69 second=73 amount=-1 +kerning first=69 second=74 amount=-1 +kerning first=69 second=75 amount=-1 +kerning first=69 second=76 amount=-1 +kerning first=69 second=77 amount=-1 +kerning first=69 second=78 amount=-1 +kerning first=69 second=79 amount=-1 +kerning first=69 second=80 amount=-1 +kerning first=69 second=81 amount=-1 +kerning first=69 second=82 amount=-1 +kerning first=69 second=83 amount=-1 +kerning first=69 second=84 amount=-1 +kerning first=69 second=85 amount=-1 +kerning first=69 second=86 amount=-1 +kerning first=69 second=87 amount=-1 +kerning first=69 second=89 amount=-1 +kerning first=69 second=90 amount=-1 +kerning first=69 second=97 amount=-1 +kerning first=69 second=98 amount=-1 +kerning first=69 second=102 amount=-1 +kerning first=69 second=103 amount=-2 +kerning first=69 second=104 amount=-1 +kerning first=211 second=201 amount=-1 +kerning first=69 second=107 amount=-1 +kerning first=69 second=108 amount=-1 +kerning first=69 second=109 amount=-1 +kerning first=69 second=110 amount=-1 +kerning first=69 second=112 amount=-1 +kerning first=69 second=115 amount=-1 +kerning first=69 second=117 amount=-1 +kerning first=69 second=118 amount=-1 +kerning first=69 second=119 amount=-1 +kerning first=69 second=120 amount=-1 +kerning first=69 second=122 amount=-1 +kerning first=69 second=171 amount=-1 +kerning first=69 second=192 amount=-1 +kerning first=69 second=193 amount=-1 +kerning first=69 second=194 amount=-1 +kerning first=69 second=196 amount=-1 +kerning first=69 second=197 amount=-1 +kerning first=69 second=198 amount=-1 +kerning first=69 second=199 amount=-1 +kerning first=69 second=200 amount=-1 +kerning first=69 second=201 amount=-1 +kerning first=69 second=202 amount=-1 +kerning first=69 second=203 amount=-1 +kerning first=69 second=204 amount=-1 +kerning first=69 second=205 amount=-1 +kerning first=69 second=206 amount=-1 +kerning first=69 second=207 amount=-1 +kerning first=69 second=209 amount=-1 +kerning first=69 second=210 amount=-1 +kerning first=69 second=211 amount=-1 +kerning first=69 second=212 amount=-1 +kerning first=69 second=213 amount=-1 +kerning first=69 second=214 amount=-1 +kerning first=69 second=216 amount=-1 +kerning first=69 second=217 amount=-1 +kerning first=69 second=218 amount=-1 +kerning first=69 second=219 amount=-1 +kerning first=69 second=220 amount=-1 +kerning first=69 second=221 amount=-1 +kerning first=69 second=223 amount=-1 +kerning first=69 second=224 amount=-1 +kerning first=69 second=225 amount=-1 +kerning first=69 second=226 amount=-1 +kerning first=69 second=227 amount=-1 +kerning first=69 second=228 amount=-1 +kerning first=69 second=229 amount=-1 +kerning first=69 second=230 amount=-1 +kerning first=211 second=200 amount=-1 +kerning first=69 second=241 amount=-1 +kerning first=69 second=249 amount=-1 +kerning first=69 second=250 amount=-1 +kerning first=69 second=251 amount=-1 +kerning first=69 second=252 amount=-1 +kerning first=69 second=254 amount=-1 +kerning first=69 second=256 amount=-1 +kerning first=69 second=257 amount=-1 +kerning first=69 second=259 amount=-1 +kerning first=69 second=260 amount=-1 +kerning first=69 second=261 amount=-1 +kerning first=69 second=262 amount=-1 +kerning first=69 second=264 amount=-1 +kerning first=69 second=266 amount=-1 +kerning first=69 second=268 amount=-1 +kerning first=69 second=270 amount=-1 +kerning first=69 second=274 amount=-1 +kerning first=69 second=278 amount=-1 +kerning first=69 second=280 amount=-1 +kerning first=69 second=282 amount=-1 +kerning first=69 second=284 amount=-1 +kerning first=69 second=286 amount=-1 +kerning first=69 second=287 amount=-2 +kerning first=69 second=288 amount=-1 +kerning first=69 second=289 amount=-2 +kerning first=69 second=290 amount=-1 +kerning first=69 second=291 amount=-2 +kerning first=69 second=296 amount=-1 +kerning first=69 second=298 amount=-1 +kerning first=69 second=302 amount=-1 +kerning first=211 second=198 amount=-3 +kerning first=69 second=304 amount=-1 +kerning first=211 second=197 amount=-3 +kerning first=69 second=310 amount=-1 +kerning first=69 second=311 amount=-1 +kerning first=69 second=313 amount=-1 +kerning first=69 second=314 amount=-1 +kerning first=69 second=315 amount=-1 +kerning first=69 second=316 amount=-1 +kerning first=69 second=317 amount=-1 +kerning first=69 second=318 amount=-1 +kerning first=69 second=323 amount=-1 +kerning first=69 second=324 amount=-1 +kerning first=69 second=325 amount=-1 +kerning first=69 second=326 amount=-1 +kerning first=69 second=327 amount=-1 +kerning first=69 second=328 amount=-1 +kerning first=69 second=330 amount=-1 +kerning first=69 second=331 amount=-1 +kerning first=69 second=332 amount=-1 +kerning first=69 second=334 amount=-1 +kerning first=69 second=336 amount=-1 +kerning first=69 second=338 amount=-1 +kerning first=69 second=344 amount=-1 +kerning first=69 second=346 amount=-1 +kerning first=69 second=347 amount=-1 +kerning first=69 second=350 amount=-1 +kerning first=69 second=351 amount=-1 +kerning first=69 second=352 amount=-1 +kerning first=69 second=353 amount=-1 +kerning first=69 second=354 amount=-1 +kerning first=69 second=356 amount=-1 +kerning first=69 second=361 amount=-1 +kerning first=69 second=362 amount=-1 +kerning first=69 second=363 amount=-1 +kerning first=69 second=364 amount=-1 +kerning first=69 second=365 amount=-1 +kerning first=69 second=366 amount=-1 +kerning first=69 second=367 amount=-1 +kerning first=69 second=368 amount=-1 +kerning first=69 second=369 amount=-1 +kerning first=69 second=370 amount=-1 +kerning first=69 second=374 amount=-1 +kerning first=69 second=377 amount=-1 +kerning first=69 second=378 amount=-1 +kerning first=69 second=379 amount=-1 +kerning first=69 second=380 amount=-1 +kerning first=69 second=381 amount=-1 +kerning first=69 second=382 amount=-1 +kerning first=211 second=196 amount=-3 +kerning first=211 second=194 amount=-3 +kerning first=211 second=193 amount=-3 +kerning first=211 second=192 amount=-3 +kerning first=211 second=171 amount=-1 +kerning first=211 second=122 amount=-1 +kerning first=211 second=120 amount=-1 +kerning first=211 second=106 amount=-1 +kerning first=211 second=103 amount=-1 +kerning first=211 second=97 amount=-1 +kerning first=211 second=90 amount=-1 +kerning first=211 second=89 amount=-1 +kerning first=211 second=87 amount=-1 +kerning first=211 second=86 amount=-1 +kerning first=211 second=85 amount=-1 +kerning first=211 second=84 amount=-1 +kerning first=211 second=83 amount=-1 +kerning first=211 second=82 amount=-1 +kerning first=211 second=80 amount=-1 +kerning first=211 second=78 amount=-1 +kerning first=211 second=77 amount=-1 +kerning first=211 second=76 amount=-1 +kerning first=69 second=8249 amount=-1 +kerning first=211 second=75 amount=-1 +kerning first=211 second=74 amount=-1 +kerning first=211 second=73 amount=-1 +kerning first=211 second=72 amount=-1 +kerning first=211 second=70 amount=-1 +kerning first=70 second=44 amount=-2 +kerning first=70 second=45 amount=-2 +kerning first=70 second=46 amount=-2 +kerning first=70 second=65 amount=-2 +kerning first=70 second=67 amount=-1 +kerning first=70 second=71 amount=-1 +kerning first=70 second=74 amount=-3 +kerning first=70 second=79 amount=-1 +kerning first=70 second=81 amount=-1 +kerning first=70 second=83 amount=-2 +kerning first=70 second=97 amount=-1 +kerning first=70 second=99 amount=-1 +kerning first=70 second=100 amount=-1 +kerning first=70 second=101 amount=-1 +kerning first=70 second=102 amount=-1 +kerning first=70 second=103 amount=-2 +kerning first=211 second=69 amount=-1 +kerning first=211 second=68 amount=-1 +kerning first=70 second=111 amount=-1 +kerning first=211 second=66 amount=-1 +kerning first=70 second=113 amount=-1 +kerning first=70 second=115 amount=-1 +kerning first=70 second=117 amount=-1 +kerning first=70 second=118 amount=-1 +kerning first=70 second=119 amount=-1 +kerning first=70 second=120 amount=-1 +kerning first=70 second=122 amount=-1 +kerning first=70 second=171 amount=-2 +kerning first=70 second=192 amount=-2 +kerning first=70 second=193 amount=-2 +kerning first=70 second=194 amount=-2 +kerning first=70 second=196 amount=-2 +kerning first=70 second=197 amount=-2 +kerning first=70 second=198 amount=-2 +kerning first=70 second=199 amount=-1 +kerning first=70 second=210 amount=-1 +kerning first=70 second=211 amount=-1 +kerning first=70 second=212 amount=-1 +kerning first=70 second=213 amount=-1 +kerning first=70 second=214 amount=-1 +kerning first=70 second=216 amount=-1 +kerning first=211 second=65 amount=-3 +kerning first=70 second=224 amount=-1 +kerning first=70 second=225 amount=-1 +kerning first=70 second=226 amount=-1 +kerning first=70 second=227 amount=-1 +kerning first=70 second=228 amount=-1 +kerning first=70 second=229 amount=-1 +kerning first=70 second=230 amount=-1 +kerning first=70 second=231 amount=-1 +kerning first=211 second=46 amount=-2 +kerning first=70 second=233 amount=-1 +kerning first=70 second=234 amount=-1 +kerning first=211 second=45 amount=-1 +kerning first=70 second=240 amount=-1 +kerning first=211 second=44 amount=-2 +kerning first=210 second=8249 amount=-1 +kerning first=70 second=243 amount=-1 +kerning first=70 second=244 amount=-1 +kerning first=70 second=245 amount=-1 +kerning first=210 second=8221 amount=-1 +kerning first=70 second=248 amount=-1 +kerning first=70 second=250 amount=-1 +kerning first=70 second=251 amount=-1 +kerning first=70 second=256 amount=-2 +kerning first=70 second=257 amount=-1 +kerning first=70 second=259 amount=-1 +kerning first=70 second=260 amount=-2 +kerning first=70 second=261 amount=-1 +kerning first=70 second=262 amount=-1 +kerning first=70 second=263 amount=-1 +kerning first=70 second=264 amount=-1 +kerning first=70 second=266 amount=-1 +kerning first=70 second=267 amount=-1 +kerning first=70 second=268 amount=-1 +kerning first=70 second=269 amount=-1 +kerning first=70 second=275 amount=-1 +kerning first=70 second=277 amount=-1 +kerning first=70 second=279 amount=-1 +kerning first=70 second=281 amount=-1 +kerning first=70 second=283 amount=-1 +kerning first=70 second=284 amount=-1 +kerning first=70 second=286 amount=-1 +kerning first=70 second=287 amount=-2 +kerning first=70 second=288 amount=-1 +kerning first=70 second=289 amount=-2 +kerning first=70 second=290 amount=-1 +kerning first=70 second=291 amount=-2 +kerning first=210 second=8220 amount=-1 +kerning first=210 second=8217 amount=-1 +kerning first=210 second=382 amount=-1 +kerning first=210 second=381 amount=-1 +kerning first=70 second=332 amount=-1 +kerning first=70 second=333 amount=-1 +kerning first=70 second=334 amount=-1 +kerning first=70 second=335 amount=-1 +kerning first=70 second=336 amount=-1 +kerning first=70 second=337 amount=-1 +kerning first=70 second=338 amount=-1 +kerning first=70 second=339 amount=-1 +kerning first=70 second=346 amount=-2 +kerning first=70 second=347 amount=-1 +kerning first=70 second=350 amount=-2 +kerning first=70 second=351 amount=-1 +kerning first=70 second=352 amount=-2 +kerning first=70 second=353 amount=-1 +kerning first=70 second=361 amount=-1 +kerning first=70 second=363 amount=-1 +kerning first=70 second=365 amount=-1 +kerning first=70 second=367 amount=-1 +kerning first=70 second=369 amount=-1 +kerning first=70 second=378 amount=-1 +kerning first=70 second=380 amount=-1 +kerning first=70 second=382 amount=-1 +kerning first=210 second=380 amount=-1 +kerning first=210 second=379 amount=-1 +kerning first=210 second=378 amount=-1 +kerning first=210 second=377 amount=-1 +kerning first=210 second=374 amount=-1 +kerning first=210 second=370 amount=-1 +kerning first=210 second=368 amount=-1 +kerning first=210 second=366 amount=-1 +kerning first=210 second=364 amount=-1 +kerning first=210 second=362 amount=-1 +kerning first=70 second=8249 amount=-2 +kerning first=210 second=356 amount=-1 +kerning first=210 second=354 amount=-1 +kerning first=210 second=352 amount=-1 +kerning first=210 second=350 amount=-1 +kerning first=210 second=346 amount=-1 +kerning first=71 second=44 amount=-2 +kerning first=71 second=45 amount=-2 +kerning first=71 second=46 amount=-2 +kerning first=71 second=65 amount=-2 +kerning first=71 second=66 amount=-1 +kerning first=71 second=68 amount=-1 +kerning first=71 second=69 amount=-1 +kerning first=71 second=70 amount=-1 +kerning first=71 second=72 amount=-1 +kerning first=71 second=73 amount=-1 +kerning first=71 second=74 amount=-1 +kerning first=71 second=75 amount=-1 +kerning first=71 second=76 amount=-1 +kerning first=71 second=77 amount=-1 +kerning first=71 second=78 amount=-1 +kerning first=71 second=80 amount=-1 +kerning first=71 second=82 amount=-1 +kerning first=71 second=83 amount=-1 +kerning first=71 second=84 amount=-2 +kerning first=71 second=85 amount=-1 +kerning first=71 second=86 amount=-2 +kerning first=71 second=87 amount=-2 +kerning first=71 second=89 amount=-2 +kerning first=71 second=90 amount=-1 +kerning first=71 second=97 amount=-1 +kerning first=210 second=344 amount=-1 +kerning first=71 second=102 amount=-1 +kerning first=71 second=103 amount=-2 +kerning first=210 second=330 amount=-1 +kerning first=71 second=106 amount=-1 +kerning first=210 second=327 amount=-1 +kerning first=210 second=325 amount=-1 +kerning first=210 second=323 amount=-1 +kerning first=71 second=117 amount=-1 +kerning first=71 second=118 amount=-1 +kerning first=71 second=119 amount=-1 +kerning first=71 second=122 amount=-1 +kerning first=71 second=171 amount=-2 +kerning first=71 second=192 amount=-2 +kerning first=71 second=193 amount=-2 +kerning first=71 second=194 amount=-2 +kerning first=71 second=196 amount=-2 +kerning first=71 second=197 amount=-2 +kerning first=71 second=198 amount=-2 +kerning first=71 second=200 amount=-1 +kerning first=71 second=201 amount=-1 +kerning first=71 second=202 amount=-1 +kerning first=71 second=203 amount=-1 +kerning first=71 second=204 amount=-1 +kerning first=71 second=205 amount=-1 +kerning first=71 second=206 amount=-1 +kerning first=71 second=207 amount=-1 +kerning first=71 second=209 amount=-1 +kerning first=71 second=217 amount=-1 +kerning first=71 second=218 amount=-1 +kerning first=71 second=219 amount=-1 +kerning first=71 second=220 amount=-1 +kerning first=71 second=221 amount=-2 +kerning first=71 second=224 amount=-1 +kerning first=71 second=225 amount=-1 +kerning first=71 second=226 amount=-1 +kerning first=71 second=227 amount=-1 +kerning first=71 second=228 amount=-1 +kerning first=71 second=229 amount=-1 +kerning first=71 second=230 amount=-1 +kerning first=210 second=317 amount=-1 +kerning first=71 second=250 amount=-1 +kerning first=71 second=251 amount=-1 +kerning first=210 second=315 amount=-1 +kerning first=210 second=313 amount=-1 +kerning first=71 second=256 amount=-2 +kerning first=71 second=257 amount=-1 +kerning first=71 second=259 amount=-1 +kerning first=71 second=260 amount=-2 +kerning first=71 second=261 amount=-1 +kerning first=71 second=270 amount=-1 +kerning first=71 second=274 amount=-1 +kerning first=71 second=278 amount=-1 +kerning first=71 second=280 amount=-1 +kerning first=71 second=282 amount=-1 +kerning first=71 second=287 amount=-2 +kerning first=71 second=289 amount=-2 +kerning first=71 second=291 amount=-2 +kerning first=71 second=296 amount=-1 +kerning first=71 second=298 amount=-1 +kerning first=71 second=302 amount=-1 +kerning first=71 second=304 amount=-1 +kerning first=71 second=310 amount=-1 +kerning first=210 second=310 amount=-1 +kerning first=71 second=313 amount=-1 +kerning first=210 second=304 amount=-1 +kerning first=71 second=315 amount=-1 +kerning first=210 second=302 amount=-1 +kerning first=71 second=317 amount=-1 +kerning first=210 second=298 amount=-1 +kerning first=71 second=323 amount=-1 +kerning first=71 second=325 amount=-1 +kerning first=71 second=327 amount=-1 +kerning first=71 second=330 amount=-1 +kerning first=71 second=344 amount=-1 +kerning first=71 second=346 amount=-1 +kerning first=71 second=350 amount=-1 +kerning first=71 second=352 amount=-1 +kerning first=71 second=354 amount=-2 +kerning first=71 second=356 amount=-2 +kerning first=71 second=361 amount=-1 +kerning first=71 second=362 amount=-1 +kerning first=71 second=363 amount=-1 +kerning first=71 second=364 amount=-1 +kerning first=71 second=365 amount=-1 +kerning first=71 second=366 amount=-1 +kerning first=71 second=367 amount=-1 +kerning first=71 second=368 amount=-1 +kerning first=71 second=369 amount=-1 +kerning first=71 second=370 amount=-1 +kerning first=71 second=374 amount=-2 +kerning first=71 second=377 amount=-1 +kerning first=71 second=378 amount=-1 +kerning first=71 second=379 amount=-1 +kerning first=71 second=380 amount=-1 +kerning first=71 second=381 amount=-1 +kerning first=71 second=382 amount=-1 +kerning first=210 second=296 amount=-1 +kerning first=210 second=291 amount=-1 +kerning first=210 second=289 amount=-1 +kerning first=210 second=287 amount=-1 +kerning first=210 second=282 amount=-1 +kerning first=210 second=280 amount=-1 +kerning first=210 second=278 amount=-1 +kerning first=210 second=274 amount=-1 +kerning first=210 second=270 amount=-1 +kerning first=210 second=261 amount=-1 +kerning first=210 second=260 amount=-3 +kerning first=210 second=259 amount=-1 +kerning first=210 second=257 amount=-1 +kerning first=210 second=256 amount=-3 +kerning first=210 second=230 amount=-1 +kerning first=210 second=229 amount=-1 +kerning first=210 second=228 amount=-1 +kerning first=210 second=227 amount=-1 +kerning first=210 second=226 amount=-1 +kerning first=71 second=8217 amount=-1 +kerning first=71 second=8220 amount=-1 +kerning first=71 second=8221 amount=-1 +kerning first=71 second=8249 amount=-2 +kerning first=210 second=225 amount=-1 +kerning first=210 second=224 amount=-1 +kerning first=210 second=221 amount=-1 +kerning first=210 second=220 amount=-1 +kerning first=210 second=219 amount=-1 +kerning first=72 second=44 amount=-1 +kerning first=72 second=45 amount=-3 +kerning first=72 second=46 amount=-1 +kerning first=72 second=67 amount=-1 +kerning first=72 second=71 amount=-1 +kerning first=72 second=74 amount=-1 +kerning first=72 second=79 amount=-1 +kerning first=72 second=81 amount=-1 +kerning first=72 second=83 amount=-1 +kerning first=72 second=97 amount=-2 +kerning first=72 second=99 amount=-1 +kerning first=72 second=100 amount=-1 +kerning first=72 second=101 amount=-1 +kerning first=72 second=103 amount=-2 +kerning first=210 second=218 amount=-1 +kerning first=72 second=111 amount=-1 +kerning first=72 second=112 amount=-1 +kerning first=72 second=113 amount=-1 +kerning first=72 second=115 amount=-1 +kerning first=72 second=117 amount=-2 +kerning first=72 second=118 amount=-1 +kerning first=72 second=119 amount=-1 +kerning first=72 second=121 amount=-1 +kerning first=72 second=122 amount=-1 +kerning first=72 second=171 amount=-3 +kerning first=72 second=199 amount=-1 +kerning first=72 second=210 amount=-1 +kerning first=72 second=211 amount=-1 +kerning first=72 second=212 amount=-1 +kerning first=72 second=213 amount=-1 +kerning first=72 second=214 amount=-1 +kerning first=72 second=216 amount=-1 +kerning first=72 second=224 amount=-2 +kerning first=72 second=225 amount=-2 +kerning first=72 second=226 amount=-2 +kerning first=72 second=227 amount=-2 +kerning first=72 second=228 amount=-2 +kerning first=72 second=229 amount=-2 +kerning first=72 second=230 amount=-2 +kerning first=72 second=231 amount=-1 +kerning first=72 second=232 amount=-1 +kerning first=72 second=233 amount=-1 +kerning first=72 second=234 amount=-1 +kerning first=72 second=235 amount=-1 +kerning first=210 second=217 amount=-1 +kerning first=72 second=240 amount=-1 +kerning first=72 second=242 amount=-1 +kerning first=72 second=243 amount=-1 +kerning first=72 second=244 amount=-1 +kerning first=72 second=245 amount=-1 +kerning first=72 second=246 amount=-1 +kerning first=72 second=248 amount=-1 +kerning first=72 second=249 amount=-1 +kerning first=72 second=250 amount=-2 +kerning first=72 second=251 amount=-2 +kerning first=72 second=252 amount=-1 +kerning first=72 second=253 amount=-1 +kerning first=72 second=255 amount=-1 +kerning first=72 second=257 amount=-2 +kerning first=72 second=259 amount=-2 +kerning first=72 second=261 amount=-2 +kerning first=72 second=262 amount=-1 +kerning first=72 second=263 amount=-1 +kerning first=72 second=264 amount=-1 +kerning first=72 second=266 amount=-1 +kerning first=72 second=267 amount=-1 +kerning first=72 second=268 amount=-1 +kerning first=72 second=269 amount=-1 +kerning first=72 second=275 amount=-1 +kerning first=72 second=277 amount=-1 +kerning first=72 second=279 amount=-1 +kerning first=72 second=281 amount=-1 +kerning first=72 second=283 amount=-1 +kerning first=72 second=284 amount=-1 +kerning first=72 second=286 amount=-1 +kerning first=72 second=287 amount=-2 +kerning first=72 second=288 amount=-1 +kerning first=72 second=289 amount=-2 +kerning first=72 second=290 amount=-1 +kerning first=72 second=291 amount=-2 +kerning first=210 second=209 amount=-1 +kerning first=210 second=207 amount=-1 +kerning first=72 second=332 amount=-1 +kerning first=72 second=333 amount=-1 +kerning first=72 second=334 amount=-1 +kerning first=72 second=335 amount=-1 +kerning first=72 second=336 amount=-1 +kerning first=72 second=337 amount=-1 +kerning first=72 second=338 amount=-1 +kerning first=72 second=339 amount=-1 +kerning first=72 second=346 amount=-1 +kerning first=72 second=347 amount=-1 +kerning first=72 second=350 amount=-1 +kerning first=72 second=351 amount=-1 +kerning first=72 second=352 amount=-1 +kerning first=72 second=353 amount=-1 +kerning first=72 second=361 amount=-2 +kerning first=72 second=363 amount=-2 +kerning first=72 second=365 amount=-2 +kerning first=72 second=367 amount=-2 +kerning first=72 second=369 amount=-2 +kerning first=72 second=375 amount=-1 +kerning first=72 second=378 amount=-1 +kerning first=72 second=380 amount=-1 +kerning first=72 second=382 amount=-1 +kerning first=210 second=206 amount=-1 +kerning first=210 second=205 amount=-1 +kerning first=210 second=204 amount=-1 +kerning first=210 second=203 amount=-1 +kerning first=210 second=202 amount=-1 +kerning first=210 second=201 amount=-1 +kerning first=210 second=200 amount=-1 +kerning first=210 second=198 amount=-3 +kerning first=210 second=197 amount=-3 +kerning first=72 second=8249 amount=-3 +kerning first=73 second=44 amount=-1 +kerning first=73 second=45 amount=-3 +kerning first=73 second=46 amount=-1 +kerning first=73 second=67 amount=-1 +kerning first=73 second=71 amount=-1 +kerning first=73 second=74 amount=-1 +kerning first=73 second=79 amount=-1 +kerning first=73 second=81 amount=-1 +kerning first=73 second=83 amount=-1 +kerning first=73 second=97 amount=-2 +kerning first=73 second=99 amount=-1 +kerning first=73 second=100 amount=-1 +kerning first=73 second=101 amount=-1 +kerning first=73 second=103 amount=-2 +kerning first=210 second=196 amount=-3 +kerning first=73 second=111 amount=-1 +kerning first=73 second=112 amount=-1 +kerning first=73 second=113 amount=-1 +kerning first=73 second=115 amount=-1 +kerning first=73 second=117 amount=-2 +kerning first=73 second=118 amount=-1 +kerning first=73 second=119 amount=-1 +kerning first=73 second=121 amount=-1 +kerning first=73 second=122 amount=-1 +kerning first=73 second=171 amount=-3 +kerning first=73 second=199 amount=-1 +kerning first=73 second=210 amount=-1 +kerning first=73 second=211 amount=-1 +kerning first=73 second=212 amount=-1 +kerning first=73 second=213 amount=-1 +kerning first=73 second=214 amount=-1 +kerning first=73 second=216 amount=-1 +kerning first=73 second=224 amount=-2 +kerning first=73 second=225 amount=-2 +kerning first=73 second=226 amount=-2 +kerning first=73 second=227 amount=-2 +kerning first=73 second=228 amount=-2 +kerning first=73 second=229 amount=-2 +kerning first=73 second=230 amount=-2 +kerning first=73 second=231 amount=-1 +kerning first=73 second=232 amount=-1 +kerning first=73 second=233 amount=-1 +kerning first=73 second=234 amount=-1 +kerning first=73 second=235 amount=-1 +kerning first=210 second=194 amount=-3 +kerning first=73 second=240 amount=-1 +kerning first=73 second=242 amount=-1 +kerning first=73 second=243 amount=-1 +kerning first=73 second=244 amount=-1 +kerning first=73 second=245 amount=-1 +kerning first=73 second=246 amount=-1 +kerning first=73 second=248 amount=-1 +kerning first=73 second=249 amount=-1 +kerning first=73 second=250 amount=-2 +kerning first=73 second=251 amount=-2 +kerning first=73 second=252 amount=-1 +kerning first=73 second=253 amount=-1 +kerning first=73 second=255 amount=-1 +kerning first=73 second=257 amount=-2 +kerning first=73 second=259 amount=-2 +kerning first=73 second=261 amount=-2 +kerning first=73 second=262 amount=-1 +kerning first=73 second=263 amount=-1 +kerning first=73 second=264 amount=-1 +kerning first=73 second=266 amount=-1 +kerning first=73 second=267 amount=-1 +kerning first=73 second=268 amount=-1 +kerning first=73 second=269 amount=-1 +kerning first=73 second=275 amount=-1 +kerning first=73 second=277 amount=-1 +kerning first=73 second=279 amount=-1 +kerning first=73 second=281 amount=-1 +kerning first=73 second=283 amount=-1 +kerning first=73 second=284 amount=-1 +kerning first=73 second=286 amount=-1 +kerning first=73 second=287 amount=-2 +kerning first=73 second=288 amount=-1 +kerning first=73 second=289 amount=-2 +kerning first=73 second=290 amount=-1 +kerning first=73 second=291 amount=-2 +kerning first=210 second=193 amount=-3 +kerning first=210 second=192 amount=-3 +kerning first=73 second=332 amount=-1 +kerning first=73 second=333 amount=-1 +kerning first=73 second=334 amount=-1 +kerning first=73 second=335 amount=-1 +kerning first=73 second=336 amount=-1 +kerning first=73 second=337 amount=-1 +kerning first=73 second=338 amount=-1 +kerning first=73 second=339 amount=-1 +kerning first=73 second=346 amount=-1 +kerning first=73 second=347 amount=-1 +kerning first=73 second=350 amount=-1 +kerning first=73 second=351 amount=-1 +kerning first=73 second=352 amount=-1 +kerning first=73 second=353 amount=-1 +kerning first=73 second=361 amount=-2 +kerning first=73 second=363 amount=-2 +kerning first=73 second=365 amount=-2 +kerning first=73 second=367 amount=-2 +kerning first=73 second=369 amount=-2 +kerning first=73 second=375 amount=-1 +kerning first=73 second=378 amount=-1 +kerning first=73 second=380 amount=-1 +kerning first=73 second=382 amount=-1 +kerning first=210 second=171 amount=-1 +kerning first=210 second=122 amount=-1 +kerning first=210 second=120 amount=-1 +kerning first=210 second=106 amount=-1 +kerning first=210 second=103 amount=-1 +kerning first=210 second=97 amount=-1 +kerning first=210 second=90 amount=-1 +kerning first=210 second=89 amount=-1 +kerning first=210 second=87 amount=-1 +kerning first=73 second=8249 amount=-3 +kerning first=74 second=44 amount=-1 +kerning first=74 second=45 amount=-3 +kerning first=74 second=46 amount=-1 +kerning first=74 second=65 amount=-4 +kerning first=74 second=67 amount=-1 +kerning first=74 second=71 amount=-1 +kerning first=74 second=74 amount=-1 +kerning first=74 second=79 amount=-1 +kerning first=74 second=81 amount=-1 +kerning first=74 second=83 amount=-1 +kerning first=210 second=86 amount=-1 +kerning first=210 second=85 amount=-1 +kerning first=210 second=84 amount=-1 +kerning first=210 second=83 amount=-1 +kerning first=74 second=97 amount=-2 +kerning first=74 second=99 amount=-1 +kerning first=74 second=100 amount=-1 +kerning first=74 second=101 amount=-1 +kerning first=74 second=102 amount=-1 +kerning first=74 second=103 amount=-2 +kerning first=74 second=105 amount=-1 +kerning first=74 second=109 amount=-1 +kerning first=74 second=110 amount=-1 +kerning first=74 second=111 amount=-1 +kerning first=74 second=112 amount=-1 +kerning first=74 second=113 amount=-1 +kerning first=210 second=82 amount=-1 +kerning first=74 second=115 amount=-1 +kerning first=74 second=118 amount=-1 +kerning first=74 second=119 amount=-1 +kerning first=74 second=122 amount=-1 +kerning first=74 second=171 amount=-3 +kerning first=74 second=192 amount=-4 +kerning first=74 second=193 amount=-4 +kerning first=74 second=194 amount=-4 +kerning first=74 second=196 amount=-4 +kerning first=74 second=197 amount=-4 +kerning first=74 second=198 amount=-4 +kerning first=74 second=199 amount=-1 +kerning first=74 second=210 amount=-1 +kerning first=74 second=211 amount=-1 +kerning first=74 second=212 amount=-1 +kerning first=74 second=213 amount=-1 +kerning first=74 second=214 amount=-1 +kerning first=74 second=216 amount=-1 +kerning first=210 second=80 amount=-1 +kerning first=74 second=223 amount=-1 +kerning first=74 second=224 amount=-1 +kerning first=74 second=225 amount=-2 +kerning first=74 second=226 amount=-2 +kerning first=74 second=227 amount=-2 +kerning first=74 second=228 amount=-1 +kerning first=74 second=229 amount=-2 +kerning first=74 second=230 amount=-2 +kerning first=74 second=231 amount=-1 +kerning first=74 second=232 amount=-1 +kerning first=74 second=233 amount=-1 +kerning first=74 second=234 amount=-1 +kerning first=74 second=235 amount=-1 +kerning first=74 second=237 amount=-1 +kerning first=74 second=240 amount=-1 +kerning first=74 second=241 amount=-1 +kerning first=74 second=242 amount=-1 +kerning first=74 second=243 amount=-1 +kerning first=74 second=244 amount=-1 +kerning first=74 second=245 amount=-1 +kerning first=74 second=246 amount=-1 +kerning first=74 second=248 amount=-1 +kerning first=74 second=256 amount=-4 +kerning first=74 second=257 amount=-2 +kerning first=74 second=259 amount=-2 +kerning first=74 second=260 amount=-4 +kerning first=74 second=261 amount=-2 +kerning first=74 second=262 amount=-1 +kerning first=74 second=263 amount=-1 +kerning first=74 second=264 amount=-1 +kerning first=74 second=266 amount=-1 +kerning first=74 second=267 amount=-1 +kerning first=74 second=268 amount=-1 +kerning first=74 second=269 amount=-1 +kerning first=74 second=275 amount=-1 +kerning first=74 second=277 amount=-1 +kerning first=74 second=279 amount=-1 +kerning first=74 second=281 amount=-1 +kerning first=74 second=283 amount=-1 +kerning first=74 second=284 amount=-1 +kerning first=74 second=286 amount=-1 +kerning first=74 second=287 amount=-2 +kerning first=74 second=288 amount=-1 +kerning first=74 second=289 amount=-2 +kerning first=74 second=290 amount=-1 +kerning first=74 second=291 amount=-2 +kerning first=74 second=303 amount=-1 +kerning first=74 second=305 amount=-1 +kerning first=74 second=324 amount=-1 +kerning first=74 second=326 amount=-1 +kerning first=74 second=328 amount=-1 +kerning first=74 second=331 amount=-1 +kerning first=74 second=332 amount=-1 +kerning first=74 second=333 amount=-1 +kerning first=74 second=334 amount=-1 +kerning first=74 second=335 amount=-1 +kerning first=74 second=336 amount=-1 +kerning first=74 second=337 amount=-1 +kerning first=74 second=338 amount=-1 +kerning first=74 second=339 amount=-1 +kerning first=210 second=78 amount=-1 +kerning first=74 second=346 amount=-1 +kerning first=74 second=347 amount=-1 +kerning first=74 second=350 amount=-1 +kerning first=74 second=351 amount=-1 +kerning first=74 second=352 amount=-1 +kerning first=74 second=353 amount=-1 +kerning first=210 second=77 amount=-1 +kerning first=210 second=76 amount=-1 +kerning first=210 second=75 amount=-1 +kerning first=74 second=378 amount=-1 +kerning first=74 second=380 amount=-1 +kerning first=74 second=382 amount=-1 +kerning first=210 second=74 amount=-1 +kerning first=210 second=73 amount=-1 +kerning first=210 second=72 amount=-1 +kerning first=210 second=70 amount=-1 +kerning first=210 second=69 amount=-1 +kerning first=210 second=68 amount=-1 +kerning first=210 second=66 amount=-1 +kerning first=210 second=65 amount=-3 +kerning first=210 second=46 amount=-2 +kerning first=210 second=45 amount=-1 +kerning first=210 second=44 amount=-2 +kerning first=209 second=8249 amount=-3 +kerning first=209 second=382 amount=-1 +kerning first=74 second=8249 amount=-3 +kerning first=209 second=380 amount=-1 +kerning first=209 second=378 amount=-1 +kerning first=209 second=375 amount=-1 +kerning first=209 second=369 amount=-2 +kerning first=209 second=367 amount=-2 +kerning first=75 second=44 amount=-1 +kerning first=75 second=45 amount=-3 +kerning first=75 second=46 amount=-1 +kerning first=75 second=67 amount=-2 +kerning first=75 second=71 amount=-2 +kerning first=75 second=79 amount=-2 +kerning first=75 second=81 amount=-2 +kerning first=75 second=83 amount=-1 +kerning first=75 second=84 amount=-1 +kerning first=75 second=85 amount=-1 +kerning first=75 second=86 amount=-1 +kerning first=75 second=87 amount=-1 +kerning first=75 second=89 amount=-1 +kerning first=75 second=97 amount=-1 +kerning first=75 second=98 amount=-1 +kerning first=75 second=99 amount=-1 +kerning first=75 second=100 amount=-1 +kerning first=75 second=101 amount=-1 +kerning first=75 second=103 amount=-1 +kerning first=75 second=104 amount=-1 +kerning first=75 second=106 amount=-1 +kerning first=75 second=107 amount=-1 +kerning first=75 second=108 amount=-1 +kerning first=75 second=111 amount=-1 +kerning first=75 second=112 amount=-1 +kerning first=75 second=113 amount=-1 +kerning first=209 second=365 amount=-2 +kerning first=75 second=115 amount=-1 +kerning first=75 second=116 amount=-1 +kerning first=75 second=117 amount=-2 +kerning first=75 second=118 amount=-2 +kerning first=75 second=119 amount=-2 +kerning first=75 second=121 amount=-2 +kerning first=75 second=171 amount=-3 +kerning first=75 second=199 amount=-2 +kerning first=75 second=210 amount=-2 +kerning first=75 second=211 amount=-2 +kerning first=75 second=212 amount=-2 +kerning first=75 second=213 amount=-2 +kerning first=75 second=214 amount=-2 +kerning first=75 second=216 amount=-2 +kerning first=75 second=217 amount=-1 +kerning first=75 second=218 amount=-1 +kerning first=75 second=219 amount=-1 +kerning first=75 second=220 amount=-1 +kerning first=75 second=221 amount=-1 +kerning first=75 second=224 amount=-1 +kerning first=75 second=225 amount=-1 +kerning first=75 second=226 amount=-1 +kerning first=75 second=227 amount=-1 +kerning first=75 second=228 amount=-1 +kerning first=75 second=229 amount=-1 +kerning first=75 second=230 amount=-1 +kerning first=75 second=231 amount=-1 +kerning first=75 second=232 amount=-1 +kerning first=75 second=233 amount=-1 +kerning first=75 second=234 amount=-1 +kerning first=75 second=235 amount=-1 +kerning first=75 second=240 amount=-1 +kerning first=75 second=242 amount=-1 +kerning first=75 second=243 amount=-1 +kerning first=75 second=244 amount=-1 +kerning first=75 second=245 amount=-1 +kerning first=75 second=246 amount=-1 +kerning first=75 second=248 amount=-1 +kerning first=75 second=249 amount=-2 +kerning first=75 second=250 amount=-2 +kerning first=75 second=251 amount=-2 +kerning first=75 second=252 amount=-2 +kerning first=75 second=253 amount=-2 +kerning first=75 second=254 amount=-1 +kerning first=75 second=255 amount=-2 +kerning first=75 second=257 amount=-1 +kerning first=75 second=259 amount=-1 +kerning first=75 second=261 amount=-1 +kerning first=75 second=262 amount=-2 +kerning first=75 second=263 amount=-1 +kerning first=75 second=264 amount=-2 +kerning first=75 second=266 amount=-2 +kerning first=75 second=267 amount=-1 +kerning first=75 second=268 amount=-2 +kerning first=75 second=269 amount=-1 +kerning first=75 second=275 amount=-1 +kerning first=75 second=277 amount=-1 +kerning first=75 second=279 amount=-1 +kerning first=75 second=281 amount=-1 +kerning first=75 second=283 amount=-1 +kerning first=75 second=284 amount=-2 +kerning first=75 second=286 amount=-2 +kerning first=75 second=287 amount=-1 +kerning first=75 second=288 amount=-2 +kerning first=75 second=289 amount=-1 +kerning first=75 second=290 amount=-2 +kerning first=75 second=291 amount=-1 +kerning first=75 second=311 amount=-1 +kerning first=75 second=314 amount=-1 +kerning first=75 second=316 amount=-1 +kerning first=75 second=318 amount=-1 +kerning first=75 second=332 amount=-2 +kerning first=75 second=333 amount=-1 +kerning first=75 second=334 amount=-2 +kerning first=75 second=335 amount=-1 +kerning first=75 second=336 amount=-2 +kerning first=75 second=337 amount=-1 +kerning first=75 second=338 amount=-2 +kerning first=75 second=339 amount=-1 +kerning first=209 second=363 amount=-2 +kerning first=75 second=346 amount=-1 +kerning first=75 second=347 amount=-1 +kerning first=75 second=350 amount=-1 +kerning first=75 second=351 amount=-1 +kerning first=75 second=352 amount=-1 +kerning first=75 second=353 amount=-1 +kerning first=75 second=354 amount=-1 +kerning first=75 second=355 amount=-1 +kerning first=75 second=356 amount=-1 +kerning first=75 second=361 amount=-2 +kerning first=75 second=362 amount=-1 +kerning first=75 second=363 amount=-2 +kerning first=75 second=364 amount=-1 +kerning first=75 second=365 amount=-2 +kerning first=75 second=366 amount=-1 +kerning first=75 second=367 amount=-2 +kerning first=75 second=368 amount=-1 +kerning first=75 second=369 amount=-2 +kerning first=75 second=370 amount=-1 +kerning first=75 second=374 amount=-1 +kerning first=75 second=375 amount=-2 +kerning first=209 second=361 amount=-2 +kerning first=209 second=353 amount=-1 +kerning first=209 second=352 amount=-1 +kerning first=209 second=351 amount=-1 +kerning first=209 second=350 amount=-1 +kerning first=209 second=347 amount=-1 +kerning first=209 second=346 amount=-1 +kerning first=209 second=339 amount=-1 +kerning first=209 second=338 amount=-1 +kerning first=209 second=337 amount=-1 +kerning first=209 second=336 amount=-1 +kerning first=209 second=335 amount=-1 +kerning first=209 second=334 amount=-1 +kerning first=209 second=333 amount=-1 +kerning first=75 second=8217 amount=-1 +kerning first=75 second=8220 amount=-1 +kerning first=75 second=8221 amount=-1 +kerning first=75 second=8249 amount=-3 +kerning first=76 second=45 amount=-1 +kerning first=76 second=65 amount=-1 +kerning first=76 second=66 amount=-1 +kerning first=76 second=67 amount=-1 +kerning first=76 second=68 amount=-1 +kerning first=76 second=69 amount=-1 +kerning first=76 second=70 amount=-1 +kerning first=76 second=71 amount=-1 +kerning first=76 second=72 amount=-1 +kerning first=76 second=73 amount=-1 +kerning first=76 second=74 amount=-1 +kerning first=76 second=75 amount=-1 +kerning first=76 second=76 amount=-1 +kerning first=76 second=77 amount=-1 +kerning first=76 second=78 amount=-1 +kerning first=76 second=79 amount=-1 +kerning first=76 second=80 amount=-1 +kerning first=76 second=81 amount=-1 +kerning first=76 second=82 amount=-1 +kerning first=76 second=83 amount=-1 +kerning first=76 second=84 amount=-2 +kerning first=76 second=85 amount=-2 +kerning first=76 second=86 amount=-2 +kerning first=76 second=87 amount=-2 +kerning first=76 second=89 amount=-2 +kerning first=76 second=90 amount=-2 +kerning first=76 second=98 amount=-1 +kerning first=76 second=103 amount=-2 +kerning first=76 second=104 amount=-1 +kerning first=76 second=105 amount=-1 +kerning first=76 second=106 amount=-1 +kerning first=76 second=107 amount=-1 +kerning first=76 second=108 amount=-1 +kerning first=76 second=109 amount=-1 +kerning first=76 second=110 amount=-1 +kerning first=76 second=112 amount=-1 +kerning first=76 second=115 amount=-1 +kerning first=76 second=117 amount=-1 +kerning first=76 second=118 amount=-2 +kerning first=76 second=119 amount=-2 +kerning first=76 second=120 amount=-1 +kerning first=76 second=121 amount=-2 +kerning first=76 second=122 amount=-2 +kerning first=76 second=171 amount=-1 +kerning first=76 second=192 amount=-1 +kerning first=76 second=193 amount=-1 +kerning first=76 second=194 amount=-1 +kerning first=76 second=196 amount=-1 +kerning first=76 second=197 amount=-1 +kerning first=76 second=198 amount=-1 +kerning first=76 second=199 amount=-1 +kerning first=76 second=200 amount=-1 +kerning first=76 second=201 amount=-1 +kerning first=76 second=202 amount=-1 +kerning first=76 second=203 amount=-1 +kerning first=76 second=204 amount=-1 +kerning first=76 second=205 amount=-1 +kerning first=76 second=206 amount=-1 +kerning first=76 second=207 amount=-1 +kerning first=76 second=209 amount=-1 +kerning first=76 second=210 amount=-1 +kerning first=76 second=211 amount=-1 +kerning first=76 second=212 amount=-1 +kerning first=76 second=213 amount=-1 +kerning first=76 second=214 amount=-1 +kerning first=76 second=216 amount=-1 +kerning first=76 second=217 amount=-2 +kerning first=76 second=218 amount=-2 +kerning first=76 second=219 amount=-2 +kerning first=76 second=220 amount=-2 +kerning first=76 second=221 amount=-2 +kerning first=76 second=223 amount=-1 +kerning first=76 second=237 amount=-1 +kerning first=76 second=241 amount=-1 +kerning first=76 second=249 amount=-1 +kerning first=76 second=250 amount=-1 +kerning first=76 second=251 amount=-1 +kerning first=76 second=252 amount=-1 +kerning first=76 second=253 amount=-2 +kerning first=76 second=254 amount=-1 +kerning first=76 second=255 amount=-2 +kerning first=76 second=256 amount=-1 +kerning first=76 second=260 amount=-1 +kerning first=76 second=262 amount=-1 +kerning first=76 second=264 amount=-1 +kerning first=76 second=266 amount=-1 +kerning first=76 second=268 amount=-1 +kerning first=76 second=270 amount=-1 +kerning first=76 second=274 amount=-1 +kerning first=76 second=278 amount=-1 +kerning first=76 second=280 amount=-1 +kerning first=76 second=282 amount=-1 +kerning first=76 second=284 amount=-1 +kerning first=76 second=286 amount=-1 +kerning first=76 second=287 amount=-2 +kerning first=76 second=288 amount=-1 +kerning first=76 second=289 amount=-2 +kerning first=76 second=290 amount=-1 +kerning first=76 second=291 amount=-2 +kerning first=76 second=296 amount=-1 +kerning first=76 second=298 amount=-1 +kerning first=76 second=302 amount=-1 +kerning first=76 second=303 amount=-1 +kerning first=76 second=304 amount=-1 +kerning first=76 second=305 amount=-1 +kerning first=76 second=310 amount=-1 +kerning first=76 second=311 amount=-1 +kerning first=76 second=313 amount=-1 +kerning first=76 second=314 amount=-1 +kerning first=76 second=315 amount=-1 +kerning first=76 second=316 amount=-1 +kerning first=76 second=317 amount=-1 +kerning first=76 second=318 amount=-1 +kerning first=76 second=323 amount=-1 +kerning first=76 second=324 amount=-1 +kerning first=76 second=325 amount=-1 +kerning first=76 second=326 amount=-1 +kerning first=76 second=327 amount=-1 +kerning first=76 second=328 amount=-1 +kerning first=76 second=330 amount=-1 +kerning first=76 second=331 amount=-1 +kerning first=76 second=332 amount=-1 +kerning first=76 second=334 amount=-1 +kerning first=76 second=336 amount=-1 +kerning first=76 second=338 amount=-1 +kerning first=76 second=344 amount=-1 +kerning first=76 second=346 amount=-1 +kerning first=76 second=347 amount=-1 +kerning first=76 second=350 amount=-1 +kerning first=76 second=351 amount=-1 +kerning first=76 second=352 amount=-1 +kerning first=76 second=353 amount=-1 +kerning first=76 second=354 amount=-2 +kerning first=76 second=356 amount=-2 +kerning first=76 second=361 amount=-1 +kerning first=76 second=362 amount=-2 +kerning first=76 second=363 amount=-1 +kerning first=76 second=364 amount=-2 +kerning first=76 second=365 amount=-1 +kerning first=76 second=366 amount=-2 +kerning first=76 second=367 amount=-1 +kerning first=76 second=368 amount=-2 +kerning first=76 second=369 amount=-1 +kerning first=76 second=370 amount=-2 +kerning first=76 second=374 amount=-2 +kerning first=76 second=375 amount=-2 +kerning first=76 second=377 amount=-2 +kerning first=76 second=378 amount=-2 +kerning first=76 second=379 amount=-2 +kerning first=76 second=380 amount=-2 +kerning first=76 second=381 amount=-2 +kerning first=76 second=382 amount=-2 +kerning first=209 second=332 amount=-1 +kerning first=209 second=291 amount=-2 +kerning first=209 second=290 amount=-1 +kerning first=209 second=289 amount=-2 +kerning first=209 second=288 amount=-1 +kerning first=209 second=287 amount=-2 +kerning first=209 second=286 amount=-1 +kerning first=209 second=284 amount=-1 +kerning first=209 second=283 amount=-1 +kerning first=209 second=281 amount=-1 +kerning first=209 second=279 amount=-1 +kerning first=209 second=277 amount=-1 +kerning first=209 second=275 amount=-1 +kerning first=209 second=269 amount=-1 +kerning first=209 second=268 amount=-1 +kerning first=209 second=267 amount=-1 +kerning first=209 second=266 amount=-1 +kerning first=209 second=264 amount=-1 +kerning first=209 second=263 amount=-1 +kerning first=209 second=262 amount=-1 +kerning first=209 second=261 amount=-2 +kerning first=209 second=259 amount=-2 +kerning first=76 second=8217 amount=-3 +kerning first=76 second=8220 amount=-3 +kerning first=76 second=8221 amount=-3 +kerning first=76 second=8249 amount=-1 +kerning first=77 second=44 amount=-1 +kerning first=77 second=45 amount=-3 +kerning first=77 second=46 amount=-1 +kerning first=77 second=67 amount=-1 +kerning first=77 second=71 amount=-1 +kerning first=77 second=74 amount=-1 +kerning first=77 second=79 amount=-1 +kerning first=77 second=81 amount=-1 +kerning first=77 second=83 amount=-1 +kerning first=77 second=97 amount=-2 +kerning first=77 second=99 amount=-1 +kerning first=77 second=100 amount=-1 +kerning first=77 second=101 amount=-1 +kerning first=77 second=103 amount=-2 +kerning first=209 second=257 amount=-2 +kerning first=77 second=111 amount=-1 +kerning first=77 second=112 amount=-1 +kerning first=77 second=113 amount=-1 +kerning first=77 second=115 amount=-1 +kerning first=77 second=117 amount=-2 +kerning first=77 second=118 amount=-1 +kerning first=77 second=119 amount=-1 +kerning first=77 second=121 amount=-1 +kerning first=77 second=122 amount=-1 +kerning first=77 second=171 amount=-3 +kerning first=77 second=199 amount=-1 +kerning first=77 second=210 amount=-1 +kerning first=77 second=211 amount=-1 +kerning first=77 second=212 amount=-1 +kerning first=77 second=213 amount=-1 +kerning first=77 second=214 amount=-1 +kerning first=77 second=216 amount=-1 +kerning first=77 second=224 amount=-2 +kerning first=77 second=225 amount=-2 +kerning first=77 second=226 amount=-2 +kerning first=77 second=227 amount=-2 +kerning first=77 second=228 amount=-2 +kerning first=77 second=229 amount=-2 +kerning first=77 second=230 amount=-2 +kerning first=77 second=231 amount=-1 +kerning first=77 second=232 amount=-1 +kerning first=77 second=233 amount=-1 +kerning first=77 second=234 amount=-1 +kerning first=77 second=235 amount=-1 +kerning first=209 second=255 amount=-1 +kerning first=77 second=240 amount=-1 +kerning first=77 second=242 amount=-1 +kerning first=77 second=243 amount=-1 +kerning first=77 second=244 amount=-1 +kerning first=77 second=245 amount=-1 +kerning first=77 second=246 amount=-1 +kerning first=77 second=248 amount=-1 +kerning first=77 second=249 amount=-1 +kerning first=77 second=250 amount=-2 +kerning first=77 second=251 amount=-2 +kerning first=77 second=252 amount=-1 +kerning first=77 second=253 amount=-1 +kerning first=77 second=255 amount=-1 +kerning first=77 second=257 amount=-2 +kerning first=77 second=259 amount=-2 +kerning first=77 second=261 amount=-2 +kerning first=77 second=262 amount=-1 +kerning first=77 second=263 amount=-1 +kerning first=77 second=264 amount=-1 +kerning first=77 second=266 amount=-1 +kerning first=77 second=267 amount=-1 +kerning first=77 second=268 amount=-1 +kerning first=77 second=269 amount=-1 +kerning first=77 second=275 amount=-1 +kerning first=77 second=277 amount=-1 +kerning first=77 second=279 amount=-1 +kerning first=77 second=281 amount=-1 +kerning first=77 second=283 amount=-1 +kerning first=77 second=284 amount=-1 +kerning first=77 second=286 amount=-1 +kerning first=77 second=287 amount=-2 +kerning first=77 second=288 amount=-1 +kerning first=77 second=289 amount=-2 +kerning first=77 second=290 amount=-1 +kerning first=77 second=291 amount=-2 +kerning first=209 second=253 amount=-1 +kerning first=209 second=252 amount=-1 +kerning first=77 second=332 amount=-1 +kerning first=77 second=333 amount=-1 +kerning first=77 second=334 amount=-1 +kerning first=77 second=335 amount=-1 +kerning first=77 second=336 amount=-1 +kerning first=77 second=337 amount=-1 +kerning first=77 second=338 amount=-1 +kerning first=77 second=339 amount=-1 +kerning first=77 second=346 amount=-1 +kerning first=77 second=347 amount=-1 +kerning first=77 second=350 amount=-1 +kerning first=77 second=351 amount=-1 +kerning first=77 second=352 amount=-1 +kerning first=77 second=353 amount=-1 +kerning first=77 second=361 amount=-2 +kerning first=77 second=363 amount=-2 +kerning first=77 second=365 amount=-2 +kerning first=77 second=367 amount=-2 +kerning first=77 second=369 amount=-2 +kerning first=77 second=375 amount=-1 +kerning first=77 second=378 amount=-1 +kerning first=77 second=380 amount=-1 +kerning first=77 second=382 amount=-1 +kerning first=209 second=251 amount=-2 +kerning first=209 second=250 amount=-2 +kerning first=209 second=249 amount=-1 +kerning first=209 second=248 amount=-1 +kerning first=209 second=246 amount=-1 +kerning first=209 second=245 amount=-1 +kerning first=209 second=244 amount=-1 +kerning first=209 second=243 amount=-1 +kerning first=209 second=242 amount=-1 +kerning first=77 second=8249 amount=-3 +kerning first=78 second=44 amount=-1 +kerning first=78 second=45 amount=-3 +kerning first=78 second=46 amount=-1 +kerning first=78 second=67 amount=-1 +kerning first=78 second=71 amount=-1 +kerning first=78 second=74 amount=-1 +kerning first=78 second=79 amount=-1 +kerning first=78 second=81 amount=-1 +kerning first=78 second=83 amount=-1 +kerning first=78 second=97 amount=-2 +kerning first=78 second=99 amount=-1 +kerning first=78 second=100 amount=-1 +kerning first=78 second=101 amount=-1 +kerning first=78 second=103 amount=-2 +kerning first=209 second=240 amount=-1 +kerning first=78 second=111 amount=-1 +kerning first=78 second=112 amount=-1 +kerning first=78 second=113 amount=-1 +kerning first=78 second=115 amount=-1 +kerning first=78 second=117 amount=-2 +kerning first=78 second=118 amount=-1 +kerning first=78 second=119 amount=-1 +kerning first=78 second=121 amount=-1 +kerning first=78 second=122 amount=-1 +kerning first=78 second=171 amount=-3 +kerning first=78 second=199 amount=-1 +kerning first=78 second=210 amount=-1 +kerning first=78 second=211 amount=-1 +kerning first=78 second=212 amount=-1 +kerning first=78 second=213 amount=-1 +kerning first=78 second=214 amount=-1 +kerning first=78 second=216 amount=-1 +kerning first=78 second=224 amount=-2 +kerning first=78 second=225 amount=-2 +kerning first=78 second=226 amount=-2 +kerning first=78 second=227 amount=-2 +kerning first=78 second=228 amount=-2 +kerning first=78 second=229 amount=-2 +kerning first=78 second=230 amount=-2 +kerning first=78 second=231 amount=-1 +kerning first=78 second=232 amount=-1 +kerning first=78 second=233 amount=-1 +kerning first=78 second=234 amount=-1 +kerning first=78 second=235 amount=-1 +kerning first=209 second=235 amount=-1 +kerning first=78 second=240 amount=-1 +kerning first=78 second=242 amount=-1 +kerning first=78 second=243 amount=-1 +kerning first=78 second=244 amount=-1 +kerning first=78 second=245 amount=-1 +kerning first=78 second=246 amount=-1 +kerning first=78 second=248 amount=-1 +kerning first=78 second=249 amount=-1 +kerning first=78 second=250 amount=-2 +kerning first=78 second=251 amount=-2 +kerning first=78 second=252 amount=-1 +kerning first=78 second=253 amount=-1 +kerning first=78 second=255 amount=-1 +kerning first=78 second=257 amount=-2 +kerning first=78 second=259 amount=-2 +kerning first=78 second=261 amount=-2 +kerning first=78 second=262 amount=-1 +kerning first=78 second=263 amount=-1 +kerning first=78 second=264 amount=-1 +kerning first=78 second=266 amount=-1 +kerning first=78 second=267 amount=-1 +kerning first=78 second=268 amount=-1 +kerning first=78 second=269 amount=-1 +kerning first=78 second=275 amount=-1 +kerning first=78 second=277 amount=-1 +kerning first=78 second=279 amount=-1 +kerning first=78 second=281 amount=-1 +kerning first=78 second=283 amount=-1 +kerning first=78 second=284 amount=-1 +kerning first=78 second=286 amount=-1 +kerning first=78 second=287 amount=-2 +kerning first=78 second=288 amount=-1 +kerning first=78 second=289 amount=-2 +kerning first=78 second=290 amount=-1 +kerning first=78 second=291 amount=-2 +kerning first=209 second=234 amount=-1 +kerning first=209 second=233 amount=-1 +kerning first=78 second=332 amount=-1 +kerning first=78 second=333 amount=-1 +kerning first=78 second=334 amount=-1 +kerning first=78 second=335 amount=-1 +kerning first=78 second=336 amount=-1 +kerning first=78 second=337 amount=-1 +kerning first=78 second=338 amount=-1 +kerning first=78 second=339 amount=-1 +kerning first=78 second=346 amount=-1 +kerning first=78 second=347 amount=-1 +kerning first=78 second=350 amount=-1 +kerning first=78 second=351 amount=-1 +kerning first=78 second=352 amount=-1 +kerning first=78 second=353 amount=-1 +kerning first=78 second=361 amount=-2 +kerning first=78 second=363 amount=-2 +kerning first=78 second=365 amount=-2 +kerning first=78 second=367 amount=-2 +kerning first=78 second=369 amount=-2 +kerning first=78 second=375 amount=-1 +kerning first=78 second=378 amount=-1 +kerning first=78 second=380 amount=-1 +kerning first=78 second=382 amount=-1 +kerning first=209 second=232 amount=-1 +kerning first=209 second=231 amount=-1 +kerning first=209 second=230 amount=-2 +kerning first=209 second=229 amount=-2 +kerning first=209 second=228 amount=-2 +kerning first=209 second=227 amount=-2 +kerning first=209 second=226 amount=-2 +kerning first=209 second=225 amount=-2 +kerning first=209 second=224 amount=-2 +kerning first=78 second=8249 amount=-3 +kerning first=79 second=44 amount=-2 +kerning first=79 second=45 amount=-1 +kerning first=79 second=46 amount=-2 +kerning first=79 second=65 amount=-3 +kerning first=79 second=66 amount=-1 +kerning first=79 second=68 amount=-1 +kerning first=79 second=69 amount=-1 +kerning first=79 second=70 amount=-1 +kerning first=79 second=72 amount=-1 +kerning first=79 second=73 amount=-1 +kerning first=79 second=74 amount=-1 +kerning first=79 second=75 amount=-1 +kerning first=79 second=76 amount=-1 +kerning first=79 second=77 amount=-1 +kerning first=79 second=78 amount=-1 +kerning first=79 second=80 amount=-1 +kerning first=79 second=82 amount=-1 +kerning first=79 second=83 amount=-1 +kerning first=79 second=84 amount=-1 +kerning first=79 second=85 amount=-1 +kerning first=79 second=86 amount=-1 +kerning first=79 second=87 amount=-1 +kerning first=79 second=89 amount=-1 +kerning first=79 second=90 amount=-1 +kerning first=79 second=97 amount=-1 +kerning first=79 second=103 amount=-1 +kerning first=209 second=216 amount=-1 +kerning first=79 second=106 amount=-1 +kerning first=209 second=214 amount=-1 +kerning first=79 second=120 amount=-1 +kerning first=79 second=122 amount=-1 +kerning first=79 second=171 amount=-1 +kerning first=79 second=192 amount=-3 +kerning first=79 second=193 amount=-3 +kerning first=79 second=194 amount=-3 +kerning first=79 second=196 amount=-3 +kerning first=79 second=197 amount=-3 +kerning first=79 second=198 amount=-3 +kerning first=79 second=200 amount=-1 +kerning first=79 second=201 amount=-1 +kerning first=79 second=202 amount=-1 +kerning first=79 second=203 amount=-1 +kerning first=79 second=204 amount=-1 +kerning first=79 second=205 amount=-1 +kerning first=79 second=206 amount=-1 +kerning first=79 second=207 amount=-1 +kerning first=79 second=209 amount=-1 +kerning first=79 second=217 amount=-1 +kerning first=79 second=218 amount=-1 +kerning first=79 second=219 amount=-1 +kerning first=79 second=220 amount=-1 +kerning first=79 second=221 amount=-1 +kerning first=79 second=224 amount=-1 +kerning first=79 second=225 amount=-1 +kerning first=79 second=226 amount=-1 +kerning first=79 second=227 amount=-1 +kerning first=79 second=228 amount=-1 +kerning first=79 second=229 amount=-1 +kerning first=79 second=230 amount=-1 +kerning first=209 second=213 amount=-1 +kerning first=79 second=256 amount=-3 +kerning first=79 second=257 amount=-1 +kerning first=79 second=259 amount=-1 +kerning first=79 second=260 amount=-3 +kerning first=79 second=261 amount=-1 +kerning first=79 second=270 amount=-1 +kerning first=79 second=274 amount=-1 +kerning first=79 second=278 amount=-1 +kerning first=79 second=280 amount=-1 +kerning first=79 second=282 amount=-1 +kerning first=79 second=287 amount=-1 +kerning first=79 second=289 amount=-1 +kerning first=79 second=291 amount=-1 +kerning first=79 second=296 amount=-1 +kerning first=79 second=298 amount=-1 +kerning first=79 second=302 amount=-1 +kerning first=209 second=212 amount=-1 +kerning first=79 second=304 amount=-1 +kerning first=209 second=211 amount=-1 +kerning first=79 second=310 amount=-1 +kerning first=79 second=313 amount=-1 +kerning first=79 second=315 amount=-1 +kerning first=79 second=317 amount=-1 +kerning first=79 second=323 amount=-1 +kerning first=79 second=325 amount=-1 +kerning first=79 second=327 amount=-1 +kerning first=79 second=330 amount=-1 +kerning first=79 second=344 amount=-1 +kerning first=79 second=346 amount=-1 +kerning first=79 second=350 amount=-1 +kerning first=79 second=352 amount=-1 +kerning first=79 second=354 amount=-1 +kerning first=79 second=356 amount=-1 +kerning first=79 second=362 amount=-1 +kerning first=79 second=364 amount=-1 +kerning first=79 second=366 amount=-1 +kerning first=79 second=368 amount=-1 +kerning first=79 second=370 amount=-1 +kerning first=79 second=374 amount=-1 +kerning first=79 second=377 amount=-1 +kerning first=79 second=378 amount=-1 +kerning first=79 second=379 amount=-1 +kerning first=79 second=380 amount=-1 +kerning first=79 second=381 amount=-1 +kerning first=79 second=382 amount=-1 +kerning first=209 second=210 amount=-1 +kerning first=209 second=199 amount=-1 +kerning first=209 second=171 amount=-3 +kerning first=209 second=122 amount=-1 +kerning first=209 second=121 amount=-1 +kerning first=209 second=119 amount=-1 +kerning first=209 second=118 amount=-1 +kerning first=209 second=117 amount=-2 +kerning first=209 second=115 amount=-1 +kerning first=209 second=113 amount=-1 +kerning first=209 second=112 amount=-1 +kerning first=209 second=111 amount=-1 +kerning first=209 second=103 amount=-2 +kerning first=209 second=101 amount=-1 +kerning first=209 second=100 amount=-1 +kerning first=209 second=99 amount=-1 +kerning first=79 second=8217 amount=-1 +kerning first=79 second=8220 amount=-1 +kerning first=79 second=8221 amount=-1 +kerning first=79 second=8249 amount=-1 +kerning first=80 second=44 amount=-3 +kerning first=80 second=45 amount=-2 +kerning first=80 second=46 amount=-3 +kerning first=80 second=65 amount=-3 +kerning first=80 second=66 amount=-1 +kerning first=80 second=68 amount=-1 +kerning first=80 second=69 amount=-1 +kerning first=80 second=70 amount=-1 +kerning first=80 second=72 amount=-1 +kerning first=80 second=73 amount=-1 +kerning first=80 second=74 amount=-2 +kerning first=80 second=75 amount=-1 +kerning first=80 second=76 amount=-1 +kerning first=80 second=77 amount=-1 +kerning first=80 second=78 amount=-1 +kerning first=80 second=80 amount=-1 +kerning first=80 second=82 amount=-1 +kerning first=80 second=84 amount=-1 +kerning first=80 second=86 amount=-1 +kerning first=80 second=87 amount=-1 +kerning first=80 second=89 amount=-1 +kerning first=209 second=97 amount=-2 +kerning first=80 second=99 amount=-1 +kerning first=80 second=100 amount=-1 +kerning first=80 second=101 amount=-1 +kerning first=80 second=103 amount=-2 +kerning first=80 second=111 amount=-1 +kerning first=80 second=113 amount=-1 +kerning first=80 second=115 amount=-1 +kerning first=209 second=83 amount=-1 +kerning first=80 second=171 amount=-2 +kerning first=80 second=192 amount=-3 +kerning first=80 second=193 amount=-3 +kerning first=80 second=194 amount=-3 +kerning first=80 second=196 amount=-3 +kerning first=80 second=197 amount=-3 +kerning first=80 second=198 amount=-3 +kerning first=80 second=200 amount=-1 +kerning first=80 second=201 amount=-1 +kerning first=80 second=202 amount=-1 +kerning first=80 second=203 amount=-1 +kerning first=80 second=204 amount=-1 +kerning first=80 second=205 amount=-1 +kerning first=80 second=206 amount=-1 +kerning first=80 second=207 amount=-1 +kerning first=80 second=209 amount=-1 +kerning first=80 second=221 amount=-1 +kerning first=209 second=81 amount=-1 +kerning first=209 second=79 amount=-1 +kerning first=209 second=74 amount=-1 +kerning first=209 second=71 amount=-1 +kerning first=209 second=67 amount=-1 +kerning first=209 second=46 amount=-1 +kerning first=209 second=45 amount=-3 +kerning first=80 second=231 amount=-1 +kerning first=80 second=232 amount=-1 +kerning first=80 second=233 amount=-1 +kerning first=80 second=234 amount=-1 +kerning first=80 second=235 amount=-1 +kerning first=80 second=240 amount=-1 +kerning first=80 second=242 amount=-1 +kerning first=80 second=243 amount=-1 +kerning first=80 second=244 amount=-1 +kerning first=80 second=245 amount=-1 +kerning first=80 second=246 amount=-1 +kerning first=80 second=248 amount=-1 +kerning first=80 second=256 amount=-3 +kerning first=209 second=44 amount=-1 +kerning first=208 second=8249 amount=-1 +kerning first=80 second=260 amount=-3 +kerning first=208 second=8221 amount=-1 +kerning first=80 second=263 amount=-1 +kerning first=80 second=267 amount=-1 +kerning first=80 second=269 amount=-1 +kerning first=80 second=270 amount=-1 +kerning first=80 second=274 amount=-1 +kerning first=80 second=275 amount=-1 +kerning first=80 second=277 amount=-1 +kerning first=80 second=278 amount=-1 +kerning first=80 second=279 amount=-1 +kerning first=80 second=280 amount=-1 +kerning first=80 second=281 amount=-1 +kerning first=80 second=282 amount=-1 +kerning first=80 second=283 amount=-1 +kerning first=80 second=287 amount=-2 +kerning first=80 second=289 amount=-2 +kerning first=80 second=291 amount=-2 +kerning first=80 second=296 amount=-1 +kerning first=80 second=298 amount=-1 +kerning first=80 second=302 amount=-1 +kerning first=80 second=304 amount=-1 +kerning first=80 second=310 amount=-1 +kerning first=80 second=313 amount=-1 +kerning first=80 second=315 amount=-1 +kerning first=80 second=317 amount=-1 +kerning first=80 second=323 amount=-1 +kerning first=80 second=325 amount=-1 +kerning first=80 second=327 amount=-1 +kerning first=80 second=330 amount=-1 +kerning first=80 second=333 amount=-1 +kerning first=80 second=335 amount=-1 +kerning first=80 second=337 amount=-1 +kerning first=80 second=339 amount=-1 +kerning first=80 second=344 amount=-1 +kerning first=80 second=347 amount=-1 +kerning first=80 second=351 amount=-1 +kerning first=80 second=353 amount=-1 +kerning first=80 second=354 amount=-1 +kerning first=80 second=356 amount=-1 +kerning first=80 second=374 amount=-1 +kerning first=208 second=8220 amount=-1 +kerning first=208 second=8217 amount=-1 +kerning first=208 second=382 amount=-1 +kerning first=208 second=381 amount=-1 +kerning first=208 second=380 amount=-1 +kerning first=208 second=379 amount=-1 +kerning first=208 second=378 amount=-1 +kerning first=208 second=377 amount=-1 +kerning first=208 second=374 amount=-1 +kerning first=208 second=370 amount=-1 +kerning first=208 second=368 amount=-1 +kerning first=208 second=366 amount=-1 +kerning first=208 second=364 amount=-1 +kerning first=208 second=362 amount=-1 +kerning first=208 second=356 amount=-1 +kerning first=80 second=8249 amount=-2 +kerning first=81 second=44 amount=-2 +kerning first=81 second=45 amount=-1 +kerning first=81 second=46 amount=-2 +kerning first=81 second=65 amount=-3 +kerning first=81 second=66 amount=-1 +kerning first=81 second=68 amount=-1 +kerning first=81 second=69 amount=-1 +kerning first=81 second=70 amount=-1 +kerning first=81 second=72 amount=-1 +kerning first=81 second=73 amount=-1 +kerning first=81 second=74 amount=-1 +kerning first=81 second=75 amount=-1 +kerning first=81 second=76 amount=-1 +kerning first=81 second=77 amount=-1 +kerning first=81 second=78 amount=-1 +kerning first=81 second=80 amount=-1 +kerning first=81 second=82 amount=-1 +kerning first=81 second=83 amount=-1 +kerning first=81 second=84 amount=-1 +kerning first=81 second=85 amount=-1 +kerning first=81 second=86 amount=-1 +kerning first=81 second=87 amount=-1 +kerning first=81 second=89 amount=-1 +kerning first=81 second=90 amount=-1 +kerning first=81 second=97 amount=-1 +kerning first=81 second=103 amount=-1 +kerning first=208 second=354 amount=-1 +kerning first=81 second=106 amount=-1 +kerning first=208 second=352 amount=-1 +kerning first=81 second=120 amount=-1 +kerning first=81 second=122 amount=-1 +kerning first=81 second=171 amount=-1 +kerning first=81 second=192 amount=-3 +kerning first=81 second=193 amount=-3 +kerning first=81 second=194 amount=-3 +kerning first=81 second=196 amount=-3 +kerning first=81 second=197 amount=-3 +kerning first=81 second=198 amount=-3 +kerning first=81 second=200 amount=-1 +kerning first=81 second=201 amount=-1 +kerning first=81 second=202 amount=-1 +kerning first=81 second=203 amount=-1 +kerning first=81 second=204 amount=-1 +kerning first=81 second=205 amount=-1 +kerning first=81 second=206 amount=-1 +kerning first=81 second=207 amount=-1 +kerning first=81 second=209 amount=-1 +kerning first=81 second=217 amount=-1 +kerning first=81 second=218 amount=-1 +kerning first=81 second=219 amount=-1 +kerning first=81 second=220 amount=-1 +kerning first=81 second=221 amount=-1 +kerning first=81 second=224 amount=-1 +kerning first=81 second=225 amount=-1 +kerning first=81 second=226 amount=-1 +kerning first=81 second=227 amount=-1 +kerning first=81 second=228 amount=-1 +kerning first=81 second=229 amount=-1 +kerning first=81 second=230 amount=-1 +kerning first=208 second=350 amount=-1 +kerning first=81 second=256 amount=-3 +kerning first=81 second=257 amount=-1 +kerning first=81 second=259 amount=-1 +kerning first=81 second=260 amount=-3 +kerning first=81 second=261 amount=-1 +kerning first=81 second=270 amount=-1 +kerning first=81 second=274 amount=-1 +kerning first=81 second=278 amount=-1 +kerning first=81 second=280 amount=-1 +kerning first=81 second=282 amount=-1 +kerning first=81 second=287 amount=-1 +kerning first=81 second=289 amount=-1 +kerning first=81 second=291 amount=-1 +kerning first=81 second=296 amount=-1 +kerning first=81 second=298 amount=-1 +kerning first=81 second=302 amount=-1 +kerning first=208 second=346 amount=-1 +kerning first=81 second=304 amount=-1 +kerning first=208 second=344 amount=-1 +kerning first=81 second=310 amount=-1 +kerning first=81 second=313 amount=-1 +kerning first=81 second=315 amount=-1 +kerning first=81 second=317 amount=-1 +kerning first=81 second=323 amount=-1 +kerning first=81 second=325 amount=-1 +kerning first=81 second=327 amount=-1 +kerning first=81 second=330 amount=-1 +kerning first=81 second=344 amount=-1 +kerning first=81 second=346 amount=-1 +kerning first=81 second=350 amount=-1 +kerning first=81 second=352 amount=-1 +kerning first=81 second=354 amount=-1 +kerning first=81 second=356 amount=-1 +kerning first=81 second=362 amount=-1 +kerning first=81 second=364 amount=-1 +kerning first=81 second=366 amount=-1 +kerning first=81 second=368 amount=-1 +kerning first=81 second=370 amount=-1 +kerning first=81 second=374 amount=-1 +kerning first=81 second=377 amount=-1 +kerning first=81 second=378 amount=-1 +kerning first=81 second=379 amount=-1 +kerning first=81 second=380 amount=-1 +kerning first=81 second=381 amount=-1 +kerning first=81 second=382 amount=-1 +kerning first=208 second=330 amount=-1 +kerning first=208 second=327 amount=-1 +kerning first=208 second=325 amount=-1 +kerning first=208 second=323 amount=-1 +kerning first=208 second=317 amount=-1 +kerning first=208 second=315 amount=-1 +kerning first=208 second=313 amount=-1 +kerning first=208 second=310 amount=-1 +kerning first=208 second=304 amount=-1 +kerning first=208 second=302 amount=-1 +kerning first=208 second=298 amount=-1 +kerning first=208 second=296 amount=-1 +kerning first=208 second=291 amount=-1 +kerning first=208 second=289 amount=-1 +kerning first=208 second=287 amount=-1 +kerning first=208 second=282 amount=-1 +kerning first=81 second=8217 amount=-1 +kerning first=81 second=8220 amount=-1 +kerning first=81 second=8221 amount=-1 +kerning first=81 second=8249 amount=-1 +kerning first=82 second=44 amount=-1 +kerning first=82 second=45 amount=-3 +kerning first=82 second=46 amount=-1 +kerning first=82 second=67 amount=-2 +kerning first=82 second=71 amount=-2 +kerning first=82 second=79 amount=-2 +kerning first=82 second=81 amount=-2 +kerning first=82 second=83 amount=-2 +kerning first=82 second=84 amount=-2 +kerning first=82 second=85 amount=-2 +kerning first=82 second=86 amount=-2 +kerning first=82 second=87 amount=-2 +kerning first=82 second=89 amount=-2 +kerning first=82 second=97 amount=-1 +kerning first=82 second=98 amount=-2 +kerning first=82 second=99 amount=-2 +kerning first=82 second=100 amount=-2 +kerning first=82 second=101 amount=-2 +kerning first=82 second=103 amount=-2 +kerning first=82 second=104 amount=-2 +kerning first=208 second=280 amount=-1 +kerning first=82 second=106 amount=-1 +kerning first=82 second=107 amount=-2 +kerning first=82 second=108 amount=-2 +kerning first=82 second=111 amount=-2 +kerning first=82 second=112 amount=-1 +kerning first=82 second=113 amount=-2 +kerning first=82 second=115 amount=-1 +kerning first=82 second=116 amount=-2 +kerning first=82 second=117 amount=-1 +kerning first=82 second=118 amount=-2 +kerning first=82 second=119 amount=-2 +kerning first=82 second=121 amount=-2 +kerning first=82 second=171 amount=-3 +kerning first=82 second=199 amount=-2 +kerning first=82 second=210 amount=-2 +kerning first=82 second=211 amount=-2 +kerning first=82 second=212 amount=-2 +kerning first=82 second=213 amount=-2 +kerning first=82 second=214 amount=-2 +kerning first=82 second=216 amount=-2 +kerning first=82 second=217 amount=-2 +kerning first=82 second=218 amount=-2 +kerning first=82 second=219 amount=-2 +kerning first=82 second=220 amount=-2 +kerning first=82 second=221 amount=-2 +kerning first=82 second=224 amount=-1 +kerning first=82 second=225 amount=-1 +kerning first=82 second=226 amount=-1 +kerning first=82 second=227 amount=-1 +kerning first=82 second=228 amount=-1 +kerning first=82 second=229 amount=-1 +kerning first=82 second=230 amount=-1 +kerning first=82 second=231 amount=-2 +kerning first=82 second=232 amount=-2 +kerning first=82 second=233 amount=-2 +kerning first=82 second=234 amount=-2 +kerning first=82 second=235 amount=-2 +kerning first=208 second=278 amount=-1 +kerning first=82 second=240 amount=-2 +kerning first=82 second=242 amount=-2 +kerning first=82 second=243 amount=-2 +kerning first=82 second=244 amount=-2 +kerning first=82 second=245 amount=-2 +kerning first=82 second=246 amount=-2 +kerning first=82 second=248 amount=-2 +kerning first=82 second=249 amount=-1 +kerning first=82 second=250 amount=-1 +kerning first=82 second=251 amount=-1 +kerning first=82 second=252 amount=-1 +kerning first=82 second=253 amount=-2 +kerning first=82 second=254 amount=-2 +kerning first=82 second=255 amount=-2 +kerning first=82 second=257 amount=-1 +kerning first=82 second=259 amount=-1 +kerning first=82 second=261 amount=-1 +kerning first=82 second=262 amount=-2 +kerning first=82 second=263 amount=-2 +kerning first=82 second=264 amount=-2 +kerning first=82 second=266 amount=-2 +kerning first=82 second=267 amount=-2 +kerning first=82 second=268 amount=-2 +kerning first=82 second=269 amount=-2 +kerning first=82 second=275 amount=-2 +kerning first=82 second=277 amount=-2 +kerning first=82 second=279 amount=-2 +kerning first=82 second=281 amount=-2 +kerning first=82 second=283 amount=-2 +kerning first=82 second=284 amount=-2 +kerning first=82 second=286 amount=-2 +kerning first=82 second=287 amount=-2 +kerning first=82 second=288 amount=-2 +kerning first=82 second=289 amount=-2 +kerning first=82 second=290 amount=-2 +kerning first=82 second=291 amount=-2 +kerning first=208 second=274 amount=-1 +kerning first=208 second=270 amount=-1 +kerning first=82 second=311 amount=-2 +kerning first=82 second=314 amount=-2 +kerning first=82 second=316 amount=-2 +kerning first=82 second=318 amount=-2 +kerning first=82 second=332 amount=-2 +kerning first=82 second=333 amount=-2 +kerning first=82 second=334 amount=-2 +kerning first=82 second=335 amount=-2 +kerning first=82 second=336 amount=-2 +kerning first=82 second=337 amount=-2 +kerning first=82 second=338 amount=-2 +kerning first=82 second=339 amount=-2 +kerning first=82 second=346 amount=-2 +kerning first=82 second=347 amount=-1 +kerning first=82 second=350 amount=-2 +kerning first=82 second=351 amount=-1 +kerning first=82 second=352 amount=-2 +kerning first=82 second=353 amount=-1 +kerning first=82 second=354 amount=-2 +kerning first=82 second=355 amount=-2 +kerning first=82 second=356 amount=-2 +kerning first=82 second=361 amount=-1 +kerning first=82 second=362 amount=-2 +kerning first=82 second=363 amount=-1 +kerning first=82 second=364 amount=-2 +kerning first=82 second=365 amount=-1 +kerning first=82 second=366 amount=-2 +kerning first=82 second=367 amount=-1 +kerning first=82 second=368 amount=-2 +kerning first=82 second=369 amount=-1 +kerning first=82 second=370 amount=-2 +kerning first=82 second=374 amount=-2 +kerning first=82 second=375 amount=-2 +kerning first=208 second=261 amount=-1 +kerning first=208 second=260 amount=-3 +kerning first=208 second=259 amount=-1 +kerning first=208 second=257 amount=-1 +kerning first=208 second=256 amount=-3 +kerning first=208 second=230 amount=-1 +kerning first=208 second=229 amount=-1 +kerning first=208 second=228 amount=-1 +kerning first=208 second=227 amount=-1 +kerning first=208 second=226 amount=-1 +kerning first=208 second=225 amount=-1 +kerning first=208 second=224 amount=-1 +kerning first=208 second=221 amount=-1 +kerning first=208 second=220 amount=-1 +kerning first=82 second=8217 amount=-4 +kerning first=82 second=8220 amount=-4 +kerning first=82 second=8221 amount=-4 +kerning first=82 second=8249 amount=-3 +kerning first=83 second=44 amount=-3 +kerning first=83 second=45 amount=-2 +kerning first=83 second=46 amount=-3 +kerning first=83 second=65 amount=-3 +kerning first=83 second=66 amount=-2 +kerning first=83 second=68 amount=-2 +kerning first=83 second=69 amount=-2 +kerning first=83 second=70 amount=-2 +kerning first=83 second=72 amount=-2 +kerning first=83 second=73 amount=-2 +kerning first=83 second=74 amount=-1 +kerning first=83 second=75 amount=-2 +kerning first=83 second=76 amount=-2 +kerning first=83 second=77 amount=-2 +kerning first=83 second=78 amount=-2 +kerning first=83 second=80 amount=-2 +kerning first=83 second=82 amount=-2 +kerning first=83 second=83 amount=-1 +kerning first=83 second=84 amount=-2 +kerning first=83 second=85 amount=-2 +kerning first=83 second=86 amount=-2 +kerning first=83 second=87 amount=-2 +kerning first=83 second=89 amount=-2 +kerning first=83 second=90 amount=-1 +kerning first=83 second=97 amount=-1 +kerning first=83 second=98 amount=-1 +kerning first=208 second=219 amount=-1 +kerning first=208 second=218 amount=-1 +kerning first=208 second=217 amount=-1 +kerning first=83 second=102 amount=-2 +kerning first=83 second=103 amount=-2 +kerning first=83 second=104 amount=-1 +kerning first=83 second=105 amount=-2 +kerning first=83 second=106 amount=-1 +kerning first=83 second=107 amount=-1 +kerning first=83 second=108 amount=-1 +kerning first=83 second=109 amount=-1 +kerning first=83 second=110 amount=-1 +kerning first=208 second=209 amount=-1 +kerning first=83 second=112 amount=-2 +kerning first=208 second=207 amount=-1 +kerning first=83 second=114 amount=-1 +kerning first=83 second=115 amount=-1 +kerning first=83 second=116 amount=-1 +kerning first=83 second=117 amount=-1 +kerning first=83 second=118 amount=-2 +kerning first=83 second=119 amount=-2 +kerning first=83 second=120 amount=-2 +kerning first=83 second=121 amount=-1 +kerning first=83 second=122 amount=-1 +kerning first=83 second=171 amount=-2 +kerning first=83 second=187 amount=-1 +kerning first=83 second=192 amount=-3 +kerning first=83 second=193 amount=-3 +kerning first=83 second=194 amount=-3 +kerning first=83 second=196 amount=-3 +kerning first=83 second=197 amount=-3 +kerning first=83 second=198 amount=-3 +kerning first=83 second=200 amount=-2 +kerning first=83 second=201 amount=-2 +kerning first=83 second=202 amount=-2 +kerning first=83 second=203 amount=-2 +kerning first=83 second=204 amount=-2 +kerning first=83 second=205 amount=-2 +kerning first=83 second=206 amount=-2 +kerning first=83 second=207 amount=-2 +kerning first=83 second=209 amount=-2 +kerning first=83 second=217 amount=-2 +kerning first=83 second=218 amount=-2 +kerning first=83 second=219 amount=-2 +kerning first=83 second=220 amount=-2 +kerning first=83 second=221 amount=-2 +kerning first=83 second=223 amount=-1 +kerning first=83 second=224 amount=-1 +kerning first=83 second=225 amount=-1 +kerning first=83 second=226 amount=-1 +kerning first=83 second=227 amount=-1 +kerning first=83 second=228 amount=-1 +kerning first=83 second=229 amount=-1 +kerning first=83 second=230 amount=-1 +kerning first=208 second=206 amount=-1 +kerning first=208 second=205 amount=-1 +kerning first=208 second=204 amount=-1 +kerning first=208 second=203 amount=-1 +kerning first=208 second=202 amount=-1 +kerning first=83 second=237 amount=-2 +kerning first=208 second=201 amount=-1 +kerning first=83 second=241 amount=-1 +kerning first=208 second=200 amount=-1 +kerning first=208 second=198 amount=-3 +kerning first=208 second=197 amount=-3 +kerning first=208 second=196 amount=-3 +kerning first=208 second=194 amount=-3 +kerning first=208 second=193 amount=-3 +kerning first=83 second=249 amount=-1 +kerning first=83 second=250 amount=-1 +kerning first=83 second=251 amount=-1 +kerning first=83 second=252 amount=-1 +kerning first=83 second=253 amount=-1 +kerning first=83 second=254 amount=-1 +kerning first=83 second=255 amount=-1 +kerning first=83 second=256 amount=-3 +kerning first=83 second=257 amount=-1 +kerning first=83 second=259 amount=-1 +kerning first=83 second=260 amount=-3 +kerning first=83 second=261 amount=-1 +kerning first=208 second=192 amount=-3 +kerning first=208 second=171 amount=-1 +kerning first=208 second=122 amount=-1 +kerning first=83 second=270 amount=-2 +kerning first=83 second=274 amount=-2 +kerning first=208 second=120 amount=-1 +kerning first=208 second=106 amount=-1 +kerning first=83 second=278 amount=-2 +kerning first=208 second=103 amount=-1 +kerning first=83 second=280 amount=-2 +kerning first=208 second=97 amount=-1 +kerning first=83 second=282 amount=-2 +kerning first=208 second=90 amount=-1 +kerning first=83 second=287 amount=-2 +kerning first=83 second=289 amount=-2 +kerning first=83 second=291 amount=-2 +kerning first=83 second=296 amount=-2 +kerning first=83 second=298 amount=-2 +kerning first=83 second=302 amount=-2 +kerning first=83 second=303 amount=-2 +kerning first=83 second=304 amount=-2 +kerning first=83 second=305 amount=-2 +kerning first=83 second=310 amount=-2 +kerning first=83 second=311 amount=-1 +kerning first=83 second=313 amount=-2 +kerning first=83 second=314 amount=-1 +kerning first=83 second=315 amount=-2 +kerning first=83 second=316 amount=-1 +kerning first=83 second=317 amount=-2 +kerning first=83 second=318 amount=-1 +kerning first=83 second=323 amount=-2 +kerning first=83 second=324 amount=-1 +kerning first=83 second=325 amount=-2 +kerning first=83 second=326 amount=-1 +kerning first=83 second=327 amount=-2 +kerning first=83 second=328 amount=-1 +kerning first=83 second=330 amount=-2 +kerning first=83 second=331 amount=-1 +kerning first=208 second=89 amount=-1 +kerning first=208 second=87 amount=-1 +kerning first=208 second=86 amount=-1 +kerning first=208 second=85 amount=-1 +kerning first=83 second=344 amount=-2 +kerning first=83 second=345 amount=-1 +kerning first=83 second=346 amount=-1 +kerning first=83 second=347 amount=-1 +kerning first=83 second=350 amount=-1 +kerning first=83 second=351 amount=-1 +kerning first=83 second=352 amount=-1 +kerning first=83 second=353 amount=-1 +kerning first=83 second=354 amount=-2 +kerning first=83 second=355 amount=-1 +kerning first=83 second=356 amount=-2 +kerning first=83 second=361 amount=-1 +kerning first=83 second=362 amount=-2 +kerning first=83 second=363 amount=-1 +kerning first=83 second=364 amount=-2 +kerning first=83 second=365 amount=-1 +kerning first=83 second=366 amount=-2 +kerning first=83 second=367 amount=-1 +kerning first=83 second=368 amount=-2 +kerning first=83 second=369 amount=-1 +kerning first=83 second=370 amount=-2 +kerning first=83 second=374 amount=-2 +kerning first=83 second=375 amount=-1 +kerning first=83 second=377 amount=-1 +kerning first=83 second=378 amount=-1 +kerning first=83 second=379 amount=-1 +kerning first=83 second=380 amount=-1 +kerning first=83 second=381 amount=-1 +kerning first=83 second=382 amount=-1 +kerning first=208 second=84 amount=-1 +kerning first=208 second=83 amount=-1 +kerning first=208 second=82 amount=-1 +kerning first=208 second=80 amount=-1 +kerning first=208 second=78 amount=-1 +kerning first=208 second=77 amount=-1 +kerning first=208 second=76 amount=-1 +kerning first=208 second=75 amount=-1 +kerning first=208 second=74 amount=-1 +kerning first=208 second=73 amount=-1 +kerning first=208 second=72 amount=-1 +kerning first=208 second=70 amount=-1 +kerning first=208 second=69 amount=-1 +kerning first=208 second=68 amount=-1 +kerning first=208 second=66 amount=-1 +kerning first=208 second=65 amount=-3 +kerning first=208 second=46 amount=-2 +kerning first=208 second=45 amount=-1 +kerning first=208 second=44 amount=-2 +kerning first=207 second=382 amount=-1 +kerning first=207 second=380 amount=-1 +kerning first=207 second=378 amount=-1 +kerning first=207 second=375 amount=-1 +kerning first=207 second=369 amount=-2 +kerning first=207 second=367 amount=-2 +kerning first=207 second=365 amount=-2 +kerning first=83 second=8217 amount=-1 +kerning first=83 second=8220 amount=-1 +kerning first=83 second=8221 amount=-1 +kerning first=83 second=8249 amount=-2 +kerning first=83 second=8250 amount=-1 +kerning first=207 second=363 amount=-2 +kerning first=207 second=361 amount=-2 +kerning first=207 second=353 amount=-1 +kerning first=207 second=352 amount=-1 +kerning first=207 second=351 amount=-1 +kerning first=84 second=44 amount=-4 +kerning first=84 second=45 amount=-4 +kerning first=84 second=46 amount=-4 +kerning first=84 second=65 amount=-5 +kerning first=84 second=66 amount=-1 +kerning first=84 second=67 amount=-2 +kerning first=84 second=68 amount=-1 +kerning first=84 second=69 amount=-1 +kerning first=84 second=70 amount=-1 +kerning first=84 second=71 amount=-2 +kerning first=84 second=72 amount=-1 +kerning first=84 second=73 amount=-1 +kerning first=84 second=74 amount=-3 +kerning first=84 second=75 amount=-1 +kerning first=84 second=76 amount=-1 +kerning first=84 second=77 amount=-1 +kerning first=84 second=78 amount=-1 +kerning first=84 second=79 amount=-2 +kerning first=84 second=80 amount=-1 +kerning first=84 second=81 amount=-2 +kerning first=84 second=82 amount=-1 +kerning first=84 second=83 amount=-2 +kerning first=84 second=85 amount=-1 +kerning first=84 second=90 amount=-2 +kerning first=84 second=97 amount=-4 +kerning first=84 second=99 amount=-2 +kerning first=84 second=100 amount=-2 +kerning first=84 second=101 amount=-2 +kerning first=84 second=102 amount=-1 +kerning first=84 second=103 amount=-3 +kerning first=84 second=105 amount=-1 +kerning first=84 second=109 amount=-2 +kerning first=84 second=110 amount=-2 +kerning first=84 second=111 amount=-2 +kerning first=84 second=112 amount=-1 +kerning first=84 second=113 amount=-2 +kerning first=84 second=114 amount=-1 +kerning first=84 second=115 amount=-2 +kerning first=84 second=116 amount=-1 +kerning first=84 second=117 amount=-1 +kerning first=84 second=118 amount=-2 +kerning first=84 second=119 amount=-2 +kerning first=84 second=120 amount=-1 +kerning first=84 second=121 amount=-2 +kerning first=84 second=122 amount=-2 +kerning first=84 second=171 amount=-4 +kerning first=84 second=187 amount=-2 +kerning first=84 second=192 amount=-5 +kerning first=84 second=193 amount=-5 +kerning first=84 second=194 amount=-5 +kerning first=84 second=196 amount=-5 +kerning first=84 second=197 amount=-5 +kerning first=84 second=198 amount=-5 +kerning first=84 second=199 amount=-2 +kerning first=84 second=200 amount=-1 +kerning first=84 second=201 amount=-1 +kerning first=84 second=202 amount=-1 +kerning first=84 second=203 amount=-1 +kerning first=84 second=204 amount=-1 +kerning first=84 second=205 amount=-1 +kerning first=84 second=206 amount=-1 +kerning first=84 second=207 amount=-1 +kerning first=84 second=209 amount=-1 +kerning first=84 second=210 amount=-2 +kerning first=84 second=211 amount=-2 +kerning first=84 second=212 amount=-2 +kerning first=84 second=213 amount=-2 +kerning first=84 second=214 amount=-2 +kerning first=84 second=216 amount=-2 +kerning first=84 second=217 amount=-1 +kerning first=84 second=218 amount=-1 +kerning first=84 second=219 amount=-1 +kerning first=84 second=220 amount=-1 +kerning first=84 second=223 amount=-2 +kerning first=84 second=224 amount=-3 +kerning first=84 second=225 amount=-4 +kerning first=84 second=226 amount=-4 +kerning first=84 second=227 amount=-4 +kerning first=84 second=228 amount=-3 +kerning first=84 second=229 amount=-4 +kerning first=84 second=230 amount=-4 +kerning first=84 second=231 amount=-2 +kerning first=84 second=232 amount=-2 +kerning first=84 second=233 amount=-2 +kerning first=84 second=234 amount=-2 +kerning first=84 second=235 amount=-2 +kerning first=84 second=237 amount=-1 +kerning first=84 second=240 amount=-2 +kerning first=84 second=241 amount=-2 +kerning first=84 second=242 amount=-2 +kerning first=84 second=243 amount=-2 +kerning first=84 second=244 amount=-2 +kerning first=84 second=245 amount=-2 +kerning first=84 second=246 amount=-2 +kerning first=84 second=248 amount=-2 +kerning first=84 second=249 amount=-1 +kerning first=84 second=250 amount=-1 +kerning first=84 second=251 amount=-1 +kerning first=84 second=252 amount=-1 +kerning first=84 second=253 amount=-2 +kerning first=84 second=255 amount=-2 +kerning first=84 second=256 amount=-5 +kerning first=84 second=257 amount=-4 +kerning first=84 second=259 amount=-4 +kerning first=84 second=260 amount=-5 +kerning first=84 second=261 amount=-4 +kerning first=84 second=262 amount=-2 +kerning first=84 second=263 amount=-2 +kerning first=84 second=264 amount=-2 +kerning first=84 second=266 amount=-2 +kerning first=84 second=267 amount=-2 +kerning first=84 second=268 amount=-2 +kerning first=84 second=269 amount=-2 +kerning first=84 second=270 amount=-1 +kerning first=84 second=274 amount=-1 +kerning first=84 second=275 amount=-2 +kerning first=84 second=277 amount=-2 +kerning first=84 second=278 amount=-1 +kerning first=84 second=279 amount=-2 +kerning first=84 second=280 amount=-1 +kerning first=84 second=281 amount=-2 +kerning first=84 second=282 amount=-1 +kerning first=84 second=283 amount=-2 +kerning first=84 second=284 amount=-2 +kerning first=84 second=286 amount=-2 +kerning first=84 second=287 amount=-3 +kerning first=84 second=288 amount=-2 +kerning first=84 second=289 amount=-3 +kerning first=84 second=290 amount=-2 +kerning first=84 second=291 amount=-3 +kerning first=84 second=296 amount=-1 +kerning first=84 second=298 amount=-1 +kerning first=84 second=302 amount=-1 +kerning first=84 second=303 amount=-1 +kerning first=84 second=304 amount=-1 +kerning first=84 second=305 amount=-1 +kerning first=84 second=310 amount=-1 +kerning first=84 second=313 amount=-1 +kerning first=84 second=315 amount=-1 +kerning first=84 second=317 amount=-1 +kerning first=84 second=323 amount=-1 +kerning first=84 second=324 amount=-2 +kerning first=84 second=325 amount=-1 +kerning first=84 second=326 amount=-2 +kerning first=84 second=327 amount=-1 +kerning first=84 second=328 amount=-2 +kerning first=84 second=330 amount=-1 +kerning first=84 second=331 amount=-2 +kerning first=84 second=332 amount=-2 +kerning first=84 second=333 amount=-2 +kerning first=84 second=334 amount=-2 +kerning first=84 second=335 amount=-2 +kerning first=84 second=336 amount=-2 +kerning first=84 second=337 amount=-2 +kerning first=84 second=338 amount=-2 +kerning first=84 second=339 amount=-2 +kerning first=84 second=344 amount=-1 +kerning first=84 second=345 amount=-1 +kerning first=84 second=346 amount=-2 +kerning first=84 second=347 amount=-2 +kerning first=84 second=350 amount=-2 +kerning first=84 second=351 amount=-2 +kerning first=84 second=352 amount=-2 +kerning first=84 second=353 amount=-2 +kerning first=84 second=355 amount=-1 +kerning first=84 second=361 amount=-1 +kerning first=84 second=362 amount=-1 +kerning first=84 second=363 amount=-1 +kerning first=84 second=364 amount=-1 +kerning first=84 second=365 amount=-1 +kerning first=84 second=366 amount=-1 +kerning first=84 second=367 amount=-1 +kerning first=84 second=368 amount=-1 +kerning first=84 second=369 amount=-1 +kerning first=84 second=370 amount=-1 +kerning first=84 second=375 amount=-2 +kerning first=84 second=377 amount=-2 +kerning first=84 second=378 amount=-2 +kerning first=84 second=379 amount=-2 +kerning first=84 second=380 amount=-2 +kerning first=84 second=381 amount=-2 +kerning first=84 second=382 amount=-2 +kerning first=207 second=350 amount=-1 +kerning first=207 second=347 amount=-1 +kerning first=207 second=346 amount=-1 +kerning first=207 second=339 amount=-1 +kerning first=207 second=338 amount=-1 +kerning first=207 second=337 amount=-1 +kerning first=207 second=336 amount=-1 +kerning first=207 second=335 amount=-1 +kerning first=207 second=334 amount=-1 +kerning first=207 second=333 amount=-1 +kerning first=207 second=332 amount=-1 +kerning first=207 second=291 amount=-2 +kerning first=207 second=290 amount=-1 +kerning first=207 second=289 amount=-2 +kerning first=207 second=288 amount=-1 +kerning first=207 second=287 amount=-2 +kerning first=207 second=286 amount=-1 +kerning first=207 second=284 amount=-1 +kerning first=207 second=283 amount=-1 +kerning first=207 second=281 amount=-1 +kerning first=207 second=279 amount=-1 +kerning first=84 second=8249 amount=-4 +kerning first=84 second=8250 amount=-2 +kerning first=207 second=277 amount=-1 +kerning first=207 second=275 amount=-1 +kerning first=207 second=269 amount=-1 +kerning first=207 second=268 amount=-1 +kerning first=207 second=267 amount=-1 +kerning first=85 second=44 amount=-4 +kerning first=85 second=45 amount=-4 +kerning first=85 second=46 amount=-4 +kerning first=85 second=65 amount=-3 +kerning first=85 second=67 amount=-1 +kerning first=85 second=71 amount=-1 +kerning first=85 second=74 amount=-2 +kerning first=85 second=79 amount=-1 +kerning first=85 second=81 amount=-1 +kerning first=85 second=83 amount=-2 +kerning first=85 second=90 amount=-1 +kerning first=85 second=97 amount=-2 +kerning first=85 second=99 amount=-1 +kerning first=85 second=100 amount=-1 +kerning first=85 second=101 amount=-1 +kerning first=85 second=102 amount=-1 +kerning first=85 second=103 amount=-3 +kerning first=85 second=105 amount=-1 +kerning first=85 second=109 amount=-1 +kerning first=85 second=110 amount=-1 +kerning first=85 second=111 amount=-1 +kerning first=85 second=112 amount=-1 +kerning first=85 second=113 amount=-1 +kerning first=85 second=114 amount=-1 +kerning first=85 second=115 amount=-1 +kerning first=85 second=117 amount=-1 +kerning first=85 second=118 amount=-1 +kerning first=85 second=119 amount=-1 +kerning first=85 second=120 amount=-1 +kerning first=85 second=121 amount=-1 +kerning first=85 second=122 amount=-2 +kerning first=85 second=171 amount=-4 +kerning first=85 second=192 amount=-3 +kerning first=85 second=193 amount=-3 +kerning first=85 second=194 amount=-3 +kerning first=85 second=196 amount=-3 +kerning first=85 second=197 amount=-3 +kerning first=85 second=198 amount=-3 +kerning first=85 second=199 amount=-1 +kerning first=85 second=210 amount=-1 +kerning first=85 second=211 amount=-1 +kerning first=85 second=212 amount=-1 +kerning first=85 second=213 amount=-1 +kerning first=85 second=214 amount=-1 +kerning first=85 second=216 amount=-1 +kerning first=85 second=223 amount=-1 +kerning first=85 second=224 amount=-2 +kerning first=85 second=225 amount=-2 +kerning first=85 second=226 amount=-2 +kerning first=85 second=227 amount=-2 +kerning first=85 second=228 amount=-2 +kerning first=85 second=229 amount=-2 +kerning first=85 second=230 amount=-2 +kerning first=85 second=231 amount=-1 +kerning first=85 second=232 amount=-1 +kerning first=85 second=233 amount=-1 +kerning first=85 second=234 amount=-1 +kerning first=85 second=235 amount=-1 +kerning first=85 second=237 amount=-1 +kerning first=85 second=240 amount=-1 +kerning first=85 second=241 amount=-1 +kerning first=85 second=242 amount=-1 +kerning first=85 second=243 amount=-1 +kerning first=85 second=244 amount=-1 +kerning first=85 second=245 amount=-1 +kerning first=85 second=246 amount=-1 +kerning first=85 second=248 amount=-1 +kerning first=85 second=249 amount=-1 +kerning first=85 second=250 amount=-1 +kerning first=85 second=251 amount=-1 +kerning first=85 second=252 amount=-1 +kerning first=85 second=253 amount=-1 +kerning first=85 second=255 amount=-1 +kerning first=85 second=256 amount=-3 +kerning first=85 second=257 amount=-2 +kerning first=85 second=259 amount=-2 +kerning first=85 second=260 amount=-3 +kerning first=85 second=261 amount=-2 +kerning first=85 second=262 amount=-1 +kerning first=85 second=263 amount=-1 +kerning first=85 second=264 amount=-1 +kerning first=85 second=266 amount=-1 +kerning first=85 second=267 amount=-1 +kerning first=85 second=268 amount=-1 +kerning first=85 second=269 amount=-1 +kerning first=85 second=275 amount=-1 +kerning first=85 second=277 amount=-1 +kerning first=85 second=279 amount=-1 +kerning first=85 second=281 amount=-1 +kerning first=85 second=283 amount=-1 +kerning first=85 second=284 amount=-1 +kerning first=85 second=286 amount=-1 +kerning first=85 second=287 amount=-3 +kerning first=85 second=288 amount=-1 +kerning first=85 second=289 amount=-3 +kerning first=85 second=290 amount=-1 +kerning first=85 second=291 amount=-3 +kerning first=85 second=303 amount=-1 +kerning first=85 second=305 amount=-1 +kerning first=85 second=324 amount=-1 +kerning first=85 second=326 amount=-1 +kerning first=85 second=328 amount=-1 +kerning first=85 second=331 amount=-1 +kerning first=85 second=332 amount=-1 +kerning first=85 second=333 amount=-1 +kerning first=85 second=334 amount=-1 +kerning first=85 second=335 amount=-1 +kerning first=85 second=336 amount=-1 +kerning first=85 second=337 amount=-1 +kerning first=85 second=338 amount=-1 +kerning first=85 second=339 amount=-1 +kerning first=85 second=345 amount=-1 +kerning first=85 second=346 amount=-2 +kerning first=85 second=347 amount=-1 +kerning first=85 second=350 amount=-2 +kerning first=85 second=351 amount=-1 +kerning first=85 second=352 amount=-2 +kerning first=85 second=353 amount=-1 +kerning first=85 second=361 amount=-1 +kerning first=85 second=363 amount=-1 +kerning first=85 second=365 amount=-1 +kerning first=85 second=367 amount=-1 +kerning first=85 second=369 amount=-1 +kerning first=85 second=375 amount=-1 +kerning first=85 second=377 amount=-1 +kerning first=85 second=378 amount=-2 +kerning first=85 second=379 amount=-1 +kerning first=85 second=380 amount=-2 +kerning first=85 second=381 amount=-1 +kerning first=85 second=382 amount=-2 +kerning first=207 second=266 amount=-1 +kerning first=207 second=264 amount=-1 +kerning first=207 second=263 amount=-1 +kerning first=207 second=262 amount=-1 +kerning first=207 second=261 amount=-2 +kerning first=207 second=259 amount=-2 +kerning first=207 second=257 amount=-2 +kerning first=207 second=255 amount=-1 +kerning first=207 second=253 amount=-1 +kerning first=207 second=252 amount=-1 +kerning first=207 second=251 amount=-2 +kerning first=85 second=8249 amount=-4 +kerning first=207 second=250 amount=-2 +kerning first=207 second=249 amount=-1 +kerning first=207 second=248 amount=-1 +kerning first=207 second=246 amount=-1 +kerning first=207 second=245 amount=-1 +kerning first=86 second=44 amount=-4 +kerning first=86 second=45 amount=-4 +kerning first=86 second=46 amount=-4 +kerning first=86 second=65 amount=-5 +kerning first=86 second=66 amount=-1 +kerning first=86 second=67 amount=-2 +kerning first=86 second=68 amount=-1 +kerning first=86 second=69 amount=-1 +kerning first=86 second=70 amount=-1 +kerning first=86 second=71 amount=-2 +kerning first=86 second=72 amount=-1 +kerning first=86 second=73 amount=-1 +kerning first=86 second=74 amount=-3 +kerning first=86 second=75 amount=-1 +kerning first=86 second=76 amount=-1 +kerning first=86 second=77 amount=-1 +kerning first=86 second=78 amount=-1 +kerning first=86 second=79 amount=-2 +kerning first=86 second=80 amount=-1 +kerning first=86 second=81 amount=-2 +kerning first=86 second=82 amount=-1 +kerning first=86 second=83 amount=-2 +kerning first=86 second=85 amount=-1 +kerning first=86 second=90 amount=-2 +kerning first=86 second=97 amount=-4 +kerning first=86 second=99 amount=-2 +kerning first=86 second=100 amount=-2 +kerning first=86 second=101 amount=-2 +kerning first=86 second=102 amount=-1 +kerning first=86 second=103 amount=-3 +kerning first=86 second=105 amount=-1 +kerning first=86 second=109 amount=-2 +kerning first=86 second=110 amount=-2 +kerning first=86 second=111 amount=-2 +kerning first=86 second=112 amount=-1 +kerning first=86 second=113 amount=-2 +kerning first=86 second=114 amount=-1 +kerning first=86 second=115 amount=-2 +kerning first=86 second=116 amount=-1 +kerning first=86 second=117 amount=-1 +kerning first=86 second=118 amount=-2 +kerning first=86 second=119 amount=-2 +kerning first=86 second=120 amount=-1 +kerning first=86 second=121 amount=-2 +kerning first=86 second=122 amount=-2 +kerning first=86 second=171 amount=-4 +kerning first=86 second=187 amount=-2 +kerning first=86 second=192 amount=-5 +kerning first=86 second=193 amount=-5 +kerning first=86 second=194 amount=-5 +kerning first=86 second=196 amount=-5 +kerning first=86 second=197 amount=-5 +kerning first=86 second=198 amount=-5 +kerning first=86 second=199 amount=-2 +kerning first=86 second=200 amount=-1 +kerning first=86 second=201 amount=-1 +kerning first=86 second=202 amount=-1 +kerning first=86 second=203 amount=-1 +kerning first=86 second=204 amount=-1 +kerning first=86 second=205 amount=-1 +kerning first=86 second=206 amount=-1 +kerning first=86 second=207 amount=-1 +kerning first=86 second=209 amount=-1 +kerning first=86 second=210 amount=-2 +kerning first=86 second=211 amount=-2 +kerning first=86 second=212 amount=-2 +kerning first=86 second=213 amount=-2 +kerning first=86 second=214 amount=-2 +kerning first=86 second=216 amount=-2 +kerning first=86 second=217 amount=-1 +kerning first=86 second=218 amount=-1 +kerning first=86 second=219 amount=-1 +kerning first=86 second=220 amount=-1 +kerning first=86 second=223 amount=-2 +kerning first=86 second=224 amount=-3 +kerning first=86 second=225 amount=-4 +kerning first=86 second=226 amount=-4 +kerning first=86 second=227 amount=-4 +kerning first=86 second=228 amount=-3 +kerning first=86 second=229 amount=-4 +kerning first=86 second=230 amount=-4 +kerning first=86 second=231 amount=-2 +kerning first=86 second=232 amount=-2 +kerning first=86 second=233 amount=-2 +kerning first=86 second=234 amount=-2 +kerning first=86 second=235 amount=-2 +kerning first=86 second=237 amount=-1 +kerning first=86 second=240 amount=-2 +kerning first=86 second=241 amount=-2 +kerning first=86 second=242 amount=-2 +kerning first=86 second=243 amount=-2 +kerning first=86 second=244 amount=-2 +kerning first=86 second=245 amount=-2 +kerning first=86 second=246 amount=-2 +kerning first=86 second=248 amount=-2 +kerning first=86 second=249 amount=-1 +kerning first=86 second=250 amount=-1 +kerning first=86 second=251 amount=-1 +kerning first=86 second=252 amount=-1 +kerning first=86 second=253 amount=-2 +kerning first=86 second=255 amount=-2 +kerning first=86 second=256 amount=-5 +kerning first=86 second=257 amount=-4 +kerning first=86 second=259 amount=-4 +kerning first=86 second=260 amount=-5 +kerning first=86 second=261 amount=-4 +kerning first=86 second=262 amount=-2 +kerning first=86 second=263 amount=-2 +kerning first=86 second=264 amount=-2 +kerning first=86 second=266 amount=-2 +kerning first=86 second=267 amount=-2 +kerning first=86 second=268 amount=-2 +kerning first=86 second=269 amount=-2 +kerning first=86 second=270 amount=-1 +kerning first=86 second=274 amount=-1 +kerning first=86 second=275 amount=-2 +kerning first=86 second=277 amount=-2 +kerning first=86 second=278 amount=-1 +kerning first=86 second=279 amount=-2 +kerning first=86 second=280 amount=-1 +kerning first=86 second=281 amount=-2 +kerning first=86 second=282 amount=-1 +kerning first=86 second=283 amount=-2 +kerning first=86 second=284 amount=-2 +kerning first=86 second=286 amount=-2 +kerning first=86 second=287 amount=-3 +kerning first=86 second=288 amount=-2 +kerning first=86 second=289 amount=-3 +kerning first=86 second=290 amount=-2 +kerning first=86 second=291 amount=-3 +kerning first=86 second=296 amount=-1 +kerning first=86 second=298 amount=-1 +kerning first=86 second=302 amount=-1 +kerning first=86 second=303 amount=-1 +kerning first=86 second=304 amount=-1 +kerning first=86 second=305 amount=-1 +kerning first=86 second=310 amount=-1 +kerning first=86 second=313 amount=-1 +kerning first=86 second=315 amount=-1 +kerning first=86 second=317 amount=-1 +kerning first=86 second=323 amount=-1 +kerning first=86 second=324 amount=-2 +kerning first=86 second=325 amount=-1 +kerning first=86 second=326 amount=-2 +kerning first=86 second=327 amount=-1 +kerning first=86 second=328 amount=-2 +kerning first=86 second=330 amount=-1 +kerning first=86 second=331 amount=-2 +kerning first=86 second=332 amount=-2 +kerning first=86 second=333 amount=-2 +kerning first=86 second=334 amount=-2 +kerning first=86 second=335 amount=-2 +kerning first=86 second=336 amount=-2 +kerning first=86 second=337 amount=-2 +kerning first=86 second=338 amount=-2 +kerning first=86 second=339 amount=-2 +kerning first=86 second=344 amount=-1 +kerning first=86 second=345 amount=-1 +kerning first=86 second=346 amount=-2 +kerning first=86 second=347 amount=-2 +kerning first=86 second=350 amount=-2 +kerning first=86 second=351 amount=-2 +kerning first=86 second=352 amount=-2 +kerning first=86 second=353 amount=-2 +kerning first=86 second=355 amount=-1 +kerning first=86 second=361 amount=-1 +kerning first=86 second=362 amount=-1 +kerning first=86 second=363 amount=-1 +kerning first=86 second=364 amount=-1 +kerning first=86 second=365 amount=-1 +kerning first=86 second=366 amount=-1 +kerning first=86 second=367 amount=-1 +kerning first=86 second=368 amount=-1 +kerning first=86 second=369 amount=-1 +kerning first=86 second=370 amount=-1 +kerning first=86 second=375 amount=-2 +kerning first=86 second=377 amount=-2 +kerning first=86 second=378 amount=-2 +kerning first=86 second=379 amount=-2 +kerning first=86 second=380 amount=-2 +kerning first=86 second=381 amount=-2 +kerning first=86 second=382 amount=-2 +kerning first=207 second=244 amount=-1 +kerning first=207 second=243 amount=-1 +kerning first=207 second=242 amount=-1 +kerning first=207 second=240 amount=-1 +kerning first=207 second=235 amount=-1 +kerning first=207 second=234 amount=-1 +kerning first=207 second=233 amount=-1 +kerning first=207 second=232 amount=-1 +kerning first=207 second=231 amount=-1 +kerning first=207 second=230 amount=-2 +kerning first=207 second=229 amount=-2 +kerning first=207 second=228 amount=-2 +kerning first=207 second=227 amount=-2 +kerning first=207 second=226 amount=-2 +kerning first=207 second=225 amount=-2 +kerning first=207 second=224 amount=-2 +kerning first=207 second=216 amount=-1 +kerning first=207 second=214 amount=-1 +kerning first=207 second=213 amount=-1 +kerning first=207 second=212 amount=-1 +kerning first=207 second=211 amount=-1 +kerning first=86 second=8249 amount=-4 +kerning first=86 second=8250 amount=-2 +kerning first=207 second=210 amount=-1 +kerning first=207 second=199 amount=-1 +kerning first=207 second=122 amount=-1 +kerning first=207 second=121 amount=-1 +kerning first=207 second=119 amount=-1 +kerning first=87 second=44 amount=-4 +kerning first=87 second=45 amount=-4 +kerning first=87 second=46 amount=-4 +kerning first=87 second=65 amount=-5 +kerning first=87 second=66 amount=-1 +kerning first=87 second=67 amount=-2 +kerning first=87 second=68 amount=-1 +kerning first=87 second=69 amount=-1 +kerning first=87 second=70 amount=-1 +kerning first=87 second=71 amount=-2 +kerning first=87 second=72 amount=-1 +kerning first=87 second=73 amount=-1 +kerning first=87 second=74 amount=-3 +kerning first=87 second=75 amount=-1 +kerning first=87 second=76 amount=-1 +kerning first=87 second=77 amount=-1 +kerning first=87 second=78 amount=-1 +kerning first=87 second=79 amount=-2 +kerning first=87 second=80 amount=-1 +kerning first=87 second=81 amount=-2 +kerning first=87 second=82 amount=-1 +kerning first=87 second=83 amount=-2 +kerning first=87 second=85 amount=-1 +kerning first=87 second=90 amount=-2 +kerning first=87 second=97 amount=-4 +kerning first=87 second=99 amount=-2 +kerning first=87 second=100 amount=-2 +kerning first=87 second=101 amount=-2 +kerning first=87 second=102 amount=-1 +kerning first=87 second=103 amount=-3 +kerning first=87 second=105 amount=-1 +kerning first=87 second=109 amount=-2 +kerning first=87 second=110 amount=-2 +kerning first=87 second=111 amount=-2 +kerning first=87 second=112 amount=-1 +kerning first=87 second=113 amount=-2 +kerning first=87 second=114 amount=-1 +kerning first=87 second=115 amount=-2 +kerning first=87 second=116 amount=-1 +kerning first=87 second=117 amount=-1 +kerning first=87 second=118 amount=-2 +kerning first=87 second=119 amount=-2 +kerning first=87 second=120 amount=-1 +kerning first=87 second=121 amount=-2 +kerning first=87 second=122 amount=-2 +kerning first=87 second=171 amount=-4 +kerning first=87 second=187 amount=-2 +kerning first=87 second=192 amount=-5 +kerning first=87 second=193 amount=-5 +kerning first=87 second=194 amount=-5 +kerning first=87 second=196 amount=-5 +kerning first=87 second=197 amount=-5 +kerning first=87 second=198 amount=-5 +kerning first=87 second=199 amount=-2 +kerning first=87 second=200 amount=-1 +kerning first=87 second=201 amount=-1 +kerning first=87 second=202 amount=-1 +kerning first=87 second=203 amount=-1 +kerning first=87 second=204 amount=-1 +kerning first=87 second=205 amount=-1 +kerning first=87 second=206 amount=-1 +kerning first=87 second=207 amount=-1 +kerning first=87 second=209 amount=-1 +kerning first=87 second=210 amount=-2 +kerning first=87 second=211 amount=-2 +kerning first=87 second=212 amount=-2 +kerning first=87 second=213 amount=-2 +kerning first=87 second=214 amount=-2 +kerning first=87 second=216 amount=-2 +kerning first=87 second=217 amount=-1 +kerning first=87 second=218 amount=-1 +kerning first=87 second=219 amount=-1 +kerning first=87 second=220 amount=-1 +kerning first=87 second=223 amount=-2 +kerning first=87 second=224 amount=-3 +kerning first=87 second=225 amount=-4 +kerning first=87 second=226 amount=-4 +kerning first=87 second=227 amount=-4 +kerning first=87 second=228 amount=-3 +kerning first=87 second=229 amount=-4 +kerning first=87 second=230 amount=-4 +kerning first=87 second=231 amount=-2 +kerning first=87 second=232 amount=-2 +kerning first=87 second=233 amount=-2 +kerning first=87 second=234 amount=-2 +kerning first=87 second=235 amount=-2 +kerning first=87 second=237 amount=-1 +kerning first=87 second=240 amount=-2 +kerning first=87 second=241 amount=-2 +kerning first=87 second=242 amount=-2 +kerning first=87 second=243 amount=-2 +kerning first=87 second=244 amount=-2 +kerning first=87 second=245 amount=-2 +kerning first=87 second=246 amount=-2 +kerning first=87 second=248 amount=-2 +kerning first=87 second=249 amount=-1 +kerning first=87 second=250 amount=-1 +kerning first=87 second=251 amount=-1 +kerning first=87 second=252 amount=-1 +kerning first=87 second=253 amount=-2 +kerning first=87 second=255 amount=-2 +kerning first=87 second=256 amount=-5 +kerning first=87 second=257 amount=-4 +kerning first=87 second=259 amount=-4 +kerning first=87 second=260 amount=-5 +kerning first=87 second=261 amount=-4 +kerning first=87 second=262 amount=-2 +kerning first=87 second=263 amount=-2 +kerning first=87 second=264 amount=-2 +kerning first=87 second=266 amount=-2 +kerning first=87 second=267 amount=-2 +kerning first=87 second=268 amount=-2 +kerning first=87 second=269 amount=-2 +kerning first=87 second=270 amount=-1 +kerning first=87 second=274 amount=-1 +kerning first=87 second=275 amount=-2 +kerning first=87 second=277 amount=-2 +kerning first=87 second=278 amount=-1 +kerning first=87 second=279 amount=-2 +kerning first=87 second=280 amount=-1 +kerning first=87 second=281 amount=-2 +kerning first=87 second=282 amount=-1 +kerning first=87 second=283 amount=-2 +kerning first=87 second=284 amount=-2 +kerning first=87 second=286 amount=-2 +kerning first=87 second=287 amount=-3 +kerning first=87 second=288 amount=-2 +kerning first=87 second=289 amount=-3 +kerning first=87 second=290 amount=-2 +kerning first=87 second=291 amount=-3 +kerning first=87 second=296 amount=-1 +kerning first=87 second=298 amount=-1 +kerning first=87 second=302 amount=-1 +kerning first=87 second=303 amount=-1 +kerning first=87 second=304 amount=-1 +kerning first=87 second=305 amount=-1 +kerning first=87 second=310 amount=-1 +kerning first=87 second=313 amount=-1 +kerning first=87 second=315 amount=-1 +kerning first=87 second=317 amount=-1 +kerning first=87 second=323 amount=-1 +kerning first=87 second=324 amount=-2 +kerning first=87 second=325 amount=-1 +kerning first=87 second=326 amount=-2 +kerning first=87 second=327 amount=-1 +kerning first=87 second=328 amount=-2 +kerning first=87 second=330 amount=-1 +kerning first=87 second=331 amount=-2 +kerning first=87 second=332 amount=-2 +kerning first=87 second=333 amount=-2 +kerning first=87 second=334 amount=-2 +kerning first=87 second=335 amount=-2 +kerning first=87 second=336 amount=-2 +kerning first=87 second=337 amount=-2 +kerning first=87 second=338 amount=-2 +kerning first=87 second=339 amount=-2 +kerning first=87 second=344 amount=-1 +kerning first=87 second=345 amount=-1 +kerning first=87 second=346 amount=-2 +kerning first=87 second=347 amount=-2 +kerning first=87 second=350 amount=-2 +kerning first=87 second=351 amount=-2 +kerning first=87 second=352 amount=-2 +kerning first=87 second=353 amount=-2 +kerning first=87 second=355 amount=-1 +kerning first=87 second=361 amount=-1 +kerning first=87 second=362 amount=-1 +kerning first=87 second=363 amount=-1 +kerning first=87 second=364 amount=-1 +kerning first=87 second=365 amount=-1 +kerning first=87 second=366 amount=-1 +kerning first=87 second=367 amount=-1 +kerning first=87 second=368 amount=-1 +kerning first=87 second=369 amount=-1 +kerning first=87 second=370 amount=-1 +kerning first=87 second=375 amount=-2 +kerning first=87 second=377 amount=-2 +kerning first=87 second=378 amount=-2 +kerning first=87 second=379 amount=-2 +kerning first=87 second=380 amount=-2 +kerning first=87 second=381 amount=-2 +kerning first=87 second=382 amount=-2 +kerning first=207 second=118 amount=-1 +kerning first=207 second=117 amount=-2 +kerning first=207 second=115 amount=-1 +kerning first=207 second=113 amount=-1 +kerning first=207 second=112 amount=-1 +kerning first=207 second=111 amount=-1 +kerning first=207 second=103 amount=-2 +kerning first=207 second=101 amount=-1 +kerning first=207 second=100 amount=-1 +kerning first=207 second=99 amount=-1 +kerning first=207 second=97 amount=-2 +kerning first=207 second=83 amount=-1 +kerning first=207 second=81 amount=-1 +kerning first=207 second=79 amount=-1 +kerning first=207 second=74 amount=-1 +kerning first=207 second=71 amount=-1 +kerning first=207 second=67 amount=-1 +kerning first=206 second=8249 amount=-3 +kerning first=206 second=382 amount=-1 +kerning first=206 second=380 amount=-1 +kerning first=206 second=378 amount=-1 +kerning first=87 second=8249 amount=-4 +kerning first=87 second=8250 amount=-2 +kerning first=206 second=375 amount=-1 +kerning first=206 second=369 amount=-2 +kerning first=206 second=367 amount=-2 +kerning first=206 second=365 amount=-2 +kerning first=206 second=363 amount=-2 +kerning first=88 second=44 amount=-1 +kerning first=88 second=45 amount=-3 +kerning first=88 second=46 amount=-1 +kerning first=88 second=67 amount=-2 +kerning first=88 second=71 amount=-2 +kerning first=88 second=79 amount=-2 +kerning first=88 second=81 amount=-2 +kerning first=88 second=83 amount=-1 +kerning first=88 second=84 amount=-1 +kerning first=88 second=85 amount=-1 +kerning first=88 second=86 amount=-1 +kerning first=88 second=87 amount=-1 +kerning first=88 second=89 amount=-1 +kerning first=88 second=97 amount=-1 +kerning first=88 second=98 amount=-1 +kerning first=88 second=99 amount=-1 +kerning first=88 second=100 amount=-1 +kerning first=88 second=101 amount=-1 +kerning first=88 second=103 amount=-1 +kerning first=88 second=104 amount=-1 +kerning first=88 second=106 amount=-1 +kerning first=88 second=107 amount=-1 +kerning first=88 second=108 amount=-1 +kerning first=88 second=111 amount=-1 +kerning first=88 second=112 amount=-1 +kerning first=88 second=113 amount=-1 +kerning first=206 second=361 amount=-2 +kerning first=88 second=115 amount=-1 +kerning first=88 second=116 amount=-1 +kerning first=88 second=117 amount=-2 +kerning first=88 second=118 amount=-2 +kerning first=88 second=119 amount=-2 +kerning first=88 second=121 amount=-2 +kerning first=88 second=171 amount=-3 +kerning first=88 second=199 amount=-2 +kerning first=88 second=210 amount=-2 +kerning first=88 second=211 amount=-2 +kerning first=88 second=212 amount=-2 +kerning first=88 second=213 amount=-2 +kerning first=88 second=214 amount=-2 +kerning first=88 second=216 amount=-2 +kerning first=88 second=217 amount=-1 +kerning first=88 second=218 amount=-1 +kerning first=88 second=219 amount=-1 +kerning first=88 second=220 amount=-1 +kerning first=88 second=221 amount=-1 +kerning first=88 second=224 amount=-1 +kerning first=88 second=225 amount=-1 +kerning first=88 second=226 amount=-1 +kerning first=88 second=227 amount=-1 +kerning first=88 second=228 amount=-1 +kerning first=88 second=229 amount=-1 +kerning first=88 second=230 amount=-1 +kerning first=88 second=231 amount=-1 +kerning first=88 second=232 amount=-1 +kerning first=88 second=233 amount=-1 +kerning first=88 second=234 amount=-1 +kerning first=88 second=235 amount=-1 +kerning first=88 second=240 amount=-1 +kerning first=88 second=242 amount=-1 +kerning first=88 second=243 amount=-1 +kerning first=88 second=244 amount=-1 +kerning first=88 second=245 amount=-1 +kerning first=88 second=246 amount=-1 +kerning first=88 second=248 amount=-1 +kerning first=88 second=249 amount=-2 +kerning first=88 second=250 amount=-2 +kerning first=88 second=251 amount=-2 +kerning first=88 second=252 amount=-2 +kerning first=88 second=253 amount=-2 +kerning first=88 second=254 amount=-1 +kerning first=88 second=255 amount=-2 +kerning first=88 second=257 amount=-1 +kerning first=88 second=259 amount=-1 +kerning first=88 second=261 amount=-1 +kerning first=88 second=262 amount=-2 +kerning first=88 second=263 amount=-1 +kerning first=88 second=264 amount=-2 +kerning first=88 second=266 amount=-2 +kerning first=88 second=267 amount=-1 +kerning first=88 second=268 amount=-2 +kerning first=88 second=269 amount=-1 +kerning first=88 second=275 amount=-1 +kerning first=88 second=277 amount=-1 +kerning first=88 second=279 amount=-1 +kerning first=88 second=281 amount=-1 +kerning first=88 second=283 amount=-1 +kerning first=88 second=284 amount=-2 +kerning first=88 second=286 amount=-2 +kerning first=88 second=287 amount=-1 +kerning first=88 second=288 amount=-2 +kerning first=88 second=289 amount=-1 +kerning first=88 second=290 amount=-2 +kerning first=88 second=291 amount=-1 +kerning first=88 second=311 amount=-1 +kerning first=88 second=314 amount=-1 +kerning first=88 second=316 amount=-1 +kerning first=88 second=318 amount=-1 +kerning first=88 second=332 amount=-2 +kerning first=88 second=333 amount=-1 +kerning first=88 second=334 amount=-2 +kerning first=88 second=335 amount=-1 +kerning first=88 second=336 amount=-2 +kerning first=88 second=337 amount=-1 +kerning first=88 second=338 amount=-2 +kerning first=88 second=339 amount=-1 +kerning first=206 second=353 amount=-1 +kerning first=88 second=346 amount=-1 +kerning first=88 second=347 amount=-1 +kerning first=88 second=350 amount=-1 +kerning first=88 second=351 amount=-1 +kerning first=88 second=352 amount=-1 +kerning first=88 second=353 amount=-1 +kerning first=88 second=354 amount=-1 +kerning first=88 second=355 amount=-1 +kerning first=88 second=356 amount=-1 +kerning first=88 second=361 amount=-2 +kerning first=88 second=362 amount=-1 +kerning first=88 second=363 amount=-2 +kerning first=88 second=364 amount=-1 +kerning first=88 second=365 amount=-2 +kerning first=88 second=366 amount=-1 +kerning first=88 second=367 amount=-2 +kerning first=88 second=368 amount=-1 +kerning first=88 second=369 amount=-2 +kerning first=88 second=370 amount=-1 +kerning first=88 second=374 amount=-1 +kerning first=88 second=375 amount=-2 +kerning first=206 second=352 amount=-1 +kerning first=206 second=351 amount=-1 +kerning first=206 second=350 amount=-1 +kerning first=206 second=347 amount=-1 +kerning first=206 second=346 amount=-1 +kerning first=206 second=339 amount=-1 +kerning first=206 second=338 amount=-1 +kerning first=206 second=337 amount=-1 +kerning first=206 second=336 amount=-1 +kerning first=206 second=335 amount=-1 +kerning first=206 second=334 amount=-1 +kerning first=206 second=333 amount=-1 +kerning first=206 second=332 amount=-1 +kerning first=206 second=291 amount=-2 +kerning first=88 second=8217 amount=-1 +kerning first=88 second=8220 amount=-1 +kerning first=88 second=8221 amount=-1 +kerning first=88 second=8249 amount=-3 +kerning first=89 second=44 amount=-4 +kerning first=89 second=45 amount=-4 +kerning first=89 second=46 amount=-4 +kerning first=89 second=65 amount=-5 +kerning first=89 second=66 amount=-1 +kerning first=89 second=67 amount=-2 +kerning first=89 second=68 amount=-1 +kerning first=89 second=69 amount=-1 +kerning first=89 second=70 amount=-1 +kerning first=89 second=71 amount=-2 +kerning first=89 second=72 amount=-1 +kerning first=89 second=73 amount=-1 +kerning first=89 second=74 amount=-3 +kerning first=89 second=75 amount=-1 +kerning first=89 second=76 amount=-1 +kerning first=89 second=77 amount=-1 +kerning first=89 second=78 amount=-1 +kerning first=89 second=79 amount=-2 +kerning first=89 second=80 amount=-1 +kerning first=89 second=81 amount=-2 +kerning first=89 second=82 amount=-1 +kerning first=89 second=83 amount=-2 +kerning first=89 second=85 amount=-1 +kerning first=89 second=90 amount=-2 +kerning first=89 second=97 amount=-4 +kerning first=89 second=99 amount=-2 +kerning first=89 second=100 amount=-2 +kerning first=89 second=101 amount=-2 +kerning first=89 second=102 amount=-1 +kerning first=89 second=103 amount=-3 +kerning first=89 second=105 amount=-1 +kerning first=89 second=109 amount=-2 +kerning first=89 second=110 amount=-2 +kerning first=89 second=111 amount=-2 +kerning first=89 second=112 amount=-1 +kerning first=89 second=113 amount=-2 +kerning first=89 second=114 amount=-1 +kerning first=89 second=115 amount=-2 +kerning first=89 second=116 amount=-1 +kerning first=89 second=117 amount=-1 +kerning first=89 second=118 amount=-2 +kerning first=89 second=119 amount=-2 +kerning first=89 second=120 amount=-1 +kerning first=89 second=121 amount=-2 +kerning first=89 second=122 amount=-2 +kerning first=89 second=171 amount=-4 +kerning first=89 second=187 amount=-2 +kerning first=89 second=192 amount=-5 +kerning first=89 second=193 amount=-5 +kerning first=89 second=194 amount=-5 +kerning first=89 second=196 amount=-5 +kerning first=89 second=197 amount=-5 +kerning first=89 second=198 amount=-5 +kerning first=89 second=199 amount=-2 +kerning first=89 second=200 amount=-1 +kerning first=89 second=201 amount=-1 +kerning first=89 second=202 amount=-1 +kerning first=89 second=203 amount=-1 +kerning first=89 second=204 amount=-1 +kerning first=89 second=205 amount=-1 +kerning first=89 second=206 amount=-1 +kerning first=89 second=207 amount=-1 +kerning first=89 second=209 amount=-1 +kerning first=89 second=210 amount=-2 +kerning first=89 second=211 amount=-2 +kerning first=89 second=212 amount=-2 +kerning first=89 second=213 amount=-2 +kerning first=89 second=214 amount=-2 +kerning first=89 second=216 amount=-2 +kerning first=89 second=217 amount=-1 +kerning first=89 second=218 amount=-1 +kerning first=89 second=219 amount=-1 +kerning first=89 second=220 amount=-1 +kerning first=89 second=223 amount=-2 +kerning first=89 second=224 amount=-3 +kerning first=89 second=225 amount=-4 +kerning first=89 second=226 amount=-4 +kerning first=89 second=227 amount=-4 +kerning first=89 second=228 amount=-3 +kerning first=89 second=229 amount=-4 +kerning first=89 second=230 amount=-4 +kerning first=89 second=231 amount=-2 +kerning first=89 second=232 amount=-2 +kerning first=89 second=233 amount=-2 +kerning first=89 second=234 amount=-2 +kerning first=89 second=235 amount=-2 +kerning first=89 second=237 amount=-1 +kerning first=89 second=240 amount=-2 +kerning first=89 second=241 amount=-2 +kerning first=89 second=242 amount=-2 +kerning first=89 second=243 amount=-2 +kerning first=89 second=244 amount=-2 +kerning first=89 second=245 amount=-2 +kerning first=89 second=246 amount=-2 +kerning first=89 second=248 amount=-2 +kerning first=89 second=249 amount=-1 +kerning first=89 second=250 amount=-1 +kerning first=89 second=251 amount=-1 +kerning first=89 second=252 amount=-1 +kerning first=89 second=253 amount=-2 +kerning first=89 second=255 amount=-2 +kerning first=89 second=256 amount=-5 +kerning first=89 second=257 amount=-4 +kerning first=89 second=259 amount=-4 +kerning first=89 second=260 amount=-5 +kerning first=89 second=261 amount=-4 +kerning first=89 second=262 amount=-2 +kerning first=89 second=263 amount=-2 +kerning first=89 second=264 amount=-2 +kerning first=89 second=266 amount=-2 +kerning first=89 second=267 amount=-2 +kerning first=89 second=268 amount=-2 +kerning first=89 second=269 amount=-2 +kerning first=89 second=270 amount=-1 +kerning first=89 second=274 amount=-1 +kerning first=89 second=275 amount=-2 +kerning first=89 second=277 amount=-2 +kerning first=89 second=278 amount=-1 +kerning first=89 second=279 amount=-2 +kerning first=89 second=280 amount=-1 +kerning first=89 second=281 amount=-2 +kerning first=89 second=282 amount=-1 +kerning first=89 second=283 amount=-2 +kerning first=89 second=284 amount=-2 +kerning first=89 second=286 amount=-2 +kerning first=89 second=287 amount=-3 +kerning first=89 second=288 amount=-2 +kerning first=89 second=289 amount=-3 +kerning first=89 second=290 amount=-2 +kerning first=89 second=291 amount=-3 +kerning first=89 second=296 amount=-1 +kerning first=89 second=298 amount=-1 +kerning first=89 second=302 amount=-1 +kerning first=89 second=303 amount=-1 +kerning first=89 second=304 amount=-1 +kerning first=89 second=305 amount=-1 +kerning first=89 second=310 amount=-1 +kerning first=89 second=313 amount=-1 +kerning first=89 second=315 amount=-1 +kerning first=89 second=317 amount=-1 +kerning first=89 second=323 amount=-1 +kerning first=89 second=324 amount=-2 +kerning first=89 second=325 amount=-1 +kerning first=89 second=326 amount=-2 +kerning first=89 second=327 amount=-1 +kerning first=89 second=328 amount=-2 +kerning first=89 second=330 amount=-1 +kerning first=89 second=331 amount=-2 +kerning first=89 second=332 amount=-2 +kerning first=89 second=333 amount=-2 +kerning first=89 second=334 amount=-2 +kerning first=89 second=335 amount=-2 +kerning first=89 second=336 amount=-2 +kerning first=89 second=337 amount=-2 +kerning first=89 second=338 amount=-2 +kerning first=89 second=339 amount=-2 +kerning first=89 second=344 amount=-1 +kerning first=89 second=345 amount=-1 +kerning first=89 second=346 amount=-2 +kerning first=89 second=347 amount=-2 +kerning first=89 second=350 amount=-2 +kerning first=89 second=351 amount=-2 +kerning first=89 second=352 amount=-2 +kerning first=89 second=353 amount=-2 +kerning first=89 second=355 amount=-1 +kerning first=89 second=361 amount=-1 +kerning first=89 second=362 amount=-1 +kerning first=89 second=363 amount=-1 +kerning first=89 second=364 amount=-1 +kerning first=89 second=365 amount=-1 +kerning first=89 second=366 amount=-1 +kerning first=89 second=367 amount=-1 +kerning first=89 second=368 amount=-1 +kerning first=89 second=369 amount=-1 +kerning first=89 second=370 amount=-1 +kerning first=89 second=375 amount=-2 +kerning first=89 second=377 amount=-2 +kerning first=89 second=378 amount=-2 +kerning first=89 second=379 amount=-2 +kerning first=89 second=380 amount=-2 +kerning first=89 second=381 amount=-2 +kerning first=89 second=382 amount=-2 +kerning first=206 second=290 amount=-1 +kerning first=206 second=289 amount=-2 +kerning first=206 second=288 amount=-1 +kerning first=206 second=287 amount=-2 +kerning first=206 second=286 amount=-1 +kerning first=206 second=284 amount=-1 +kerning first=206 second=283 amount=-1 +kerning first=206 second=281 amount=-1 +kerning first=206 second=279 amount=-1 +kerning first=206 second=277 amount=-1 +kerning first=206 second=275 amount=-1 +kerning first=206 second=269 amount=-1 +kerning first=206 second=268 amount=-1 +kerning first=206 second=267 amount=-1 +kerning first=206 second=266 amount=-1 +kerning first=206 second=264 amount=-1 +kerning first=206 second=263 amount=-1 +kerning first=206 second=262 amount=-1 +kerning first=206 second=261 amount=-2 +kerning first=206 second=259 amount=-2 +kerning first=206 second=257 amount=-2 +kerning first=89 second=8249 amount=-4 +kerning first=89 second=8250 amount=-2 +kerning first=206 second=255 amount=-1 +kerning first=206 second=253 amount=-1 +kerning first=206 second=252 amount=-1 +kerning first=206 second=251 amount=-2 +kerning first=206 second=250 amount=-2 +kerning first=206 second=249 amount=-1 +kerning first=90 second=45 amount=-2 +kerning first=206 second=248 amount=-1 +kerning first=90 second=65 amount=-1 +kerning first=90 second=66 amount=-1 +kerning first=90 second=67 amount=-1 +kerning first=90 second=68 amount=-1 +kerning first=90 second=69 amount=-1 +kerning first=90 second=70 amount=-1 +kerning first=90 second=71 amount=-1 +kerning first=90 second=72 amount=-1 +kerning first=90 second=73 amount=-1 +kerning first=90 second=75 amount=-1 +kerning first=90 second=76 amount=-1 +kerning first=90 second=77 amount=-1 +kerning first=90 second=78 amount=-1 +kerning first=90 second=79 amount=-1 +kerning first=90 second=80 amount=-1 +kerning first=90 second=81 amount=-1 +kerning first=90 second=82 amount=-1 +kerning first=90 second=83 amount=-1 +kerning first=90 second=84 amount=-1 +kerning first=90 second=86 amount=-1 +kerning first=90 second=87 amount=-1 +kerning first=90 second=89 amount=-1 +kerning first=90 second=90 amount=-1 +kerning first=90 second=97 amount=-1 +kerning first=90 second=99 amount=-1 +kerning first=90 second=100 amount=-1 +kerning first=90 second=101 amount=-1 +kerning first=90 second=102 amount=-2 +kerning first=90 second=103 amount=-2 +kerning first=90 second=105 amount=-1 +kerning first=90 second=109 amount=-1 +kerning first=90 second=110 amount=-1 +kerning first=90 second=111 amount=-1 +kerning first=90 second=112 amount=-1 +kerning first=90 second=113 amount=-1 +kerning first=90 second=115 amount=-1 +kerning first=90 second=116 amount=-1 +kerning first=90 second=117 amount=-2 +kerning first=90 second=118 amount=-1 +kerning first=90 second=119 amount=-1 +kerning first=90 second=121 amount=-2 +kerning first=90 second=122 amount=-2 +kerning first=90 second=171 amount=-2 +kerning first=90 second=187 amount=-1 +kerning first=90 second=192 amount=-1 +kerning first=90 second=193 amount=-1 +kerning first=90 second=194 amount=-1 +kerning first=90 second=196 amount=-1 +kerning first=90 second=197 amount=-1 +kerning first=90 second=198 amount=-1 +kerning first=90 second=199 amount=-1 +kerning first=90 second=200 amount=-1 +kerning first=90 second=201 amount=-1 +kerning first=90 second=202 amount=-1 +kerning first=90 second=203 amount=-1 +kerning first=90 second=204 amount=-1 +kerning first=90 second=205 amount=-1 +kerning first=90 second=206 amount=-1 +kerning first=90 second=207 amount=-1 +kerning first=90 second=209 amount=-1 +kerning first=90 second=210 amount=-1 +kerning first=90 second=211 amount=-1 +kerning first=90 second=212 amount=-1 +kerning first=90 second=213 amount=-1 +kerning first=90 second=214 amount=-1 +kerning first=90 second=216 amount=-1 +kerning first=90 second=221 amount=-1 +kerning first=90 second=223 amount=-1 +kerning first=90 second=224 amount=-1 +kerning first=90 second=225 amount=-1 +kerning first=90 second=226 amount=-1 +kerning first=90 second=227 amount=-1 +kerning first=90 second=228 amount=-1 +kerning first=90 second=229 amount=-1 +kerning first=90 second=230 amount=-1 +kerning first=90 second=231 amount=-1 +kerning first=90 second=232 amount=-1 +kerning first=90 second=233 amount=-1 +kerning first=90 second=234 amount=-1 +kerning first=90 second=235 amount=-1 +kerning first=90 second=237 amount=-1 +kerning first=90 second=240 amount=-1 +kerning first=90 second=241 amount=-1 +kerning first=90 second=242 amount=-1 +kerning first=90 second=243 amount=-1 +kerning first=90 second=244 amount=-1 +kerning first=90 second=245 amount=-1 +kerning first=90 second=246 amount=-1 +kerning first=90 second=248 amount=-1 +kerning first=90 second=249 amount=-2 +kerning first=90 second=250 amount=-2 +kerning first=90 second=251 amount=-2 +kerning first=90 second=252 amount=-2 +kerning first=90 second=253 amount=-2 +kerning first=90 second=255 amount=-2 +kerning first=90 second=256 amount=-1 +kerning first=90 second=257 amount=-1 +kerning first=90 second=259 amount=-1 +kerning first=90 second=260 amount=-1 +kerning first=90 second=261 amount=-1 +kerning first=90 second=262 amount=-1 +kerning first=90 second=263 amount=-1 +kerning first=90 second=264 amount=-1 +kerning first=90 second=266 amount=-1 +kerning first=90 second=267 amount=-1 +kerning first=90 second=268 amount=-1 +kerning first=90 second=269 amount=-1 +kerning first=90 second=270 amount=-1 +kerning first=90 second=274 amount=-1 +kerning first=90 second=275 amount=-1 +kerning first=90 second=277 amount=-1 +kerning first=90 second=278 amount=-1 +kerning first=90 second=279 amount=-1 +kerning first=90 second=280 amount=-1 +kerning first=90 second=281 amount=-1 +kerning first=90 second=282 amount=-1 +kerning first=90 second=283 amount=-1 +kerning first=90 second=284 amount=-1 +kerning first=90 second=286 amount=-1 +kerning first=90 second=287 amount=-2 +kerning first=90 second=288 amount=-1 +kerning first=90 second=289 amount=-2 +kerning first=90 second=290 amount=-1 +kerning first=90 second=291 amount=-2 +kerning first=90 second=296 amount=-1 +kerning first=90 second=298 amount=-1 +kerning first=90 second=302 amount=-1 +kerning first=90 second=303 amount=-1 +kerning first=90 second=304 amount=-1 +kerning first=90 second=305 amount=-1 +kerning first=90 second=310 amount=-1 +kerning first=90 second=313 amount=-1 +kerning first=90 second=315 amount=-1 +kerning first=90 second=317 amount=-1 +kerning first=90 second=323 amount=-1 +kerning first=90 second=324 amount=-1 +kerning first=90 second=325 amount=-1 +kerning first=90 second=326 amount=-1 +kerning first=90 second=327 amount=-1 +kerning first=90 second=328 amount=-1 +kerning first=90 second=330 amount=-1 +kerning first=90 second=331 amount=-1 +kerning first=90 second=332 amount=-1 +kerning first=90 second=333 amount=-1 +kerning first=90 second=334 amount=-1 +kerning first=90 second=335 amount=-1 +kerning first=90 second=336 amount=-1 +kerning first=90 second=337 amount=-1 +kerning first=90 second=338 amount=-1 +kerning first=90 second=339 amount=-1 +kerning first=90 second=344 amount=-1 +kerning first=90 second=346 amount=-1 +kerning first=90 second=347 amount=-1 +kerning first=90 second=350 amount=-1 +kerning first=90 second=351 amount=-1 +kerning first=90 second=352 amount=-1 +kerning first=90 second=353 amount=-1 +kerning first=90 second=354 amount=-1 +kerning first=90 second=355 amount=-1 +kerning first=90 second=356 amount=-1 +kerning first=90 second=361 amount=-2 +kerning first=90 second=363 amount=-2 +kerning first=90 second=365 amount=-2 +kerning first=90 second=367 amount=-2 +kerning first=90 second=369 amount=-2 +kerning first=90 second=374 amount=-1 +kerning first=90 second=375 amount=-2 +kerning first=90 second=377 amount=-1 +kerning first=90 second=378 amount=-2 +kerning first=90 second=379 amount=-1 +kerning first=90 second=380 amount=-2 +kerning first=90 second=381 amount=-1 +kerning first=90 second=382 amount=-2 +kerning first=206 second=246 amount=-1 +kerning first=206 second=245 amount=-1 +kerning first=206 second=244 amount=-1 +kerning first=206 second=243 amount=-1 +kerning first=206 second=242 amount=-1 +kerning first=206 second=240 amount=-1 +kerning first=206 second=235 amount=-1 +kerning first=206 second=234 amount=-1 +kerning first=206 second=233 amount=-1 +kerning first=206 second=232 amount=-1 +kerning first=206 second=231 amount=-1 +kerning first=206 second=230 amount=-2 +kerning first=206 second=229 amount=-2 +kerning first=206 second=228 amount=-2 +kerning first=206 second=227 amount=-2 +kerning first=206 second=226 amount=-2 +kerning first=206 second=225 amount=-2 +kerning first=206 second=224 amount=-2 +kerning first=206 second=216 amount=-1 +kerning first=206 second=214 amount=-1 +kerning first=206 second=213 amount=-1 +kerning first=206 second=212 amount=-1 +kerning first=206 second=211 amount=-1 +kerning first=90 second=8249 amount=-2 +kerning first=90 second=8250 amount=-1 +kerning first=206 second=210 amount=-1 +kerning first=206 second=199 amount=-1 +kerning first=206 second=171 amount=-3 +kerning first=206 second=122 amount=-1 +kerning first=206 second=121 amount=-1 +kerning first=97 second=44 amount=-1 +kerning first=97 second=45 amount=-1 +kerning first=97 second=46 amount=-1 +kerning first=97 second=97 amount=-1 +kerning first=97 second=98 amount=-1 +kerning first=206 second=119 amount=-1 +kerning first=206 second=118 amount=-1 +kerning first=206 second=117 amount=-2 +kerning first=206 second=115 amount=-1 +kerning first=97 second=103 amount=-1 +kerning first=206 second=113 amount=-1 +kerning first=206 second=112 amount=-1 +kerning first=97 second=106 amount=-1 +kerning first=206 second=111 amount=-1 +kerning first=97 second=108 amount=-1 +kerning first=206 second=103 amount=-2 +kerning first=206 second=101 amount=-1 +kerning first=206 second=100 amount=-1 +kerning first=206 second=99 amount=-1 +kerning first=97 second=115 amount=-1 +kerning first=206 second=97 amount=-2 +kerning first=97 second=117 amount=-1 +kerning first=97 second=118 amount=-2 +kerning first=97 second=119 amount=-2 +kerning first=97 second=120 amount=-1 +kerning first=97 second=121 amount=-2 +kerning first=206 second=83 amount=-1 +kerning first=97 second=171 amount=-1 +kerning first=97 second=224 amount=-1 +kerning first=97 second=225 amount=-1 +kerning first=97 second=226 amount=-1 +kerning first=97 second=227 amount=-1 +kerning first=97 second=228 amount=-1 +kerning first=97 second=229 amount=-1 +kerning first=97 second=230 amount=-1 +kerning first=206 second=81 amount=-1 +kerning first=206 second=79 amount=-1 +kerning first=206 second=74 amount=-1 +kerning first=206 second=71 amount=-1 +kerning first=206 second=67 amount=-1 +kerning first=206 second=46 amount=-1 +kerning first=206 second=45 amount=-3 +kerning first=206 second=44 amount=-1 +kerning first=205 second=382 amount=-1 +kerning first=205 second=380 amount=-1 +kerning first=205 second=378 amount=-1 +kerning first=205 second=375 amount=-1 +kerning first=205 second=369 amount=-2 +kerning first=205 second=367 amount=-2 +kerning first=97 second=249 amount=-1 +kerning first=97 second=250 amount=-1 +kerning first=97 second=251 amount=-1 +kerning first=97 second=252 amount=-1 +kerning first=97 second=253 amount=-2 +kerning first=97 second=254 amount=-1 +kerning first=97 second=255 amount=-2 +kerning first=97 second=257 amount=-1 +kerning first=97 second=259 amount=-1 +kerning first=97 second=261 amount=-1 +kerning first=205 second=365 amount=-2 +kerning first=205 second=363 amount=-2 +kerning first=205 second=361 amount=-2 +kerning first=205 second=353 amount=-1 +kerning first=205 second=352 amount=-1 +kerning first=205 second=351 amount=-1 +kerning first=205 second=350 amount=-1 +kerning first=205 second=347 amount=-1 +kerning first=205 second=346 amount=-1 +kerning first=205 second=339 amount=-1 +kerning first=97 second=287 amount=-1 +kerning first=97 second=289 amount=-1 +kerning first=97 second=291 amount=-1 +kerning first=205 second=338 amount=-1 +kerning first=205 second=337 amount=-1 +kerning first=205 second=336 amount=-1 +kerning first=205 second=335 amount=-1 +kerning first=97 second=314 amount=-1 +kerning first=97 second=316 amount=-1 +kerning first=97 second=318 amount=-1 +kerning first=205 second=334 amount=-1 +kerning first=205 second=333 amount=-1 +kerning first=205 second=332 amount=-1 +kerning first=205 second=291 amount=-2 +kerning first=205 second=290 amount=-1 +kerning first=205 second=289 amount=-2 +kerning first=205 second=288 amount=-1 +kerning first=205 second=287 amount=-2 +kerning first=97 second=347 amount=-1 +kerning first=97 second=351 amount=-1 +kerning first=97 second=353 amount=-1 +kerning first=205 second=286 amount=-1 +kerning first=97 second=361 amount=-1 +kerning first=97 second=363 amount=-1 +kerning first=97 second=365 amount=-1 +kerning first=97 second=367 amount=-1 +kerning first=97 second=369 amount=-1 +kerning first=97 second=371 amount=-1 +kerning first=97 second=375 amount=-2 +kerning first=205 second=284 amount=-1 +kerning first=205 second=283 amount=-1 +kerning first=205 second=281 amount=-1 +kerning first=205 second=279 amount=-1 +kerning first=205 second=277 amount=-1 +kerning first=205 second=275 amount=-1 +kerning first=205 second=269 amount=-1 +kerning first=205 second=268 amount=-1 +kerning first=205 second=267 amount=-1 +kerning first=205 second=266 amount=-1 +kerning first=205 second=264 amount=-1 +kerning first=205 second=263 amount=-1 +kerning first=205 second=262 amount=-1 +kerning first=205 second=261 amount=-2 +kerning first=205 second=259 amount=-2 +kerning first=97 second=8217 amount=-2 +kerning first=97 second=8220 amount=-2 +kerning first=97 second=8221 amount=-2 +kerning first=97 second=8249 amount=-1 +kerning first=205 second=257 amount=-2 +kerning first=205 second=255 amount=-1 +kerning first=205 second=253 amount=-1 +kerning first=205 second=252 amount=-1 +kerning first=205 second=251 amount=-2 +kerning first=98 second=44 amount=-2 +kerning first=98 second=46 amount=-2 +kerning first=98 second=97 amount=-1 +kerning first=205 second=250 amount=-2 +kerning first=98 second=102 amount=-1 +kerning first=98 second=103 amount=-1 +kerning first=98 second=104 amount=-1 +kerning first=98 second=105 amount=-1 +kerning first=98 second=106 amount=-1 +kerning first=98 second=107 amount=-1 +kerning first=98 second=108 amount=-2 +kerning first=98 second=109 amount=-1 +kerning first=98 second=110 amount=-1 +kerning first=98 second=112 amount=-1 +kerning first=205 second=249 amount=-1 +kerning first=98 second=115 amount=-1 +kerning first=205 second=248 amount=-1 +kerning first=205 second=246 amount=-1 +kerning first=98 second=118 amount=-1 +kerning first=98 second=119 amount=-1 +kerning first=98 second=120 amount=-2 +kerning first=98 second=121 amount=-2 +kerning first=98 second=122 amount=-1 +kerning first=98 second=187 amount=-1 +kerning first=205 second=245 amount=-1 +kerning first=98 second=224 amount=-1 +kerning first=98 second=225 amount=-1 +kerning first=98 second=226 amount=-1 +kerning first=98 second=227 amount=-1 +kerning first=98 second=228 amount=-1 +kerning first=98 second=229 amount=-1 +kerning first=98 second=230 amount=-1 +kerning first=98 second=237 amount=-1 +kerning first=98 second=241 amount=-1 +kerning first=205 second=244 amount=-1 +kerning first=205 second=243 amount=-1 +kerning first=205 second=242 amount=-1 +kerning first=205 second=240 amount=-1 +kerning first=98 second=253 amount=-2 +kerning first=205 second=235 amount=-1 +kerning first=98 second=255 amount=-2 +kerning first=98 second=257 amount=-1 +kerning first=98 second=259 amount=-1 +kerning first=98 second=261 amount=-1 +kerning first=98 second=287 amount=-1 +kerning first=98 second=289 amount=-1 +kerning first=98 second=291 amount=-1 +kerning first=98 second=303 amount=-1 +kerning first=98 second=305 amount=-1 +kerning first=98 second=307 amount=-1 +kerning first=98 second=311 amount=-1 +kerning first=98 second=314 amount=-2 +kerning first=98 second=316 amount=-2 +kerning first=98 second=318 amount=-2 +kerning first=98 second=324 amount=-1 +kerning first=98 second=326 amount=-1 +kerning first=98 second=328 amount=-1 +kerning first=98 second=331 amount=-1 +kerning first=205 second=234 amount=-1 +kerning first=98 second=347 amount=-1 +kerning first=98 second=351 amount=-1 +kerning first=98 second=353 amount=-1 +kerning first=205 second=233 amount=-1 +kerning first=205 second=232 amount=-1 +kerning first=205 second=231 amount=-1 +kerning first=205 second=230 amount=-2 +kerning first=205 second=229 amount=-2 +kerning first=205 second=228 amount=-2 +kerning first=205 second=227 amount=-2 +kerning first=98 second=375 amount=-2 +kerning first=98 second=378 amount=-1 +kerning first=98 second=380 amount=-1 +kerning first=98 second=382 amount=-1 +kerning first=205 second=226 amount=-2 +kerning first=205 second=225 amount=-2 +kerning first=205 second=224 amount=-2 +kerning first=205 second=216 amount=-1 +kerning first=205 second=214 amount=-1 +kerning first=205 second=213 amount=-1 +kerning first=205 second=212 amount=-1 +kerning first=205 second=211 amount=-1 +kerning first=205 second=210 amount=-1 +kerning first=205 second=199 amount=-1 +kerning first=205 second=122 amount=-1 +kerning first=98 second=8217 amount=-1 +kerning first=98 second=8220 amount=-1 +kerning first=98 second=8221 amount=-1 +kerning first=98 second=8250 amount=-1 +kerning first=205 second=121 amount=-1 +kerning first=205 second=119 amount=-1 +kerning first=205 second=118 amount=-1 +kerning first=205 second=117 amount=-2 +kerning first=205 second=115 amount=-1 +kerning first=99 second=44 amount=-2 +kerning first=99 second=45 amount=-1 +kerning first=99 second=46 amount=-2 +kerning first=99 second=97 amount=-2 +kerning first=99 second=98 amount=-1 +kerning first=99 second=99 amount=-1 +kerning first=99 second=100 amount=-1 +kerning first=99 second=101 amount=-1 +kerning first=99 second=102 amount=-1 +kerning first=99 second=103 amount=-2 +kerning first=99 second=104 amount=-1 +kerning first=99 second=105 amount=-2 +kerning first=99 second=106 amount=-1 +kerning first=99 second=107 amount=-1 +kerning first=99 second=108 amount=-2 +kerning first=99 second=109 amount=-1 +kerning first=99 second=110 amount=-1 +kerning first=99 second=111 amount=-1 +kerning first=99 second=112 amount=-1 +kerning first=99 second=113 amount=-1 +kerning first=99 second=114 amount=-1 +kerning first=99 second=115 amount=-1 +kerning first=99 second=116 amount=-1 +kerning first=99 second=117 amount=-1 +kerning first=99 second=118 amount=-2 +kerning first=99 second=119 amount=-2 +kerning first=99 second=120 amount=-1 +kerning first=99 second=121 amount=-2 +kerning first=99 second=122 amount=-1 +kerning first=99 second=171 amount=-1 +kerning first=99 second=223 amount=-1 +kerning first=99 second=224 amount=-2 +kerning first=99 second=225 amount=-2 +kerning first=99 second=226 amount=-2 +kerning first=99 second=227 amount=-2 +kerning first=99 second=228 amount=-2 +kerning first=99 second=229 amount=-2 +kerning first=99 second=230 amount=-2 +kerning first=99 second=231 amount=-1 +kerning first=99 second=232 amount=-1 +kerning first=99 second=233 amount=-1 +kerning first=99 second=234 amount=-1 +kerning first=99 second=235 amount=-1 +kerning first=99 second=237 amount=-2 +kerning first=99 second=240 amount=-1 +kerning first=99 second=241 amount=-1 +kerning first=99 second=242 amount=-1 +kerning first=99 second=243 amount=-1 +kerning first=99 second=244 amount=-1 +kerning first=99 second=245 amount=-1 +kerning first=99 second=246 amount=-1 +kerning first=99 second=248 amount=-1 +kerning first=99 second=249 amount=-1 +kerning first=99 second=250 amount=-1 +kerning first=99 second=251 amount=-1 +kerning first=99 second=252 amount=-1 +kerning first=99 second=253 amount=-2 +kerning first=99 second=254 amount=-1 +kerning first=99 second=255 amount=-2 +kerning first=99 second=257 amount=-2 +kerning first=99 second=259 amount=-2 +kerning first=99 second=261 amount=-2 +kerning first=99 second=263 amount=-1 +kerning first=99 second=267 amount=-1 +kerning first=99 second=269 amount=-1 +kerning first=99 second=271 amount=-1 +kerning first=99 second=273 amount=-1 +kerning first=99 second=275 amount=-1 +kerning first=99 second=277 amount=-1 +kerning first=99 second=279 amount=-1 +kerning first=99 second=281 amount=-1 +kerning first=99 second=283 amount=-1 +kerning first=99 second=287 amount=-2 +kerning first=99 second=289 amount=-2 +kerning first=99 second=291 amount=-2 +kerning first=99 second=303 amount=-2 +kerning first=99 second=305 amount=-1 +kerning first=99 second=307 amount=-2 +kerning first=99 second=311 amount=-1 +kerning first=99 second=314 amount=-2 +kerning first=99 second=316 amount=-2 +kerning first=99 second=318 amount=-2 +kerning first=99 second=324 amount=-1 +kerning first=99 second=326 amount=-1 +kerning first=99 second=328 amount=-1 +kerning first=99 second=331 amount=-1 +kerning first=99 second=333 amount=-1 +kerning first=99 second=335 amount=-1 +kerning first=99 second=337 amount=-1 +kerning first=99 second=339 amount=-1 +kerning first=99 second=345 amount=-1 +kerning first=99 second=347 amount=-1 +kerning first=99 second=351 amount=-1 +kerning first=99 second=353 amount=-1 +kerning first=99 second=355 amount=-1 +kerning first=99 second=361 amount=-1 +kerning first=99 second=363 amount=-1 +kerning first=99 second=365 amount=-1 +kerning first=99 second=367 amount=-1 +kerning first=99 second=369 amount=-1 +kerning first=99 second=371 amount=-1 +kerning first=99 second=375 amount=-2 +kerning first=99 second=378 amount=-1 +kerning first=99 second=380 amount=-1 +kerning first=99 second=382 amount=-1 +kerning first=205 second=113 amount=-1 +kerning first=205 second=112 amount=-1 +kerning first=205 second=111 amount=-1 +kerning first=205 second=103 amount=-2 +kerning first=205 second=101 amount=-1 +kerning first=205 second=100 amount=-1 +kerning first=205 second=99 amount=-1 +kerning first=205 second=97 amount=-2 +kerning first=205 second=83 amount=-1 +kerning first=205 second=81 amount=-1 +kerning first=205 second=79 amount=-1 +kerning first=205 second=74 amount=-1 +kerning first=205 second=71 amount=-1 +kerning first=99 second=8217 amount=-1 +kerning first=99 second=8220 amount=-1 +kerning first=99 second=8221 amount=-1 +kerning first=99 second=8249 amount=-1 +kerning first=205 second=67 amount=-1 +kerning first=204 second=382 amount=-1 +kerning first=204 second=380 amount=-1 +kerning first=204 second=378 amount=-1 +kerning first=204 second=375 amount=-1 +kerning first=100 second=45 amount=-1 +kerning first=100 second=97 amount=-1 +kerning first=100 second=98 amount=-1 +kerning first=204 second=369 amount=-2 +kerning first=204 second=367 amount=-2 +kerning first=204 second=365 amount=-2 +kerning first=204 second=363 amount=-2 +kerning first=100 second=103 amount=-1 +kerning first=100 second=104 amount=-1 +kerning first=204 second=361 amount=-2 +kerning first=204 second=353 amount=-1 +kerning first=100 second=107 amount=-1 +kerning first=100 second=108 amount=-1 +kerning first=204 second=352 amount=-1 +kerning first=204 second=351 amount=-1 +kerning first=204 second=350 amount=-1 +kerning first=100 second=112 amount=-1 +kerning first=204 second=347 amount=-1 +kerning first=100 second=115 amount=-1 +kerning first=204 second=346 amount=-1 +kerning first=100 second=117 amount=-1 +kerning first=100 second=118 amount=-1 +kerning first=100 second=119 amount=-1 +kerning first=100 second=120 amount=-1 +kerning first=100 second=121 amount=-1 +kerning first=100 second=122 amount=-1 +kerning first=100 second=171 amount=-1 +kerning first=100 second=224 amount=-1 +kerning first=100 second=225 amount=-1 +kerning first=100 second=226 amount=-1 +kerning first=100 second=227 amount=-1 +kerning first=100 second=228 amount=-1 +kerning first=100 second=229 amount=-1 +kerning first=100 second=230 amount=-1 +kerning first=204 second=339 amount=-1 +kerning first=204 second=338 amount=-1 +kerning first=204 second=337 amount=-1 +kerning first=204 second=336 amount=-1 +kerning first=204 second=335 amount=-1 +kerning first=204 second=334 amount=-1 +kerning first=204 second=333 amount=-1 +kerning first=204 second=332 amount=-1 +kerning first=204 second=291 amount=-2 +kerning first=204 second=290 amount=-1 +kerning first=204 second=289 amount=-2 +kerning first=204 second=288 amount=-1 +kerning first=204 second=287 amount=-2 +kerning first=204 second=286 amount=-1 +kerning first=100 second=249 amount=-1 +kerning first=100 second=250 amount=-1 +kerning first=100 second=251 amount=-1 +kerning first=100 second=252 amount=-1 +kerning first=100 second=253 amount=-1 +kerning first=100 second=254 amount=-1 +kerning first=100 second=255 amount=-1 +kerning first=100 second=257 amount=-1 +kerning first=100 second=259 amount=-1 +kerning first=100 second=261 amount=-1 +kerning first=204 second=284 amount=-1 +kerning first=204 second=283 amount=-1 +kerning first=204 second=281 amount=-1 +kerning first=204 second=279 amount=-1 +kerning first=204 second=277 amount=-1 +kerning first=204 second=275 amount=-1 +kerning first=204 second=269 amount=-1 +kerning first=204 second=268 amount=-1 +kerning first=204 second=267 amount=-1 +kerning first=204 second=266 amount=-1 +kerning first=100 second=287 amount=-1 +kerning first=100 second=289 amount=-1 +kerning first=100 second=291 amount=-1 +kerning first=204 second=264 amount=-1 +kerning first=204 second=263 amount=-1 +kerning first=204 second=262 amount=-1 +kerning first=100 second=311 amount=-1 +kerning first=100 second=314 amount=-1 +kerning first=100 second=316 amount=-1 +kerning first=100 second=318 amount=-1 +kerning first=204 second=261 amount=-2 +kerning first=204 second=259 amount=-2 +kerning first=204 second=257 amount=-2 +kerning first=204 second=255 amount=-1 +kerning first=204 second=253 amount=-1 +kerning first=204 second=252 amount=-1 +kerning first=204 second=251 amount=-2 +kerning first=204 second=250 amount=-2 +kerning first=100 second=347 amount=-1 +kerning first=100 second=351 amount=-1 +kerning first=100 second=353 amount=-1 +kerning first=204 second=249 amount=-1 +kerning first=100 second=361 amount=-1 +kerning first=100 second=363 amount=-1 +kerning first=100 second=365 amount=-1 +kerning first=100 second=367 amount=-1 +kerning first=100 second=369 amount=-1 +kerning first=100 second=371 amount=-1 +kerning first=100 second=375 amount=-1 +kerning first=100 second=378 amount=-1 +kerning first=100 second=380 amount=-1 +kerning first=100 second=382 amount=-1 +kerning first=204 second=248 amount=-1 +kerning first=204 second=246 amount=-1 +kerning first=204 second=245 amount=-1 +kerning first=204 second=244 amount=-1 +kerning first=204 second=243 amount=-1 +kerning first=204 second=242 amount=-1 +kerning first=204 second=240 amount=-1 +kerning first=204 second=235 amount=-1 +kerning first=204 second=234 amount=-1 +kerning first=204 second=233 amount=-1 +kerning first=204 second=232 amount=-1 +kerning first=204 second=231 amount=-1 +kerning first=204 second=230 amount=-2 +kerning first=100 second=8217 amount=-1 +kerning first=100 second=8220 amount=-1 +kerning first=100 second=8221 amount=-1 +kerning first=100 second=8249 amount=-1 +kerning first=204 second=229 amount=-2 +kerning first=204 second=228 amount=-2 +kerning first=204 second=227 amount=-2 +kerning first=204 second=226 amount=-2 +kerning first=204 second=225 amount=-2 +kerning first=101 second=44 amount=-2 +kerning first=101 second=46 amount=-2 +kerning first=101 second=97 amount=-1 +kerning first=101 second=98 amount=-1 +kerning first=204 second=224 amount=-2 +kerning first=204 second=216 amount=-1 +kerning first=204 second=214 amount=-1 +kerning first=101 second=102 amount=-1 +kerning first=101 second=103 amount=-2 +kerning first=101 second=104 amount=-2 +kerning first=101 second=105 amount=-1 +kerning first=101 second=106 amount=-1 +kerning first=101 second=107 amount=-2 +kerning first=101 second=108 amount=-2 +kerning first=101 second=109 amount=-1 +kerning first=101 second=110 amount=-1 +kerning first=204 second=213 amount=-1 +kerning first=101 second=112 amount=-1 +kerning first=204 second=212 amount=-1 +kerning first=101 second=114 amount=-1 +kerning first=101 second=115 amount=-1 +kerning first=101 second=116 amount=-1 +kerning first=101 second=117 amount=-1 +kerning first=101 second=118 amount=-2 +kerning first=101 second=119 amount=-2 +kerning first=101 second=120 amount=-1 +kerning first=101 second=121 amount=-2 +kerning first=101 second=122 amount=-1 +kerning first=101 second=187 amount=-1 +kerning first=101 second=223 amount=-1 +kerning first=101 second=224 amount=-1 +kerning first=101 second=225 amount=-1 +kerning first=101 second=226 amount=-1 +kerning first=101 second=227 amount=-1 +kerning first=101 second=228 amount=-1 +kerning first=101 second=229 amount=-1 +kerning first=101 second=230 amount=-1 +kerning first=204 second=211 amount=-1 +kerning first=204 second=210 amount=-1 +kerning first=204 second=199 amount=-1 +kerning first=204 second=122 amount=-1 +kerning first=204 second=121 amount=-1 +kerning first=101 second=237 amount=-1 +kerning first=204 second=119 amount=-1 +kerning first=101 second=241 amount=-1 +kerning first=204 second=118 amount=-1 +kerning first=204 second=117 amount=-2 +kerning first=204 second=115 amount=-1 +kerning first=204 second=113 amount=-1 +kerning first=204 second=112 amount=-1 +kerning first=204 second=111 amount=-1 +kerning first=101 second=249 amount=-1 +kerning first=101 second=250 amount=-1 +kerning first=101 second=251 amount=-1 +kerning first=101 second=252 amount=-1 +kerning first=101 second=253 amount=-2 +kerning first=101 second=254 amount=-1 +kerning first=101 second=255 amount=-2 +kerning first=101 second=257 amount=-1 +kerning first=101 second=259 amount=-1 +kerning first=101 second=261 amount=-1 +kerning first=204 second=103 amount=-2 +kerning first=204 second=101 amount=-1 +kerning first=204 second=100 amount=-1 +kerning first=204 second=99 amount=-1 +kerning first=204 second=97 amount=-2 +kerning first=204 second=83 amount=-1 +kerning first=204 second=81 amount=-1 +kerning first=204 second=79 amount=-1 +kerning first=204 second=74 amount=-1 +kerning first=204 second=71 amount=-1 +kerning first=101 second=287 amount=-2 +kerning first=101 second=289 amount=-2 +kerning first=101 second=291 amount=-2 +kerning first=101 second=303 amount=-1 +kerning first=101 second=305 amount=-1 +kerning first=101 second=307 amount=-1 +kerning first=101 second=311 amount=-2 +kerning first=101 second=314 amount=-2 +kerning first=101 second=316 amount=-2 +kerning first=101 second=318 amount=-2 +kerning first=101 second=324 amount=-1 +kerning first=101 second=326 amount=-1 +kerning first=101 second=328 amount=-1 +kerning first=101 second=331 amount=-1 +kerning first=204 second=67 amount=-1 +kerning first=203 second=8249 amount=-1 +kerning first=203 second=382 amount=-1 +kerning first=203 second=381 amount=-1 +kerning first=101 second=345 amount=-1 +kerning first=101 second=347 amount=-1 +kerning first=101 second=351 amount=-1 +kerning first=101 second=353 amount=-1 +kerning first=101 second=355 amount=-1 +kerning first=101 second=361 amount=-1 +kerning first=101 second=363 amount=-1 +kerning first=101 second=365 amount=-1 +kerning first=101 second=367 amount=-1 +kerning first=101 second=369 amount=-1 +kerning first=101 second=371 amount=-1 +kerning first=101 second=375 amount=-2 +kerning first=101 second=378 amount=-1 +kerning first=101 second=380 amount=-1 +kerning first=101 second=382 amount=-1 +kerning first=203 second=380 amount=-1 +kerning first=203 second=379 amount=-1 +kerning first=203 second=378 amount=-1 +kerning first=203 second=377 amount=-1 +kerning first=203 second=374 amount=-1 +kerning first=203 second=370 amount=-1 +kerning first=203 second=369 amount=-1 +kerning first=203 second=368 amount=-1 +kerning first=203 second=367 amount=-1 +kerning first=203 second=366 amount=-1 +kerning first=203 second=365 amount=-1 +kerning first=203 second=364 amount=-1 +kerning first=203 second=363 amount=-1 +kerning first=101 second=8217 amount=-1 +kerning first=101 second=8220 amount=-1 +kerning first=101 second=8221 amount=-1 +kerning first=101 second=8250 amount=-1 +kerning first=203 second=362 amount=-1 +kerning first=203 second=361 amount=-1 +kerning first=203 second=356 amount=-1 +kerning first=203 second=354 amount=-1 +kerning first=203 second=353 amount=-1 +kerning first=102 second=44 amount=-1 +kerning first=102 second=45 amount=-2 +kerning first=102 second=46 amount=-1 +kerning first=102 second=97 amount=-1 +kerning first=102 second=98 amount=3 +kerning first=102 second=99 amount=-1 +kerning first=102 second=100 amount=-1 +kerning first=102 second=101 amount=-1 +kerning first=102 second=102 amount=-1 +kerning first=102 second=103 amount=-1 +kerning first=102 second=104 amount=2 +kerning first=203 second=352 amount=-1 +kerning first=102 second=107 amount=2 +kerning first=102 second=108 amount=2 +kerning first=203 second=351 amount=-1 +kerning first=203 second=350 amount=-1 +kerning first=102 second=111 amount=-1 +kerning first=102 second=113 amount=-1 +kerning first=203 second=347 amount=-1 +kerning first=102 second=115 amount=-1 +kerning first=203 second=346 amount=-1 +kerning first=203 second=344 amount=-1 +kerning first=102 second=120 amount=-1 +kerning first=203 second=338 amount=-1 +kerning first=102 second=122 amount=-1 +kerning first=102 second=171 amount=-2 +kerning first=203 second=336 amount=-1 +kerning first=102 second=225 amount=-1 +kerning first=102 second=226 amount=-1 +kerning first=102 second=227 amount=-1 +kerning first=102 second=229 amount=-1 +kerning first=102 second=230 amount=-1 +kerning first=102 second=231 amount=-1 +kerning first=102 second=233 amount=-1 +kerning first=102 second=234 amount=-1 +kerning first=102 second=240 amount=-1 +kerning first=203 second=334 amount=-1 +kerning first=102 second=243 amount=-1 +kerning first=102 second=244 amount=-1 +kerning first=102 second=245 amount=-1 +kerning first=102 second=248 amount=-1 +kerning first=203 second=332 amount=-1 +kerning first=203 second=331 amount=-1 +kerning first=203 second=330 amount=-1 +kerning first=102 second=254 amount=3 +kerning first=203 second=328 amount=-1 +kerning first=102 second=257 amount=-1 +kerning first=102 second=259 amount=-1 +kerning first=102 second=261 amount=-1 +kerning first=102 second=263 amount=-1 +kerning first=102 second=267 amount=-1 +kerning first=102 second=269 amount=-1 +kerning first=102 second=271 amount=-1 +kerning first=102 second=273 amount=-1 +kerning first=102 second=275 amount=-1 +kerning first=102 second=277 amount=-1 +kerning first=102 second=279 amount=-1 +kerning first=102 second=281 amount=-1 +kerning first=102 second=283 amount=-1 +kerning first=102 second=287 amount=-1 +kerning first=102 second=289 amount=-1 +kerning first=102 second=291 amount=-1 +kerning first=203 second=327 amount=-1 +kerning first=102 second=311 amount=2 +kerning first=102 second=314 amount=2 +kerning first=102 second=316 amount=2 +kerning first=102 second=318 amount=2 +kerning first=203 second=326 amount=-1 +kerning first=203 second=325 amount=-1 +kerning first=203 second=324 amount=-1 +kerning first=203 second=323 amount=-1 +kerning first=102 second=333 amount=-1 +kerning first=102 second=335 amount=-1 +kerning first=102 second=337 amount=-1 +kerning first=102 second=339 amount=-1 +kerning first=203 second=318 amount=-1 +kerning first=102 second=347 amount=-1 +kerning first=102 second=351 amount=-1 +kerning first=102 second=353 amount=-1 +kerning first=203 second=317 amount=-1 +kerning first=203 second=316 amount=-1 +kerning first=203 second=315 amount=-1 +kerning first=203 second=314 amount=-1 +kerning first=203 second=313 amount=-1 +kerning first=203 second=311 amount=-1 +kerning first=203 second=310 amount=-1 +kerning first=203 second=304 amount=-1 +kerning first=102 second=378 amount=-1 +kerning first=102 second=380 amount=-1 +kerning first=102 second=382 amount=-1 +kerning first=203 second=302 amount=-1 +kerning first=203 second=298 amount=-1 +kerning first=203 second=296 amount=-1 +kerning first=203 second=291 amount=-2 +kerning first=203 second=290 amount=-1 +kerning first=203 second=289 amount=-2 +kerning first=203 second=288 amount=-1 +kerning first=203 second=287 amount=-2 +kerning first=203 second=286 amount=-1 +kerning first=203 second=284 amount=-1 +kerning first=203 second=282 amount=-1 +kerning first=203 second=280 amount=-1 +kerning first=102 second=8217 amount=2 +kerning first=102 second=8220 amount=2 +kerning first=102 second=8221 amount=2 +kerning first=102 second=8249 amount=-2 +kerning first=203 second=278 amount=-1 +kerning first=203 second=274 amount=-1 +kerning first=203 second=270 amount=-1 +kerning first=203 second=268 amount=-1 +kerning first=203 second=266 amount=-1 +kerning first=103 second=44 amount=-2 +kerning first=103 second=45 amount=-2 +kerning first=103 second=46 amount=-2 +kerning first=103 second=97 amount=-2 +kerning first=103 second=98 amount=-1 +kerning first=103 second=99 amount=-1 +kerning first=103 second=100 amount=-1 +kerning first=103 second=101 amount=-1 +kerning first=203 second=264 amount=-1 +kerning first=103 second=103 amount=-1 +kerning first=103 second=104 amount=-1 +kerning first=103 second=105 amount=-1 +kerning first=103 second=107 amount=-1 +kerning first=103 second=108 amount=-2 +kerning first=103 second=109 amount=-1 +kerning first=103 second=110 amount=-1 +kerning first=103 second=111 amount=-1 +kerning first=203 second=262 amount=-1 +kerning first=103 second=113 amount=-1 +kerning first=203 second=261 amount=-1 +kerning first=103 second=115 amount=-2 +kerning first=103 second=116 amount=-1 +kerning first=103 second=117 amount=-1 +kerning first=103 second=118 amount=-1 +kerning first=103 second=119 amount=-1 +kerning first=103 second=120 amount=-1 +kerning first=103 second=121 amount=-1 +kerning first=103 second=122 amount=-2 +kerning first=103 second=171 amount=-2 +kerning first=203 second=260 amount=-1 +kerning first=103 second=224 amount=-2 +kerning first=103 second=225 amount=-2 +kerning first=103 second=226 amount=-2 +kerning first=103 second=227 amount=-2 +kerning first=103 second=228 amount=-2 +kerning first=103 second=229 amount=-2 +kerning first=103 second=230 amount=-2 +kerning first=103 second=231 amount=-1 +kerning first=103 second=232 amount=-1 +kerning first=103 second=233 amount=-1 +kerning first=103 second=234 amount=-1 +kerning first=103 second=235 amount=-1 +kerning first=103 second=237 amount=-1 +kerning first=103 second=240 amount=-1 +kerning first=103 second=241 amount=-1 +kerning first=103 second=242 amount=-1 +kerning first=103 second=243 amount=-1 +kerning first=103 second=244 amount=-1 +kerning first=103 second=245 amount=-1 +kerning first=103 second=246 amount=-1 +kerning first=103 second=248 amount=-1 +kerning first=103 second=249 amount=-1 +kerning first=103 second=250 amount=-1 +kerning first=103 second=251 amount=-1 +kerning first=103 second=252 amount=-1 +kerning first=103 second=253 amount=-1 +kerning first=103 second=254 amount=-1 +kerning first=103 second=255 amount=-1 +kerning first=103 second=257 amount=-2 +kerning first=103 second=259 amount=-2 +kerning first=103 second=261 amount=-2 +kerning first=103 second=263 amount=-1 +kerning first=103 second=267 amount=-1 +kerning first=103 second=269 amount=-1 +kerning first=103 second=271 amount=-1 +kerning first=103 second=273 amount=-1 +kerning first=103 second=275 amount=-1 +kerning first=103 second=277 amount=-1 +kerning first=103 second=279 amount=-1 +kerning first=103 second=281 amount=-1 +kerning first=103 second=283 amount=-1 +kerning first=103 second=287 amount=-1 +kerning first=103 second=289 amount=-1 +kerning first=103 second=291 amount=-1 +kerning first=103 second=303 amount=-1 +kerning first=103 second=305 amount=-1 +kerning first=103 second=307 amount=-1 +kerning first=103 second=311 amount=-1 +kerning first=103 second=314 amount=-2 +kerning first=103 second=316 amount=-2 +kerning first=103 second=318 amount=-2 +kerning first=103 second=324 amount=-1 +kerning first=103 second=326 amount=-1 +kerning first=103 second=328 amount=-1 +kerning first=103 second=331 amount=-1 +kerning first=103 second=333 amount=-1 +kerning first=103 second=335 amount=-1 +kerning first=103 second=337 amount=-1 +kerning first=103 second=339 amount=-1 +kerning first=203 second=259 amount=-1 +kerning first=103 second=347 amount=-2 +kerning first=103 second=351 amount=-2 +kerning first=103 second=353 amount=-2 +kerning first=103 second=355 amount=-1 +kerning first=103 second=361 amount=-1 +kerning first=103 second=363 amount=-1 +kerning first=103 second=365 amount=-1 +kerning first=103 second=367 amount=-1 +kerning first=103 second=369 amount=-1 +kerning first=103 second=371 amount=-1 +kerning first=103 second=375 amount=-1 +kerning first=103 second=378 amount=-2 +kerning first=103 second=380 amount=-2 +kerning first=103 second=382 amount=-2 +kerning first=203 second=257 amount=-1 +kerning first=203 second=256 amount=-1 +kerning first=203 second=254 amount=-1 +kerning first=203 second=252 amount=-1 +kerning first=203 second=251 amount=-1 +kerning first=203 second=250 amount=-1 +kerning first=203 second=249 amount=-1 +kerning first=203 second=241 amount=-1 +kerning first=203 second=230 amount=-1 +kerning first=203 second=229 amount=-1 +kerning first=203 second=228 amount=-1 +kerning first=203 second=227 amount=-1 +kerning first=203 second=226 amount=-1 +kerning first=103 second=8249 amount=-2 +kerning first=203 second=225 amount=-1 +kerning first=203 second=224 amount=-1 +kerning first=203 second=223 amount=-1 +kerning first=203 second=221 amount=-1 +kerning first=203 second=220 amount=-1 +kerning first=104 second=44 amount=-1 +kerning first=104 second=45 amount=-2 +kerning first=104 second=46 amount=-1 +kerning first=104 second=97 amount=-1 +kerning first=104 second=98 amount=-1 +kerning first=203 second=219 amount=-1 +kerning first=203 second=218 amount=-1 +kerning first=203 second=217 amount=-1 +kerning first=203 second=216 amount=-1 +kerning first=104 second=103 amount=-1 +kerning first=203 second=214 amount=-1 +kerning first=104 second=106 amount=-1 +kerning first=104 second=108 amount=-1 +kerning first=203 second=213 amount=-1 +kerning first=203 second=212 amount=-1 +kerning first=203 second=211 amount=-1 +kerning first=104 second=112 amount=-1 +kerning first=203 second=210 amount=-1 +kerning first=104 second=115 amount=-1 +kerning first=104 second=117 amount=-1 +kerning first=104 second=118 amount=-2 +kerning first=104 second=119 amount=-2 +kerning first=203 second=209 amount=-1 +kerning first=104 second=121 amount=-1 +kerning first=203 second=207 amount=-1 +kerning first=104 second=171 amount=-2 +kerning first=104 second=224 amount=-1 +kerning first=104 second=225 amount=-1 +kerning first=104 second=226 amount=-1 +kerning first=104 second=227 amount=-1 +kerning first=104 second=228 amount=-1 +kerning first=104 second=229 amount=-1 +kerning first=104 second=230 amount=-1 +kerning first=203 second=206 amount=-1 +kerning first=203 second=205 amount=-1 +kerning first=203 second=204 amount=-1 +kerning first=203 second=203 amount=-1 +kerning first=203 second=202 amount=-1 +kerning first=203 second=201 amount=-1 +kerning first=203 second=200 amount=-1 +kerning first=203 second=199 amount=-1 +kerning first=203 second=198 amount=-1 +kerning first=203 second=197 amount=-1 +kerning first=203 second=196 amount=-1 +kerning first=203 second=194 amount=-1 +kerning first=203 second=193 amount=-1 +kerning first=203 second=192 amount=-1 +kerning first=104 second=249 amount=-1 +kerning first=104 second=250 amount=-1 +kerning first=104 second=251 amount=-1 +kerning first=104 second=252 amount=-1 +kerning first=104 second=253 amount=-1 +kerning first=104 second=254 amount=-1 +kerning first=104 second=255 amount=-1 +kerning first=104 second=257 amount=-1 +kerning first=104 second=259 amount=-1 +kerning first=104 second=261 amount=-1 +kerning first=203 second=171 amount=-1 +kerning first=203 second=122 amount=-1 +kerning first=203 second=120 amount=-1 +kerning first=203 second=119 amount=-1 +kerning first=203 second=118 amount=-1 +kerning first=203 second=117 amount=-1 +kerning first=203 second=115 amount=-1 +kerning first=203 second=112 amount=-1 +kerning first=203 second=110 amount=-1 +kerning first=203 second=109 amount=-1 +kerning first=104 second=287 amount=-1 +kerning first=104 second=289 amount=-1 +kerning first=104 second=291 amount=-1 +kerning first=203 second=108 amount=-1 +kerning first=203 second=107 amount=-1 +kerning first=203 second=104 amount=-1 +kerning first=104 second=314 amount=-1 +kerning first=104 second=316 amount=-1 +kerning first=104 second=318 amount=-1 +kerning first=203 second=103 amount=-2 +kerning first=203 second=102 amount=-1 +kerning first=203 second=98 amount=-1 +kerning first=203 second=97 amount=-1 +kerning first=203 second=90 amount=-1 +kerning first=203 second=89 amount=-1 +kerning first=203 second=87 amount=-1 +kerning first=203 second=86 amount=-1 +kerning first=104 second=347 amount=-1 +kerning first=104 second=351 amount=-1 +kerning first=104 second=353 amount=-1 +kerning first=104 second=361 amount=-1 +kerning first=104 second=363 amount=-1 +kerning first=104 second=365 amount=-1 +kerning first=104 second=367 amount=-1 +kerning first=104 second=369 amount=-1 +kerning first=104 second=371 amount=-1 +kerning first=104 second=375 amount=-1 +kerning first=203 second=85 amount=-1 +kerning first=203 second=84 amount=-1 +kerning first=203 second=83 amount=-1 +kerning first=203 second=82 amount=-1 +kerning first=203 second=81 amount=-1 +kerning first=203 second=80 amount=-1 +kerning first=203 second=79 amount=-1 +kerning first=203 second=78 amount=-1 +kerning first=203 second=77 amount=-1 +kerning first=203 second=76 amount=-1 +kerning first=203 second=75 amount=-1 +kerning first=203 second=74 amount=-1 +kerning first=203 second=73 amount=-1 +kerning first=104 second=8217 amount=-3 +kerning first=104 second=8220 amount=-3 +kerning first=104 second=8221 amount=-3 +kerning first=104 second=8249 amount=-2 +kerning first=203 second=72 amount=-1 +kerning first=203 second=71 amount=-1 +kerning first=203 second=70 amount=-1 +kerning first=203 second=69 amount=-1 +kerning first=203 second=68 amount=-1 +kerning first=105 second=44 amount=-1 +kerning first=105 second=45 amount=-2 +kerning first=105 second=46 amount=-1 +kerning first=105 second=97 amount=-1 +kerning first=105 second=98 amount=-1 +kerning first=105 second=99 amount=-1 +kerning first=105 second=100 amount=-1 +kerning first=105 second=101 amount=-1 +kerning first=105 second=102 amount=-1 +kerning first=105 second=103 amount=-2 +kerning first=105 second=104 amount=-1 +kerning first=105 second=105 amount=-1 +kerning first=105 second=106 amount=-1 +kerning first=105 second=107 amount=-1 +kerning first=105 second=108 amount=-1 +kerning first=105 second=109 amount=-1 +kerning first=105 second=110 amount=-1 +kerning first=105 second=111 amount=-1 +kerning first=105 second=112 amount=-1 +kerning first=105 second=113 amount=-1 +kerning first=203 second=67 amount=-1 +kerning first=105 second=115 amount=-1 +kerning first=105 second=116 amount=-1 +kerning first=105 second=117 amount=-1 +kerning first=105 second=118 amount=-2 +kerning first=105 second=119 amount=-2 +kerning first=105 second=120 amount=-1 +kerning first=105 second=121 amount=-2 +kerning first=105 second=122 amount=-1 +kerning first=105 second=171 amount=-2 +kerning first=203 second=66 amount=-1 +kerning first=105 second=224 amount=-1 +kerning first=105 second=225 amount=-1 +kerning first=105 second=226 amount=-1 +kerning first=105 second=227 amount=-1 +kerning first=105 second=228 amount=-1 +kerning first=105 second=229 amount=-1 +kerning first=105 second=230 amount=-1 +kerning first=105 second=231 amount=-1 +kerning first=105 second=232 amount=-1 +kerning first=105 second=233 amount=-1 +kerning first=105 second=234 amount=-1 +kerning first=105 second=235 amount=-1 +kerning first=105 second=237 amount=-1 +kerning first=105 second=240 amount=-1 +kerning first=105 second=241 amount=-1 +kerning first=105 second=242 amount=-1 +kerning first=105 second=243 amount=-1 +kerning first=105 second=244 amount=-1 +kerning first=105 second=245 amount=-1 +kerning first=105 second=246 amount=-1 +kerning first=105 second=248 amount=-1 +kerning first=105 second=249 amount=-1 +kerning first=105 second=250 amount=-1 +kerning first=105 second=251 amount=-1 +kerning first=105 second=252 amount=-1 +kerning first=105 second=253 amount=-2 +kerning first=105 second=254 amount=-1 +kerning first=105 second=255 amount=-2 +kerning first=105 second=257 amount=-1 +kerning first=105 second=259 amount=-1 +kerning first=105 second=261 amount=-1 +kerning first=105 second=263 amount=-1 +kerning first=105 second=267 amount=-1 +kerning first=105 second=269 amount=-1 +kerning first=105 second=271 amount=-1 +kerning first=105 second=273 amount=-1 +kerning first=105 second=275 amount=-1 +kerning first=105 second=277 amount=-1 +kerning first=105 second=279 amount=-1 +kerning first=105 second=281 amount=-1 +kerning first=105 second=283 amount=-1 +kerning first=105 second=287 amount=-2 +kerning first=105 second=289 amount=-2 +kerning first=105 second=291 amount=-2 +kerning first=105 second=303 amount=-1 +kerning first=105 second=305 amount=-1 +kerning first=105 second=307 amount=-1 +kerning first=105 second=311 amount=-1 +kerning first=105 second=314 amount=-1 +kerning first=105 second=316 amount=-1 +kerning first=105 second=318 amount=-1 +kerning first=105 second=324 amount=-1 +kerning first=105 second=326 amount=-1 +kerning first=105 second=328 amount=-1 +kerning first=105 second=331 amount=-1 +kerning first=105 second=333 amount=-1 +kerning first=105 second=335 amount=-1 +kerning first=105 second=337 amount=-1 +kerning first=105 second=339 amount=-1 +kerning first=203 second=65 amount=-1 +kerning first=105 second=347 amount=-1 +kerning first=105 second=351 amount=-1 +kerning first=105 second=353 amount=-1 +kerning first=105 second=355 amount=-1 +kerning first=105 second=361 amount=-1 +kerning first=105 second=363 amount=-1 +kerning first=105 second=365 amount=-1 +kerning first=105 second=367 amount=-1 +kerning first=105 second=369 amount=-1 +kerning first=105 second=371 amount=-1 +kerning first=105 second=375 amount=-2 +kerning first=105 second=378 amount=-1 +kerning first=105 second=380 amount=-1 +kerning first=105 second=382 amount=-1 +kerning first=203 second=46 amount=-1 +kerning first=203 second=45 amount=-1 +kerning first=203 second=44 amount=-1 +kerning first=202 second=8249 amount=-1 +kerning first=202 second=382 amount=-1 +kerning first=202 second=381 amount=-1 +kerning first=202 second=380 amount=-1 +kerning first=202 second=379 amount=-1 +kerning first=202 second=378 amount=-1 +kerning first=202 second=377 amount=-1 +kerning first=202 second=374 amount=-1 +kerning first=202 second=370 amount=-1 +kerning first=202 second=369 amount=-1 +kerning first=105 second=8217 amount=-1 +kerning first=105 second=8220 amount=-1 +kerning first=105 second=8221 amount=-1 +kerning first=105 second=8249 amount=-2 +kerning first=202 second=368 amount=-1 +kerning first=202 second=367 amount=-1 +kerning first=202 second=366 amount=-1 +kerning first=202 second=365 amount=-1 +kerning first=202 second=364 amount=-1 +kerning first=106 second=44 amount=-1 +kerning first=106 second=45 amount=-2 +kerning first=106 second=46 amount=-1 +kerning first=106 second=97 amount=-1 +kerning first=106 second=98 amount=-1 +kerning first=106 second=99 amount=-1 +kerning first=106 second=100 amount=-1 +kerning first=106 second=101 amount=-1 +kerning first=106 second=102 amount=-1 +kerning first=106 second=103 amount=-2 +kerning first=106 second=104 amount=-1 +kerning first=106 second=105 amount=-1 +kerning first=106 second=106 amount=-1 +kerning first=106 second=107 amount=-1 +kerning first=106 second=108 amount=-1 +kerning first=106 second=109 amount=-1 +kerning first=106 second=110 amount=-1 +kerning first=106 second=111 amount=-1 +kerning first=106 second=112 amount=-1 +kerning first=106 second=113 amount=-1 +kerning first=202 second=363 amount=-1 +kerning first=106 second=115 amount=-1 +kerning first=106 second=116 amount=-1 +kerning first=106 second=117 amount=-1 +kerning first=106 second=118 amount=-2 +kerning first=106 second=119 amount=-2 +kerning first=106 second=120 amount=-1 +kerning first=106 second=121 amount=-2 +kerning first=106 second=122 amount=-1 +kerning first=106 second=171 amount=-2 +kerning first=202 second=362 amount=-1 +kerning first=106 second=224 amount=-1 +kerning first=106 second=225 amount=-1 +kerning first=106 second=226 amount=-1 +kerning first=106 second=227 amount=-1 +kerning first=106 second=228 amount=-1 +kerning first=106 second=229 amount=-1 +kerning first=106 second=230 amount=-1 +kerning first=106 second=231 amount=-1 +kerning first=106 second=232 amount=-1 +kerning first=106 second=233 amount=-1 +kerning first=106 second=234 amount=-1 +kerning first=106 second=235 amount=-1 +kerning first=106 second=237 amount=-1 +kerning first=106 second=240 amount=-1 +kerning first=106 second=241 amount=-1 +kerning first=106 second=242 amount=-1 +kerning first=106 second=243 amount=-1 +kerning first=106 second=244 amount=-1 +kerning first=106 second=245 amount=-1 +kerning first=106 second=246 amount=-1 +kerning first=106 second=248 amount=-1 +kerning first=106 second=249 amount=-1 +kerning first=106 second=250 amount=-1 +kerning first=106 second=251 amount=-1 +kerning first=106 second=252 amount=-1 +kerning first=106 second=253 amount=-2 +kerning first=106 second=254 amount=-1 +kerning first=106 second=255 amount=-2 +kerning first=106 second=257 amount=-1 +kerning first=106 second=259 amount=-1 +kerning first=106 second=261 amount=-1 +kerning first=106 second=263 amount=-1 +kerning first=106 second=267 amount=-1 +kerning first=106 second=269 amount=-1 +kerning first=106 second=271 amount=-1 +kerning first=106 second=273 amount=-1 +kerning first=106 second=275 amount=-1 +kerning first=106 second=277 amount=-1 +kerning first=106 second=279 amount=-1 +kerning first=106 second=281 amount=-1 +kerning first=106 second=283 amount=-1 +kerning first=106 second=287 amount=-2 +kerning first=106 second=289 amount=-2 +kerning first=106 second=291 amount=-2 +kerning first=106 second=303 amount=-1 +kerning first=106 second=305 amount=-1 +kerning first=106 second=307 amount=-1 +kerning first=106 second=311 amount=-1 +kerning first=106 second=314 amount=-1 +kerning first=106 second=316 amount=-1 +kerning first=106 second=318 amount=-1 +kerning first=106 second=324 amount=-1 +kerning first=106 second=326 amount=-1 +kerning first=106 second=328 amount=-1 +kerning first=106 second=331 amount=-1 +kerning first=106 second=333 amount=-1 +kerning first=106 second=335 amount=-1 +kerning first=106 second=337 amount=-1 +kerning first=106 second=339 amount=-1 +kerning first=202 second=361 amount=-1 +kerning first=106 second=347 amount=-1 +kerning first=106 second=351 amount=-1 +kerning first=106 second=353 amount=-1 +kerning first=106 second=355 amount=-1 +kerning first=106 second=361 amount=-1 +kerning first=106 second=363 amount=-1 +kerning first=106 second=365 amount=-1 +kerning first=106 second=367 amount=-1 +kerning first=106 second=369 amount=-1 +kerning first=106 second=371 amount=-1 +kerning first=106 second=375 amount=-2 +kerning first=106 second=378 amount=-1 +kerning first=106 second=380 amount=-1 +kerning first=106 second=382 amount=-1 +kerning first=202 second=356 amount=-1 +kerning first=202 second=354 amount=-1 +kerning first=202 second=353 amount=-1 +kerning first=202 second=352 amount=-1 +kerning first=202 second=351 amount=-1 +kerning first=202 second=350 amount=-1 +kerning first=202 second=347 amount=-1 +kerning first=202 second=346 amount=-1 +kerning first=202 second=344 amount=-1 +kerning first=202 second=338 amount=-1 +kerning first=202 second=336 amount=-1 +kerning first=202 second=334 amount=-1 +kerning first=202 second=332 amount=-1 +kerning first=106 second=8217 amount=-1 +kerning first=106 second=8220 amount=-1 +kerning first=106 second=8221 amount=-1 +kerning first=106 second=8249 amount=-2 +kerning first=202 second=331 amount=-1 +kerning first=202 second=330 amount=-1 +kerning first=202 second=328 amount=-1 +kerning first=202 second=327 amount=-1 +kerning first=202 second=326 amount=-1 +kerning first=107 second=44 amount=-1 +kerning first=107 second=45 amount=-2 +kerning first=107 second=46 amount=-1 +kerning first=107 second=97 amount=-1 +kerning first=107 second=98 amount=-1 +kerning first=107 second=99 amount=-2 +kerning first=107 second=100 amount=-2 +kerning first=107 second=101 amount=-2 +kerning first=107 second=103 amount=-1 +kerning first=202 second=325 amount=-1 +kerning first=107 second=111 amount=-2 +kerning first=107 second=112 amount=-1 +kerning first=107 second=113 amount=-2 +kerning first=107 second=115 amount=-1 +kerning first=107 second=116 amount=-1 +kerning first=202 second=324 amount=-1 +kerning first=107 second=118 amount=-1 +kerning first=107 second=119 amount=-1 +kerning first=202 second=323 amount=-1 +kerning first=202 second=318 amount=-1 +kerning first=107 second=171 amount=-2 +kerning first=107 second=224 amount=-1 +kerning first=107 second=225 amount=-1 +kerning first=107 second=226 amount=-1 +kerning first=107 second=227 amount=-1 +kerning first=107 second=228 amount=-1 +kerning first=107 second=229 amount=-1 +kerning first=107 second=230 amount=-1 +kerning first=107 second=231 amount=-2 +kerning first=107 second=232 amount=-2 +kerning first=107 second=233 amount=-2 +kerning first=107 second=234 amount=-2 +kerning first=107 second=235 amount=-2 +kerning first=107 second=240 amount=-2 +kerning first=107 second=242 amount=-2 +kerning first=107 second=243 amount=-2 +kerning first=107 second=244 amount=-2 +kerning first=107 second=245 amount=-2 +kerning first=107 second=246 amount=-2 +kerning first=107 second=248 amount=-2 +kerning first=202 second=317 amount=-1 +kerning first=202 second=316 amount=-1 +kerning first=202 second=315 amount=-1 +kerning first=202 second=314 amount=-1 +kerning first=202 second=313 amount=-1 +kerning first=107 second=254 amount=-1 +kerning first=202 second=311 amount=-1 +kerning first=107 second=257 amount=-1 +kerning first=107 second=259 amount=-1 +kerning first=107 second=261 amount=-1 +kerning first=107 second=263 amount=-2 +kerning first=107 second=267 amount=-2 +kerning first=107 second=269 amount=-2 +kerning first=107 second=271 amount=-2 +kerning first=107 second=273 amount=-2 +kerning first=107 second=275 amount=-2 +kerning first=107 second=277 amount=-2 +kerning first=107 second=279 amount=-2 +kerning first=107 second=281 amount=-2 +kerning first=107 second=283 amount=-2 +kerning first=107 second=287 amount=-1 +kerning first=107 second=289 amount=-1 +kerning first=107 second=291 amount=-1 +kerning first=107 second=333 amount=-2 +kerning first=107 second=335 amount=-2 +kerning first=107 second=337 amount=-2 +kerning first=107 second=339 amount=-2 +kerning first=107 second=347 amount=-1 +kerning first=107 second=351 amount=-1 +kerning first=107 second=353 amount=-1 +kerning first=107 second=355 amount=-1 +kerning first=202 second=310 amount=-1 +kerning first=202 second=304 amount=-1 +kerning first=202 second=302 amount=-1 +kerning first=202 second=298 amount=-1 +kerning first=202 second=296 amount=-1 +kerning first=202 second=291 amount=-2 +kerning first=202 second=290 amount=-1 +kerning first=202 second=289 amount=-2 +kerning first=202 second=288 amount=-1 +kerning first=202 second=287 amount=-2 +kerning first=202 second=286 amount=-1 +kerning first=202 second=284 amount=-1 +kerning first=202 second=282 amount=-1 +kerning first=202 second=280 amount=-1 +kerning first=202 second=278 amount=-1 +kerning first=202 second=274 amount=-1 +kerning first=202 second=270 amount=-1 +kerning first=202 second=268 amount=-1 +kerning first=202 second=266 amount=-1 +kerning first=202 second=264 amount=-1 +kerning first=107 second=8217 amount=-1 +kerning first=107 second=8220 amount=-1 +kerning first=107 second=8221 amount=-1 +kerning first=107 second=8249 amount=-2 +kerning first=108 second=45 amount=-2 +kerning first=108 second=97 amount=-1 +kerning first=108 second=98 amount=-1 +kerning first=108 second=99 amount=-1 +kerning first=108 second=100 amount=-1 +kerning first=108 second=101 amount=-1 +kerning first=108 second=102 amount=-1 +kerning first=108 second=103 amount=-2 +kerning first=202 second=262 amount=-1 +kerning first=108 second=105 amount=-1 +kerning first=108 second=106 amount=-2 +kerning first=202 second=261 amount=-1 +kerning first=108 second=108 amount=-1 +kerning first=108 second=109 amount=-1 +kerning first=108 second=110 amount=-1 +kerning first=108 second=111 amount=-1 +kerning first=108 second=112 amount=-1 +kerning first=108 second=113 amount=-1 +kerning first=108 second=115 amount=-1 +kerning first=108 second=116 amount=-1 +kerning first=108 second=117 amount=-1 +kerning first=108 second=118 amount=-2 +kerning first=108 second=119 amount=-2 +kerning first=108 second=120 amount=-1 +kerning first=108 second=121 amount=-2 +kerning first=108 second=122 amount=-1 +kerning first=108 second=171 amount=-2 +kerning first=108 second=224 amount=-1 +kerning first=108 second=225 amount=-1 +kerning first=108 second=226 amount=-1 +kerning first=108 second=227 amount=-1 +kerning first=108 second=228 amount=-1 +kerning first=108 second=229 amount=-1 +kerning first=108 second=230 amount=-1 +kerning first=108 second=231 amount=-1 +kerning first=108 second=232 amount=-1 +kerning first=108 second=233 amount=-1 +kerning first=108 second=234 amount=-1 +kerning first=108 second=235 amount=-1 +kerning first=108 second=237 amount=-1 +kerning first=108 second=240 amount=-1 +kerning first=108 second=241 amount=-1 +kerning first=108 second=242 amount=-1 +kerning first=108 second=243 amount=-1 +kerning first=108 second=244 amount=-1 +kerning first=108 second=245 amount=-1 +kerning first=108 second=246 amount=-1 +kerning first=108 second=248 amount=-1 +kerning first=108 second=249 amount=-1 +kerning first=108 second=250 amount=-1 +kerning first=108 second=251 amount=-1 +kerning first=108 second=252 amount=-1 +kerning first=108 second=253 amount=-2 +kerning first=108 second=254 amount=-1 +kerning first=108 second=255 amount=-2 +kerning first=108 second=257 amount=-1 +kerning first=108 second=259 amount=-1 +kerning first=108 second=261 amount=-1 +kerning first=108 second=263 amount=-1 +kerning first=108 second=267 amount=-1 +kerning first=108 second=269 amount=-1 +kerning first=108 second=271 amount=-1 +kerning first=108 second=273 amount=-1 +kerning first=108 second=275 amount=-1 +kerning first=108 second=277 amount=-1 +kerning first=108 second=279 amount=-1 +kerning first=108 second=281 amount=-1 +kerning first=108 second=283 amount=-1 +kerning first=108 second=287 amount=-2 +kerning first=108 second=289 amount=-2 +kerning first=108 second=291 amount=-2 +kerning first=108 second=303 amount=-1 +kerning first=108 second=305 amount=-1 +kerning first=108 second=307 amount=-1 +kerning first=202 second=260 amount=-1 +kerning first=108 second=314 amount=-1 +kerning first=108 second=316 amount=-1 +kerning first=108 second=318 amount=-1 +kerning first=108 second=324 amount=-1 +kerning first=108 second=326 amount=-1 +kerning first=108 second=328 amount=-1 +kerning first=108 second=331 amount=-1 +kerning first=108 second=333 amount=-1 +kerning first=108 second=335 amount=-1 +kerning first=108 second=337 amount=-1 +kerning first=108 second=339 amount=-1 +kerning first=108 second=347 amount=-1 +kerning first=108 second=351 amount=-1 +kerning first=108 second=353 amount=-1 +kerning first=108 second=355 amount=-1 +kerning first=108 second=361 amount=-1 +kerning first=108 second=363 amount=-1 +kerning first=108 second=365 amount=-1 +kerning first=108 second=367 amount=-1 +kerning first=108 second=369 amount=-1 +kerning first=108 second=371 amount=-1 +kerning first=108 second=375 amount=-2 +kerning first=108 second=378 amount=-1 +kerning first=108 second=380 amount=-1 +kerning first=108 second=382 amount=-1 +kerning first=202 second=259 amount=-1 +kerning first=202 second=257 amount=-1 +kerning first=202 second=256 amount=-1 +kerning first=202 second=254 amount=-1 +kerning first=202 second=252 amount=-1 +kerning first=202 second=251 amount=-1 +kerning first=202 second=250 amount=-1 +kerning first=202 second=249 amount=-1 +kerning first=202 second=241 amount=-1 +kerning first=202 second=230 amount=-1 +kerning first=202 second=229 amount=-1 +kerning first=202 second=228 amount=-1 +kerning first=202 second=227 amount=-1 +kerning first=108 second=8217 amount=-2 +kerning first=108 second=8220 amount=-2 +kerning first=108 second=8221 amount=-2 +kerning first=108 second=8249 amount=-2 +kerning first=202 second=226 amount=-1 +kerning first=202 second=225 amount=-1 +kerning first=202 second=224 amount=-1 +kerning first=202 second=223 amount=-1 +kerning first=202 second=221 amount=-1 +kerning first=109 second=44 amount=-1 +kerning first=109 second=45 amount=-2 +kerning first=109 second=46 amount=-1 +kerning first=109 second=97 amount=-1 +kerning first=109 second=98 amount=-1 +kerning first=202 second=220 amount=-1 +kerning first=202 second=219 amount=-1 +kerning first=202 second=218 amount=-1 +kerning first=202 second=217 amount=-1 +kerning first=109 second=103 amount=-1 +kerning first=202 second=216 amount=-1 +kerning first=109 second=106 amount=-1 +kerning first=109 second=108 amount=-1 +kerning first=202 second=214 amount=-1 +kerning first=202 second=213 amount=-1 +kerning first=202 second=212 amount=-1 +kerning first=109 second=112 amount=-1 +kerning first=202 second=211 amount=-1 +kerning first=109 second=115 amount=-1 +kerning first=109 second=117 amount=-1 +kerning first=109 second=118 amount=-2 +kerning first=109 second=119 amount=-2 +kerning first=202 second=210 amount=-1 +kerning first=109 second=121 amount=-1 +kerning first=202 second=209 amount=-1 +kerning first=109 second=171 amount=-2 +kerning first=109 second=224 amount=-1 +kerning first=109 second=225 amount=-1 +kerning first=109 second=226 amount=-1 +kerning first=109 second=227 amount=-1 +kerning first=109 second=228 amount=-1 +kerning first=109 second=229 amount=-1 +kerning first=109 second=230 amount=-1 +kerning first=202 second=207 amount=-1 +kerning first=202 second=206 amount=-1 +kerning first=202 second=205 amount=-1 +kerning first=202 second=204 amount=-1 +kerning first=202 second=203 amount=-1 +kerning first=202 second=202 amount=-1 +kerning first=202 second=201 amount=-1 +kerning first=202 second=200 amount=-1 +kerning first=202 second=199 amount=-1 +kerning first=202 second=198 amount=-1 +kerning first=202 second=197 amount=-1 +kerning first=202 second=196 amount=-1 +kerning first=202 second=194 amount=-1 +kerning first=202 second=193 amount=-1 +kerning first=109 second=249 amount=-1 +kerning first=109 second=250 amount=-1 +kerning first=109 second=251 amount=-1 +kerning first=109 second=252 amount=-1 +kerning first=109 second=253 amount=-1 +kerning first=109 second=254 amount=-1 +kerning first=109 second=255 amount=-1 +kerning first=109 second=257 amount=-1 +kerning first=109 second=259 amount=-1 +kerning first=109 second=261 amount=-1 +kerning first=202 second=192 amount=-1 +kerning first=202 second=171 amount=-1 +kerning first=202 second=122 amount=-1 +kerning first=202 second=120 amount=-1 +kerning first=202 second=119 amount=-1 +kerning first=202 second=118 amount=-1 +kerning first=202 second=117 amount=-1 +kerning first=202 second=115 amount=-1 +kerning first=202 second=112 amount=-1 +kerning first=202 second=110 amount=-1 +kerning first=109 second=287 amount=-1 +kerning first=109 second=289 amount=-1 +kerning first=109 second=291 amount=-1 +kerning first=202 second=109 amount=-1 +kerning first=202 second=108 amount=-1 +kerning first=202 second=107 amount=-1 +kerning first=109 second=314 amount=-1 +kerning first=109 second=316 amount=-1 +kerning first=109 second=318 amount=-1 +kerning first=202 second=104 amount=-1 +kerning first=202 second=103 amount=-2 +kerning first=202 second=102 amount=-1 +kerning first=202 second=98 amount=-1 +kerning first=202 second=97 amount=-1 +kerning first=202 second=90 amount=-1 +kerning first=202 second=89 amount=-1 +kerning first=202 second=87 amount=-1 +kerning first=109 second=347 amount=-1 +kerning first=109 second=351 amount=-1 +kerning first=109 second=353 amount=-1 +kerning first=109 second=361 amount=-1 +kerning first=109 second=363 amount=-1 +kerning first=109 second=365 amount=-1 +kerning first=109 second=367 amount=-1 +kerning first=109 second=369 amount=-1 +kerning first=109 second=371 amount=-1 +kerning first=109 second=375 amount=-1 +kerning first=202 second=86 amount=-1 +kerning first=202 second=85 amount=-1 +kerning first=202 second=84 amount=-1 +kerning first=202 second=83 amount=-1 +kerning first=202 second=82 amount=-1 +kerning first=202 second=81 amount=-1 +kerning first=202 second=80 amount=-1 +kerning first=202 second=79 amount=-1 +kerning first=202 second=78 amount=-1 +kerning first=202 second=77 amount=-1 +kerning first=202 second=76 amount=-1 +kerning first=202 second=75 amount=-1 +kerning first=202 second=74 amount=-1 +kerning first=109 second=8217 amount=-3 +kerning first=109 second=8220 amount=-3 +kerning first=109 second=8221 amount=-3 +kerning first=109 second=8249 amount=-2 +kerning first=202 second=73 amount=-1 +kerning first=202 second=72 amount=-1 +kerning first=202 second=71 amount=-1 +kerning first=202 second=70 amount=-1 +kerning first=202 second=69 amount=-1 +kerning first=110 second=44 amount=-1 +kerning first=110 second=45 amount=-2 +kerning first=110 second=46 amount=-1 +kerning first=110 second=97 amount=-1 +kerning first=110 second=98 amount=-1 +kerning first=202 second=68 amount=-1 +kerning first=202 second=67 amount=-1 +kerning first=202 second=66 amount=-1 +kerning first=202 second=65 amount=-1 +kerning first=110 second=103 amount=-1 +kerning first=202 second=46 amount=-1 +kerning first=110 second=106 amount=-1 +kerning first=110 second=108 amount=-1 +kerning first=202 second=45 amount=-1 +kerning first=202 second=44 amount=-1 +kerning first=201 second=8249 amount=-1 +kerning first=110 second=112 amount=-1 +kerning first=201 second=382 amount=-1 +kerning first=110 second=115 amount=-1 +kerning first=110 second=117 amount=-1 +kerning first=110 second=118 amount=-2 +kerning first=110 second=119 amount=-2 +kerning first=201 second=381 amount=-1 +kerning first=110 second=121 amount=-1 +kerning first=201 second=380 amount=-1 +kerning first=110 second=171 amount=-2 +kerning first=110 second=224 amount=-1 +kerning first=110 second=225 amount=-1 +kerning first=110 second=226 amount=-1 +kerning first=110 second=227 amount=-1 +kerning first=110 second=228 amount=-1 +kerning first=110 second=229 amount=-1 +kerning first=110 second=230 amount=-1 +kerning first=201 second=379 amount=-1 +kerning first=201 second=378 amount=-1 +kerning first=201 second=377 amount=-1 +kerning first=201 second=374 amount=-1 +kerning first=201 second=370 amount=-1 +kerning first=201 second=369 amount=-1 +kerning first=201 second=368 amount=-1 +kerning first=201 second=367 amount=-1 +kerning first=201 second=366 amount=-1 +kerning first=201 second=365 amount=-1 +kerning first=201 second=364 amount=-1 +kerning first=201 second=363 amount=-1 +kerning first=201 second=362 amount=-1 +kerning first=201 second=361 amount=-1 +kerning first=110 second=249 amount=-1 +kerning first=110 second=250 amount=-1 +kerning first=110 second=251 amount=-1 +kerning first=110 second=252 amount=-1 +kerning first=110 second=253 amount=-1 +kerning first=110 second=254 amount=-1 +kerning first=110 second=255 amount=-1 +kerning first=110 second=257 amount=-1 +kerning first=110 second=259 amount=-1 +kerning first=110 second=261 amount=-1 +kerning first=201 second=356 amount=-1 +kerning first=201 second=354 amount=-1 +kerning first=201 second=353 amount=-1 +kerning first=201 second=352 amount=-1 +kerning first=201 second=351 amount=-1 +kerning first=201 second=350 amount=-1 +kerning first=201 second=347 amount=-1 +kerning first=201 second=346 amount=-1 +kerning first=201 second=344 amount=-1 +kerning first=201 second=338 amount=-1 +kerning first=110 second=287 amount=-1 +kerning first=110 second=289 amount=-1 +kerning first=110 second=291 amount=-1 +kerning first=201 second=336 amount=-1 +kerning first=201 second=334 amount=-1 +kerning first=201 second=332 amount=-1 +kerning first=110 second=314 amount=-1 +kerning first=110 second=316 amount=-1 +kerning first=110 second=318 amount=-1 +kerning first=201 second=331 amount=-1 +kerning first=201 second=330 amount=-1 +kerning first=201 second=328 amount=-1 +kerning first=201 second=327 amount=-1 +kerning first=201 second=326 amount=-1 +kerning first=201 second=325 amount=-1 +kerning first=201 second=324 amount=-1 +kerning first=201 second=323 amount=-1 +kerning first=110 second=347 amount=-1 +kerning first=110 second=351 amount=-1 +kerning first=110 second=353 amount=-1 +kerning first=110 second=361 amount=-1 +kerning first=110 second=363 amount=-1 +kerning first=110 second=365 amount=-1 +kerning first=110 second=367 amount=-1 +kerning first=110 second=369 amount=-1 +kerning first=110 second=371 amount=-1 +kerning first=110 second=375 amount=-1 +kerning first=201 second=318 amount=-1 +kerning first=201 second=317 amount=-1 +kerning first=201 second=316 amount=-1 +kerning first=201 second=315 amount=-1 +kerning first=201 second=314 amount=-1 +kerning first=201 second=313 amount=-1 +kerning first=201 second=311 amount=-1 +kerning first=201 second=310 amount=-1 +kerning first=201 second=304 amount=-1 +kerning first=201 second=302 amount=-1 +kerning first=201 second=298 amount=-1 +kerning first=201 second=296 amount=-1 +kerning first=201 second=291 amount=-2 +kerning first=110 second=8217 amount=-3 +kerning first=110 second=8220 amount=-3 +kerning first=110 second=8221 amount=-3 +kerning first=110 second=8249 amount=-2 +kerning first=201 second=290 amount=-1 +kerning first=201 second=289 amount=-2 +kerning first=201 second=288 amount=-1 +kerning first=201 second=287 amount=-2 +kerning first=201 second=286 amount=-1 +kerning first=111 second=44 amount=-2 +kerning first=111 second=46 amount=-2 +kerning first=111 second=97 amount=-1 +kerning first=201 second=284 amount=-1 +kerning first=111 second=102 amount=-1 +kerning first=111 second=103 amount=-1 +kerning first=111 second=104 amount=-1 +kerning first=111 second=105 amount=-1 +kerning first=111 second=106 amount=-1 +kerning first=111 second=107 amount=-1 +kerning first=111 second=108 amount=-2 +kerning first=111 second=109 amount=-1 +kerning first=111 second=110 amount=-1 +kerning first=111 second=112 amount=-1 +kerning first=201 second=282 amount=-1 +kerning first=111 second=115 amount=-1 +kerning first=201 second=280 amount=-1 +kerning first=201 second=278 amount=-1 +kerning first=111 second=118 amount=-1 +kerning first=111 second=119 amount=-1 +kerning first=111 second=120 amount=-2 +kerning first=111 second=121 amount=-2 +kerning first=111 second=122 amount=-1 +kerning first=111 second=187 amount=-1 +kerning first=201 second=274 amount=-1 +kerning first=111 second=224 amount=-1 +kerning first=111 second=225 amount=-1 +kerning first=111 second=226 amount=-1 +kerning first=111 second=227 amount=-1 +kerning first=111 second=228 amount=-1 +kerning first=111 second=229 amount=-1 +kerning first=111 second=230 amount=-1 +kerning first=111 second=237 amount=-1 +kerning first=111 second=241 amount=-1 +kerning first=201 second=270 amount=-1 +kerning first=201 second=268 amount=-1 +kerning first=201 second=266 amount=-1 +kerning first=201 second=264 amount=-1 +kerning first=111 second=253 amount=-2 +kerning first=201 second=262 amount=-1 +kerning first=111 second=255 amount=-2 +kerning first=111 second=257 amount=-1 +kerning first=111 second=259 amount=-1 +kerning first=111 second=261 amount=-1 +kerning first=111 second=287 amount=-1 +kerning first=111 second=289 amount=-1 +kerning first=111 second=291 amount=-1 +kerning first=111 second=303 amount=-1 +kerning first=111 second=305 amount=-1 +kerning first=111 second=307 amount=-1 +kerning first=111 second=311 amount=-1 +kerning first=111 second=314 amount=-2 +kerning first=111 second=316 amount=-2 +kerning first=111 second=318 amount=-2 +kerning first=111 second=324 amount=-1 +kerning first=111 second=326 amount=-1 +kerning first=111 second=328 amount=-1 +kerning first=111 second=331 amount=-1 +kerning first=201 second=261 amount=-1 +kerning first=111 second=347 amount=-1 +kerning first=111 second=351 amount=-1 +kerning first=111 second=353 amount=-1 +kerning first=201 second=260 amount=-1 +kerning first=201 second=259 amount=-1 +kerning first=201 second=257 amount=-1 +kerning first=201 second=256 amount=-1 +kerning first=201 second=254 amount=-1 +kerning first=201 second=252 amount=-1 +kerning first=201 second=251 amount=-1 +kerning first=111 second=375 amount=-2 +kerning first=111 second=378 amount=-1 +kerning first=111 second=380 amount=-1 +kerning first=111 second=382 amount=-1 +kerning first=201 second=250 amount=-1 +kerning first=201 second=249 amount=-1 +kerning first=201 second=241 amount=-1 +kerning first=201 second=230 amount=-1 +kerning first=201 second=229 amount=-1 +kerning first=201 second=228 amount=-1 +kerning first=201 second=227 amount=-1 +kerning first=201 second=226 amount=-1 +kerning first=201 second=225 amount=-1 +kerning first=201 second=224 amount=-1 +kerning first=201 second=223 amount=-1 +kerning first=111 second=8217 amount=-1 +kerning first=111 second=8220 amount=-1 +kerning first=111 second=8221 amount=-1 +kerning first=111 second=8250 amount=-1 +kerning first=201 second=221 amount=-1 +kerning first=201 second=220 amount=-1 +kerning first=201 second=219 amount=-1 +kerning first=201 second=218 amount=-1 +kerning first=201 second=217 amount=-1 +kerning first=112 second=44 amount=-2 +kerning first=112 second=46 amount=-2 +kerning first=112 second=97 amount=-1 +kerning first=201 second=216 amount=-1 +kerning first=112 second=102 amount=-1 +kerning first=112 second=103 amount=-1 +kerning first=112 second=104 amount=-1 +kerning first=112 second=105 amount=-1 +kerning first=112 second=106 amount=-1 +kerning first=112 second=107 amount=-1 +kerning first=112 second=108 amount=-2 +kerning first=112 second=109 amount=-1 +kerning first=112 second=110 amount=-1 +kerning first=112 second=112 amount=-1 +kerning first=201 second=214 amount=-1 +kerning first=112 second=115 amount=-1 +kerning first=201 second=213 amount=-1 +kerning first=201 second=212 amount=-1 +kerning first=112 second=118 amount=-1 +kerning first=112 second=119 amount=-1 +kerning first=112 second=120 amount=-2 +kerning first=112 second=121 amount=-2 +kerning first=112 second=122 amount=-1 +kerning first=112 second=187 amount=-1 +kerning first=201 second=211 amount=-1 +kerning first=112 second=224 amount=-1 +kerning first=112 second=225 amount=-1 +kerning first=112 second=226 amount=-1 +kerning first=112 second=227 amount=-1 +kerning first=112 second=228 amount=-1 +kerning first=112 second=229 amount=-1 +kerning first=112 second=230 amount=-1 +kerning first=112 second=237 amount=-1 +kerning first=112 second=241 amount=-1 +kerning first=201 second=210 amount=-1 +kerning first=201 second=209 amount=-1 +kerning first=201 second=207 amount=-1 +kerning first=201 second=206 amount=-1 +kerning first=112 second=253 amount=-2 +kerning first=201 second=205 amount=-1 +kerning first=112 second=255 amount=-2 +kerning first=112 second=257 amount=-1 +kerning first=112 second=259 amount=-1 +kerning first=112 second=261 amount=-1 +kerning first=112 second=287 amount=-1 +kerning first=112 second=289 amount=-1 +kerning first=112 second=291 amount=-1 +kerning first=112 second=303 amount=-1 +kerning first=112 second=305 amount=-1 +kerning first=112 second=307 amount=-1 +kerning first=112 second=311 amount=-1 +kerning first=112 second=314 amount=-2 +kerning first=112 second=316 amount=-2 +kerning first=112 second=318 amount=-2 +kerning first=112 second=324 amount=-1 +kerning first=112 second=326 amount=-1 +kerning first=112 second=328 amount=-1 +kerning first=112 second=331 amount=-1 +kerning first=201 second=204 amount=-1 +kerning first=112 second=347 amount=-1 +kerning first=112 second=351 amount=-1 +kerning first=112 second=353 amount=-1 +kerning first=201 second=203 amount=-1 +kerning first=201 second=202 amount=-1 +kerning first=201 second=201 amount=-1 +kerning first=201 second=200 amount=-1 +kerning first=201 second=199 amount=-1 +kerning first=201 second=198 amount=-1 +kerning first=201 second=197 amount=-1 +kerning first=112 second=375 amount=-2 +kerning first=112 second=378 amount=-1 +kerning first=112 second=380 amount=-1 +kerning first=112 second=382 amount=-1 +kerning first=201 second=196 amount=-1 +kerning first=201 second=194 amount=-1 +kerning first=201 second=193 amount=-1 +kerning first=201 second=192 amount=-1 +kerning first=201 second=171 amount=-1 +kerning first=201 second=122 amount=-1 +kerning first=201 second=120 amount=-1 +kerning first=201 second=119 amount=-1 +kerning first=201 second=118 amount=-1 +kerning first=201 second=117 amount=-1 +kerning first=201 second=115 amount=-1 +kerning first=112 second=8217 amount=-1 +kerning first=112 second=8220 amount=-1 +kerning first=112 second=8221 amount=-1 +kerning first=112 second=8250 amount=-1 +kerning first=201 second=112 amount=-1 +kerning first=201 second=110 amount=-1 +kerning first=201 second=109 amount=-1 +kerning first=201 second=108 amount=-1 +kerning first=201 second=107 amount=-1 +kerning first=113 second=44 amount=-1 +kerning first=113 second=45 amount=-1 +kerning first=113 second=46 amount=-1 +kerning first=113 second=97 amount=-1 +kerning first=113 second=98 amount=-1 +kerning first=113 second=99 amount=-1 +kerning first=113 second=100 amount=-1 +kerning first=113 second=101 amount=-1 +kerning first=113 second=102 amount=-1 +kerning first=113 second=104 amount=-1 +kerning first=113 second=105 amount=-1 +kerning first=113 second=106 amount=3 +kerning first=113 second=107 amount=-1 +kerning first=113 second=108 amount=-1 +kerning first=113 second=109 amount=-1 +kerning first=113 second=110 amount=-1 +kerning first=113 second=111 amount=-1 +kerning first=113 second=113 amount=-1 +kerning first=113 second=114 amount=-1 +kerning first=113 second=115 amount=-1 +kerning first=113 second=116 amount=-1 +kerning first=113 second=117 amount=-1 +kerning first=113 second=118 amount=-2 +kerning first=113 second=119 amount=-2 +kerning first=113 second=120 amount=-1 +kerning first=113 second=121 amount=-1 +kerning first=113 second=122 amount=-1 +kerning first=113 second=171 amount=-1 +kerning first=113 second=223 amount=-1 +kerning first=113 second=224 amount=-1 +kerning first=113 second=225 amount=-1 +kerning first=113 second=226 amount=-1 +kerning first=113 second=227 amount=-1 +kerning first=113 second=228 amount=-1 +kerning first=113 second=229 amount=-1 +kerning first=113 second=230 amount=-1 +kerning first=113 second=231 amount=-1 +kerning first=113 second=232 amount=-1 +kerning first=113 second=233 amount=-1 +kerning first=113 second=234 amount=-1 +kerning first=113 second=235 amount=-1 +kerning first=113 second=237 amount=-1 +kerning first=113 second=240 amount=-1 +kerning first=113 second=241 amount=-1 +kerning first=113 second=242 amount=-1 +kerning first=113 second=243 amount=-1 +kerning first=113 second=244 amount=-1 +kerning first=113 second=245 amount=-1 +kerning first=113 second=246 amount=-1 +kerning first=113 second=248 amount=-1 +kerning first=113 second=249 amount=-1 +kerning first=113 second=250 amount=-1 +kerning first=113 second=251 amount=-1 +kerning first=113 second=252 amount=-1 +kerning first=113 second=253 amount=-1 +kerning first=113 second=254 amount=-1 +kerning first=113 second=255 amount=-1 +kerning first=113 second=257 amount=-1 +kerning first=113 second=259 amount=-1 +kerning first=113 second=261 amount=-1 +kerning first=113 second=263 amount=-1 +kerning first=113 second=267 amount=-1 +kerning first=113 second=269 amount=-1 +kerning first=113 second=271 amount=-1 +kerning first=113 second=273 amount=-1 +kerning first=113 second=275 amount=-1 +kerning first=113 second=277 amount=-1 +kerning first=113 second=279 amount=-1 +kerning first=113 second=281 amount=-1 +kerning first=113 second=283 amount=-1 +kerning first=113 second=303 amount=-1 +kerning first=113 second=305 amount=-1 +kerning first=113 second=307 amount=-1 +kerning first=113 second=311 amount=-1 +kerning first=113 second=314 amount=-1 +kerning first=113 second=316 amount=-1 +kerning first=113 second=318 amount=-1 +kerning first=113 second=324 amount=-1 +kerning first=113 second=326 amount=-1 +kerning first=113 second=328 amount=-1 +kerning first=113 second=331 amount=-1 +kerning first=113 second=333 amount=-1 +kerning first=113 second=335 amount=-1 +kerning first=113 second=337 amount=-1 +kerning first=113 second=339 amount=-1 +kerning first=113 second=345 amount=-1 +kerning first=113 second=347 amount=-1 +kerning first=113 second=351 amount=-1 +kerning first=113 second=353 amount=-1 +kerning first=113 second=355 amount=-1 +kerning first=113 second=361 amount=-1 +kerning first=113 second=363 amount=-1 +kerning first=113 second=365 amount=-1 +kerning first=113 second=367 amount=-1 +kerning first=113 second=369 amount=-1 +kerning first=113 second=371 amount=-1 +kerning first=113 second=375 amount=-1 +kerning first=113 second=378 amount=-1 +kerning first=113 second=380 amount=-1 +kerning first=113 second=382 amount=-1 +kerning first=201 second=104 amount=-1 +kerning first=201 second=103 amount=-2 +kerning first=201 second=102 amount=-1 +kerning first=201 second=98 amount=-1 +kerning first=201 second=97 amount=-1 +kerning first=201 second=90 amount=-1 +kerning first=201 second=89 amount=-1 +kerning first=201 second=87 amount=-1 +kerning first=201 second=86 amount=-1 +kerning first=201 second=85 amount=-1 +kerning first=201 second=84 amount=-1 +kerning first=201 second=83 amount=-1 +kerning first=113 second=8217 amount=-2 +kerning first=113 second=8220 amount=-2 +kerning first=113 second=8221 amount=-2 +kerning first=113 second=8249 amount=-1 +kerning first=201 second=82 amount=-1 +kerning first=201 second=81 amount=-1 +kerning first=201 second=80 amount=-1 +kerning first=201 second=79 amount=-1 +kerning first=201 second=78 amount=-1 +kerning first=114 second=44 amount=-3 +kerning first=114 second=45 amount=-1 +kerning first=114 second=46 amount=-3 +kerning first=201 second=77 amount=-1 +kerning first=201 second=76 amount=-1 +kerning first=201 second=75 amount=-1 +kerning first=201 second=74 amount=-1 +kerning first=114 second=103 amount=-1 +kerning first=201 second=73 amount=-1 +kerning first=201 second=72 amount=-1 +kerning first=201 second=71 amount=-1 +kerning first=201 second=70 amount=-1 +kerning first=114 second=171 amount=-1 +kerning first=201 second=69 amount=-1 +kerning first=201 second=68 amount=-1 +kerning first=201 second=67 amount=-1 +kerning first=201 second=66 amount=-1 +kerning first=201 second=65 amount=-1 +kerning first=201 second=46 amount=-1 +kerning first=201 second=45 amount=-1 +kerning first=201 second=44 amount=-1 +kerning first=200 second=8249 amount=-1 +kerning first=200 second=382 amount=-1 +kerning first=200 second=381 amount=-1 +kerning first=200 second=380 amount=-1 +kerning first=200 second=379 amount=-1 +kerning first=200 second=378 amount=-1 +kerning first=200 second=377 amount=-1 +kerning first=200 second=374 amount=-1 +kerning first=200 second=370 amount=-1 +kerning first=200 second=369 amount=-1 +kerning first=200 second=368 amount=-1 +kerning first=200 second=367 amount=-1 +kerning first=200 second=366 amount=-1 +kerning first=200 second=365 amount=-1 +kerning first=200 second=364 amount=-1 +kerning first=200 second=363 amount=-1 +kerning first=200 second=362 amount=-1 +kerning first=200 second=361 amount=-1 +kerning first=200 second=356 amount=-1 +kerning first=200 second=354 amount=-1 +kerning first=200 second=353 amount=-1 +kerning first=200 second=352 amount=-1 +kerning first=200 second=351 amount=-1 +kerning first=200 second=350 amount=-1 +kerning first=114 second=287 amount=-1 +kerning first=114 second=289 amount=-1 +kerning first=114 second=291 amount=-1 +kerning first=200 second=347 amount=-1 +kerning first=200 second=346 amount=-1 +kerning first=200 second=344 amount=-1 +kerning first=200 second=338 amount=-1 +kerning first=200 second=336 amount=-1 +kerning first=200 second=334 amount=-1 +kerning first=200 second=332 amount=-1 +kerning first=200 second=331 amount=-1 +kerning first=200 second=330 amount=-1 +kerning first=200 second=328 amount=-1 +kerning first=200 second=327 amount=-1 +kerning first=200 second=326 amount=-1 +kerning first=114 second=8249 amount=-1 +kerning first=115 second=44 amount=-1 +kerning first=115 second=45 amount=-1 +kerning first=115 second=46 amount=-1 +kerning first=115 second=97 amount=-1 +kerning first=115 second=98 amount=-1 +kerning first=200 second=325 amount=-1 +kerning first=200 second=324 amount=-1 +kerning first=200 second=323 amount=-1 +kerning first=115 second=102 amount=-1 +kerning first=115 second=103 amount=-2 +kerning first=115 second=104 amount=-1 +kerning first=115 second=105 amount=-1 +kerning first=115 second=106 amount=-1 +kerning first=115 second=107 amount=-1 +kerning first=115 second=108 amount=-1 +kerning first=115 second=109 amount=-1 +kerning first=115 second=110 amount=-1 +kerning first=200 second=318 amount=-1 +kerning first=115 second=112 amount=-2 +kerning first=200 second=317 amount=-1 +kerning first=115 second=114 amount=-1 +kerning first=115 second=115 amount=-2 +kerning first=115 second=116 amount=-1 +kerning first=115 second=117 amount=-1 +kerning first=115 second=118 amount=-2 +kerning first=115 second=119 amount=-2 +kerning first=115 second=120 amount=-2 +kerning first=115 second=121 amount=-2 +kerning first=115 second=122 amount=-1 +kerning first=115 second=171 amount=-1 +kerning first=115 second=223 amount=-1 +kerning first=115 second=224 amount=-1 +kerning first=115 second=225 amount=-1 +kerning first=115 second=226 amount=-1 +kerning first=115 second=227 amount=-1 +kerning first=115 second=228 amount=-1 +kerning first=115 second=229 amount=-1 +kerning first=115 second=230 amount=-1 +kerning first=200 second=316 amount=-1 +kerning first=200 second=315 amount=-1 +kerning first=200 second=314 amount=-1 +kerning first=200 second=313 amount=-1 +kerning first=200 second=311 amount=-1 +kerning first=115 second=237 amount=-1 +kerning first=200 second=310 amount=-1 +kerning first=115 second=241 amount=-1 +kerning first=200 second=304 amount=-1 +kerning first=200 second=302 amount=-1 +kerning first=200 second=298 amount=-1 +kerning first=200 second=296 amount=-1 +kerning first=200 second=291 amount=-2 +kerning first=200 second=290 amount=-1 +kerning first=115 second=249 amount=-1 +kerning first=115 second=250 amount=-1 +kerning first=115 second=251 amount=-1 +kerning first=115 second=252 amount=-1 +kerning first=115 second=253 amount=-2 +kerning first=115 second=254 amount=-1 +kerning first=115 second=255 amount=-2 +kerning first=115 second=257 amount=-1 +kerning first=115 second=259 amount=-1 +kerning first=115 second=261 amount=-1 +kerning first=200 second=289 amount=-2 +kerning first=200 second=288 amount=-1 +kerning first=200 second=287 amount=-2 +kerning first=200 second=286 amount=-1 +kerning first=200 second=284 amount=-1 +kerning first=200 second=282 amount=-1 +kerning first=200 second=280 amount=-1 +kerning first=200 second=278 amount=-1 +kerning first=200 second=274 amount=-1 +kerning first=200 second=270 amount=-1 +kerning first=115 second=287 amount=-2 +kerning first=115 second=289 amount=-2 +kerning first=115 second=291 amount=-2 +kerning first=115 second=303 amount=-1 +kerning first=115 second=305 amount=-1 +kerning first=115 second=307 amount=-1 +kerning first=115 second=311 amount=-1 +kerning first=115 second=314 amount=-1 +kerning first=115 second=316 amount=-1 +kerning first=115 second=318 amount=-1 +kerning first=115 second=324 amount=-1 +kerning first=115 second=326 amount=-1 +kerning first=115 second=328 amount=-1 +kerning first=115 second=331 amount=-1 +kerning first=200 second=268 amount=-1 +kerning first=200 second=266 amount=-1 +kerning first=200 second=264 amount=-1 +kerning first=200 second=262 amount=-1 +kerning first=115 second=345 amount=-1 +kerning first=115 second=347 amount=-2 +kerning first=115 second=351 amount=-2 +kerning first=115 second=353 amount=-2 +kerning first=115 second=355 amount=-1 +kerning first=115 second=361 amount=-1 +kerning first=115 second=363 amount=-1 +kerning first=115 second=365 amount=-1 +kerning first=115 second=367 amount=-1 +kerning first=115 second=369 amount=-1 +kerning first=115 second=371 amount=-1 +kerning first=115 second=375 amount=-2 +kerning first=115 second=378 amount=-1 +kerning first=115 second=380 amount=-1 +kerning first=115 second=382 amount=-1 +kerning first=200 second=261 amount=-1 +kerning first=200 second=260 amount=-1 +kerning first=200 second=259 amount=-1 +kerning first=200 second=257 amount=-1 +kerning first=200 second=256 amount=-1 +kerning first=200 second=254 amount=-1 +kerning first=200 second=252 amount=-1 +kerning first=200 second=251 amount=-1 +kerning first=200 second=250 amount=-1 +kerning first=200 second=249 amount=-1 +kerning first=200 second=241 amount=-1 +kerning first=200 second=230 amount=-1 +kerning first=200 second=229 amount=-1 +kerning first=115 second=8217 amount=-1 +kerning first=115 second=8220 amount=-1 +kerning first=115 second=8221 amount=-1 +kerning first=115 second=8249 amount=-1 +kerning first=200 second=228 amount=-1 +kerning first=200 second=227 amount=-1 +kerning first=200 second=226 amount=-1 +kerning first=200 second=225 amount=-1 +kerning first=200 second=224 amount=-1 +kerning first=116 second=45 amount=-1 +kerning first=200 second=223 amount=-1 +kerning first=200 second=221 amount=-1 +kerning first=200 second=220 amount=-1 +kerning first=200 second=219 amount=-1 +kerning first=200 second=218 amount=-1 +kerning first=116 second=103 amount=-1 +kerning first=200 second=217 amount=-1 +kerning first=116 second=108 amount=-1 +kerning first=200 second=216 amount=-1 +kerning first=200 second=214 amount=-1 +kerning first=200 second=213 amount=-1 +kerning first=116 second=115 amount=-1 +kerning first=200 second=212 amount=-1 +kerning first=200 second=211 amount=-1 +kerning first=116 second=118 amount=-1 +kerning first=116 second=119 amount=-1 +kerning first=116 second=120 amount=-1 +kerning first=116 second=121 amount=-1 +kerning first=116 second=122 amount=-1 +kerning first=116 second=171 amount=-1 +kerning first=200 second=210 amount=-1 +kerning first=200 second=209 amount=-1 +kerning first=200 second=207 amount=-1 +kerning first=200 second=206 amount=-1 +kerning first=200 second=205 amount=-1 +kerning first=200 second=204 amount=-1 +kerning first=200 second=203 amount=-1 +kerning first=200 second=202 amount=-1 +kerning first=200 second=201 amount=-1 +kerning first=200 second=200 amount=-1 +kerning first=200 second=199 amount=-1 +kerning first=200 second=198 amount=-1 +kerning first=200 second=197 amount=-1 +kerning first=200 second=196 amount=-1 +kerning first=200 second=194 amount=-1 +kerning first=200 second=193 amount=-1 +kerning first=200 second=192 amount=-1 +kerning first=200 second=171 amount=-1 +kerning first=200 second=122 amount=-1 +kerning first=200 second=120 amount=-1 +kerning first=200 second=119 amount=-1 +kerning first=200 second=118 amount=-1 +kerning first=200 second=117 amount=-1 +kerning first=200 second=115 amount=-1 +kerning first=116 second=253 amount=-1 +kerning first=200 second=112 amount=-1 +kerning first=116 second=255 amount=-1 +kerning first=200 second=110 amount=-1 +kerning first=200 second=109 amount=-1 +kerning first=200 second=108 amount=-1 +kerning first=200 second=107 amount=-1 +kerning first=200 second=104 amount=-1 +kerning first=200 second=103 amount=-2 +kerning first=200 second=102 amount=-1 +kerning first=200 second=98 amount=-1 +kerning first=200 second=97 amount=-1 +kerning first=200 second=90 amount=-1 +kerning first=200 second=89 amount=-1 +kerning first=200 second=87 amount=-1 +kerning first=200 second=86 amount=-1 +kerning first=116 second=287 amount=-1 +kerning first=116 second=289 amount=-1 +kerning first=116 second=291 amount=-1 +kerning first=200 second=85 amount=-1 +kerning first=200 second=84 amount=-1 +kerning first=116 second=314 amount=-1 +kerning first=116 second=316 amount=-1 +kerning first=116 second=318 amount=-1 +kerning first=200 second=83 amount=-1 +kerning first=200 second=82 amount=-1 +kerning first=200 second=81 amount=-1 +kerning first=200 second=80 amount=-1 +kerning first=116 second=347 amount=-1 +kerning first=116 second=351 amount=-1 +kerning first=116 second=353 amount=-1 +kerning first=200 second=79 amount=-1 +kerning first=200 second=78 amount=-1 +kerning first=200 second=77 amount=-1 +kerning first=200 second=76 amount=-1 +kerning first=200 second=75 amount=-1 +kerning first=200 second=74 amount=-1 +kerning first=200 second=73 amount=-1 +kerning first=116 second=375 amount=-1 +kerning first=116 second=378 amount=-1 +kerning first=116 second=380 amount=-1 +kerning first=116 second=382 amount=-1 +kerning first=200 second=72 amount=-1 +kerning first=200 second=71 amount=-1 +kerning first=200 second=70 amount=-1 +kerning first=200 second=69 amount=-1 +kerning first=200 second=68 amount=-1 +kerning first=200 second=67 amount=-1 +kerning first=200 second=66 amount=-1 +kerning first=200 second=65 amount=-1 +kerning first=200 second=46 amount=-1 +kerning first=200 second=45 amount=-1 +kerning first=116 second=8249 amount=-1 +kerning first=117 second=44 amount=-1 +kerning first=117 second=45 amount=-1 +kerning first=117 second=46 amount=-1 +kerning first=117 second=97 amount=-1 +kerning first=117 second=98 amount=-1 +kerning first=117 second=99 amount=-1 +kerning first=117 second=100 amount=-1 +kerning first=117 second=101 amount=-1 +kerning first=117 second=102 amount=-1 +kerning first=117 second=103 amount=-2 +kerning first=117 second=104 amount=-1 +kerning first=117 second=105 amount=-1 +kerning first=117 second=106 amount=-1 +kerning first=117 second=107 amount=-1 +kerning first=117 second=108 amount=-2 +kerning first=117 second=109 amount=-1 +kerning first=117 second=110 amount=-1 +kerning first=117 second=111 amount=-1 +kerning first=117 second=112 amount=-1 +kerning first=117 second=113 amount=-1 +kerning first=200 second=44 amount=-1 +kerning first=117 second=115 amount=-1 +kerning first=199 second=8249 amount=-3 +kerning first=117 second=117 amount=-1 +kerning first=117 second=118 amount=-2 +kerning first=117 second=119 amount=-2 +kerning first=117 second=120 amount=-1 +kerning first=117 second=121 amount=-2 +kerning first=117 second=122 amount=-1 +kerning first=117 second=171 amount=-1 +kerning first=199 second=382 amount=-2 +kerning first=199 second=381 amount=-1 +kerning first=117 second=225 amount=-1 +kerning first=117 second=226 amount=-1 +kerning first=117 second=227 amount=-1 +kerning first=199 second=380 amount=-2 +kerning first=117 second=229 amount=-1 +kerning first=117 second=230 amount=-1 +kerning first=117 second=231 amount=-1 +kerning first=117 second=232 amount=-1 +kerning first=117 second=233 amount=-1 +kerning first=117 second=234 amount=-1 +kerning first=117 second=235 amount=-1 +kerning first=117 second=237 amount=-1 +kerning first=117 second=240 amount=-1 +kerning first=117 second=241 amount=-1 +kerning first=117 second=242 amount=-1 +kerning first=117 second=243 amount=-1 +kerning first=117 second=244 amount=-1 +kerning first=117 second=245 amount=-1 +kerning first=117 second=246 amount=-1 +kerning first=117 second=248 amount=-1 +kerning first=117 second=249 amount=-1 +kerning first=117 second=250 amount=-1 +kerning first=117 second=251 amount=-1 +kerning first=117 second=252 amount=-1 +kerning first=117 second=253 amount=-2 +kerning first=117 second=254 amount=-1 +kerning first=117 second=255 amount=-2 +kerning first=117 second=257 amount=-1 +kerning first=117 second=259 amount=-1 +kerning first=117 second=261 amount=-1 +kerning first=117 second=263 amount=-1 +kerning first=117 second=267 amount=-1 +kerning first=117 second=269 amount=-1 +kerning first=117 second=271 amount=-1 +kerning first=117 second=273 amount=-1 +kerning first=117 second=275 amount=-1 +kerning first=117 second=277 amount=-1 +kerning first=117 second=279 amount=-1 +kerning first=117 second=281 amount=-1 +kerning first=117 second=283 amount=-1 +kerning first=117 second=287 amount=-2 +kerning first=117 second=289 amount=-2 +kerning first=117 second=291 amount=-2 +kerning first=117 second=303 amount=-1 +kerning first=117 second=305 amount=-1 +kerning first=117 second=307 amount=-1 +kerning first=117 second=311 amount=-1 +kerning first=117 second=314 amount=-2 +kerning first=117 second=316 amount=-2 +kerning first=117 second=318 amount=-2 +kerning first=117 second=324 amount=-1 +kerning first=117 second=326 amount=-1 +kerning first=117 second=328 amount=-1 +kerning first=117 second=331 amount=-1 +kerning first=117 second=333 amount=-1 +kerning first=117 second=335 amount=-1 +kerning first=117 second=337 amount=-1 +kerning first=117 second=339 amount=-1 +kerning first=199 second=379 amount=-1 +kerning first=117 second=347 amount=-1 +kerning first=117 second=351 amount=-1 +kerning first=117 second=353 amount=-1 +kerning first=199 second=378 amount=-2 +kerning first=117 second=361 amount=-1 +kerning first=117 second=363 amount=-1 +kerning first=117 second=365 amount=-1 +kerning first=117 second=367 amount=-1 +kerning first=117 second=369 amount=-1 +kerning first=117 second=371 amount=-1 +kerning first=117 second=375 amount=-2 +kerning first=117 second=378 amount=-1 +kerning first=117 second=380 amount=-1 +kerning first=117 second=382 amount=-1 +kerning first=199 second=377 amount=-1 +kerning first=199 second=374 amount=-1 +kerning first=199 second=370 amount=-1 +kerning first=199 second=369 amount=-1 +kerning first=199 second=368 amount=-1 +kerning first=199 second=367 amount=-1 +kerning first=199 second=366 amount=-1 +kerning first=199 second=365 amount=-1 +kerning first=199 second=364 amount=-1 +kerning first=199 second=363 amount=-1 +kerning first=199 second=362 amount=-1 +kerning first=199 second=361 amount=-1 +kerning first=199 second=356 amount=-1 +kerning first=117 second=8217 amount=-2 +kerning first=117 second=8220 amount=-2 +kerning first=117 second=8221 amount=-2 +kerning first=117 second=8249 amount=-1 +kerning first=199 second=354 amount=-1 +kerning first=199 second=353 amount=-1 +kerning first=199 second=352 amount=-2 +kerning first=199 second=351 amount=-1 +kerning first=199 second=350 amount=-2 +kerning first=118 second=44 amount=-4 +kerning first=118 second=45 amount=-3 +kerning first=118 second=46 amount=-4 +kerning first=118 second=97 amount=-2 +kerning first=118 second=98 amount=-1 +kerning first=118 second=99 amount=-2 +kerning first=118 second=100 amount=-2 +kerning first=118 second=101 amount=-2 +kerning first=118 second=103 amount=-2 +kerning first=118 second=104 amount=-1 +kerning first=118 second=105 amount=-1 +kerning first=118 second=106 amount=-1 +kerning first=118 second=107 amount=-1 +kerning first=118 second=108 amount=-2 +kerning first=118 second=109 amount=-1 +kerning first=118 second=110 amount=-1 +kerning first=118 second=111 amount=-2 +kerning first=118 second=112 amount=-1 +kerning first=118 second=113 amount=-2 +kerning first=118 second=114 amount=-1 +kerning first=118 second=115 amount=-2 +kerning first=118 second=116 amount=-1 +kerning first=199 second=347 amount=-1 +kerning first=118 second=118 amount=-1 +kerning first=118 second=119 amount=-1 +kerning first=118 second=120 amount=-1 +kerning first=118 second=122 amount=-2 +kerning first=118 second=171 amount=-3 +kerning first=118 second=223 amount=-1 +kerning first=118 second=224 amount=-2 +kerning first=118 second=225 amount=-2 +kerning first=118 second=226 amount=-2 +kerning first=118 second=227 amount=-2 +kerning first=118 second=228 amount=-2 +kerning first=118 second=229 amount=-2 +kerning first=118 second=230 amount=-2 +kerning first=118 second=231 amount=-2 +kerning first=118 second=232 amount=-2 +kerning first=118 second=233 amount=-2 +kerning first=118 second=234 amount=-2 +kerning first=118 second=235 amount=-2 +kerning first=118 second=237 amount=-1 +kerning first=118 second=240 amount=-2 +kerning first=118 second=241 amount=-1 +kerning first=118 second=242 amount=-2 +kerning first=118 second=243 amount=-2 +kerning first=118 second=244 amount=-2 +kerning first=118 second=245 amount=-2 +kerning first=118 second=246 amount=-2 +kerning first=118 second=248 amount=-2 +kerning first=199 second=346 amount=-2 +kerning first=199 second=345 amount=-1 +kerning first=199 second=344 amount=-2 +kerning first=199 second=339 amount=-1 +kerning first=118 second=254 amount=-1 +kerning first=118 second=257 amount=-2 +kerning first=118 second=259 amount=-2 +kerning first=118 second=261 amount=-2 +kerning first=118 second=263 amount=-2 +kerning first=118 second=267 amount=-2 +kerning first=118 second=269 amount=-2 +kerning first=118 second=271 amount=-2 +kerning first=118 second=273 amount=-2 +kerning first=118 second=275 amount=-2 +kerning first=118 second=277 amount=-2 +kerning first=118 second=279 amount=-2 +kerning first=118 second=281 amount=-2 +kerning first=118 second=283 amount=-2 +kerning first=118 second=287 amount=-2 +kerning first=118 second=289 amount=-2 +kerning first=118 second=291 amount=-2 +kerning first=118 second=303 amount=-1 +kerning first=118 second=305 amount=-1 +kerning first=118 second=307 amount=-1 +kerning first=118 second=311 amount=-1 +kerning first=118 second=314 amount=-2 +kerning first=118 second=316 amount=-2 +kerning first=118 second=318 amount=-2 +kerning first=118 second=324 amount=-1 +kerning first=118 second=326 amount=-1 +kerning first=118 second=328 amount=-1 +kerning first=118 second=331 amount=-1 +kerning first=118 second=333 amount=-2 +kerning first=118 second=335 amount=-2 +kerning first=118 second=337 amount=-2 +kerning first=118 second=339 amount=-2 +kerning first=118 second=345 amount=-1 +kerning first=118 second=347 amount=-2 +kerning first=118 second=351 amount=-2 +kerning first=118 second=353 amount=-2 +kerning first=118 second=355 amount=-1 +kerning first=199 second=338 amount=-2 +kerning first=199 second=337 amount=-1 +kerning first=199 second=336 amount=-2 +kerning first=199 second=335 amount=-1 +kerning first=199 second=334 amount=-2 +kerning first=199 second=333 amount=-1 +kerning first=118 second=378 amount=-2 +kerning first=118 second=380 amount=-2 +kerning first=118 second=382 amount=-2 +kerning first=199 second=332 amount=-2 +kerning first=199 second=331 amount=-1 +kerning first=199 second=330 amount=-2 +kerning first=199 second=328 amount=-1 +kerning first=199 second=327 amount=-2 +kerning first=199 second=326 amount=-1 +kerning first=199 second=325 amount=-2 +kerning first=199 second=324 amount=-1 +kerning first=199 second=323 amount=-2 +kerning first=199 second=318 amount=-1 +kerning first=199 second=317 amount=-2 +kerning first=118 second=8249 amount=-3 +kerning first=119 second=44 amount=-4 +kerning first=119 second=45 amount=-3 +kerning first=119 second=46 amount=-4 +kerning first=119 second=97 amount=-2 +kerning first=119 second=98 amount=-1 +kerning first=119 second=99 amount=-2 +kerning first=119 second=100 amount=-2 +kerning first=119 second=101 amount=-2 +kerning first=119 second=103 amount=-2 +kerning first=119 second=104 amount=-1 +kerning first=119 second=105 amount=-1 +kerning first=119 second=106 amount=-1 +kerning first=119 second=107 amount=-1 +kerning first=119 second=108 amount=-2 +kerning first=119 second=109 amount=-1 +kerning first=119 second=110 amount=-1 +kerning first=119 second=111 amount=-2 +kerning first=119 second=112 amount=-1 +kerning first=119 second=113 amount=-2 +kerning first=119 second=114 amount=-1 +kerning first=119 second=115 amount=-2 +kerning first=119 second=116 amount=-1 +kerning first=199 second=316 amount=-1 +kerning first=119 second=118 amount=-1 +kerning first=119 second=119 amount=-1 +kerning first=119 second=120 amount=-1 +kerning first=119 second=122 amount=-2 +kerning first=119 second=171 amount=-3 +kerning first=119 second=223 amount=-1 +kerning first=119 second=224 amount=-2 +kerning first=119 second=225 amount=-2 +kerning first=119 second=226 amount=-2 +kerning first=119 second=227 amount=-2 +kerning first=119 second=228 amount=-2 +kerning first=119 second=229 amount=-2 +kerning first=119 second=230 amount=-2 +kerning first=119 second=231 amount=-2 +kerning first=119 second=232 amount=-2 +kerning first=119 second=233 amount=-2 +kerning first=119 second=234 amount=-2 +kerning first=119 second=235 amount=-2 +kerning first=119 second=237 amount=-1 +kerning first=119 second=240 amount=-2 +kerning first=119 second=241 amount=-1 +kerning first=119 second=242 amount=-2 +kerning first=119 second=243 amount=-2 +kerning first=119 second=244 amount=-2 +kerning first=119 second=245 amount=-2 +kerning first=119 second=246 amount=-2 +kerning first=119 second=248 amount=-2 +kerning first=199 second=315 amount=-2 +kerning first=199 second=314 amount=-1 +kerning first=199 second=313 amount=-2 +kerning first=199 second=311 amount=-1 +kerning first=119 second=254 amount=-1 +kerning first=119 second=257 amount=-2 +kerning first=119 second=259 amount=-2 +kerning first=119 second=261 amount=-2 +kerning first=119 second=263 amount=-2 +kerning first=119 second=267 amount=-2 +kerning first=119 second=269 amount=-2 +kerning first=119 second=271 amount=-2 +kerning first=119 second=273 amount=-2 +kerning first=119 second=275 amount=-2 +kerning first=119 second=277 amount=-2 +kerning first=119 second=279 amount=-2 +kerning first=119 second=281 amount=-2 +kerning first=119 second=283 amount=-2 +kerning first=119 second=287 amount=-2 +kerning first=119 second=289 amount=-2 +kerning first=119 second=291 amount=-2 +kerning first=119 second=303 amount=-1 +kerning first=119 second=305 amount=-1 +kerning first=119 second=307 amount=-1 +kerning first=119 second=311 amount=-1 +kerning first=119 second=314 amount=-2 +kerning first=119 second=316 amount=-2 +kerning first=119 second=318 amount=-2 +kerning first=119 second=324 amount=-1 +kerning first=119 second=326 amount=-1 +kerning first=119 second=328 amount=-1 +kerning first=119 second=331 amount=-1 +kerning first=119 second=333 amount=-2 +kerning first=119 second=335 amount=-2 +kerning first=119 second=337 amount=-2 +kerning first=119 second=339 amount=-2 +kerning first=119 second=345 amount=-1 +kerning first=119 second=347 amount=-2 +kerning first=119 second=351 amount=-2 +kerning first=119 second=353 amount=-2 +kerning first=119 second=355 amount=-1 +kerning first=199 second=310 amount=-2 +kerning first=199 second=305 amount=-1 +kerning first=199 second=304 amount=-2 +kerning first=199 second=303 amount=-1 +kerning first=199 second=302 amount=-2 +kerning first=199 second=298 amount=-2 +kerning first=119 second=378 amount=-2 +kerning first=119 second=380 amount=-2 +kerning first=119 second=382 amount=-2 +kerning first=199 second=296 amount=-2 +kerning first=199 second=291 amount=-2 +kerning first=199 second=290 amount=-2 +kerning first=199 second=289 amount=-2 +kerning first=199 second=288 amount=-2 +kerning first=199 second=287 amount=-2 +kerning first=199 second=286 amount=-2 +kerning first=199 second=284 amount=-2 +kerning first=199 second=283 amount=-1 +kerning first=199 second=282 amount=-2 +kerning first=199 second=281 amount=-1 +kerning first=119 second=8249 amount=-3 +kerning first=120 second=44 amount=-1 +kerning first=120 second=45 amount=-2 +kerning first=120 second=46 amount=-1 +kerning first=120 second=97 amount=-2 +kerning first=120 second=98 amount=-2 +kerning first=120 second=99 amount=-1 +kerning first=120 second=100 amount=-1 +kerning first=120 second=101 amount=-1 +kerning first=199 second=280 amount=-2 +kerning first=120 second=103 amount=-1 +kerning first=199 second=279 amount=-1 +kerning first=199 second=278 amount=-2 +kerning first=199 second=277 amount=-1 +kerning first=199 second=275 amount=-1 +kerning first=120 second=111 amount=-1 +kerning first=120 second=112 amount=-2 +kerning first=120 second=113 amount=-1 +kerning first=120 second=115 amount=-2 +kerning first=120 second=116 amount=-1 +kerning first=120 second=117 amount=-2 +kerning first=120 second=118 amount=-2 +kerning first=120 second=119 amount=-2 +kerning first=199 second=274 amount=-2 +kerning first=120 second=121 amount=-2 +kerning first=120 second=122 amount=-1 +kerning first=120 second=171 amount=-2 +kerning first=120 second=224 amount=-2 +kerning first=120 second=225 amount=-2 +kerning first=120 second=226 amount=-2 +kerning first=120 second=227 amount=-2 +kerning first=120 second=228 amount=-2 +kerning first=120 second=229 amount=-2 +kerning first=120 second=230 amount=-2 +kerning first=120 second=231 amount=-1 +kerning first=120 second=232 amount=-1 +kerning first=120 second=233 amount=-1 +kerning first=120 second=234 amount=-1 +kerning first=120 second=235 amount=-1 +kerning first=199 second=270 amount=-2 +kerning first=120 second=240 amount=-1 +kerning first=199 second=269 amount=-1 +kerning first=120 second=242 amount=-1 +kerning first=120 second=243 amount=-1 +kerning first=120 second=244 amount=-1 +kerning first=120 second=245 amount=-1 +kerning first=120 second=246 amount=-1 +kerning first=120 second=248 amount=-1 +kerning first=120 second=249 amount=-2 +kerning first=120 second=250 amount=-2 +kerning first=120 second=251 amount=-2 +kerning first=120 second=252 amount=-2 +kerning first=120 second=253 amount=-2 +kerning first=120 second=254 amount=-2 +kerning first=120 second=255 amount=-2 +kerning first=120 second=257 amount=-2 +kerning first=120 second=259 amount=-2 +kerning first=120 second=261 amount=-2 +kerning first=120 second=263 amount=-1 +kerning first=120 second=267 amount=-1 +kerning first=120 second=269 amount=-1 +kerning first=120 second=271 amount=-1 +kerning first=120 second=273 amount=-1 +kerning first=120 second=275 amount=-1 +kerning first=120 second=277 amount=-1 +kerning first=120 second=279 amount=-1 +kerning first=120 second=281 amount=-1 +kerning first=120 second=283 amount=-1 +kerning first=120 second=287 amount=-1 +kerning first=120 second=289 amount=-1 +kerning first=120 second=291 amount=-1 +kerning first=199 second=268 amount=-2 +kerning first=199 second=267 amount=-1 +kerning first=199 second=266 amount=-2 +kerning first=199 second=264 amount=-2 +kerning first=199 second=263 amount=-1 +kerning first=199 second=262 amount=-2 +kerning first=199 second=261 amount=-1 +kerning first=199 second=260 amount=-2 +kerning first=199 second=259 amount=-1 +kerning first=199 second=257 amount=-1 +kerning first=120 second=333 amount=-1 +kerning first=120 second=335 amount=-1 +kerning first=120 second=337 amount=-1 +kerning first=120 second=339 amount=-1 +kerning first=120 second=347 amount=-2 +kerning first=120 second=351 amount=-2 +kerning first=120 second=353 amount=-2 +kerning first=120 second=355 amount=-1 +kerning first=120 second=361 amount=-2 +kerning first=120 second=363 amount=-2 +kerning first=120 second=365 amount=-2 +kerning first=120 second=367 amount=-2 +kerning first=120 second=369 amount=-2 +kerning first=120 second=371 amount=-2 +kerning first=120 second=375 amount=-2 +kerning first=120 second=378 amount=-1 +kerning first=120 second=380 amount=-1 +kerning first=120 second=382 amount=-1 +kerning first=199 second=256 amount=-2 +kerning first=199 second=254 amount=-1 +kerning first=199 second=252 amount=-1 +kerning first=199 second=251 amount=-1 +kerning first=199 second=250 amount=-1 +kerning first=199 second=249 amount=-1 +kerning first=199 second=248 amount=-1 +kerning first=199 second=246 amount=-1 +kerning first=199 second=245 amount=-1 +kerning first=199 second=244 amount=-1 +kerning first=199 second=243 amount=-1 +kerning first=199 second=242 amount=-1 +kerning first=120 second=8217 amount=-1 +kerning first=120 second=8220 amount=-1 +kerning first=120 second=8221 amount=-1 +kerning first=120 second=8249 amount=-2 +kerning first=199 second=241 amount=-1 +kerning first=199 second=240 amount=-1 +kerning first=199 second=237 amount=-1 +kerning first=199 second=235 amount=-1 +kerning first=199 second=234 amount=-1 +kerning first=121 second=44 amount=-4 +kerning first=121 second=45 amount=-3 +kerning first=121 second=46 amount=-4 +kerning first=121 second=97 amount=-2 +kerning first=121 second=98 amount=-1 +kerning first=121 second=99 amount=-2 +kerning first=121 second=100 amount=-2 +kerning first=121 second=101 amount=-2 +kerning first=121 second=103 amount=-2 +kerning first=121 second=104 amount=-1 +kerning first=121 second=105 amount=-1 +kerning first=121 second=106 amount=-1 +kerning first=121 second=107 amount=-1 +kerning first=121 second=108 amount=-2 +kerning first=121 second=109 amount=-1 +kerning first=121 second=110 amount=-1 +kerning first=121 second=111 amount=-2 +kerning first=121 second=112 amount=-1 +kerning first=121 second=113 amount=-2 +kerning first=121 second=114 amount=-1 +kerning first=121 second=115 amount=-2 +kerning first=121 second=116 amount=-1 +kerning first=199 second=233 amount=-1 +kerning first=121 second=118 amount=-1 +kerning first=121 second=119 amount=-1 +kerning first=121 second=120 amount=-1 +kerning first=121 second=122 amount=-2 +kerning first=121 second=171 amount=-3 +kerning first=121 second=223 amount=-1 +kerning first=121 second=224 amount=-2 +kerning first=121 second=225 amount=-2 +kerning first=121 second=226 amount=-2 +kerning first=121 second=227 amount=-2 +kerning first=121 second=228 amount=-2 +kerning first=121 second=229 amount=-2 +kerning first=121 second=230 amount=-2 +kerning first=121 second=231 amount=-2 +kerning first=121 second=232 amount=-2 +kerning first=121 second=233 amount=-2 +kerning first=121 second=234 amount=-2 +kerning first=121 second=235 amount=-2 +kerning first=121 second=237 amount=-1 +kerning first=121 second=240 amount=-2 +kerning first=121 second=241 amount=-1 +kerning first=121 second=242 amount=-2 +kerning first=121 second=243 amount=-2 +kerning first=121 second=244 amount=-2 +kerning first=121 second=245 amount=-2 +kerning first=121 second=246 amount=-2 +kerning first=121 second=248 amount=-2 +kerning first=199 second=232 amount=-1 +kerning first=199 second=231 amount=-1 +kerning first=199 second=230 amount=-1 +kerning first=199 second=229 amount=-1 +kerning first=121 second=254 amount=-1 +kerning first=121 second=257 amount=-2 +kerning first=121 second=259 amount=-2 +kerning first=121 second=261 amount=-2 +kerning first=121 second=263 amount=-2 +kerning first=121 second=267 amount=-2 +kerning first=121 second=269 amount=-2 +kerning first=121 second=271 amount=-2 +kerning first=121 second=273 amount=-2 +kerning first=121 second=275 amount=-2 +kerning first=121 second=277 amount=-2 +kerning first=121 second=279 amount=-2 +kerning first=121 second=281 amount=-2 +kerning first=121 second=283 amount=-2 +kerning first=121 second=287 amount=-2 +kerning first=121 second=289 amount=-2 +kerning first=121 second=291 amount=-2 +kerning first=121 second=303 amount=-1 +kerning first=121 second=305 amount=-1 +kerning first=121 second=307 amount=-1 +kerning first=121 second=311 amount=-1 +kerning first=121 second=314 amount=-2 +kerning first=121 second=316 amount=-2 +kerning first=121 second=318 amount=-2 +kerning first=121 second=324 amount=-1 +kerning first=121 second=326 amount=-1 +kerning first=121 second=328 amount=-1 +kerning first=121 second=331 amount=-1 +kerning first=121 second=333 amount=-2 +kerning first=121 second=335 amount=-2 +kerning first=121 second=337 amount=-2 +kerning first=121 second=339 amount=-2 +kerning first=121 second=345 amount=-1 +kerning first=121 second=347 amount=-2 +kerning first=121 second=351 amount=-2 +kerning first=121 second=353 amount=-2 +kerning first=121 second=355 amount=-1 +kerning first=199 second=228 amount=-1 +kerning first=199 second=227 amount=-1 +kerning first=199 second=226 amount=-1 +kerning first=199 second=225 amount=-1 +kerning first=199 second=224 amount=-1 +kerning first=199 second=223 amount=-1 +kerning first=121 second=378 amount=-2 +kerning first=121 second=380 amount=-2 +kerning first=121 second=382 amount=-2 +kerning first=199 second=221 amount=-1 +kerning first=199 second=220 amount=-1 +kerning first=199 second=219 amount=-1 +kerning first=199 second=218 amount=-1 +kerning first=199 second=217 amount=-1 +kerning first=199 second=216 amount=-2 +kerning first=199 second=214 amount=-2 +kerning first=199 second=213 amount=-2 +kerning first=199 second=212 amount=-2 +kerning first=199 second=211 amount=-2 +kerning first=199 second=210 amount=-2 +kerning first=121 second=8249 amount=-3 +kerning first=122 second=44 amount=-1 +kerning first=122 second=45 amount=-2 +kerning first=122 second=46 amount=-1 +kerning first=122 second=97 amount=-1 +kerning first=122 second=98 amount=-1 +kerning first=122 second=99 amount=-1 +kerning first=122 second=100 amount=-1 +kerning first=122 second=101 amount=-1 +kerning first=122 second=102 amount=-1 +kerning first=122 second=103 amount=-1 +kerning first=122 second=104 amount=-1 +kerning first=122 second=105 amount=-1 +kerning first=122 second=106 amount=-1 +kerning first=122 second=107 amount=-1 +kerning first=122 second=108 amount=-1 +kerning first=122 second=109 amount=-1 +kerning first=122 second=110 amount=-1 +kerning first=122 second=111 amount=-1 +kerning first=122 second=112 amount=-2 +kerning first=122 second=113 amount=-1 +kerning first=122 second=115 amount=-1 +kerning first=122 second=116 amount=-1 +kerning first=122 second=117 amount=-1 +kerning first=122 second=118 amount=-1 +kerning first=122 second=119 amount=-1 +kerning first=122 second=120 amount=-1 +kerning first=122 second=121 amount=-1 +kerning first=122 second=122 amount=-1 +kerning first=122 second=171 amount=-2 +kerning first=122 second=224 amount=-1 +kerning first=122 second=225 amount=-1 +kerning first=122 second=226 amount=-1 +kerning first=122 second=227 amount=-1 +kerning first=122 second=228 amount=-1 +kerning first=122 second=229 amount=-1 +kerning first=122 second=230 amount=-1 +kerning first=122 second=231 amount=-1 +kerning first=122 second=232 amount=-1 +kerning first=122 second=233 amount=-1 +kerning first=122 second=234 amount=-1 +kerning first=122 second=235 amount=-1 +kerning first=122 second=237 amount=-1 +kerning first=122 second=240 amount=-1 +kerning first=122 second=241 amount=-1 +kerning first=122 second=242 amount=-1 +kerning first=122 second=243 amount=-1 +kerning first=122 second=244 amount=-1 +kerning first=122 second=245 amount=-1 +kerning first=122 second=246 amount=-1 +kerning first=122 second=248 amount=-1 +kerning first=122 second=249 amount=-1 +kerning first=122 second=250 amount=-1 +kerning first=122 second=251 amount=-1 +kerning first=122 second=252 amount=-1 +kerning first=122 second=253 amount=-1 +kerning first=122 second=254 amount=-1 +kerning first=122 second=255 amount=-1 +kerning first=122 second=257 amount=-1 +kerning first=122 second=259 amount=-1 +kerning first=122 second=261 amount=-1 +kerning first=122 second=263 amount=-1 +kerning first=122 second=267 amount=-1 +kerning first=122 second=269 amount=-1 +kerning first=122 second=271 amount=-1 +kerning first=122 second=273 amount=-1 +kerning first=122 second=275 amount=-1 +kerning first=122 second=277 amount=-1 +kerning first=122 second=279 amount=-1 +kerning first=122 second=281 amount=-1 +kerning first=122 second=283 amount=-1 +kerning first=122 second=287 amount=-1 +kerning first=122 second=289 amount=-1 +kerning first=122 second=291 amount=-1 +kerning first=122 second=303 amount=-1 +kerning first=122 second=305 amount=-1 +kerning first=122 second=307 amount=-1 +kerning first=122 second=311 amount=-1 +kerning first=122 second=314 amount=-1 +kerning first=122 second=316 amount=-1 +kerning first=122 second=318 amount=-1 +kerning first=122 second=324 amount=-1 +kerning first=122 second=326 amount=-1 +kerning first=122 second=328 amount=-1 +kerning first=122 second=331 amount=-1 +kerning first=122 second=333 amount=-1 +kerning first=122 second=335 amount=-1 +kerning first=122 second=337 amount=-1 +kerning first=122 second=339 amount=-1 +kerning first=122 second=347 amount=-1 +kerning first=122 second=351 amount=-1 +kerning first=122 second=353 amount=-1 +kerning first=122 second=355 amount=-1 +kerning first=122 second=361 amount=-1 +kerning first=122 second=363 amount=-1 +kerning first=122 second=365 amount=-1 +kerning first=122 second=367 amount=-1 +kerning first=122 second=369 amount=-1 +kerning first=122 second=371 amount=-1 +kerning first=122 second=375 amount=-1 +kerning first=122 second=378 amount=-1 +kerning first=122 second=380 amount=-1 +kerning first=122 second=382 amount=-1 +kerning first=199 second=209 amount=-2 +kerning first=199 second=207 amount=-2 +kerning first=199 second=206 amount=-2 +kerning first=199 second=205 amount=-2 +kerning first=199 second=204 amount=-2 +kerning first=199 second=203 amount=-2 +kerning first=199 second=202 amount=-2 +kerning first=199 second=201 amount=-2 +kerning first=199 second=200 amount=-2 +kerning first=199 second=199 amount=-2 +kerning first=199 second=198 amount=-2 +kerning first=199 second=197 amount=-2 +kerning first=199 second=196 amount=-2 +kerning first=122 second=8249 amount=-2 +kerning first=199 second=194 amount=-2 +kerning first=199 second=193 amount=-2 +kerning first=199 second=192 amount=-2 +kerning first=199 second=171 amount=-3 +kerning first=199 second=122 amount=-2 +kerning first=171 second=84 amount=-2 +kerning first=171 second=86 amount=-2 +kerning first=171 second=87 amount=-2 +kerning first=171 second=89 amount=-2 +kerning first=171 second=221 amount=-2 +kerning first=171 second=354 amount=-2 +kerning first=171 second=356 amount=-2 +kerning first=171 second=374 amount=-2 +kerning first=199 second=119 amount=-1 +kerning first=199 second=118 amount=-1 +kerning first=199 second=117 amount=-1 +kerning first=187 second=65 amount=-3 +kerning first=187 second=66 amount=-4 +kerning first=187 second=68 amount=-4 +kerning first=187 second=69 amount=-4 +kerning first=187 second=70 amount=-4 +kerning first=187 second=72 amount=-4 +kerning first=187 second=73 amount=-4 +kerning first=187 second=74 amount=-3 +kerning first=187 second=75 amount=-4 +kerning first=187 second=76 amount=-4 +kerning first=187 second=77 amount=-4 +kerning first=187 second=78 amount=-4 +kerning first=187 second=80 amount=-4 +kerning first=187 second=82 amount=-4 +kerning first=187 second=83 amount=-2 +kerning first=187 second=84 amount=-3 +kerning first=187 second=85 amount=-3 +kerning first=187 second=86 amount=-3 +kerning first=187 second=87 amount=-3 +kerning first=187 second=89 amount=-3 +kerning first=187 second=90 amount=-3 +kerning first=187 second=97 amount=-1 +kerning first=187 second=98 amount=-1 +kerning first=187 second=102 amount=-1 +kerning first=187 second=103 amount=-2 +kerning first=187 second=104 amount=-1 +kerning first=187 second=105 amount=-1 +kerning first=187 second=106 amount=-1 +kerning first=187 second=107 amount=-1 +kerning first=187 second=108 amount=-1 +kerning first=187 second=109 amount=-1 +kerning first=187 second=110 amount=-1 +kerning first=187 second=112 amount=-1 +kerning first=187 second=114 amount=-1 +kerning first=187 second=115 amount=-1 +kerning first=187 second=116 amount=-1 +kerning first=187 second=117 amount=-1 +kerning first=187 second=118 amount=-2 +kerning first=187 second=119 amount=-2 +kerning first=187 second=120 amount=-2 +kerning first=187 second=121 amount=-2 +kerning first=187 second=122 amount=-4 +kerning first=187 second=192 amount=-3 +kerning first=187 second=193 amount=-3 +kerning first=187 second=194 amount=-3 +kerning first=187 second=195 amount=-3 +kerning first=187 second=196 amount=-3 +kerning first=187 second=197 amount=-3 +kerning first=187 second=198 amount=-3 +kerning first=187 second=200 amount=-4 +kerning first=187 second=201 amount=-4 +kerning first=187 second=202 amount=-4 +kerning first=187 second=203 amount=-4 +kerning first=187 second=204 amount=-4 +kerning first=187 second=205 amount=-4 +kerning first=187 second=206 amount=-4 +kerning first=187 second=207 amount=-4 +kerning first=187 second=209 amount=-4 +kerning first=187 second=217 amount=-3 +kerning first=187 second=218 amount=-3 +kerning first=187 second=219 amount=-3 +kerning first=187 second=220 amount=-3 +kerning first=187 second=221 amount=-3 +kerning first=187 second=223 amount=-1 +kerning first=187 second=224 amount=-1 +kerning first=187 second=225 amount=-1 +kerning first=187 second=226 amount=-1 +kerning first=187 second=227 amount=-1 +kerning first=187 second=229 amount=-1 +kerning first=187 second=230 amount=-1 +kerning first=187 second=237 amount=-1 +kerning first=187 second=241 amount=-1 +kerning first=187 second=249 amount=-1 +kerning first=187 second=250 amount=-1 +kerning first=187 second=251 amount=-1 +kerning first=187 second=252 amount=-1 +kerning first=187 second=253 amount=-2 +kerning first=187 second=254 amount=-1 +kerning first=187 second=255 amount=-2 +kerning first=187 second=256 amount=-3 +kerning first=187 second=257 amount=-1 +kerning first=187 second=259 amount=-1 +kerning first=187 second=260 amount=-3 +kerning first=187 second=261 amount=-1 +kerning first=187 second=270 amount=-4 +kerning first=187 second=274 amount=-4 +kerning first=187 second=278 amount=-4 +kerning first=187 second=280 amount=-4 +kerning first=187 second=282 amount=-4 +kerning first=187 second=287 amount=-2 +kerning first=187 second=289 amount=-2 +kerning first=187 second=291 amount=-2 +kerning first=187 second=296 amount=-4 +kerning first=187 second=298 amount=-4 +kerning first=187 second=302 amount=-4 +kerning first=187 second=303 amount=-1 +kerning first=187 second=305 amount=-1 +kerning first=187 second=307 amount=-1 +kerning first=187 second=310 amount=-4 +kerning first=187 second=311 amount=-1 +kerning first=187 second=313 amount=-4 +kerning first=187 second=314 amount=-1 +kerning first=187 second=315 amount=-4 +kerning first=187 second=316 amount=-1 +kerning first=187 second=317 amount=-4 +kerning first=187 second=318 amount=-1 +kerning first=187 second=323 amount=-4 +kerning first=187 second=324 amount=-1 +kerning first=187 second=325 amount=-4 +kerning first=187 second=326 amount=-1 +kerning first=187 second=327 amount=-4 +kerning first=187 second=328 amount=-1 +kerning first=187 second=330 amount=-4 +kerning first=187 second=331 amount=-1 +kerning first=187 second=344 amount=-4 +kerning first=187 second=345 amount=-1 +kerning first=187 second=346 amount=-2 +kerning first=187 second=347 amount=-1 +kerning first=187 second=350 amount=-2 +kerning first=187 second=351 amount=-1 +kerning first=187 second=352 amount=-2 +kerning first=187 second=353 amount=-1 +kerning first=187 second=354 amount=-3 +kerning first=187 second=355 amount=-1 +kerning first=187 second=356 amount=-3 +kerning first=187 second=357 amount=-1 +kerning first=187 second=361 amount=-1 +kerning first=187 second=362 amount=-3 +kerning first=187 second=363 amount=-1 +kerning first=187 second=364 amount=-3 +kerning first=187 second=365 amount=-1 +kerning first=187 second=366 amount=-3 +kerning first=187 second=367 amount=-1 +kerning first=187 second=368 amount=-3 +kerning first=187 second=369 amount=-1 +kerning first=187 second=370 amount=-3 +kerning first=187 second=371 amount=-1 +kerning first=187 second=374 amount=-3 +kerning first=187 second=375 amount=-2 +kerning first=187 second=377 amount=-3 +kerning first=187 second=378 amount=-4 +kerning first=187 second=379 amount=-3 +kerning first=187 second=380 amount=-4 +kerning first=187 second=381 amount=-3 +kerning first=187 second=382 amount=-4 +kerning first=199 second=115 amount=-1 +kerning first=199 second=114 amount=-1 +kerning first=199 second=113 amount=-1 +kerning first=199 second=112 amount=-2 +kerning first=199 second=111 amount=-1 +kerning first=199 second=110 amount=-1 +kerning first=199 second=109 amount=-1 +kerning first=199 second=108 amount=-1 +kerning first=199 second=107 amount=-1 +kerning first=199 second=106 amount=-1 +kerning first=199 second=105 amount=-1 +kerning first=199 second=104 amount=-1 +kerning first=199 second=103 amount=-2 +kerning first=199 second=102 amount=-1 +kerning first=199 second=101 amount=-1 +kerning first=199 second=100 amount=-1 +kerning first=199 second=99 amount=-1 +kerning first=199 second=98 amount=-1 +kerning first=199 second=97 amount=-1 +kerning first=199 second=90 amount=-1 +kerning first=199 second=89 amount=-1 +kerning first=199 second=87 amount=-1 +kerning first=199 second=86 amount=-1 +kerning first=199 second=85 amount=-1 +kerning first=199 second=84 amount=-1 +kerning first=199 second=83 amount=-2 +kerning first=199 second=82 amount=-2 +kerning first=199 second=81 amount=-2 +kerning first=199 second=80 amount=-2 +kerning first=199 second=79 amount=-2 +kerning first=192 second=45 amount=-3 +kerning first=192 second=67 amount=-2 +kerning first=192 second=71 amount=-2 +kerning first=192 second=79 amount=-2 +kerning first=192 second=81 amount=-2 +kerning first=192 second=83 amount=-2 +kerning first=192 second=84 amount=-5 +kerning first=192 second=85 amount=-2 +kerning first=192 second=86 amount=-5 +kerning first=192 second=87 amount=-5 +kerning first=192 second=89 amount=-5 +kerning first=192 second=98 amount=-1 +kerning first=192 second=99 amount=-1 +kerning first=192 second=100 amount=-1 +kerning first=192 second=101 amount=-1 +kerning first=199 second=78 amount=-2 +kerning first=192 second=103 amount=-2 +kerning first=192 second=104 amount=-1 +kerning first=199 second=77 amount=-2 +kerning first=192 second=107 amount=-1 +kerning first=192 second=108 amount=-1 +kerning first=192 second=111 amount=-1 +kerning first=192 second=112 amount=-2 +kerning first=192 second=113 amount=-1 +kerning first=192 second=115 amount=-2 +kerning first=192 second=116 amount=-1 +kerning first=192 second=117 amount=-2 +kerning first=192 second=118 amount=-2 +kerning first=192 second=119 amount=-2 +kerning first=192 second=121 amount=-2 +kerning first=192 second=171 amount=-3 +kerning first=192 second=199 amount=-2 +kerning first=192 second=210 amount=-2 +kerning first=192 second=211 amount=-2 +kerning first=192 second=212 amount=-2 +kerning first=192 second=213 amount=-2 +kerning first=192 second=214 amount=-2 +kerning first=192 second=216 amount=-2 +kerning first=192 second=217 amount=-2 +kerning first=192 second=218 amount=-2 +kerning first=192 second=219 amount=-2 +kerning first=192 second=220 amount=-2 +kerning first=192 second=221 amount=-5 +kerning first=192 second=231 amount=-1 +kerning first=192 second=232 amount=-1 +kerning first=192 second=233 amount=-1 +kerning first=192 second=234 amount=-1 +kerning first=192 second=235 amount=-1 +kerning first=199 second=76 amount=-2 +kerning first=192 second=240 amount=-1 +kerning first=192 second=242 amount=-1 +kerning first=192 second=243 amount=-1 +kerning first=192 second=244 amount=-1 +kerning first=192 second=245 amount=-1 +kerning first=192 second=246 amount=-1 +kerning first=192 second=248 amount=-1 +kerning first=192 second=249 amount=-2 +kerning first=192 second=250 amount=-2 +kerning first=192 second=251 amount=-2 +kerning first=192 second=252 amount=-2 +kerning first=192 second=253 amount=-2 +kerning first=192 second=254 amount=-1 +kerning first=192 second=255 amount=-2 +kerning first=192 second=262 amount=-2 +kerning first=192 second=263 amount=-1 +kerning first=192 second=264 amount=-2 +kerning first=192 second=266 amount=-2 +kerning first=192 second=267 amount=-1 +kerning first=192 second=268 amount=-2 +kerning first=192 second=269 amount=-1 +kerning first=192 second=275 amount=-1 +kerning first=192 second=277 amount=-1 +kerning first=192 second=279 amount=-1 +kerning first=192 second=281 amount=-1 +kerning first=192 second=283 amount=-1 +kerning first=192 second=284 amount=-2 +kerning first=192 second=286 amount=-2 +kerning first=192 second=287 amount=-2 +kerning first=192 second=288 amount=-2 +kerning first=192 second=289 amount=-2 +kerning first=192 second=290 amount=-2 +kerning first=192 second=291 amount=-2 +kerning first=199 second=75 amount=-2 +kerning first=199 second=74 amount=-1 +kerning first=192 second=311 amount=-1 +kerning first=192 second=314 amount=-1 +kerning first=192 second=316 amount=-1 +kerning first=192 second=318 amount=-1 +kerning first=192 second=332 amount=-2 +kerning first=192 second=333 amount=-1 +kerning first=192 second=334 amount=-2 +kerning first=192 second=335 amount=-1 +kerning first=192 second=336 amount=-2 +kerning first=192 second=337 amount=-1 +kerning first=192 second=338 amount=-2 +kerning first=192 second=339 amount=-1 +kerning first=192 second=346 amount=-2 +kerning first=192 second=347 amount=-2 +kerning first=192 second=350 amount=-2 +kerning first=192 second=351 amount=-2 +kerning first=192 second=352 amount=-2 +kerning first=192 second=353 amount=-2 +kerning first=192 second=354 amount=-5 +kerning first=192 second=355 amount=-1 +kerning first=192 second=356 amount=-5 +kerning first=192 second=361 amount=-2 +kerning first=192 second=362 amount=-2 +kerning first=192 second=363 amount=-2 +kerning first=192 second=364 amount=-2 +kerning first=192 second=365 amount=-2 +kerning first=192 second=366 amount=-2 +kerning first=192 second=367 amount=-2 +kerning first=192 second=368 amount=-2 +kerning first=192 second=369 amount=-2 +kerning first=192 second=370 amount=-2 +kerning first=192 second=374 amount=-5 +kerning first=192 second=375 amount=-2 +kerning first=199 second=73 amount=-2 +kerning first=199 second=72 amount=-2 +kerning first=199 second=71 amount=-2 +kerning first=199 second=70 amount=-2 +kerning first=199 second=69 amount=-2 +kerning first=199 second=68 amount=-2 +kerning first=199 second=67 amount=-2 +kerning first=199 second=66 amount=-2 +kerning first=199 second=65 amount=-2 +kerning first=199 second=46 amount=-1 +kerning first=199 second=45 amount=-3 +kerning first=199 second=44 amount=-1 +kerning first=198 second=8249 amount=-1 +kerning first=198 second=382 amount=-1 +kerning first=198 second=381 amount=-1 +kerning first=192 second=8217 amount=-4 +kerning first=192 second=8220 amount=-4 +kerning first=192 second=8221 amount=-4 +kerning first=192 second=8249 amount=-3 +kerning first=198 second=380 amount=-1 +kerning first=198 second=379 amount=-1 +kerning first=198 second=378 amount=-1 +kerning first=198 second=377 amount=-1 +kerning first=198 second=374 amount=-1 +kerning first=193 second=45 amount=-3 +kerning first=193 second=67 amount=-2 +kerning first=193 second=71 amount=-2 +kerning first=193 second=79 amount=-2 +kerning first=193 second=81 amount=-2 +kerning first=193 second=83 amount=-2 +kerning first=193 second=84 amount=-5 +kerning first=193 second=85 amount=-2 +kerning first=193 second=86 amount=-5 +kerning first=193 second=87 amount=-5 +kerning first=193 second=89 amount=-5 +kerning first=193 second=98 amount=-1 +kerning first=193 second=99 amount=-1 +kerning first=193 second=100 amount=-1 +kerning first=193 second=101 amount=-1 +kerning first=198 second=370 amount=-1 +kerning first=193 second=103 amount=-2 +kerning first=193 second=104 amount=-1 +kerning first=198 second=369 amount=-1 +kerning first=193 second=107 amount=-1 +kerning first=193 second=108 amount=-1 +kerning first=193 second=111 amount=-1 +kerning first=193 second=112 amount=-2 +kerning first=193 second=113 amount=-1 +kerning first=193 second=115 amount=-2 +kerning first=193 second=116 amount=-1 +kerning first=193 second=117 amount=-2 +kerning first=193 second=118 amount=-2 +kerning first=193 second=119 amount=-2 +kerning first=193 second=121 amount=-2 +kerning first=193 second=171 amount=-3 +kerning first=193 second=199 amount=-2 +kerning first=193 second=210 amount=-2 +kerning first=193 second=211 amount=-2 +kerning first=193 second=212 amount=-2 +kerning first=193 second=213 amount=-2 +kerning first=193 second=214 amount=-2 +kerning first=193 second=216 amount=-2 +kerning first=193 second=217 amount=-2 +kerning first=193 second=218 amount=-2 +kerning first=193 second=219 amount=-2 +kerning first=193 second=220 amount=-2 +kerning first=193 second=221 amount=-5 +kerning first=193 second=231 amount=-1 +kerning first=193 second=232 amount=-1 +kerning first=193 second=233 amount=-1 +kerning first=193 second=234 amount=-1 +kerning first=193 second=235 amount=-1 +kerning first=198 second=368 amount=-1 +kerning first=193 second=240 amount=-1 +kerning first=193 second=242 amount=-1 +kerning first=193 second=243 amount=-1 +kerning first=193 second=244 amount=-1 +kerning first=193 second=245 amount=-1 +kerning first=193 second=246 amount=-1 +kerning first=193 second=248 amount=-1 +kerning first=193 second=249 amount=-2 +kerning first=193 second=250 amount=-2 +kerning first=193 second=251 amount=-2 +kerning first=193 second=252 amount=-2 +kerning first=193 second=253 amount=-2 +kerning first=193 second=254 amount=-1 +kerning first=193 second=255 amount=-2 +kerning first=193 second=262 amount=-2 +kerning first=193 second=263 amount=-1 +kerning first=193 second=264 amount=-2 +kerning first=193 second=266 amount=-2 +kerning first=193 second=267 amount=-1 +kerning first=193 second=268 amount=-2 +kerning first=193 second=269 amount=-1 +kerning first=193 second=275 amount=-1 +kerning first=193 second=277 amount=-1 +kerning first=193 second=279 amount=-1 +kerning first=193 second=281 amount=-1 +kerning first=193 second=283 amount=-1 +kerning first=193 second=284 amount=-2 +kerning first=193 second=286 amount=-2 +kerning first=193 second=287 amount=-2 +kerning first=193 second=288 amount=-2 +kerning first=193 second=289 amount=-2 +kerning first=193 second=290 amount=-2 +kerning first=193 second=291 amount=-2 +kerning first=198 second=367 amount=-1 +kerning first=198 second=366 amount=-1 +kerning first=193 second=311 amount=-1 +kerning first=193 second=314 amount=-1 +kerning first=193 second=316 amount=-1 +kerning first=193 second=318 amount=-1 +kerning first=193 second=332 amount=-2 +kerning first=193 second=333 amount=-1 +kerning first=193 second=334 amount=-2 +kerning first=193 second=335 amount=-1 +kerning first=193 second=336 amount=-2 +kerning first=193 second=337 amount=-1 +kerning first=193 second=338 amount=-2 +kerning first=193 second=339 amount=-1 +kerning first=193 second=346 amount=-2 +kerning first=193 second=347 amount=-2 +kerning first=193 second=350 amount=-2 +kerning first=193 second=351 amount=-2 +kerning first=193 second=352 amount=-2 +kerning first=193 second=353 amount=-2 +kerning first=193 second=354 amount=-5 +kerning first=193 second=355 amount=-1 +kerning first=193 second=356 amount=-5 +kerning first=193 second=361 amount=-2 +kerning first=193 second=362 amount=-2 +kerning first=193 second=363 amount=-2 +kerning first=193 second=364 amount=-2 +kerning first=193 second=365 amount=-2 +kerning first=193 second=366 amount=-2 +kerning first=193 second=367 amount=-2 +kerning first=193 second=368 amount=-2 +kerning first=193 second=369 amount=-2 +kerning first=193 second=370 amount=-2 +kerning first=193 second=374 amount=-5 +kerning first=193 second=375 amount=-2 +kerning first=198 second=365 amount=-1 +kerning first=198 second=364 amount=-1 +kerning first=198 second=363 amount=-1 +kerning first=198 second=362 amount=-1 +kerning first=198 second=361 amount=-1 +kerning first=198 second=356 amount=-1 +kerning first=198 second=354 amount=-1 +kerning first=198 second=353 amount=-1 +kerning first=198 second=352 amount=-1 +kerning first=198 second=351 amount=-1 +kerning first=198 second=350 amount=-1 +kerning first=198 second=347 amount=-1 +kerning first=198 second=346 amount=-1 +kerning first=198 second=344 amount=-1 +kerning first=198 second=338 amount=-1 +kerning first=193 second=8217 amount=-4 +kerning first=193 second=8220 amount=-4 +kerning first=193 second=8221 amount=-4 +kerning first=193 second=8249 amount=-3 +kerning first=198 second=336 amount=-1 +kerning first=198 second=334 amount=-1 +kerning first=198 second=332 amount=-1 +kerning first=198 second=331 amount=-1 +kerning first=198 second=330 amount=-1 +kerning first=194 second=45 amount=-3 +kerning first=194 second=67 amount=-2 +kerning first=194 second=71 amount=-2 +kerning first=194 second=79 amount=-2 +kerning first=194 second=81 amount=-2 +kerning first=194 second=83 amount=-2 +kerning first=194 second=84 amount=-5 +kerning first=194 second=85 amount=-2 +kerning first=194 second=86 amount=-5 +kerning first=194 second=87 amount=-5 +kerning first=194 second=89 amount=-5 +kerning first=194 second=98 amount=-1 +kerning first=194 second=99 amount=-1 +kerning first=194 second=100 amount=-1 +kerning first=194 second=101 amount=-1 +kerning first=198 second=328 amount=-1 +kerning first=194 second=103 amount=-2 +kerning first=194 second=104 amount=-1 +kerning first=198 second=327 amount=-1 +kerning first=194 second=107 amount=-1 +kerning first=194 second=108 amount=-1 +kerning first=194 second=111 amount=-1 +kerning first=194 second=112 amount=-2 +kerning first=194 second=113 amount=-1 +kerning first=194 second=115 amount=-2 +kerning first=194 second=116 amount=-1 +kerning first=194 second=117 amount=-2 +kerning first=194 second=118 amount=-2 +kerning first=194 second=119 amount=-2 +kerning first=194 second=121 amount=-2 +kerning first=194 second=171 amount=-3 +kerning first=194 second=199 amount=-2 +kerning first=194 second=210 amount=-2 +kerning first=194 second=211 amount=-2 +kerning first=194 second=212 amount=-2 +kerning first=194 second=213 amount=-2 +kerning first=194 second=214 amount=-2 +kerning first=194 second=216 amount=-2 +kerning first=194 second=217 amount=-2 +kerning first=194 second=218 amount=-2 +kerning first=194 second=219 amount=-2 +kerning first=194 second=220 amount=-2 +kerning first=194 second=221 amount=-5 +kerning first=194 second=231 amount=-1 +kerning first=194 second=232 amount=-1 +kerning first=194 second=233 amount=-1 +kerning first=194 second=234 amount=-1 +kerning first=194 second=235 amount=-1 +kerning first=198 second=326 amount=-1 +kerning first=194 second=240 amount=-1 +kerning first=194 second=242 amount=-1 +kerning first=194 second=243 amount=-1 +kerning first=194 second=244 amount=-1 +kerning first=194 second=245 amount=-1 +kerning first=194 second=246 amount=-1 +kerning first=194 second=248 amount=-1 +kerning first=194 second=249 amount=-2 +kerning first=194 second=250 amount=-2 +kerning first=194 second=251 amount=-2 +kerning first=194 second=252 amount=-2 +kerning first=194 second=253 amount=-2 +kerning first=194 second=254 amount=-1 +kerning first=194 second=255 amount=-2 +kerning first=194 second=262 amount=-2 +kerning first=194 second=263 amount=-1 +kerning first=194 second=264 amount=-2 +kerning first=194 second=266 amount=-2 +kerning first=194 second=267 amount=-1 +kerning first=194 second=268 amount=-2 +kerning first=194 second=269 amount=-1 +kerning first=194 second=275 amount=-1 +kerning first=194 second=277 amount=-1 +kerning first=194 second=279 amount=-1 +kerning first=194 second=281 amount=-1 +kerning first=194 second=283 amount=-1 +kerning first=194 second=284 amount=-2 +kerning first=194 second=286 amount=-2 +kerning first=194 second=287 amount=-2 +kerning first=194 second=288 amount=-2 +kerning first=194 second=289 amount=-2 +kerning first=194 second=290 amount=-2 +kerning first=194 second=291 amount=-2 +kerning first=198 second=325 amount=-1 +kerning first=198 second=324 amount=-1 +kerning first=194 second=311 amount=-1 +kerning first=194 second=314 amount=-1 +kerning first=194 second=316 amount=-1 +kerning first=194 second=318 amount=-1 +kerning first=194 second=332 amount=-2 +kerning first=194 second=333 amount=-1 +kerning first=194 second=334 amount=-2 +kerning first=194 second=335 amount=-1 +kerning first=194 second=336 amount=-2 +kerning first=194 second=337 amount=-1 +kerning first=194 second=338 amount=-2 +kerning first=194 second=339 amount=-1 +kerning first=194 second=346 amount=-2 +kerning first=194 second=347 amount=-2 +kerning first=194 second=350 amount=-2 +kerning first=194 second=351 amount=-2 +kerning first=194 second=352 amount=-2 +kerning first=194 second=353 amount=-2 +kerning first=194 second=354 amount=-5 +kerning first=194 second=355 amount=-1 +kerning first=194 second=356 amount=-5 +kerning first=194 second=361 amount=-2 +kerning first=194 second=362 amount=-2 +kerning first=194 second=363 amount=-2 +kerning first=194 second=364 amount=-2 +kerning first=194 second=365 amount=-2 +kerning first=194 second=366 amount=-2 +kerning first=194 second=367 amount=-2 +kerning first=194 second=368 amount=-2 +kerning first=194 second=369 amount=-2 +kerning first=194 second=370 amount=-2 +kerning first=194 second=374 amount=-5 +kerning first=194 second=375 amount=-2 +kerning first=198 second=323 amount=-1 +kerning first=198 second=318 amount=-1 +kerning first=198 second=317 amount=-1 +kerning first=198 second=316 amount=-1 +kerning first=198 second=315 amount=-1 +kerning first=198 second=314 amount=-1 +kerning first=198 second=313 amount=-1 +kerning first=198 second=311 amount=-1 +kerning first=198 second=310 amount=-1 +kerning first=198 second=304 amount=-1 +kerning first=198 second=302 amount=-1 +kerning first=198 second=298 amount=-1 +kerning first=198 second=296 amount=-1 +kerning first=198 second=291 amount=-2 +kerning first=198 second=290 amount=-1 +kerning first=194 second=8217 amount=-4 +kerning first=194 second=8220 amount=-4 +kerning first=194 second=8221 amount=-4 +kerning first=194 second=8249 amount=-3 +kerning first=198 second=289 amount=-2 +kerning first=198 second=288 amount=-1 +kerning first=198 second=287 amount=-2 +kerning first=198 second=286 amount=-1 +kerning first=198 second=284 amount=-1 +kerning first=195 second=45 amount=-3 +kerning first=195 second=67 amount=-2 +kerning first=195 second=71 amount=-2 +kerning first=195 second=79 amount=-2 +kerning first=195 second=81 amount=-2 +kerning first=195 second=83 amount=-2 +kerning first=195 second=84 amount=-5 +kerning first=195 second=85 amount=-2 +kerning first=195 second=86 amount=-5 +kerning first=195 second=87 amount=-5 +kerning first=195 second=89 amount=-5 +kerning first=195 second=98 amount=-1 +kerning first=195 second=99 amount=-1 +kerning first=195 second=100 amount=-1 +kerning first=195 second=101 amount=-1 +kerning first=198 second=282 amount=-1 +kerning first=195 second=103 amount=-2 +kerning first=195 second=104 amount=-1 +kerning first=198 second=280 amount=-1 +kerning first=195 second=107 amount=-1 +kerning first=195 second=108 amount=-1 +kerning first=195 second=111 amount=-1 +kerning first=195 second=112 amount=-2 +kerning first=195 second=113 amount=-1 +kerning first=195 second=115 amount=-2 +kerning first=195 second=116 amount=-1 +kerning first=195 second=117 amount=-2 +kerning first=195 second=118 amount=-2 +kerning first=195 second=119 amount=-2 +kerning first=195 second=121 amount=-2 +kerning first=195 second=171 amount=-3 +kerning first=195 second=199 amount=-2 +kerning first=195 second=210 amount=-2 +kerning first=195 second=211 amount=-2 +kerning first=195 second=212 amount=-2 +kerning first=195 second=213 amount=-2 +kerning first=195 second=214 amount=-2 +kerning first=195 second=216 amount=-2 +kerning first=195 second=217 amount=-2 +kerning first=195 second=218 amount=-2 +kerning first=195 second=219 amount=-2 +kerning first=195 second=220 amount=-2 +kerning first=195 second=221 amount=-5 +kerning first=195 second=231 amount=-1 +kerning first=195 second=232 amount=-1 +kerning first=195 second=233 amount=-1 +kerning first=195 second=234 amount=-1 +kerning first=195 second=235 amount=-1 +kerning first=198 second=278 amount=-1 +kerning first=195 second=240 amount=-1 +kerning first=195 second=242 amount=-1 +kerning first=195 second=243 amount=-1 +kerning first=195 second=244 amount=-1 +kerning first=195 second=245 amount=-1 +kerning first=195 second=246 amount=-1 +kerning first=195 second=248 amount=-1 +kerning first=195 second=249 amount=-2 +kerning first=195 second=250 amount=-2 +kerning first=195 second=251 amount=-2 +kerning first=195 second=252 amount=-2 +kerning first=195 second=253 amount=-2 +kerning first=195 second=254 amount=-1 +kerning first=195 second=255 amount=-2 +kerning first=195 second=262 amount=-2 +kerning first=195 second=263 amount=-1 +kerning first=195 second=264 amount=-2 +kerning first=195 second=266 amount=-2 +kerning first=195 second=267 amount=-1 +kerning first=195 second=268 amount=-2 +kerning first=195 second=269 amount=-1 +kerning first=195 second=275 amount=-1 +kerning first=195 second=277 amount=-1 +kerning first=195 second=279 amount=-1 +kerning first=195 second=281 amount=-1 +kerning first=195 second=283 amount=-1 +kerning first=195 second=284 amount=-2 +kerning first=195 second=286 amount=-2 +kerning first=195 second=287 amount=-2 +kerning first=195 second=288 amount=-2 +kerning first=195 second=289 amount=-2 +kerning first=195 second=290 amount=-2 +kerning first=195 second=291 amount=-2 +kerning first=198 second=274 amount=-1 +kerning first=198 second=270 amount=-1 +kerning first=195 second=311 amount=-1 +kerning first=195 second=314 amount=-1 +kerning first=195 second=316 amount=-1 +kerning first=195 second=318 amount=-1 +kerning first=195 second=332 amount=-2 +kerning first=195 second=333 amount=-1 +kerning first=195 second=334 amount=-2 +kerning first=195 second=335 amount=-1 +kerning first=195 second=336 amount=-2 +kerning first=195 second=337 amount=-1 +kerning first=195 second=338 amount=-2 +kerning first=195 second=339 amount=-1 +kerning first=195 second=346 amount=-2 +kerning first=195 second=347 amount=-2 +kerning first=195 second=350 amount=-2 +kerning first=195 second=351 amount=-2 +kerning first=195 second=352 amount=-2 +kerning first=195 second=353 amount=-2 +kerning first=195 second=354 amount=-5 +kerning first=195 second=355 amount=-1 +kerning first=195 second=356 amount=-5 +kerning first=195 second=361 amount=-2 +kerning first=195 second=362 amount=-2 +kerning first=195 second=363 amount=-2 +kerning first=195 second=364 amount=-2 +kerning first=195 second=365 amount=-2 +kerning first=195 second=366 amount=-2 +kerning first=195 second=367 amount=-2 +kerning first=195 second=368 amount=-2 +kerning first=195 second=369 amount=-2 +kerning first=195 second=370 amount=-2 +kerning first=195 second=374 amount=-5 +kerning first=195 second=375 amount=-2 +kerning first=198 second=268 amount=-1 +kerning first=198 second=266 amount=-1 +kerning first=198 second=264 amount=-1 +kerning first=198 second=262 amount=-1 +kerning first=198 second=261 amount=-1 +kerning first=198 second=260 amount=-1 +kerning first=198 second=259 amount=-1 +kerning first=198 second=257 amount=-1 +kerning first=198 second=256 amount=-1 +kerning first=198 second=254 amount=-1 +kerning first=198 second=252 amount=-1 +kerning first=198 second=251 amount=-1 +kerning first=198 second=250 amount=-1 +kerning first=198 second=249 amount=-1 +kerning first=198 second=241 amount=-1 +kerning first=195 second=8217 amount=-4 +kerning first=195 second=8220 amount=-4 +kerning first=195 second=8221 amount=-4 +kerning first=195 second=8249 amount=-3 +kerning first=198 second=230 amount=-1 +kerning first=198 second=229 amount=-1 +kerning first=198 second=228 amount=-1 +kerning first=198 second=227 amount=-1 +kerning first=198 second=226 amount=-1 +kerning first=196 second=45 amount=-3 +kerning first=196 second=67 amount=-2 +kerning first=196 second=71 amount=-2 +kerning first=196 second=79 amount=-2 +kerning first=196 second=81 amount=-2 +kerning first=196 second=83 amount=-2 +kerning first=196 second=84 amount=-5 +kerning first=196 second=85 amount=-2 +kerning first=196 second=86 amount=-5 +kerning first=196 second=87 amount=-5 +kerning first=196 second=89 amount=-5 +kerning first=196 second=98 amount=-1 +kerning first=196 second=99 amount=-1 +kerning first=196 second=100 amount=-1 +kerning first=196 second=101 amount=-1 +kerning first=198 second=225 amount=-1 +kerning first=196 second=103 amount=-2 +kerning first=196 second=104 amount=-1 +kerning first=198 second=224 amount=-1 +kerning first=196 second=107 amount=-1 +kerning first=196 second=108 amount=-1 +kerning first=196 second=111 amount=-1 +kerning first=196 second=112 amount=-2 +kerning first=196 second=113 amount=-1 +kerning first=196 second=115 amount=-2 +kerning first=196 second=116 amount=-1 +kerning first=196 second=117 amount=-2 +kerning first=196 second=118 amount=-2 +kerning first=196 second=119 amount=-2 +kerning first=196 second=121 amount=-2 +kerning first=196 second=171 amount=-3 +kerning first=196 second=199 amount=-2 +kerning first=196 second=210 amount=-2 +kerning first=196 second=211 amount=-2 +kerning first=196 second=212 amount=-2 +kerning first=196 second=213 amount=-2 +kerning first=196 second=214 amount=-2 +kerning first=196 second=216 amount=-2 +kerning first=196 second=217 amount=-2 +kerning first=196 second=218 amount=-2 +kerning first=196 second=219 amount=-2 +kerning first=196 second=220 amount=-2 +kerning first=196 second=221 amount=-5 +kerning first=196 second=231 amount=-1 +kerning first=196 second=232 amount=-1 +kerning first=196 second=233 amount=-1 +kerning first=196 second=234 amount=-1 +kerning first=196 second=235 amount=-1 +kerning first=198 second=223 amount=-1 +kerning first=196 second=240 amount=-1 +kerning first=196 second=242 amount=-1 +kerning first=196 second=243 amount=-1 +kerning first=196 second=244 amount=-1 +kerning first=196 second=245 amount=-1 +kerning first=196 second=246 amount=-1 +kerning first=196 second=248 amount=-1 +kerning first=196 second=249 amount=-2 +kerning first=196 second=250 amount=-2 +kerning first=196 second=251 amount=-2 +kerning first=196 second=252 amount=-2 +kerning first=196 second=253 amount=-2 +kerning first=196 second=254 amount=-1 +kerning first=196 second=255 amount=-2 +kerning first=196 second=262 amount=-2 +kerning first=196 second=263 amount=-1 +kerning first=196 second=264 amount=-2 +kerning first=196 second=266 amount=-2 +kerning first=196 second=267 amount=-1 +kerning first=196 second=268 amount=-2 +kerning first=196 second=269 amount=-1 +kerning first=196 second=275 amount=-1 +kerning first=196 second=277 amount=-1 +kerning first=196 second=279 amount=-1 +kerning first=196 second=281 amount=-1 +kerning first=196 second=283 amount=-1 +kerning first=196 second=284 amount=-2 +kerning first=196 second=286 amount=-2 +kerning first=196 second=287 amount=-2 +kerning first=196 second=288 amount=-2 +kerning first=196 second=289 amount=-2 +kerning first=196 second=290 amount=-2 +kerning first=196 second=291 amount=-2 +kerning first=198 second=221 amount=-1 +kerning first=198 second=220 amount=-1 +kerning first=196 second=311 amount=-1 +kerning first=196 second=314 amount=-1 +kerning first=196 second=316 amount=-1 +kerning first=196 second=318 amount=-1 +kerning first=196 second=332 amount=-2 +kerning first=196 second=333 amount=-1 +kerning first=196 second=334 amount=-2 +kerning first=196 second=335 amount=-1 +kerning first=196 second=336 amount=-2 +kerning first=196 second=337 amount=-1 +kerning first=196 second=338 amount=-2 +kerning first=196 second=339 amount=-1 +kerning first=196 second=346 amount=-2 +kerning first=196 second=347 amount=-2 +kerning first=196 second=350 amount=-2 +kerning first=196 second=351 amount=-2 +kerning first=196 second=352 amount=-2 +kerning first=196 second=353 amount=-2 +kerning first=196 second=354 amount=-5 +kerning first=196 second=355 amount=-1 +kerning first=196 second=356 amount=-5 +kerning first=196 second=361 amount=-2 +kerning first=196 second=362 amount=-2 +kerning first=196 second=363 amount=-2 +kerning first=196 second=364 amount=-2 +kerning first=196 second=365 amount=-2 +kerning first=196 second=366 amount=-2 +kerning first=196 second=367 amount=-2 +kerning first=196 second=368 amount=-2 +kerning first=196 second=369 amount=-2 +kerning first=196 second=370 amount=-2 +kerning first=196 second=374 amount=-5 +kerning first=196 second=375 amount=-2 +kerning first=198 second=219 amount=-1 +kerning first=198 second=218 amount=-1 +kerning first=198 second=217 amount=-1 +kerning first=198 second=216 amount=-1 +kerning first=198 second=214 amount=-1 +kerning first=198 second=213 amount=-1 +kerning first=198 second=212 amount=-1 +kerning first=198 second=211 amount=-1 +kerning first=198 second=210 amount=-1 +kerning first=198 second=209 amount=-1 +kerning first=198 second=207 amount=-1 +kerning first=198 second=206 amount=-1 +kerning first=198 second=205 amount=-1 +kerning first=198 second=204 amount=-1 +kerning first=198 second=203 amount=-1 +kerning first=196 second=8217 amount=-4 +kerning first=196 second=8220 amount=-4 +kerning first=196 second=8221 amount=-4 +kerning first=196 second=8249 amount=-3 +kerning first=198 second=202 amount=-1 +kerning first=198 second=201 amount=-1 +kerning first=198 second=200 amount=-1 +kerning first=198 second=199 amount=-1 +kerning first=198 second=198 amount=-1 +kerning first=197 second=45 amount=-3 +kerning first=197 second=67 amount=-2 +kerning first=197 second=71 amount=-2 +kerning first=197 second=79 amount=-2 +kerning first=197 second=81 amount=-2 +kerning first=197 second=83 amount=-2 +kerning first=197 second=84 amount=-5 +kerning first=197 second=85 amount=-2 +kerning first=197 second=86 amount=-5 +kerning first=197 second=87 amount=-5 +kerning first=197 second=89 amount=-5 +kerning first=197 second=98 amount=-1 +kerning first=197 second=99 amount=-1 +kerning first=197 second=100 amount=-1 +kerning first=197 second=101 amount=-1 +kerning first=198 second=197 amount=-1 +kerning first=197 second=103 amount=-2 +kerning first=197 second=104 amount=-1 +kerning first=198 second=196 amount=-1 +kerning first=197 second=107 amount=-1 +kerning first=197 second=108 amount=-1 +kerning first=197 second=111 amount=-1 +kerning first=197 second=112 amount=-2 +kerning first=197 second=113 amount=-1 +kerning first=197 second=115 amount=-2 +kerning first=197 second=116 amount=-1 +kerning first=197 second=117 amount=-2 +kerning first=197 second=118 amount=-2 +kerning first=197 second=119 amount=-2 +kerning first=197 second=121 amount=-2 +kerning first=197 second=171 amount=-3 +kerning first=197 second=199 amount=-2 +kerning first=197 second=210 amount=-2 +kerning first=197 second=211 amount=-2 +kerning first=197 second=212 amount=-2 +kerning first=197 second=213 amount=-2 +kerning first=197 second=214 amount=-2 +kerning first=197 second=216 amount=-2 +kerning first=197 second=217 amount=-2 +kerning first=197 second=218 amount=-2 +kerning first=197 second=219 amount=-2 +kerning first=197 second=220 amount=-2 +kerning first=197 second=221 amount=-5 +kerning first=197 second=231 amount=-1 +kerning first=197 second=232 amount=-1 +kerning first=197 second=233 amount=-1 +kerning first=197 second=234 amount=-1 +kerning first=197 second=235 amount=-1 +kerning first=198 second=194 amount=-1 +kerning first=197 second=240 amount=-1 +kerning first=197 second=242 amount=-1 +kerning first=197 second=243 amount=-1 +kerning first=197 second=244 amount=-1 +kerning first=197 second=245 amount=-1 +kerning first=197 second=246 amount=-1 +kerning first=197 second=248 amount=-1 +kerning first=197 second=249 amount=-2 +kerning first=197 second=250 amount=-2 +kerning first=197 second=251 amount=-2 +kerning first=197 second=252 amount=-2 +kerning first=197 second=253 amount=-2 +kerning first=197 second=254 amount=-1 +kerning first=197 second=255 amount=-2 +kerning first=197 second=262 amount=-2 +kerning first=197 second=263 amount=-1 +kerning first=197 second=264 amount=-2 +kerning first=197 second=266 amount=-2 +kerning first=197 second=267 amount=-1 +kerning first=197 second=268 amount=-2 +kerning first=197 second=269 amount=-1 +kerning first=197 second=275 amount=-1 +kerning first=197 second=277 amount=-1 +kerning first=197 second=279 amount=-1 +kerning first=197 second=281 amount=-1 +kerning first=197 second=283 amount=-1 +kerning first=197 second=284 amount=-2 +kerning first=197 second=286 amount=-2 +kerning first=197 second=287 amount=-2 +kerning first=197 second=288 amount=-2 +kerning first=197 second=289 amount=-2 +kerning first=197 second=290 amount=-2 +kerning first=197 second=291 amount=-2 +kerning first=198 second=193 amount=-1 +kerning first=198 second=192 amount=-1 +kerning first=197 second=311 amount=-1 +kerning first=197 second=314 amount=-1 +kerning first=197 second=316 amount=-1 +kerning first=197 second=318 amount=-1 +kerning first=197 second=332 amount=-2 +kerning first=197 second=333 amount=-1 +kerning first=197 second=334 amount=-2 +kerning first=197 second=335 amount=-1 +kerning first=197 second=336 amount=-2 +kerning first=197 second=337 amount=-1 +kerning first=197 second=338 amount=-2 +kerning first=197 second=339 amount=-1 +kerning first=197 second=346 amount=-2 +kerning first=197 second=347 amount=-2 +kerning first=197 second=350 amount=-2 +kerning first=197 second=351 amount=-2 +kerning first=197 second=352 amount=-2 +kerning first=197 second=353 amount=-2 +kerning first=197 second=354 amount=-5 +kerning first=197 second=355 amount=-1 +kerning first=197 second=356 amount=-5 +kerning first=197 second=361 amount=-2 +kerning first=197 second=362 amount=-2 +kerning first=197 second=363 amount=-2 +kerning first=197 second=364 amount=-2 +kerning first=197 second=365 amount=-2 +kerning first=197 second=366 amount=-2 +kerning first=197 second=367 amount=-2 +kerning first=197 second=368 amount=-2 +kerning first=197 second=369 amount=-2 +kerning first=197 second=370 amount=-2 +kerning first=197 second=374 amount=-5 +kerning first=197 second=375 amount=-2 +kerning first=198 second=171 amount=-1 +kerning first=198 second=122 amount=-1 +kerning first=198 second=120 amount=-1 +kerning first=198 second=119 amount=-1 +kerning first=198 second=118 amount=-1 +kerning first=198 second=117 amount=-1 +kerning first=198 second=115 amount=-1 +kerning first=198 second=112 amount=-1 +kerning first=198 second=110 amount=-1 +kerning first=198 second=109 amount=-1 +kerning first=198 second=108 amount=-1 +kerning first=198 second=107 amount=-1 +kerning first=198 second=104 amount=-1 +kerning first=198 second=103 amount=-2 +kerning first=198 second=102 amount=-1 +kerning first=197 second=8217 amount=-4 +kerning first=197 second=8220 amount=-4 +kerning first=197 second=8221 amount=-4 +kerning first=197 second=8249 amount=-3 +kerning first=198 second=98 amount=-1 +kerning first=198 second=97 amount=-1 +kerning first=198 second=90 amount=-1 +kerning first=198 second=89 amount=-1 +kerning first=198 second=87 amount=-1 +kerning first=198 second=44 amount=-1 +kerning first=198 second=45 amount=-1 +kerning first=198 second=46 amount=-1 +kerning first=198 second=65 amount=-1 +kerning first=198 second=66 amount=-1 +kerning first=198 second=67 amount=-1 +kerning first=198 second=68 amount=-1 +kerning first=198 second=69 amount=-1 +kerning first=198 second=70 amount=-1 +kerning first=198 second=71 amount=-1 +kerning first=198 second=72 amount=-1 +kerning first=198 second=73 amount=-1 +kerning first=198 second=74 amount=-1 +kerning first=198 second=75 amount=-1 +kerning first=198 second=76 amount=-1 +kerning first=198 second=77 amount=-1 +kerning first=198 second=78 amount=-1 +kerning first=198 second=79 amount=-1 +kerning first=198 second=80 amount=-1 +kerning first=198 second=81 amount=-1 +kerning first=198 second=82 amount=-1 +kerning first=198 second=83 amount=-1 +kerning first=198 second=84 amount=-1 +kerning first=198 second=85 amount=-1 +kerning first=198 second=86 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I_0.png b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I_0.png new file mode 100644 index 000000000..50d479e03 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/BM-FreeSerif64I_0.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.fnt b/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.fnt new file mode 100644 index 000000000..41f96ff7a --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.fnt @@ -0,0 +1,18131 @@ +info face="Free Serif Italic" size=16 bold=0 italic=1 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=0,0 +common lineHeight=22 base=16 scaleW=512 scaleH=512 pages=1 packed=0 +page id=0 file="FT-FreeSerif16I.png" +chars count=754 +char id=0 x=406 y=60 width=12 height=11 xoffset=1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=13 x=83 y=0 width=15 height=15 xoffset=1 yoffset=1 xadvance=14 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=4 page=0 chnl=0 +char id=33 x=235 y=84 width=5 height=10 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=34 x=101 y=152 width=5 height=4 xoffset=2 yoffset=4 xadvance=7 page=0 chnl=0 +char id=35 x=418 y=60 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=36 x=435 y=0 width=8 height=14 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=37 x=427 y=60 width=12 height=11 xoffset=1 yoffset=3 xadvance=13 page=0 chnl=0 +char id=38 x=240 y=84 width=11 height=10 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=39 x=509 y=95 width=2 height=4 xoffset=2 yoffset=4 xadvance=3 page=0 chnl=0 +char id=40 x=443 y=0 width=6 height=14 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=0 +char id=41 x=449 y=0 width=5 height=14 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=0 +char id=42 x=481 y=135 width=6 height=7 xoffset=2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=43 x=295 y=135 width=9 height=8 xoffset=1 yoffset=6 xadvance=11 page=0 chnl=0 +char id=44 x=106 y=152 width=4 height=4 xoffset=-1 yoffset=12 xadvance=4 page=0 chnl=0 +char id=45 x=242 y=152 width=5 height=1 xoffset=0 yoffset=10 xadvance=5 page=0 chnl=0 +char id=46 x=210 y=152 width=3 height=2 xoffset=0 yoffset=12 xadvance=4 page=0 chnl=0 +char id=47 x=439 y=60 width=9 height=11 xoffset=-2 yoffset=3 xadvance=4 page=0 chnl=0 +char id=48 x=448 y=60 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=49 x=456 y=60 width=7 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=50 x=463 y=60 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=51 x=471 y=60 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=52 x=479 y=60 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=53 x=487 y=60 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=54 x=495 y=60 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=55 x=0 y=73 width=8 height=11 xoffset=1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=56 x=8 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=57 x=16 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=58 x=487 y=135 width=5 height=7 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=0 +char id=59 x=186 y=135 width=5 height=9 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=0 +char id=60 x=251 y=84 width=9 height=10 xoffset=1 yoffset=5 xadvance=11 page=0 chnl=0 +char id=61 x=22 y=152 width=9 height=5 xoffset=1 yoffset=8 xadvance=11 page=0 chnl=0 +char id=62 x=260 y=84 width=9 height=10 xoffset=1 yoffset=5 xadvance=11 page=0 chnl=0 +char id=63 x=269 y=84 width=6 height=10 xoffset=2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=64 x=275 y=84 width=12 height=10 xoffset=1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=65 x=24 y=73 width=11 height=11 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=0 +char id=66 x=287 y=84 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=67 x=298 y=84 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=68 x=309 y=84 width=13 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=69 x=322 y=84 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=70 x=334 y=84 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=71 x=346 y=84 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=72 x=358 y=84 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=73 x=372 y=84 width=8 height=10 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=74 x=380 y=84 width=9 height=10 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=75 x=389 y=84 width=13 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=76 x=402 y=84 width=10 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=77 x=412 y=84 width=15 height=10 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=78 x=427 y=84 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=79 x=440 y=84 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=80 x=452 y=84 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=81 x=348 y=33 width=12 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=82 x=463 y=84 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=83 x=474 y=84 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=84 x=483 y=84 width=11 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=85 x=494 y=84 width=12 height=10 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=86 x=0 y=95 width=11 height=10 xoffset=1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=87 x=11 y=95 width=14 height=10 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=88 x=25 y=95 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=89 x=37 y=95 width=10 height=10 xoffset=1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=90 x=47 y=95 width=11 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=91 x=360 y=33 width=7 height=13 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=92 x=504 y=60 width=7 height=11 xoffset=-1 yoffset=3 xadvance=4 page=0 chnl=0 +char id=93 x=367 y=33 width=7 height=13 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=94 x=497 y=145 width=7 height=6 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=95 x=247 y=152 width=8 height=1 xoffset=0 yoffset=15 xadvance=8 page=0 chnl=0 +char id=96 x=162 y=152 width=3 height=3 xoffset=6 yoffset=3 xadvance=5 page=0 chnl=0 +char id=97 x=492 y=135 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=98 x=130 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=99 x=500 y=135 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=100 x=138 y=60 width=9 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=101 x=0 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=102 x=454 y=0 width=10 height=14 xoffset=-3 yoffset=3 xadvance=4 page=0 chnl=0 +char id=103 x=58 y=95 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=104 x=147 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=105 x=506 y=84 width=5 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=106 x=374 y=33 width=7 height=13 xoffset=-2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=107 x=155 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=0 +char id=108 x=163 y=60 width=5 height=12 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=0 +char id=109 x=7 y=145 width=12 height=7 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=0 +char id=110 x=19 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=111 x=27 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=112 x=66 y=95 width=10 height=10 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=113 x=76 y=95 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=114 x=35 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=6 page=0 chnl=0 +char id=115 x=42 y=145 width=6 height=7 xoffset=0 yoffset=7 xadvance=6 page=0 chnl=0 +char id=116 x=191 y=135 width=5 height=9 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=0 +char id=117 x=304 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=118 x=48 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=119 x=55 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=120 x=66 y=145 width=9 height=7 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=121 x=84 y=95 width=8 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=122 x=196 y=135 width=8 height=9 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=123 x=464 y=0 width=7 height=14 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=124 x=508 y=47 width=2 height=11 xoffset=1 yoffset=3 xadvance=4 page=0 chnl=0 +char id=125 x=471 y=0 width=7 height=14 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=0 +char id=126 x=165 y=152 width=9 height=3 xoffset=0 yoffset=9 xadvance=9 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=4 page=0 chnl=0 +char id=161 x=35 y=73 width=6 height=11 xoffset=0 yoffset=6 xadvance=6 page=0 chnl=0 +char id=162 x=41 y=73 width=7 height=11 xoffset=1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=163 x=48 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=164 x=204 y=135 width=10 height=9 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=165 x=92 y=95 width=10 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=166 x=57 y=73 width=2 height=11 xoffset=1 yoffset=3 xadvance=4 page=0 chnl=0 +char id=167 x=381 y=33 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=168 x=213 y=152 width=6 height=2 xoffset=1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=169 x=59 y=73 width=12 height=11 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=0 +char id=170 x=31 y=152 width=6 height=5 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=171 x=0 y=152 width=8 height=6 xoffset=0 yoffset=8 xadvance=7 page=0 chnl=0 +char id=172 x=37 y=152 width=9 height=5 xoffset=1 yoffset=8 xadvance=11 page=0 chnl=0 +char id=173 x=242 y=152 width=5 height=1 xoffset=0 yoffset=10 xadvance=5 page=0 chnl=0 +char id=174 x=71 y=73 width=12 height=11 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=0 +char id=175 x=255 y=152 width=6 height=1 xoffset=1 yoffset=5 xadvance=5 page=0 chnl=0 +char id=176 x=46 y=152 width=6 height=5 xoffset=1 yoffset=3 xadvance=6 page=0 chnl=0 +char id=177 x=214 y=135 width=9 height=9 xoffset=1 yoffset=5 xadvance=11 page=0 chnl=0 +char id=178 x=75 y=145 width=6 height=7 xoffset=1 yoffset=3 xadvance=5 page=0 chnl=0 +char id=179 x=81 y=145 width=5 height=7 xoffset=2 yoffset=3 xadvance=5 page=0 chnl=0 +char id=180 x=174 y=152 width=5 height=3 xoffset=2 yoffset=3 xadvance=5 page=0 chnl=0 +char id=181 x=102 y=95 width=9 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=182 x=389 y=33 width=10 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=183 x=509 y=105 width=2 height=2 xoffset=2 yoffset=9 xadvance=4 page=0 chnl=0 +char id=184 x=110 y=152 width=4 height=4 xoffset=-1 yoffset=14 xadvance=5 page=0 chnl=0 +char id=185 x=86 y=145 width=5 height=7 xoffset=1 yoffset=3 xadvance=4 page=0 chnl=0 +char id=186 x=52 y=152 width=5 height=5 xoffset=1 yoffset=3 xadvance=5 page=0 chnl=0 +char id=187 x=504 y=145 width=7 height=6 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=188 x=168 y=60 width=12 height=12 xoffset=1 yoffset=3 xadvance=12 page=0 chnl=0 +char id=189 x=83 y=73 width=12 height=11 xoffset=1 yoffset=3 xadvance=12 page=0 chnl=0 +char id=190 x=95 y=73 width=12 height=11 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=191 x=107 y=73 width=6 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=192 x=478 y=0 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=193 x=489 y=0 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=194 x=500 y=0 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=195 x=399 y=33 width=11 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=196 x=410 y=33 width=11 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=197 x=98 y=0 width=11 height=15 xoffset=-1 yoffset=-1 xadvance=10 page=0 chnl=0 +char id=198 x=111 y=95 width=16 height=10 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=199 x=421 y=33 width=11 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=200 x=0 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=201 x=12 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=202 x=24 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=203 x=432 y=33 width=12 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=204 x=36 y=19 width=8 height=14 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=205 x=44 y=19 width=8 height=14 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=206 x=52 y=19 width=9 height=14 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=207 x=444 y=33 width=8 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=208 x=127 y=95 width=13 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=209 x=61 y=19 width=13 height=14 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=210 x=109 y=0 width=12 height=15 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=211 x=74 y=19 width=12 height=14 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=212 x=121 y=0 width=12 height=15 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=213 x=452 y=33 width=12 height=13 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=214 x=464 y=33 width=12 height=13 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=215 x=312 y=135 width=9 height=8 xoffset=1 yoffset=6 xadvance=11 page=0 chnl=0 +char id=216 x=86 y=19 width=12 height=14 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=0 +char id=217 x=133 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=218 x=98 y=19 width=12 height=14 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=219 x=145 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=220 x=476 y=33 width=12 height=13 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=221 x=110 y=19 width=10 height=14 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=222 x=140 y=95 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=223 x=120 y=19 width=11 height=14 xoffset=-3 yoffset=3 xadvance=8 page=0 chnl=0 +char id=224 x=113 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=225 x=150 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=226 x=121 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=227 x=158 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=228 x=167 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=229 x=180 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=230 x=91 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=231 x=175 y=95 width=7 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=232 x=129 y=73 width=7 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=233 x=182 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=234 x=136 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=235 x=191 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=236 x=144 y=73 width=5 height=11 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=237 x=199 y=95 width=6 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=238 x=149 y=73 width=6 height=11 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=239 x=205 y=95 width=6 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=240 x=155 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=241 x=211 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=242 x=163 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=243 x=220 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=244 x=171 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=245 x=228 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=246 x=237 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=247 x=321 y=135 width=9 height=8 xoffset=1 yoffset=6 xadvance=11 page=0 chnl=0 +char id=248 x=179 y=73 width=8 height=11 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=249 x=187 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=250 x=245 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=251 x=195 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=252 x=253 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=253 x=488 y=33 width=9 height=13 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=254 x=157 y=0 width=10 height=15 xoffset=-2 yoffset=2 xadvance=8 page=0 chnl=0 +char id=255 x=497 y=33 width=9 height=13 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=256 x=0 y=47 width=11 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=257 x=261 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=258 x=131 y=19 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=259 x=203 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=260 x=142 y=19 width=13 height=14 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=0 +char id=261 x=269 y=95 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=262 x=155 y=19 width=11 height=14 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=263 x=277 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=264 x=167 y=0 width=11 height=15 xoffset=1 yoffset=-1 xadvance=11 page=0 chnl=0 +char id=265 x=211 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=266 x=166 y=19 width=11 height=14 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=267 x=285 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=268 x=178 y=0 width=11 height=15 xoffset=1 yoffset=-1 xadvance=11 page=0 chnl=0 +char id=269 x=219 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=270 x=177 y=19 width=13 height=14 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=271 x=228 y=73 width=12 height=11 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=0 +char id=272 x=127 y=95 width=13 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=273 x=188 y=60 width=9 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=274 x=11 y=47 width=12 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=275 x=223 y=135 width=8 height=9 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=0 +char id=276 x=190 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=277 x=240 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=278 x=23 y=47 width=12 height=13 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=279 x=292 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=280 x=35 y=47 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=281 x=299 y=95 width=8 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=282 x=202 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=283 x=249 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=284 x=189 y=0 width=12 height=15 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=285 x=214 y=19 width=8 height=14 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=286 x=222 y=19 width=12 height=14 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=287 x=234 y=19 width=8 height=14 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=288 x=47 y=47 width=12 height=13 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=289 x=59 y=47 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=290 x=201 y=0 width=12 height=15 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=291 x=75 y=0 width=8 height=16 xoffset=0 yoffset=1 xadvance=8 page=0 chnl=0 +char id=292 x=242 y=19 width=14 height=14 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=293 x=213 y=0 width=10 height=15 xoffset=0 yoffset=-1 xadvance=8 page=0 chnl=0 +char id=294 x=307 y=95 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=295 x=197 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=296 x=67 y=47 width=9 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=297 x=321 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=298 x=76 y=47 width=9 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=299 x=328 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=300 x=256 y=19 width=9 height=14 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=301 x=258 y=73 width=7 height=11 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=302 x=85 y=47 width=8 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=303 x=506 y=33 width=5 height=13 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=304 x=93 y=47 width=8 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=305 x=507 y=115 width=4 height=8 xoffset=0 yoffset=6 xadvance=4 page=0 chnl=0 +char id=306 x=335 y=95 width=14 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=307 x=101 y=47 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=308 x=223 y=0 width=11 height=15 xoffset=-1 yoffset=-1 xadvance=7 page=0 chnl=0 +char id=309 x=265 y=19 width=9 height=14 xoffset=-2 yoffset=3 xadvance=4 page=0 chnl=0 +char id=310 x=234 y=0 width=13 height=15 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=311 x=19 y=0 width=8 height=17 xoffset=0 yoffset=2 xadvance=7 page=0 chnl=0 +char id=312 x=330 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=0 +char id=313 x=274 y=19 width=10 height=14 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=314 x=284 y=19 width=7 height=14 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=315 x=247 y=0 width=10 height=15 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=316 x=27 y=0 width=5 height=17 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=0 +char id=317 x=349 y=95 width=12 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=318 x=265 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=319 x=361 y=95 width=10 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=320 x=205 y=60 width=6 height=12 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=0 +char id=321 x=371 y=95 width=10 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=322 x=211 y=60 width=5 height=12 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=0 +char id=323 x=291 y=19 width=13 height=14 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=324 x=381 y=95 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=325 x=257 y=0 width=13 height=15 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=326 x=216 y=60 width=8 height=12 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=327 x=270 y=0 width=13 height=15 xoffset=-1 yoffset=-1 xadvance=11 page=0 chnl=0 +char id=328 x=273 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=329 x=224 y=60 width=8 height=12 xoffset=1 yoffset=2 xadvance=9 page=0 chnl=0 +char id=330 x=282 y=73 width=13 height=11 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=0 +char id=331 x=389 y=95 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=332 x=109 y=47 width=12 height=13 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=333 x=231 y=135 width=8 height=9 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=334 x=304 y=19 width=12 height=14 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=335 x=295 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=336 x=283 y=0 width=13 height=15 xoffset=0 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=337 x=304 y=73 width=11 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=338 x=397 y=95 width=16 height=10 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=339 x=102 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=340 x=316 y=19 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=341 x=413 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=0 +char id=342 x=296 y=0 width=11 height=15 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=343 x=232 y=60 width=8 height=12 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=344 x=327 y=19 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=345 x=315 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=346 x=338 y=19 width=9 height=14 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=347 x=420 y=95 width=7 height=10 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=0 +char id=348 x=307 y=0 width=9 height=15 xoffset=0 yoffset=-1 xadvance=8 page=0 chnl=0 +char id=349 x=323 y=73 width=7 height=11 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=350 x=121 y=47 width=9 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=351 x=427 y=95 width=7 height=10 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=352 x=316 y=0 width=9 height=15 xoffset=0 yoffset=-1 xadvance=8 page=0 chnl=0 +char id=353 x=330 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=354 x=130 y=47 width=11 height=13 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=355 x=141 y=47 width=6 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=356 x=347 y=19 width=11 height=14 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=357 x=434 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=358 x=443 y=95 width=11 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=359 x=239 y=135 width=5 height=9 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=0 +char id=360 x=147 y=47 width=12 height=13 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=361 x=454 y=95 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=362 x=159 y=47 width=12 height=13 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=363 x=244 y=135 width=8 height=9 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=364 x=358 y=19 width=12 height=14 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=365 x=338 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=366 x=325 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=367 x=240 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=368 x=337 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=369 x=346 y=73 width=10 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=370 x=248 y=60 width=12 height=12 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=371 x=356 y=73 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=372 x=349 y=0 width=14 height=15 xoffset=1 yoffset=-1 xadvance=13 page=0 chnl=0 +char id=373 x=364 y=73 width=11 height=11 xoffset=0 yoffset=3 xadvance=11 page=0 chnl=0 +char id=374 x=370 y=19 width=10 height=14 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=375 x=380 y=19 width=9 height=14 xoffset=-1 yoffset=3 xadvance=7 page=0 chnl=0 +char id=376 x=171 y=47 width=10 height=13 xoffset=1 yoffset=1 xadvance=9 page=0 chnl=0 +char id=377 x=389 y=19 width=11 height=14 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=378 x=260 y=60 width=8 height=12 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=379 x=181 y=47 width=11 height=13 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=0 +char id=380 x=268 y=60 width=8 height=12 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=381 x=400 y=19 width=11 height=14 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=382 x=192 y=47 width=9 height=13 xoffset=-1 yoffset=3 xadvance=6 page=0 chnl=0 +char id=383 x=411 y=19 width=10 height=14 xoffset=-3 yoffset=3 xadvance=4 page=0 chnl=0 +char id=884 x=114 y=152 width=4 height=4 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=0 +char id=885 x=118 y=152 width=4 height=4 xoffset=0 yoffset=13 xadvance=3 page=0 chnl=0 +char id=890 x=179 y=152 width=3 height=3 xoffset=0 yoffset=14 xadvance=5 page=0 chnl=0 +char id=894 x=252 y=135 width=5 height=9 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=0 +char id=900 x=122 y=152 width=3 height=4 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=0 +char id=901 x=57 y=152 width=6 height=5 xoffset=2 yoffset=2 xadvance=5 page=0 chnl=0 +char id=902 x=375 y=73 width=11 height=11 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=903 x=219 y=152 width=3 height=2 xoffset=2 yoffset=7 xadvance=4 page=0 chnl=0 +char id=904 x=463 y=95 width=12 height=10 xoffset=2 yoffset=4 xadvance=13 page=0 chnl=0 +char id=905 x=475 y=95 width=14 height=10 xoffset=2 yoffset=4 xadvance=15 page=0 chnl=0 +char id=906 x=489 y=95 width=8 height=10 xoffset=2 yoffset=4 xadvance=9 page=0 chnl=0 +char id=908 x=497 y=95 width=12 height=10 xoffset=2 yoffset=4 xadvance=13 page=0 chnl=0 +char id=910 x=0 y=105 width=14 height=10 xoffset=2 yoffset=4 xadvance=14 page=0 chnl=0 +char id=911 x=14 y=105 width=13 height=10 xoffset=2 yoffset=4 xadvance=14 page=0 chnl=0 +char id=912 x=276 y=60 width=6 height=12 xoffset=0 yoffset=2 xadvance=4 page=0 chnl=0 +char id=913 x=386 y=73 width=11 height=11 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=914 x=27 y=105 width=11 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=915 x=38 y=105 width=11 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=916 x=397 y=73 width=11 height=11 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=917 x=49 y=105 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=918 x=60 y=105 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=919 x=71 y=105 width=13 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=920 x=84 y=105 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=921 x=95 y=105 width=8 height=10 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=922 x=103 y=105 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=923 x=408 y=73 width=11 height=11 xoffset=-1 yoffset=3 xadvance=10 page=0 chnl=0 +char id=924 x=116 y=105 width=15 height=10 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=925 x=131 y=105 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=926 x=144 y=105 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=927 x=155 y=105 width=12 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=928 x=167 y=105 width=13 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=929 x=180 y=105 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=931 x=190 y=105 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=932 x=203 y=105 width=10 height=10 xoffset=1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=933 x=213 y=105 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=934 x=224 y=105 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=935 x=236 y=105 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=936 x=248 y=105 width=14 height=10 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=937 x=262 y=105 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=938 x=201 y=47 width=9 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=939 x=210 y=47 width=11 height=13 xoffset=1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=940 x=419 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=941 x=428 y=73 width=8 height=11 xoffset=-1 yoffset=3 xadvance=7 page=0 chnl=0 +char id=942 x=421 y=19 width=8 height=14 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=943 x=436 y=73 width=5 height=11 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=944 x=282 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=945 x=113 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=946 x=429 y=19 width=9 height=14 xoffset=-1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=947 x=276 y=105 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=948 x=441 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=949 x=122 y=145 width=8 height=7 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=950 x=438 y=19 width=7 height=14 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=951 x=284 y=105 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=952 x=292 y=105 width=9 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=953 x=507 y=135 width=4 height=7 xoffset=0 yoffset=7 xadvance=4 page=0 chnl=0 +char id=954 x=130 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=955 x=449 y=73 width=9 height=11 xoffset=-1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=956 x=301 y=105 width=9 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=957 x=138 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=958 x=445 y=19 width=7 height=14 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=959 x=146 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=960 x=154 y=145 width=11 height=7 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=961 x=458 y=73 width=9 height=11 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=962 x=310 y=105 width=8 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=963 x=165 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=964 x=174 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=965 x=181 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=966 x=318 y=105 width=10 height=10 xoffset=0 yoffset=7 xadvance=10 page=0 chnl=0 +char id=967 x=328 y=105 width=10 height=10 xoffset=-2 yoffset=7 xadvance=7 page=0 chnl=0 +char id=968 x=221 y=47 width=11 height=13 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=969 x=189 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=970 x=338 y=105 width=6 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=971 x=344 y=105 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=972 x=467 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=973 x=475 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=974 x=483 y=73 width=11 height=11 xoffset=0 yoffset=3 xadvance=11 page=0 chnl=0 +char id=976 x=494 y=73 width=9 height=11 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=977 x=0 y=84 width=10 height=11 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=978 x=352 y=105 width=11 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=979 x=363 y=105 width=14 height=10 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=980 x=232 y=47 width=11 height=13 xoffset=1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=981 x=243 y=47 width=10 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=982 x=257 y=135 width=12 height=9 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=0 +char id=983 x=377 y=105 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=984 x=385 y=105 width=10 height=10 xoffset=1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=985 x=395 y=105 width=8 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=986 x=403 y=105 width=10 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=987 x=413 y=105 width=9 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=988 x=422 y=105 width=11 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=989 x=433 y=105 width=10 height=10 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=990 x=443 y=105 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=991 x=452 y=19 width=7 height=14 xoffset=-1 yoffset=3 xadvance=7 page=0 chnl=0 +char id=992 x=10 y=84 width=12 height=11 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=993 x=459 y=19 width=10 height=14 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=0 +char id=1008 x=200 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1009 x=453 y=105 width=9 height=10 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1010 x=208 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1011 x=253 y=47 width=7 height=13 xoffset=-2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1012 x=462 y=105 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1013 x=216 y=145 width=5 height=7 xoffset=0 yoffset=7 xadvance=4 page=0 chnl=0 +char id=1014 x=221 y=145 width=5 height=7 xoffset=0 yoffset=7 xadvance=4 page=0 chnl=0 +char id=1015 x=474 y=105 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1016 x=469 y=19 width=9 height=14 xoffset=-1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=1017 x=484 y=105 width=10 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1018 x=494 y=105 width=15 height=10 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1019 x=0 y=115 width=12 height=10 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1020 x=12 y=115 width=11 height=10 xoffset=-3 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1021 x=23 y=115 width=10 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1022 x=33 y=115 width=10 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1023 x=43 y=115 width=10 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1024 x=478 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1025 x=490 y=19 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1026 x=53 y=115 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1027 x=0 y=33 width=11 height=14 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1028 x=64 y=115 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1029 x=474 y=84 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1030 x=372 y=84 width=8 height=10 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1031 x=260 y=47 width=9 height=13 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=1032 x=380 y=84 width=9 height=10 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1033 x=75 y=115 width=16 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1034 x=91 y=115 width=16 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1035 x=107 y=115 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1036 x=11 y=33 width=13 height=14 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1037 x=24 y=33 width=14 height=14 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1038 x=38 y=33 width=12 height=14 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1039 x=269 y=47 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1040 x=118 y=115 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1041 x=129 y=115 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1042 x=287 y=84 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1043 x=140 y=115 width=11 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1044 x=283 y=47 width=14 height=13 xoffset=-2 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1045 x=322 y=84 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1046 x=151 y=115 width=18 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1047 x=169 y=115 width=10 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1048 x=179 y=115 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1049 x=50 y=33 width=14 height=14 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1050 x=193 y=115 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1051 x=206 y=115 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1052 x=412 y=84 width=15 height=10 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1053 x=358 y=84 width=14 height=10 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1054 x=440 y=84 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1055 x=220 y=115 width=13 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1056 x=452 y=84 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1057 x=298 y=84 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1058 x=483 y=84 width=11 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1059 x=233 y=115 width=12 height=10 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1060 x=245 y=115 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1061 x=25 y=95 width=12 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1062 x=297 y=47 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1063 x=257 y=115 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1064 x=268 y=115 width=18 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1065 x=311 y=47 width=18 height=13 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1066 x=286 y=115 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1067 x=297 y=115 width=16 height=10 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1068 x=313 y=115 width=10 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1069 x=323 y=115 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1070 x=333 y=115 width=18 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1071 x=351 y=115 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1072 x=492 y=135 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1073 x=22 y=84 width=10 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=1074 x=226 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1075 x=233 y=145 width=7 height=7 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1076 x=503 y=73 width=8 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=1077 x=240 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1078 x=247 y=145 width=15 height=7 xoffset=0 yoffset=7 xadvance=15 page=0 chnl=0 +char id=1079 x=262 y=145 width=8 height=7 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1080 x=304 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1081 x=364 y=115 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1082 x=270 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1083 x=278 y=145 width=9 height=7 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1084 x=338 y=135 width=11 height=8 xoffset=-1 yoffset=6 xadvance=10 page=0 chnl=0 +char id=1085 x=349 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1086 x=27 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1087 x=19 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1088 x=66 y=95 width=10 height=10 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1089 x=287 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1090 x=7 y=145 width=12 height=7 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1091 x=32 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1092 x=329 y=47 width=12 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1093 x=66 y=145 width=9 height=7 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1094 x=40 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1095 x=357 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1096 x=365 y=135 width=12 height=8 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=0 +char id=1097 x=48 y=84 width=12 height=11 xoffset=0 yoffset=6 xadvance=12 page=0 chnl=0 +char id=1098 x=294 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1099 x=377 y=135 width=11 height=8 xoffset=0 yoffset=6 xadvance=11 page=0 chnl=0 +char id=1100 x=388 y=135 width=7 height=8 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=0 +char id=1101 x=303 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1102 x=310 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1103 x=321 y=145 width=9 height=7 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1104 x=372 y=115 width=7 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1105 x=379 y=115 width=8 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1106 x=363 y=0 width=8 height=15 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=1107 x=387 y=115 width=7 height=10 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=1108 x=330 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1109 x=42 y=145 width=6 height=7 xoffset=0 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1110 x=506 y=84 width=5 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1111 x=394 y=115 width=6 height=10 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1112 x=374 y=33 width=7 height=13 xoffset=-2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1113 x=337 y=145 width=12 height=7 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1114 x=395 y=135 width=11 height=8 xoffset=0 yoffset=6 xadvance=11 page=0 chnl=0 +char id=1115 x=290 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=1116 x=400 y=115 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1117 x=408 y=115 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1118 x=341 y=47 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1119 x=60 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1120 x=416 y=115 width=16 height=10 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1121 x=349 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1122 x=432 y=115 width=10 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1123 x=360 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1124 x=442 y=115 width=17 height=10 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1125 x=406 y=135 width=11 height=8 xoffset=0 yoffset=6 xadvance=10 page=0 chnl=0 +char id=1126 x=459 y=115 width=14 height=10 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1127 x=417 y=135 width=11 height=8 xoffset=-1 yoffset=6 xadvance=10 page=0 chnl=0 +char id=1128 x=473 y=115 width=18 height=10 xoffset=-1 yoffset=4 xadvance=18 page=0 chnl=0 +char id=1129 x=428 y=135 width=13 height=8 xoffset=0 yoffset=6 xadvance=13 page=0 chnl=0 +char id=1130 x=491 y=115 width=16 height=10 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1131 x=371 y=145 width=13 height=7 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1132 x=0 y=125 width=21 height=10 xoffset=-1 yoffset=4 xadvance=20 page=0 chnl=0 +char id=1133 x=441 y=135 width=14 height=8 xoffset=0 yoffset=6 xadvance=14 page=0 chnl=0 +char id=1134 x=32 y=0 width=11 height=17 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1135 x=298 y=60 width=9 height=12 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=0 +char id=1136 x=21 y=125 width=14 height=10 xoffset=2 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1137 x=371 y=0 width=12 height=15 xoffset=1 yoffset=2 xadvance=11 page=0 chnl=0 +char id=1138 x=35 y=125 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1139 x=384 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1140 x=47 y=125 width=12 height=10 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1141 x=392 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1142 x=383 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=1143 x=307 y=60 width=9 height=12 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=0 +char id=1144 x=349 y=47 width=20 height=13 xoffset=0 yoffset=4 xadvance=19 page=0 chnl=0 +char id=1145 x=59 y=125 width=16 height=10 xoffset=0 yoffset=7 xadvance=15 page=0 chnl=0 +char id=1146 x=369 y=47 width=14 height=13 xoffset=0 yoffset=2 xadvance=14 page=0 chnl=0 +char id=1147 x=75 y=125 width=10 height=10 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=0 +char id=1148 x=395 y=0 width=16 height=15 xoffset=0 yoffset=-1 xadvance=15 page=0 chnl=0 +char id=1149 x=85 y=125 width=12 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1150 x=64 y=33 width=16 height=14 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1151 x=97 y=125 width=12 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1152 x=109 y=125 width=10 height=10 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1153 x=119 y=125 width=7 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1154 x=8 y=152 width=5 height=6 xoffset=0 yoffset=11 xadvance=5 page=0 chnl=0 +char id=1155 x=222 y=152 width=7 height=2 xoffset=-4 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1156 x=182 y=152 width=8 height=3 xoffset=-5 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1157 x=63 y=152 width=4 height=5 xoffset=-1 yoffset=1 xadvance=0 page=0 chnl=0 +char id=1158 x=67 y=152 width=4 height=5 xoffset=-1 yoffset=1 xadvance=0 page=0 chnl=0 +char id=1159 x=190 y=152 width=11 height=3 xoffset=-7 yoffset=3 xadvance=0 page=0 chnl=0 +char id=1160 x=43 y=0 width=18 height=17 xoffset=-13 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1161 x=0 y=0 width=19 height=19 xoffset=-13 yoffset=-1 xadvance=0 page=0 chnl=0 +char id=1162 x=61 y=0 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1163 x=383 y=47 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1164 x=126 y=125 width=10 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1165 x=455 y=135 width=7 height=8 xoffset=0 yoffset=6 xadvance=7 page=0 chnl=0 +char id=1166 x=136 y=125 width=10 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1167 x=146 y=125 width=10 height=10 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1168 x=316 y=60 width=12 height=12 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=0 +char id=1169 x=269 y=135 width=8 height=9 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1170 x=156 y=125 width=12 height=10 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1171 x=401 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1172 x=80 y=33 width=11 height=14 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1173 x=168 y=125 width=7 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1174 x=391 y=47 width=18 height=13 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1175 x=175 y=125 width=15 height=10 xoffset=0 yoffset=7 xadvance=15 page=0 chnl=0 +char id=1176 x=409 y=47 width=10 height=13 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1177 x=190 y=125 width=8 height=10 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1178 x=419 y=47 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1179 x=198 y=125 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1180 x=206 y=125 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1181 x=408 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1182 x=219 y=125 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1183 x=417 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1184 x=232 y=125 width=13 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1185 x=425 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1186 x=432 y=47 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1187 x=68 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1188 x=245 y=125 width=17 height=10 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1189 x=462 y=135 width=11 height=8 xoffset=0 yoffset=6 xadvance=11 page=0 chnl=0 +char id=1190 x=91 y=33 width=16 height=14 xoffset=0 yoffset=4 xadvance=17 page=0 chnl=0 +char id=1191 x=262 y=125 width=11 height=10 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1192 x=273 y=125 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1193 x=436 y=145 width=9 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1194 x=446 y=47 width=11 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1195 x=285 y=125 width=7 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1196 x=328 y=60 width=11 height=12 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1197 x=292 y=125 width=12 height=10 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1198 x=37 y=95 width=10 height=10 xoffset=1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1199 x=304 y=125 width=10 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1200 x=314 y=125 width=10 height=10 xoffset=1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1201 x=324 y=125 width=10 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1202 x=457 y=47 width=12 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1203 x=334 y=125 width=9 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1204 x=339 y=60 width=15 height=12 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1205 x=343 y=125 width=9 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1206 x=469 y=47 width=11 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1207 x=76 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1208 x=352 y=125 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1209 x=473 y=135 width=8 height=8 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1210 x=363 y=125 width=11 height=10 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1211 x=147 y=60 width=8 height=12 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=1212 x=374 y=125 width=13 height=10 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1213 x=445 y=145 width=10 height=7 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1214 x=354 y=60 width=13 height=12 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1215 x=277 y=135 width=10 height=9 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1216 x=372 y=84 width=8 height=10 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1217 x=107 y=33 width=18 height=14 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1218 x=387 y=125 width=15 height=10 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1219 x=125 y=33 width=13 height=14 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1220 x=402 y=125 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1221 x=480 y=47 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1222 x=410 y=125 width=9 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1223 x=138 y=33 width=14 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1224 x=84 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1225 x=494 y=47 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1226 x=92 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1227 x=0 y=60 width=11 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1228 x=100 y=84 width=8 height=11 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=1229 x=11 y=60 width=15 height=13 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1230 x=108 y=84 width=11 height=11 xoffset=-1 yoffset=6 xadvance=10 page=0 chnl=0 +char id=1231 x=372 y=84 width=8 height=10 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1232 x=152 y=33 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1233 x=419 y=125 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1234 x=163 y=33 width=11 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1235 x=427 y=125 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1236 x=111 y=95 width=16 height=10 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1237 x=91 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1238 x=174 y=33 width=12 height=14 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1239 x=435 y=125 width=8 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1240 x=443 y=125 width=11 height=10 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1241 x=455 y=145 width=7 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1242 x=186 y=33 width=11 height=14 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1243 x=454 y=125 width=8 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1244 x=197 y=33 width=18 height=14 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1245 x=462 y=125 width=15 height=10 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1246 x=215 y=33 width=10 height=14 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1247 x=477 y=125 width=8 height=10 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=1248 x=485 y=125 width=11 height=10 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1249 x=496 y=125 width=8 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1250 x=26 y=60 width=14 height=13 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1251 x=287 y=135 width=8 height=9 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1252 x=225 y=33 width=14 height=14 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1253 x=0 y=135 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1254 x=239 y=33 width=12 height=14 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1255 x=8 y=135 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1256 x=17 y=135 width=12 height=10 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1257 x=462 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1258 x=251 y=33 width=12 height=14 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1259 x=29 y=135 width=9 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1260 x=263 y=33 width=10 height=14 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1261 x=504 y=125 width=7 height=10 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1262 x=40 y=60 width=12 height=13 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1263 x=52 y=60 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1264 x=273 y=33 width=12 height=14 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1265 x=60 y=60 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1266 x=411 y=0 width=12 height=15 xoffset=1 yoffset=-1 xadvance=12 page=0 chnl=0 +char id=1267 x=68 y=60 width=10 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1268 x=285 y=33 width=11 height=14 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1269 x=38 y=135 width=8 height=10 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1270 x=78 y=60 width=11 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1271 x=46 y=135 width=7 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1272 x=296 y=33 width=16 height=14 xoffset=-1 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1273 x=53 y=135 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1296 x=64 y=135 width=9 height=10 xoffset=1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1297 x=470 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1298 x=312 y=33 width=14 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1299 x=73 y=135 width=8 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1306 x=348 y=33 width=12 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1307 x=81 y=135 width=8 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1308 x=11 y=95 width=14 height=10 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1309 x=478 y=145 width=11 height=7 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1310 x=89 y=135 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1311 x=489 y=145 width=8 height=7 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=8 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=16 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=8 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=16 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=5 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=4 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=3 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=8 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=4 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=3 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=2 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=0 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=0 page=0 chnl=0 +char id=8210 x=261 y=152 width=9 height=1 xoffset=1 yoffset=10 xadvance=8 page=0 chnl=0 +char id=8211 x=270 y=152 width=9 height=1 xoffset=0 yoffset=10 xadvance=8 page=0 chnl=0 +char id=8212 x=279 y=152 width=17 height=1 xoffset=0 yoffset=10 xadvance=16 page=0 chnl=0 +char id=8213 x=296 y=152 width=17 height=1 xoffset=1 yoffset=10 xadvance=16 page=0 chnl=0 +char id=8214 x=102 y=135 width=6 height=10 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=0 +char id=8215 x=201 y=152 width=9 height=3 xoffset=-1 yoffset=15 xadvance=7 page=0 chnl=0 +char id=8216 x=125 y=152 width=3 height=4 xoffset=2 yoffset=3 xadvance=4 page=0 chnl=0 +char id=8217 x=128 y=152 width=3 height=4 xoffset=2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=8218 x=131 y=152 width=3 height=4 xoffset=0 yoffset=12 xadvance=4 page=0 chnl=0 +char id=8219 x=134 y=152 width=3 height=4 xoffset=2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=8220 x=137 y=152 width=7 height=4 xoffset=2 yoffset=3 xadvance=7 page=0 chnl=0 +char id=8221 x=144 y=152 width=6 height=4 xoffset=3 yoffset=4 xadvance=7 page=0 chnl=0 +char id=8222 x=150 y=152 width=6 height=4 xoffset=0 yoffset=12 xadvance=7 page=0 chnl=0 +char id=8223 x=156 y=152 width=6 height=4 xoffset=3 yoffset=4 xadvance=7 page=0 chnl=0 +char id=8224 x=89 y=60 width=7 height=13 xoffset=1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8225 x=96 y=60 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8226 x=71 y=152 width=6 height=5 xoffset=1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=8230 x=229 y=152 width=13 height=2 xoffset=0 yoffset=12 xadvance=14 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=0 yoffset=14 xadvance=4 page=0 chnl=0 +char id=8240 x=367 y=60 width=17 height=12 xoffset=0 yoffset=2 xadvance=16 page=0 chnl=0 +char id=8242 x=77 y=152 width=5 height=5 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=0 +char id=8243 x=82 y=152 width=8 height=5 xoffset=1 yoffset=2 xadvance=7 page=0 chnl=0 +char id=8244 x=90 y=152 width=11 height=5 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=0 +char id=8249 x=13 y=152 width=5 height=6 xoffset=0 yoffset=8 xadvance=4 page=0 chnl=0 +char id=8250 x=18 y=152 width=4 height=6 xoffset=0 yoffset=7 xadvance=4 page=0 chnl=0 +char id=8252 x=108 y=135 width=11 height=10 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=8254 x=313 y=152 width=9 height=1 xoffset=2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8260 x=119 y=84 width=12 height=11 xoffset=-3 yoffset=3 xadvance=3 page=0 chnl=0 +char id=8286 x=104 y=60 width=6 height=13 xoffset=0 yoffset=1 xadvance=3 page=0 chnl=0 +char id=8352 x=131 y=84 width=10 height=11 xoffset=2 yoffset=3 xadvance=11 page=0 chnl=0 +char id=8353 x=423 y=0 width=12 height=15 xoffset=1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=8354 x=119 y=135 width=11 height=10 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=8355 x=130 y=135 width=11 height=10 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=8356 x=141 y=84 width=9 height=11 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=8357 x=384 y=60 width=12 height=12 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=8358 x=141 y=135 width=13 height=10 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=8359 x=150 y=84 width=16 height=11 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=0 +char id=8360 x=154 y=135 width=17 height=10 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=8361 x=171 y=135 width=15 height=10 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=8363 x=110 y=60 width=10 height=13 xoffset=1 yoffset=1 xadvance=8 page=0 chnl=0 +char id=8364 x=166 y=84 width=13 height=11 xoffset=1 yoffset=3 xadvance=12 page=0 chnl=0 +char id=8365 x=179 y=84 width=13 height=11 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=0 +char id=8366 x=192 y=84 width=11 height=11 xoffset=1 yoffset=3 xadvance=10 page=0 chnl=0 +char id=8367 x=326 y=33 width=22 height=14 xoffset=0 yoffset=3 xadvance=21 page=0 chnl=0 +char id=8368 x=502 y=19 width=9 height=14 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=8369 x=203 y=84 width=11 height=11 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=8370 x=120 y=60 width=10 height=13 xoffset=1 yoffset=2 xadvance=10 page=0 chnl=0 +char id=8371 x=214 y=84 width=12 height=11 xoffset=0 yoffset=3 xadvance=12 page=0 chnl=0 +char id=8372 x=226 y=84 width=9 height=11 xoffset=1 yoffset=3 xadvance=9 page=0 chnl=0 +char id=8373 x=396 y=60 width=10 height=12 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=0 +kernings count=17372 +kerning first=1051 second=1052 amount=-1 +kerning first=1049 second=1107 amount=-1 +kerning first=354 second=233 amount=-1 +kerning first=8249 second=217 amount=-1 +kerning first=351 second=44 amount=-1 +kerning first=314 second=45 amount=-1 +kerning first=197 second=46 amount=-1 +kerning first=280 second=288 amount=-1 +kerning first=375 second=291 amount=-1 +kerning first=339 second=291 amount=-1 +kerning first=211 second=65 amount=-1 +kerning first=79 second=66 amount=-1 +kerning first=370 second=67 amount=-1 +kerning first=334 second=68 amount=-1 +kerning first=211 second=70 amount=-1 +kerning first=8217 second=71 amount=-1 +kerning first=327 second=72 amount=-1 +kerning first=346 second=75 amount=-1 +kerning first=201 second=76 amount=-1 +kerning first=207 second=77 amount=-1 +kerning first=202 second=78 amount=-1 +kerning first=366 second=80 amount=-1 +kerning first=304 second=82 amount=-1 +kerning first=72 second=83 amount=-1 +kerning first=79 second=84 amount=-1 +kerning first=8216 second=85 amount=-1 +kerning first=231 second=291 amount=-1 +kerning first=270 second=87 amount=-1 +kerning first=211 second=88 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=362 second=97 amount=-1 +kerning first=230 second=98 amount=-1 +kerning first=116 second=99 amount=-1 +kerning first=8218 second=100 amount=-1 +kerning first=283 second=101 amount=-1 +kerning first=70 second=102 amount=-1 +kerning first=8218 second=104 amount=-1 +kerning first=88 second=105 amount=-1 +kerning first=187 second=106 amount=-1 +kerning first=192 second=107 amount=-1 +kerning first=253 second=108 amount=-1 +kerning first=304 second=109 amount=-1 +kerning first=327 second=110 amount=-1 +kerning first=364 second=111 amount=-1 +kerning first=99 second=112 amount=-1 +kerning first=233 second=113 amount=-1 +kerning first=110 second=114 amount=-1 +kerning first=291 second=115 amount=-1 +kerning first=194 second=116 amount=-1 +kerning first=364 second=117 amount=-1 +kerning first=8250 second=119 amount=-1 +kerning first=103 second=120 amount=-1 +kerning first=1030 second=1043 amount=-1 +kerning first=89 second=122 amount=-1 +kerning first=336 second=8218 amount=-1 +kerning first=1067 second=1079 amount=-1 +kerning first=8220 second=65 amount=-2 +kerning first=325 second=81 amount=-1 +kerning first=1064 second=1049 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=282 second=187 amount=-1 +kerning first=356 second=273 amount=-1 +kerning first=368 second=192 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=8217 second=196 amount=-2 +kerning first=8217 second=197 amount=-2 +kerning first=74 second=198 amount=-1 +kerning first=72 second=199 amount=-1 +kerning first=209 second=201 amount=-1 +kerning first=209 second=202 amount=-1 +kerning first=80 second=203 amount=-1 +kerning first=284 second=204 amount=-1 +kerning first=262 second=205 amount=-1 +kerning first=220 second=206 amount=-1 +kerning first=366 second=207 amount=-1 +kerning first=78 second=209 amount=-1 +kerning first=302 second=210 amount=-1 +kerning first=220 second=211 amount=-1 +kerning first=199 second=212 amount=-1 +kerning first=209 second=213 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=67 second=216 amount=-1 +kerning first=88 second=217 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=65 second=219 amount=-1 +kerning first=74 second=80 amount=-1 +kerning first=68 second=221 amount=-1 +kerning first=194 second=223 amount=-1 +kerning first=304 second=224 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=263 second=228 amount=-1 +kerning first=220 second=230 amount=-1 +kerning first=314 second=231 amount=-1 +kerning first=281 second=232 amount=-1 +kerning first=206 second=234 amount=-1 +kerning first=264 second=8218 amount=-1 +kerning first=231 second=240 amount=-1 +kerning first=77 second=241 amount=-1 +kerning first=266 second=242 amount=-1 +kerning first=226 second=243 amount=-1 +kerning first=281 second=187 amount=-1 +kerning first=304 second=245 amount=-1 +kerning first=8218 second=246 amount=-1 +kerning first=325 second=248 amount=-1 +kerning first=198 second=249 amount=-1 +kerning first=366 second=250 amount=-1 +kerning first=66 second=251 amount=-1 +kerning first=8222 second=252 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=264 second=254 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=204 second=257 amount=-1 +kerning first=8217 second=259 amount=-1 +kerning first=323 second=261 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=367 second=263 amount=-1 +kerning first=344 second=266 amount=-1 +kerning first=229 second=267 amount=-1 +kerning first=85 second=268 amount=-1 +kerning first=266 second=199 amount=-1 +kerning first=218 second=271 amount=-1 +kerning first=217 second=273 amount=-1 +kerning first=369 second=275 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=235 second=279 amount=-1 +kerning first=217 second=280 amount=-1 +kerning first=289 second=281 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=305 second=283 amount=-1 +kerning first=310 second=284 amount=-1 +kerning first=8218 second=286 amount=-1 +kerning first=296 second=290 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=1062 second=1104 amount=-1 +kerning first=355 second=279 amount=-1 +kerning first=270 second=296 amount=-1 +kerning first=68 second=187 amount=-1 +kerning first=272 second=302 amount=-1 +kerning first=195 second=303 amount=-1 +kerning first=206 second=304 amount=-1 +kerning first=269 second=305 amount=-1 +kerning first=287 second=307 amount=-1 +kerning first=70 second=310 amount=-1 +kerning first=279 second=311 amount=-1 +kerning first=259 second=314 amount=-1 +kerning first=266 second=315 amount=-1 +kerning first=79 second=317 amount=-1 +kerning first=227 second=318 amount=-1 +kerning first=78 second=323 amount=-1 +kerning first=231 second=324 amount=-1 +kerning first=78 second=325 amount=-1 +kerning first=263 second=326 amount=-1 +kerning first=73 second=327 amount=-1 +kerning first=45 second=328 amount=-1 +kerning first=74 second=316 amount=-1 +kerning first=268 second=330 amount=-1 +kerning first=80 second=331 amount=-1 +kerning first=203 second=332 amount=-1 +kerning first=289 second=333 amount=-1 +kerning first=325 second=334 amount=-1 +kerning first=362 second=335 amount=-1 +kerning first=355 second=337 amount=-1 +kerning first=366 second=338 amount=-1 +kerning first=78 second=206 amount=-1 +kerning first=210 second=66 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=78 second=344 amount=-1 +kerning first=201 second=345 amount=-1 +kerning first=72 second=346 amount=-1 +kerning first=291 second=347 amount=-1 +kerning first=204 second=264 amount=-1 +kerning first=209 second=350 amount=-1 +kerning first=217 second=352 amount=-1 +kerning first=264 second=353 amount=-1 +kerning first=274 second=355 amount=-1 +kerning first=196 second=356 amount=-1 +kerning first=194 second=357 amount=-1 +kerning first=324 second=283 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=298 second=362 amount=-1 +kerning first=45 second=363 amount=-1 +kerning first=67 second=364 amount=-1 +kerning first=8250 second=366 amount=-1 +kerning first=296 second=368 amount=-1 +kerning first=321 second=370 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=79 second=374 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=325 second=261 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=266 second=378 amount=-1 +kerning first=289 second=380 amount=-1 +kerning first=282 second=367 amount=-1 +kerning first=233 second=382 amount=-1 +kerning first=219 second=193 amount=-1 +kerning first=298 second=368 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=69 second=367 amount=-1 +kerning first=246 second=380 amount=-1 +kerning first=1067 second=1027 amount=-1 +kerning first=354 second=380 amount=-1 +kerning first=68 second=200 amount=-1 +kerning first=8250 second=325 amount=-1 +kerning first=356 second=245 amount=-1 +kerning first=203 second=205 amount=-1 +kerning first=286 second=270 amount=-1 +kerning first=316 second=108 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=70 second=99 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=1054 second=1030 amount=-1 +kerning first=262 second=368 amount=-1 +kerning first=350 second=209 amount=-1 +kerning first=338 second=78 amount=-1 +kerning first=355 second=8221 amount=-1 +kerning first=213 second=44 amount=-1 +kerning first=302 second=78 amount=-1 +kerning first=298 second=355 amount=-1 +kerning first=220 second=252 amount=-1 +kerning first=344 second=214 amount=-1 +kerning first=262 second=355 amount=-1 +kerning first=1054 second=1043 amount=-1 +kerning first=307 second=8222 amount=-1 +kerning first=1030 second=1071 amount=-1 +kerning first=1046 second=1116 amount=-1 +kerning first=8250 second=250 amount=-1 +kerning first=71 second=325 amount=-1 +kerning first=364 second=252 amount=-1 +kerning first=366 second=197 amount=-1 +kerning first=266 second=78 amount=-1 +kerning first=85 second=355 amount=-1 +kerning first=8220 second=366 amount=-1 +kerning first=366 second=8249 amount=-2 +kerning first=217 second=248 amount=-1 +kerning first=277 second=117 amount=-1 +kerning first=75 second=8250 amount=-1 +kerning first=1118 second=1116 amount=-1 +kerning first=270 second=282 amount=-1 +kerning first=1051 second=1039 amount=-1 +kerning first=202 second=296 amount=-1 +kerning first=1091 second=1096 amount=-1 +kerning first=72 second=44 amount=-1 +kerning first=200 second=214 amount=-1 +kerning first=121 second=367 amount=-1 +kerning first=8218 second=363 amount=-1 +kerning first=370 second=355 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=68 second=347 amount=-1 +kerning first=268 second=350 amount=-1 +kerning first=69 second=220 amount=-1 +kerning first=304 second=350 amount=-1 +kerning first=1038 second=1072 amount=-1 +kerning first=1041 second=1059 amount=-1 +kerning first=229 second=333 amount=-1 +kerning first=73 second=77 amount=-1 +kerning first=1118 second=1103 amount=-1 +kerning first=112 second=382 amount=-1 +kerning first=354 second=246 amount=-1 +kerning first=1054 second=1056 amount=-1 +kerning first=263 second=251 amount=-1 +kerning first=217 second=382 amount=-1 +kerning first=119 second=289 amount=-1 +kerning first=1048 second=1048 amount=-1 +kerning first=86 second=100 amount=-1 +kerning first=250 second=103 amount=-1 +kerning first=284 second=327 amount=-1 +kerning first=350 second=330 amount=-1 +kerning first=224 second=289 amount=-1 +kerning first=282 second=77 amount=-1 +kerning first=1051 second=1065 amount=-1 +kerning first=217 second=8218 amount=-2 +kerning first=1049 second=1094 amount=-1 +kerning first=1088 second=1113 amount=-1 +kerning first=286 second=77 amount=-1 +kerning first=105 second=246 amount=-1 +kerning first=65 second=356 amount=-1 +kerning first=1062 second=1091 amount=-1 +kerning first=326 second=281 amount=-1 +kerning first=210 second=220 amount=-1 +kerning first=214 second=77 amount=-1 +kerning first=366 second=171 amount=-2 +kerning first=362 second=281 amount=-1 +kerning first=244 second=378 amount=-1 +kerning first=296 second=109 amount=-1 +kerning first=87 second=120 amount=-1 +kerning first=220 second=85 amount=-1 +kerning first=79 second=85 amount=-1 +kerning first=298 second=72 amount=-1 +kerning first=72 second=211 amount=-1 +kerning first=264 second=120 amount=-1 +kerning first=1038 second=1079 amount=-1 +kerning first=77 second=281 amount=-1 +kerning first=253 second=382 amount=-1 +kerning first=275 second=339 amount=-1 +kerning first=202 second=332 amount=-1 +kerning first=289 second=382 amount=-1 +kerning first=231 second=275 amount=-1 +kerning first=325 second=382 amount=-1 +kerning first=74 second=290 amount=-1 +kerning first=1060 second=1025 amount=-1 +kerning first=8250 second=374 amount=-2 +kerning first=281 second=347 amount=-1 +kerning first=310 second=332 amount=-1 +kerning first=1048 second=1074 amount=-1 +kerning first=1071 second=1051 amount=-1 +kerning first=274 second=332 amount=-1 +kerning first=209 second=347 amount=-1 +kerning first=1065 second=1108 amount=-1 +kerning first=264 second=313 amount=-1 +kerning first=1091 second=1076 amount=-1 +kerning first=267 second=111 amount=-1 +kerning first=310 second=8250 amount=-1 +kerning first=263 second=254 amount=-1 +kerning first=279 second=337 amount=-1 +kerning first=272 second=374 amount=-1 +kerning first=274 second=8250 amount=-1 +kerning first=233 second=357 amount=-1 +kerning first=205 second=113 amount=-1 +kerning first=302 second=271 amount=-1 +kerning first=370 second=195 amount=-1 +kerning first=266 second=271 amount=-1 +kerning first=1055 second=1076 amount=-1 +kerning first=67 second=8221 amount=-1 +kerning first=202 second=8250 amount=-1 +kerning first=205 second=323 amount=-1 +kerning first=374 second=271 amount=-1 +kerning first=219 second=219 amount=-1 +kerning first=1047 second=1041 amount=-1 +kerning first=97 second=8250 amount=-1 +kerning first=1053 second=1118 amount=-1 +kerning first=197 second=357 amount=-1 +kerning first=8216 second=368 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=269 second=107 amount=-1 +kerning first=1059 second=1071 amount=-1 +kerning first=248 second=8217 amount=-2 +kerning first=193 second=212 amount=-1 +kerning first=284 second=8217 amount=-1 +kerning first=356 second=8217 amount=-1 +kerning first=1039 second=1075 amount=-1 +kerning first=71 second=8217 amount=-1 +kerning first=364 second=85 amount=-1 +kerning first=1067 second=1107 amount=-1 +kerning first=107 second=8217 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=202 second=310 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=231 second=111 amount=-1 +kerning first=194 second=366 amount=-1 +kerning first=217 second=68 amount=-1 +kerning first=330 second=331 amount=-1 +kerning first=278 second=8250 amount=-1 +kerning first=325 second=68 amount=-1 +kerning first=366 second=331 amount=-1 +kerning first=67 second=314 amount=-1 +kerning first=224 second=263 amount=-1 +kerning first=1068 second=1024 amount=-1 +kerning first=1041 second=1025 amount=-1 +kerning first=1053 second=1027 amount=-1 +kerning first=1040 second=1028 amount=-1 +kerning first=1060 second=1030 amount=-1 +kerning first=1064 second=1031 amount=-1 +kerning first=1060 second=1034 amount=-1 +kerning first=316 second=314 amount=-1 +kerning first=1041 second=1036 amount=-1 +kerning first=296 second=263 amount=-1 +kerning first=1068 second=1038 amount=-2 +kerning first=1064 second=1039 amount=-1 +kerning first=203 second=365 amount=-1 +kerning first=119 second=117 amount=-1 +kerning first=234 second=314 amount=-1 +kerning first=298 second=67 amount=-1 +kerning first=1041 second=1044 amount=-1 +kerning first=1041 second=1045 amount=-1 +kerning first=1040 second=1047 amount=-1 +kerning first=1041 second=1048 amount=-1 +kerning first=1069 second=1049 amount=-1 +kerning first=1071 second=1050 amount=-1 +kerning first=1052 second=1051 amount=-1 +kerning first=1041 second=1052 amount=-1 +kerning first=1042 second=1053 amount=-1 +kerning first=1046 second=1054 amount=-1 +kerning first=1051 second=1055 amount=-1 +kerning first=1053 second=1056 amount=-1 +kerning first=1065 second=1057 amount=-1 +kerning first=1060 second=1059 amount=-1 +kerning first=1046 second=1060 amount=-1 +kerning first=1041 second=1061 amount=-1 +kerning first=1034 second=1062 amount=-1 +kerning first=1040 second=1063 amount=-2 +kerning first=1041 second=1064 amount=-1 +kerning first=1054 second=1065 amount=-1 +kerning first=262 second=67 amount=-1 +kerning first=1041 second=1068 amount=-1 +kerning first=1049 second=1069 amount=-1 +kerning first=1049 second=1070 amount=-1 +kerning first=1071 second=1071 amount=-1 +kerning first=1053 second=1072 amount=-1 +kerning first=1040 second=1073 amount=-1 +kerning first=1027 second=1074 amount=-1 +kerning first=8250 second=70 amount=-1 +kerning first=1078 second=1076 amount=-1 +kerning first=1050 second=1077 amount=-1 +kerning first=1073 second=1078 amount=-1 +kerning first=1051 second=1079 amount=-1 +kerning first=1059 second=1080 amount=-1 +kerning first=1042 second=1081 amount=-1 +kerning first=1041 second=1082 amount=-1 +kerning first=1041 second=1083 amount=-1 +kerning first=1056 second=1084 amount=-1 +kerning first=1041 second=1085 amount=-1 +kerning first=1071 second=1086 amount=-1 +kerning first=1058 second=1087 amount=-1 +kerning first=1027 second=1088 amount=-1 +kerning first=1027 second=1089 amount=-1 +kerning first=1041 second=1090 amount=-1 +kerning first=1077 second=1091 amount=-1 +kerning first=8218 second=307 amount=-1 +kerning first=338 second=366 amount=-1 +kerning first=1048 second=1094 amount=-1 +kerning first=1094 second=1095 amount=-1 +kerning first=1040 second=1096 amount=-1 +kerning first=1076 second=1097 amount=-1 +kerning first=1052 second=1098 amount=-1 +kerning first=85 second=67 amount=-1 +kerning first=1059 second=1100 amount=-1 +kerning first=1065 second=1101 amount=-1 +kerning first=1041 second=1102 amount=-1 +kerning first=1078 second=1103 amount=-1 +kerning first=1027 second=1104 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=1027 second=1107 amount=-1 +kerning first=1049 second=1108 amount=-1 +kerning first=266 second=366 amount=-1 +kerning first=1054 second=1113 amount=-1 +kerning first=89 second=271 amount=-1 +kerning first=268 second=203 amount=-1 +kerning first=344 second=374 amount=-1 +kerning first=1047 second=1117 amount=-1 +kerning first=1105 second=1118 amount=-1 +kerning first=1065 second=1119 amount=-1 +kerning first=194 second=104 amount=-1 +kerning first=230 second=104 amount=-1 +kerning first=256 second=46 amount=-1 +kerning first=87 second=192 amount=-1 +kerning first=296 second=70 amount=-1 +kerning first=73 second=378 amount=-1 +kerning first=68 second=46 amount=-1 +kerning first=207 second=101 amount=-1 +kerning first=209 second=46 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=279 second=101 amount=-1 +kerning first=281 second=46 amount=-1 +kerning first=270 second=76 amount=-1 +kerning first=1064 second=1075 amount=-1 +kerning first=67 second=262 amount=-1 +kerning first=69 second=207 amount=-1 +kerning first=8218 second=261 amount=-1 +kerning first=198 second=76 amount=-1 +kerning first=280 second=262 amount=-1 +kerning first=207 second=286 amount=-1 +kerning first=73 second=296 amount=-1 +kerning first=201 second=8217 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=207 second=216 amount=-1 +kerning first=1059 second=1087 amount=-1 +kerning first=258 second=357 amount=-1 +kerning first=286 second=296 amount=-1 +kerning first=266 second=104 amount=-1 +kerning first=366 second=357 amount=-1 +kerning first=97 second=345 amount=-1 +kerning first=214 second=296 amount=-1 +kerning first=212 second=204 amount=-1 +kerning first=196 second=311 amount=-1 +kerning first=232 second=311 amount=-1 +kerning first=202 second=345 amount=-1 +kerning first=78 second=366 amount=-1 +kerning first=253 second=369 amount=-1 +kerning first=8250 second=262 amount=-1 +kerning first=274 second=280 amount=-1 +kerning first=274 second=345 amount=-1 +kerning first=217 second=369 amount=-1 +kerning first=368 second=122 amount=-1 +kerning first=366 second=210 amount=-1 +kerning first=354 second=259 amount=-1 +kerning first=8217 second=100 amount=-1 +kerning first=310 second=345 amount=-1 +kerning first=70 second=8218 amount=-2 +kerning first=213 second=198 amount=-1 +kerning first=346 second=280 amount=-1 +kerning first=346 second=345 amount=-1 +kerning first=112 second=287 amount=-1 +kerning first=1053 second=1105 amount=-1 +kerning first=296 second=122 amount=-1 +kerning first=221 second=225 amount=-1 +kerning first=330 second=210 amount=-1 +kerning first=8250 second=109 amount=-1 +kerning first=1056 second=1096 amount=-1 +kerning first=210 second=207 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=258 second=210 amount=-1 +kerning first=65 second=318 amount=-1 +kerning first=289 second=287 amount=-1 +kerning first=263 second=113 amount=-1 +kerning first=282 second=207 amount=-1 +kerning first=253 second=287 amount=-1 +kerning first=1030 second=1113 amount=-1 +kerning first=327 second=366 amount=-1 +kerning first=45 second=210 amount=-1 +kerning first=1038 second=1114 amount=-1 +kerning first=201 second=67 amount=-1 +kerning first=219 second=366 amount=-1 +kerning first=227 second=113 amount=-1 +kerning first=277 second=271 amount=-1 +kerning first=205 second=336 amount=-1 +kerning first=86 second=113 amount=-1 +kerning first=8218 second=279 amount=-1 +kerning first=74 second=195 amount=-1 +kerning first=346 second=8250 amount=-1 +kerning first=279 second=281 amount=-1 +kerning first=109 second=244 amount=-1 +kerning first=79 second=278 amount=-1 +kerning first=200 second=73 amount=-1 +kerning first=220 second=347 amount=-1 +kerning first=272 second=73 amount=-1 +kerning first=207 second=268 amount=-1 +kerning first=1048 second=1108 amount=-1 +kerning first=235 second=8220 amount=-2 +kerning first=344 second=86 amount=-1 +kerning first=79 second=347 amount=-1 +kerning first=220 second=278 amount=-1 +kerning first=323 second=97 amount=-1 +kerning first=307 second=8220 amount=-1 +kerning first=272 second=86 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=271 second=8220 amount=-1 +kerning first=258 second=303 amount=-1 +kerning first=84 second=283 amount=-1 +kerning first=281 second=365 amount=-1 +kerning first=364 second=278 amount=-1 +kerning first=99 second=277 amount=-1 +kerning first=364 second=323 amount=-1 +kerning first=1030 second=1099 amount=-1 +kerning first=250 second=267 amount=-1 +kerning first=203 second=77 amount=-1 +kerning first=8250 second=122 amount=-1 +kerning first=217 second=235 amount=-1 +kerning first=207 second=281 amount=-1 +kerning first=240 second=277 amount=-1 +kerning first=369 second=283 amount=-1 +kerning first=259 second=269 amount=-1 +kerning first=80 second=79 amount=-1 +kerning first=70 second=253 amount=-1 +kerning first=8217 second=267 amount=-1 +kerning first=1038 second=1081 amount=-1 +kerning first=225 second=283 amount=-1 +kerning first=103 second=246 amount=-1 +kerning first=275 second=231 amount=-1 +kerning first=261 second=283 amount=-1 +kerning first=84 second=380 amount=-1 +kerning first=219 second=65 amount=-1 +kerning first=187 second=338 amount=-1 +kerning first=367 second=269 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=379 second=8220 amount=-1 +kerning first=82 second=338 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=8250 second=290 amount=-1 +kerning first=232 second=363 amount=-1 +kerning first=201 second=286 amount=-1 +kerning first=221 second=79 amount=-1 +kerning first=364 second=347 amount=-1 +kerning first=73 second=244 amount=-1 +kerning first=334 second=8250 amount=-1 +kerning first=111 second=289 amount=-1 +kerning first=264 second=261 amount=-1 +kerning first=67 second=275 amount=-1 +kerning first=85 second=85 amount=-1 +kerning first=1036 second=1097 amount=-1 +kerning first=334 second=260 amount=-1 +kerning first=201 second=80 amount=-1 +kerning first=370 second=260 amount=-1 +kerning first=375 second=8222 amount=-1 +kerning first=264 second=82 amount=-1 +kerning first=279 second=114 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=334 second=368 amount=-1 +kerning first=81 second=344 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=267 second=8222 amount=-1 +kerning first=231 second=8222 amount=-1 +kerning first=68 second=115 amount=-1 +kerning first=8220 second=193 amount=-2 +kerning first=78 second=353 amount=-1 +kerning first=288 second=310 amount=-1 +kerning first=1051 second=1070 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=264 second=205 amount=-1 +kerning first=281 second=115 amount=-1 +kerning first=87 second=261 amount=-1 +kerning first=219 second=353 amount=-1 +kerning first=1056 second=1027 amount=-1 +kerning first=89 second=258 amount=-1 +kerning first=205 second=284 amount=-1 +kerning first=1031 second=1053 amount=-1 +kerning first=291 second=353 amount=-1 +kerning first=1067 second=1053 amount=-1 +kerning first=200 second=81 amount=-1 +kerning first=289 second=235 amount=-1 +kerning first=375 second=252 amount=-1 +kerning first=325 second=235 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=1055 second=1037 amount=-1 +kerning first=233 second=249 amount=-1 +kerning first=288 second=362 amount=-1 +kerning first=1030 second=1092 amount=-1 +kerning first=232 second=242 amount=-1 +kerning first=316 second=380 amount=-1 +kerning first=268 second=242 amount=-1 +kerning first=8218 second=107 amount=-1 +kerning first=8222 second=311 amount=-1 +kerning first=1027 second=1116 amount=-1 +kerning first=248 second=106 amount=-1 +kerning first=209 second=200 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=304 second=242 amount=-1 +kerning first=366 second=223 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=1034 second=1044 amount=-1 +kerning first=324 second=248 amount=-1 +kerning first=269 second=249 amount=-1 +kerning first=75 second=362 amount=-1 +kerning first=231 second=252 amount=-1 +kerning first=339 second=252 amount=-1 +kerning first=204 second=71 amount=-1 +kerning first=364 second=226 amount=-1 +kerning first=316 second=275 amount=-1 +kerning first=71 second=270 amount=-1 +kerning first=235 second=233 amount=-1 +kerning first=328 second=291 amount=-1 +kerning first=271 second=233 amount=-1 +kerning first=45 second=223 amount=-1 +kerning first=70 second=364 amount=-1 +kerning first=199 second=233 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=258 second=223 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=307 second=233 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=200 second=361 amount=-1 +kerning first=250 second=101 amount=-1 +kerning first=1048 second=1113 amount=-1 +kerning first=224 second=122 amount=-1 +kerning first=369 second=335 amount=-1 +kerning first=234 second=243 amount=-1 +kerning first=327 second=232 amount=-1 +kerning first=291 second=232 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=1101 second=1083 amount=-1 +kerning first=209 second=8217 amount=-1 +kerning first=218 second=284 amount=-1 +kerning first=219 second=232 amount=-1 +kerning first=1058 second=1080 amount=-1 +kerning first=110 second=8221 amount=-2 +kerning first=280 second=327 amount=-1 +kerning first=8218 second=382 amount=-1 +kerning first=264 second=107 amount=-1 +kerning first=352 second=327 amount=-1 +kerning first=268 second=311 amount=-1 +kerning first=251 second=8221 amount=-1 +kerning first=363 second=232 amount=-1 +kerning first=207 second=337 amount=-1 +kerning first=338 second=250 amount=-1 +kerning first=1051 second=1077 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=45 second=211 amount=-1 +kerning first=8222 second=363 amount=-1 +kerning first=70 second=318 amount=-1 +kerning first=8216 second=260 amount=-2 +kerning first=1059 second=1113 amount=-1 +kerning first=220 second=72 amount=-1 +kerning first=270 second=89 amount=-1 +kerning first=79 second=72 amount=-1 +kerning first=78 second=232 amount=-1 +kerning first=71 second=76 amount=-1 +kerning first=261 second=335 amount=-1 +kerning first=1075 second=1088 amount=-1 +kerning first=1051 second=1104 amount=-1 +kerning first=353 second=46 amount=-1 +kerning first=283 second=318 amount=-1 +kerning first=364 second=72 amount=-1 +kerning first=1049 second=1055 amount=-1 +kerning first=267 second=98 amount=-1 +kerning first=330 second=344 amount=-1 +kerning first=263 second=267 amount=-1 +kerning first=195 second=98 amount=-1 +kerning first=8222 second=107 amount=-1 +kerning first=88 second=199 amount=-1 +kerning first=212 second=325 amount=-1 +kerning first=366 second=344 amount=-1 +kerning first=1053 second=1036 amount=-1 +kerning first=298 second=210 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=375 second=98 amount=-1 +kerning first=86 second=267 amount=-1 +kerning first=339 second=98 amount=-1 +kerning first=324 second=267 amount=-1 +kerning first=362 second=212 amount=-1 +kerning first=1056 second=1070 amount=-1 +kerning first=8218 second=235 amount=-1 +kerning first=218 second=212 amount=-1 +kerning first=337 second=114 amount=-1 +kerning first=1036 second=1028 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=252 second=267 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=229 second=114 amount=-1 +kerning first=1053 second=1079 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=352 second=206 amount=-1 +kerning first=193 second=114 amount=-1 +kerning first=100 second=245 amount=-1 +kerning first=77 second=212 amount=-1 +kerning first=1118 second=1096 amount=-1 +kerning first=219 second=258 amount=-1 +kerning first=282 second=315 amount=-1 +kerning first=355 second=8249 amount=-1 +kerning first=280 second=206 amount=-1 +kerning first=206 second=111 amount=-1 +kerning first=8222 second=242 amount=-1 +kerning first=73 second=352 amount=-1 +kerning first=314 second=111 amount=-1 +kerning first=88 second=114 amount=-1 +kerning first=74 second=368 amount=-1 +kerning first=302 second=310 amount=-1 +kerning first=235 second=263 amount=-1 +kerning first=8217 second=336 amount=-1 +kerning first=266 second=310 amount=-1 +kerning first=85 second=120 amount=-1 +kerning first=70 second=197 amount=-1 +kerning first=67 second=370 amount=-1 +kerning first=8250 second=117 amount=-1 +kerning first=1118 second=1082 amount=-1 +kerning first=307 second=263 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=278 second=81 amount=-1 +kerning first=70 second=8249 amount=-2 +kerning first=87 second=365 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=339 second=8218 amount=-1 +kerning first=108 second=8221 amount=-1 +kerning first=255 second=8222 amount=-1 +kerning first=70 second=331 amount=-1 +kerning first=264 second=68 amount=-1 +kerning first=1033 second=1037 amount=-1 +kerning first=209 second=72 amount=-1 +kerning first=352 second=370 amount=-1 +kerning first=1069 second=1037 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=280 second=370 amount=-1 +kerning first=204 second=199 amount=-1 +kerning first=121 second=106 amount=-1 +kerning first=70 second=361 amount=-1 +kerning first=1064 second=1101 amount=-1 +kerning first=338 second=310 amount=-1 +kerning first=202 second=67 amount=-1 +kerning first=1055 second=1024 amount=-1 +kerning first=364 second=8222 amount=-2 +kerning first=362 second=346 amount=-1 +kerning first=70 second=227 amount=-1 +kerning first=68 second=282 amount=-1 +kerning first=220 second=298 amount=-1 +kerning first=220 second=8222 amount=-2 +kerning first=218 second=346 amount=-1 +kerning first=266 second=327 amount=-1 +kerning first=73 second=207 amount=-1 +kerning first=302 second=327 amount=-1 +kerning first=115 second=8222 amount=-1 +kerning first=338 second=327 amount=-1 +kerning first=79 second=8222 amount=-1 +kerning first=77 second=346 amount=-1 +kerning first=80 second=350 amount=-1 +kerning first=314 second=291 amount=-1 +kerning first=219 second=288 amount=-1 +kerning first=116 second=337 amount=-1 +kerning first=364 second=334 amount=-1 +kerning first=78 second=288 amount=-1 +kerning first=80 second=337 amount=-1 +kerning first=242 second=291 amount=-1 +kerning first=346 second=44 amount=-1 +kerning first=219 second=8218 amount=-2 +kerning first=327 second=288 amount=-1 +kerning first=206 second=81 amount=-1 +kerning first=1066 second=1046 amount=-1 +kerning first=197 second=318 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=233 second=318 amount=-1 +kerning first=290 second=75 amount=-1 +kerning first=269 second=318 amount=-1 +kerning first=1033 second=1050 amount=-1 +kerning first=1053 second=1098 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=365 second=337 amount=-1 +kerning first=234 second=187 amount=-1 +kerning first=1058 second=1119 amount=-1 +kerning first=85 second=195 amount=-1 +kerning first=270 second=187 amount=-1 +kerning first=1060 second=1064 amount=-1 +kerning first=77 second=75 amount=-1 +kerning first=277 second=245 amount=-1 +kerning first=257 second=337 amount=-1 +kerning first=241 second=245 amount=-1 +kerning first=198 second=187 amount=-1 +kerning first=221 second=337 amount=-1 +kerning first=205 second=245 amount=-1 +kerning first=356 second=230 amount=-1 +kerning first=330 second=279 amount=-1 +kerning first=1039 second=1036 amount=-1 +kerning first=366 second=279 amount=-1 +kerning first=345 second=226 amount=-1 +kerning first=268 second=234 amount=-1 +kerning first=327 second=364 amount=-1 +kerning first=305 second=8250 amount=-1 +kerning first=199 second=243 amount=-1 +kerning first=8218 second=339 amount=-1 +kerning first=196 second=105 amount=-1 +kerning first=1066 second=1059 amount=-2 +kerning first=362 second=75 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=262 second=316 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=205 second=202 amount=-1 +kerning first=226 second=316 amount=-1 +kerning first=118 second=8217 amount=-2 +kerning first=86 second=8250 amount=-1 +kerning first=374 second=117 amount=-1 +kerning first=323 second=264 amount=-1 +kerning first=201 second=362 amount=-1 +kerning first=345 second=8220 amount=-1 +kerning first=364 second=80 amount=-1 +kerning first=338 second=117 amount=-1 +kerning first=270 second=351 amount=-1 +kerning first=234 second=351 amount=-1 +kerning first=1071 second=1025 amount=-1 +kerning first=8222 second=105 amount=-1 +kerning first=278 second=361 amount=-1 +kerning first=88 second=307 amount=-1 +kerning first=233 second=108 amount=-1 +kerning first=74 second=264 amount=-1 +kerning first=280 second=69 amount=-1 +kerning first=1057 second=1073 amount=-1 +kerning first=325 second=8217 amount=-1 +kerning first=268 second=248 amount=-1 +kerning first=193 second=307 amount=-1 +kerning first=330 second=82 amount=-1 +kerning first=284 second=364 amount=-1 +kerning first=352 second=69 amount=-1 +kerning first=197 second=108 amount=-1 +kerning first=223 second=8217 amount=-2 +kerning first=212 second=364 amount=-1 +kerning first=1069 second=1050 amount=-1 +kerning first=338 second=323 amount=-1 +kerning first=366 second=82 amount=-1 +kerning first=302 second=323 amount=-1 +kerning first=266 second=323 amount=-1 +kerning first=201 second=338 amount=-1 +kerning first=71 second=364 amount=-1 +kerning first=262 second=286 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=8250 second=194 amount=-1 +kerning first=298 second=286 amount=-1 +kerning first=1062 second=1117 amount=-1 +kerning first=249 second=113 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=268 second=262 amount=-1 +kerning first=268 second=171 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=370 second=286 amount=-1 +kerning first=199 second=257 amount=-1 +kerning first=74 second=355 amount=-1 +kerning first=1047 second=1067 amount=-1 +kerning first=85 second=286 amount=-1 +kerning first=335 second=316 amount=-1 +kerning first=197 second=314 amount=-1 +kerning first=81 second=82 amount=-1 +kerning first=68 second=72 amount=-1 +kerning first=72 second=113 amount=-1 +kerning first=108 second=113 amount=-1 +kerning first=73 second=8250 amount=-1 +kerning first=1040 second=1069 amount=-1 +kerning first=325 second=317 amount=-1 +kerning first=269 second=314 amount=-1 +kerning first=233 second=314 amount=-1 +kerning first=8222 second=229 amount=-1 +kerning first=323 second=355 amount=-1 +kerning first=287 second=355 amount=-1 +kerning first=230 second=117 amount=-1 +kerning first=209 second=282 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=277 second=267 amount=-1 +kerning first=1048 second=1100 amount=-1 +kerning first=235 second=289 amount=-1 +kerning first=264 second=339 amount=-1 +kerning first=268 second=229 amount=-1 +kerning first=228 second=339 amount=-1 +kerning first=307 second=289 amount=-1 +kerning first=195 second=356 amount=-1 +kerning first=1049 second=1042 amount=-1 +kerning first=271 second=289 amount=-1 +kerning first=304 second=229 amount=-1 +kerning first=269 second=171 amount=-1 +kerning first=1053 second=1049 amount=-1 +kerning first=232 second=101 amount=-1 +kerning first=365 second=246 amount=-1 +kerning first=369 second=103 amount=-1 +kerning first=364 second=304 amount=-1 +kerning first=304 second=101 amount=-1 +kerning first=368 second=194 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=257 second=246 amount=-1 +kerning first=240 second=333 amount=-1 +kerning first=220 second=256 amount=-1 +kerning first=362 second=246 amount=-1 +kerning first=221 second=246 amount=-1 +kerning first=225 second=103 amount=-1 +kerning first=220 second=304 amount=-1 +kerning first=199 second=220 amount=-1 +kerning first=1051 second=1091 amount=-1 +kerning first=116 second=246 amount=-1 +kerning first=204 second=333 amount=-1 +kerning first=275 second=120 amount=-1 +kerning first=69 second=315 amount=-1 +kerning first=202 second=211 amount=-1 +kerning first=72 second=109 amount=-1 +kerning first=45 second=86 amount=-2 +kerning first=79 second=304 amount=-1 +kerning first=81 second=86 amount=-1 +kerning first=325 second=313 amount=-1 +kerning first=347 second=8218 amount=-1 +kerning first=195 second=85 amount=-1 +kerning first=311 second=8218 amount=-1 +kerning first=288 second=202 amount=-1 +kerning first=229 second=281 amount=-1 +kerning first=101 second=382 amount=-1 +kerning first=87 second=339 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=206 second=382 amount=-1 +kerning first=304 second=298 amount=-1 +kerning first=242 second=382 amount=-1 +kerning first=8217 second=332 amount=-1 +kerning first=274 second=211 amount=-1 +kerning first=1056 second=1040 amount=-1 +kerning first=262 second=290 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=314 second=382 amount=-1 +kerning first=8250 second=198 amount=-1 +kerning first=298 second=290 amount=-1 +kerning first=242 second=287 amount=-1 +kerning first=263 second=8250 amount=-1 +kerning first=310 second=211 amount=-1 +kerning first=258 second=86 amount=-1 +kerning first=370 second=290 amount=-1 +kerning first=1046 second=1090 amount=-1 +kerning first=289 second=339 amount=-1 +kerning first=289 second=107 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=253 second=107 amount=-1 +kerning first=246 second=289 amount=-1 +kerning first=325 second=339 amount=-1 +kerning first=83 second=8220 amount=-1 +kerning first=8217 second=362 amount=-1 +kerning first=1052 second=1067 amount=-1 +kerning first=338 second=219 amount=-1 +kerning first=356 second=234 amount=-1 +kerning first=1118 second=1090 amount=-1 +kerning first=252 second=101 amount=-1 +kerning first=219 second=211 amount=-1 +kerning first=68 second=278 amount=-1 +kerning first=266 second=219 amount=-1 +kerning first=217 second=339 amount=-1 +kerning first=8222 second=268 amount=-1 +kerning first=119 second=8220 amount=-2 +kerning first=302 second=219 amount=-1 +kerning first=194 second=219 amount=-1 +kerning first=79 second=330 amount=-1 +kerning first=103 second=232 amount=-1 +kerning first=106 second=8222 amount=-1 +kerning first=220 second=330 amount=-1 +kerning first=67 second=232 amount=-1 +kerning first=279 second=365 amount=-1 +kerning first=271 second=122 amount=-1 +kerning first=1059 second=1057 amount=-1 +kerning first=1042 second=1118 amount=-1 +kerning first=209 second=278 amount=-1 +kerning first=72 second=280 amount=-1 +kerning first=316 second=232 amount=-1 +kerning first=199 second=122 amount=-1 +kerning first=253 second=187 amount=-1 +kerning first=205 second=74 amount=-1 +kerning first=1046 second=1101 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=1046 second=1094 amount=-1 +kerning first=68 second=76 amount=-1 +kerning first=1060 second=1047 amount=-1 +kerning first=323 second=225 amount=-1 +kerning first=66 second=363 amount=-1 +kerning first=187 second=89 amount=-2 +kerning first=1027 second=1094 amount=-1 +kerning first=207 second=298 amount=-1 +kerning first=350 second=85 amount=-1 +kerning first=101 second=246 amount=-1 +kerning first=352 second=8217 amount=-1 +kerning first=370 second=296 amount=-1 +kerning first=8218 second=314 amount=-1 +kerning first=279 second=363 amount=-1 +kerning first=278 second=85 amount=-1 +kerning first=77 second=216 amount=-1 +kerning first=260 second=8220 amount=-2 +kerning first=234 second=46 amount=-1 +kerning first=224 second=8220 amount=-2 +kerning first=206 second=85 amount=-1 +kerning first=332 second=8220 amount=-2 +kerning first=74 second=225 amount=-1 +kerning first=1051 second=1028 amount=-1 +kerning first=65 second=85 amount=-1 +kerning first=205 second=241 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=368 second=8220 amount=-1 +kerning first=368 second=302 amount=-1 +kerning first=355 second=283 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=296 second=302 amount=-1 +kerning first=1060 second=1038 amount=-1 +kerning first=72 second=70 amount=-1 +kerning first=266 second=82 amount=-1 +kerning first=287 second=109 amount=-1 +kerning first=261 second=378 amount=-1 +kerning first=78 second=262 amount=-1 +kerning first=80 second=207 amount=-1 +kerning first=225 second=378 amount=-1 +kerning first=277 second=104 amount=-1 +kerning first=213 second=70 amount=-1 +kerning first=1053 second=1075 amount=-1 +kerning first=352 second=366 amount=-1 +kerning first=346 second=250 amount=-1 +kerning first=310 second=250 amount=-1 +kerning first=280 second=366 amount=-1 +kerning first=274 second=250 amount=-1 +kerning first=219 second=262 amount=-1 +kerning first=333 second=378 amount=-1 +kerning first=8218 second=231 amount=-1 +kerning first=200 second=317 amount=-1 +kerning first=1053 second=1070 amount=-1 +kerning first=86 second=198 amount=-1 +kerning first=324 second=8221 amount=-2 +kerning first=209 second=76 amount=-1 +kerning first=304 second=225 amount=-1 +kerning first=362 second=216 amount=-1 +kerning first=1046 second=1073 amount=-1 +kerning first=84 second=378 amount=-1 +kerning first=67 second=339 amount=-1 +kerning first=45 second=253 amount=-1 +kerning first=272 second=201 amount=-1 +kerning first=218 second=251 amount=-1 +kerning first=1086 second=1084 amount=-1 +kerning first=200 second=201 amount=-1 +kerning first=97 second=113 amount=-1 +kerning first=73 second=116 amount=-1 +kerning first=362 second=251 amount=-1 +kerning first=8220 second=353 amount=-1 +kerning first=80 second=242 amount=-1 +kerning first=199 second=259 amount=-1 +kerning first=201 second=204 amount=-1 +kerning first=255 second=250 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=368 second=198 amount=-1 +kerning first=230 second=99 amount=-1 +kerning first=257 second=242 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=87 second=369 amount=-1 +kerning first=206 second=317 amount=-1 +kerning first=275 second=8218 amount=-1 +kerning first=267 second=8217 amount=-2 +kerning first=278 second=317 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=67 second=366 amount=-1 +kerning first=350 second=317 amount=-1 +kerning first=1060 second=1061 amount=-1 +kerning first=304 second=268 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=365 second=242 amount=-1 +kerning first=1073 second=1113 amount=-1 +kerning first=324 second=171 amount=-1 +kerning first=218 second=207 amount=-1 +kerning first=369 second=244 amount=-1 +kerning first=272 second=69 amount=-1 +kerning first=78 second=327 amount=-1 +kerning first=224 second=233 amount=-1 +kerning first=305 second=279 amount=-1 +kerning first=1105 second=1080 amount=-1 +kerning first=368 second=371 amount=-1 +kerning first=217 second=209 amount=-1 +kerning first=233 second=279 amount=-1 +kerning first=219 second=327 amount=-1 +kerning first=8250 second=302 amount=-1 +kerning first=269 second=279 amount=-1 +kerning first=368 second=233 amount=-1 +kerning first=302 second=288 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=198 second=213 amount=-1 +kerning first=338 second=288 amount=-1 +kerning first=298 second=280 amount=-1 +kerning first=327 second=327 amount=-1 +kerning first=296 second=233 amount=-1 +kerning first=207 second=335 amount=-1 +kerning first=220 second=200 amount=-1 +kerning first=266 second=288 amount=-1 +kerning first=228 second=235 amount=-1 +kerning first=83 second=371 amount=-1 +kerning first=264 second=235 amount=-1 +kerning first=86 second=224 amount=-1 +kerning first=79 second=200 amount=-1 +kerning first=374 second=288 amount=-1 +kerning first=8220 second=219 amount=-1 +kerning first=99 second=8221 amount=-2 +kerning first=334 second=84 amount=-1 +kerning first=264 second=231 amount=-1 +kerning first=1053 second=1077 amount=-1 +kerning first=250 second=283 amount=-1 +kerning first=286 second=218 amount=-1 +kerning first=80 second=380 amount=-1 +kerning first=263 second=224 amount=-1 +kerning first=214 second=218 amount=-1 +kerning first=272 second=270 amount=-1 +kerning first=87 second=231 amount=-1 +kerning first=73 second=283 amount=-1 +kerning first=257 second=380 amount=-1 +kerning first=206 second=248 amount=-1 +kerning first=109 second=283 amount=-1 +kerning first=73 second=218 amount=-1 +kerning first=221 second=380 amount=-1 +kerning first=314 second=248 amount=-1 +kerning first=1031 second=1027 amount=-1 +kerning first=213 second=280 amount=-1 +kerning first=228 second=231 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=268 second=66 amount=-1 +kerning first=282 second=79 amount=-1 +kerning first=368 second=367 amount=-1 +kerning first=84 second=244 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=69 second=79 amount=-1 +kerning first=72 second=218 amount=-1 +kerning first=8217 second=228 amount=-1 +kerning first=200 second=270 amount=-1 +kerning first=225 second=244 amount=-1 +kerning first=261 second=244 amount=-1 +kerning first=220 second=196 amount=-1 +kerning first=1039 second=1062 amount=-1 +kerning first=83 second=367 amount=-1 +kerning first=259 second=99 amount=-1 +kerning first=85 second=80 amount=-1 +kerning first=362 second=114 amount=-1 +kerning first=332 second=8250 amount=-1 +kerning first=362 second=45 amount=-2 +kerning first=241 second=283 amount=-1 +kerning first=198 second=217 amount=-1 +kerning first=210 second=354 amount=-1 +kerning first=119 second=367 amount=-1 +kerning first=290 second=45 amount=-1 +kerning first=217 second=205 amount=-1 +kerning first=298 second=80 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=254 second=114 amount=-1 +kerning first=270 second=217 amount=-1 +kerning first=266 second=284 amount=-1 +kerning first=262 second=80 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=8249 second=364 amount=-1 +kerning first=326 second=114 amount=-1 +kerning first=325 second=205 amount=-1 +kerning first=101 second=252 amount=-1 +kerning first=304 second=66 amount=-1 +kerning first=302 second=284 amount=-1 +kerning first=72 second=232 amount=-1 +kerning first=230 second=353 amount=-1 +kerning first=77 second=114 amount=-1 +kerning first=1027 second=1098 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=1052 second=1072 amount=-1 +kerning first=108 second=243 amount=-1 +kerning first=302 second=353 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=266 second=353 amount=-1 +kerning first=72 second=345 amount=-1 +kerning first=374 second=353 amount=-1 +kerning first=108 second=345 amount=-1 +kerning first=262 second=268 amount=-1 +kerning first=234 second=115 amount=-1 +kerning first=270 second=115 amount=-1 +kerning first=249 second=345 amount=-1 +kerning first=364 second=45 amount=-2 +kerning first=1031 second=1054 amount=-1 +kerning first=108 second=250 amount=-1 +kerning first=45 second=249 amount=-1 +kerning first=200 second=266 amount=-1 +kerning first=73 second=214 amount=-1 +kerning first=1049 second=1077 amount=-1 +kerning first=104 second=243 amount=-1 +kerning first=193 second=71 amount=-1 +kerning first=204 second=368 amount=-1 +kerning first=209 second=243 amount=-1 +kerning first=364 second=200 amount=-1 +kerning first=231 second=226 amount=-1 +kerning first=89 second=353 amount=-1 +kerning first=75 second=336 amount=-1 +kerning first=205 second=310 amount=-1 +kerning first=267 second=226 amount=-1 +kerning first=269 second=275 amount=-1 +kerning first=272 second=197 amount=-1 +kerning first=233 second=275 amount=-1 +kerning first=67 second=318 amount=-1 +kerning first=370 second=80 amount=-1 +kerning first=314 second=252 amount=-1 +kerning first=334 second=80 amount=-1 +kerning first=278 second=252 amount=-1 +kerning first=1030 second=1089 amount=-1 +kerning first=374 second=8220 amount=-1 +kerning first=305 second=275 amount=-1 +kerning first=73 second=270 amount=-1 +kerning first=350 second=252 amount=-1 +kerning first=218 second=45 amount=-2 +kerning first=88 second=71 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=1046 second=1087 amount=-1 +kerning first=258 second=249 amount=-1 +kerning first=113 second=45 amount=-1 +kerning first=1046 second=1086 amount=-1 +kerning first=374 second=275 amount=-1 +kerning first=85 second=71 amount=-1 +kerning first=8217 second=338 amount=-1 +kerning first=233 second=353 amount=-1 +kerning first=317 second=217 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=230 second=275 amount=-1 +kerning first=262 second=71 amount=-1 +kerning first=258 second=214 amount=-1 +kerning first=209 second=79 amount=-1 +kerning first=269 second=353 amount=-1 +kerning first=1071 second=1031 amount=-1 +kerning first=266 second=275 amount=-1 +kerning first=1052 second=1068 amount=-1 +kerning first=217 second=66 amount=-1 +kerning first=302 second=362 amount=-1 +kerning first=266 second=362 amount=-1 +kerning first=1047 second=1045 amount=-1 +kerning first=246 second=122 amount=-1 +kerning first=219 second=223 amount=-1 +kerning first=8217 second=224 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=8217 second=241 amount=-1 +kerning first=1042 second=1062 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=338 second=362 amount=-1 +kerning first=89 second=275 amount=-1 +kerning first=1058 second=1097 amount=-1 +kerning first=244 second=318 amount=-1 +kerning first=218 second=97 amount=-1 +kerning first=327 second=223 amount=-1 +kerning first=316 second=318 amount=-1 +kerning first=291 second=223 amount=-1 +kerning first=211 second=315 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=240 second=234 amount=-1 +kerning first=324 second=232 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=8222 second=354 amount=-1 +kerning first=1038 second=1085 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=194 second=362 amount=-1 +kerning first=217 second=80 amount=-1 +kerning first=264 second=283 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=86 second=371 amount=-1 +kerning first=370 second=71 amount=-1 +kerning first=1077 second=1076 amount=-1 +kerning first=1042 second=1079 amount=-1 +kerning first=298 second=71 amount=-1 +kerning first=283 second=249 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=68 second=217 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=197 second=8250 amount=-1 +kerning first=70 second=249 amount=-1 +kerning first=209 second=217 amount=-1 +kerning first=289 second=98 amount=-1 +kerning first=366 second=361 amount=-1 +kerning first=270 second=206 amount=-1 +kerning first=253 second=98 amount=-1 +kerning first=8250 second=66 amount=-1 +kerning first=205 second=267 amount=-1 +kerning first=258 second=361 amount=-1 +kerning first=241 second=267 amount=-1 +kerning first=201 second=250 amount=-1 +kerning first=1042 second=1051 amount=-1 +kerning first=1047 second=1042 amount=-1 +kerning first=1050 second=1080 amount=-1 +kerning first=69 second=216 amount=-1 +kerning first=199 second=345 amount=-1 +kerning first=100 second=267 amount=-1 +kerning first=235 second=345 amount=-1 +kerning first=8250 second=380 amount=-1 +kerning first=271 second=345 amount=-1 +kerning first=1071 second=1107 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=1064 second=1079 amount=-1 +kerning first=1036 second=1080 amount=-1 +kerning first=275 second=335 amount=-1 +kerning first=72 second=241 amount=-1 +kerning first=1041 second=1063 amount=-1 +kerning first=80 second=302 amount=-1 +kerning first=355 second=97 amount=-1 +kerning first=240 second=114 amount=-1 +kerning first=262 second=171 amount=-1 +kerning first=72 second=207 amount=-1 +kerning first=325 second=378 amount=-1 +kerning first=327 second=323 amount=-1 +kerning first=69 second=250 amount=-1 +kerning first=78 second=310 amount=-1 +kerning first=289 second=378 amount=-1 +kerning first=78 second=370 amount=-1 +kerning first=99 second=114 amount=-1 +kerning first=202 second=336 amount=-1 +kerning first=253 second=378 amount=-1 +kerning first=327 second=370 amount=-1 +kerning first=282 second=250 amount=-1 +kerning first=274 second=336 amount=-1 +kerning first=74 second=199 amount=-1 +kerning first=213 second=207 amount=-1 +kerning first=219 second=378 amount=-1 +kerning first=310 second=336 amount=-1 +kerning first=65 second=46 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=79 second=89 amount=-1 +kerning first=45 second=361 amount=-1 +kerning first=1039 second=1071 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=368 second=337 amount=-1 +kerning first=323 second=199 amount=-1 +kerning first=327 second=310 amount=-1 +kerning first=217 second=378 amount=-1 +kerning first=270 second=72 amount=-1 +kerning first=1044 second=1054 amount=-1 +kerning first=200 second=344 amount=-1 +kerning first=112 second=378 amount=-1 +kerning first=1056 second=1105 amount=-1 +kerning first=219 second=310 amount=-1 +kerning first=198 second=72 amount=-1 +kerning first=258 second=314 amount=-1 +kerning first=45 second=288 amount=-1 +kerning first=207 second=346 amount=-1 +kerning first=307 second=235 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=67 second=331 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=321 second=87 amount=-1 +kerning first=1052 second=1055 amount=-1 +kerning first=258 second=288 amount=-1 +kerning first=362 second=110 amount=-1 +kerning first=368 second=109 amount=-1 +kerning first=79 second=282 amount=-1 +kerning first=1058 second=1095 amount=-1 +kerning first=110 second=119 amount=-1 +kerning first=116 second=101 amount=-1 +kerning first=201 second=278 amount=-1 +kerning first=80 second=101 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=221 second=101 amount=-1 +kerning first=8250 second=220 amount=-1 +kerning first=289 second=291 amount=-1 +kerning first=253 second=291 amount=-1 +kerning first=198 second=325 amount=-1 +kerning first=257 second=101 amount=-1 +kerning first=354 second=337 amount=-1 +kerning first=67 second=245 amount=-1 +kerning first=225 second=279 amount=-1 +kerning first=74 second=212 amount=-1 +kerning first=283 second=281 amount=-1 +kerning first=8217 second=211 amount=-1 +kerning first=261 second=279 amount=-1 +kerning first=1070 second=1061 amount=-1 +kerning first=286 second=8218 amount=-1 +kerning first=1034 second=1061 amount=-1 +kerning first=84 second=99 amount=-1 +kerning first=88 second=303 amount=-1 +kerning first=369 second=279 amount=-1 +kerning first=1066 second=1098 amount=-1 +kerning first=267 second=279 amount=-1 +kerning first=1030 second=1098 amount=-1 +kerning first=105 second=337 amount=-1 +kerning first=264 second=296 amount=-1 +kerning first=193 second=303 amount=-1 +kerning first=1049 second=1064 amount=-1 +kerning first=261 second=99 amount=-1 +kerning first=366 second=288 amount=-1 +kerning first=1055 second=1119 amount=-1 +kerning first=231 second=187 amount=-1 +kerning first=1091 second=1119 amount=-1 +kerning first=316 second=245 amount=-1 +kerning first=1039 second=1118 amount=-1 +kerning first=80 second=75 amount=-1 +kerning first=225 second=99 amount=-1 +kerning first=216 second=8250 amount=-1 +kerning first=330 second=288 amount=-1 +kerning first=339 second=187 amount=-1 +kerning first=214 second=8218 amount=-1 +kerning first=352 second=363 amount=-1 +kerning first=84 second=279 amount=-1 +kerning first=212 second=221 amount=-1 +kerning first=307 second=243 amount=-1 +kerning first=103 second=245 amount=-1 +kerning first=67 second=214 amount=-1 +kerning first=104 second=277 amount=-1 +kerning first=291 second=117 amount=-1 +kerning first=80 second=226 amount=-1 +kerning first=365 second=8220 amount=-1 +kerning first=1071 second=1065 amount=-1 +kerning first=296 second=380 amount=-1 +kerning first=255 second=117 amount=-1 +kerning first=219 second=117 amount=-1 +kerning first=267 second=287 amount=-1 +kerning first=275 second=248 amount=-1 +kerning first=368 second=380 amount=-1 +kerning first=231 second=287 amount=-1 +kerning first=368 second=212 amount=-1 +kerning first=325 second=218 amount=-1 +kerning first=267 second=363 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=298 second=264 amount=-1 +kerning first=1068 second=1030 amount=-1 +kerning first=262 second=264 amount=-1 +kerning first=291 second=171 amount=-1 +kerning first=198 second=278 amount=-1 +kerning first=296 second=66 amount=-1 +kerning first=201 second=364 amount=-1 +kerning first=116 second=8220 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=220 second=209 amount=-1 +kerning first=80 second=8220 amount=-1 +kerning first=85 second=264 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=266 second=202 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=264 second=270 amount=-1 +kerning first=79 second=209 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=338 second=202 amount=-1 +kerning first=327 second=69 amount=-1 +kerning first=257 second=8220 amount=-2 +kerning first=89 second=74 amount=-1 +kerning first=302 second=202 amount=-1 +kerning first=270 second=325 amount=-1 +kerning first=8217 second=269 amount=-1 +kerning first=78 second=69 amount=-1 +kerning first=208 second=8220 amount=-2 +kerning first=362 second=330 amount=-1 +kerning first=201 second=202 amount=-1 +kerning first=219 second=69 amount=-1 +kerning first=1040 second=1091 amount=-1 +kerning first=352 second=203 amount=-1 +kerning first=302 second=74 amount=-1 +kerning first=364 second=330 amount=-1 +kerning first=234 second=252 amount=-1 +kerning first=374 second=74 amount=-1 +kerning first=275 second=252 amount=-1 +kerning first=198 second=252 amount=-1 +kerning first=368 second=66 amount=-1 +kerning first=280 second=313 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=235 second=44 amount=-1 +kerning first=288 second=78 amount=-1 +kerning first=366 second=214 amount=-1 +kerning first=1055 second=1057 amount=-1 +kerning first=330 second=214 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=8217 second=284 amount=-1 +kerning first=269 second=112 amount=-1 +kerning first=204 second=68 amount=-1 +kerning first=204 second=355 amount=-1 +kerning first=1104 second=1103 amount=-1 +kerning first=1043 second=1082 amount=-1 +kerning first=364 second=282 amount=-1 +kerning first=307 second=44 amount=-1 +kerning first=200 second=365 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=103 second=117 amount=-1 +kerning first=200 second=171 amount=-1 +kerning first=70 second=252 amount=-1 +kerning first=368 second=204 amount=-1 +kerning first=103 second=112 amount=-1 +kerning first=316 second=117 amount=-1 +kerning first=116 second=229 amount=-1 +kerning first=1051 second=1108 amount=-1 +kerning first=1049 second=1051 amount=-1 +kerning first=280 second=117 amount=-1 +kerning first=80 second=229 amount=-1 +kerning first=344 second=171 amount=-1 +kerning first=364 second=68 amount=-1 +kerning first=380 second=171 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=362 second=8218 amount=-2 +kerning first=240 second=287 amount=-1 +kerning first=83 second=220 amount=-1 +kerning first=1052 second=1042 amount=-1 +kerning first=352 second=117 amount=-1 +kerning first=195 second=361 amount=-1 +kerning first=227 second=263 amount=-1 +kerning first=197 second=374 amount=-1 +kerning first=1054 second=1039 amount=-1 +kerning first=77 second=298 amount=-1 +kerning first=263 second=263 amount=-1 +kerning first=304 second=246 amount=-1 +kerning first=72 second=100 amount=-1 +kerning first=279 second=251 amount=-1 +kerning first=268 second=246 amount=-1 +kerning first=339 second=382 amount=-1 +kerning first=232 second=246 amount=-1 +kerning first=1054 second=1034 amount=-1 +kerning first=375 second=382 amount=-1 +kerning first=283 second=103 amount=-1 +kerning first=325 second=77 amount=-1 +kerning first=296 second=220 amount=-1 +kerning first=1047 second=1062 amount=-1 +kerning first=368 second=220 amount=-1 +kerning first=212 second=206 amount=-1 +kerning first=325 second=304 amount=-1 +kerning first=107 second=316 amount=-1 +kerning first=209 second=330 amount=-1 +kerning first=8217 second=198 amount=-2 +kerning first=106 second=103 amount=-1 +kerning first=248 second=316 amount=-1 +kerning first=279 second=333 amount=-1 +kerning first=193 second=118 amount=-1 +kerning first=79 second=68 amount=-1 +kerning first=365 second=281 amount=-1 +kerning first=8250 second=207 amount=-1 +kerning first=207 second=333 amount=-1 +kerning first=328 second=248 amount=-1 +kerning first=325 second=8222 amount=-1 +kerning first=217 second=304 amount=-1 +kerning first=1051 second=1048 amount=-1 +kerning first=289 second=8222 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=253 second=8222 amount=-1 +kerning first=334 second=221 amount=-1 +kerning first=8217 second=83 amount=-1 +kerning first=231 second=382 amount=-1 +kerning first=1050 second=1060 amount=-1 +kerning first=1044 second=1087 amount=-1 +kerning first=267 second=382 amount=-1 +kerning first=262 second=310 amount=-1 +kerning first=365 second=289 amount=-1 +kerning first=286 second=313 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=187 second=221 amount=-2 +kerning first=67 second=210 amount=-1 +kerning first=206 second=339 amount=-1 +kerning first=213 second=315 amount=-1 +kerning first=354 second=242 amount=-1 +kerning first=72 second=233 amount=-1 +kerning first=104 second=111 amount=-1 +kerning first=108 second=233 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=209 second=111 amount=-1 +kerning first=305 second=245 amount=-1 +kerning first=206 second=205 amount=-1 +kerning first=214 second=313 amount=-1 +kerning first=269 second=245 amount=-1 +kerning first=249 second=233 amount=-1 +kerning first=1048 second=1057 amount=-1 +kerning first=101 second=120 amount=-1 +kerning first=364 second=230 amount=-1 +kerning first=68 second=330 amount=-1 +kerning first=313 second=219 amount=-1 +kerning first=314 second=339 amount=-1 +kerning first=72 second=315 amount=-1 +kerning first=296 second=280 amount=-1 +kerning first=1036 second=1101 amount=-1 +kerning first=368 second=280 amount=-1 +kerning first=80 second=317 amount=-1 +kerning first=1044 second=1101 amount=-1 +kerning first=262 second=212 amount=-1 +kerning first=218 second=298 amount=-1 +kerning first=110 second=8217 amount=-2 +kerning first=298 second=212 amount=-1 +kerning first=220 second=76 amount=-1 +kerning first=290 second=298 amount=-1 +kerning first=79 second=76 amount=-1 +kerning first=323 second=231 amount=-1 +kerning first=370 second=212 amount=-1 +kerning first=251 second=8217 amount=-1 +kerning first=85 second=212 amount=-1 +kerning first=362 second=298 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=1055 second=1113 amount=-1 +kerning first=8222 second=367 amount=-1 +kerning first=345 second=46 amount=-1 +kerning first=281 second=111 amount=-1 +kerning first=217 second=218 amount=-1 +kerning first=325 second=85 amount=-1 +kerning first=194 second=254 amount=-1 +kerning first=116 second=289 amount=-1 +kerning first=230 second=254 amount=-1 +kerning first=266 second=254 amount=-1 +kerning first=217 second=85 amount=-1 +kerning first=287 second=8217 amount=-2 +kerning first=323 second=8217 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=257 second=289 amount=-1 +kerning first=80 second=216 amount=-1 +kerning first=89 second=262 amount=-1 +kerning first=267 second=46 amount=-1 +kerning first=375 second=46 amount=-1 +kerning first=339 second=46 amount=-1 +kerning first=302 second=262 amount=-1 +kerning first=187 second=67 amount=-1 +kerning first=224 second=8250 amount=-1 +kerning first=266 second=262 amount=-1 +kerning first=70 second=116 amount=-1 +kerning first=221 second=216 amount=-1 +kerning first=374 second=262 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=1104 second=1095 amount=-1 +kerning first=338 second=262 amount=-1 +kerning first=197 second=366 amount=-1 +kerning first=83 second=345 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=272 second=304 amount=-1 +kerning first=274 second=70 amount=-1 +kerning first=204 second=110 amount=-1 +kerning first=355 second=353 amount=-1 +kerning first=214 second=192 amount=-1 +kerning first=8217 second=380 amount=-1 +kerning first=235 second=250 amount=-1 +kerning first=346 second=70 amount=-1 +kerning first=224 second=345 amount=-1 +kerning first=8250 second=75 amount=-1 +kerning first=67 second=104 amount=-1 +kerning first=362 second=225 amount=-1 +kerning first=364 second=76 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=1039 second=1084 amount=-1 +kerning first=231 second=46 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=202 second=70 amount=-1 +kerning first=350 second=274 amount=-1 +kerning first=368 second=345 amount=-1 +kerning first=302 second=224 amount=-1 +kerning first=206 second=366 amount=-1 +kerning first=366 second=206 amount=-1 +kerning first=217 second=44 amount=-2 +kerning first=193 second=368 amount=-1 +kerning first=8220 second=362 amount=-1 +kerning first=68 second=317 amount=-1 +kerning first=296 second=207 amount=-1 +kerning first=1031 second=1105 amount=-1 +kerning first=86 second=271 amount=-1 +kerning first=194 second=375 amount=-1 +kerning first=330 second=206 amount=-1 +kerning first=88 second=8221 amount=-1 +kerning first=368 second=207 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=209 second=317 amount=-1 +kerning first=97 second=122 amount=-1 +kerning first=193 second=8221 amount=-2 +kerning first=211 second=201 amount=-1 +kerning first=263 second=271 amount=-1 +kerning first=229 second=8221 amount=-2 +kerning first=88 second=368 amount=-1 +kerning first=70 second=201 amount=-1 +kerning first=1054 second=1047 amount=-1 +kerning first=1108 second=1093 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=228 second=378 amount=-1 +kerning first=283 second=116 amount=-1 +kerning first=100 second=113 amount=-1 +kerning first=337 second=8221 amount=-2 +kerning first=1056 second=1031 amount=-1 +kerning first=304 second=122 amount=-1 +kerning first=87 second=378 amount=-1 +kerning first=214 second=270 amount=-1 +kerning first=85 second=204 amount=-1 +kerning first=78 second=267 amount=-1 +kerning first=88 second=219 amount=-1 +kerning first=370 second=204 amount=-1 +kerning first=304 second=259 amount=-1 +kerning first=1067 second=1105 amount=-1 +kerning first=334 second=204 amount=-1 +kerning first=268 second=259 amount=-1 +kerning first=298 second=204 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=264 second=378 amount=-1 +kerning first=262 second=204 amount=-1 +kerning first=214 second=86 amount=-1 +kerning first=80 second=281 amount=-1 +kerning first=193 second=268 amount=-1 +kerning first=8250 second=280 amount=-1 +kerning first=1055 second=1091 amount=-1 +kerning first=221 second=281 amount=-1 +kerning first=257 second=281 amount=-1 +kerning first=206 second=347 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=275 second=235 amount=-1 +kerning first=218 second=290 amount=-1 +kerning first=101 second=347 amount=-1 +kerning first=370 second=277 amount=-1 +kerning first=1051 second=1056 amount=-1 +kerning first=366 second=73 amount=-1 +kerning first=330 second=73 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=351 second=8220 amount=-2 +kerning first=333 second=8218 amount=-1 +kerning first=8217 second=271 amount=-1 +kerning first=375 second=369 amount=-1 +kerning first=204 second=282 amount=-1 +kerning first=352 second=8249 amount=-1 +kerning first=327 second=82 amount=-1 +kerning first=8250 second=328 amount=-1 +kerning first=275 second=108 amount=-1 +kerning first=218 second=363 amount=-1 +kerning first=85 second=277 amount=-1 +kerning first=249 second=235 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=1027 second=1072 amount=-1 +kerning first=298 second=277 amount=-1 +kerning first=99 second=246 amount=-1 +kerning first=362 second=363 amount=-1 +kerning first=262 second=277 amount=-1 +kerning first=77 second=290 amount=-1 +kerning first=226 second=277 amount=-1 +kerning first=81 second=73 amount=-1 +kerning first=353 second=103 amount=-1 +kerning first=1068 second=1041 amount=-1 +kerning first=67 second=8249 amount=-1 +kerning first=78 second=73 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=199 second=79 amount=-1 +kerning first=78 second=82 amount=-1 +kerning first=219 second=82 amount=-1 +kerning first=289 second=231 amount=-1 +kerning first=325 second=231 amount=-1 +kerning first=275 second=283 amount=-1 +kerning first=209 second=338 amount=-1 +kerning first=280 second=8249 amount=-1 +kerning first=316 second=8249 amount=-1 +kerning first=1048 second=1065 amount=-1 +kerning first=217 second=196 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=73 second=235 amount=-1 +kerning first=69 second=345 amount=-1 +kerning first=109 second=235 amount=-1 +kerning first=105 second=345 amount=-1 +kerning first=87 second=248 amount=-1 +kerning first=289 second=283 amount=-1 +kerning first=246 second=345 amount=-1 +kerning first=325 second=283 amount=-1 +kerning first=282 second=345 amount=-1 +kerning first=217 second=283 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=1030 second=1076 amount=-1 +kerning first=72 second=79 amount=-1 +kerning first=8216 second=370 amount=-1 +kerning first=1033 second=1067 amount=-1 +kerning first=221 second=367 amount=-1 +kerning first=1069 second=1067 amount=-1 +kerning first=235 second=380 amount=-1 +kerning first=286 second=205 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=220 second=274 amount=-1 +kerning first=272 second=192 amount=-1 +kerning first=79 second=274 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=72 second=336 amount=-1 +kerning first=1047 second=1080 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=288 second=70 amount=-1 +kerning first=332 second=44 amount=-1 +kerning first=73 second=205 amount=-1 +kerning first=368 second=44 amount=-2 +kerning first=260 second=44 amount=-1 +kerning first=214 second=205 amount=-1 +kerning first=70 second=244 amount=-1 +kerning first=106 second=244 amount=-1 +kerning first=1048 second=1052 amount=-1 +kerning first=268 second=83 amount=-1 +kerning first=364 second=274 amount=-1 +kerning first=280 second=323 amount=-1 +kerning first=70 second=314 amount=-1 +kerning first=1055 second=1054 amount=-1 +kerning first=283 second=244 amount=-1 +kerning first=264 second=218 amount=-1 +kerning first=355 second=244 amount=-1 +kerning first=192 second=218 amount=-1 +kerning first=228 second=248 amount=-1 +kerning first=206 second=231 amount=-1 +kerning first=288 second=327 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=187 second=290 amount=-1 +kerning first=264 second=248 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=364 second=217 amount=-1 +kerning first=1039 second=1049 amount=-1 +kerning first=219 second=275 amount=-1 +kerning first=1046 second=1081 amount=-1 +kerning first=356 second=243 amount=-1 +kerning first=327 second=275 amount=-1 +kerning first=207 second=110 amount=-1 +kerning first=352 second=223 amount=-1 +kerning first=283 second=314 amount=-1 +kerning first=291 second=275 amount=-1 +kerning first=117 second=8220 amount=-1 +kerning first=1036 second=1088 amount=-1 +kerning first=70 second=214 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=1038 second=1107 amount=-1 +kerning first=78 second=275 amount=-1 +kerning first=200 second=249 amount=-1 +kerning first=8222 second=259 amount=-1 +kerning first=1069 second=1031 amount=-1 +kerning first=330 second=298 amount=-1 +kerning first=1118 second=1081 amount=-1 +kerning first=103 second=223 amount=-1 +kerning first=1105 second=1097 amount=-1 +kerning first=71 second=80 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=67 second=223 amount=-1 +kerning first=268 second=45 amount=-1 +kerning first=194 second=370 amount=-1 +kerning first=284 second=80 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=280 second=223 amount=-1 +kerning first=67 second=353 amount=-1 +kerning first=212 second=80 amount=-1 +kerning first=1028 second=1091 amount=-1 +kerning first=105 second=101 amount=-1 +kerning first=69 second=200 amount=-1 +kerning first=277 second=232 amount=-1 +kerning first=366 second=266 amount=-1 +kerning first=270 second=200 amount=-1 +kerning first=330 second=266 amount=-1 +kerning first=205 second=232 amount=-1 +kerning first=1049 second=1072 amount=-1 +kerning first=205 second=362 amount=-1 +kerning first=198 second=200 amount=-1 +kerning first=325 second=226 amount=-1 +kerning first=217 second=296 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=354 second=101 amount=-1 +kerning first=277 second=8250 amount=-1 +kerning first=219 second=122 amount=-1 +kerning first=258 second=266 amount=-1 +kerning first=313 second=362 amount=-1 +kerning first=310 second=371 amount=-1 +kerning first=74 second=234 amount=-1 +kerning first=45 second=266 amount=-1 +kerning first=79 second=217 amount=-1 +kerning first=274 second=371 amount=-1 +kerning first=89 second=251 amount=-1 +kerning first=100 second=8250 amount=-1 +kerning first=207 second=209 amount=-1 +kerning first=315 second=354 amount=-1 +kerning first=110 second=234 amount=-1 +kerning first=8217 second=219 amount=-1 +kerning first=220 second=217 amount=-1 +kerning first=100 second=232 amount=-1 +kerning first=251 second=234 amount=-1 +kerning first=1044 second=1089 amount=-1 +kerning first=203 second=264 amount=-1 +kerning first=363 second=275 amount=-1 +kerning first=210 second=88 amount=-1 +kerning first=70 second=274 amount=-1 +kerning first=323 second=71 amount=-1 +kerning first=323 second=234 amount=-1 +kerning first=287 second=234 amount=-1 +kerning first=1069 second=1065 amount=-1 +kerning first=1047 second=1037 amount=-1 +kerning first=262 second=380 amount=-1 +kerning first=207 second=203 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=282 second=8220 amount=-1 +kerning first=203 second=313 amount=-1 +kerning first=289 second=324 amount=-1 +kerning first=368 second=315 amount=-1 +kerning first=220 second=111 amount=-1 +kerning first=1042 second=1070 amount=-1 +kerning first=84 second=8218 amount=-1 +kerning first=354 second=8220 amount=-1 +kerning first=328 second=287 amount=-1 +kerning first=1033 second=1024 amount=-1 +kerning first=211 second=374 amount=-1 +kerning first=328 second=111 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=1047 second=1034 amount=-1 +kerning first=8218 second=248 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=289 second=120 amount=-1 +kerning first=1064 second=1054 amount=-1 +kerning first=374 second=267 amount=-1 +kerning first=1050 second=1028 amount=-1 +kerning first=288 second=278 amount=-1 +kerning first=323 second=114 amount=-1 +kerning first=296 second=315 amount=-1 +kerning first=196 second=118 amount=-1 +kerning first=230 second=267 amount=-1 +kerning first=204 second=212 amount=-1 +kerning first=105 second=8220 amount=-1 +kerning first=266 second=267 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=69 second=8220 amount=-1 +kerning first=302 second=267 amount=-1 +kerning first=338 second=370 amount=-1 +kerning first=1105 second=1076 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=85 second=199 amount=-1 +kerning first=206 second=68 amount=-1 +kerning first=266 second=370 amount=-1 +kerning first=8217 second=113 amount=-1 +kerning first=251 second=114 amount=-1 +kerning first=78 second=74 amount=-1 +kerning first=302 second=370 amount=-1 +kerning first=72 second=263 amount=-1 +kerning first=330 second=242 amount=-1 +kerning first=108 second=263 amount=-1 +kerning first=219 second=74 amount=-1 +kerning first=262 second=199 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=74 second=114 amount=-1 +kerning first=284 second=85 amount=-1 +kerning first=220 second=81 amount=-1 +kerning first=249 second=263 amount=-1 +kerning first=352 second=310 amount=-1 +kerning first=327 second=74 amount=-1 +kerning first=370 second=199 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=99 second=106 amount=-1 +kerning first=280 second=310 amount=-1 +kerning first=364 second=81 amount=-1 +kerning first=85 second=269 amount=-1 +kerning first=278 second=68 amount=-1 +kerning first=298 second=269 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=350 second=68 amount=-1 +kerning first=226 second=269 amount=-1 +kerning first=8222 second=79 amount=-1 +kerning first=1107 second=1116 amount=-1 +kerning first=67 second=310 amount=-1 +kerning first=209 second=315 amount=-1 +kerning first=206 second=334 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=368 second=101 amount=-1 +kerning first=1050 second=1101 amount=-1 +kerning first=1051 second=1043 amount=-1 +kerning first=304 second=100 amount=-1 +kerning first=1041 second=1055 amount=-1 +kerning first=68 second=325 amount=-1 +kerning first=193 second=84 amount=-1 +kerning first=203 second=278 amount=-1 +kerning first=255 second=318 amount=-1 +kerning first=8220 second=370 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=304 second=346 amount=-1 +kerning first=268 second=346 amount=-1 +kerning first=1069 second=1051 amount=-1 +kerning first=209 second=325 amount=-1 +kerning first=207 second=114 amount=-1 +kerning first=283 second=108 amount=-1 +kerning first=219 second=245 amount=-1 +kerning first=235 second=337 amount=-1 +kerning first=364 second=187 amount=-2 +kerning first=199 second=337 amount=-1 +kerning first=228 second=291 amount=-1 +kerning first=256 second=187 amount=-1 +kerning first=333 second=122 amount=-1 +kerning first=78 second=245 amount=-1 +kerning first=1027 second=1085 amount=-1 +kerning first=8250 second=315 amount=-1 +kerning first=281 second=351 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=345 second=8217 amount=-1 +kerning first=232 second=251 amount=-1 +kerning first=381 second=8217 amount=-1 +kerning first=73 second=99 amount=-1 +kerning first=304 second=75 amount=-1 +kerning first=217 second=274 amount=-1 +kerning first=109 second=99 amount=-1 +kerning first=268 second=75 amount=-1 +kerning first=363 second=245 amount=-1 +kerning first=250 second=99 amount=-1 +kerning first=327 second=245 amount=-1 +kerning first=220 second=187 amount=-2 +kerning first=1044 second=1119 amount=-1 +kerning first=291 second=245 amount=-1 +kerning first=79 second=187 amount=-1 +kerning first=307 second=337 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=1064 second=1027 amount=-1 +kerning first=115 second=187 amount=-1 +kerning first=271 second=337 amount=-1 +kerning first=197 second=375 amount=-1 +kerning first=339 second=347 amount=-1 +kerning first=271 second=242 amount=-1 +kerning first=277 second=122 amount=-1 +kerning first=234 second=106 amount=-1 +kerning first=70 second=330 amount=-1 +kerning first=375 second=347 amount=-1 +kerning first=1054 second=1069 amount=-1 +kerning first=307 second=242 amount=-1 +kerning first=232 second=281 amount=-1 +kerning first=77 second=268 amount=-1 +kerning first=1070 second=1069 amount=-1 +kerning first=268 second=281 amount=-1 +kerning first=235 second=242 amount=-1 +kerning first=304 second=281 amount=-1 +kerning first=85 second=362 amount=-1 +kerning first=231 second=347 amount=-1 +kerning first=218 second=268 amount=-1 +kerning first=79 second=325 amount=-1 +kerning first=85 second=364 amount=-1 +kerning first=97 second=233 amount=-1 +kerning first=323 second=277 amount=-1 +kerning first=287 second=277 amount=-1 +kerning first=327 second=202 amount=-1 +kerning first=70 second=73 amount=-1 +kerning first=211 second=73 amount=-1 +kerning first=78 second=202 amount=-1 +kerning first=219 second=202 amount=-1 +kerning first=201 second=264 amount=-1 +kerning first=1071 second=1073 amount=-1 +kerning first=262 second=8217 amount=-1 +kerning first=105 second=267 amount=-1 +kerning first=302 second=69 amount=-1 +kerning first=370 second=364 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=266 second=69 amount=-1 +kerning first=1070 second=1083 amount=-1 +kerning first=334 second=8217 amount=-2 +kerning first=334 second=364 amount=-1 +kerning first=280 second=82 amount=-1 +kerning first=298 second=364 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=356 second=351 amount=-1 +kerning first=338 second=69 amount=-1 +kerning first=85 second=8217 amount=-1 +kerning first=262 second=364 amount=-1 +kerning first=121 second=8217 amount=-2 +kerning first=352 second=82 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=374 second=338 amount=-1 +kerning first=110 second=277 amount=-1 +kerning first=1065 second=1091 amount=-1 +kerning first=226 second=8217 amount=-2 +kerning first=355 second=103 amount=-1 +kerning first=198 second=338 amount=-1 +kerning first=234 second=273 amount=-1 +kerning first=193 second=355 amount=-1 +kerning first=70 second=266 amount=-1 +kerning first=1051 second=1113 amount=-1 +kerning first=251 second=277 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=88 second=355 amount=-1 +kerning first=366 second=193 amount=-1 +kerning first=350 second=223 amount=-1 +kerning first=217 second=334 amount=-1 +kerning first=1042 second=1059 amount=-2 +kerning first=212 second=351 amount=-1 +kerning first=77 second=333 amount=-1 +kerning first=290 second=203 amount=-1 +kerning first=355 second=171 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=291 second=112 amount=-1 +kerning first=1093 second=1095 amount=-1 +kerning first=362 second=203 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=77 second=203 amount=-1 +kerning first=218 second=333 amount=-1 +kerning first=218 second=203 amount=-1 +kerning first=97 second=263 amount=-1 +kerning first=72 second=220 amount=-1 +kerning first=269 second=117 amount=-1 +kerning first=8222 second=216 amount=-1 +kerning first=70 second=171 amount=-2 +kerning first=233 second=117 amount=-1 +kerning first=81 second=374 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=8222 second=251 amount=-1 +kerning first=70 second=206 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=344 second=264 amount=-1 +kerning first=323 second=212 amount=-1 +kerning first=354 second=229 amount=-1 +kerning first=321 second=220 amount=-1 +kerning first=8250 second=87 amount=-2 +kerning first=278 second=304 amount=-1 +kerning first=77 second=368 amount=-1 +kerning first=220 second=382 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=350 second=304 amount=-1 +kerning first=192 second=356 amount=-1 +kerning first=279 second=246 amount=-1 +kerning first=211 second=206 amount=-1 +kerning first=1056 second=1118 amount=-1 +kerning first=366 second=103 amount=-1 +kerning first=223 second=316 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=230 second=244 amount=-1 +kerning first=207 second=246 amount=-1 +kerning first=364 second=382 amount=-1 +kerning first=217 second=120 amount=-1 +kerning first=77 second=8221 amount=-1 +kerning first=213 second=220 amount=-1 +kerning first=259 second=316 amount=-1 +kerning first=253 second=120 amount=-1 +kerning first=113 second=8221 amount=-2 +kerning first=80 second=194 amount=-1 +kerning first=323 second=273 amount=-1 +kerning first=362 second=368 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=199 second=109 amount=-1 +kerning first=218 second=8221 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=1060 second=1051 amount=-1 +kerning first=378 second=8220 amount=-1 +kerning first=326 second=333 amount=-1 +kerning first=254 second=8221 amount=-2 +kerning first=221 second=194 amount=-1 +kerning first=362 second=333 amount=-1 +kerning first=290 second=8221 amount=-1 +kerning first=218 second=368 amount=-1 +kerning first=326 second=8221 amount=-2 +kerning first=270 second=330 amount=-1 +kerning first=362 second=8221 amount=-1 +kerning first=1064 second=1092 amount=-1 +kerning first=290 second=368 amount=-1 +kerning first=1050 second=1088 amount=-1 +kerning first=214 second=197 amount=-1 +kerning first=192 second=85 amount=-1 +kerning first=269 second=223 amount=-1 +kerning first=327 second=210 amount=-1 +kerning first=101 second=98 amount=-1 +kerning first=65 second=98 amount=-1 +kerning first=367 second=243 amount=-1 +kerning first=197 second=223 amount=-1 +kerning first=85 second=234 amount=-1 +kerning first=219 second=210 amount=-1 +kerning first=1050 second=1108 amount=-1 +kerning first=78 second=210 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=289 second=326 amount=-1 +kerning first=282 second=302 amount=-1 +kerning first=72 second=122 amount=-1 +kerning first=250 second=335 amount=-1 +kerning first=1027 second=1077 amount=-1 +kerning first=80 second=87 amount=-1 +kerning first=108 second=122 amount=-1 +kerning first=210 second=302 amount=-1 +kerning first=264 second=213 amount=-1 +kerning first=69 second=302 amount=-1 +kerning first=259 second=243 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=1071 second=1079 amount=-1 +kerning first=267 second=339 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=288 second=219 amount=-1 +kerning first=231 second=339 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=1033 second=1059 amount=-2 +kerning first=269 second=8249 amount=-1 +kerning first=368 second=350 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=8218 second=218 amount=-1 +kerning first=75 second=219 amount=-1 +kerning first=305 second=8249 amount=-1 +kerning first=251 second=235 amount=-1 +kerning first=205 second=78 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=1069 second=1059 amount=-1 +kerning first=73 second=335 amount=-1 +kerning first=302 second=232 amount=-1 +kerning first=266 second=232 amount=-1 +kerning first=230 second=232 amount=-1 +kerning first=109 second=335 amount=-1 +kerning first=296 second=350 amount=-1 +kerning first=317 second=89 amount=-1 +kerning first=262 second=234 amount=-1 +kerning first=8250 second=79 amount=-1 +kerning first=252 second=281 amount=-1 +kerning first=69 second=262 amount=-1 +kerning first=263 second=241 amount=-1 +kerning first=226 second=234 amount=-1 +kerning first=291 second=116 amount=-1 +kerning first=70 second=344 amount=-1 +kerning first=1071 second=1081 amount=-1 +kerning first=196 second=354 amount=-1 +kerning first=278 second=8222 amount=-1 +kerning first=298 second=234 amount=-1 +kerning first=232 second=289 amount=-1 +kerning first=117 second=171 amount=-1 +kerning first=1030 second=1068 amount=-1 +kerning first=370 second=234 amount=-1 +kerning first=1067 second=1075 amount=-1 +kerning first=68 second=89 amount=-1 +kerning first=264 second=85 amount=-1 +kerning first=1031 second=1075 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=1066 second=1068 amount=-1 +kerning first=296 second=79 amount=-1 +kerning first=258 second=366 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=115 second=46 amount=-1 +kerning first=1062 second=1108 amount=-1 +kerning first=304 second=216 amount=-1 +kerning first=323 second=204 amount=-1 +kerning first=368 second=79 amount=-1 +kerning first=268 second=216 amount=-1 +kerning first=368 second=250 amount=-1 +kerning first=81 second=366 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=86 second=241 amount=-1 +kerning first=98 second=378 amount=-1 +kerning first=1056 second=1053 amount=-1 +kerning first=350 second=8222 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=1046 second=1038 amount=-1 +kerning first=266 second=332 amount=-1 +kerning first=1064 second=1084 amount=-1 +kerning first=198 second=67 amount=-1 +kerning first=83 second=250 amount=-1 +kerning first=291 second=104 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=369 second=99 amount=-1 +kerning first=362 second=195 amount=-1 +kerning first=255 second=104 amount=-1 +kerning first=374 second=332 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=330 second=366 amount=-1 +kerning first=338 second=332 amount=-1 +kerning first=366 second=366 amount=-1 +kerning first=302 second=332 amount=-1 +kerning first=1078 second=1105 amount=-1 +kerning first=220 second=317 amount=-1 +kerning first=366 second=201 amount=-1 +kerning first=291 second=110 amount=-1 +kerning first=221 second=259 amount=-1 +kerning first=344 second=116 amount=-1 +kerning first=65 second=369 amount=-1 +kerning first=330 second=201 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=314 second=369 amount=-1 +kerning first=364 second=317 amount=-1 +kerning first=99 second=316 amount=-1 +kerning first=282 second=355 amount=-1 +kerning first=1049 second=1062 amount=-1 +kerning first=74 second=204 amount=-1 +kerning first=8218 second=356 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=252 second=113 amount=-1 +kerning first=275 second=378 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=242 second=8222 amount=-1 +kerning first=81 second=201 amount=-1 +kerning first=1039 second=1041 amount=-1 +kerning first=362 second=268 amount=-1 +kerning first=1056 second=1061 amount=-1 +kerning first=116 second=259 amount=-1 +kerning first=101 second=8222 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=80 second=259 amount=-1 +kerning first=1059 second=1044 amount=-1 +kerning first=78 second=331 amount=-1 +kerning first=200 second=116 amount=-1 +kerning first=205 second=262 amount=-1 +kerning first=1062 second=1095 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=99 second=311 amount=-1 +kerning first=233 second=116 amount=-1 +kerning first=205 second=271 amount=-1 +kerning first=73 second=313 amount=-1 +kerning first=197 second=116 amount=-1 +kerning first=89 second=198 amount=-1 +kerning first=334 second=8221 amount=-2 +kerning first=83 second=363 amount=-1 +kerning first=362 second=67 amount=-1 +kerning first=119 second=363 amount=-1 +kerning first=187 second=110 amount=-1 +kerning first=282 second=270 amount=-1 +kerning first=66 second=195 amount=-1 +kerning first=1033 second=1039 amount=-1 +kerning first=370 second=268 amount=-1 +kerning first=77 second=207 amount=-1 +kerning first=339 second=378 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=354 second=113 amount=-1 +kerning first=218 second=67 amount=-1 +kerning first=346 second=366 amount=-1 +kerning first=205 second=210 amount=-1 +kerning first=298 second=268 amount=-1 +kerning first=274 second=366 amount=-1 +kerning first=310 second=366 amount=-1 +kerning first=1030 second=1081 amount=-1 +kerning first=8222 second=97 amount=-1 +kerning first=202 second=366 amount=-1 +kerning first=77 second=67 amount=-1 +kerning first=8250 second=249 amount=-1 +kerning first=370 second=115 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=374 second=8250 amount=-1 +kerning first=1086 second=1093 amount=-1 +kerning first=288 second=302 amount=-1 +kerning first=338 second=8250 amount=-1 +kerning first=75 second=8220 amount=-1 +kerning first=199 second=101 amount=-1 +kerning first=281 second=107 amount=-1 +kerning first=327 second=73 amount=-1 +kerning first=266 second=8250 amount=-1 +kerning first=271 second=101 amount=-1 +kerning first=230 second=8250 amount=-1 +kerning first=111 second=8220 amount=-2 +kerning first=235 second=101 amount=-1 +kerning first=194 second=8250 amount=-1 +kerning first=252 second=8220 amount=-1 +kerning first=78 second=8218 amount=-1 +kerning first=211 second=219 amount=-1 +kerning first=216 second=8220 amount=-2 +kerning first=287 second=351 amount=-1 +kerning first=307 second=101 amount=-1 +kerning first=89 second=8250 amount=-1 +kerning first=268 second=277 amount=-1 +kerning first=232 second=277 amount=-1 +kerning first=70 second=219 amount=-1 +kerning first=111 second=122 amount=-1 +kerning first=1056 second=1089 amount=-1 +kerning first=220 second=334 amount=-1 +kerning first=374 second=198 amount=-1 +kerning first=89 second=345 amount=-1 +kerning first=350 second=296 amount=-1 +kerning first=219 second=73 amount=-1 +kerning first=1038 second=1102 amount=-1 +kerning first=194 second=345 amount=-1 +kerning first=278 second=296 amount=-1 +kerning first=225 second=235 amount=-1 +kerning first=261 second=235 amount=-1 +kerning first=233 second=283 amount=-1 +kerning first=269 second=283 amount=-1 +kerning first=369 second=235 amount=-1 +kerning first=1041 second=1047 amount=-1 +kerning first=339 second=231 amount=-1 +kerning first=204 second=338 amount=-1 +kerning first=364 second=286 amount=-1 +kerning first=8217 second=328 amount=-1 +kerning first=8250 second=256 amount=-1 +kerning first=310 second=79 amount=-1 +kerning first=324 second=8220 amount=-2 +kerning first=231 second=351 amount=-1 +kerning first=288 second=8220 amount=-1 +kerning first=220 second=286 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=1064 second=1076 amount=-1 +kerning first=192 second=86 amount=-1 +kerning first=68 second=274 amount=-1 +kerning first=375 second=351 amount=-1 +kerning first=205 second=83 amount=-1 +kerning first=202 second=79 amount=-1 +kerning first=339 second=351 amount=-1 +kerning first=1062 second=1074 amount=-1 +kerning first=274 second=79 amount=-1 +kerning first=257 second=8250 amount=-1 +kerning first=267 second=351 amount=-1 +kerning first=1043 second=1051 amount=-1 +kerning first=1049 second=1041 amount=-1 +kerning first=258 second=104 amount=-1 +kerning first=212 second=8220 amount=-2 +kerning first=374 second=171 amount=-2 +kerning first=334 second=362 amount=-1 +kerning first=71 second=278 amount=-1 +kerning first=268 second=70 amount=-1 +kerning first=8250 second=323 amount=-1 +kerning first=70 second=192 amount=-1 +kerning first=231 second=244 amount=-1 +kerning first=8216 second=115 amount=-1 +kerning first=267 second=244 amount=-1 +kerning first=284 second=278 amount=-1 +kerning first=209 second=274 amount=-1 +kerning first=207 second=280 amount=-1 +kerning first=339 second=244 amount=-1 +kerning first=1034 second=1065 amount=-1 +kerning first=8250 second=216 amount=-1 +kerning first=108 second=382 amount=-1 +kerning first=1070 second=1065 amount=-1 +kerning first=1057 second=1094 amount=-1 +kerning first=231 second=231 amount=-1 +kerning first=325 second=201 amount=-1 +kerning first=267 second=231 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=219 second=100 amount=-1 +kerning first=304 second=70 amount=-1 +kerning first=327 second=100 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=266 second=171 amount=-1 +kerning first=206 second=269 amount=-1 +kerning first=338 second=171 amount=-1 +kerning first=217 second=201 amount=-1 +kerning first=101 second=269 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=314 second=269 amount=-1 +kerning first=70 second=65 amount=-1 +kerning first=1053 second=1071 amount=-1 +kerning first=264 second=266 amount=-1 +kerning first=280 second=214 amount=-1 +kerning first=8250 second=363 amount=-1 +kerning first=1064 second=1048 amount=-1 +kerning first=8222 second=250 amount=-1 +kerning first=194 second=318 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=1107 second=1090 amount=-1 +kerning first=70 second=353 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=266 second=318 amount=-1 +kerning first=220 second=313 amount=-1 +kerning first=316 second=171 amount=-1 +kerning first=264 second=200 amount=-1 +kerning first=324 second=275 amount=-1 +kerning first=210 second=200 amount=-1 +kerning first=218 second=260 amount=-1 +kerning first=214 second=370 amount=-1 +kerning first=214 second=8222 amount=-1 +kerning first=107 second=45 amount=-1 +kerning first=73 second=370 amount=-1 +kerning first=114 second=240 amount=-1 +kerning first=261 second=243 amount=-1 +kerning first=1044 second=1097 amount=-1 +kerning first=356 second=45 amount=-1 +kerning first=199 second=362 amount=-1 +kerning first=73 second=8222 amount=-1 +kerning first=362 second=260 amount=-1 +kerning first=1051 second=1050 amount=-1 +kerning first=263 second=100 amount=-1 +kerning first=1038 second=1092 amount=-1 +kerning first=284 second=45 amount=-1 +kerning first=375 second=187 amount=-1 +kerning first=252 second=275 amount=-1 +kerning first=268 second=333 amount=-1 +kerning first=286 second=370 amount=-1 +kerning first=80 second=71 amount=-1 +kerning first=330 second=257 amount=-1 +kerning first=77 second=234 amount=-1 +kerning first=366 second=257 amount=-1 +kerning first=270 second=209 amount=-1 +kerning first=363 second=267 amount=-1 +kerning first=198 second=209 amount=-1 +kerning first=268 second=97 amount=-1 +kerning first=213 second=80 amount=-1 +kerning first=286 second=223 amount=-1 +kerning first=304 second=97 amount=-1 +kerning first=218 second=234 amount=-1 +kerning first=195 second=217 amount=-1 +kerning first=337 second=380 amount=-1 +kerning first=101 second=243 amount=-1 +kerning first=1048 second=1027 amount=-1 +kerning first=213 second=258 amount=-1 +kerning first=314 second=243 amount=-1 +kerning first=74 second=266 amount=-1 +kerning first=8218 second=224 amount=-1 +kerning first=218 second=325 amount=-1 +kerning first=71 second=72 amount=-1 +kerning first=232 second=8221 amount=-2 +kerning first=230 second=345 amount=-1 +kerning first=8222 second=277 amount=-1 +kerning first=268 second=8221 amount=-1 +kerning first=266 second=345 amount=-1 +kerning first=217 second=335 amount=-1 +kerning first=302 second=345 amount=-1 +kerning first=338 second=345 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=296 second=242 amount=-1 +kerning first=374 second=345 amount=-1 +kerning first=284 second=72 amount=-1 +kerning first=1030 second=1054 amount=-1 +kerning first=250 second=245 amount=-1 +kerning first=224 second=242 amount=-1 +kerning first=220 second=352 amount=-1 +kerning first=354 second=99 amount=-1 +kerning first=325 second=335 amount=-1 +kerning first=356 second=225 amount=-1 +kerning first=97 second=232 amount=-1 +kerning first=219 second=267 amount=-1 +kerning first=326 second=234 amount=-1 +kerning first=368 second=242 amount=-1 +kerning first=364 second=352 amount=-1 +kerning first=327 second=267 amount=-1 +kerning first=362 second=234 amount=-1 +kerning first=193 second=105 amount=-1 +kerning first=103 second=241 amount=-1 +kerning first=296 second=336 amount=-1 +kerning first=249 second=8221 amount=-1 +kerning first=263 second=328 amount=-1 +kerning first=1039 second=1028 amount=-1 +kerning first=77 second=233 amount=-1 +kerning first=275 second=98 amount=-1 +kerning first=296 second=216 amount=-1 +kerning first=209 second=80 amount=-1 +kerning first=368 second=336 amount=-1 +kerning first=201 second=199 amount=-1 +kerning first=1042 second=1045 amount=-1 +kerning first=85 second=115 amount=-1 +kerning first=1102 second=1093 amount=-1 +kerning first=271 second=114 amount=-1 +kerning first=326 second=233 amount=-1 +kerning first=368 second=216 amount=-1 +kerning first=1043 second=1077 amount=-1 +kerning first=218 second=233 amount=-1 +kerning first=1050 second=1079 amount=-1 +kerning first=267 second=378 amount=-1 +kerning first=8218 second=227 amount=-1 +kerning first=1077 second=1080 amount=-1 +kerning first=330 second=284 amount=-1 +kerning first=67 second=241 amount=-1 +kerning first=231 second=378 amount=-1 +kerning first=1041 second=1080 amount=-1 +kerning first=1067 second=1113 amount=-1 +kerning first=235 second=114 amount=-1 +kerning first=362 second=233 amount=-1 +kerning first=205 second=344 amount=-1 +kerning first=286 second=8222 amount=-1 +kerning first=199 second=114 amount=-1 +kerning first=366 second=284 amount=-1 +kerning first=1033 second=1046 amount=-1 +kerning first=89 second=224 amount=-1 +kerning first=79 second=78 amount=-1 +kerning first=200 second=327 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=352 second=361 amount=-1 +kerning first=272 second=327 amount=-1 +kerning first=258 second=284 amount=-1 +kerning first=211 second=353 amount=-1 +kerning first=280 second=361 amount=-1 +kerning first=266 second=224 amount=-1 +kerning first=283 second=353 amount=-1 +kerning first=262 second=115 amount=-1 +kerning first=201 second=8222 amount=-1 +kerning first=298 second=115 amount=-1 +kerning first=344 second=81 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=334 second=115 amount=-1 +kerning first=196 second=8221 amount=-2 +kerning first=45 second=284 amount=-1 +kerning first=351 second=8221 amount=-2 +kerning first=70 second=218 amount=-1 +kerning first=77 second=273 amount=-1 +kerning first=196 second=44 amount=-1 +kerning first=374 second=224 amount=-1 +kerning first=232 second=44 amount=-1 +kerning first=281 second=355 amount=-1 +kerning first=203 second=8249 amount=-1 +kerning first=224 second=235 amount=-1 +kerning first=70 second=78 amount=-1 +kerning first=209 second=355 amount=-1 +kerning first=350 second=282 amount=-1 +kerning first=325 second=227 amount=-1 +kerning first=1049 second=1104 amount=-1 +kerning first=77 second=380 amount=-1 +kerning first=311 second=8249 amount=-1 +kerning first=67 second=267 amount=-1 +kerning first=103 second=267 amount=-1 +kerning first=217 second=102 amount=-1 +kerning first=1043 second=1104 amount=-1 +kerning first=206 second=282 amount=-1 +kerning first=201 second=72 amount=-1 +kerning first=80 second=346 amount=-1 +kerning first=104 second=248 amount=-1 +kerning first=279 second=273 amount=-1 +kerning first=211 second=218 amount=-1 +kerning first=1059 second=1079 amount=-1 +kerning first=209 second=248 amount=-1 +kerning first=1036 second=1089 amount=-1 +kerning first=1052 second=1119 amount=-1 +kerning first=116 second=224 amount=-1 +kerning first=74 second=337 amount=-1 +kerning first=290 second=114 amount=-1 +kerning first=1051 second=1031 amount=-1 +kerning first=1049 second=1086 amount=-1 +kerning first=344 second=288 amount=-1 +kerning first=323 second=230 amount=-1 +kerning first=1051 second=1073 amount=-1 +kerning first=8250 second=324 amount=-1 +kerning first=89 second=279 amount=-1 +kerning first=272 second=206 amount=-1 +kerning first=200 second=274 amount=-1 +kerning first=70 second=337 amount=-1 +kerning first=248 second=291 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=8222 second=71 amount=-1 +kerning first=219 second=361 amount=-1 +kerning first=200 second=206 amount=-1 +kerning first=207 second=368 amount=-1 +kerning first=107 second=291 amount=-1 +kerning first=66 second=8221 amount=-2 +kerning first=356 second=232 amount=-1 +kerning first=217 second=227 amount=-1 +kerning first=344 second=8218 amount=-1 +kerning first=1027 second=1117 amount=-1 +kerning first=8217 second=275 amount=-1 +kerning first=323 second=337 amount=-1 +kerning first=1030 second=1080 amount=-1 +kerning first=315 second=368 amount=-1 +kerning first=272 second=8218 amount=-1 +kerning first=251 second=337 amount=-1 +kerning first=243 second=8221 amount=-2 +kerning first=66 second=368 amount=-1 +kerning first=279 second=8221 amount=-2 +kerning first=187 second=84 amount=-1 +kerning first=200 second=288 amount=-1 +kerning first=315 second=8221 amount=-1 +kerning first=171 second=368 amount=-1 +kerning first=110 second=337 amount=-1 +kerning first=121 second=187 amount=-1 +kerning first=304 second=211 amount=-1 +kerning first=375 second=107 amount=-1 +kerning first=268 second=211 amount=-1 +kerning first=325 second=200 amount=-1 +kerning first=85 second=187 amount=-2 +kerning first=78 second=99 amount=-1 +kerning first=291 second=99 amount=-1 +kerning first=334 second=187 amount=-1 +kerning first=278 second=270 amount=-1 +kerning first=296 second=362 amount=-1 +kerning first=217 second=200 amount=-1 +kerning first=200 second=8218 amount=-1 +kerning first=226 second=187 amount=-1 +kerning first=8250 second=336 amount=-1 +kerning first=219 second=99 amount=-1 +kerning first=262 second=187 amount=-1 +kerning first=206 second=270 amount=-1 +kerning first=196 second=211 amount=-1 +kerning first=203 second=266 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=98 second=8222 amount=-1 +kerning first=266 second=279 amount=-1 +kerning first=338 second=371 amount=-1 +kerning first=302 second=279 amount=-1 +kerning first=363 second=99 amount=-1 +kerning first=230 second=279 amount=-1 +kerning first=171 second=218 amount=-1 +kerning first=304 second=71 amount=-1 +kerning first=268 second=71 amount=-1 +kerning first=67 second=202 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=374 second=279 amount=-1 +kerning first=263 second=367 amount=-1 +kerning first=68 second=80 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=89 second=371 amount=-1 +kerning first=120 second=108 amount=-1 +kerning first=74 second=364 amount=-1 +kerning first=194 second=371 amount=-1 +kerning first=72 second=350 amount=-1 +kerning first=1030 second=1107 amount=-1 +kerning first=352 second=202 amount=-1 +kerning first=1055 second=1068 amount=-1 +kerning first=314 second=122 amount=-1 +kerning first=218 second=380 amount=-1 +kerning first=347 second=8249 amount=-1 +kerning first=220 second=205 amount=-1 +kerning first=333 second=108 amount=-1 +kerning first=362 second=273 amount=-1 +kerning first=79 second=205 amount=-1 +kerning first=338 second=270 amount=-1 +kerning first=205 second=69 amount=-1 +kerning first=201 second=334 amount=-1 +kerning first=196 second=303 amount=-1 +kerning first=350 second=270 amount=-1 +kerning first=254 second=380 amount=-1 +kerning first=261 second=108 amount=-1 +kerning first=362 second=380 amount=-1 +kerning first=210 second=221 amount=-1 +kerning first=218 second=273 amount=-1 +kerning first=327 second=216 amount=-1 +kerning first=323 second=364 amount=-1 +kerning first=198 second=68 amount=-1 +kerning first=220 second=8221 amount=-1 +kerning first=270 second=68 amount=-1 +kerning first=85 second=229 amount=-1 +kerning first=73 second=82 amount=-1 +kerning first=100 second=263 amount=-1 +kerning first=209 second=286 amount=-1 +kerning first=205 second=263 amount=-1 +kerning first=366 second=365 amount=-1 +kerning first=241 second=263 amount=-1 +kerning first=258 second=365 amount=-1 +kerning first=86 second=194 amount=-1 +kerning first=277 second=263 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=214 second=82 amount=-1 +kerning first=298 second=229 amount=-1 +kerning first=370 second=229 amount=-1 +kerning first=213 second=298 amount=-1 +kerning first=1054 second=1051 amount=-1 +kerning first=45 second=365 amount=-1 +kerning first=262 second=229 amount=-1 +kerning first=366 second=219 amount=-1 +kerning first=323 second=203 amount=-1 +kerning first=1030 second=1091 amount=-1 +kerning first=1051 second=1100 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=1027 second=1076 amount=-1 +kerning first=1064 second=1083 amount=-1 +kerning first=81 second=77 amount=-1 +kerning first=356 second=333 amount=-1 +kerning first=279 second=316 amount=-1 +kerning first=73 second=330 amount=-1 +kerning first=243 second=316 amount=-1 +kerning first=202 second=220 amount=-1 +kerning first=351 second=316 amount=-1 +kerning first=328 second=339 amount=-1 +kerning first=209 second=382 amount=-1 +kerning first=326 second=246 amount=-1 +kerning first=1043 second=1090 amount=-1 +kerning first=1056 second=1048 amount=-1 +kerning first=245 second=382 amount=-1 +kerning first=1091 second=1102 amount=-1 +kerning first=281 second=382 amount=-1 +kerning first=1030 second=1079 amount=-1 +kerning first=364 second=339 amount=-1 +kerning first=366 second=77 amount=-1 +kerning first=218 second=246 amount=-1 +kerning first=8216 second=256 amount=-2 +kerning first=314 second=103 amount=-1 +kerning first=286 second=330 amount=-1 +kerning first=1049 second=1034 amount=-1 +kerning first=1049 second=1099 amount=-1 +kerning first=1073 second=1093 amount=-1 +kerning first=213 second=323 amount=-1 +kerning first=8220 second=197 amount=-2 +kerning first=242 second=103 amount=-1 +kerning first=330 second=77 amount=-1 +kerning first=77 second=246 amount=-1 +kerning first=270 second=356 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=199 second=281 amount=-1 +kerning first=203 second=304 amount=-1 +kerning first=350 second=315 amount=-1 +kerning first=310 second=220 amount=-1 +kerning first=235 second=281 amount=-1 +kerning first=274 second=220 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=271 second=281 amount=-1 +kerning first=307 second=281 amount=-1 +kerning first=346 second=220 amount=-1 +kerning first=283 second=245 amount=-1 +kerning first=268 second=109 amount=-1 +kerning first=78 second=280 amount=-1 +kerning first=87 second=196 amount=-1 +kerning first=374 second=210 amount=-1 +kerning first=219 second=280 amount=-1 +kerning first=212 second=85 amount=-1 +kerning first=283 second=120 amount=-1 +kerning first=326 second=119 amount=-1 +kerning first=106 second=245 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=261 second=314 amount=-1 +kerning first=337 second=8217 amount=-2 +kerning first=338 second=210 amount=-1 +kerning first=70 second=245 amount=-1 +kerning first=225 second=314 amount=-1 +kerning first=298 second=216 amount=-1 +kerning first=317 second=221 amount=-1 +kerning first=1059 second=1114 amount=-1 +kerning first=266 second=210 amount=-1 +kerning first=327 second=280 amount=-1 +kerning first=120 second=314 amount=-1 +kerning first=77 second=315 amount=-1 +kerning first=112 second=8222 amount=-1 +kerning first=209 second=313 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=8250 second=255 amount=-1 +kerning first=310 second=118 amount=-1 +kerning first=333 second=314 amount=-1 +kerning first=223 second=8218 amount=-1 +kerning first=370 second=246 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=220 second=339 amount=-1 +kerning first=72 second=271 amount=-1 +kerning first=68 second=313 amount=-1 +kerning first=70 second=120 amount=-1 +kerning first=355 second=245 amount=-1 +kerning first=327 second=8250 amount=-1 +kerning first=1059 second=1107 amount=-1 +kerning first=370 second=256 amount=-1 +kerning first=1043 second=1117 amount=-1 +kerning first=255 second=8250 amount=-1 +kerning first=199 second=254 amount=-1 +kerning first=74 second=203 amount=-1 +kerning first=258 second=171 amount=-1 +kerning first=1066 second=1042 amount=-1 +kerning first=219 second=8250 amount=-2 +kerning first=367 second=111 amount=-1 +kerning first=235 second=254 amount=-1 +kerning first=350 second=76 amount=-1 +kerning first=272 second=219 amount=-1 +kerning first=114 second=8250 amount=-1 +kerning first=78 second=8250 amount=-1 +kerning first=278 second=76 amount=-1 +kerning first=200 second=219 amount=-1 +kerning first=205 second=327 amount=-1 +kerning first=192 second=374 amount=-1 +kerning first=243 second=289 amount=-1 +kerning first=1101 second=1084 amount=-1 +kerning first=224 second=101 amount=-1 +kerning first=206 second=76 amount=-1 +kerning first=291 second=305 amount=-1 +kerning first=1058 second=1101 amount=-1 +kerning first=73 second=357 amount=-1 +kerning first=226 second=314 amount=-1 +kerning first=296 second=101 amount=-1 +kerning first=193 second=8217 amount=-2 +kerning first=279 second=289 amount=-1 +kerning first=8217 second=367 amount=-1 +kerning first=261 second=114 amount=-1 +kerning first=229 second=8217 amount=-2 +kerning first=218 second=315 amount=-1 +kerning first=351 second=289 amount=-1 +kerning first=80 second=212 amount=-1 +kerning first=259 second=111 amount=-1 +kerning first=362 second=315 amount=-1 +kerning first=88 second=8217 amount=-1 +kerning first=1040 second=1059 amount=-2 +kerning first=302 second=280 amount=-1 +kerning first=1028 second=1044 amount=-1 +kerning first=266 second=280 amount=-1 +kerning first=264 second=335 amount=-1 +kerning first=8217 second=79 amount=-1 +kerning first=338 second=280 amount=-1 +kerning first=267 second=120 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=324 second=233 amount=-1 +kerning first=1060 second=1067 amount=-1 +kerning first=45 second=326 amount=-1 +kerning first=1071 second=1099 amount=-1 +kerning first=369 second=263 amount=-1 +kerning first=261 second=287 amount=-1 +kerning first=225 second=287 amount=-1 +kerning first=262 second=46 amount=-1 +kerning first=277 second=8220 amount=-2 +kerning first=82 second=85 amount=-1 +kerning first=104 second=339 amount=-1 +kerning first=241 second=8220 amount=-2 +kerning first=120 second=287 amount=-1 +kerning first=264 second=98 amount=-1 +kerning first=269 second=241 amount=-1 +kerning first=296 second=271 amount=-1 +kerning first=313 second=8220 amount=-1 +kerning first=369 second=287 amount=-1 +kerning first=87 second=335 amount=-1 +kerning first=192 second=98 amount=-1 +kerning first=205 second=302 amount=-1 +kerning first=368 second=271 amount=-1 +kerning first=228 second=335 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=242 second=378 amount=-1 +kerning first=196 second=219 amount=-1 +kerning first=266 second=83 amount=-1 +kerning first=206 second=378 amount=-1 +kerning first=302 second=83 amount=-1 +kerning first=284 second=298 amount=-1 +kerning first=1065 second=1090 amount=-1 +kerning first=101 second=378 amount=-1 +kerning first=262 second=311 amount=-1 +kerning first=288 second=344 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=198 second=80 amount=-1 +kerning first=254 second=289 amount=-1 +kerning first=284 second=8250 amount=-1 +kerning first=85 second=46 amount=-2 +kerning first=314 second=378 amount=-1 +kerning first=1042 second=1114 amount=-1 +kerning first=326 second=289 amount=-1 +kerning first=325 second=76 amount=-1 +kerning first=217 second=76 amount=-1 +kerning first=366 second=353 amount=-1 +kerning first=199 second=216 amount=-1 +kerning first=330 second=353 amount=-1 +kerning first=1054 second=1061 amount=-1 +kerning first=70 second=284 amount=-1 +kerning first=1036 second=1105 amount=-1 +kerning first=1059 second=1118 amount=-1 +kerning first=203 second=357 amount=-1 +kerning first=296 second=74 amount=-1 +kerning first=275 second=357 amount=-1 +kerning first=240 second=246 amount=-1 +kerning first=257 second=113 amount=-1 +kerning first=368 second=74 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=264 second=201 amount=-1 +kerning first=231 second=269 amount=-1 +kerning first=45 second=116 amount=-1 +kerning first=1069 second=1084 amount=-1 +kerning first=1064 second=1071 amount=-1 +kerning first=221 second=113 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=80 second=113 amount=-1 +kerning first=339 second=269 amount=-1 +kerning first=263 second=259 amount=-1 +kerning first=258 second=116 amount=-1 +kerning first=220 second=204 amount=-1 +kerning first=267 second=269 amount=-1 +kerning first=364 second=310 amount=-1 +kerning first=370 second=302 amount=-1 +kerning first=270 second=317 amount=-1 +kerning first=1058 second=1085 amount=-1 +kerning first=200 second=330 amount=-1 +kerning first=364 second=204 amount=-1 +kerning first=272 second=65 amount=-1 +kerning first=1048 second=1069 amount=-1 +kerning first=212 second=200 amount=-1 +kerning first=259 second=187 amount=-1 +kerning first=200 second=369 amount=-1 +kerning first=362 second=350 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=101 second=244 amount=-1 +kerning first=365 second=113 amount=-1 +kerning first=323 second=268 amount=-1 +kerning first=374 second=103 amount=-1 +kerning first=278 second=278 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=86 second=122 amount=-1 +kerning first=1052 second=1094 amount=-1 +kerning first=234 second=107 amount=-1 +kerning first=365 second=277 amount=-1 +kerning first=106 second=113 amount=-1 +kerning first=298 second=225 amount=-1 +kerning first=1042 second=1087 amount=-1 +kerning first=206 second=351 amount=-1 +kerning first=1034 second=1053 amount=-1 +kerning first=85 second=213 amount=-1 +kerning first=74 second=268 amount=-1 +kerning first=280 second=73 amount=-1 +kerning first=101 second=351 amount=-1 +kerning first=200 second=262 amount=-1 +kerning first=330 second=219 amount=-1 +kerning first=198 second=317 amount=-1 +kerning first=352 second=73 amount=-1 +kerning first=298 second=213 amount=-1 +kerning first=116 second=277 amount=-1 +kerning first=258 second=219 amount=-1 +kerning first=262 second=213 amount=-1 +kerning first=80 second=277 amount=-1 +kerning first=286 second=82 amount=-1 +kerning first=201 second=251 amount=-1 +kerning first=366 second=116 amount=-1 +kerning first=344 second=262 amount=-1 +kerning first=335 second=122 amount=-1 +kerning first=330 second=116 amount=-1 +kerning first=344 second=370 amount=-1 +kerning first=283 second=8218 amount=-1 +kerning first=1027 second=1102 amount=-1 +kerning first=81 second=219 amount=-1 +kerning first=263 second=122 amount=-1 +kerning first=257 second=277 amount=-1 +kerning first=1052 second=1076 amount=-1 +kerning first=193 second=311 amount=-1 +kerning first=370 second=213 amount=-1 +kerning first=221 second=277 amount=-1 +kerning first=1065 second=1117 amount=-1 +kerning first=1041 second=1038 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=227 second=122 amount=-1 +kerning first=204 second=380 amount=-1 +kerning first=217 second=270 amount=-1 +kerning first=8217 second=232 amount=-1 +kerning first=364 second=231 amount=-1 +kerning first=80 second=8221 amount=-1 +kerning first=80 second=218 amount=-1 +kerning first=240 second=380 amount=-1 +kerning first=117 second=283 amount=-1 +kerning first=367 second=248 amount=-1 +kerning first=1058 second=1089 amount=-1 +kerning first=221 second=8221 amount=-1 +kerning first=210 second=75 amount=-1 +kerning first=220 second=231 amount=-1 +kerning first=1030 second=1119 amount=-1 +kerning first=257 second=382 amount=-1 +kerning first=257 second=8221 amount=-2 +kerning first=72 second=242 amount=-1 +kerning first=259 second=248 amount=-1 +kerning first=325 second=270 amount=-1 +kerning first=108 second=242 amount=-1 +kerning first=69 second=75 amount=-1 +kerning first=209 second=209 amount=-1 +kerning first=204 second=66 amount=-1 +kerning first=365 second=8221 amount=-1 +kerning first=199 second=336 amount=-1 +kerning first=249 second=242 amount=-1 +kerning first=68 second=209 amount=-1 +kerning first=330 second=283 amount=-1 +kerning first=356 second=226 amount=-1 +kerning first=366 second=283 amount=-1 +kerning first=8249 second=85 amount=-1 +kerning first=99 second=380 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=268 second=268 amount=-1 +kerning first=210 second=8220 amount=-2 +kerning first=206 second=244 amount=-1 +kerning first=366 second=102 amount=-1 +kerning first=207 second=233 amount=-1 +kerning first=70 second=327 amount=-1 +kerning first=347 second=8222 amount=-1 +kerning first=80 second=70 amount=-1 +kerning first=270 second=274 amount=-1 +kerning first=311 second=8222 amount=-1 +kerning first=345 second=45 amount=-1 +kerning first=366 second=192 amount=-1 +kerning first=314 second=244 amount=-1 +kerning first=211 second=327 amount=-1 +kerning first=1056 second=1113 amount=-1 +kerning first=203 second=8222 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=279 second=233 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=270 second=256 amount=-1 +kerning first=354 second=44 amount=-1 +kerning first=246 second=44 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=287 second=115 amount=-1 +kerning first=327 second=337 amount=-1 +kerning first=209 second=205 amount=-1 +kerning first=1028 second=1071 amount=-1 +kerning first=68 second=205 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=366 second=310 amount=-1 +kerning first=330 second=310 amount=-1 +kerning first=197 second=214 amount=-1 +kerning first=327 second=224 amount=-1 +kerning first=254 second=8218 amount=-1 +kerning first=219 second=224 amount=-1 +kerning first=206 second=332 amount=-1 +kerning first=81 second=353 amount=-1 +kerning first=289 second=248 amount=-1 +kerning first=272 second=84 amount=-1 +kerning first=278 second=369 amount=-1 +kerning first=67 second=277 amount=-1 +kerning first=81 second=310 amount=-1 +kerning first=217 second=243 amount=-1 +kerning first=282 second=71 amount=-1 +kerning first=116 second=243 amount=-1 +kerning first=187 second=252 amount=-1 +kerning first=205 second=275 amount=-1 +kerning first=118 second=252 amount=-1 +kerning first=277 second=275 amount=-1 +kerning first=210 second=362 amount=-1 +kerning first=270 second=80 amount=-1 +kerning first=241 second=275 amount=-1 +kerning first=69 second=71 amount=-1 +kerning first=282 second=362 amount=-1 +kerning first=369 second=242 amount=-1 +kerning first=245 second=106 amount=-1 +kerning first=1052 second=1107 amount=-1 +kerning first=281 second=106 amount=-1 +kerning first=100 second=275 amount=-1 +kerning first=193 second=354 amount=-1 +kerning first=1077 second=1081 amount=-1 +kerning first=221 second=97 amount=-1 +kerning first=1055 second=1097 amount=-1 +kerning first=65 second=217 amount=-1 +kerning first=1091 second=1097 amount=-1 +kerning first=229 second=234 amount=-1 +kerning first=8218 second=98 amount=-1 +kerning first=206 second=217 amount=-1 +kerning first=80 second=97 amount=-1 +kerning first=203 second=223 amount=-1 +kerning first=69 second=362 amount=-1 +kerning first=116 second=97 amount=-1 +kerning first=70 second=257 amount=-1 +kerning first=278 second=217 amount=-1 +kerning first=325 second=243 amount=-1 +kerning first=350 second=217 amount=-1 +kerning first=263 second=232 amount=-1 +kerning first=289 second=243 amount=-1 +kerning first=325 second=266 amount=-1 +kerning first=227 second=232 amount=-1 +kerning first=1046 second=1098 amount=-1 +kerning first=75 second=371 amount=-1 +kerning first=100 second=345 amount=-1 +kerning first=196 second=368 amount=-1 +kerning first=1071 second=1072 amount=-1 +kerning first=217 second=266 amount=-1 +kerning first=330 second=68 amount=-1 +kerning first=205 second=345 amount=-1 +kerning first=244 second=108 amount=-1 +kerning first=241 second=345 amount=-1 +kerning first=78 second=219 amount=-1 +kerning first=199 second=263 amount=-1 +kerning first=220 second=325 amount=-1 +kerning first=1118 second=1098 amount=-1 +kerning first=211 second=8218 amount=-1 +kerning first=80 second=109 amount=-1 +kerning first=194 second=86 amount=-1 +kerning first=366 second=245 amount=-1 +kerning first=270 second=221 amount=-1 +kerning first=106 second=8218 amount=-1 +kerning first=366 second=120 amount=-1 +kerning first=330 second=245 amount=-1 +kerning first=355 second=8218 amount=-1 +kerning first=219 second=197 amount=-1 +kerning first=272 second=370 amount=-1 +kerning first=268 second=368 amount=-1 +kerning first=270 second=313 amount=-1 +kerning first=1065 second=1116 amount=-1 +kerning first=304 second=368 amount=-1 +kerning first=200 second=370 amount=-1 +kerning first=1059 second=1092 amount=-1 +kerning first=221 second=109 amount=-1 +kerning first=117 second=245 amount=-1 +kerning first=1052 second=1037 amount=-1 +kerning first=335 second=378 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=70 second=108 amount=-1 +kerning first=187 second=199 amount=-1 +kerning first=275 second=249 amount=-1 +kerning first=8218 second=266 amount=-1 +kerning first=45 second=120 amount=-1 +kerning first=71 second=201 amount=-1 +kerning first=198 second=313 amount=-1 +kerning first=350 second=72 amount=-1 +kerning first=1047 second=1101 amount=-1 +kerning first=89 second=361 amount=-1 +kerning first=368 second=275 amount=-1 +kerning first=85 second=45 amount=-2 +kerning first=99 second=105 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=1038 second=1086 amount=-1 +kerning first=203 second=249 amount=-1 +kerning first=218 second=229 amount=-1 +kerning first=233 second=267 amount=-1 +kerning first=269 second=267 amount=-1 +kerning first=217 second=217 amount=-1 +kerning first=370 second=72 amount=-1 +kerning first=305 second=267 amount=-1 +kerning first=80 second=274 amount=-1 +kerning first=1030 second=1097 amount=-1 +kerning first=1041 second=1042 amount=-1 +kerning first=325 second=217 amount=-1 +kerning first=282 second=212 amount=-1 +kerning first=1053 second=1113 amount=-1 +kerning first=282 second=114 amount=-1 +kerning first=1030 second=1042 amount=-1 +kerning first=268 second=205 amount=-1 +kerning first=264 second=102 amount=-1 +kerning first=69 second=212 amount=-1 +kerning first=228 second=8249 amount=-1 +kerning first=105 second=114 amount=-1 +kerning first=86 second=258 amount=-1 +kerning first=264 second=8249 amount=-1 +kerning first=246 second=114 amount=-1 +kerning first=234 second=111 amount=-1 +kerning first=73 second=262 amount=-1 +kerning first=1118 second=1102 amount=-1 +kerning first=8217 second=193 amount=-2 +kerning first=1071 second=1098 amount=-1 +kerning first=74 second=115 amount=-1 +kerning first=69 second=114 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=366 second=78 amount=-1 +kerning first=234 second=355 amount=-1 +kerning first=1042 second=1061 amount=-1 +kerning first=198 second=355 amount=-1 +kerning first=277 second=318 amount=-1 +kerning first=80 second=44 amount=-2 +kerning first=1052 second=1064 amount=-1 +kerning first=325 second=209 amount=-1 +kerning first=70 second=288 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=264 second=331 amount=-1 +kerning first=1031 second=1074 amount=-1 +kerning first=330 second=78 amount=-1 +kerning first=221 second=44 amount=-1 +kerning first=229 second=380 amount=-1 +kerning first=81 second=78 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=234 second=248 amount=-1 +kerning first=221 second=345 amount=-1 +kerning first=85 second=72 amount=-1 +kerning first=1047 second=1036 amount=-1 +kerning first=1066 second=1055 amount=-1 +kerning first=366 second=218 amount=-1 +kerning first=330 second=218 amount=-1 +kerning first=67 second=332 amount=-1 +kerning first=1039 second=1068 amount=-1 +kerning first=258 second=218 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=114 second=224 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=264 second=8222 amount=-1 +kerning first=280 second=332 amount=-1 +kerning first=100 second=279 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=1067 second=1092 amount=-1 +kerning first=241 second=279 amount=-1 +kerning first=87 second=8222 amount=-2 +kerning first=367 second=291 amount=-1 +kerning first=198 second=274 amount=-1 +kerning first=338 second=361 amount=-1 +kerning first=1048 second=1070 amount=-1 +kerning first=227 second=267 amount=-1 +kerning first=374 second=361 amount=-1 +kerning first=205 second=279 amount=-1 +kerning first=259 second=291 amount=-1 +kerning first=323 second=187 amount=-1 +kerning first=223 second=291 amount=-1 +kerning first=240 second=337 amount=-1 +kerning first=79 second=207 amount=-1 +kerning first=204 second=337 amount=-1 +kerning first=80 second=246 amount=-1 +kerning first=118 second=291 amount=-1 +kerning first=287 second=187 amount=-1 +kerning first=264 second=227 amount=-1 +kerning first=99 second=337 amount=-1 +kerning first=8217 second=283 amount=-1 +kerning first=8222 second=368 amount=-1 +kerning first=258 second=374 amount=-1 +kerning first=274 second=323 amount=-1 +kerning first=336 second=8222 amount=-1 +kerning first=206 second=352 amount=-1 +kerning first=202 second=323 amount=-1 +kerning first=270 second=84 amount=-1 +kerning first=73 second=81 amount=-1 +kerning first=206 second=325 amount=-1 +kerning first=74 second=317 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=278 second=325 amount=-1 +kerning first=346 second=323 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=221 second=211 amount=-1 +kerning first=350 second=325 amount=-1 +kerning first=1101 second=1078 amount=-1 +kerning first=105 second=281 amount=-1 +kerning first=80 second=211 amount=-1 +kerning first=103 second=99 amount=-1 +kerning first=325 second=347 amount=-1 +kerning first=316 second=99 amount=-1 +kerning first=255 second=251 amount=-1 +kerning first=352 second=8250 amount=-1 +kerning first=218 second=201 amount=-1 +kerning first=1048 second=1043 amount=-1 +kerning first=8218 second=335 amount=-1 +kerning first=253 second=347 amount=-1 +kerning first=1075 second=1116 amount=-1 +kerning first=282 second=214 amount=-1 +kerning first=289 second=347 amount=-1 +kerning first=280 second=8250 amount=-1 +kerning first=70 second=369 amount=-1 +kerning first=244 second=8250 amount=-1 +kerning first=198 second=290 amount=-1 +kerning first=8218 second=243 amount=-1 +kerning first=217 second=347 amount=-1 +kerning first=208 second=8250 amount=-1 +kerning first=113 second=316 amount=-1 +kerning first=1053 second=1097 amount=-1 +kerning first=283 second=369 amount=-1 +kerning first=254 second=316 amount=-1 +kerning first=204 second=268 amount=-1 +kerning first=103 second=8250 amount=-1 +kerning first=278 second=334 amount=-1 +kerning first=1059 second=1051 amount=-1 +kerning first=103 second=305 amount=-1 +kerning first=67 second=8250 amount=-1 +kerning first=8250 second=379 amount=-1 +kerning first=217 second=351 amount=-1 +kerning first=310 second=117 amount=-1 +kerning first=99 second=8217 amount=-2 +kerning first=274 second=117 amount=-1 +kerning first=233 second=104 amount=-1 +kerning first=282 second=202 amount=-1 +kerning first=269 second=104 amount=-1 +kerning first=325 second=351 amount=-1 +kerning first=289 second=351 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=364 second=366 amount=-1 +kerning first=197 second=104 amount=-1 +kerning first=224 second=113 amount=-1 +kerning first=203 second=82 amount=-1 +kerning first=1051 second=1030 amount=-1 +kerning first=8218 second=336 amount=-1 +kerning first=72 second=101 amount=-1 +kerning first=86 second=193 amount=-1 +kerning first=1034 second=1049 amount=-1 +kerning first=288 second=69 amount=-1 +kerning first=70 second=121 amount=-1 +kerning first=79 second=296 amount=-1 +kerning first=249 second=101 amount=-1 +kerning first=1054 second=1052 amount=-1 +kerning first=105 second=277 amount=-1 +kerning first=240 second=8217 amount=-2 +kerning first=204 second=364 amount=-1 +kerning first=198 second=286 amount=-1 +kerning first=1065 second=1074 amount=-1 +kerning first=112 second=103 amount=-1 +kerning first=283 second=365 amount=-1 +kerning first=252 second=263 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=204 second=220 amount=-1 +kerning first=8217 second=366 amount=-1 +kerning first=324 second=263 amount=-1 +kerning first=364 second=296 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=87 second=8249 amount=-2 +kerning first=1070 second=1049 amount=-1 +kerning first=252 second=171 amount=-1 +kerning first=209 second=68 amount=-1 +kerning first=288 second=171 amount=-1 +kerning first=296 second=298 amount=-1 +kerning first=70 second=365 amount=-1 +kerning first=1067 second=1071 amount=-1 +kerning first=368 second=298 amount=-1 +kerning first=250 second=287 amount=-1 +kerning first=364 second=46 amount=-2 +kerning first=202 second=117 amount=-1 +kerning first=109 second=287 amount=-1 +kerning first=283 second=246 amount=-1 +kerning first=204 second=203 amount=-1 +kerning first=233 second=100 amount=-1 +kerning first=1054 second=1025 amount=-1 +kerning first=78 second=83 amount=-1 +kerning first=367 second=333 amount=-1 +kerning first=269 second=100 amount=-1 +kerning first=219 second=83 amount=-1 +kerning first=1053 second=1083 amount=-1 +kerning first=85 second=278 amount=-1 +kerning first=209 second=339 amount=-1 +kerning first=323 second=229 amount=-1 +kerning first=327 second=83 amount=-1 +kerning first=281 second=339 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=203 second=330 amount=-1 +kerning first=264 second=304 amount=-1 +kerning first=68 second=68 amount=-1 +kerning first=229 second=246 amount=-1 +kerning first=80 second=267 amount=-1 +kerning first=325 second=103 amount=-1 +kerning first=72 second=74 amount=-1 +kerning first=354 second=281 amount=-1 +kerning first=1051 second=1057 amount=-1 +kerning first=370 second=278 amount=-1 +kerning first=253 second=103 amount=-1 +kerning first=334 second=278 amount=-1 +kerning first=217 second=103 amount=-1 +kerning first=206 second=296 amount=-1 +kerning first=298 second=278 amount=-1 +kerning first=323 second=246 amount=-1 +kerning first=248 second=382 amount=-1 +kerning first=200 second=8222 amount=-1 +kerning first=287 second=246 amount=-1 +kerning first=251 second=246 amount=-1 +kerning first=205 second=100 amount=-1 +kerning first=8222 second=87 amount=-2 +kerning first=199 second=298 amount=-1 +kerning first=228 second=103 amount=-1 +kerning first=356 second=382 amount=-1 +kerning first=220 second=269 amount=-1 +kerning first=272 second=77 amount=-1 +kerning first=277 second=100 amount=-1 +kerning first=205 second=220 amount=-1 +kerning first=110 second=246 amount=-1 +kerning first=313 second=220 amount=-1 +kerning first=198 second=330 amount=-1 +kerning first=74 second=246 amount=-1 +kerning first=200 second=77 amount=-1 +kerning first=79 second=356 amount=-1 +kerning first=364 second=269 amount=-1 +kerning first=212 second=68 amount=-1 +kerning first=1053 second=1062 amount=-1 +kerning first=213 second=194 amount=-1 +kerning first=199 second=211 amount=-1 +kerning first=251 second=333 amount=-1 +kerning first=110 second=333 amount=-1 +kerning first=284 second=68 amount=-1 +kerning first=352 second=365 amount=-1 +kerning first=328 second=269 amount=-1 +kerning first=280 second=365 amount=-1 +kerning first=344 second=8222 amount=-1 +kerning first=1070 second=1048 amount=-1 +kerning first=316 second=365 amount=-1 +kerning first=1034 second=1048 amount=-1 +kerning first=229 second=289 amount=-1 +kerning first=272 second=8222 amount=-1 +kerning first=323 second=333 amount=-1 +kerning first=71 second=68 amount=-1 +kerning first=85 second=335 amount=-1 +kerning first=72 second=281 amount=-1 +kerning first=350 second=313 amount=-1 +kerning first=108 second=281 amount=-1 +kerning first=80 second=315 amount=-1 +kerning first=70 second=202 amount=-1 +kerning first=8217 second=220 amount=-1 +kerning first=214 second=84 amount=-1 +kerning first=206 second=313 amount=-1 +kerning first=85 second=111 amount=-1 +kerning first=214 second=347 amount=-1 +kerning first=278 second=313 amount=-1 +kerning first=65 second=86 amount=-1 +kerning first=1036 second=1087 amount=-1 +kerning first=8222 second=336 amount=-1 +kerning first=1040 second=1057 amount=-1 +kerning first=77 second=364 amount=-1 +kerning first=1040 second=1117 amount=-1 +kerning first=263 second=324 amount=-1 +kerning first=73 second=347 amount=-1 +kerning first=1069 second=1042 amount=-1 +kerning first=230 second=271 amount=-1 +kerning first=211 second=202 amount=-1 +kerning first=209 second=264 amount=-1 +kerning first=1044 second=1088 amount=-1 +kerning first=214 second=325 amount=-1 +kerning first=346 second=69 amount=-1 +kerning first=85 second=251 amount=-1 +kerning first=121 second=251 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=370 second=251 amount=-1 +kerning first=243 second=8217 amount=-2 +kerning first=207 second=212 amount=-1 +kerning first=1048 second=1118 amount=-1 +kerning first=279 second=8217 amount=-2 +kerning first=315 second=8217 amount=-1 +kerning first=69 second=8221 amount=-1 +kerning first=277 second=345 amount=-1 +kerning first=66 second=8217 amount=-2 +kerning first=105 second=8221 amount=-1 +kerning first=199 second=271 amount=-1 +kerning first=66 second=212 amount=-1 +kerning first=8250 second=367 amount=-1 +kerning first=210 second=8221 amount=-2 +kerning first=226 second=111 amount=-1 +kerning first=270 second=85 amount=-1 +kerning first=261 second=245 amount=-1 +kerning first=298 second=111 amount=-1 +kerning first=198 second=85 amount=-1 +kerning first=97 second=242 amount=-1 +kerning first=354 second=8221 amount=-1 +kerning first=280 second=334 amount=-1 +kerning first=351 second=8217 amount=-2 +kerning first=195 second=221 amount=-1 +kerning first=370 second=111 amount=-1 +kerning first=84 second=245 amount=-1 +kerning first=363 second=263 amount=-1 +kerning first=103 second=365 amount=-1 +kerning first=362 second=8217 amount=-1 +kerning first=85 second=231 amount=-1 +kerning first=337 second=289 amount=-1 +kerning first=1039 second=1024 amount=-1 +kerning first=204 second=67 amount=-1 +kerning first=288 second=366 amount=-1 +kerning first=203 second=288 amount=-1 +kerning first=201 second=203 amount=-1 +kerning first=1069 second=1064 amount=-1 +kerning first=221 second=195 amount=-1 +kerning first=264 second=357 amount=-1 +kerning first=304 second=233 amount=-1 +kerning first=364 second=102 amount=-1 +kerning first=78 second=263 amount=-1 +kerning first=232 second=233 amount=-1 +kerning first=99 second=45 amount=-1 +kerning first=205 second=280 amount=-1 +kerning first=214 second=374 amount=-1 +kerning first=268 second=233 amount=-1 +kerning first=264 second=76 amount=-1 +kerning first=1036 second=1059 amount=-1 +kerning first=192 second=357 amount=-1 +kerning first=291 second=263 amount=-1 +kerning first=1058 second=1084 amount=-1 +kerning first=327 second=263 amount=-1 +kerning first=204 second=267 amount=-1 +kerning first=302 second=122 amount=-1 +kerning first=282 second=363 amount=-1 +kerning first=230 second=122 amount=-1 +kerning first=201 second=317 amount=-1 +kerning first=258 second=375 amount=-1 +kerning first=266 second=122 amount=-1 +kerning first=323 second=213 amount=-1 +kerning first=231 second=107 amount=-1 +kerning first=304 second=207 amount=-1 +kerning first=218 second=250 amount=-1 +kerning first=195 second=107 amount=-1 +kerning first=268 second=207 amount=-1 +kerning first=68 second=204 amount=-1 +kerning first=121 second=311 amount=-1 +kerning first=232 second=8250 amount=-1 +kerning first=1046 second=1072 amount=-1 +kerning first=203 second=201 amount=-1 +kerning first=296 second=232 amount=-1 +kerning first=219 second=116 amount=-1 +kerning first=198 second=282 amount=-1 +kerning first=310 second=216 amount=-1 +kerning first=8218 second=103 amount=-1 +kerning first=209 second=204 amount=-1 +kerning first=304 second=337 amount=-1 +kerning first=75 second=366 amount=-1 +kerning first=1052 second=1081 amount=-1 +kerning first=78 second=116 amount=-1 +kerning first=217 second=244 amount=-1 +kerning first=281 second=378 amount=-1 +kerning first=368 second=259 amount=-1 +kerning first=327 second=116 amount=-1 +kerning first=289 second=244 amount=-1 +kerning first=209 second=378 amount=-1 +kerning first=296 second=259 amount=-1 +kerning first=1058 second=1102 amount=-1 +kerning first=325 second=244 amount=-1 +kerning first=70 second=262 amount=-1 +kerning first=1042 second=1024 amount=-1 +kerning first=1051 second=1096 amount=-1 +kerning first=1058 second=1094 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=75 second=345 amount=-1 +kerning first=278 second=290 amount=-1 +kerning first=111 second=345 amount=-1 +kerning first=1042 second=1049 amount=-1 +kerning first=346 second=302 amount=-1 +kerning first=275 second=369 amount=-1 +kerning first=339 second=107 amount=-1 +kerning first=274 second=302 amount=-1 +kerning first=74 second=213 amount=-1 +kerning first=252 second=345 amount=-1 +kerning first=203 second=369 amount=-1 +kerning first=267 second=335 amount=-1 +kerning first=267 second=107 amount=-1 +kerning first=288 second=345 amount=-1 +kerning first=73 second=206 amount=-1 +kerning first=231 second=335 amount=-1 +kerning first=202 second=302 amount=-1 +kerning first=324 second=345 amount=-1 +kerning first=286 second=206 amount=-1 +kerning first=339 second=335 amount=-1 +kerning first=78 second=46 amount=-1 +kerning first=197 second=219 amount=-1 +kerning first=214 second=206 amount=-1 +kerning first=209 second=231 amount=-1 +kerning first=218 second=277 amount=-1 +kerning first=77 second=334 amount=-1 +kerning first=270 second=193 amount=-1 +kerning first=277 second=254 amount=-1 +kerning first=281 second=231 amount=-1 +kerning first=209 second=351 amount=-1 +kerning first=78 second=218 amount=-1 +kerning first=80 second=368 amount=-1 +kerning first=362 second=277 amount=-1 +kerning first=205 second=73 amount=-1 +kerning first=326 second=277 amount=-1 +kerning first=347 second=103 amount=-1 +kerning first=201 second=290 amount=-1 +kerning first=370 second=338 amount=-1 +kerning first=1066 second=1067 amount=-1 +kerning first=74 second=345 amount=-1 +kerning first=262 second=338 amount=-1 +kerning first=70 second=82 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=298 second=338 amount=-1 +kerning first=211 second=82 amount=-1 +kerning first=200 second=8249 amount=-1 +kerning first=283 second=283 amount=-1 +kerning first=278 second=286 amount=-1 +kerning first=77 second=277 amount=-1 +kerning first=1047 second=1097 amount=-1 +kerning first=85 second=338 amount=-1 +kerning first=68 second=351 amount=-1 +kerning first=344 second=8249 amount=-1 +kerning first=70 second=283 amount=-1 +kerning first=1027 second=1086 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=380 second=8249 amount=-1 +kerning first=106 second=283 amount=-1 +kerning first=1048 second=1031 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=262 second=45 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=1033 second=1068 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=206 second=286 amount=-1 +kerning first=368 second=113 amount=-1 +kerning first=8222 second=233 amount=-1 +kerning first=226 second=45 amount=-1 +kerning first=296 second=113 amount=-1 +kerning first=74 second=333 amount=-1 +kerning first=280 second=171 amount=-1 +kerning first=70 second=235 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=106 second=235 amount=-1 +kerning first=352 second=171 amount=-1 +kerning first=99 second=101 amount=-1 +kerning first=210 second=70 amount=-1 +kerning first=282 second=70 amount=-1 +kerning first=352 second=280 amount=-1 +kerning first=283 second=235 amount=-1 +kerning first=69 second=363 amount=-1 +kerning first=269 second=240 amount=-1 +kerning first=355 second=235 amount=-1 +kerning first=69 second=70 amount=-1 +kerning first=1051 second=1069 amount=-1 +kerning first=1068 second=1056 amount=-1 +kerning first=8217 second=351 amount=-1 +kerning first=121 second=252 amount=-1 +kerning first=280 second=344 amount=-1 +kerning first=1070 second=1027 amount=-1 +kerning first=85 second=252 amount=-1 +kerning first=327 second=284 amount=-1 +kerning first=1091 second=1085 amount=-1 +kerning first=1034 second=1027 amount=-1 +kerning first=352 second=344 amount=-1 +kerning first=278 second=205 amount=-1 +kerning first=78 second=284 amount=-1 +kerning first=219 second=284 amount=-1 +kerning first=1044 second=1080 amount=-1 +kerning first=314 second=283 amount=-1 +kerning first=338 second=214 amount=-1 +kerning first=302 second=214 amount=-1 +kerning first=266 second=214 amount=-1 +kerning first=290 second=315 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=234 second=231 amount=-1 +kerning first=192 second=217 amount=-1 +kerning first=366 second=46 amount=-2 +kerning first=187 second=112 amount=-1 +kerning first=1076 second=1113 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=212 second=89 amount=-1 +kerning first=374 second=214 amount=-1 +kerning first=220 second=243 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=110 second=45 amount=-1 +kerning first=375 second=287 amount=-1 +kerning first=339 second=122 amount=-1 +kerning first=217 second=65 amount=-1 +kerning first=77 second=71 amount=-1 +kerning first=73 second=353 amount=-1 +kerning first=117 second=235 amount=-1 +kerning first=364 second=243 amount=-1 +kerning first=214 second=353 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=287 second=45 amount=-1 +kerning first=328 second=243 amount=-1 +kerning first=249 second=275 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=1049 second=1076 amount=-1 +kerning first=362 second=226 amount=-1 +kerning first=218 second=71 amount=-1 +kerning first=1053 second=1028 amount=-1 +kerning first=251 second=45 amount=-1 +kerning first=370 second=252 amount=-1 +kerning first=8217 second=210 amount=-1 +kerning first=354 second=97 amount=-1 +kerning first=200 second=223 amount=-1 +kerning first=202 second=362 amount=-1 +kerning first=278 second=80 amount=-1 +kerning first=366 second=235 amount=-1 +kerning first=1039 second=1050 amount=-1 +kerning first=72 second=275 amount=-1 +kerning first=310 second=362 amount=-1 +kerning first=323 second=44 amount=-1 +kerning first=1077 second=1093 amount=-1 +kerning first=206 second=80 amount=-1 +kerning first=235 second=367 amount=-1 +kerning first=344 second=223 amount=-1 +kerning first=346 second=362 amount=-1 +kerning first=350 second=80 amount=-1 +kerning first=72 second=302 amount=-1 +kerning first=304 second=234 amount=-1 +kerning first=69 second=336 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=8218 second=244 amount=-1 +kerning first=78 second=122 amount=-1 +kerning first=65 second=107 amount=-1 +kerning first=363 second=234 amount=-1 +kerning first=211 second=370 amount=-1 +kerning first=196 second=119 amount=-1 +kerning first=229 second=337 amount=-1 +kerning first=1047 second=1079 amount=-1 +kerning first=198 second=199 amount=-1 +kerning first=8250 second=116 amount=-1 +kerning first=282 second=336 amount=-1 +kerning first=289 second=267 amount=-1 +kerning first=262 second=317 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=269 second=8250 amount=-1 +kerning first=87 second=249 amount=-1 +kerning first=338 second=116 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=302 second=116 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=266 second=116 amount=-1 +kerning first=374 second=241 amount=-1 +kerning first=287 second=105 amount=-1 +kerning first=1039 second=1105 amount=-1 +kerning first=327 second=122 amount=-1 +kerning first=1056 second=1071 amount=-1 +kerning first=275 second=314 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=85 second=110 amount=-1 +kerning first=81 second=327 amount=-1 +kerning first=232 second=234 amount=-1 +kerning first=1052 second=1054 amount=-1 +kerning first=77 second=382 amount=-1 +kerning first=364 second=335 amount=-1 +kerning first=101 second=345 amount=-1 +kerning first=323 second=72 amount=-1 +kerning first=328 second=335 amount=-1 +kerning first=1065 second=1087 amount=-1 +kerning first=89 second=241 amount=-1 +kerning first=262 second=110 amount=-1 +kerning first=1031 second=1049 amount=-1 +kerning first=347 second=314 amount=-1 +kerning first=171 second=374 amount=-1 +kerning first=1067 second=1049 amount=-1 +kerning first=202 second=216 amount=-1 +kerning first=330 second=327 amount=-1 +kerning first=302 second=241 amount=-1 +kerning first=298 second=110 amount=-1 +kerning first=366 second=327 amount=-1 +kerning first=266 second=241 amount=-1 +kerning first=302 second=245 amount=-1 +kerning first=274 second=216 amount=-1 +kerning first=270 second=205 amount=-1 +kerning first=370 second=110 amount=-1 +kerning first=74 second=254 amount=-1 +kerning first=362 second=250 amount=-1 +kerning first=257 second=114 amount=-1 +kerning first=1041 second=1097 amount=-1 +kerning first=99 second=115 amount=-1 +kerning first=118 second=46 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=82 second=46 amount=-1 +kerning first=1064 second=1045 amount=-1 +kerning first=204 second=115 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=223 second=46 amount=-1 +kerning first=213 second=302 amount=-1 +kerning first=70 second=370 amount=-1 +kerning first=220 second=335 amount=-1 +kerning first=97 second=101 amount=-1 +kerning first=221 second=114 amount=-1 +kerning first=1047 second=1046 amount=-1 +kerning first=330 second=267 amount=-1 +kerning first=370 second=225 amount=-1 +kerning first=83 second=187 amount=-1 +kerning first=366 second=267 amount=-1 +kerning first=230 second=347 amount=-1 +kerning first=203 second=81 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=352 second=44 amount=-1 +kerning first=1033 second=1055 amount=-1 +kerning first=204 second=273 amount=-1 +kerning first=209 second=296 amount=-1 +kerning first=99 second=273 amount=-1 +kerning first=8218 second=217 amount=-1 +kerning first=264 second=284 amount=-1 +kerning first=289 second=103 amount=-1 +kerning first=254 second=44 amount=-1 +kerning first=290 second=44 amount=-1 +kerning first=218 second=44 amount=-2 +kerning first=1038 second=1098 amount=-1 +kerning first=98 second=287 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=257 second=291 amount=-1 +kerning first=201 second=114 amount=-1 +kerning first=8217 second=117 amount=-1 +kerning first=74 second=72 amount=-1 +kerning first=304 second=317 amount=-1 +kerning first=187 second=355 amount=-1 +kerning first=264 second=282 amount=-1 +kerning first=275 second=287 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=73 second=288 amount=-1 +kerning first=288 second=8250 amount=-1 +kerning first=98 second=8220 amount=-2 +kerning first=258 second=311 amount=-1 +kerning first=80 second=199 amount=-1 +kerning first=347 second=287 amount=-1 +kerning first=1050 second=1089 amount=-1 +kerning first=369 second=245 amount=-1 +kerning first=311 second=287 amount=-1 +kerning first=74 second=278 amount=-1 +kerning first=224 second=8249 amount=-1 +kerning first=1031 second=1118 amount=-1 +kerning first=234 second=291 amount=-1 +kerning first=325 second=352 amount=-1 +kerning first=8222 second=119 amount=-1 +kerning first=347 second=108 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=120 second=44 amount=-1 +kerning first=1059 second=1091 amount=-1 +kerning first=316 second=279 amount=-1 +kerning first=352 second=371 amount=-1 +kerning first=323 second=278 amount=-1 +kerning first=69 second=211 amount=-1 +kerning first=311 second=108 amount=-1 +kerning first=222 second=8218 amount=-1 +kerning first=356 second=187 amount=-1 +kerning first=268 second=116 amount=-1 +kerning first=366 second=8218 amount=-2 +kerning first=344 second=355 amount=-1 +kerning first=71 second=187 amount=-1 +kerning first=209 second=269 amount=-1 +kerning first=267 second=252 amount=-1 +kerning first=233 second=99 amount=-1 +kerning first=213 second=75 amount=-1 +kerning first=118 second=382 amount=-1 +kerning first=229 second=316 amount=-1 +kerning first=362 second=71 amount=-1 +kerning first=193 second=316 amount=-1 +kerning first=103 second=279 amount=-1 +kerning first=248 second=187 amount=-1 +kerning first=223 second=382 amount=-1 +kerning first=1055 second=1098 amount=-1 +kerning first=45 second=357 amount=-1 +kerning first=284 second=187 amount=-1 +kerning first=259 second=382 amount=-1 +kerning first=282 second=211 amount=-1 +kerning first=269 second=99 amount=-1 +kerning first=81 second=8218 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=214 second=65 amount=-1 +kerning first=67 second=279 amount=-1 +kerning first=212 second=187 amount=-1 +kerning first=280 second=371 amount=-1 +kerning first=337 second=316 amount=-1 +kerning first=268 second=380 amount=-1 +kerning first=272 second=196 amount=-1 +kerning first=267 second=248 amount=-1 +kerning first=232 second=380 amount=-1 +kerning first=80 second=8218 amount=-2 +kerning first=80 second=260 amount=-1 +kerning first=231 second=248 amount=-1 +kerning first=364 second=270 amount=-1 +kerning first=304 second=380 amount=-1 +kerning first=86 second=117 amount=-1 +kerning first=187 second=334 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=77 second=44 amount=-1 +kerning first=221 second=260 amount=-1 +kerning first=280 second=202 amount=-1 +kerning first=81 second=202 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=198 second=264 amount=-1 +kerning first=108 second=8220 amount=-1 +kerning first=72 second=8220 amount=-1 +kerning first=201 second=209 amount=-1 +kerning first=213 second=8220 amount=-2 +kerning first=350 second=205 amount=-1 +kerning first=258 second=121 amount=-1 +kerning first=193 second=364 amount=-1 +kerning first=79 second=270 amount=-1 +kerning first=108 second=367 amount=-1 +kerning first=330 second=202 amount=-1 +kerning first=249 second=8220 amount=-1 +kerning first=248 second=345 amount=-1 +kerning first=88 second=364 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=207 second=66 amount=-1 +kerning first=327 second=257 amount=-1 +kerning first=220 second=270 amount=-1 +kerning first=217 second=325 amount=-1 +kerning first=45 second=121 amount=-1 +kerning first=366 second=202 amount=-1 +kerning first=326 second=8217 amount=-2 +kerning first=197 second=121 amount=-1 +kerning first=192 second=108 amount=-1 +kerning first=315 second=364 amount=-1 +kerning first=272 second=82 amount=-1 +kerning first=364 second=351 amount=-1 +kerning first=1043 second=1073 amount=-1 +kerning first=1051 second=1047 amount=-1 +kerning first=89 second=193 amount=-1 +kerning first=279 second=277 amount=-1 +kerning first=207 second=364 amount=-1 +kerning first=65 second=104 amount=-1 +kerning first=323 second=338 amount=-1 +kerning first=207 second=277 amount=-1 +kerning first=254 second=8217 amount=-2 +kerning first=287 second=251 amount=-1 +kerning first=8222 second=212 amount=-1 +kerning first=66 second=364 amount=-1 +kerning first=1038 second=1060 amount=-1 +kerning first=370 second=273 amount=-1 +kerning first=201 second=355 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=374 second=193 amount=-1 +kerning first=79 second=351 amount=-1 +kerning first=298 second=273 amount=-1 +kerning first=199 second=8221 amount=-1 +kerning first=262 second=273 amount=-1 +kerning first=74 second=338 amount=-1 +kerning first=72 second=69 amount=-1 +kerning first=271 second=8221 amount=-1 +kerning first=1055 second=1064 amount=-1 +kerning first=282 second=334 amount=-1 +kerning first=307 second=8221 amount=-1 +kerning first=327 second=78 amount=-1 +kerning first=220 second=351 amount=-1 +kerning first=1048 second=1045 amount=-1 +kerning first=85 second=273 amount=-1 +kerning first=379 second=8221 amount=-1 +kerning first=200 second=82 amount=-1 +kerning first=117 second=99 amount=-1 +kerning first=219 second=78 amount=-1 +kerning first=75 second=117 amount=-1 +kerning first=219 second=171 amount=-2 +kerning first=251 second=8249 amount=-1 +kerning first=255 second=171 amount=-1 +kerning first=67 second=229 amount=-1 +kerning first=255 second=98 amount=-1 +kerning first=311 second=314 amount=-1 +kerning first=263 second=242 amount=-1 +kerning first=269 second=108 amount=-1 +kerning first=214 second=8220 amount=-2 +kerning first=70 second=104 amount=-1 +kerning first=1071 second=1064 amount=-1 +kerning first=363 second=171 amount=-1 +kerning first=226 second=333 amount=-1 +kerning first=286 second=282 amount=-1 +kerning first=85 second=333 amount=-1 +kerning first=78 second=78 amount=-1 +kerning first=214 second=282 amount=-1 +kerning first=302 second=100 amount=-1 +kerning first=221 second=233 amount=-1 +kerning first=266 second=100 amount=-1 +kerning first=80 second=233 amount=-1 +kerning first=77 second=8217 amount=-1 +kerning first=374 second=100 amount=-1 +kerning first=70 second=357 amount=-1 +kerning first=73 second=282 amount=-1 +kerning first=1071 second=1039 amount=-1 +kerning first=283 second=104 amount=-1 +kerning first=365 second=233 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=264 second=325 amount=-1 +kerning first=257 second=233 amount=-1 +kerning first=315 second=87 amount=-1 +kerning first=282 second=298 amount=-1 +kerning first=217 second=330 amount=-1 +kerning first=194 second=220 amount=-1 +kerning first=264 second=103 amount=-1 +kerning first=302 second=220 amount=-1 +kerning first=68 second=356 amount=-1 +kerning first=266 second=220 amount=-1 +kerning first=298 second=246 amount=-1 +kerning first=311 second=103 amount=-1 +kerning first=262 second=246 amount=-1 +kerning first=89 second=100 amount=-1 +kerning first=79 second=362 amount=-1 +kerning first=89 second=263 amount=-1 +kerning first=226 second=246 amount=-1 +kerning first=230 second=100 amount=-1 +kerning first=218 second=109 amount=-1 +kerning first=1051 second=1074 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=85 second=246 amount=-1 +kerning first=98 second=103 amount=-1 +kerning first=233 second=365 amount=-1 +kerning first=244 second=8218 amount=-1 +kerning first=269 second=224 amount=-1 +kerning first=269 second=365 amount=-1 +kerning first=298 second=333 amount=-1 +kerning first=362 second=109 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=334 second=203 amount=-1 +kerning first=1070 second=1113 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=240 second=289 amount=-1 +kerning first=338 second=220 amount=-1 +kerning first=1069 second=1024 amount=-1 +kerning first=1056 second=1046 amount=-1 +kerning first=352 second=8218 amount=-1 +kerning first=224 second=281 amount=-1 +kerning first=368 second=211 amount=-1 +kerning first=275 second=347 amount=-1 +kerning first=122 second=8220 amount=-1 +kerning first=68 second=85 amount=-1 +kerning first=203 second=371 amount=-1 +kerning first=86 second=8220 amount=-1 +kerning first=296 second=281 amount=-1 +kerning first=268 second=315 amount=-1 +kerning first=242 second=120 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=304 second=315 amount=-1 +kerning first=368 second=281 amount=-1 +kerning first=302 second=357 amount=-1 +kerning first=8218 second=216 amount=-1 +kerning first=77 second=109 amount=-1 +kerning first=103 second=8218 amount=-1 +kerning first=263 second=8220 amount=-2 +kerning first=296 second=211 amount=-1 +kerning first=67 second=8218 amount=-1 +kerning first=1040 second=1095 amount=-1 +kerning first=368 second=338 amount=-1 +kerning first=335 second=8220 amount=-2 +kerning first=67 second=116 amount=-1 +kerning first=367 second=339 amount=-1 +kerning first=272 second=202 amount=-1 +kerning first=211 second=77 amount=-1 +kerning first=333 second=120 amount=-1 +kerning first=364 second=264 amount=-1 +kerning first=325 second=100 amount=-1 +kerning first=1039 second=1083 amount=-1 +kerning first=259 second=339 amount=-1 +kerning first=233 second=111 amount=-1 +kerning first=1042 second=1088 amount=-1 +kerning first=69 second=298 amount=-1 +kerning first=317 second=356 amount=-1 +kerning first=210 second=298 amount=-1 +kerning first=220 second=264 amount=-1 +kerning first=280 second=219 amount=-1 +kerning first=108 second=232 amount=-1 +kerning first=369 second=8249 amount=-1 +kerning first=210 second=368 amount=-1 +kerning first=1071 second=1060 amount=-1 +kerning first=1050 second=1105 amount=-1 +kerning first=112 second=8250 amount=-1 +kerning first=203 second=76 amount=-1 +kerning first=67 second=219 amount=-1 +kerning first=334 second=89 amount=-1 +kerning first=101 second=335 amount=-1 +kerning first=217 second=357 amount=-1 +kerning first=325 second=357 amount=-1 +kerning first=249 second=232 amount=-1 +kerning first=206 second=335 amount=-1 +kerning first=69 second=368 amount=-1 +kerning first=289 second=357 amount=-1 +kerning first=327 second=241 amount=-1 +kerning first=354 second=271 amount=-1 +kerning first=1064 second=1067 amount=-1 +kerning first=1042 second=1044 amount=-1 +kerning first=291 second=241 amount=-1 +kerning first=1052 second=1086 amount=-1 +kerning first=8217 second=242 amount=-1 +kerning first=317 second=85 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=207 second=234 amount=-1 +kerning first=45 second=262 amount=-1 +kerning first=120 second=8249 amount=-1 +kerning first=282 second=368 amount=-1 +kerning first=338 second=344 amount=-1 +kerning first=365 second=8249 amount=-1 +kerning first=302 second=344 amount=-1 +kerning first=209 second=85 amount=-1 +kerning first=225 second=8249 amount=-1 +kerning first=261 second=8249 amount=-1 +kerning first=1059 second=1075 amount=-1 +kerning first=313 second=366 amount=-1 +kerning first=78 second=378 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=323 second=67 amount=-1 +kerning first=263 second=275 amount=-1 +kerning first=227 second=275 amount=-1 +kerning first=280 second=298 amount=-1 +kerning first=219 second=241 amount=-1 +kerning first=219 second=345 amount=-1 +kerning first=205 second=366 amount=-1 +kerning first=86 second=275 amount=-1 +kerning first=1027 second=1081 amount=-1 +kerning first=78 second=241 amount=-1 +kerning first=187 second=213 amount=-1 +kerning first=74 second=67 amount=-1 +kerning first=362 second=229 amount=-1 +kerning first=210 second=195 amount=-1 +kerning first=288 second=280 amount=-1 +kerning first=345 second=225 amount=-1 +kerning first=72 second=73 amount=-1 +kerning first=1047 second=1084 amount=-1 +kerning first=316 second=267 amount=-1 +kerning first=71 second=46 amount=-1 +kerning first=220 second=80 amount=-1 +kerning first=221 second=363 amount=-1 +kerning first=1046 second=1077 amount=-1 +kerning first=272 second=353 amount=-1 +kerning first=72 second=216 amount=-1 +kerning first=279 second=250 amount=-1 +kerning first=107 second=46 amount=-1 +kerning first=79 second=80 amount=-1 +kerning first=287 second=311 amount=-1 +kerning first=284 second=317 amount=-1 +kerning first=70 second=375 amount=-1 +kerning first=280 second=116 amount=-1 +kerning first=204 second=213 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=262 second=111 amount=-1 +kerning first=1042 second=1071 amount=-1 +kerning first=286 second=201 amount=-1 +kerning first=87 second=244 amount=-1 +kerning first=1089 second=1093 amount=-1 +kerning first=314 second=171 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=214 second=201 amount=-1 +kerning first=1055 second=1062 amount=-1 +kerning first=271 second=113 amount=-1 +kerning first=228 second=244 amount=-1 +kerning first=307 second=113 amount=-1 +kerning first=333 second=8222 amount=-1 +kerning first=220 second=378 amount=-1 +kerning first=264 second=244 amount=-1 +kerning first=199 second=113 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=235 second=113 amount=-1 +kerning first=8218 second=249 amount=-1 +kerning first=73 second=201 amount=-1 +kerning first=8250 second=362 amount=-1 +kerning first=270 second=204 amount=-1 +kerning first=364 second=378 amount=-1 +kerning first=120 second=8222 amount=-1 +kerning first=1034 second=1063 amount=-2 +kerning first=304 second=345 amount=-1 +kerning first=198 second=204 amount=-1 +kerning first=84 second=8222 amount=-1 +kerning first=207 second=207 amount=-1 +kerning first=362 second=256 amount=-1 +kerning first=201 second=268 amount=-1 +kerning first=310 second=210 amount=-1 +kerning first=258 second=262 amount=-1 +kerning first=366 second=262 amount=-1 +kerning first=1064 second=1050 amount=-1 +kerning first=330 second=262 amount=-1 +kerning first=274 second=210 amount=-1 +kerning first=218 second=256 amount=-1 +kerning first=1036 second=1079 amount=-1 +kerning first=83 second=203 amount=-1 +kerning first=202 second=210 amount=-1 +kerning first=1062 second=1096 amount=-1 +kerning first=45 second=332 amount=-1 +kerning first=314 second=335 amount=-1 +kerning first=330 second=332 amount=-1 +kerning first=8222 second=255 amount=-1 +kerning first=205 second=122 amount=-1 +kerning first=330 second=325 amount=-1 +kerning first=219 second=198 amount=-1 +kerning first=8250 second=118 amount=-1 +kerning first=258 second=332 amount=-1 +kerning first=100 second=122 amount=-1 +kerning first=302 second=73 amount=-1 +kerning first=266 second=73 amount=-1 +kerning first=1048 second=1053 amount=-1 +kerning first=352 second=219 amount=-1 +kerning first=338 second=73 amount=-1 +kerning first=366 second=332 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=89 second=196 amount=-1 +kerning first=206 second=200 amount=-1 +kerning first=327 second=279 amount=-1 +kerning first=221 second=336 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=201 second=187 amount=-1 +kerning first=363 second=279 amount=-1 +kerning first=72 second=362 amount=-1 +kerning first=213 second=362 amount=-1 +kerning first=258 second=8250 amount=-1 +kerning first=288 second=323 amount=-1 +kerning first=222 second=8250 amount=-1 +kerning first=325 second=344 amount=-1 +kerning first=1039 second=1045 amount=-1 +kerning first=275 second=244 amount=-1 +kerning first=219 second=371 amount=-1 +kerning first=368 second=75 amount=-1 +kerning first=73 second=266 amount=-1 +kerning first=81 second=8250 amount=-1 +kerning first=1031 second=1071 amount=-1 +kerning first=296 second=75 amount=-1 +kerning first=207 second=71 amount=-1 +kerning first=209 second=288 amount=-1 +kerning first=192 second=314 amount=-1 +kerning first=291 second=279 amount=-1 +kerning first=350 second=200 amount=-1 +kerning first=1036 second=1119 amount=-1 +kerning first=278 second=200 amount=-1 +kerning first=205 second=79 amount=-1 +kerning first=218 second=66 amount=-1 +kerning first=1069 second=1036 amount=-1 +kerning first=264 second=314 amount=-1 +kerning first=220 second=248 amount=-1 +kerning first=1033 second=1036 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=228 second=314 amount=-1 +kerning first=74 second=110 amount=-1 +kerning first=77 second=66 amount=-1 +kerning first=8222 second=228 amount=-1 +kerning first=310 second=367 amount=-1 +kerning first=274 second=367 amount=-1 +kerning first=344 second=218 amount=-1 +kerning first=1055 second=1030 amount=-1 +kerning first=287 second=110 amount=-1 +kerning first=104 second=242 amount=-1 +kerning first=346 second=367 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=323 second=110 amount=-1 +kerning first=284 second=274 amount=-1 +kerning first=212 second=76 amount=-1 +kerning first=202 second=367 amount=-1 +kerning first=243 second=380 amount=-1 +kerning first=362 second=66 amount=-1 +kerning first=67 second=257 amount=-1 +kerning first=207 second=380 amount=-1 +kerning first=212 second=274 amount=-1 +kerning first=335 second=318 amount=-1 +kerning first=86 second=101 amount=-1 +kerning first=290 second=66 amount=-1 +kerning first=1056 second=1049 amount=-1 +kerning first=279 second=380 amount=-1 +kerning first=201 second=252 amount=-1 +kerning first=327 second=344 amount=-1 +kerning first=1055 second=1042 amount=-1 +kerning first=8218 second=81 amount=-1 +kerning first=263 second=101 amount=-1 +kerning first=250 second=8249 amount=-1 +kerning first=196 second=114 amount=-1 +kerning first=227 second=101 amount=-1 +kerning first=286 second=8249 amount=-1 +kerning first=1049 second=1098 amount=-1 +kerning first=67 second=284 amount=-1 +kerning first=85 second=315 amount=-1 +kerning first=316 second=283 amount=-1 +kerning first=259 second=231 amount=-1 +kerning first=1036 second=1091 amount=-1 +kerning first=118 second=106 amount=-1 +kerning first=112 second=291 amount=-1 +kerning first=78 second=214 amount=-1 +kerning first=203 second=217 amount=-1 +kerning first=1078 second=1077 amount=-1 +kerning first=223 second=106 amount=-1 +kerning first=198 second=296 amount=-1 +kerning first=327 second=214 amount=-1 +kerning first=219 second=344 amount=-1 +kerning first=200 second=310 amount=-1 +kerning first=219 second=214 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=366 second=330 amount=-1 +kerning first=339 second=243 amount=-1 +kerning first=289 second=249 amount=-1 +kerning first=233 second=235 amount=-1 +kerning first=363 second=8221 amount=-1 +kerning first=269 second=235 amount=-1 +kerning first=86 second=345 amount=-1 +kerning first=305 second=235 amount=-1 +kerning first=97 second=275 amount=-1 +kerning first=227 second=345 amount=-1 +kerning first=228 second=287 amount=-1 +kerning first=217 second=249 amount=-1 +kerning first=263 second=345 amount=-1 +kerning first=335 second=345 amount=-1 +kerning first=321 second=362 amount=-1 +kerning first=8217 second=103 amount=-1 +kerning first=1033 second=1063 amount=-2 +kerning first=1091 second=1080 amount=-1 +kerning first=1055 second=1080 amount=-1 +kerning first=280 second=284 amount=-1 +kerning first=80 second=66 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=267 second=243 amount=-1 +kerning first=1069 second=1063 amount=-1 +kerning first=80 second=336 amount=-1 +kerning first=84 second=353 amount=-1 +kerning first=199 second=97 amount=-1 +kerning first=8220 second=198 amount=-2 +kerning first=214 second=304 amount=-1 +kerning first=1058 second=1079 amount=-1 +kerning first=218 second=337 amount=-1 +kerning first=204 second=278 amount=-1 +kerning first=330 second=370 amount=-1 +kerning first=104 second=291 amount=-1 +kerning first=209 second=199 amount=-1 +kerning first=366 second=370 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=77 second=337 amount=-1 +kerning first=263 second=107 amount=-1 +kerning first=73 second=304 amount=-1 +kerning first=78 second=100 amount=-1 +kerning first=1034 second=1043 amount=-1 +kerning first=364 second=313 amount=-1 +kerning first=211 second=344 amount=-1 +kerning first=275 second=365 amount=-1 +kerning first=257 second=187 amount=-1 +kerning first=234 second=269 amount=-1 +kerning first=79 second=221 amount=-1 +kerning first=305 second=8218 amount=-1 +kerning first=362 second=337 amount=-1 +kerning first=1066 second=1037 amount=-1 +kerning first=280 second=278 amount=-1 +kerning first=269 second=8218 amount=-1 +kerning first=287 second=283 amount=-1 +kerning first=326 second=337 amount=-1 +kerning first=1043 second=1116 amount=-1 +kerning first=233 second=8218 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=207 second=109 amount=-1 +kerning first=274 second=8220 amount=-1 +kerning first=204 second=72 amount=-1 +kerning first=79 second=313 amount=-1 +kerning first=346 second=8220 amount=-1 +kerning first=262 second=203 amount=-1 +kerning first=70 second=267 amount=-1 +kerning first=364 second=218 amount=-1 +kerning first=310 second=8220 amount=-1 +kerning first=298 second=203 amount=-1 +kerning first=356 second=111 amount=-1 +kerning first=382 second=8220 amount=-1 +kerning first=1060 second=1055 amount=-1 +kerning first=85 second=203 amount=-1 +kerning first=328 second=8220 amount=-2 +kerning first=283 second=267 amount=-1 +kerning first=81 second=370 amount=-1 +kerning first=207 second=315 amount=-1 +kerning first=230 second=263 amount=-1 +kerning first=1055 second=1107 amount=-1 +kerning first=266 second=263 amount=-1 +kerning first=8217 second=101 amount=-1 +kerning first=302 second=263 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=1104 second=1094 amount=-1 +kerning first=106 second=267 amount=-1 +kerning first=346 second=371 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=97 second=8220 amount=-2 +kerning first=268 second=114 amount=-1 +kerning first=374 second=263 amount=-1 +kerning first=232 second=114 amount=-1 +kerning first=1052 second=1097 amount=-1 +kerning first=268 second=212 amount=-1 +kerning first=202 second=8220 amount=-1 +kerning first=8218 second=108 amount=-1 +kerning first=304 second=212 amount=-1 +kerning first=1044 second=1085 amount=-1 +kerning first=254 second=46 amount=-1 +kerning first=202 second=69 amount=-1 +kerning first=362 second=364 amount=-1 +kerning first=274 second=69 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=290 second=364 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=99 second=251 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=240 second=44 amount=-1 +kerning first=218 second=364 amount=-1 +kerning first=102 second=44 amount=-1 +kerning first=1030 second=1064 amount=-1 +kerning first=291 second=103 amount=-1 +kerning first=1028 second=1061 amount=-1 +kerning first=352 second=78 amount=-1 +kerning first=200 second=218 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=1066 second=1064 amount=-1 +kerning first=366 second=302 amount=-1 +kerning first=74 second=273 amount=-1 +kerning first=279 second=44 amount=-1 +kerning first=198 second=334 amount=-1 +kerning first=374 second=351 amount=-1 +kerning first=364 second=248 amount=-1 +kerning first=243 second=44 amount=-1 +kerning first=8217 second=345 amount=-1 +kerning first=280 second=78 amount=-1 +kerning first=197 second=370 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=330 second=99 amount=-1 +kerning first=252 second=242 amount=-1 +kerning first=370 second=230 amount=-1 +kerning first=366 second=99 amount=-1 +kerning first=82 second=199 amount=-1 +kerning first=262 second=230 amount=-1 +kerning first=203 second=282 amount=-1 +kerning first=1071 second=1092 amount=-1 +kerning first=264 second=352 amount=-1 +kerning first=86 second=367 amount=-1 +kerning first=324 second=242 amount=-1 +kerning first=298 second=230 amount=-1 +kerning first=85 second=230 amount=-1 +kerning first=196 second=87 amount=-1 +kerning first=212 second=84 amount=-1 +kerning first=368 second=346 amount=-1 +kerning first=353 second=291 amount=-1 +kerning first=296 second=346 amount=-1 +kerning first=1034 second=1031 amount=-1 +kerning first=325 second=44 amount=-1 +kerning first=281 second=291 amount=-1 +kerning first=105 second=233 amount=-1 +kerning first=245 second=291 amount=-1 +kerning first=171 second=217 amount=-1 +kerning first=364 second=346 amount=-1 +kerning first=8217 second=214 amount=-1 +kerning first=1049 second=1117 amount=-1 +kerning first=67 second=81 amount=-1 +kerning first=1058 second=1107 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=220 second=346 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=277 second=337 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=241 second=337 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=228 second=245 amount=-1 +kerning first=205 second=337 amount=-1 +kerning first=199 second=288 amount=-1 +kerning first=195 second=84 amount=-1 +kerning first=1043 second=1098 amount=-1 +kerning first=362 second=334 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=280 second=81 amount=-1 +kerning first=218 second=187 amount=-2 +kerning first=220 second=99 amount=-1 +kerning first=254 second=187 amount=-1 +kerning first=1078 second=1119 amount=-1 +kerning first=332 second=8221 amount=-2 +kerning first=103 second=328 amount=-1 +kerning first=275 second=245 amount=-1 +kerning first=1056 second=1095 amount=-1 +kerning first=362 second=187 amount=-2 +kerning first=8217 second=281 amount=-1 +kerning first=1057 second=1061 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=255 second=8218 amount=-1 +kerning first=290 second=187 amount=-1 +kerning first=266 second=352 amount=-1 +kerning first=302 second=352 amount=-1 +kerning first=328 second=99 amount=-1 +kerning first=366 second=241 amount=-1 +kerning first=220 second=279 amount=-1 +kerning first=194 second=105 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=328 second=279 amount=-1 +kerning first=117 second=101 amount=-1 +kerning first=77 second=187 amount=-1 +kerning first=1071 second=1104 amount=-1 +kerning first=364 second=279 amount=-1 +kerning first=270 second=75 amount=-1 +kerning first=212 second=278 amount=-1 +kerning first=327 second=66 amount=-1 +kerning first=323 second=209 amount=-1 +kerning first=101 second=316 amount=-1 +kerning first=196 second=364 amount=-1 +kerning first=67 second=261 amount=-1 +kerning first=65 second=316 amount=-1 +kerning first=1077 second=1096 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=219 second=66 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=353 second=187 amount=-1 +kerning first=235 second=108 amount=-1 +kerning first=350 second=69 amount=-1 +kerning first=207 second=202 amount=-1 +kerning first=242 second=316 amount=-1 +kerning first=1059 second=1073 amount=-1 +kerning first=330 second=275 amount=-1 +kerning first=291 second=367 amount=-1 +kerning first=78 second=66 amount=-1 +kerning first=74 second=209 amount=-1 +kerning first=1059 second=1086 amount=-1 +kerning first=264 second=206 amount=-1 +kerning first=199 second=108 amount=-1 +kerning first=314 second=316 amount=-1 +kerning first=206 second=69 amount=-1 +kerning first=266 second=205 amount=-1 +kerning first=325 second=368 amount=-1 +kerning first=278 second=69 amount=-1 +kerning first=345 second=8218 amount=-1 +kerning first=354 second=273 amount=-1 +kerning first=304 second=364 amount=-1 +kerning first=213 second=197 amount=-1 +kerning first=302 second=205 amount=-1 +kerning first=217 second=368 amount=-1 +kerning first=268 second=364 amount=-1 +kerning first=87 second=193 amount=-1 +kerning first=338 second=205 amount=-1 +kerning first=283 second=252 amount=-1 +kerning first=222 second=44 amount=-1 +kerning first=325 second=355 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=71 second=218 amount=-1 +kerning first=289 second=355 amount=-1 +kerning first=374 second=249 amount=-1 +kerning first=231 second=8249 amount=-1 +kerning first=370 second=248 amount=-1 +kerning first=366 second=44 amount=-2 +kerning first=267 second=8249 amount=-1 +kerning first=203 second=325 amount=-1 +kerning first=375 second=8249 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=219 second=120 amount=-1 +kerning first=232 second=117 amount=-1 +kerning first=277 second=279 amount=-1 +kerning first=298 second=248 amount=-1 +kerning first=196 second=117 amount=-1 +kerning first=1044 second=1077 amount=-1 +kerning first=277 second=314 amount=-1 +kerning first=262 second=248 amount=-1 +kerning first=1091 second=1116 amount=-1 +kerning first=235 second=122 amount=-1 +kerning first=207 second=282 amount=-1 +kerning first=80 second=78 amount=-1 +kerning first=304 second=113 amount=-1 +kerning first=284 second=218 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=8217 second=361 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=212 second=218 amount=-1 +kerning first=85 second=248 amount=-1 +kerning first=78 second=220 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=362 second=100 amount=-1 +kerning first=220 second=333 amount=-1 +kerning first=327 second=362 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=356 second=339 amount=-1 +kerning first=328 second=333 amount=-1 +kerning first=363 second=246 amount=-1 +kerning first=205 second=350 amount=-1 +kerning first=110 second=289 amount=-1 +kerning first=364 second=333 amount=-1 +kerning first=327 second=246 amount=-1 +kerning first=1039 second=1048 amount=-1 +kerning first=244 second=382 amount=-1 +kerning first=251 second=289 amount=-1 +kerning first=277 second=103 amount=-1 +kerning first=241 second=103 amount=-1 +kerning first=1042 second=1065 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=219 second=246 amount=-1 +kerning first=287 second=289 amount=-1 +kerning first=231 second=171 amount=-1 +kerning first=100 second=103 amount=-1 +kerning first=267 second=171 amount=-1 +kerning first=334 second=194 amount=-1 +kerning first=78 second=246 amount=-1 +kerning first=219 second=220 amount=-1 +kerning first=218 second=100 amount=-1 +kerning first=1047 second=1068 amount=-1 +kerning first=370 second=194 amount=-1 +kerning first=327 second=220 amount=-1 +kerning first=375 second=171 amount=-1 +kerning first=101 second=99 amount=-1 +kerning first=323 second=109 amount=-1 +kerning first=263 second=307 amount=-1 +kerning first=204 second=211 amount=-1 +kerning first=248 second=120 amount=-1 +kerning first=204 second=304 amount=-1 +kerning first=193 second=85 amount=-1 +kerning first=203 second=338 amount=-1 +kerning first=85 second=97 amount=-1 +kerning first=257 second=245 amount=-1 +kerning first=291 second=120 amount=-1 +kerning first=89 second=115 amount=-1 +kerning first=203 second=200 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=193 second=332 amount=-1 +kerning first=327 second=313 amount=-1 +kerning first=1069 second=1025 amount=-1 +kerning first=1033 second=1025 amount=-1 +kerning first=88 second=332 amount=-1 +kerning first=207 second=218 amount=-1 +kerning first=8217 second=335 amount=-1 +kerning first=266 second=298 amount=-1 +kerning first=1068 second=1059 amount=-2 +kerning first=1078 second=1117 amount=-1 +kerning first=272 second=347 amount=-1 +kerning first=338 second=298 amount=-1 +kerning first=264 second=8250 amount=-1 +kerning first=74 second=109 amount=-1 +kerning first=219 second=313 amount=-1 +kerning first=117 second=45 amount=-1 +kerning first=302 second=298 amount=-1 +kerning first=1038 second=1108 amount=-1 +kerning first=187 second=324 amount=-1 +kerning first=296 second=357 amount=-1 +kerning first=70 second=338 amount=-1 +kerning first=1118 second=1076 amount=-1 +kerning first=229 second=8250 amount=-1 +kerning first=368 second=357 amount=-1 +kerning first=1054 second=1083 amount=-1 +kerning first=282 second=219 amount=-1 +kerning first=330 second=111 amount=-1 +kerning first=193 second=8250 amount=-1 +kerning first=1046 second=1076 amount=-1 +kerning first=275 second=271 amount=-1 +kerning first=78 second=313 amount=-1 +kerning first=310 second=212 amount=-1 +kerning first=214 second=323 amount=-1 +kerning first=210 second=219 amount=-1 +kerning first=214 second=76 amount=-1 +kerning first=88 second=8250 amount=-1 +kerning first=1056 second=1041 amount=-1 +kerning first=1062 second=1118 amount=-1 +kerning first=302 second=268 amount=-1 +kerning first=73 second=323 amount=-1 +kerning first=202 second=212 amount=-1 +kerning first=280 second=315 amount=-1 +kerning first=275 second=8217 amount=-2 +kerning first=69 second=219 amount=-1 +kerning first=73 second=76 amount=-1 +kerning first=286 second=323 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=347 second=8217 amount=-2 +kerning first=206 second=262 amount=-1 +kerning first=101 second=113 amount=-1 +kerning first=1030 second=1075 amount=-1 +kerning first=98 second=8217 amount=-2 +kerning first=192 second=119 amount=-1 +kerning first=117 second=111 amount=-1 +kerning first=278 second=262 amount=-1 +kerning first=356 second=46 amount=-1 +kerning first=352 second=315 amount=-1 +kerning first=203 second=8217 amount=-1 +kerning first=262 second=68 amount=-1 +kerning first=74 second=263 amount=-1 +kerning first=77 second=280 amount=-1 +kerning first=304 second=204 amount=-1 +kerning first=110 second=263 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=268 second=204 amount=-1 +kerning first=80 second=366 amount=-1 +kerning first=298 second=68 amount=-1 +kerning first=205 second=368 amount=-1 +kerning first=85 second=68 amount=-1 +kerning first=251 second=263 amount=-1 +kerning first=287 second=263 amount=-1 +kerning first=218 second=280 amount=-1 +kerning first=289 second=314 amount=-1 +kerning first=323 second=263 amount=-1 +kerning first=323 second=330 amount=-1 +kerning first=253 second=314 amount=-1 +kerning first=72 second=110 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=290 second=280 amount=-1 +kerning first=325 second=67 amount=-1 +kerning first=1065 second=1105 amount=-1 +kerning first=8218 second=232 amount=-1 +kerning first=1065 second=1028 amount=-1 +kerning first=350 second=344 amount=-1 +kerning first=1027 second=1084 amount=-1 +kerning first=1066 second=1101 amount=-1 +kerning first=362 second=280 amount=-1 +kerning first=1069 second=1046 amount=-1 +kerning first=1053 second=1024 amount=-1 +kerning first=370 second=68 amount=-1 +kerning first=1033 second=1101 amount=-1 +kerning first=251 second=103 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=219 second=192 amount=-1 +kerning first=72 second=357 amount=-1 +kerning first=323 second=70 amount=-1 +kerning first=77 second=46 amount=-1 +kerning first=218 second=46 amount=-2 +kerning first=74 second=70 amount=-1 +kerning first=259 second=378 amount=-1 +kerning first=290 second=46 amount=-1 +kerning first=223 second=378 amount=-1 +kerning first=368 second=195 amount=-1 +kerning first=327 second=274 amount=-1 +kerning first=327 second=46 amount=-1 +kerning first=78 second=207 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=1055 second=1075 amount=-1 +kerning first=87 second=8217 amount=-1 +kerning first=217 second=262 amount=-1 +kerning first=324 second=101 amount=-1 +kerning first=270 second=201 amount=-1 +kerning first=192 second=8217 amount=-2 +kerning first=1062 second=1101 amount=-1 +kerning first=228 second=8217 amount=-2 +kerning first=198 second=201 amount=-1 +kerning first=1050 second=1072 amount=-1 +kerning first=8218 second=121 amount=-1 +kerning first=198 second=216 amount=-1 +kerning first=1050 second=1087 amount=-1 +kerning first=99 second=250 amount=-1 +kerning first=70 second=345 amount=-1 +kerning first=316 second=369 amount=-1 +kerning first=264 second=267 amount=-1 +kerning first=280 second=369 amount=-1 +kerning first=114 second=259 amount=-1 +kerning first=69 second=366 amount=-1 +kerning first=117 second=246 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=1048 second=1089 amount=-1 +kerning first=80 second=204 amount=-1 +kerning first=234 second=116 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=118 second=311 amount=-1 +kerning first=121 second=287 amount=-1 +kerning first=1062 second=1105 amount=-1 +kerning first=283 second=345 amount=-1 +kerning first=327 second=259 amount=-1 +kerning first=287 second=122 amount=-1 +kerning first=70 second=212 amount=-1 +kerning first=1038 second=1054 amount=-1 +kerning first=219 second=259 amount=-1 +kerning first=323 second=122 amount=-1 +kerning first=231 second=235 amount=-1 +kerning first=1065 second=1096 amount=-1 +kerning first=219 second=207 amount=-1 +kerning first=221 second=244 amount=-1 +kerning first=226 second=287 amount=-1 +kerning first=282 second=366 amount=-1 +kerning first=264 second=67 amount=-1 +kerning first=73 second=271 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=198 second=116 amount=-1 +kerning first=210 second=366 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=268 second=264 amount=-1 +kerning first=204 second=83 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=204 second=317 amount=-1 +kerning first=87 second=67 amount=-1 +kerning first=337 second=8250 amount=-1 +kerning first=268 second=336 amount=-1 +kerning first=324 second=281 amount=-1 +kerning first=205 second=244 amount=-1 +kerning first=241 second=244 amount=-1 +kerning first=242 second=46 amount=-1 +kerning first=121 second=8220 amount=-2 +kerning first=104 second=171 amount=-1 +kerning first=277 second=244 amount=-1 +kerning first=1056 second=1056 amount=-1 +kerning first=1062 second=1090 amount=-1 +kerning first=70 second=347 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=262 second=8220 amount=-1 +kerning first=8218 second=119 amount=-1 +kerning first=231 second=277 amount=-1 +kerning first=344 second=213 amount=-1 +kerning first=70 second=380 amount=-1 +kerning first=366 second=198 amount=-1 +kerning first=85 second=235 amount=-1 +kerning first=334 second=356 amount=-1 +kerning first=284 second=77 amount=-1 +kerning first=73 second=269 amount=-1 +kerning first=339 second=277 amount=-1 +kerning first=212 second=77 amount=-1 +kerning first=272 second=296 amount=-1 +kerning first=226 second=235 amount=-1 +kerning first=71 second=77 amount=-1 +kerning first=267 second=277 amount=-1 +kerning first=262 second=235 amount=-1 +kerning first=1065 second=1081 amount=-1 +kerning first=250 second=269 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=1089 second=1078 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=187 second=296 amount=-1 +kerning first=264 second=286 amount=-1 +kerning first=87 second=65 amount=-1 +kerning first=206 second=82 amount=-1 +kerning first=1047 second=1094 amount=-1 +kerning first=1053 second=1065 amount=-1 +kerning first=356 second=231 amount=-1 +kerning first=118 second=363 amount=-1 +kerning first=278 second=82 amount=-1 +kerning first=374 second=79 amount=-1 +kerning first=219 second=274 amount=-1 +kerning first=187 second=363 amount=-1 +kerning first=87 second=286 amount=-1 +kerning first=304 second=351 amount=-1 +kerning first=268 second=351 amount=-1 +kerning first=73 second=338 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=232 second=351 amount=-1 +kerning first=1050 second=1085 amount=-1 +kerning first=210 second=77 amount=-1 +kerning first=355 second=347 amount=-1 +kerning first=266 second=79 amount=-1 +kerning first=78 second=274 amount=-1 +kerning first=266 second=337 amount=-1 +kerning first=302 second=79 amount=-1 +kerning first=283 second=347 amount=-1 +kerning first=338 second=79 amount=-1 +kerning first=100 second=244 amount=-1 +kerning first=217 second=260 amount=-1 +kerning first=72 second=290 amount=-1 +kerning first=1064 second=1042 amount=-1 +kerning first=282 second=80 amount=-1 +kerning first=250 second=279 amount=-1 +kerning first=234 second=114 amount=-1 +kerning first=219 second=261 amount=-1 +kerning first=8217 second=227 amount=-1 +kerning first=210 second=80 amount=-1 +kerning first=327 second=205 amount=-1 +kerning first=316 second=367 amount=-1 +kerning first=327 second=261 amount=-1 +kerning first=8218 second=67 amount=-1 +kerning first=338 second=66 amount=-1 +kerning first=280 second=367 amount=-1 +kerning first=73 second=217 amount=-1 +kerning first=352 second=70 amount=-1 +kerning first=302 second=66 amount=-1 +kerning first=72 second=344 amount=-1 +kerning first=266 second=66 amount=-1 +kerning first=198 second=114 amount=-1 +kerning first=214 second=217 amount=-1 +kerning first=77 second=115 amount=-1 +kerning first=103 second=367 amount=-1 +kerning first=78 second=205 amount=-1 +kerning first=286 second=217 amount=-1 +kerning first=66 second=362 amount=-1 +kerning first=344 second=357 amount=-1 +kerning first=274 second=251 amount=-1 +kerning first=207 second=310 amount=-1 +kerning first=202 second=251 amount=-1 +kerning first=374 second=284 amount=-1 +kerning first=73 second=284 amount=-1 +kerning first=69 second=80 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=362 second=209 amount=-1 +kerning first=310 second=251 amount=-1 +kerning first=205 second=333 amount=-1 +kerning first=346 second=251 amount=-1 +kerning first=219 second=205 amount=-1 +kerning first=275 second=106 amount=-1 +kerning first=298 second=235 amount=-1 +kerning first=119 second=249 amount=-1 +kerning first=366 second=252 amount=-1 +kerning first=100 second=242 amount=-1 +kerning first=202 second=266 amount=-1 +kerning first=370 second=235 amount=-1 +kerning first=310 second=266 amount=-1 +kerning first=274 second=266 amount=-1 +kerning first=98 second=106 amount=-1 +kerning first=241 second=242 amount=-1 +kerning first=277 second=242 amount=-1 +kerning first=117 second=267 amount=-1 +kerning first=272 second=200 amount=-1 +kerning first=205 second=242 amount=-1 +kerning first=83 second=249 amount=-1 +kerning first=232 second=263 amount=-1 +kerning first=200 second=200 amount=-1 +kerning first=115 second=45 amount=-1 +kerning first=45 second=252 amount=-1 +kerning first=305 second=8220 amount=-1 +kerning first=72 second=71 amount=-1 +kerning first=99 second=8222 amount=-1 +kerning first=274 second=71 amount=-1 +kerning first=217 second=226 amount=-1 +kerning first=264 second=101 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=85 second=242 amount=-1 +kerning first=258 second=252 amount=-1 +kerning first=271 second=275 amount=-1 +kerning first=328 second=45 amount=-1 +kerning first=75 second=214 amount=-1 +kerning first=235 second=275 amount=-1 +kerning first=85 second=233 amount=-1 +kerning first=220 second=45 amount=-2 +kerning first=368 second=249 amount=-1 +kerning first=1049 second=1028 amount=-1 +kerning first=256 second=45 amount=-1 +kerning first=355 second=291 amount=-1 +kerning first=304 second=336 amount=-1 +kerning first=226 second=233 amount=-1 +kerning first=274 second=199 amount=-1 +kerning first=1041 second=1114 amount=-1 +kerning first=262 second=233 amount=-1 +kerning first=310 second=199 amount=-1 +kerning first=283 second=291 amount=-1 +kerning first=201 second=315 amount=-1 +kerning first=220 second=363 amount=-1 +kerning first=171 second=87 amount=-1 +kerning first=262 second=302 amount=-1 +kerning first=80 second=258 amount=-1 +kerning first=105 second=234 amount=-1 +kerning first=298 second=302 amount=-1 +kerning first=71 second=85 amount=-1 +kerning first=275 second=99 amount=-1 +kerning first=267 second=223 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=231 second=223 amount=-1 +kerning first=298 second=233 amount=-1 +kerning first=1105 second=1103 amount=-1 +kerning first=195 second=223 amount=-1 +kerning first=264 second=232 amount=-1 +kerning first=45 second=356 amount=-1 +kerning first=207 second=243 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=1067 second=1080 amount=-1 +kerning first=228 second=232 amount=-1 +kerning first=1031 second=1080 amount=-1 +kerning first=1041 second=1095 amount=-1 +kerning first=206 second=225 amount=-1 +kerning first=119 second=8221 amount=-2 +kerning first=324 second=337 amount=-1 +kerning first=1033 second=1079 amount=-1 +kerning first=74 second=122 amount=-1 +kerning first=221 second=258 amount=-1 +kerning first=224 second=8221 amount=-2 +kerning first=252 second=337 amount=-1 +kerning first=8217 second=382 amount=-1 +kerning first=260 second=8221 amount=-2 +kerning first=291 second=328 amount=-1 +kerning first=1068 second=1039 amount=-1 +kerning first=220 second=216 amount=-1 +kerning first=231 second=225 amount=-1 +kerning first=314 second=287 amount=-1 +kerning first=8220 second=351 amount=-1 +kerning first=267 second=225 amount=-1 +kerning first=65 second=370 amount=-1 +kerning first=252 second=335 amount=-1 +kerning first=115 second=318 amount=-1 +kerning first=211 second=72 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=70 second=72 amount=-1 +kerning first=1034 second=1071 amount=-1 +kerning first=324 second=335 amount=-1 +kerning first=291 second=105 amount=-1 +kerning first=1070 second=1071 amount=-1 +kerning first=209 second=8222 amount=-1 +kerning first=1048 second=1096 amount=-1 +kerning first=362 second=46 amount=-2 +kerning first=213 second=344 amount=-1 +kerning first=354 second=234 amount=-1 +kerning first=278 second=370 amount=-1 +kerning first=258 second=98 amount=-1 +kerning first=206 second=370 amount=-1 +kerning first=114 second=97 amount=-1 +kerning first=193 second=89 amount=-1 +kerning first=199 second=44 amount=-1 +kerning first=272 second=310 amount=-1 +kerning first=202 second=199 amount=-1 +kerning first=207 second=241 amount=-1 +kerning first=350 second=370 amount=-1 +kerning first=202 second=361 amount=-1 +kerning first=1030 second=1062 amount=-1 +kerning first=369 second=267 amount=-1 +kerning first=1048 second=1086 amount=-1 +kerning first=67 second=243 amount=-1 +kerning first=346 second=361 amount=-1 +kerning first=1047 second=1070 amount=-1 +kerning first=364 second=114 amount=-1 +kerning first=1043 second=1083 amount=-1 +kerning first=217 second=206 amount=-1 +kerning first=328 second=114 amount=-1 +kerning first=274 second=361 amount=-1 +kerning first=8218 second=365 amount=-1 +kerning first=225 second=267 amount=-1 +kerning first=310 second=361 amount=-1 +kerning first=261 second=267 amount=-1 +kerning first=291 second=8250 amount=-1 +kerning first=325 second=206 amount=-1 +kerning first=1044 second=1079 amount=-1 +kerning first=220 second=114 amount=-1 +kerning first=210 second=258 amount=-1 +kerning first=206 second=368 amount=-1 +kerning first=109 second=245 amount=-1 +kerning first=1058 second=1092 amount=-1 +kerning first=218 second=275 amount=-1 +kerning first=328 second=8249 amount=-1 +kerning first=73 second=245 amount=-1 +kerning first=327 second=315 amount=-1 +kerning first=364 second=8249 amount=-2 +kerning first=207 second=351 amount=-1 +kerning first=278 second=368 amount=-1 +kerning first=268 second=115 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=205 second=352 amount=-1 +kerning first=364 second=331 amount=-1 +kerning first=235 second=316 amount=-1 +kerning first=283 second=254 amount=-1 +kerning first=305 second=111 amount=-1 +kerning first=65 second=368 amount=-1 +kerning first=1081 second=1095 amount=-1 +kerning first=1045 second=1095 amount=-1 +kerning first=226 second=263 amount=-1 +kerning first=220 second=331 amount=-1 +kerning first=262 second=263 amount=-1 +kerning first=218 second=216 amount=-1 +kerning first=298 second=263 amount=-1 +kerning first=201 second=365 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=217 second=370 amount=-1 +kerning first=304 second=115 amount=-1 +kerning first=1030 second=1055 amount=-1 +kerning first=115 second=8249 amount=-1 +kerning first=201 second=68 amount=-1 +kerning first=350 second=368 amount=-1 +kerning first=80 second=310 amount=-1 +kerning first=220 second=8249 amount=-2 +kerning first=200 second=72 amount=-1 +kerning first=218 second=102 amount=-1 +kerning first=1067 second=1067 amount=-1 +kerning first=212 second=203 amount=-1 +kerning first=1060 second=1037 amount=-1 +kerning first=325 second=370 amount=-1 +kerning first=284 second=203 amount=-1 +kerning first=1059 second=1088 amount=-1 +kerning first=84 second=267 amount=-1 +kerning first=362 second=102 amount=-1 +kerning first=112 second=106 amount=-1 +kerning first=85 second=263 amount=-1 +kerning first=1055 second=1101 amount=-1 +kerning first=1027 second=1118 amount=-1 +kerning first=272 second=72 amount=-1 +kerning first=71 second=203 amount=-1 +kerning first=1091 second=1101 amount=-1 +kerning first=253 second=106 amount=-1 +kerning first=1064 second=1024 amount=-1 +kerning first=80 second=327 amount=-1 +kerning first=337 second=8222 amount=-1 +kerning first=1038 second=1028 amount=-1 +kerning first=77 second=282 amount=-1 +kerning first=65 second=84 amount=-1 +kerning first=1071 second=1052 amount=-1 +kerning first=209 second=346 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=88 second=8222 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=305 second=291 amount=-1 +kerning first=269 second=291 amount=-1 +kerning first=89 second=337 amount=-1 +kerning first=69 second=288 amount=-1 +kerning first=233 second=291 amount=-1 +kerning first=351 second=187 amount=-1 +kerning first=266 second=350 amount=-1 +kerning first=302 second=350 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=217 second=78 amount=-1 +kerning first=350 second=73 amount=-1 +kerning first=282 second=288 amount=-1 +kerning first=66 second=187 amount=-1 +kerning first=242 second=318 amount=-1 +kerning first=104 second=99 amount=-1 +kerning first=198 second=270 amount=-1 +kerning first=314 second=318 amount=-1 +kerning first=209 second=75 amount=-1 +kerning first=1067 second=1119 amount=-1 +kerning first=243 second=187 amount=-1 +kerning first=8217 second=266 amount=-1 +kerning first=302 second=337 amount=-1 +kerning first=281 second=99 amount=-1 +kerning first=279 second=187 amount=-1 +kerning first=1051 second=1064 amount=-1 +kerning first=1051 second=1027 amount=-1 +kerning first=230 second=337 amount=-1 +kerning first=209 second=99 amount=-1 +kerning first=270 second=270 amount=-1 +kerning first=339 second=279 amount=-1 +kerning first=1048 second=1036 amount=-1 +kerning first=231 second=279 amount=-1 +kerning first=266 second=187 amount=-1 +kerning first=269 second=328 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=1039 second=1074 amount=-1 +kerning first=218 second=332 amount=-1 +kerning first=116 second=232 amount=-1 +kerning first=352 second=367 amount=-1 +kerning first=323 second=8222 amount=-1 +kerning first=77 second=332 amount=-1 +kerning first=268 second=202 amount=-1 +kerning first=364 second=277 amount=-1 +kerning first=362 second=332 amount=-1 +kerning first=66 second=351 amount=-1 +kerning first=328 second=277 amount=-1 +kerning first=109 second=8217 amount=-2 +kerning first=77 second=8250 amount=-1 +kerning first=304 second=202 amount=-1 +kerning first=278 second=264 amount=-1 +kerning first=279 second=351 amount=-1 +kerning first=274 second=116 amount=-1 +kerning first=206 second=264 amount=-1 +kerning first=283 second=8221 amount=-2 +kerning first=291 second=267 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=288 second=73 amount=-1 +kerning first=209 second=115 amount=-1 +kerning first=325 second=69 amount=-1 +kerning first=203 second=323 amount=-1 +kerning first=1048 second=1073 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=219 second=279 amount=-1 +kerning first=119 second=108 amount=-1 +kerning first=1052 second=1030 amount=-1 +kerning first=214 second=8217 amount=-2 +kerning first=264 second=338 amount=-1 +kerning first=220 second=277 amount=-1 +kerning first=250 second=8217 amount=-1 +kerning first=1060 second=1050 amount=-1 +kerning first=171 second=350 amount=-1 +kerning first=1052 second=1060 amount=-1 +kerning first=286 second=8217 amount=-1 +kerning first=192 second=338 amount=-1 +kerning first=194 second=356 amount=-1 +kerning first=310 second=307 amount=-1 +kerning first=1071 second=1076 amount=-1 +kerning first=217 second=69 amount=-1 +kerning first=80 second=364 amount=-1 +kerning first=8217 second=212 amount=-1 +kerning first=255 second=8249 amount=-1 +kerning first=8217 second=347 amount=-1 +kerning first=330 second=113 amount=-1 +kerning first=111 second=103 amount=-1 +kerning first=73 second=325 amount=-1 +kerning first=366 second=113 amount=-1 +kerning first=325 second=286 amount=-1 +kerning first=221 second=273 amount=-1 +kerning first=116 second=242 amount=-1 +kerning first=101 second=355 amount=-1 +kerning first=1067 second=1025 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=65 second=355 amount=-1 +kerning first=286 second=325 amount=-1 +kerning first=80 second=273 amount=-1 +kerning first=304 second=78 amount=-1 +kerning first=76 second=370 amount=-1 +kerning first=217 second=193 amount=-1 +kerning first=1031 second=1039 amount=-1 +kerning first=217 second=286 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=1066 second=1063 amount=-2 +kerning first=1067 second=1039 amount=-1 +kerning first=65 second=314 amount=-1 +kerning first=298 second=317 amount=-1 +kerning first=1055 second=1047 amount=-1 +kerning first=334 second=317 amount=-1 +kerning first=1034 second=1056 amount=-1 +kerning first=314 second=314 amount=-1 +kerning first=1027 second=1082 amount=-1 +kerning first=370 second=317 amount=-1 +kerning first=268 second=78 amount=-1 +kerning first=1070 second=1056 amount=-1 +kerning first=217 second=81 amount=-1 +kerning first=362 second=282 amount=-1 +kerning first=242 second=314 amount=-1 +kerning first=368 second=8221 amount=-1 +kerning first=290 second=282 amount=-1 +kerning first=171 second=364 amount=-1 +kerning first=1039 second=1119 amount=-1 +kerning first=278 second=355 amount=-1 +kerning first=221 second=117 amount=-1 +kerning first=218 second=282 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=270 second=77 amount=-1 +kerning first=279 second=100 amount=-1 +kerning first=198 second=77 amount=-1 +kerning first=121 second=289 amount=-1 +kerning first=367 second=234 amount=-1 +kerning first=1039 second=1100 amount=-1 +kerning first=226 second=289 amount=-1 +kerning first=286 second=76 amount=-1 +kerning first=100 second=101 amount=-1 +kerning first=263 second=305 amount=-1 +kerning first=205 second=101 amount=-1 +kerning first=278 second=171 amount=-1 +kerning first=280 second=220 amount=-1 +kerning first=374 second=246 amount=-1 +kerning first=277 second=101 amount=-1 +kerning first=350 second=171 amount=-1 +kerning first=352 second=220 amount=-1 +kerning first=330 second=330 amount=-1 +kerning first=241 second=101 amount=-1 +kerning first=302 second=246 amount=-1 +kerning first=324 second=103 amount=-1 +kerning first=311 second=8217 amount=-1 +kerning first=266 second=246 amount=-1 +kerning first=231 second=333 amount=-1 +kerning first=291 second=246 amount=-1 +kerning first=230 second=246 amount=-1 +kerning first=67 second=220 amount=-1 +kerning first=267 second=333 amount=-1 +kerning first=1067 second=1065 amount=-1 +kerning first=207 second=100 amount=-1 +kerning first=1104 second=1096 amount=-1 +kerning first=284 second=325 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=78 second=315 amount=-1 +kerning first=230 second=8218 amount=-1 +kerning first=266 second=120 amount=-1 +kerning first=302 second=296 amount=-1 +kerning first=1046 second=1074 amount=-1 +kerning first=266 second=296 amount=-1 +kerning first=219 second=315 amount=-1 +kerning first=374 second=120 amount=-1 +kerning first=97 second=281 amount=-1 +kerning first=374 second=8218 amount=-2 +kerning first=352 second=313 amount=-1 +kerning first=338 second=8218 amount=-1 +kerning first=1038 second=1084 amount=-1 +kerning first=290 second=207 amount=-1 +kerning first=110 second=287 amount=-1 +kerning first=262 second=225 amount=-1 +kerning first=205 second=298 amount=-1 +kerning first=199 second=290 amount=-1 +kerning first=8250 second=221 amount=-2 +kerning first=253 second=114 amount=-1 +kerning first=362 second=8250 amount=-2 +kerning first=269 second=382 amount=-1 +kerning first=89 second=8218 amount=-2 +kerning first=287 second=287 amount=-1 +kerning first=89 second=120 amount=-1 +kerning first=290 second=8250 amount=-1 +kerning first=262 second=8250 amount=-1 +kerning first=1076 second=1117 amount=-1 +kerning first=213 second=86 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=254 second=8250 amount=-1 +kerning first=352 second=204 amount=-1 +kerning first=218 second=8250 amount=-2 +kerning first=221 second=234 amount=-1 +kerning first=298 second=339 amount=-1 +kerning first=262 second=339 amount=-1 +kerning first=74 second=302 amount=-1 +kerning first=370 second=339 amount=-1 +kerning first=262 second=107 amount=-1 +kerning first=257 second=234 amount=-1 +kerning first=365 second=234 amount=-1 +kerning first=350 second=365 amount=-1 +kerning first=85 second=339 amount=-1 +kerning first=321 second=354 amount=-1 +kerning first=226 second=339 amount=-1 +kerning first=77 second=278 amount=-1 +kerning first=110 second=8220 amount=-2 +kerning first=362 second=243 amount=-1 +kerning first=370 second=122 amount=-1 +kerning first=290 second=278 amount=-1 +kerning first=262 second=122 amount=-1 +kerning first=211 second=330 amount=-1 +kerning first=1051 second=1118 amount=-1 +kerning first=298 second=122 amount=-1 +kerning first=73 second=74 amount=-1 +kerning first=218 second=278 amount=-1 +kerning first=204 second=280 amount=-1 +kerning first=325 second=232 amount=-1 +kerning first=289 second=232 amount=-1 +kerning first=121 second=107 amount=-1 +kerning first=80 second=219 amount=-1 +kerning first=226 second=122 amount=-1 +kerning first=116 second=234 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=335 second=103 amount=-1 +kerning first=80 second=234 amount=-1 +kerning first=217 second=232 amount=-1 +kerning first=121 second=122 amount=-1 +kerning first=362 second=278 amount=-1 +kerning first=227 second=335 amount=-1 +kerning first=1066 second=1039 amount=-1 +kerning first=1036 second=1094 amount=-1 +kerning first=268 second=241 amount=-1 +kerning first=304 second=209 amount=-1 +kerning first=263 second=335 amount=-1 +kerning first=8218 second=333 amount=-1 +kerning first=275 second=269 amount=-1 +kerning first=1031 second=1083 amount=-1 +kerning first=198 second=363 amount=-1 +kerning first=323 second=115 amount=-1 +kerning first=234 second=363 amount=-1 +kerning first=288 second=298 amount=-1 +kerning first=323 second=85 amount=-1 +kerning first=368 second=344 amount=-1 +kerning first=251 second=8220 amount=-1 +kerning first=72 second=202 amount=-1 +kerning first=279 second=46 amount=-1 +kerning first=205 second=229 amount=-1 +kerning first=70 second=98 amount=-1 +kerning first=243 second=46 amount=-1 +kerning first=287 second=8220 amount=-2 +kerning first=323 second=302 amount=-1 +kerning first=1040 second=1081 amount=-1 +kerning first=74 second=85 amount=-1 +kerning first=1076 second=1081 amount=-1 +kerning first=283 second=98 amount=-1 +kerning first=291 second=316 amount=-1 +kerning first=86 second=335 amount=-1 +kerning first=1069 second=1038 amount=-1 +kerning first=203 second=67 amount=-1 +kerning first=262 second=284 amount=-1 +kerning first=213 second=195 amount=-1 +kerning first=352 second=274 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=374 second=192 amount=-1 +kerning first=87 second=262 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=234 second=378 amount=-1 +kerning first=8250 second=112 amount=-1 +kerning first=204 second=70 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=289 second=8218 amount=-1 +kerning first=102 second=46 amount=-1 +kerning first=264 second=262 amount=-1 +kerning first=266 second=207 amount=-1 +kerning first=66 second=46 amount=-1 +kerning first=1075 second=1085 amount=-1 +kerning first=86 second=251 amount=-1 +kerning first=310 second=357 amount=-1 +kerning first=1069 second=1053 amount=-1 +kerning first=209 second=216 amount=-1 +kerning first=233 second=8250 amount=-1 +kerning first=1102 second=1078 amount=-1 +kerning first=274 second=357 amount=-1 +kerning first=224 second=171 amount=-1 +kerning first=270 second=278 amount=-1 +kerning first=272 second=76 amount=-1 +kerning first=346 second=200 amount=-1 +kerning first=326 second=243 amount=-1 +kerning first=1033 second=1053 amount=-1 +kerning first=214 second=310 amount=-1 +kerning first=187 second=369 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=1064 second=1117 amount=-1 +kerning first=8250 second=344 amount=-1 +kerning first=103 second=314 amount=-1 +kerning first=280 second=68 amount=-1 +kerning first=370 second=350 amount=-1 +kerning first=187 second=116 amount=-1 +kerning first=1041 second=1084 amount=-1 +kerning first=73 second=286 amount=-1 +kerning first=68 second=201 amount=-1 +kerning first=70 second=113 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=115 second=8250 amount=-1 +kerning first=8218 second=316 amount=-1 +kerning first=100 second=8220 amount=-1 +kerning first=210 second=204 amount=-1 +kerning first=1054 second=1044 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=84 second=271 amount=-1 +kerning first=69 second=204 amount=-1 +kerning first=67 second=259 amount=-1 +kerning first=338 second=207 amount=-1 +kerning first=205 second=268 amount=-1 +kerning first=302 second=207 amount=-1 +kerning first=278 second=210 amount=-1 +kerning first=282 second=204 amount=-1 +kerning first=266 second=80 amount=-1 +kerning first=8216 second=194 amount=-2 +kerning first=199 second=366 amount=-1 +kerning first=206 second=210 amount=-1 +kerning first=291 second=369 amount=-1 +kerning first=374 second=242 amount=-1 +kerning first=255 second=369 amount=-1 +kerning first=1030 second=1047 amount=-1 +kerning first=219 second=369 amount=-1 +kerning first=302 second=242 amount=-1 +kerning first=1076 second=1096 amount=-1 +kerning first=283 second=113 amount=-1 +kerning first=74 second=233 amount=-1 +kerning first=267 second=97 amount=-1 +kerning first=1118 second=1113 amount=-1 +kerning first=324 second=244 amount=-1 +kerning first=110 second=233 amount=-1 +kerning first=206 second=279 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=69 second=327 amount=-1 +kerning first=101 second=279 amount=-1 +kerning first=251 second=233 amount=-1 +kerning first=298 second=209 amount=-1 +kerning first=314 second=279 amount=-1 +kerning first=287 second=233 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=253 second=171 amount=-1 +kerning first=210 second=327 amount=-1 +kerning first=231 second=97 amount=-1 +kerning first=1042 second=1080 amount=-1 +kerning first=232 second=187 amount=-1 +kerning first=282 second=327 amount=-1 +kerning first=79 second=75 amount=-1 +kerning first=268 second=187 amount=-1 +kerning first=211 second=200 amount=-1 +kerning first=323 second=233 amount=-1 +kerning first=196 second=187 amount=-1 +kerning first=74 second=371 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=70 second=200 amount=-1 +kerning first=1052 second=1045 amount=-1 +kerning first=1067 second=1070 amount=-1 +kerning first=70 second=44 amount=-2 +kerning first=277 second=283 amount=-1 +kerning first=209 second=270 amount=-1 +kerning first=364 second=75 amount=-1 +kerning first=195 second=318 amount=-1 +kerning first=205 second=283 amount=-1 +kerning first=231 second=318 amount=-1 +kerning first=362 second=224 amount=-1 +kerning first=267 second=318 amount=-1 +kerning first=251 second=248 amount=-1 +kerning first=107 second=8221 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=356 second=380 amount=-1 +kerning first=220 second=75 amount=-1 +kerning first=339 second=318 amount=-1 +kerning first=323 second=248 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=375 second=318 amount=-1 +kerning first=287 second=248 amount=-1 +kerning first=74 second=248 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=85 second=209 amount=-1 +kerning first=327 second=79 amount=-1 +kerning first=110 second=248 amount=-1 +kerning first=269 second=367 amount=-1 +kerning first=78 second=79 amount=-1 +kerning first=356 second=257 amount=-1 +kerning first=233 second=367 amount=-1 +kerning first=218 second=195 amount=-1 +kerning first=8218 second=354 amount=-1 +kerning first=1067 second=1084 amount=-1 +kerning first=68 second=270 amount=-1 +kerning first=252 second=244 amount=-1 +kerning first=280 second=205 amount=-1 +kerning first=374 second=261 amount=-1 +kerning first=353 second=45 amount=-1 +kerning first=367 second=8217 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=8250 second=201 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=245 second=114 amount=-1 +kerning first=8217 second=251 amount=-1 +kerning first=209 second=114 amount=-1 +kerning first=226 second=248 amount=-1 +kerning first=352 second=205 amount=-1 +kerning first=296 second=344 amount=-1 +kerning first=8222 second=364 amount=-1 +kerning first=1056 second=1097 amount=-1 +kerning first=281 second=114 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=206 second=206 amount=-1 +kerning first=8249 second=218 amount=-1 +kerning first=279 second=115 amount=-1 +kerning first=8220 second=192 amount=-2 +kerning first=45 second=345 amount=-1 +kerning first=275 second=353 amount=-1 +kerning first=214 second=89 amount=-1 +kerning first=1031 second=1048 amount=-1 +kerning first=266 second=261 amount=-1 +kerning first=330 second=109 amount=-1 +kerning first=350 second=206 amount=-1 +kerning first=117 second=345 amount=-1 +kerning first=278 second=206 amount=-1 +kerning first=207 second=115 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=258 second=345 amount=-1 +kerning first=310 second=71 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=344 second=362 amount=-1 +kerning first=330 second=345 amount=-1 +kerning first=1046 second=1089 amount=-1 +kerning first=366 second=345 amount=-1 +kerning first=286 second=44 amount=-1 +kerning first=77 second=243 amount=-1 +kerning first=202 second=71 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=218 second=243 amount=-1 +kerning first=304 second=310 amount=-1 +kerning first=195 second=368 amount=-1 +kerning first=321 second=8221 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=1071 second=1037 amount=-1 +kerning first=205 second=214 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=264 second=347 amount=-1 +kerning first=233 second=252 amount=-1 +kerning first=368 second=241 amount=-1 +kerning first=197 second=252 amount=-1 +kerning first=224 second=275 amount=-1 +kerning first=207 second=336 amount=-1 +kerning first=269 second=252 amount=-1 +kerning first=296 second=275 amount=-1 +kerning first=87 second=263 amount=-1 +kerning first=220 second=223 amount=-1 +kerning first=108 second=249 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=200 second=362 amount=-1 +kerning first=8218 second=262 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=272 second=362 amount=-1 +kerning first=364 second=223 amount=-1 +kerning first=101 second=353 amount=-1 +kerning first=1056 second=1051 amount=-1 +kerning first=198 second=45 amount=-1 +kerning first=365 second=275 amount=-1 +kerning first=272 second=217 amount=-1 +kerning first=268 second=327 amount=-1 +kerning first=304 second=327 amount=-1 +kerning first=369 second=8217 amount=-1 +kerning first=344 second=217 amount=-1 +kerning first=78 second=350 amount=-1 +kerning first=310 second=249 amount=-1 +kerning first=314 second=106 amount=-1 +kerning first=221 second=275 amount=-1 +kerning first=346 second=249 amount=-1 +kerning first=199 second=71 amount=-1 +kerning first=378 second=45 amount=-1 +kerning first=354 second=243 amount=-1 +kerning first=257 second=275 amount=-1 +kerning first=268 second=80 amount=-1 +kerning first=264 second=223 amount=-1 +kerning first=327 second=350 amount=-1 +kerning first=8250 second=253 amount=-1 +kerning first=1069 second=1062 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=1031 second=1097 amount=-1 +kerning first=192 second=223 amount=-1 +kerning first=8218 second=210 amount=-1 +kerning first=80 second=275 amount=-1 +kerning first=344 second=284 amount=-1 +kerning first=219 second=350 amount=-1 +kerning first=304 second=80 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=249 second=234 amount=-1 +kerning first=369 second=232 amount=-1 +kerning first=210 second=87 amount=-1 +kerning first=8250 second=73 amount=-1 +kerning first=73 second=200 amount=-1 +kerning first=231 second=8221 amount=-2 +kerning first=69 second=278 amount=-1 +kerning first=368 second=266 amount=-1 +kerning first=1047 second=1085 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=323 second=226 amount=-1 +kerning first=203 second=362 amount=-1 +kerning first=207 second=70 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=202 second=249 amount=-1 +kerning first=291 second=283 amount=-1 +kerning first=8218 second=277 amount=-1 +kerning first=296 second=266 amount=-1 +kerning first=274 second=249 amount=-1 +kerning first=220 second=296 amount=-1 +kerning first=218 second=371 amount=-1 +kerning first=1046 second=1059 amount=-1 +kerning first=108 second=234 amount=-1 +kerning first=261 second=232 amount=-1 +kerning first=78 second=283 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=72 second=234 amount=-1 +kerning first=225 second=232 amount=-1 +kerning first=286 second=200 amount=-1 +kerning first=375 second=378 amount=-1 +kerning first=1053 second=1055 amount=-1 +kerning first=362 second=371 amount=-1 +kerning first=214 second=200 amount=-1 +kerning first=85 second=8249 amount=-2 +kerning first=187 second=85 amount=-1 +kerning first=374 second=335 amount=-1 +kerning first=207 second=332 amount=-1 +kerning first=1050 second=1063 amount=-1 +kerning first=1034 second=1041 amount=-1 +kerning first=8250 second=211 amount=-1 +kerning first=204 second=241 amount=-1 +kerning first=67 second=345 amount=-1 +kerning first=103 second=345 amount=-1 +kerning first=204 second=350 amount=-1 +kerning first=1104 second=1076 amount=-1 +kerning first=201 second=216 amount=-1 +kerning first=366 second=217 amount=-1 +kerning first=75 second=105 amount=-1 +kerning first=109 second=267 amount=-1 +kerning first=244 second=345 amount=-1 +kerning first=284 second=302 amount=-1 +kerning first=89 second=335 amount=-1 +kerning first=339 second=114 amount=-1 +kerning first=280 second=345 amount=-1 +kerning first=1052 second=1028 amount=-1 +kerning first=316 second=345 amount=-1 +kerning first=212 second=302 amount=-1 +kerning first=80 second=115 amount=-1 +kerning first=1091 second=1079 amount=-1 +kerning first=352 second=345 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=116 second=115 amount=-1 +kerning first=375 second=114 amount=-1 +kerning first=1055 second=1079 amount=-1 +kerning first=287 second=46 amount=-1 +kerning first=266 second=335 amount=-1 +kerning first=195 second=114 amount=-1 +kerning first=99 second=241 amount=-1 +kerning first=67 second=98 amount=-1 +kerning first=230 second=335 amount=-1 +kerning first=1071 second=1067 amount=-1 +kerning first=1049 second=1050 amount=-1 +kerning first=85 second=266 amount=-1 +kerning first=267 second=114 amount=-1 +kerning first=323 second=46 amount=-1 +kerning first=71 second=302 amount=-1 +kerning first=302 second=335 amount=-1 +kerning first=231 second=114 amount=-1 +kerning first=65 second=119 amount=-1 +kerning first=81 second=207 amount=-1 +kerning first=370 second=378 amount=-1 +kerning first=192 second=370 amount=-1 +kerning first=200 second=284 amount=-1 +kerning first=255 second=103 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=258 second=81 amount=-1 +kerning first=69 second=310 amount=-1 +kerning first=298 second=378 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=262 second=378 amount=-1 +kerning first=264 second=323 amount=-1 +kerning first=8217 second=244 amount=-1 +kerning first=366 second=81 amount=-1 +kerning first=221 second=115 amount=-1 +kerning first=330 second=207 amount=-1 +kerning first=264 second=370 amount=-1 +kerning first=201 second=368 amount=-1 +kerning first=330 second=81 amount=-1 +kerning first=79 second=315 amount=-1 +kerning first=231 second=314 amount=-1 +kerning first=1068 second=1063 amount=-2 +kerning first=195 second=314 amount=-1 +kerning first=187 second=264 amount=-1 +kerning first=296 second=199 amount=-1 +kerning first=242 second=106 amount=-1 +kerning first=287 second=107 amount=-1 +kerning first=1049 second=1037 amount=-1 +kerning first=375 second=314 amount=-1 +kerning first=368 second=199 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=1070 second=1041 amount=-1 +kerning first=282 second=310 amount=-1 +kerning first=211 second=89 amount=-1 +kerning first=8216 second=218 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=1048 second=1071 amount=-1 +kerning first=210 second=310 amount=-1 +kerning first=101 second=106 amount=-1 +kerning first=72 second=288 amount=-1 +kerning first=263 second=110 amount=-1 +kerning first=204 second=334 amount=-1 +kerning first=8250 second=266 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=1052 second=1101 amount=-1 +kerning first=80 second=221 amount=-1 +kerning first=1033 second=1042 amount=-1 +kerning first=289 second=122 amount=-1 +kerning first=1077 second=1078 amount=-1 +kerning first=89 second=101 amount=-1 +kerning first=230 second=101 amount=-1 +kerning first=316 second=291 amount=-1 +kerning first=45 second=81 amount=-1 +kerning first=280 second=114 amount=-1 +kerning first=302 second=101 amount=-1 +kerning first=244 second=291 amount=-1 +kerning first=8218 second=370 amount=-1 +kerning first=217 second=362 amount=-1 +kerning first=266 second=101 amount=-1 +kerning first=374 second=101 amount=-1 +kerning first=219 second=296 amount=-1 +kerning first=363 second=337 amount=-1 +kerning first=234 second=279 amount=-1 +kerning first=103 second=291 amount=-1 +kerning first=317 second=84 amount=-1 +kerning first=291 second=337 amount=-1 +kerning first=78 second=296 amount=-1 +kerning first=310 second=303 amount=-1 +kerning first=219 second=337 amount=-1 +kerning first=121 second=8250 amount=-1 +kerning first=327 second=296 amount=-1 +kerning first=365 second=114 amount=-1 +kerning first=78 second=337 amount=-1 +kerning first=212 second=75 amount=-1 +kerning first=351 second=8250 amount=-1 +kerning first=234 second=99 amount=-1 +kerning first=1028 second=1119 amount=-1 +kerning first=325 second=245 amount=-1 +kerning first=279 second=8250 amount=-1 +kerning first=1064 second=1119 amount=-1 +kerning first=71 second=75 amount=-1 +kerning first=243 second=8250 amount=-1 +kerning first=220 second=261 amount=-1 +kerning first=277 second=8218 amount=-1 +kerning first=290 second=274 amount=-1 +kerning first=217 second=245 amount=-1 +kerning first=1065 second=1094 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=66 second=8250 amount=-1 +kerning first=356 second=8220 amount=-1 +kerning first=323 second=380 amount=-1 +kerning first=80 second=202 amount=-1 +kerning first=338 second=363 amount=-1 +kerning first=287 second=380 amount=-1 +kerning first=282 second=117 amount=-1 +kerning first=1055 second=1025 amount=-1 +kerning first=77 second=83 amount=-1 +kerning first=246 second=46 amount=-1 +kerning first=204 second=246 amount=-1 +kerning first=370 second=218 amount=-1 +kerning first=334 second=218 amount=-1 +kerning first=298 second=218 amount=-1 +kerning first=218 second=83 amount=-1 +kerning first=284 second=75 amount=-1 +kerning first=262 second=218 amount=-1 +kerning first=1041 second=1030 amount=-1 +kerning first=325 second=264 amount=-1 +kerning first=208 second=187 amount=-1 +kerning first=374 second=122 amount=-1 +kerning first=210 second=364 amount=-1 +kerning first=362 second=83 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=107 second=8220 amount=-1 +kerning first=74 second=380 amount=-1 +kerning first=217 second=264 amount=-1 +kerning first=71 second=8220 amount=-1 +kerning first=201 second=270 amount=-1 +kerning first=69 second=364 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=235 second=98 amount=-1 +kerning first=264 second=69 amount=-1 +kerning first=284 second=8220 amount=-1 +kerning first=277 second=367 amount=-1 +kerning first=207 second=278 amount=-1 +kerning first=248 second=8220 amount=-2 +kerning first=263 second=103 amount=-1 +kerning first=227 second=103 amount=-1 +kerning first=1056 second=1039 amount=-1 +kerning first=8250 second=199 amount=-1 +kerning first=304 second=273 amount=-1 +kerning first=268 second=273 amount=-1 +kerning first=205 second=227 amount=-1 +kerning first=86 second=103 amount=-1 +kerning first=305 second=171 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=232 second=273 amount=-1 +kerning first=288 second=205 amount=-1 +kerning first=1070 second=1034 amount=-1 +kerning first=366 second=273 amount=-1 +kerning first=87 second=269 amount=-1 +kerning first=104 second=8220 amount=-2 +kerning first=1034 second=1034 amount=-1 +kerning first=8217 second=110 amount=-1 +kerning first=70 second=258 amount=-1 +kerning first=1065 second=1102 amount=-1 +kerning first=339 second=355 amount=-1 +kerning first=1067 second=1043 amount=-1 +kerning first=192 second=316 amount=-1 +kerning first=85 second=218 amount=-1 +kerning first=67 second=44 amount=-1 +kerning first=1031 second=1043 amount=-1 +kerning first=264 second=269 amount=-1 +kerning first=103 second=44 amount=-1 +kerning first=330 second=261 amount=-1 +kerning first=264 second=316 amount=-1 +kerning first=356 second=248 amount=-1 +kerning first=287 second=382 amount=-1 +kerning first=228 second=316 amount=-1 +kerning first=195 second=355 amount=-1 +kerning first=244 second=44 amount=-1 +kerning first=69 second=117 amount=-1 +kerning first=366 second=261 amount=-1 +kerning first=207 second=78 amount=-1 +kerning first=302 second=229 amount=-1 +kerning first=326 second=263 amount=-1 +kerning first=287 second=8221 amount=-2 +kerning first=362 second=263 amount=-1 +kerning first=1066 second=1030 amount=-1 +kerning first=8217 second=352 amount=-1 +kerning first=338 second=251 amount=-1 +kerning first=316 second=382 amount=-1 +kerning first=353 second=171 amount=-1 +kerning first=1030 second=1030 amount=-1 +kerning first=291 second=8218 amount=-1 +kerning first=235 second=117 amount=-1 +kerning first=1064 second=1100 amount=-1 +kerning first=364 second=203 amount=-1 +kerning first=79 second=203 amount=-1 +kerning first=1104 second=1078 amount=-1 +kerning first=77 second=263 amount=-1 +kerning first=220 second=203 amount=-1 +kerning first=97 second=108 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=316 second=252 amount=-1 +kerning first=1066 second=1025 amount=-1 +kerning first=218 second=263 amount=-1 +kerning first=1030 second=1025 amount=-1 +kerning first=1047 second=1050 amount=-1 +kerning first=277 second=246 amount=-1 +kerning first=241 second=246 amount=-1 +kerning first=334 second=77 amount=-1 +kerning first=121 second=8222 amount=-1 +kerning first=205 second=246 amount=-1 +kerning first=370 second=77 amount=-1 +kerning first=1069 second=1113 amount=-1 +kerning first=330 second=382 amount=-1 +kerning first=85 second=8222 amount=-2 +kerning first=1055 second=1060 amount=-1 +kerning first=262 second=77 amount=-1 +kerning first=366 second=382 amount=-1 +kerning first=100 second=246 amount=-1 +kerning first=298 second=77 amount=-1 +kerning first=99 second=100 amount=-1 +kerning first=212 second=356 amount=-1 +kerning first=203 second=218 amount=-1 +kerning first=262 second=304 amount=-1 +kerning first=204 second=100 amount=-1 +kerning first=298 second=304 amount=-1 +kerning first=85 second=77 amount=-1 +kerning first=304 second=282 amount=-1 +kerning first=97 second=103 amount=-1 +kerning first=1051 second=1083 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=8250 second=361 amount=-1 +kerning first=370 second=304 amount=-1 +kerning first=85 second=304 amount=-1 +kerning first=78 second=242 amount=-1 +kerning first=374 second=281 amount=-1 +kerning first=362 second=211 amount=-1 +kerning first=268 second=101 amount=-1 +kerning first=311 second=316 amount=-1 +kerning first=275 second=316 amount=-1 +kerning first=334 second=8222 amount=-1 +kerning first=234 second=333 amount=-1 +kerning first=1042 second=1048 amount=-1 +kerning first=77 second=211 amount=-1 +kerning first=351 second=45 amount=-1 +kerning first=347 second=316 amount=-1 +kerning first=262 second=8222 amount=-1 +kerning first=218 second=211 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=219 second=242 amount=-1 +kerning first=196 second=223 amount=-1 +kerning first=110 second=339 amount=-1 +kerning first=1031 second=1024 amount=-1 +kerning first=217 second=210 amount=-1 +kerning first=196 second=221 amount=-1 +kerning first=251 second=339 amount=-1 +kerning first=1067 second=1024 amount=-1 +kerning first=254 second=287 amount=-1 +kerning first=327 second=242 amount=-1 +kerning first=210 second=8250 amount=-1 +kerning first=363 second=242 amount=-1 +kerning first=99 second=233 amount=-1 +kerning first=307 second=269 amount=-1 +kerning first=304 second=110 amount=-1 +kerning first=74 second=280 amount=-1 +kerning first=74 second=339 amount=-1 +kerning first=314 second=245 amount=-1 +kerning first=330 second=315 amount=-1 +kerning first=205 second=313 amount=-1 +kerning first=366 second=315 amount=-1 +kerning first=199 second=242 amount=-1 +kerning first=240 second=233 amount=-1 +kerning first=355 second=240 amount=-1 +kerning first=268 second=219 amount=-1 +kerning first=233 second=120 amount=-1 +kerning first=304 second=219 amount=-1 +kerning first=204 second=233 amount=-1 +kerning first=269 second=120 amount=-1 +kerning first=355 second=230 amount=-1 +kerning first=323 second=280 amount=-1 +kerning first=323 second=339 amount=-1 +kerning first=78 second=279 amount=-1 +kerning first=81 second=315 amount=-1 +kerning first=287 second=339 amount=-1 +kerning first=324 second=118 amount=-1 +kerning first=80 second=206 amount=-1 +kerning first=1027 second=1101 amount=-1 +kerning first=1076 second=1118 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=1040 second=1118 amount=-1 +kerning first=101 second=8217 amount=-2 +kerning first=252 second=231 amount=-1 +kerning first=211 second=76 amount=-1 +kerning first=8217 second=290 amount=-1 +kerning first=70 second=76 amount=-1 +kerning first=242 second=8217 amount=-2 +kerning first=198 second=206 amount=-1 +kerning first=73 second=213 amount=-1 +kerning first=65 second=8217 amount=-2 +kerning first=207 second=224 amount=-1 +kerning first=370 second=85 amount=-1 +kerning first=334 second=85 amount=-1 +kerning first=206 second=245 amount=-1 +kerning first=298 second=85 amount=-1 +kerning first=107 second=289 amount=-1 +kerning first=262 second=85 amount=-1 +kerning first=101 second=245 amount=-1 +kerning first=275 second=254 amount=-1 +kerning first=278 second=8217 amount=-1 +kerning first=8222 second=273 amount=-1 +kerning first=314 second=8217 amount=-1 +kerning first=1041 second=1119 amount=-1 +kerning first=350 second=8217 amount=-1 +kerning first=217 second=331 amount=-1 +kerning first=1071 second=1113 amount=-1 +kerning first=248 second=289 amount=-1 +kerning first=368 second=366 amount=-1 +kerning first=258 second=318 amount=-1 +kerning first=296 second=366 amount=-1 +kerning first=203 second=262 amount=-1 +kerning first=1059 second=1095 amount=-1 +kerning first=250 second=113 amount=-1 +kerning first=280 second=79 amount=-1 +kerning first=194 second=311 amount=-1 +kerning first=73 second=67 amount=-1 +kerning first=1043 second=1096 amount=-1 +kerning first=1095 second=1095 amount=-1 +kerning first=197 second=307 amount=-1 +kerning first=339 second=287 amount=-1 +kerning first=362 second=317 amount=-1 +kerning first=253 second=104 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=321 second=84 amount=-1 +kerning first=197 second=345 amount=-1 +kerning first=1102 second=1084 amount=-1 +kerning first=1033 second=1048 amount=-1 +kerning first=233 second=345 amount=-1 +kerning first=269 second=345 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=1030 second=1084 amount=-1 +kerning first=305 second=345 amount=-1 +kerning first=240 second=46 amount=-1 +kerning first=370 second=250 amount=-1 +kerning first=118 second=107 amount=-1 +kerning first=45 second=369 amount=-1 +kerning first=220 second=368 amount=-1 +kerning first=77 second=317 amount=-1 +kerning first=364 second=201 amount=-1 +kerning first=229 second=122 amount=-1 +kerning first=244 second=314 amount=-1 +kerning first=97 second=8221 amount=-2 +kerning first=77 second=336 amount=-1 +kerning first=218 second=317 amount=-1 +kerning first=121 second=250 amount=-1 +kerning first=105 second=335 amount=-1 +kerning first=220 second=201 amount=-1 +kerning first=85 second=250 amount=-1 +kerning first=79 second=368 amount=-1 +kerning first=290 second=317 amount=-1 +kerning first=79 second=201 amount=-1 +kerning first=218 second=336 amount=-1 +kerning first=281 second=311 amount=-1 +kerning first=274 second=8221 amount=-1 +kerning first=73 second=113 amount=-1 +kerning first=221 second=256 amount=-1 +kerning first=310 second=8221 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=109 second=113 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=8216 second=197 amount=-2 +kerning first=346 second=8221 amount=-1 +kerning first=220 second=116 amount=-1 +kerning first=1066 second=1038 amount=-2 +kerning first=382 second=8221 amount=-1 +kerning first=362 second=336 amount=-1 +kerning first=287 second=326 amount=-1 +kerning first=1062 second=1086 amount=-1 +kerning first=325 second=210 amount=-1 +kerning first=364 second=368 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=1047 second=1031 amount=-1 +kerning first=337 second=122 amount=-1 +kerning first=364 second=116 amount=-1 +kerning first=104 second=114 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=310 second=268 amount=-1 +kerning first=274 second=268 amount=-1 +kerning first=220 second=97 amount=-1 +kerning first=89 second=281 amount=-1 +kerning first=280 second=8220 amount=-1 +kerning first=202 second=268 amount=-1 +kerning first=286 second=304 amount=-1 +kerning first=8222 second=221 amount=-2 +kerning first=1038 second=1116 amount=-1 +kerning first=230 second=281 amount=-1 +kerning first=269 second=347 amount=-1 +kerning first=266 second=281 amount=-1 +kerning first=119 second=187 amount=-1 +kerning first=302 second=281 amount=-1 +kerning first=213 second=73 amount=-1 +kerning first=366 second=369 amount=-1 +kerning first=233 second=347 amount=-1 +kerning first=202 second=8221 amount=-1 +kerning first=258 second=369 amount=-1 +kerning first=356 second=235 amount=-1 +kerning first=262 second=8218 amount=-1 +kerning first=1052 second=1069 amount=-1 +kerning first=364 second=97 amount=-1 +kerning first=107 second=287 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=313 second=86 amount=-1 +kerning first=272 second=198 amount=-1 +kerning first=89 second=283 amount=-1 +kerning first=8222 second=219 amount=-1 +kerning first=226 second=231 amount=-1 +kerning first=210 second=351 amount=-1 +kerning first=262 second=231 amount=-1 +kerning first=325 second=277 amount=-1 +kerning first=281 second=363 amount=-1 +kerning first=1036 second=1072 amount=-1 +kerning first=289 second=277 amount=-1 +kerning first=86 second=290 amount=-1 +kerning first=289 second=104 amount=-1 +kerning first=354 second=351 amount=-1 +kerning first=217 second=277 amount=-1 +kerning first=344 second=338 amount=-1 +kerning first=86 second=244 amount=-1 +kerning first=1051 second=1081 amount=-1 +kerning first=374 second=283 amount=-1 +kerning first=266 second=355 amount=-1 +kerning first=227 second=244 amount=-1 +kerning first=266 second=283 amount=-1 +kerning first=200 second=338 amount=-1 +kerning first=298 second=231 amount=-1 +kerning first=263 second=244 amount=-1 +kerning first=302 second=283 amount=-1 +kerning first=253 second=8249 amount=-1 +kerning first=289 second=8249 amount=-1 +kerning first=370 second=231 amount=-1 +kerning first=194 second=354 amount=-1 +kerning first=1039 second=1065 amount=-1 +kerning first=325 second=8249 amount=-1 +kerning first=67 second=79 amount=-1 +kerning first=78 second=345 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=258 second=79 amount=-1 +kerning first=278 second=8220 amount=-1 +kerning first=248 second=46 amount=-1 +kerning first=268 second=332 amount=-1 +kerning first=334 second=196 amount=-1 +kerning first=374 second=367 amount=-1 +kerning first=88 second=371 amount=-1 +kerning first=255 second=345 amount=-1 +kerning first=259 second=235 amount=-1 +kerning first=370 second=196 amount=-1 +kerning first=338 second=367 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=193 second=371 amount=-1 +kerning first=327 second=345 amount=-1 +kerning first=363 second=345 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=367 second=235 amount=-1 +kerning first=230 second=367 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=211 second=274 amount=-1 +kerning first=1042 second=1091 amount=-1 +kerning first=226 second=380 amount=-1 +kerning first=85 second=368 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=304 second=332 amount=-1 +kerning first=352 second=66 amount=-1 +kerning first=298 second=380 amount=-1 +kerning first=330 second=79 amount=-1 +kerning first=280 second=66 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=85 second=226 amount=-1 +kerning first=366 second=79 amount=-1 +kerning first=370 second=380 amount=-1 +kerning first=284 second=270 amount=-1 +kerning first=204 second=209 amount=-1 +kerning first=1056 second=1080 amount=-1 +kerning first=204 second=336 amount=-1 +kerning first=89 second=367 amount=-1 +kerning first=86 second=192 amount=-1 +kerning first=217 second=323 amount=-1 +kerning first=327 second=99 amount=-1 +kerning first=269 second=44 amount=-1 +kerning first=200 second=252 amount=-1 +kerning first=110 second=231 amount=-1 +kerning first=1049 second=1045 amount=-1 +kerning first=205 second=205 amount=-1 +kerning first=268 second=355 amount=-1 +kerning first=97 second=244 amount=-1 +kerning first=195 second=119 amount=-1 +kerning first=278 second=201 amount=-1 +kerning first=1070 second=1063 amount=-1 +kerning first=274 second=214 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=206 second=201 amount=-1 +kerning first=346 second=76 amount=-1 +kerning first=202 second=214 amount=-1 +kerning first=207 second=327 amount=-1 +kerning first=201 second=218 amount=-1 +kerning first=197 second=44 amount=-1 +kerning first=233 second=44 amount=-1 +kerning first=257 second=8217 amount=-2 +kerning first=251 second=231 amount=-1 +kerning first=115 second=314 amount=-1 +kerning first=8217 second=246 amount=-1 +kerning first=310 second=214 amount=-1 +kerning first=339 second=106 amount=-1 +kerning first=289 second=353 amount=-1 +kerning first=375 second=106 amount=-1 +kerning first=1048 second=1049 amount=-1 +kerning first=257 second=243 amount=-1 +kerning first=253 second=353 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=325 second=223 amount=-1 +kerning first=365 second=243 amount=-1 +kerning first=8249 second=346 amount=-1 +kerning first=289 second=223 amount=-1 +kerning first=325 second=353 amount=-1 +kerning first=80 second=353 amount=-1 +kerning first=231 second=106 amount=-1 +kerning first=259 second=45 amount=-1 +kerning first=267 second=106 amount=-1 +kerning first=75 second=114 amount=-1 +kerning first=263 second=249 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=105 second=275 amount=-1 +kerning first=80 second=80 amount=-1 +kerning first=1078 second=1097 amount=-1 +kerning first=367 second=45 amount=-1 +kerning first=1091 second=1114 amount=-1 +kerning first=195 second=363 amount=-1 +kerning first=231 second=363 amount=-1 +kerning first=307 second=275 amount=-1 +kerning first=1050 second=1054 amount=-1 +kerning first=78 second=101 amount=-1 +kerning first=217 second=223 amount=-1 +kerning first=80 second=243 amount=-1 +kerning first=203 second=370 amount=-1 +kerning first=339 second=363 amount=-1 +kerning first=217 second=353 amount=-1 +kerning first=280 second=325 amount=-1 +kerning first=363 second=8220 amount=-1 +kerning first=375 second=363 amount=-1 +kerning first=1042 second=1097 amount=-1 +kerning first=212 second=87 amount=-1 +kerning first=73 second=362 amount=-1 +kerning first=219 second=101 amount=-1 +kerning first=368 second=234 amount=-1 +kerning first=250 second=232 amount=-1 +kerning first=214 second=362 amount=-1 +kerning first=327 second=101 amount=-1 +kerning first=298 second=226 amount=-1 +kerning first=291 second=101 amount=-1 +kerning first=286 second=362 amount=-1 +kerning first=370 second=226 amount=-1 +kerning first=363 second=101 amount=-1 +kerning first=268 second=8250 amount=-1 +kerning first=365 second=245 amount=-1 +kerning first=8218 second=245 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=1068 second=1098 amount=-1 +kerning first=364 second=241 amount=-1 +kerning first=72 second=266 amount=-1 +kerning first=103 second=283 amount=-1 +kerning first=70 second=217 amount=-1 +kerning first=280 second=296 amount=-1 +kerning first=86 second=249 amount=-1 +kerning first=1099 second=1095 amount=-1 +kerning first=67 second=283 amount=-1 +kerning first=211 second=217 amount=-1 +kerning first=218 second=334 amount=-1 +kerning first=109 second=232 amount=-1 +kerning first=224 second=234 amount=-1 +kerning first=73 second=232 amount=-1 +kerning first=296 second=71 amount=-1 +kerning first=230 second=242 amount=-1 +kerning first=296 second=234 amount=-1 +kerning first=106 second=111 amount=-1 +kerning first=229 second=287 amount=-1 +kerning first=201 second=8220 amount=-1 +kerning first=286 second=72 amount=-1 +kerning first=1069 second=1070 amount=-1 +kerning first=214 second=72 amount=-1 +kerning first=1033 second=1070 amount=-1 +kerning first=104 second=283 amount=-1 +kerning first=381 second=8220 amount=-1 +kerning first=283 second=111 amount=-1 +kerning first=75 second=8218 amount=-1 +kerning first=337 second=287 amount=-1 +kerning first=263 second=105 amount=-1 +kerning first=355 second=111 amount=-1 +kerning first=101 second=46 amount=-1 +kerning first=171 second=83 amount=-1 +kerning first=219 second=370 amount=-1 +kerning first=207 second=83 amount=-1 +kerning first=271 second=244 amount=-1 +kerning first=350 second=114 amount=-1 +kerning first=1055 second=1041 amount=-1 +kerning first=187 second=286 amount=-1 +kerning first=275 second=267 amount=-1 +kerning first=8216 second=196 amount=-2 +kerning first=85 second=378 amount=-1 +kerning first=70 second=111 amount=-1 +kerning first=70 second=81 amount=-1 +kerning first=210 second=115 amount=-1 +kerning first=206 second=114 amount=-1 +kerning first=268 second=102 amount=-1 +kerning first=304 second=278 amount=-1 +kerning first=1044 second=1092 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=268 second=278 amount=-1 +kerning first=278 second=114 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=8217 second=192 amount=-2 +kerning first=99 second=263 amount=-1 +kerning first=101 second=114 amount=-1 +kerning first=204 second=263 amount=-1 +kerning first=259 second=242 amount=-1 +kerning first=1066 second=1079 amount=-1 +kerning first=65 second=114 amount=-1 +kerning first=240 second=263 amount=-1 +kerning first=1044 second=1116 amount=-1 +kerning first=370 second=117 amount=-1 +kerning first=187 second=365 amount=-1 +kerning first=206 second=331 amount=-1 +kerning first=354 second=115 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=73 second=72 amount=-1 +kerning first=270 second=203 amount=-1 +kerning first=118 second=365 amount=-1 +kerning first=368 second=361 amount=-1 +kerning first=325 second=269 amount=-1 +kerning first=323 second=68 amount=-1 +kerning first=1070 second=1036 amount=-1 +kerning first=77 second=78 amount=-1 +kerning first=1034 second=1036 amount=-1 +kerning first=323 second=334 amount=-1 +kerning first=218 second=78 amount=-1 +kerning first=367 second=99 amount=-1 +kerning first=1043 second=1071 amount=-1 +kerning first=368 second=288 amount=-1 +kerning first=364 second=355 amount=-1 +kerning first=1041 second=1101 amount=-1 +kerning first=248 second=380 amount=-1 +kerning first=201 second=266 amount=-1 +kerning first=1042 second=1043 amount=-1 +kerning first=296 second=288 amount=-1 +kerning first=1034 second=1070 amount=-1 +kerning first=8250 second=71 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=194 second=199 amount=-1 +kerning first=228 second=318 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=220 second=260 amount=-1 +kerning first=1107 second=1082 amount=-1 +kerning first=1105 second=1094 amount=-1 +kerning first=200 second=325 amount=-1 +kerning first=363 second=291 amount=-1 +kerning first=338 second=357 amount=-1 +kerning first=364 second=260 amount=-1 +kerning first=272 second=325 amount=-1 +kerning first=291 second=291 amount=-1 +kerning first=315 second=218 amount=-1 +kerning first=337 second=187 amount=-1 +kerning first=255 second=291 amount=-1 +kerning first=334 second=8220 amount=-2 +kerning first=198 second=367 amount=-1 +kerning first=281 second=279 amount=-1 +kerning first=1036 second=1085 amount=-1 +kerning first=87 second=245 amount=-1 +kerning first=72 second=212 amount=-1 +kerning first=103 second=337 amount=-1 +kerning first=67 second=337 amount=-1 +kerning first=264 second=8217 amount=-1 +kerning first=277 second=251 amount=-1 +kerning first=363 second=114 amount=-1 +kerning first=336 second=8217 amount=-2 +kerning first=104 second=269 amount=-1 +kerning first=220 second=68 amount=-1 +kerning first=334 second=195 amount=-1 +kerning first=103 second=242 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=209 second=279 amount=-1 +kerning first=193 second=187 amount=-1 +kerning first=1053 second=1119 amount=-1 +kerning first=229 second=187 amount=-1 +kerning first=1071 second=1057 amount=-1 +kerning first=208 second=8218 amount=-1 +kerning first=104 second=279 amount=-1 +kerning first=88 second=187 amount=-1 +kerning first=67 second=242 amount=-1 +kerning first=74 second=334 amount=-1 +kerning first=289 second=316 amount=-1 +kerning first=1067 second=1056 amount=-1 +kerning first=366 second=347 amount=-1 +kerning first=316 second=242 amount=-1 +kerning first=346 second=73 amount=-1 +kerning first=205 second=281 amount=-1 +kerning first=86 second=268 amount=-1 +kerning first=1053 second=1043 amount=-1 +kerning first=241 second=281 amount=-1 +kerning first=370 second=334 amount=-1 +kerning first=330 second=347 amount=-1 +kerning first=277 second=281 amount=-1 +kerning first=8222 second=375 amount=-1 +kerning first=356 second=99 amount=-1 +kerning first=70 second=325 amount=-1 +kerning first=1071 second=1089 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=310 second=290 amount=-1 +kerning first=211 second=325 amount=-1 +kerning first=213 second=115 amount=-1 +kerning first=81 second=347 amount=-1 +kerning first=218 second=366 amount=-1 +kerning first=313 second=8217 amount=-1 +kerning first=264 second=264 amount=-1 +kerning first=202 second=73 amount=-1 +kerning first=69 second=202 amount=-1 +kerning first=1056 second=1083 amount=-1 +kerning first=274 second=296 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=229 second=233 amount=-1 +kerning first=274 second=73 amount=-1 +kerning first=100 second=281 amount=-1 +kerning first=217 second=82 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=289 second=8217 amount=-2 +kerning first=355 second=101 amount=-1 +kerning first=268 second=337 amount=-1 +kerning first=77 second=283 amount=-1 +kerning first=1064 second=1065 amount=-1 +kerning first=1050 second=1117 amount=-1 +kerning first=206 second=277 amount=-1 +kerning first=112 second=8217 amount=-2 +kerning first=335 second=108 amount=-1 +kerning first=8250 second=212 amount=-1 +kerning first=1068 second=1052 amount=-1 +kerning first=202 second=290 amount=-1 +kerning first=203 second=69 amount=-1 +kerning first=227 second=108 amount=-1 +kerning first=101 second=277 amount=-1 +kerning first=198 second=69 amount=-1 +kerning first=217 second=8217 amount=-1 +kerning first=1038 second=1091 amount=-1 +kerning first=263 second=108 amount=-1 +kerning first=274 second=290 amount=-1 +kerning first=253 second=8217 amount=-2 +kerning first=85 second=334 amount=-1 +kerning first=268 second=224 amount=-1 +kerning first=1049 second=1092 amount=-1 +kerning first=220 second=355 amount=-1 +kerning first=116 second=351 amount=-1 +kerning first=1041 second=1053 amount=-1 +kerning first=1060 second=1113 amount=-1 +kerning first=80 second=351 amount=-1 +kerning first=119 second=291 amount=-1 +kerning first=290 second=78 amount=-1 +kerning first=200 second=220 amount=-1 +kerning first=262 second=334 amount=-1 +kerning first=217 second=282 amount=-1 +kerning first=298 second=334 amount=-1 +kerning first=362 second=78 amount=-1 +kerning first=203 second=286 amount=-1 +kerning first=364 second=233 amount=-1 +kerning first=221 second=351 amount=-1 +kerning first=104 second=333 amount=-1 +kerning first=1048 second=1095 amount=-1 +kerning first=114 second=229 amount=-1 +kerning first=328 second=171 amount=-1 +kerning first=8218 second=318 amount=-1 +kerning first=364 second=209 amount=-1 +kerning first=364 second=171 amount=-2 +kerning first=219 second=229 amount=-1 +kerning first=1084 second=1095 amount=-1 +kerning first=281 second=333 amount=-1 +kerning first=68 second=203 amount=-1 +kerning first=291 second=122 amount=-1 +kerning first=209 second=333 amount=-1 +kerning first=78 second=229 amount=-1 +kerning first=344 second=290 amount=-1 +kerning first=83 second=117 amount=-1 +kerning first=1043 second=1074 amount=-1 +kerning first=209 second=203 amount=-1 +kerning first=321 second=374 amount=-1 +kerning first=213 second=374 amount=-1 +kerning first=229 second=263 amount=-1 +kerning first=1053 second=1100 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=327 second=229 amount=-1 +kerning first=115 second=171 amount=-1 +kerning first=79 second=206 amount=-1 +kerning first=296 second=212 amount=-1 +kerning first=1034 second=1039 amount=-1 +kerning first=274 second=298 amount=-1 +kerning first=278 second=203 amount=-1 +kerning first=1054 second=1042 amount=-1 +kerning first=278 second=213 amount=-1 +kerning first=220 second=171 amount=-2 +kerning first=225 second=335 amount=-1 +kerning first=368 second=117 amount=-1 +kerning first=262 second=104 amount=-1 +kerning first=256 second=171 amount=-1 +kerning first=1028 second=1097 amount=-1 +kerning first=68 second=368 amount=-1 +kerning first=258 second=220 amount=-1 +kerning first=323 second=304 amount=-1 +kerning first=370 second=109 amount=-1 +kerning first=324 second=246 amount=-1 +kerning first=366 second=220 amount=-1 +kerning first=283 second=382 amount=-1 +kerning first=330 second=220 amount=-1 +kerning first=364 second=206 amount=-1 +kerning first=74 second=304 amount=-1 +kerning first=8218 second=375 amount=-1 +kerning first=1051 second=1086 amount=-1 +kerning first=252 second=246 amount=-1 +kerning first=1043 second=1095 amount=-1 +kerning first=1030 second=1060 amount=-1 +kerning first=81 second=220 amount=-1 +kerning first=86 second=8221 amount=-1 +kerning first=122 second=8221 amount=-1 +kerning first=249 second=103 amount=-1 +kerning first=244 second=120 amount=-1 +kerning first=219 second=46 amount=-2 +kerning first=1067 second=1048 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=1051 second=1051 amount=-1 +kerning first=216 second=8218 amount=-1 +kerning first=263 second=8221 amount=-2 +kerning first=108 second=103 amount=-1 +kerning first=8250 second=204 amount=-1 +kerning first=207 second=211 amount=-1 +kerning first=85 second=109 amount=-1 +kerning first=111 second=8218 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=266 second=313 amount=-1 +kerning first=234 second=365 amount=-1 +kerning first=298 second=109 amount=-1 +kerning first=1056 second=1034 amount=-1 +kerning first=302 second=313 amount=-1 +kerning first=338 second=313 amount=-1 +kerning first=66 second=211 amount=-1 +kerning first=70 second=382 amount=-1 +kerning first=221 second=199 amount=-1 +kerning first=198 second=365 amount=-1 +kerning first=262 second=109 amount=-1 +kerning first=317 second=368 amount=-1 +kerning first=201 second=85 amount=-1 +kerning first=278 second=223 amount=-1 +kerning first=8222 second=365 amount=-1 +kerning first=206 second=223 amount=-1 +kerning first=85 second=280 amount=-1 +kerning first=264 second=210 amount=-1 +kerning first=1070 second=1053 amount=-1 +kerning first=288 second=304 amount=-1 +kerning first=269 second=98 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=1046 second=1057 amount=-1 +kerning first=233 second=98 amount=-1 +kerning first=262 second=280 amount=-1 +kerning first=197 second=98 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=1078 second=1092 amount=-1 +kerning first=241 second=335 amount=-1 +kerning first=334 second=280 amount=-1 +kerning first=1036 second=1077 amount=-1 +kerning first=99 second=122 amount=-1 +kerning first=205 second=335 amount=-1 +kerning first=72 second=380 amount=-1 +kerning first=201 second=302 amount=-1 +kerning first=277 second=335 amount=-1 +kerning first=370 second=280 amount=-1 +kerning first=268 second=243 amount=-1 +kerning first=282 second=371 amount=-1 +kerning first=315 second=219 amount=-1 +kerning first=232 second=243 amount=-1 +kerning first=65 second=223 amount=-1 +kerning first=99 second=339 amount=-1 +kerning first=8217 second=268 amount=-1 +kerning first=70 second=271 amount=-1 +kerning first=240 second=339 amount=-1 +kerning first=304 second=243 amount=-1 +kerning first=1070 second=1047 amount=-1 +kerning first=204 second=339 amount=-1 +kerning first=346 second=298 amount=-1 +kerning first=8222 second=224 amount=-1 +kerning first=272 second=89 amount=-1 +kerning first=214 second=198 amount=-1 +kerning first=171 second=219 amount=-1 +kerning first=278 second=8249 amount=-1 +kerning first=330 second=76 amount=-1 +kerning first=314 second=8249 amount=-1 +kerning first=66 second=219 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=210 second=323 amount=-1 +kerning first=364 second=363 amount=-1 +kerning first=1070 second=1039 amount=-1 +kerning first=8218 second=264 amount=-1 +kerning first=275 second=232 amount=-1 +kerning first=344 second=89 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=100 second=335 amount=-1 +kerning first=81 second=76 amount=-1 +kerning first=235 second=234 amount=-1 +kerning first=8217 second=112 amount=-1 +kerning first=118 second=289 amount=-1 +kerning first=199 second=234 amount=-1 +kerning first=259 second=289 amount=-1 +kerning first=218 second=241 amount=-1 +kerning first=307 second=234 amount=-1 +kerning first=202 second=344 amount=-1 +kerning first=223 second=289 amount=-1 +kerning first=291 second=98 amount=-1 +kerning first=271 second=234 amount=-1 +kerning first=8250 second=355 amount=-1 +kerning first=74 second=120 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=274 second=344 amount=-1 +kerning first=313 second=354 amount=-1 +kerning first=1058 second=1075 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=362 second=241 amount=-1 +kerning first=346 second=344 amount=-1 +kerning first=367 second=289 amount=-1 +kerning first=81 second=274 amount=-1 +kerning first=193 second=46 amount=-1 +kerning first=1071 second=1091 amount=-1 +kerning first=187 second=216 amount=-1 +kerning first=1071 second=1108 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=296 second=204 amount=-1 +kerning first=213 second=366 amount=-1 +kerning first=369 second=113 amount=-1 +kerning first=72 second=366 amount=-1 +kerning first=337 second=46 amount=-1 +kerning first=80 second=332 amount=-1 +kerning first=1034 second=1038 amount=-2 +kerning first=197 second=79 amount=-1 +kerning first=363 second=283 amount=-1 +kerning first=1091 second=1084 amount=-1 +kerning first=1075 second=1087 amount=-1 +kerning first=364 second=225 amount=-1 +kerning first=1055 second=1084 amount=-1 +kerning first=330 second=274 amount=-1 +kerning first=221 second=332 amount=-1 +kerning first=366 second=274 amount=-1 +kerning first=75 second=357 amount=-1 +kerning first=86 second=195 amount=-1 +kerning first=287 second=250 amount=-1 +kerning first=264 second=104 amount=-1 +kerning first=321 second=366 amount=-1 +kerning first=88 second=46 amount=-1 +kerning first=366 second=76 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=192 second=104 amount=-1 +kerning first=77 second=70 amount=-1 +kerning first=352 second=207 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=302 second=259 amount=-1 +kerning first=1051 second=1105 amount=-1 +kerning first=8250 second=345 amount=-1 +kerning first=203 second=213 amount=-1 +kerning first=234 second=311 amount=-1 +kerning first=1047 second=1053 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=240 second=122 amount=-1 +kerning first=278 second=323 amount=-1 +kerning first=8217 second=122 amount=-1 +kerning first=290 second=70 amount=-1 +kerning first=283 second=271 amount=-1 +kerning first=206 second=323 amount=-1 +kerning first=269 second=369 amount=-1 +kerning first=204 second=122 amount=-1 +kerning first=374 second=259 amount=-1 +kerning first=70 second=198 amount=-1 +kerning first=233 second=369 amount=-1 +kerning first=225 second=113 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=356 second=378 amount=-1 +kerning first=261 second=113 amount=-1 +kerning first=287 second=8222 amount=-1 +kerning first=350 second=323 amount=-1 +kerning first=80 second=83 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=248 second=378 amount=-1 +kerning first=1048 second=1041 amount=-1 +kerning first=198 second=75 amount=-1 +kerning first=72 second=46 amount=-1 +kerning first=1038 second=1099 amount=-1 +kerning first=84 second=113 amount=-1 +kerning first=281 second=116 amount=-1 +kerning first=280 second=207 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=89 second=197 amount=-1 +kerning first=8217 second=249 amount=-1 +kerning first=209 second=116 amount=-1 +kerning first=328 second=119 amount=-1 +kerning first=278 second=116 amount=-1 +kerning first=85 second=201 amount=-1 +kerning first=88 second=366 amount=-1 +kerning first=78 second=113 amount=-1 +kerning first=245 second=314 amount=-1 +kerning first=206 second=116 amount=-1 +kerning first=204 second=204 amount=-1 +kerning first=1057 second=1081 amount=-1 +kerning first=101 second=271 amount=-1 +kerning first=74 second=363 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=355 second=259 amount=-1 +kerning first=353 second=314 amount=-1 +kerning first=1071 second=1084 amount=-1 +kerning first=281 second=314 amount=-1 +kerning first=268 second=110 amount=-1 +kerning first=287 second=363 amount=-1 +kerning first=332 second=187 amount=-1 +kerning first=327 second=113 amount=-1 +kerning first=209 second=67 amount=-1 +kerning first=368 second=256 amount=-1 +kerning first=363 second=113 amount=-1 +kerning first=69 second=82 amount=-1 +kerning first=101 second=116 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=70 second=259 amount=-1 +kerning first=65 second=116 amount=-1 +kerning first=291 second=113 amount=-1 +kerning first=268 second=317 amount=-1 +kerning first=193 second=366 amount=-1 +kerning first=8218 second=240 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=73 second=210 amount=-1 +kerning first=219 second=113 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=103 second=101 amount=-1 +kerning first=282 second=73 amount=-1 +kerning first=8217 second=234 amount=-1 +kerning first=67 second=101 amount=-1 +kerning first=366 second=271 amount=-1 +kerning first=119 second=254 amount=-1 +kerning first=207 second=302 amount=-1 +kerning first=330 second=271 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=274 second=219 amount=-1 +kerning first=310 second=219 amount=-1 +kerning first=116 second=8250 amount=-1 +kerning first=199 second=268 amount=-1 +kerning first=202 second=219 amount=-1 +kerning first=243 second=8220 amount=-2 +kerning first=80 second=8250 amount=-1 +kerning first=316 second=101 amount=-1 +kerning first=279 second=122 amount=-1 +kerning first=259 second=277 amount=-1 +kerning first=1038 second=1113 amount=-1 +kerning first=198 second=262 amount=-1 +kerning first=339 second=311 amount=-1 +kerning first=69 second=73 amount=-1 +kerning first=323 second=317 amount=-1 +kerning first=207 second=122 amount=-1 +kerning first=203 second=290 amount=-1 +kerning first=375 second=311 amount=-1 +kerning first=243 second=122 amount=-1 +kerning first=267 second=311 amount=-1 +kerning first=281 second=380 amount=-1 +kerning first=68 second=218 amount=-1 +kerning first=367 second=277 amount=-1 +kerning first=195 second=311 amount=-1 +kerning first=98 second=345 amount=-1 +kerning first=1047 second=1102 amount=-1 +kerning first=231 second=311 amount=-1 +kerning first=210 second=73 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=234 second=235 amount=-1 +kerning first=296 second=283 amount=-1 +kerning first=268 second=290 amount=-1 +kerning first=8218 second=267 amount=-1 +kerning first=304 second=290 amount=-1 +kerning first=224 second=283 amount=-1 +kerning first=198 second=82 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=305 second=114 amount=-1 +kerning first=245 second=287 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=270 second=82 amount=-1 +kerning first=68 second=8222 amount=-1 +kerning first=104 second=287 amount=-1 +kerning first=315 second=8220 amount=-1 +kerning first=204 second=351 amount=-1 +kerning first=353 second=287 amount=-1 +kerning first=1053 second=1031 amount=-1 +kerning first=1044 second=1091 amount=-1 +kerning first=100 second=187 amount=-1 +kerning first=99 second=351 amount=-1 +kerning first=281 second=287 amount=-1 +kerning first=262 second=278 amount=-1 +kerning first=1076 second=1095 amount=-1 +kerning first=327 second=347 amount=-1 +kerning first=304 second=83 amount=-1 +kerning first=70 second=286 amount=-1 +kerning first=219 second=347 amount=-1 +kerning first=368 second=283 amount=-1 +kerning first=196 second=290 amount=-1 +kerning first=255 second=347 amount=-1 +kerning first=8217 second=81 amount=-1 +kerning first=347 second=171 amount=-1 +kerning first=267 second=104 amount=-1 +kerning first=187 second=70 amount=-1 +kerning first=228 second=333 amount=-1 +kerning first=1052 second=1099 amount=-1 +kerning first=87 second=333 amount=-1 +kerning first=195 second=104 amount=-1 +kerning first=117 second=244 amount=-1 +kerning first=80 second=278 amount=-1 +kerning first=231 second=104 amount=-1 +kerning first=272 second=274 amount=-1 +kerning first=1068 second=1101 amount=-1 +kerning first=264 second=333 amount=-1 +kerning first=278 second=280 amount=-1 +kerning first=330 second=244 amount=-1 +kerning first=1030 second=1094 amount=-1 +kerning first=366 second=244 amount=-1 +kerning first=259 second=8217 amount=-2 +kerning first=240 second=231 amount=-1 +kerning first=334 second=201 amount=-1 +kerning first=370 second=201 amount=-1 +kerning first=212 second=195 amount=-1 +kerning first=262 second=201 amount=-1 +kerning first=203 second=171 amount=-1 +kerning first=298 second=201 amount=-1 +kerning first=315 second=89 amount=-1 +kerning first=8250 second=310 amount=-1 +kerning first=339 second=104 amount=-1 +kerning first=99 second=231 amount=-1 +kerning first=311 second=171 amount=-1 +kerning first=354 second=100 amount=-1 +kerning first=287 second=316 amount=-1 +kerning first=374 second=71 amount=-1 +kerning first=305 second=269 amount=-1 +kerning first=1065 second=1088 amount=-1 +kerning first=280 second=362 amount=-1 +kerning first=338 second=71 amount=-1 +kerning first=283 second=106 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=98 second=318 amount=-1 +kerning first=233 second=269 amount=-1 +kerning first=352 second=362 amount=-1 +kerning first=80 second=120 amount=-1 +kerning first=219 second=266 amount=-1 +kerning first=8217 second=288 amount=-1 +kerning first=368 second=310 amount=-1 +kerning first=327 second=200 amount=-1 +kerning first=89 second=245 amount=-1 +kerning first=220 second=65 amount=-1 +kerning first=296 second=310 amount=-1 +kerning first=275 second=318 amount=-1 +kerning first=78 second=266 amount=-1 +kerning first=311 second=318 amount=-1 +kerning first=347 second=318 amount=-1 +kerning first=223 second=8222 amount=-1 +kerning first=364 second=65 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=67 second=362 amount=-1 +kerning first=118 second=8222 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=203 second=45 amount=-1 +kerning first=199 second=214 amount=-1 +kerning first=82 second=8222 amount=-1 +kerning first=207 second=275 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=103 second=231 amount=-1 +kerning first=69 second=199 amount=-1 +kerning first=279 second=275 amount=-1 +kerning first=311 second=45 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=347 second=45 amount=-1 +kerning first=196 second=371 amount=-1 +kerning first=354 second=226 amount=-1 +kerning first=235 second=8221 amount=-2 +kerning first=82 second=223 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=86 second=234 amount=-1 +kerning first=227 second=234 amount=-1 +kerning first=364 second=380 amount=-1 +kerning first=219 second=200 amount=-1 +kerning first=258 second=217 amount=-1 +kerning first=355 second=232 amount=-1 +kerning first=110 second=243 amount=-1 +kerning first=251 second=243 amount=-1 +kerning first=221 second=251 amount=-1 +kerning first=78 second=200 amount=-1 +kerning first=330 second=217 amount=-1 +kerning first=283 second=232 amount=-1 +kerning first=226 second=8220 amount=-2 +kerning first=323 second=243 amount=-1 +kerning first=327 second=266 amount=-1 +kerning first=287 second=243 amount=-1 +kerning first=65 second=89 amount=-1 +kerning first=203 second=345 amount=-1 +kerning first=70 second=232 amount=-1 +kerning first=241 second=8221 amount=-2 +kerning first=103 second=335 amount=-1 +kerning first=214 second=8250 amount=-1 +kerning first=275 second=345 amount=-1 +kerning first=277 second=8221 amount=-2 +kerning first=70 second=352 amount=-1 +kerning first=1054 second=1037 amount=-1 +kerning first=313 second=8221 amount=-1 +kerning first=305 second=242 amount=-1 +kerning first=310 second=105 amount=-1 +kerning first=233 second=242 amount=-1 +kerning first=283 second=99 amount=-1 +kerning first=203 second=72 amount=-1 +kerning first=269 second=242 amount=-1 +kerning first=106 second=232 amount=-1 +kerning first=304 second=344 amount=-1 +kerning first=199 second=241 amount=-1 +kerning first=268 second=344 amount=-1 +kerning first=263 second=234 amount=-1 +kerning first=194 second=98 amount=-1 +kerning first=74 second=336 amount=-1 +kerning first=1046 second=1096 amount=-1 +kerning first=104 second=233 amount=-1 +kerning first=87 second=267 amount=-1 +kerning first=368 second=284 amount=-1 +kerning first=67 second=335 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=266 second=98 amount=-1 +kerning first=323 second=336 amount=-1 +kerning first=281 second=233 amount=-1 +kerning first=218 second=80 amount=-1 +kerning first=99 second=378 amount=-1 +kerning first=1033 second=1045 amount=-1 +kerning first=298 second=114 amount=-1 +kerning first=209 second=233 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=282 second=199 amount=-1 +kerning first=77 second=80 amount=-1 +kerning first=323 second=216 amount=-1 +kerning first=1069 second=1045 amount=-1 +kerning first=362 second=80 amount=-1 +kerning first=240 second=378 amount=-1 +kerning first=121 second=114 amount=-1 +kerning first=1040 second=1094 amount=-1 +kerning first=290 second=80 amount=-1 +kerning first=204 second=378 amount=-1 +kerning first=354 second=46 amount=-1 +kerning first=366 second=268 amount=-1 +kerning first=226 second=114 amount=-1 +kerning first=1042 second=1046 amount=-1 +kerning first=8250 second=364 amount=-1 +kerning first=80 second=224 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=289 second=318 amount=-1 +kerning first=228 second=108 amount=-1 +kerning first=85 second=114 amount=-1 +kerning first=362 second=327 amount=-1 +kerning first=8217 second=261 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=220 second=353 amount=-1 +kerning first=199 second=115 amount=-1 +kerning first=74 second=216 amount=-1 +kerning first=356 second=115 amount=-1 +kerning first=235 second=115 amount=-1 +kerning first=187 second=250 amount=-1 +kerning first=100 second=8221 amount=-1 +kerning first=85 second=290 amount=-1 +kerning first=118 second=250 amount=-1 +kerning first=221 second=224 amount=-1 +kerning first=364 second=353 amount=-1 +kerning first=274 second=78 amount=-1 +kerning first=277 second=44 amount=-1 +kerning first=86 second=273 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=346 second=78 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=1051 second=1098 amount=-1 +kerning first=107 second=8249 amount=-1 +kerning first=100 second=283 amount=-1 +kerning first=200 second=355 amount=-1 +kerning first=330 second=352 amount=-1 +kerning first=323 second=282 amount=-1 +kerning first=284 second=8249 amount=-1 +kerning first=366 second=352 amount=-1 +kerning first=199 second=8220 amount=-1 +kerning first=264 second=72 amount=-1 +kerning first=362 second=248 amount=-1 +kerning first=1052 second=1104 amount=-1 +kerning first=326 second=248 amount=-1 +kerning first=262 second=102 amount=-1 +kerning first=74 second=282 amount=-1 +kerning first=220 second=218 amount=-1 +kerning first=77 second=248 amount=-1 +kerning first=316 second=337 amount=-1 +kerning first=218 second=248 amount=-1 +kerning first=370 second=102 amount=-1 +kerning first=334 second=87 amount=-1 +kerning first=68 second=75 amount=-1 +kerning first=68 second=206 amount=-1 +kerning first=229 second=101 amount=-1 +kerning first=1042 second=1031 amount=-1 +kerning first=347 second=291 amount=-1 +kerning first=69 second=361 amount=-1 +kerning first=311 second=291 amount=-1 +kerning first=1054 second=1024 amount=-1 +kerning first=282 second=361 amount=-1 +kerning first=275 second=291 amount=-1 +kerning first=271 second=279 amount=-1 +kerning first=119 second=345 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=209 second=206 amount=-1 +kerning first=86 second=288 amount=-1 +kerning first=335 second=8218 amount=-1 +kerning first=1039 second=1080 amount=-1 +kerning first=75 second=8221 amount=-1 +kerning first=270 second=368 amount=-1 +kerning first=111 second=8221 amount=-2 +kerning first=263 second=8218 amount=-1 +kerning first=262 second=8221 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=296 second=337 amount=-1 +kerning first=216 second=8221 amount=-2 +kerning first=1064 second=1095 amount=-1 +kerning first=67 second=227 amount=-1 +kerning first=252 second=8221 amount=-1 +kerning first=224 second=337 amount=-1 +kerning first=1054 second=1064 amount=-1 +kerning first=288 second=8221 amount=-1 +kerning first=1052 second=1079 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=198 second=368 amount=-1 +kerning first=221 second=197 amount=-1 +kerning first=302 second=266 amount=-1 +kerning first=197 second=362 amount=-1 +kerning first=199 second=187 amount=-1 +kerning first=266 second=266 amount=-1 +kerning first=352 second=200 amount=-1 +kerning first=374 second=266 amount=-1 +kerning first=81 second=325 amount=-1 +kerning first=87 second=99 amount=-1 +kerning first=338 second=266 amount=-1 +kerning first=85 second=75 amount=-1 +kerning first=307 second=187 amount=-1 +kerning first=1052 second=1077 amount=-1 +kerning first=89 second=266 amount=-1 +kerning first=235 second=187 amount=-1 +kerning first=228 second=99 amount=-1 +kerning first=86 second=8218 amount=-2 +kerning first=271 second=187 amount=-1 +kerning first=264 second=99 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=107 second=8222 amount=-1 +kerning first=366 second=325 amount=-1 +kerning first=205 second=71 amount=-1 +kerning first=71 second=8222 amount=-1 +kerning first=275 second=279 amount=-1 +kerning first=296 second=78 amount=-1 +kerning first=231 second=353 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=326 second=275 amount=-1 +kerning first=370 second=75 amount=-1 +kerning first=334 second=75 amount=-1 +kerning first=298 second=75 amount=-1 +kerning first=266 second=8218 amount=-1 +kerning first=362 second=275 amount=-1 +kerning first=262 second=75 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=263 second=245 amount=-1 +kerning first=211 second=78 amount=-1 +kerning first=346 second=66 amount=-1 +kerning first=1052 second=1052 amount=-1 +kerning first=274 second=66 amount=-1 +kerning first=221 second=371 amount=-1 +kerning first=69 second=334 amount=-1 +kerning first=286 second=69 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=202 second=66 amount=-1 +kerning first=366 second=249 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=1039 second=1107 amount=-1 +kerning first=200 second=367 amount=-1 +kerning first=1064 second=1068 amount=-1 +kerning first=209 second=380 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=211 second=205 amount=-1 +kerning first=73 second=69 amount=-1 +kerning first=70 second=205 amount=-1 +kerning first=232 second=250 amount=-1 +kerning first=214 second=69 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=245 second=380 amount=-1 +kerning first=330 second=350 amount=-1 +kerning first=263 second=273 amount=-1 +kerning first=366 second=350 amount=-1 +kerning first=1071 second=1030 amount=-1 +kerning first=70 second=193 amount=-1 +kerning first=368 second=364 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=268 second=209 amount=-1 +kerning first=296 second=364 amount=-1 +kerning first=218 second=194 amount=-1 +kerning first=344 second=286 amount=-1 +kerning first=207 second=68 amount=-1 +kerning first=339 second=365 amount=-1 +kerning first=200 second=286 amount=-1 +kerning first=8217 second=273 amount=-1 +kerning first=375 second=365 amount=-1 +kerning first=1036 second=1057 amount=-1 +kerning first=267 second=365 amount=-1 +kerning first=81 second=298 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=268 second=263 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=304 second=263 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=350 second=203 amount=-1 +kerning first=231 second=365 amount=-1 +kerning first=323 second=351 amount=-1 +kerning first=69 second=332 amount=-1 +kerning first=99 second=117 amount=-1 +kerning first=351 second=8218 amount=-1 +kerning first=199 second=229 amount=-1 +kerning first=206 second=203 amount=-1 +kerning first=1042 second=1085 amount=-1 +kerning first=1046 second=1108 amount=-1 +kerning first=1040 second=1054 amount=-1 +kerning first=366 second=298 amount=-1 +kerning first=1073 second=1083 amount=-1 +kerning first=210 second=69 amount=-1 +kerning first=234 second=316 amount=-1 +kerning first=219 second=332 amount=-1 +kerning first=267 second=242 amount=-1 +kerning first=81 second=323 amount=-1 +kerning first=8222 second=118 amount=-1 +kerning first=1047 second=1048 amount=-1 +kerning first=1052 second=1025 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=70 second=220 amount=-1 +kerning first=214 second=66 amount=-1 +kerning first=263 second=246 amount=-1 +kerning first=315 second=356 amount=-1 +kerning first=227 second=246 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=305 second=103 amount=-1 +kerning first=103 second=281 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=233 second=103 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=212 second=304 amount=-1 +kerning first=205 second=330 amount=-1 +kerning first=362 second=194 amount=-1 +kerning first=199 second=100 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=284 second=304 amount=-1 +kerning first=366 second=323 amount=-1 +kerning first=316 second=281 amount=-1 +kerning first=330 second=323 amount=-1 +kerning first=235 second=100 amount=-1 +kerning first=71 second=304 amount=-1 +kerning first=1058 second=1077 amount=-1 +kerning first=220 second=245 amount=-1 +kerning first=187 second=109 amount=-1 +kerning first=210 second=280 amount=-1 +kerning first=74 second=231 amount=-1 +kerning first=1030 second=1067 amount=-1 +kerning first=282 second=280 amount=-1 +kerning first=364 second=8217 amount=-1 +kerning first=269 second=335 amount=-1 +kerning first=80 second=85 amount=-1 +kerning first=287 second=337 amount=-1 +kerning first=80 second=110 amount=-1 +kerning first=203 second=210 amount=-1 +kerning first=272 second=313 amount=-1 +kerning first=221 second=110 amount=-1 +kerning first=8217 second=369 amount=-1 +kerning first=229 second=339 amount=-1 +kerning first=8218 second=213 amount=-1 +kerning first=287 second=324 amount=-1 +kerning first=354 second=8250 amount=-1 +kerning first=364 second=245 amount=-1 +kerning first=328 second=245 amount=-1 +kerning first=200 second=313 amount=-1 +kerning first=282 second=8250 amount=-1 +kerning first=70 second=118 amount=-1 +kerning first=205 second=357 amount=-1 +kerning first=1077 second=1118 amount=-1 +kerning first=277 second=357 amount=-1 +kerning first=105 second=8250 amount=-1 +kerning first=374 second=212 amount=-1 +kerning first=69 second=8250 amount=-1 +kerning first=255 second=8220 amount=-2 +kerning first=234 second=289 amount=-1 +kerning first=1049 second=1101 amount=-1 +kerning first=314 second=101 amount=-1 +kerning first=269 second=101 amount=-1 +kerning first=8218 second=86 amount=-2 +kerning first=81 second=296 amount=-1 +kerning first=266 second=212 amount=-1 +kerning first=220 second=8217 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=302 second=212 amount=-1 +kerning first=280 second=200 amount=-1 +kerning first=256 second=8217 amount=-2 +kerning first=73 second=111 amount=-1 +kerning first=338 second=212 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=67 second=254 amount=-1 +kerning first=69 second=280 amount=-1 +kerning first=79 second=8217 amount=-2 +kerning first=250 second=111 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=103 second=254 amount=-1 +kerning first=115 second=8217 amount=-2 +kerning first=248 second=287 amount=-1 +kerning first=67 second=347 amount=-1 +kerning first=366 second=296 amount=-1 +kerning first=1088 second=1084 amount=-1 +kerning first=262 second=318 amount=-1 +kerning first=363 second=335 amount=-1 +kerning first=330 second=296 amount=-1 +kerning first=345 second=228 amount=-1 +kerning first=327 second=335 amount=-1 +kerning first=296 second=241 amount=-1 +kerning first=304 second=85 amount=-1 +kerning first=1052 second=1080 amount=-1 +kerning first=268 second=85 amount=-1 +kerning first=275 second=107 amount=-1 +kerning first=196 second=85 amount=-1 +kerning first=1031 second=1056 amount=-1 +kerning first=234 second=287 amount=-1 +kerning first=196 second=8220 amount=-2 +kerning first=192 second=364 amount=-1 +kerning first=219 second=231 amount=-1 +kerning first=235 second=46 amount=-1 +kerning first=268 second=8220 amount=-1 +kerning first=89 second=65 amount=-1 +kerning first=77 second=339 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=269 second=271 amount=-1 +kerning first=268 second=302 amount=-1 +kerning first=249 second=243 amount=-1 +kerning first=233 second=271 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=304 second=302 amount=-1 +kerning first=78 second=335 amount=-1 +kerning first=364 second=83 amount=-1 +kerning first=1057 second=1096 amount=-1 +kerning first=219 second=335 amount=-1 +kerning first=245 second=187 amount=-1 +kerning first=364 second=284 amount=-1 +kerning first=204 second=206 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=104 second=289 amount=-1 +kerning first=245 second=289 amount=-1 +kerning first=321 second=86 amount=-1 +kerning first=8250 second=78 amount=-1 +kerning first=207 second=344 amount=-1 +kerning first=220 second=284 amount=-1 +kerning first=281 second=289 amount=-1 +kerning first=210 second=278 amount=-1 +kerning first=207 second=80 amount=-1 +kerning first=323 second=378 amount=-1 +kerning first=199 second=46 amount=-1 +kerning first=352 second=76 amount=-1 +kerning first=1038 second=1094 amount=-1 +kerning first=202 second=207 amount=-1 +kerning first=287 second=378 amount=-1 +kerning first=353 second=289 amount=-1 +kerning first=280 second=76 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=267 second=353 amount=-1 +kerning first=85 second=216 amount=-1 +kerning first=375 second=353 amount=-1 +kerning first=195 second=89 amount=-1 +kerning first=339 second=353 amount=-1 +kerning first=370 second=337 amount=-1 +kerning first=282 second=278 amount=-1 +kerning first=74 second=378 amount=-1 +kerning first=230 second=357 amount=-1 +kerning first=240 second=279 amount=-1 +kerning first=8217 second=350 amount=-1 +kerning first=262 second=216 amount=-1 +kerning first=80 second=280 amount=-1 +kerning first=249 second=246 amount=-1 +kerning first=323 second=81 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=266 second=357 amount=-1 +kerning first=1104 second=1118 amount=-1 +kerning first=266 second=113 amount=-1 +kerning first=302 second=113 amount=-1 +kerning first=1060 second=1084 amount=-1 +kerning first=218 second=114 amount=-1 +kerning first=230 second=113 amount=-1 +kerning first=201 second=201 amount=-1 +kerning first=117 second=269 amount=-1 +kerning first=1055 second=1094 amount=-1 +kerning first=89 second=113 amount=-1 +kerning first=330 second=269 amount=-1 +kerning first=1091 second=1094 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=366 second=269 amount=-1 +kerning first=195 second=116 amount=-1 +kerning first=296 second=268 amount=-1 +kerning first=274 second=207 amount=-1 +kerning first=1066 second=1045 amount=-1 +kerning first=253 second=8220 amount=-2 +kerning first=346 second=207 amount=-1 +kerning first=213 second=256 amount=-1 +kerning first=313 second=368 amount=-1 +kerning first=364 second=67 amount=-1 +kerning first=101 second=231 amount=-1 +kerning first=368 second=268 amount=-1 +kerning first=333 second=287 amount=-1 +kerning first=374 second=113 amount=-1 +kerning first=86 second=369 amount=-1 +kerning first=77 second=366 amount=-1 +kerning first=220 second=67 amount=-1 +kerning first=279 second=107 amount=-1 +kerning first=77 second=122 amount=-1 +kerning first=1046 second=1102 amount=-1 +kerning first=270 second=260 amount=-1 +kerning first=356 second=277 amount=-1 +kerning first=263 second=250 amount=-1 +kerning first=199 second=73 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=8250 second=251 amount=-1 +kerning first=209 second=262 amount=-1 +kerning first=207 second=317 amount=-1 +kerning first=74 second=351 amount=-1 +kerning first=321 second=219 amount=-1 +kerning first=69 second=251 amount=-1 +kerning first=217 second=213 amount=-1 +kerning first=339 second=116 amount=-1 +kerning first=65 second=375 amount=-1 +kerning first=362 second=122 amount=-1 +kerning first=1036 second=1102 amount=-1 +kerning first=267 second=326 amount=-1 +kerning first=1043 second=1076 amount=-1 +kerning first=254 second=122 amount=-1 +kerning first=231 second=326 amount=-1 +kerning first=8222 second=356 amount=-1 +kerning first=66 second=218 amount=-1 +kerning first=1056 second=1117 amount=-1 +kerning first=1050 second=1038 amount=-1 +kerning first=282 second=251 amount=-1 +kerning first=72 second=219 amount=-1 +kerning first=218 second=122 amount=-1 +kerning first=1068 second=1061 amount=-1 +kerning first=8250 second=219 amount=-1 +kerning first=350 second=218 amount=-1 +kerning first=262 second=270 amount=-1 +kerning first=304 second=248 amount=-1 +kerning first=89 second=8221 amount=-1 +kerning first=72 second=283 amount=-1 +kerning first=267 second=380 amount=-1 +kerning first=278 second=218 amount=-1 +kerning first=108 second=283 amount=-1 +kerning first=231 second=380 amount=-1 +kerning first=194 second=8221 amount=-2 +kerning first=1049 second=1089 amount=-1 +kerning first=339 second=380 amount=-1 +kerning first=370 second=270 amount=-1 +kerning first=206 second=218 amount=-1 +kerning first=117 second=242 amount=-1 +kerning first=230 second=8221 amount=-2 +kerning first=201 second=75 amount=-1 +kerning first=229 second=231 amount=-1 +kerning first=266 second=8221 amount=-1 +kerning first=85 second=336 amount=-1 +kerning first=298 second=270 amount=-1 +kerning first=1030 second=1065 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=375 second=380 amount=-1 +kerning first=334 second=270 amount=-1 +kerning first=65 second=218 amount=-1 +kerning first=232 second=248 amount=-1 +kerning first=338 second=8221 amount=-1 +kerning first=200 second=79 amount=-1 +kerning first=218 second=209 amount=-1 +kerning first=374 second=8221 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=221 second=226 amount=-1 +kerning first=262 second=336 amount=-1 +kerning first=298 second=336 amount=-1 +kerning first=72 second=66 amount=-1 +kerning first=8250 second=241 amount=-1 +kerning first=370 second=336 amount=-1 +kerning first=85 second=270 amount=-1 +kerning first=249 second=283 amount=-1 +kerning first=366 second=242 amount=-1 +kerning first=218 second=227 amount=-1 +kerning first=233 second=244 amount=-1 +kerning first=269 second=244 amount=-1 +kerning first=272 second=205 amount=-1 +kerning first=305 second=244 amount=-1 +kerning first=71 second=70 amount=-1 +kerning first=1038 second=1097 amount=-1 +kerning first=8222 second=275 amount=-1 +kerning first=1101 second=1113 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=284 second=8222 amount=-1 +kerning first=344 second=79 amount=-1 +kerning first=202 second=327 amount=-1 +kerning first=248 second=8222 amount=-1 +kerning first=212 second=8222 amount=-1 +kerning first=355 second=267 amount=-1 +kerning first=106 second=8220 amount=-1 +kerning first=115 second=8221 amount=-2 +kerning first=213 second=192 amount=-1 +kerning first=327 second=44 amount=-1 +kerning first=346 second=327 amount=-1 +kerning first=261 second=8217 amount=-2 +kerning first=291 second=318 amount=-1 +kerning first=255 second=44 amount=-1 +kerning first=104 second=235 amount=-1 +kerning first=193 second=44 amount=-1 +kerning first=291 second=44 amount=-1 +kerning first=99 second=110 amount=-1 +kerning first=200 second=205 amount=-1 +kerning first=209 second=235 amount=-1 +kerning first=374 second=227 amount=-1 +kerning first=212 second=70 amount=-1 +kerning first=281 second=235 amount=-1 +kerning first=302 second=227 amount=-1 +kerning first=270 second=347 amount=-1 +kerning first=284 second=70 amount=-1 +kerning first=266 second=227 amount=-1 +kerning first=100 second=171 amount=-1 +kerning first=219 second=71 amount=-1 +kerning first=85 second=363 amount=-1 +kerning first=117 second=289 amount=-1 +kerning first=121 second=363 amount=-1 +kerning first=67 second=266 amount=-1 +kerning first=78 second=71 amount=-1 +kerning first=368 second=214 amount=-1 +kerning first=368 second=115 amount=-1 +kerning first=198 second=370 amount=-1 +kerning first=85 second=243 amount=-1 +kerning first=304 second=275 amount=-1 +kerning first=213 second=310 amount=-1 +kerning first=354 second=224 amount=-1 +kerning first=296 second=214 amount=-1 +kerning first=370 second=363 amount=-1 +kerning first=87 second=45 amount=-2 +kerning first=268 second=275 amount=-1 +kerning first=219 second=362 amount=-1 +kerning first=270 second=370 amount=-1 +kerning first=232 second=275 amount=-1 +kerning first=284 second=223 amount=-1 +kerning first=228 second=45 amount=-1 +kerning first=1104 second=1081 amount=-1 +kerning first=264 second=45 amount=-1 +kerning first=277 second=249 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=8250 second=268 amount=-1 +kerning first=71 second=223 amount=-1 +kerning first=1064 second=1097 amount=-1 +kerning first=97 second=234 amount=-1 +kerning first=241 second=235 amount=-1 +kerning first=220 second=257 amount=-1 +kerning first=1055 second=1028 amount=-1 +kerning first=338 second=216 amount=-1 +kerning first=1056 second=1063 amount=-1 +kerning first=217 second=267 amount=-1 +kerning first=197 second=217 amount=-1 +kerning first=78 second=362 amount=-1 +kerning first=290 second=209 amount=-1 +kerning first=325 second=267 amount=-1 +kerning first=338 second=200 amount=-1 +kerning first=298 second=243 amount=-1 +kerning first=1089 second=1095 amount=-1 +kerning first=82 second=368 amount=-1 +kerning first=302 second=200 amount=-1 +kerning first=262 second=243 amount=-1 +kerning first=1053 second=1095 amount=-1 +kerning first=217 second=8222 amount=-2 +kerning first=266 second=200 amount=-1 +kerning first=66 second=371 amount=-1 +kerning first=109 second=345 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=1044 second=1072 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=356 second=97 amount=-1 +kerning first=250 second=345 amount=-1 +kerning first=280 second=266 amount=-1 +kerning first=286 second=345 amount=-1 +kerning first=8218 second=99 amount=-1 +kerning first=1030 second=1049 amount=-1 +kerning first=202 second=8218 amount=-1 +kerning first=339 second=245 amount=-1 +kerning first=315 second=221 amount=-1 +kerning first=8218 second=378 amount=-1 +kerning first=68 second=370 amount=-1 +kerning first=346 second=8218 amount=-1 +kerning first=267 second=245 amount=-1 +kerning first=66 second=221 amount=-1 +kerning first=274 second=315 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=317 second=370 amount=-1 +kerning first=310 second=8218 amount=-1 +kerning first=231 second=245 amount=-1 +kerning first=209 second=370 amount=-1 +kerning first=274 second=8218 amount=-1 +kerning first=1067 second=1073 amount=-1 +kerning first=171 second=221 amount=-1 +kerning first=202 second=315 amount=-1 +kerning first=84 second=111 amount=-1 +kerning first=362 second=258 amount=-1 +kerning first=1050 second=1092 amount=-1 +kerning first=350 second=46 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=1038 second=1101 amount=-1 +kerning first=338 second=249 amount=-1 +kerning first=268 second=199 amount=-1 +kerning first=304 second=199 amount=-1 +kerning first=89 second=249 amount=-1 +kerning first=1065 second=1086 amount=-1 +kerning first=267 second=230 amount=-1 +kerning first=1056 second=1024 amount=-1 +kerning first=68 second=354 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=314 second=267 amount=-1 +kerning first=280 second=217 amount=-1 +kerning first=1053 second=1068 amount=-1 +kerning first=219 second=212 amount=-1 +kerning first=352 second=217 amount=-1 +kerning first=101 second=267 amount=-1 +kerning first=8222 second=226 amount=-1 +kerning first=327 second=212 amount=-1 +kerning first=206 second=267 amount=-1 +kerning first=201 second=8249 amount=-1 +kerning first=72 second=310 amount=-1 +kerning first=245 second=122 amount=-1 +kerning first=78 second=212 amount=-1 +kerning first=225 second=111 amount=-1 +kerning first=296 second=115 amount=-1 +kerning first=346 second=315 amount=-1 +kerning first=8222 second=253 amount=-1 +kerning first=261 second=111 amount=-1 +kerning first=218 second=258 amount=-1 +kerning first=1039 second=1101 amount=-1 +kerning first=345 second=8249 amount=-1 +kerning first=240 second=242 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=1062 second=1098 amount=-1 +kerning first=369 second=111 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=255 second=254 amount=-1 +kerning first=291 second=254 amount=-1 +kerning first=194 second=44 amount=-1 +kerning first=195 second=218 amount=-1 +kerning first=1050 second=1119 amount=-1 +kerning first=205 second=81 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=220 second=380 amount=-1 +kerning first=272 second=193 amount=-1 +kerning first=279 second=248 amount=-1 +kerning first=230 second=44 amount=-1 +kerning first=1068 second=1027 amount=-1 +kerning first=1039 second=1117 amount=-1 +kerning first=266 second=44 amount=-1 +kerning first=1030 second=1028 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=370 second=282 amount=-1 +kerning first=314 second=337 amount=-1 +kerning first=72 second=78 amount=-1 +kerning first=334 second=282 amount=-1 +kerning first=213 second=78 amount=-1 +kerning first=298 second=282 amount=-1 +kerning first=1067 second=1097 amount=-1 +kerning first=207 second=248 amount=-1 +kerning first=262 second=282 amount=-1 +kerning first=325 second=72 amount=-1 +kerning first=326 second=291 amount=-1 +kerning first=8250 second=214 amount=-1 +kerning first=217 second=72 amount=-1 +kerning first=1055 second=1055 amount=-1 +kerning first=78 second=227 amount=-1 +kerning first=85 second=282 amount=-1 +kerning first=1053 second=1041 amount=-1 +kerning first=73 second=279 amount=-1 +kerning first=109 second=279 amount=-1 +kerning first=218 second=224 amount=-1 +kerning first=231 second=230 amount=-1 +kerning first=221 second=361 amount=-1 +kerning first=199 second=332 amount=-1 +kerning first=1067 second=1054 amount=-1 +kerning first=249 second=337 amount=-1 +kerning first=274 second=288 amount=-1 +kerning first=327 second=330 amount=-1 +kerning first=70 second=323 amount=-1 +kerning first=206 second=278 amount=-1 +kerning first=327 second=227 amount=-1 +kerning first=374 second=44 amount=-1 +kerning first=224 second=187 amount=-1 +kerning first=212 second=270 amount=-1 +kerning first=108 second=337 amount=-1 +kerning first=202 second=288 amount=-1 +kerning first=260 second=187 amount=-1 +kerning first=109 second=291 amount=-1 +kerning first=1041 second=1050 amount=-1 +kerning first=72 second=337 amount=-1 +kerning first=219 second=227 amount=-1 +kerning first=1067 second=1094 amount=-1 +kerning first=1067 second=1057 amount=-1 +kerning first=8249 second=368 amount=-1 +kerning first=310 second=288 amount=-1 +kerning first=368 second=187 amount=-2 +kerning first=211 second=323 amount=-1 +kerning first=345 second=8222 amount=-1 +kerning first=220 second=338 amount=-1 +kerning first=1055 second=1067 amount=-1 +kerning first=8222 second=199 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=1051 second=1034 amount=-1 +kerning first=194 second=303 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=217 second=99 amount=-1 +kerning first=78 second=281 amount=-1 +kerning first=325 second=99 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=225 second=382 amount=-1 +kerning first=202 second=369 amount=-1 +kerning first=72 second=268 amount=-1 +kerning first=296 second=73 amount=-1 +kerning first=1091 second=1082 amount=-1 +kerning first=223 second=314 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=289 second=99 amount=-1 +kerning first=1046 second=1091 amount=-1 +kerning first=307 second=8250 amount=-1 +kerning first=368 second=73 amount=-1 +kerning first=207 second=290 amount=-1 +kerning first=333 second=382 amount=-1 +kerning first=271 second=8250 amount=-1 +kerning first=235 second=8250 amount=-1 +kerning first=346 second=369 amount=-1 +kerning first=199 second=8250 amount=-1 +kerning first=310 second=369 amount=-1 +kerning first=245 second=316 amount=-1 +kerning first=1067 second=1089 amount=-1 +kerning first=274 second=369 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=1031 second=1100 amount=-1 +kerning first=286 second=368 amount=-1 +kerning first=80 second=334 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=296 second=202 amount=-1 +kerning first=72 second=364 amount=-1 +kerning first=85 second=351 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=368 second=202 amount=-1 +kerning first=90 second=8217 amount=-1 +kerning first=1067 second=1100 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=221 second=334 amount=-1 +kerning first=334 second=351 amount=-1 +kerning first=298 second=351 amount=-1 +kerning first=262 second=351 amount=-1 +kerning first=73 second=264 amount=-1 +kerning first=212 second=82 amount=-1 +kerning first=339 second=8217 amount=-2 +kerning first=1053 second=1092 amount=-1 +kerning first=284 second=82 amount=-1 +kerning first=375 second=8217 amount=-2 +kerning first=321 second=364 amount=-1 +kerning first=1043 second=1091 amount=-1 +kerning first=364 second=338 amount=-1 +kerning first=70 second=296 amount=-1 +kerning first=366 second=101 amount=-1 +kerning first=231 second=8217 amount=-2 +kerning first=213 second=364 amount=-1 +kerning first=330 second=101 amount=-1 +kerning first=277 second=108 amount=-1 +kerning first=290 second=68 amount=-1 +kerning first=207 second=263 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=364 second=365 amount=-1 +kerning first=282 second=216 amount=-1 +kerning first=211 second=296 amount=-1 +kerning first=229 second=45 amount=-1 +kerning first=120 second=171 amount=-1 +kerning first=362 second=68 amount=-1 +kerning first=279 second=263 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=1048 second=1039 amount=-1 +kerning first=338 second=330 amount=-1 +kerning first=1053 second=1076 amount=-1 +kerning first=225 second=171 amount=-1 +kerning first=302 second=330 amount=-1 +kerning first=220 second=365 amount=-1 +kerning first=261 second=171 amount=-1 +kerning first=227 second=281 amount=-1 +kerning first=218 second=68 amount=-1 +kerning first=71 second=82 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=370 second=351 amount=-1 +kerning first=259 second=287 amount=-1 +kerning first=223 second=287 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=118 second=287 amount=-1 +kerning first=88 second=117 amount=-1 +kerning first=362 second=339 amount=-1 +kerning first=326 second=339 amount=-1 +kerning first=367 second=287 amount=-1 +kerning first=281 second=316 amount=-1 +kerning first=1031 second=1031 amount=-1 +kerning first=296 second=100 amount=-1 +kerning first=330 second=103 amount=-1 +kerning first=69 second=66 amount=-1 +kerning first=353 second=316 amount=-1 +kerning first=218 second=339 amount=-1 +kerning first=368 second=100 amount=-1 +kerning first=296 second=229 amount=-1 +kerning first=84 second=382 amount=-1 +kerning first=368 second=229 amount=-1 +kerning first=334 second=304 amount=-1 +kerning first=344 second=220 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=1043 second=1118 amount=-1 +kerning first=219 second=281 amount=-1 +kerning first=77 second=68 amount=-1 +kerning first=266 second=330 amount=-1 +kerning first=291 second=281 amount=-1 +kerning first=74 second=311 amount=-1 +kerning first=73 second=333 amount=-1 +kerning first=1044 second=1060 amount=-1 +kerning first=350 second=77 amount=-1 +kerning first=327 second=281 amount=-1 +kerning first=1067 second=1031 amount=-1 +kerning first=316 second=103 amount=-1 +kerning first=278 second=77 amount=-1 +kerning first=97 second=246 amount=-1 +kerning first=272 second=220 amount=-1 +kerning first=244 second=103 amount=-1 +kerning first=250 second=333 amount=-1 +kerning first=201 second=304 amount=-1 +kerning first=323 second=362 amount=-1 +kerning first=1047 second=1065 amount=-1 +kerning first=70 second=269 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=296 second=246 amount=-1 +kerning first=1047 second=1063 amount=-1 +kerning first=232 second=100 amount=-1 +kerning first=193 second=356 amount=-1 +kerning first=8218 second=230 amount=-1 +kerning first=8249 second=87 amount=-1 +kerning first=330 second=74 amount=-1 +kerning first=224 second=246 amount=-1 +kerning first=1057 second=1091 amount=-1 +kerning first=366 second=74 amount=-1 +kerning first=219 second=330 amount=-1 +kerning first=214 second=220 amount=-1 +kerning first=241 second=171 amount=-1 +kerning first=268 second=100 amount=-1 +kerning first=1031 second=1117 amount=-1 +kerning first=106 second=269 amount=-1 +kerning first=352 second=298 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=209 second=77 amount=-1 +kerning first=355 second=269 amount=-1 +kerning first=206 second=333 amount=-1 +kerning first=364 second=109 amount=-1 +kerning first=8222 second=334 amount=-1 +kerning first=209 second=304 amount=-1 +kerning first=298 second=211 amount=-1 +kerning first=283 second=269 amount=-1 +kerning first=101 second=333 amount=-1 +kerning first=262 second=211 amount=-1 +kerning first=86 second=109 amount=-1 +kerning first=1031 second=1096 amount=-1 +kerning first=289 second=365 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=270 second=65 amount=-1 +kerning first=98 second=382 amount=-1 +kerning first=217 second=365 amount=-1 +kerning first=281 second=8222 amount=-1 +kerning first=68 second=304 amount=-1 +kerning first=85 second=211 amount=-1 +kerning first=80 second=68 amount=-1 +kerning first=253 second=365 amount=-1 +kerning first=314 second=333 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=207 second=339 amount=-1 +kerning first=117 second=281 amount=-1 +kerning first=298 second=199 amount=-1 +kerning first=197 second=86 amount=-1 +kerning first=279 second=339 amount=-1 +kerning first=370 second=211 amount=-1 +kerning first=277 second=347 amount=-1 +kerning first=338 second=315 amount=-1 +kerning first=220 second=109 amount=-1 +kerning first=1071 second=1074 amount=-1 +kerning first=205 second=347 amount=-1 +kerning first=330 second=281 amount=-1 +kerning first=1043 second=1108 amount=-1 +kerning first=196 second=307 amount=-1 +kerning first=1048 second=1051 amount=-1 +kerning first=366 second=281 amount=-1 +kerning first=77 second=100 amount=-1 +kerning first=346 second=202 amount=-1 +kerning first=1059 second=1083 amount=-1 +kerning first=380 second=8221 amount=-1 +kerning first=282 second=290 amount=-1 +kerning first=1067 second=1117 amount=-1 +kerning first=1049 second=1057 amount=-1 +kerning first=193 second=119 amount=-1 +kerning first=78 second=330 amount=-1 +kerning first=68 second=77 amount=-1 +kerning first=200 second=264 amount=-1 +kerning first=235 second=251 amount=-1 +kerning first=277 second=120 amount=-1 +kerning first=274 second=202 amount=-1 +kerning first=8218 second=242 amount=-1 +kerning first=249 second=248 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=78 second=76 amount=-1 +kerning first=234 second=8217 amount=-2 +kerning first=228 second=269 amount=-1 +kerning first=264 second=77 amount=-1 +kerning first=1057 second=1118 amount=-1 +kerning first=270 second=8217 amount=-2 +kerning first=78 second=8221 amount=-1 +kerning first=325 second=274 amount=-1 +kerning first=114 second=8221 amount=-1 +kerning first=67 second=271 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=206 second=345 amount=-1 +kerning first=1056 second=1072 amount=-1 +kerning first=217 second=111 amount=-1 +kerning first=315 second=85 amount=-1 +kerning first=291 second=8221 amount=-2 +kerning first=258 second=254 amount=-1 +kerning first=289 second=111 amount=-1 +kerning first=234 second=245 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=70 second=242 amount=-1 +kerning first=325 second=111 amount=-1 +kerning first=207 second=85 amount=-1 +kerning first=106 second=242 amount=-1 +kerning first=209 second=331 amount=-1 +kerning first=171 second=85 amount=-1 +kerning first=378 second=8217 amount=-1 +kerning first=355 second=242 amount=-1 +kerning first=70 second=279 amount=-1 +kerning first=66 second=85 amount=-1 +kerning first=283 second=242 amount=-1 +kerning first=354 second=263 amount=-1 +kerning first=89 second=195 amount=-1 +kerning first=1071 second=1101 amount=-1 +kerning first=195 second=67 amount=-1 +kerning first=328 second=289 amount=-1 +kerning first=1048 second=1024 amount=-1 +kerning first=315 second=366 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=264 second=203 amount=-1 +kerning first=1051 second=1095 amount=-1 +kerning first=89 second=288 amount=-1 +kerning first=1055 second=1036 amount=-1 +kerning first=219 second=357 amount=-1 +kerning first=367 second=233 amount=-1 +kerning first=374 second=195 amount=-1 +kerning first=313 second=374 amount=-1 +kerning first=105 second=263 amount=-1 +kerning first=327 second=357 amount=-1 +kerning first=364 second=99 amount=-1 +kerning first=327 second=76 amount=-1 +kerning first=291 second=345 amount=-1 +kerning first=291 second=357 amount=-1 +kerning first=73 second=220 amount=-1 +kerning first=268 second=280 amount=-1 +kerning first=78 second=357 amount=-1 +kerning first=8222 second=214 amount=-1 +kerning first=304 second=280 amount=-1 +kerning first=1049 second=1084 amount=-1 +kerning first=219 second=76 amount=-1 +kerning first=368 second=246 amount=-1 +kerning first=201 second=363 amount=-1 +kerning first=199 second=224 amount=-1 +kerning first=257 second=122 amount=-1 +kerning first=210 second=317 amount=-1 +kerning first=362 second=378 amount=-1 +kerning first=205 second=207 amount=-1 +kerning first=282 second=317 amount=-1 +kerning first=253 second=311 amount=-1 +kerning first=1030 second=1104 amount=-1 +kerning first=221 second=122 amount=-1 +kerning first=284 second=201 amount=-1 +kerning first=289 second=311 amount=-1 +kerning first=80 second=122 amount=-1 +kerning first=99 second=107 amount=-1 +kerning first=212 second=201 amount=-1 +kerning first=1055 second=1072 amount=-1 +kerning first=199 second=269 amount=-1 +kerning first=171 second=366 amount=-1 +kerning first=1046 second=1118 amount=-1 +kerning first=67 second=244 amount=-1 +kerning first=192 second=116 amount=-1 +kerning first=77 second=378 amount=-1 +kerning first=207 second=366 amount=-1 +kerning first=103 second=244 amount=-1 +kerning first=218 second=204 amount=-1 +kerning first=66 second=366 amount=-1 +kerning first=1043 second=1081 amount=-1 +kerning first=213 second=354 amount=-1 +kerning first=8222 second=100 amount=-1 +kerning first=68 second=78 amount=-1 +kerning first=254 second=378 amount=-1 +kerning first=362 second=204 amount=-1 +kerning first=218 second=378 amount=-1 +kerning first=269 second=259 amount=-1 +kerning first=69 second=317 amount=-1 +kerning first=264 second=116 amount=-1 +kerning first=344 second=210 amount=-1 +kerning first=8222 second=307 amount=-1 +kerning first=1044 second=1102 amount=-1 +kerning first=72 second=75 amount=-1 +kerning first=200 second=210 amount=-1 +kerning first=1078 second=1095 amount=-1 +kerning first=220 second=262 amount=-1 +kerning first=1051 second=1049 amount=-1 +kerning first=268 second=73 amount=-1 +kerning first=117 second=335 amount=-1 +kerning first=364 second=262 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=225 second=345 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=230 second=369 amount=-1 +kerning first=261 second=345 amount=-1 +kerning first=368 second=219 amount=-1 +kerning first=1027 second=1040 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=304 second=73 amount=-1 +kerning first=327 second=207 amount=-1 +kerning first=330 second=335 amount=-1 +kerning first=221 second=268 amount=-1 +kerning first=333 second=345 amount=-1 +kerning first=296 second=219 amount=-1 +kerning first=105 second=244 amount=-1 +kerning first=369 second=345 amount=-1 +kerning first=374 second=369 amount=-1 +kerning first=206 second=213 amount=-1 +kerning first=366 second=335 amount=-1 +kerning first=338 second=369 amount=-1 +kerning first=80 second=268 amount=-1 +kerning first=217 second=198 amount=-1 +kerning first=213 second=88 amount=-1 +kerning first=8249 second=86 amount=-1 +kerning first=218 second=231 amount=-1 +kerning first=284 second=368 amount=-1 +kerning first=218 second=351 amount=-1 +kerning first=209 second=277 amount=-1 +kerning first=1036 second=1060 amount=-1 +kerning first=1030 second=1077 amount=-1 +kerning first=264 second=318 amount=-1 +kerning first=1055 second=1099 amount=-1 +kerning first=326 second=231 amount=-1 +kerning first=71 second=368 amount=-1 +kerning first=69 second=290 amount=-1 +kerning first=362 second=351 amount=-1 +kerning first=1071 second=1047 amount=-1 +kerning first=77 second=231 amount=-1 +kerning first=268 second=226 amount=-1 +kerning first=325 second=338 amount=-1 +kerning first=212 second=368 amount=-1 +kerning first=304 second=226 amount=-1 +kerning first=281 second=277 amount=-1 +kerning first=104 second=8249 amount=-1 +kerning first=217 second=279 amount=-1 +kerning first=334 second=200 amount=-1 +kerning first=220 second=82 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=217 second=338 amount=-1 +kerning first=1039 second=1031 amount=-1 +kerning first=77 second=351 amount=-1 +kerning first=362 second=231 amount=-1 +kerning first=67 second=217 amount=-1 +kerning first=97 second=283 amount=-1 +kerning first=353 second=8249 amount=-1 +kerning first=1038 second=1089 amount=-1 +kerning first=240 second=8222 amount=-1 +kerning first=253 second=45 amount=-1 +kerning first=214 second=274 amount=-1 +kerning first=289 second=45 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=1042 second=1068 amount=-1 +kerning first=73 second=274 amount=-1 +kerning first=217 second=171 amount=-2 +kerning first=217 second=45 amount=-2 +kerning first=305 second=113 amount=-1 +kerning first=289 second=171 amount=-1 +kerning first=325 second=171 amount=-1 +kerning first=325 second=45 amount=-1 +kerning first=269 second=113 amount=-1 +kerning first=281 second=104 amount=-1 +kerning first=201 second=70 amount=-1 +kerning first=220 second=235 amount=-1 +kerning first=1042 second=1030 amount=-1 +kerning first=328 second=235 amount=-1 +kerning first=364 second=235 amount=-1 +kerning first=1060 second=1069 amount=-1 +kerning first=286 second=274 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=333 second=318 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=206 second=337 amount=-1 +kerning first=45 second=367 amount=-1 +kerning first=207 second=231 amount=-1 +kerning first=217 second=252 amount=-1 +kerning first=1053 second=1053 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=1054 second=1059 amount=-1 +kerning first=289 second=252 amount=-1 +kerning first=290 second=8217 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=253 second=252 amount=-1 +kerning first=1030 second=1108 amount=-1 +kerning first=205 second=261 amount=-1 +kerning first=78 second=217 amount=-1 +kerning first=333 second=106 amount=-1 +kerning first=219 second=204 amount=-1 +kerning first=346 second=310 amount=-1 +kerning first=279 second=231 amount=-1 +kerning first=219 second=217 amount=-1 +kerning first=274 second=310 amount=-1 +kerning first=229 second=243 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=8218 second=311 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=1068 second=1034 amount=-1 +kerning first=85 second=81 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=278 second=45 amount=-1 +kerning first=255 second=249 amount=-1 +kerning first=81 second=221 amount=-1 +kerning first=296 second=332 amount=-1 +kerning first=240 second=275 amount=-1 +kerning first=291 second=249 amount=-1 +kerning first=325 second=330 amount=-1 +kerning first=80 second=214 amount=-1 +kerning first=1040 second=1076 amount=-1 +kerning first=1044 second=1028 amount=-1 +kerning first=267 second=235 amount=-1 +kerning first=99 second=275 amount=-1 +kerning first=1066 second=1050 amount=-1 +kerning first=323 second=80 amount=-1 +kerning first=267 second=240 amount=-1 +kerning first=211 second=362 amount=-1 +kerning first=1058 second=1040 amount=-1 +kerning first=1030 second=1050 amount=-1 +kerning first=221 second=284 amount=-1 +kerning first=204 second=275 amount=-1 +kerning first=368 second=332 amount=-1 +kerning first=8218 second=84 amount=-1 +kerning first=209 second=223 amount=-1 +kerning first=345 second=97 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=305 second=232 amount=-1 +kerning first=272 second=323 amount=-1 +kerning first=269 second=232 amount=-1 +kerning first=1053 second=1080 amount=-1 +kerning first=74 second=107 amount=-1 +kerning first=233 second=232 amount=-1 +kerning first=66 second=199 amount=-1 +kerning first=200 second=323 amount=-1 +kerning first=187 second=119 amount=-1 +kerning first=66 second=258 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=201 second=336 amount=-1 +kerning first=89 second=250 amount=-1 +kerning first=207 second=199 amount=-1 +kerning first=1057 second=1044 amount=-1 +kerning first=364 second=370 amount=-1 +kerning first=187 second=326 amount=-1 +kerning first=260 second=8250 amount=-1 +kerning first=334 second=256 amount=-1 +kerning first=116 second=226 amount=-1 +kerning first=107 second=314 amount=-1 +kerning first=264 second=311 amount=-1 +kerning first=100 second=234 amount=-1 +kerning first=201 second=325 amount=-1 +kerning first=275 second=116 amount=-1 +kerning first=119 second=8250 amount=-1 +kerning first=192 second=311 amount=-1 +kerning first=217 second=67 amount=-1 +kerning first=219 second=249 amount=-1 +kerning first=205 second=234 amount=-1 +kerning first=83 second=8250 amount=-1 +kerning first=1048 second=1105 amount=-1 +kerning first=73 second=331 amount=-1 +kerning first=227 second=233 amount=-1 +kerning first=354 second=122 amount=-1 +kerning first=1105 second=1119 amount=-1 +kerning first=277 second=234 amount=-1 +kerning first=1062 second=1088 amount=-1 +kerning first=248 second=314 amount=-1 +kerning first=72 second=327 amount=-1 +kerning first=241 second=234 amount=-1 +kerning first=221 second=241 amount=-1 +kerning first=199 second=110 amount=-1 +kerning first=327 second=217 amount=-1 +kerning first=213 second=327 amount=-1 +kerning first=263 second=98 amount=-1 +kerning first=231 second=267 amount=-1 +kerning first=278 second=72 amount=-1 +kerning first=80 second=241 amount=-1 +kerning first=8218 second=338 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=1067 second=1036 amount=-1 +kerning first=1044 second=1094 amount=-1 +kerning first=1031 second=1036 amount=-1 +kerning first=72 second=115 amount=-1 +kerning first=284 second=114 amount=-1 +kerning first=1050 second=1097 amount=-1 +kerning first=1036 second=1114 amount=-1 +kerning first=325 second=282 amount=-1 +kerning first=70 second=101 amount=-1 +kerning first=106 second=335 amount=-1 +kerning first=1041 second=1062 amount=-1 +kerning first=374 second=109 amount=-1 +kerning first=217 second=225 amount=-1 +kerning first=70 second=335 amount=-1 +kerning first=267 second=267 amount=-1 +kerning first=204 second=302 amount=-1 +kerning first=325 second=225 amount=-1 +kerning first=79 second=370 amount=-1 +kerning first=196 second=46 amount=-1 +kerning first=106 second=101 amount=-1 +kerning first=71 second=114 amount=-1 +kerning first=8250 second=192 amount=-1 +kerning first=339 second=267 amount=-1 +kerning first=225 second=318 amount=-1 +kerning first=283 second=335 amount=-1 +kerning first=261 second=318 amount=-1 +kerning first=268 second=46 amount=-1 +kerning first=89 second=290 amount=-1 +kerning first=73 second=355 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=206 second=353 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=302 second=81 amount=-1 +kerning first=368 second=78 amount=-1 +kerning first=338 second=81 amount=-1 +kerning first=200 second=296 amount=-1 +kerning first=72 second=273 amount=-1 +kerning first=346 second=364 amount=-1 +kerning first=1068 second=1064 amount=-1 +kerning first=266 second=81 amount=-1 +kerning first=263 second=44 amount=-1 +kerning first=269 second=8222 amount=-1 +kerning first=70 second=223 amount=-1 +kerning first=8218 second=284 amount=-1 +kerning first=86 second=281 amount=-1 +kerning first=1065 second=1098 amount=-1 +kerning first=374 second=81 amount=-1 +kerning first=106 second=44 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=8250 second=332 amount=-1 +kerning first=206 second=72 amount=-1 +kerning first=335 second=44 amount=-1 +kerning first=366 second=227 amount=-1 +kerning first=330 second=227 amount=-1 +kerning first=298 second=346 amount=-1 +kerning first=1048 second=1107 amount=-1 +kerning first=201 second=282 amount=-1 +kerning first=262 second=346 amount=-1 +kerning first=271 second=263 amount=-1 +kerning first=205 second=288 amount=-1 +kerning first=192 second=367 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=85 second=346 amount=-1 +kerning first=281 second=252 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=1047 second=1119 amount=-1 +kerning first=97 second=337 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=369 second=291 amount=-1 +kerning first=333 second=291 amount=-1 +kerning first=264 second=230 amount=-1 +kerning first=261 second=291 amount=-1 +kerning first=225 second=291 amount=-1 +kerning first=370 second=346 amount=-1 +kerning first=120 second=291 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=81 second=200 amount=-1 +kerning first=1047 second=1055 amount=-1 +kerning first=289 second=279 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=108 second=246 amount=-1 +kerning first=368 second=278 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=325 second=279 amount=-1 +kerning first=72 second=246 amount=-1 +kerning first=266 second=108 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=231 second=369 amount=-1 +kerning first=1104 second=1091 amount=-1 +kerning first=352 second=325 amount=-1 +kerning first=70 second=362 amount=-1 +kerning first=8222 second=361 amount=-1 +kerning first=192 second=84 amount=-1 +kerning first=217 second=231 amount=-1 +kerning first=80 second=187 amount=-1 +kerning first=115 second=316 amount=-1 +kerning first=73 second=382 amount=-1 +kerning first=206 second=99 amount=-1 +kerning first=204 second=75 amount=-1 +kerning first=330 second=200 amount=-1 +kerning first=1076 second=1103 amount=-1 +kerning first=1048 second=1091 amount=-1 +kerning first=213 second=8218 amount=-1 +kerning first=204 second=109 amount=-1 +kerning first=314 second=99 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=1080 second=1095 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=72 second=8218 amount=-1 +kerning first=221 second=187 amount=-1 +kerning first=259 second=380 amount=-1 +kerning first=223 second=380 amount=-1 +kerning first=112 second=8220 amount=-2 +kerning first=1041 second=1098 amount=-1 +kerning first=240 second=248 amount=-1 +kerning first=268 second=334 amount=-1 +kerning first=218 second=117 amount=-1 +kerning first=1059 second=1108 amount=-1 +kerning first=213 second=202 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=270 second=218 amount=-1 +kerning first=212 second=260 amount=-1 +kerning first=362 second=117 amount=-1 +kerning first=323 second=218 amount=-1 +kerning first=1048 second=1099 amount=-1 +kerning first=198 second=218 amount=-1 +kerning first=204 second=248 amount=-1 +kerning first=304 second=334 amount=-1 +kerning first=99 second=8220 amount=-2 +kerning first=310 second=364 amount=-1 +kerning first=282 second=209 amount=-1 +kerning first=1055 second=1092 amount=-1 +kerning first=274 second=364 amount=-1 +kerning first=258 second=367 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=210 second=209 amount=-1 +kerning first=366 second=367 amount=-1 +kerning first=202 second=364 amount=-1 +kerning first=288 second=66 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=264 second=257 amount=-1 +kerning first=194 second=108 amount=-1 +kerning first=1068 second=1042 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=240 second=8220 amount=-2 +kerning first=200 second=69 amount=-1 +kerning first=230 second=108 amount=-1 +kerning first=69 second=209 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=224 second=232 amount=-1 +kerning first=338 second=68 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=45 second=212 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=1053 second=1107 amount=-1 +kerning first=368 second=80 amount=-1 +kerning first=366 second=69 amount=-1 +kerning first=353 second=8217 amount=-2 +kerning first=255 second=108 amount=-1 +kerning first=80 second=290 amount=-1 +kerning first=330 second=69 amount=-1 +kerning first=288 second=364 amount=-1 +kerning first=70 second=264 amount=-1 +kerning first=83 second=251 amount=-1 +kerning first=119 second=251 amount=-1 +kerning first=221 second=290 amount=-1 +kerning first=208 second=8221 amount=-2 +kerning first=278 second=338 amount=-1 +kerning first=1049 second=1039 amount=-1 +kerning first=234 second=277 amount=-1 +kerning first=368 second=251 amount=-1 +kerning first=245 second=8217 amount=-2 +kerning first=231 second=316 amount=-1 +kerning first=206 second=338 amount=-1 +kerning first=195 second=316 amount=-1 +kerning first=1058 second=1072 amount=-1 +kerning first=317 second=8217 amount=-1 +kerning first=192 second=355 amount=-1 +kerning first=103 second=8221 amount=-2 +kerning first=45 second=69 amount=-1 +kerning first=330 second=286 amount=-1 +kerning first=267 second=316 amount=-1 +kerning first=366 second=286 amount=-1 +kerning first=375 second=316 amount=-1 +kerning first=339 second=316 amount=-1 +kerning first=235 second=273 amount=-1 +kerning first=81 second=69 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=280 second=8221 amount=-1 +kerning first=199 second=273 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=316 second=8221 amount=-1 +kerning first=68 second=82 amount=-1 +kerning first=231 second=99 amount=-1 +kerning first=374 second=347 amount=-1 +kerning first=209 second=82 amount=-1 +kerning first=8218 second=225 amount=-1 +kerning first=258 second=286 amount=-1 +kerning first=210 second=78 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=228 second=171 amount=-1 +kerning first=1048 second=1056 amount=-1 +kerning first=264 second=171 amount=-1 +kerning first=282 second=78 amount=-1 +kerning first=1071 second=1069 amount=-1 +kerning first=221 second=212 amount=-1 +kerning first=1044 second=1086 amount=-1 +kerning first=217 second=333 amount=-1 +kerning first=243 second=114 amount=-1 +kerning first=1058 second=1082 amount=-1 +kerning first=264 second=355 amount=-1 +kerning first=69 second=78 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=290 second=73 amount=-1 +kerning first=68 second=8217 amount=-2 +kerning first=363 second=103 amount=-1 +kerning first=219 second=325 amount=-1 +kerning first=279 second=117 amount=-1 +kerning first=8250 second=278 amount=-1 +kerning first=204 second=346 amount=-1 +kerning first=356 second=233 amount=-1 +kerning first=87 second=171 amount=-2 +kerning first=192 second=171 amount=-1 +kerning first=327 second=325 amount=-1 +kerning first=325 second=362 amount=-1 +kerning first=87 second=382 amount=-1 +kerning first=203 second=220 amount=-1 +kerning first=80 second=100 amount=-1 +kerning first=278 second=216 amount=-1 +kerning first=280 second=330 amount=-1 +kerning first=327 second=298 amount=-1 +kerning first=228 second=382 amount=-1 +kerning first=302 second=103 amount=-1 +kerning first=307 second=246 amount=-1 +kerning first=198 second=304 amount=-1 +kerning first=264 second=382 amount=-1 +kerning first=266 second=103 amount=-1 +kerning first=271 second=246 amount=-1 +kerning first=80 second=263 amount=-1 +kerning first=235 second=246 amount=-1 +kerning first=270 second=304 amount=-1 +kerning first=116 second=263 amount=-1 +kerning first=221 second=100 amount=-1 +kerning first=199 second=246 amount=-1 +kerning first=364 second=77 amount=-1 +kerning first=307 second=8218 amount=-1 +kerning first=74 second=211 amount=-1 +kerning first=230 second=245 amount=-1 +kerning first=65 second=366 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=368 second=224 amount=-1 +kerning first=304 second=68 amount=-1 +kerning first=235 second=8218 amount=-1 +kerning first=67 second=82 amount=-1 +kerning first=325 second=333 amount=-1 +kerning first=8222 second=366 amount=-1 +kerning first=278 second=365 amount=-1 +kerning first=296 second=224 amount=-1 +kerning first=267 second=289 amount=-1 +kerning first=330 second=313 amount=-1 +kerning first=1043 second=1113 amount=-1 +kerning first=325 second=203 amount=-1 +kerning first=231 second=289 amount=-1 +kerning first=366 second=313 amount=-1 +kerning first=211 second=86 amount=-1 +kerning first=339 second=289 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=268 second=68 amount=-1 +kerning first=101 second=365 amount=-1 +kerning first=98 second=8250 amount=-1 +kerning first=302 second=347 amount=-1 +kerning first=113 second=8220 amount=-2 +kerning first=233 second=281 amount=-1 +kerning first=1103 second=1095 amount=-1 +kerning first=77 second=85 amount=-1 +kerning first=77 second=8220 amount=-1 +kerning first=269 second=281 amount=-1 +kerning first=87 second=111 amount=-1 +kerning first=218 second=8220 amount=-1 +kerning first=305 second=281 amount=-1 +kerning first=305 second=118 amount=-1 +kerning first=266 second=347 amount=-1 +kerning first=290 second=8220 amount=-1 +kerning first=187 second=255 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=228 second=111 amount=-1 +kerning first=254 second=8220 amount=-2 +kerning first=289 second=369 amount=-1 +kerning first=81 second=313 amount=-1 +kerning first=323 second=211 amount=-1 +kerning first=264 second=111 amount=-1 +kerning first=362 second=8220 amount=-1 +kerning first=1031 second=1095 amount=-1 +kerning first=89 second=347 amount=-1 +kerning first=326 second=8220 amount=-2 +kerning first=1038 second=1057 amount=-1 +kerning first=1071 second=1042 amount=-1 +kerning first=370 second=233 amount=-1 +kerning first=220 second=77 amount=-1 +kerning first=1049 second=1119 amount=-1 +kerning first=79 second=77 amount=-1 +kerning first=1048 second=1083 amount=-1 +kerning first=78 second=298 amount=-1 +kerning first=205 second=315 amount=-1 +kerning first=219 second=298 amount=-1 +kerning first=304 second=339 amount=-1 +kerning first=71 second=206 amount=-1 +kerning first=268 second=310 amount=-1 +kerning first=268 second=339 amount=-1 +kerning first=197 second=118 amount=-1 +kerning first=284 second=206 amount=-1 +kerning first=78 second=271 amount=-1 +kerning first=266 second=76 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=117 second=232 amount=-1 +kerning first=1059 second=1105 amount=-1 +kerning first=370 second=209 amount=-1 +kerning first=199 second=219 amount=-1 +kerning first=280 second=357 amount=-1 +kerning first=1118 second=1118 amount=-1 +kerning first=366 second=232 amount=-1 +kerning first=219 second=271 amount=-1 +kerning first=330 second=232 amount=-1 +kerning first=233 second=335 amount=-1 +kerning first=327 second=271 amount=-1 +kerning first=264 second=225 amount=-1 +kerning first=1071 second=1054 amount=-1 +kerning first=362 second=85 amount=-1 +kerning first=1043 second=1086 amount=-1 +kerning first=252 second=234 amount=-1 +kerning first=277 second=98 amount=-1 +kerning first=201 second=213 amount=-1 +kerning first=290 second=85 amount=-1 +kerning first=324 second=234 amount=-1 +kerning first=198 second=8249 amount=-1 +kerning first=218 second=85 amount=-1 +kerning first=330 second=235 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=375 second=289 amount=-1 +kerning first=368 second=197 amount=-1 +kerning first=221 second=46 amount=-1 +kerning first=1031 second=1068 amount=-1 +kerning first=204 second=216 amount=-1 +kerning first=233 second=101 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=196 second=366 amount=-1 +kerning first=1049 second=1095 amount=-1 +kerning first=8222 second=314 amount=-1 +kerning first=8218 second=226 amount=-1 +kerning first=80 second=344 amount=-1 +kerning first=206 second=67 amount=-1 +kerning first=103 second=357 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=234 second=250 amount=-1 +kerning first=67 second=357 amount=-1 +kerning first=1055 second=1077 amount=-1 +kerning first=278 second=284 amount=-1 +kerning first=198 second=250 amount=-1 +kerning first=219 second=195 amount=-1 +kerning first=1042 second=1090 amount=-1 +kerning first=68 second=353 amount=-1 +kerning first=263 second=229 amount=-1 +kerning first=209 second=353 amount=-1 +kerning first=80 second=46 amount=-2 +kerning first=1047 second=1114 amount=-1 +kerning first=330 second=259 amount=-1 +kerning first=259 second=333 amount=-1 +kerning first=281 second=353 amount=-1 +kerning first=364 second=196 amount=-1 +kerning first=302 second=76 amount=-1 +kerning first=206 second=284 amount=-1 +kerning first=338 second=76 amount=-1 +kerning first=288 second=207 amount=-1 +kerning first=370 second=70 amount=-1 +kerning first=366 second=259 amount=-1 +kerning first=325 second=116 amount=-1 +kerning first=289 second=116 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=65 second=311 amount=-1 +kerning first=1051 second=1071 amount=-1 +kerning first=277 second=369 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=1064 second=1053 amount=-1 +kerning first=262 second=70 amount=-1 +kerning first=232 second=122 amount=-1 +kerning first=1042 second=1117 amount=-1 +kerning first=78 second=244 amount=-1 +kerning first=298 second=70 amount=-1 +kerning first=268 second=122 amount=-1 +kerning first=334 second=70 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=229 second=378 amount=-1 +kerning first=219 second=244 amount=-1 +kerning first=316 second=113 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=8218 second=252 amount=-1 +kerning first=270 second=8222 amount=-1 +kerning first=291 second=244 amount=-1 +kerning first=187 second=201 amount=-1 +kerning first=234 second=8222 amount=-1 +kerning first=327 second=244 amount=-1 +kerning first=103 second=113 amount=-1 +kerning first=212 second=366 amount=-1 +kerning first=217 second=116 amount=-1 +kerning first=198 second=8222 amount=-1 +kerning first=363 second=244 amount=-1 +kerning first=337 second=378 amount=-1 +kerning first=207 second=204 amount=-1 +kerning first=225 second=316 amount=-1 +kerning first=67 second=113 amount=-1 +kerning first=88 second=85 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=250 second=244 amount=-1 +kerning first=1042 second=1102 amount=-1 +kerning first=108 second=108 amount=-1 +kerning first=362 second=302 amount=-1 +kerning first=1050 second=1102 amount=-1 +kerning first=220 second=71 amount=-1 +kerning first=1055 second=1050 amount=-1 +kerning first=1058 second=1104 amount=-1 +kerning first=290 second=302 amount=-1 +kerning first=1036 second=1038 amount=-1 +kerning first=72 second=332 amount=-1 +kerning first=86 second=256 amount=-1 +kerning first=282 second=268 amount=-1 +kerning first=218 second=302 amount=-1 +kerning first=1071 second=1096 amount=-1 +kerning first=305 second=335 amount=-1 +kerning first=70 second=210 amount=-1 +kerning first=77 second=302 amount=-1 +kerning first=80 second=73 amount=-1 +kerning first=193 second=107 amount=-1 +kerning first=87 second=198 amount=-1 +kerning first=1047 second=1087 amount=-1 +kerning first=8220 second=347 amount=-1 +kerning first=1039 second=1053 amount=-1 +kerning first=69 second=268 amount=-1 +kerning first=206 second=77 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=74 second=75 amount=-1 +kerning first=211 second=354 amount=-1 +kerning first=1071 second=1070 amount=-1 +kerning first=210 second=187 amount=-1 +kerning first=81 second=362 amount=-1 +kerning first=89 second=244 amount=-1 +kerning first=370 second=97 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=213 second=8250 amount=-1 +kerning first=1041 second=1067 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=258 second=362 amount=-1 +kerning first=8250 second=197 amount=-1 +kerning first=220 second=213 amount=-1 +kerning first=266 second=244 amount=-1 +kerning first=1067 second=1041 amount=-1 +kerning first=87 second=279 amount=-1 +kerning first=302 second=244 amount=-1 +kerning first=72 second=8250 amount=-1 +kerning first=1031 second=1041 amount=-1 +kerning first=227 second=283 amount=-1 +kerning first=86 second=283 amount=-1 +kerning first=374 second=244 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=205 second=266 amount=-1 +kerning first=364 second=213 amount=-1 +kerning first=105 second=187 amount=-1 +kerning first=264 second=279 amount=-1 +kerning first=8217 second=120 amount=-1 +kerning first=187 second=211 amount=-1 +kerning first=69 second=187 amount=-1 +kerning first=228 second=279 amount=-1 +kerning first=1075 second=1102 amount=-1 +kerning first=80 second=209 amount=-1 +kerning first=116 second=113 amount=-1 +kerning first=296 second=327 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=362 second=115 amount=-1 +kerning first=368 second=327 amount=-1 +kerning first=1042 second=1036 amount=-1 +kerning first=283 second=367 amount=-1 +kerning first=1052 second=1062 amount=-1 +kerning first=270 second=196 amount=-1 +kerning first=73 second=79 amount=-1 +kerning first=263 second=283 amount=-1 +kerning first=317 second=218 amount=-1 +kerning first=296 second=110 amount=-1 +kerning first=70 second=367 amount=-1 +kerning first=330 second=205 amount=-1 +kerning first=85 second=70 amount=-1 +kerning first=204 second=270 amount=-1 +kerning first=368 second=110 amount=-1 +kerning first=325 second=257 amount=-1 +kerning first=203 second=274 amount=-1 +kerning first=234 second=380 amount=-1 +kerning first=85 second=317 amount=-1 +kerning first=366 second=205 amount=-1 +kerning first=338 second=296 amount=-1 +kerning first=219 second=367 amount=-1 +kerning first=82 second=114 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=296 second=338 amount=-1 +kerning first=1049 second=1047 amount=-1 +kerning first=187 second=114 amount=-1 +kerning first=259 second=8249 amount=-1 +kerning first=217 second=284 amount=-1 +kerning first=1030 second=1072 amount=-1 +kerning first=118 second=114 amount=-1 +kerning first=367 second=8249 amount=-1 +kerning first=1040 second=1098 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=81 second=205 amount=-1 +kerning first=232 second=231 amount=-1 +kerning first=268 second=231 amount=-1 +kerning first=194 second=217 amount=-1 +kerning first=200 second=217 amount=-1 +kerning first=304 second=231 amount=-1 +kerning first=266 second=217 amount=-1 +kerning first=69 second=214 amount=-1 +kerning first=69 second=344 amount=-1 +kerning first=302 second=217 amount=-1 +kerning first=210 second=344 amount=-1 +kerning first=338 second=217 amount=-1 +kerning first=87 second=252 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=280 second=249 amount=-1 +kerning first=206 second=235 amount=-1 +kerning first=316 second=249 amount=-1 +kerning first=243 second=8218 amount=-1 +kerning first=270 second=353 amount=-1 +kerning first=352 second=249 amount=-1 +kerning first=365 second=248 amount=-1 +kerning first=1052 second=1089 amount=-1 +kerning first=234 second=353 amount=-1 +kerning first=314 second=235 amount=-1 +kerning first=103 second=249 amount=-1 +kerning first=200 second=345 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=229 second=275 amount=-1 +kerning first=366 second=362 amount=-1 +kerning first=204 second=80 amount=-1 +kerning first=330 second=362 amount=-1 +kerning first=344 second=345 amount=-1 +kerning first=262 second=97 amount=-1 +kerning first=99 second=243 amount=-1 +kerning first=298 second=97 amount=-1 +kerning first=231 second=45 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=325 second=284 amount=-1 +kerning first=296 second=83 amount=-1 +kerning first=198 second=223 amount=-1 +kerning first=1064 second=1080 amount=-1 +kerning first=72 second=278 amount=-1 +kerning first=8250 second=381 amount=-1 +kerning first=368 second=83 amount=-1 +kerning first=218 second=226 amount=-1 +kerning first=240 second=243 amount=-1 +kerning first=1042 second=1063 amount=-1 +kerning first=77 second=199 amount=-1 +kerning first=104 second=245 amount=-1 +kerning first=1049 second=1079 amount=-1 +kerning first=263 second=337 amount=-1 +kerning first=86 second=120 amount=-1 +kerning first=213 second=278 amount=-1 +kerning first=227 second=337 amount=-1 +kerning first=218 second=199 amount=-1 +kerning first=1078 second=1079 amount=-1 +kerning first=368 second=8218 amount=-2 +kerning first=66 second=361 amount=-1 +kerning first=86 second=337 amount=-1 +kerning first=263 second=120 amount=-1 +kerning first=362 second=199 amount=-1 +kerning first=8250 second=327 amount=-1 +kerning first=282 second=344 amount=-1 +kerning first=119 second=8218 amount=-1 +kerning first=84 second=269 amount=-1 +kerning first=83 second=8218 amount=-1 +kerning first=332 second=8218 amount=-1 +kerning first=211 second=313 amount=-1 +kerning first=98 second=291 amount=-1 +kerning first=80 second=88 amount=-1 +kerning first=261 second=269 amount=-1 +kerning first=209 second=245 amount=-1 +kerning first=193 second=221 amount=-1 +kerning first=1036 second=1092 amount=-1 +kerning first=99 second=324 amount=-1 +kerning first=352 second=330 amount=-1 +kerning first=369 second=269 amount=-1 +kerning first=8250 second=110 amount=-1 +kerning first=258 second=118 amount=-1 +kerning first=217 second=203 amount=-1 +kerning first=70 second=313 amount=-1 +kerning first=275 second=111 amount=-1 +kerning first=337 second=8220 amount=-2 +kerning first=212 second=65 amount=-1 +kerning first=197 second=254 amount=-1 +kerning first=233 second=254 amount=-1 +kerning first=356 second=8222 amount=-1 +kerning first=194 second=374 amount=-1 +kerning first=335 second=120 amount=-1 +kerning first=374 second=337 amount=-1 +kerning first=221 second=263 amount=-1 +kerning first=328 second=267 amount=-1 +kerning first=367 second=114 amount=-1 +kerning first=350 second=8249 amount=-1 +kerning first=257 second=263 amount=-1 +kerning first=364 second=267 amount=-1 +kerning first=1077 second=1094 amount=-1 +kerning first=1064 second=1107 amount=-1 +kerning first=45 second=118 amount=-1 +kerning first=205 second=212 amount=-1 +kerning first=259 second=114 amount=-1 +kerning first=365 second=263 amount=-1 +kerning first=88 second=8220 amount=-1 +kerning first=267 second=314 amount=-1 +kerning first=223 second=114 amount=-1 +kerning first=280 second=264 amount=-1 +kerning first=8217 second=364 amount=-1 +kerning first=220 second=267 amount=-1 +kerning first=288 second=315 amount=-1 +kerning first=193 second=8220 amount=-2 +kerning first=195 second=370 amount=-1 +kerning first=211 second=69 amount=-1 +kerning first=214 second=193 amount=-1 +kerning first=86 second=361 amount=-1 +kerning first=8250 second=354 amount=-1 +kerning first=368 second=273 amount=-1 +kerning first=8220 second=217 amount=-1 +kerning first=8222 second=370 amount=-1 +kerning first=1049 second=1052 amount=-1 +kerning first=219 second=81 amount=-1 +kerning first=296 second=273 amount=-1 +kerning first=78 second=81 amount=-1 +kerning first=108 second=251 amount=-1 +kerning first=70 second=69 amount=-1 +kerning first=218 second=355 amount=-1 +kerning first=327 second=81 amount=-1 +kerning first=75 second=44 amount=-1 +kerning first=84 second=281 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=111 second=44 amount=-1 +kerning first=209 second=218 amount=-1 +kerning first=8218 second=89 amount=-2 +kerning first=203 second=355 amount=-1 +kerning first=207 second=334 amount=-1 +kerning first=89 second=8217 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=229 second=248 amount=-1 +kerning first=288 second=44 amount=-1 +kerning first=1054 second=1027 amount=-1 +kerning first=216 second=44 amount=-1 +kerning first=225 second=242 amount=-1 +kerning first=339 second=99 amount=-1 +kerning first=78 second=352 amount=-1 +kerning first=261 second=242 amount=-1 +kerning first=74 second=346 amount=-1 +kerning first=267 second=99 amount=-1 +kerning first=219 second=352 amount=-1 +kerning first=1034 second=1024 amount=-1 +kerning first=217 second=230 amount=-1 +kerning first=1070 second=1024 amount=-1 +kerning first=325 second=230 amount=-1 +kerning first=214 second=187 amount=-1 +kerning first=8222 second=339 amount=-1 +kerning first=71 second=282 amount=-1 +kerning first=323 second=290 amount=-1 +kerning first=327 second=352 amount=-1 +kerning first=78 second=332 amount=-1 +kerning first=323 second=346 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=1071 second=1094 amount=-1 +kerning first=187 second=87 amount=-2 +kerning first=268 second=366 amount=-1 +kerning first=75 second=288 amount=-1 +kerning first=1031 second=1107 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=1033 second=1052 amount=-1 +kerning first=264 second=233 amount=-1 +kerning first=262 second=288 amount=-1 +kerning first=298 second=288 amount=-1 +kerning first=8218 second=220 amount=-1 +kerning first=304 second=333 amount=-1 +kerning first=249 second=291 amount=-1 +kerning first=68 second=87 amount=-1 +kerning first=1069 second=1052 amount=-1 +kerning first=199 second=81 amount=-1 +kerning first=1059 second=1046 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=231 second=224 amount=-1 +kerning first=250 second=337 amount=-1 +kerning first=354 second=8218 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=1066 second=1061 amount=-1 +kerning first=267 second=283 amount=-1 +kerning first=1034 second=1098 amount=-1 +kerning first=109 second=337 amount=-1 +kerning first=1042 second=1027 amount=-1 +kerning first=73 second=337 amount=-1 +kerning first=85 second=288 amount=-1 +kerning first=81 second=84 amount=-1 +kerning first=267 second=224 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=1051 second=1119 amount=-1 +kerning first=229 second=99 amount=-1 +kerning first=105 second=8218 amount=-1 +kerning first=269 second=8221 amount=-2 +kerning first=69 second=8218 amount=-1 +kerning first=305 second=8221 amount=-1 +kerning first=1053 second=1064 amount=-1 +kerning first=302 second=111 amount=-1 +kerning first=1047 second=1095 amount=-1 +kerning first=377 second=8221 amount=-1 +kerning first=282 second=8218 amount=-1 +kerning first=246 second=8218 amount=-1 +kerning first=210 second=8218 amount=-1 +kerning first=335 second=187 amount=-1 +kerning first=368 second=196 amount=-1 +kerning first=229 second=279 amount=-1 +kerning first=1044 second=1104 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=86 second=187 amount=-1 +kerning first=289 second=328 amount=-1 +kerning first=1042 second=1041 amount=-1 +kerning first=296 second=209 amount=-1 +kerning first=205 second=364 amount=-1 +kerning first=258 second=264 amount=-1 +kerning first=264 second=66 amount=-1 +kerning first=195 second=371 amount=-1 +kerning first=199 second=261 amount=-1 +kerning first=197 second=316 amount=-1 +kerning first=67 second=368 amount=-1 +kerning first=323 second=69 amount=-1 +kerning first=226 second=108 amount=-1 +kerning first=262 second=209 amount=-1 +kerning first=269 second=316 amount=-1 +kerning first=83 second=209 amount=-1 +kerning first=262 second=108 amount=-1 +kerning first=1050 second=1073 amount=-1 +kerning first=198 second=202 amount=-1 +kerning first=233 second=316 amount=-1 +kerning first=304 second=257 amount=-1 +kerning first=45 second=264 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=1052 second=1031 amount=-1 +kerning first=1050 second=1086 amount=-1 +kerning first=268 second=257 amount=-1 +kerning first=270 second=202 amount=-1 +kerning first=201 second=116 amount=-1 +kerning first=280 second=368 amount=-1 +kerning first=264 second=380 amount=-1 +kerning first=1049 second=1027 amount=-1 +kerning first=197 second=303 amount=-1 +kerning first=352 second=368 amount=-1 +kerning first=268 second=270 amount=-1 +kerning first=87 second=367 amount=-1 +kerning first=1031 second=1113 amount=-1 +kerning first=304 second=270 amount=-1 +kerning first=104 second=281 amount=-1 +kerning first=327 second=273 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=1119 second=1095 amount=-1 +kerning first=313 second=364 amount=-1 +kerning first=74 second=69 amount=-1 +kerning first=368 second=209 amount=-1 +kerning first=1039 second=1034 amount=-1 +kerning first=219 second=273 amount=-1 +kerning first=231 second=44 amount=-1 +kerning first=274 second=252 amount=-1 +kerning first=267 second=44 amount=-1 +kerning first=99 second=8249 amount=-1 +kerning first=280 second=355 amount=-1 +kerning first=346 second=252 amount=-1 +kerning first=78 second=273 amount=-1 +kerning first=362 second=214 amount=-1 +kerning first=310 second=252 amount=-1 +kerning first=375 second=44 amount=-1 +kerning first=212 second=78 amount=-1 +kerning first=87 second=380 amount=-1 +kerning first=80 second=205 amount=-1 +kerning first=228 second=380 amount=-1 +kerning first=284 second=78 amount=-1 +kerning first=67 second=355 amount=-1 +kerning first=362 second=227 amount=-1 +kerning first=213 second=8221 amount=-2 +kerning first=302 second=325 amount=-1 +kerning first=235 second=248 amount=-1 +kerning first=1047 second=1082 amount=-1 +kerning first=266 second=325 amount=-1 +kerning first=77 second=214 amount=-1 +kerning first=199 second=248 amount=-1 +kerning first=187 second=117 amount=-1 +kerning first=8218 second=233 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=307 second=248 amount=-1 +kerning first=338 second=325 amount=-1 +kerning first=71 second=78 amount=-1 +kerning first=271 second=248 amount=-1 +kerning first=67 second=224 amount=-1 +kerning first=317 second=87 amount=-1 +kerning first=202 second=252 amount=-1 +kerning first=218 second=214 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=283 second=333 amount=-1 +kerning first=86 second=347 amount=-1 +kerning first=350 second=75 amount=-1 +kerning first=192 second=220 amount=-1 +kerning first=1056 second=1042 amount=-1 +kerning first=1031 second=1092 amount=-1 +kerning first=1044 second=1117 amount=-1 +kerning first=73 second=350 amount=-1 +kerning first=8250 second=317 amount=-1 +kerning first=365 second=339 amount=-1 +kerning first=1066 second=1048 amount=-1 +kerning first=8217 second=334 amount=-1 +kerning first=199 second=382 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=1030 second=1048 amount=-1 +kerning first=355 second=333 amount=-1 +kerning first=235 second=382 amount=-1 +kerning first=242 second=289 amount=-1 +kerning first=304 second=103 amount=-1 +kerning first=99 second=171 amount=-1 +kerning first=368 second=330 amount=-1 +kerning first=268 second=103 amount=-1 +kerning first=264 second=246 amount=-1 +kerning first=209 second=100 amount=-1 +kerning first=314 second=289 amount=-1 +kerning first=232 second=103 amount=-1 +kerning first=228 second=246 amount=-1 +kerning first=8222 second=332 amount=-1 +kerning first=281 second=100 amount=-1 +kerning first=72 second=270 amount=-1 +kerning first=264 second=220 amount=-1 +kerning first=70 second=333 amount=-1 +kerning first=304 second=77 amount=-1 +kerning first=368 second=201 amount=-1 +kerning first=106 second=333 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=350 second=82 amount=-1 +kerning first=8222 second=378 amount=-1 +kerning first=1056 second=1068 amount=-1 +kerning first=296 second=330 amount=-1 +kerning first=268 second=77 amount=-1 +kerning first=67 second=273 amount=-1 +kerning first=274 second=85 amount=-1 +kerning first=335 second=8250 amount=-1 +kerning first=275 second=333 amount=-1 +kerning first=266 second=338 amount=-1 +kerning first=202 second=85 amount=-1 +kerning first=213 second=304 amount=-1 +kerning first=194 second=338 amount=-1 +kerning first=271 second=8249 amount=-1 +kerning first=374 second=8217 amount=-1 +kerning first=246 second=120 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=72 second=304 amount=-1 +kerning first=282 second=313 amount=-1 +kerning first=220 second=332 amount=-1 +kerning first=271 second=382 amount=-1 +kerning first=257 second=339 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=221 second=339 amount=-1 +kerning first=203 second=298 amount=-1 +kerning first=1042 second=1025 amount=-1 +kerning first=69 second=371 amount=-1 +kerning first=242 second=8221 amount=-2 +kerning first=364 second=332 amount=-1 +kerning first=80 second=339 amount=-1 +kerning first=193 second=86 amount=-1 +kerning first=206 second=109 amount=-1 +kerning first=263 second=347 amount=-1 +kerning first=1030 second=1074 amount=-1 +kerning first=210 second=313 amount=-1 +kerning first=366 second=264 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=330 second=264 amount=-1 +kerning first=116 second=339 amount=-1 +kerning first=249 second=111 amount=-1 +kerning first=363 second=45 amount=-1 +kerning first=287 second=357 amount=-1 +kerning first=8222 second=231 amount=-1 +kerning first=1027 second=1083 amount=-1 +kerning first=256 second=8250 amount=-1 +kerning first=281 second=254 amount=-1 +kerning first=220 second=8250 amount=-2 +kerning first=69 second=313 amount=-1 +kerning first=323 second=357 amount=-1 +kerning first=73 second=203 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=79 second=8250 amount=-1 +kerning first=74 second=357 amount=-1 +kerning first=356 second=271 amount=-1 +kerning first=1071 second=1118 amount=-1 +kerning first=205 second=76 amount=-1 +kerning first=201 second=219 amount=-1 +kerning first=230 second=8217 amount=-2 +kerning first=217 second=315 amount=-1 +kerning first=266 second=8217 amount=-1 +kerning first=338 second=8217 amount=-1 +kerning first=74 second=262 amount=-1 +kerning first=72 second=111 amount=-1 +kerning first=108 second=111 amount=-1 +kerning first=235 second=363 amount=-1 +kerning first=346 second=85 amount=-1 +kerning first=99 second=104 amount=-1 +kerning first=194 second=8217 amount=-2 +kerning first=8218 second=367 amount=-1 +kerning first=325 second=315 amount=-1 +kerning first=77 second=330 amount=-1 +kerning first=68 second=280 amount=-1 +kerning first=101 second=263 amount=-1 +kerning first=8222 second=103 amount=-1 +kerning first=71 second=366 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=206 second=263 amount=-1 +kerning first=205 second=204 amount=-1 +kerning first=67 second=100 amount=-1 +kerning first=45 second=110 amount=-1 +kerning first=204 second=331 amount=-1 +kerning first=85 second=366 amount=-1 +kerning first=209 second=280 amount=-1 +kerning first=304 second=277 amount=-1 +kerning first=314 second=263 amount=-1 +kerning first=262 second=314 amount=-1 +kerning first=220 second=66 amount=-1 +kerning first=221 second=365 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=286 second=203 amount=-1 +kerning first=1071 second=1055 amount=-1 +kerning first=356 second=8249 amount=-1 +kerning first=327 second=8221 amount=-1 +kerning first=366 second=110 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=330 second=110 amount=-1 +kerning first=67 second=67 amount=-1 +kerning first=214 second=203 amount=-1 +kerning first=284 second=366 amount=-1 +kerning first=339 second=250 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=78 second=67 amount=-1 +kerning first=1047 second=1024 amount=-1 +kerning first=278 second=70 amount=-1 +kerning first=84 second=101 amount=-1 +kerning first=267 second=250 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=231 second=250 amount=-1 +kerning first=8222 second=290 amount=-1 +kerning first=350 second=70 amount=-1 +kerning first=8217 second=115 amount=-1 +kerning first=304 second=378 amount=-1 +kerning first=261 second=101 amount=-1 +kerning first=263 second=46 amount=-1 +kerning first=268 second=378 amount=-1 +kerning first=288 second=76 amount=-1 +kerning first=225 second=101 amount=-1 +kerning first=375 second=250 amount=-1 +kerning first=232 second=378 amount=-1 +kerning first=206 second=70 amount=-1 +kerning first=78 second=8217 amount=-1 +kerning first=114 second=8217 amount=-1 +kerning first=325 second=325 amount=-1 +kerning first=262 second=262 amount=-1 +kerning first=344 second=366 amount=-1 +kerning first=1039 second=1030 amount=-1 +kerning first=369 second=101 amount=-1 +kerning first=219 second=8217 amount=-1 +kerning first=1041 second=1087 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=304 second=296 amount=-1 +kerning first=1059 second=1072 amount=-1 +kerning first=207 second=201 amount=-1 +kerning first=298 second=262 amount=-1 +kerning first=268 second=296 amount=-1 +kerning first=45 second=375 amount=-1 +kerning first=370 second=262 amount=-1 +kerning first=220 second=280 amount=-1 +kerning first=99 second=249 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=279 second=116 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=246 second=291 amount=-1 +kerning first=220 second=345 amount=-1 +kerning first=235 second=369 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=207 second=116 amount=-1 +kerning first=364 second=280 amount=-1 +kerning first=70 second=207 amount=-1 +kerning first=221 second=8250 amount=-1 +kerning first=1071 second=1105 amount=-1 +kerning first=338 second=204 amount=-1 +kerning first=1043 second=1084 amount=-1 +kerning first=328 second=345 amount=-1 +kerning first=302 second=204 amount=-1 +kerning first=364 second=345 amount=-1 +kerning first=266 second=204 amount=-1 +kerning first=264 second=259 amount=-1 +kerning first=118 second=103 amount=-1 +kerning first=307 second=287 amount=-1 +kerning first=204 second=210 amount=-1 +kerning first=271 second=287 amount=-1 +kerning first=278 second=274 amount=-1 +kerning first=264 second=207 amount=-1 +kerning first=235 second=287 amount=-1 +kerning first=72 second=317 amount=-1 +kerning first=327 second=67 amount=-1 +kerning first=82 second=336 amount=-1 +kerning first=209 second=113 amount=-1 +kerning first=219 second=67 amount=-1 +kerning first=201 second=366 amount=-1 +kerning first=213 second=317 amount=-1 +kerning first=187 second=336 amount=-1 +kerning first=104 second=113 amount=-1 +kerning first=364 second=8250 amount=-2 +kerning first=66 second=116 amount=-1 +kerning first=291 second=335 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=218 second=73 amount=-1 +kerning first=232 second=244 amount=-1 +kerning first=369 second=281 amount=-1 +kerning first=1047 second=1056 amount=-1 +kerning first=1089 second=1103 amount=-1 +kerning first=268 second=244 amount=-1 +kerning first=269 second=97 amount=-1 +kerning first=304 second=244 amount=-1 +kerning first=259 second=233 amount=-1 +kerning first=362 second=73 amount=-1 +kerning first=274 second=278 amount=-1 +kerning first=325 second=8220 amount=-1 +kerning first=8217 second=216 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=289 second=8220 amount=-2 +kerning first=202 second=278 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=272 second=88 amount=-1 +kerning first=117 second=279 amount=-1 +kerning first=206 second=209 amount=-1 +kerning first=346 second=278 amount=-1 +kerning first=366 second=277 amount=-1 +kerning first=77 second=73 amount=-1 +kerning first=330 second=277 amount=-1 +kerning first=100 second=269 amount=-1 +kerning first=199 second=235 amount=-1 +kerning first=225 second=281 amount=-1 +kerning first=80 second=77 amount=-1 +kerning first=235 second=235 amount=-1 +kerning first=261 second=281 amount=-1 +kerning first=74 second=82 amount=-1 +kerning first=1056 second=1081 amount=-1 +kerning first=241 second=269 amount=-1 +kerning first=305 second=45 amount=-1 +kerning first=277 second=269 amount=-1 +kerning first=279 second=283 amount=-1 +kerning first=203 second=79 amount=-1 +kerning first=205 second=269 amount=-1 +kerning first=344 second=219 amount=-1 +kerning first=257 second=231 amount=-1 +kerning first=207 second=283 amount=-1 +kerning first=205 second=338 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=330 second=290 amount=-1 +kerning first=323 second=82 amount=-1 +kerning first=1047 second=1038 amount=-2 +kerning first=327 second=286 amount=-1 +kerning first=366 second=290 amount=-1 +kerning first=289 second=113 amount=-1 +kerning first=365 second=231 amount=-1 +kerning first=1053 second=1025 amount=-1 +kerning first=1056 second=1094 amount=-1 +kerning first=210 second=274 amount=-1 +kerning first=78 second=286 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=277 second=351 amount=-1 +kerning first=330 second=378 amount=-1 +kerning first=204 second=85 amount=-1 +kerning first=219 second=286 amount=-1 +kerning first=1059 second=1085 amount=-1 +kerning first=205 second=351 amount=-1 +kerning first=69 second=274 amount=-1 +kerning first=45 second=290 amount=-1 +kerning first=362 second=382 amount=-1 +kerning first=85 second=275 amount=-1 +kerning first=253 second=367 amount=-1 +kerning first=201 second=310 amount=-1 +kerning first=86 second=115 amount=-1 +kerning first=225 second=114 amount=-1 +kerning first=217 second=367 amount=-1 +kerning first=354 second=261 amount=-1 +kerning first=333 second=114 amount=-1 +kerning first=259 second=345 amount=-1 +kerning first=219 second=80 amount=-1 +kerning first=275 second=104 amount=-1 +kerning first=289 second=367 amount=-1 +kerning first=119 second=8217 amount=-2 +kerning first=205 second=217 amount=-1 +kerning first=203 second=66 amount=-1 +kerning first=213 second=8222 amount=-1 +kerning first=327 second=80 amount=-1 +kerning first=270 second=310 amount=-1 +kerning first=80 second=231 amount=-1 +kerning first=69 second=205 amount=-1 +kerning first=116 second=231 amount=-1 +kerning first=283 second=251 amount=-1 +kerning first=313 second=217 amount=-1 +kerning first=198 second=310 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=221 second=231 amount=-1 +kerning first=8220 second=220 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=263 second=115 amount=-1 +kerning first=1071 second=1034 amount=-1 +kerning first=282 second=205 amount=-1 +kerning first=78 second=80 amount=-1 +kerning first=187 second=284 amount=-1 +kerning first=210 second=205 amount=-1 +kerning first=1049 second=1053 amount=-1 +kerning first=270 second=362 amount=-1 +kerning first=271 second=235 amount=-1 +kerning first=323 second=353 amount=-1 +kerning first=73 second=242 amount=-1 +kerning first=207 second=214 amount=-1 +kerning first=366 second=71 amount=-1 +kerning first=330 second=71 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=1071 second=1027 amount=-1 +kerning first=207 second=75 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=109 second=242 amount=-1 +kerning first=230 second=106 amount=-1 +kerning first=284 second=46 amount=-1 +kerning first=370 second=275 amount=-1 +kerning first=286 second=310 amount=-1 +kerning first=70 second=45 amount=-2 +kerning first=108 second=252 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=262 second=275 amount=-1 +kerning first=287 second=249 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=226 second=275 amount=-1 +kerning first=258 second=71 amount=-1 +kerning first=98 second=8218 amount=-1 +kerning first=355 second=45 amount=-1 +kerning first=198 second=362 amount=-1 +kerning first=8218 second=259 amount=-1 +kerning first=245 second=378 amount=-1 +kerning first=217 second=233 amount=-1 +kerning first=325 second=302 amount=-1 +kerning first=84 second=337 amount=-1 +kerning first=99 second=223 amount=-1 +kerning first=1068 second=1045 amount=-1 +kerning first=204 second=99 amount=-1 +kerning first=78 second=234 amount=-1 +kerning first=218 second=361 amount=-1 +kerning first=219 second=234 amount=-1 +kerning first=281 second=267 amount=-1 +kerning first=193 second=87 amount=-1 +kerning first=1102 second=1113 amount=-1 +kerning first=217 second=302 amount=-1 +kerning first=1034 second=1046 amount=-1 +kerning first=289 second=233 amount=-1 +kerning first=291 second=234 amount=-1 +kerning first=1070 second=1046 amount=-1 +kerning first=97 second=291 amount=-1 +kerning first=325 second=233 amount=-1 +kerning first=366 second=346 amount=-1 +kerning first=85 second=327 amount=-1 +kerning first=118 second=117 amount=-1 +kerning first=362 second=361 amount=-1 +kerning first=206 second=122 amount=-1 +kerning first=8217 second=223 amount=-1 +kerning first=1068 second=1037 amount=-1 +kerning first=242 second=122 amount=-1 +kerning first=324 second=243 amount=-1 +kerning first=369 second=337 amount=-1 +kerning first=1076 second=1080 amount=-1 +kerning first=101 second=122 amount=-1 +kerning first=1040 second=1080 amount=-1 +kerning first=262 second=327 amount=-1 +kerning first=330 second=357 amount=-1 +kerning first=220 second=224 amount=-1 +kerning first=298 second=327 amount=-1 +kerning first=261 second=337 amount=-1 +kerning first=80 second=352 amount=-1 +kerning first=334 second=327 amount=-1 +kerning first=225 second=337 amount=-1 +kerning first=197 second=8221 amount=-2 +kerning first=212 second=258 amount=-1 +kerning first=72 second=298 amount=-1 +kerning first=233 second=8221 amount=-2 +kerning first=364 second=224 amount=-1 +kerning first=8218 second=380 amount=-1 +kerning first=1044 second=1076 amount=-1 +kerning first=1071 second=1036 amount=-1 +kerning first=268 second=107 amount=-1 +kerning first=366 second=225 amount=-1 +kerning first=202 second=72 amount=-1 +kerning first=330 second=225 amount=-1 +kerning first=1068 second=1044 amount=-1 +kerning first=74 second=370 amount=-1 +kerning first=193 second=318 amount=-1 +kerning first=229 second=318 amount=-1 +kerning first=279 second=335 amount=-1 +kerning first=335 second=46 amount=-1 +kerning first=8250 second=209 amount=-1 +kerning first=346 second=72 amount=-1 +kerning first=104 second=267 amount=-1 +kerning first=1058 second=1071 amount=-1 +kerning first=204 second=344 amount=-1 +kerning first=327 second=234 amount=-1 +kerning first=1031 second=1055 amount=-1 +kerning first=337 second=318 amount=-1 +kerning first=192 second=105 amount=-1 +kerning first=274 second=72 amount=-1 +kerning first=209 second=267 amount=-1 +kerning first=1067 second=1055 amount=-1 +kerning first=8222 second=244 amount=-1 +kerning first=70 second=199 amount=-1 +kerning first=369 second=114 amount=-1 +kerning first=323 second=370 amount=-1 +kerning first=366 second=199 amount=-1 +kerning first=193 second=361 amount=-1 +kerning first=368 second=111 amount=-1 +kerning first=344 second=212 amount=-1 +kerning first=269 second=311 amount=-1 +kerning first=66 second=374 amount=-1 +kerning first=8220 second=364 amount=-1 +kerning first=1041 second=1031 amount=-1 +kerning first=1039 second=1086 amount=-1 +kerning first=370 second=264 amount=-1 +kerning first=192 second=118 amount=-1 +kerning first=200 second=212 amount=-1 +kerning first=1052 second=1083 amount=-1 +kerning first=85 second=206 amount=-1 +kerning first=234 second=267 amount=-1 +kerning first=220 second=225 amount=-1 +kerning first=249 second=281 amount=-1 +kerning first=334 second=206 amount=-1 +kerning first=205 second=115 amount=-1 +kerning first=370 second=206 amount=-1 +kerning first=197 second=368 amount=-1 +kerning first=1108 second=1095 amount=-1 +kerning first=262 second=206 amount=-1 +kerning first=283 second=114 amount=-1 +kerning first=277 second=115 amount=-1 +kerning first=298 second=206 amount=-1 +kerning first=224 second=111 amount=-1 +kerning first=8216 second=193 amount=-2 +kerning first=325 second=220 amount=-1 +kerning first=296 second=111 amount=-1 +kerning first=1072 second=1095 amount=-1 +kerning first=362 second=284 amount=-1 +kerning first=70 second=114 amount=-1 +kerning first=1036 second=1095 amount=-1 +kerning first=368 second=81 amount=-1 +kerning first=85 second=370 amount=-1 +kerning first=284 second=310 amount=-1 +kerning first=289 second=263 amount=-1 +kerning first=296 second=81 amount=-1 +kerning first=325 second=263 amount=-1 +kerning first=212 second=310 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=210 second=68 amount=-1 +kerning first=262 second=370 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=71 second=310 amount=-1 +kerning first=282 second=68 amount=-1 +kerning first=69 second=365 amount=-1 +kerning first=229 second=8249 amount=-1 +kerning first=45 second=199 amount=-1 +kerning first=316 second=106 amount=-1 +kerning first=370 second=370 amount=-1 +kerning first=203 second=203 amount=-1 +kerning first=278 second=330 amount=-1 +kerning first=298 second=370 amount=-1 +kerning first=334 second=370 amount=-1 +kerning first=315 second=374 amount=-1 +kerning first=258 second=199 amount=-1 +kerning first=244 second=106 amount=-1 +kerning first=1118 second=1101 amount=-1 +kerning first=330 second=199 amount=-1 +kerning first=217 second=263 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=71 second=327 amount=-1 +kerning first=346 second=8222 amount=-1 +kerning first=204 second=223 amount=-1 +kerning first=212 second=327 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=77 second=204 amount=-1 +kerning first=202 second=8222 amount=-1 +kerning first=8222 second=227 amount=-1 +kerning first=8250 second=382 amount=-1 +kerning first=202 second=334 amount=-1 +kerning first=204 second=279 amount=-1 +kerning first=99 second=279 amount=-1 +kerning first=74 second=361 amount=-1 +kerning first=310 second=334 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=201 second=288 amount=-1 +kerning first=364 second=44 amount=-2 +kerning first=79 second=87 amount=-1 +kerning first=288 second=187 amount=-1 +kerning first=325 second=213 amount=-1 +kerning first=274 second=334 amount=-1 +kerning first=224 second=291 amount=-1 +kerning first=74 second=318 amount=-1 +kerning first=1052 second=1056 amount=-1 +kerning first=1054 second=1045 amount=-1 +kerning first=197 second=84 amount=-1 +kerning first=197 second=221 amount=-1 +kerning first=272 second=75 amount=-1 +kerning first=75 second=187 amount=-1 +kerning first=207 second=270 amount=-1 +kerning first=287 second=318 amount=-1 +kerning first=77 second=99 amount=-1 +kerning first=365 second=101 amount=-1 +kerning first=86 second=279 amount=-1 +kerning first=8222 second=234 amount=-1 +kerning first=268 second=352 amount=-1 +kerning first=200 second=75 amount=-1 +kerning first=367 second=245 amount=-1 +kerning first=304 second=352 amount=-1 +kerning first=1060 second=1027 amount=-1 +kerning first=216 second=187 amount=-1 +kerning first=1040 second=1119 amount=-1 +kerning first=218 second=99 amount=-1 +kerning first=1042 second=1064 amount=-1 +kerning first=1076 second=1119 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=259 second=245 amount=-1 +kerning first=111 second=187 amount=-1 +kerning first=275 second=337 amount=-1 +kerning first=1053 second=1067 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=374 second=230 amount=-1 +kerning first=362 second=99 amount=-1 +kerning first=213 second=196 amount=-1 +kerning first=85 second=8220 amount=-1 +kerning first=326 second=99 amount=-1 +kerning first=326 second=287 amount=-1 +kerning first=209 second=332 amount=-1 +kerning first=302 second=230 amount=-1 +kerning first=266 second=230 amount=-1 +kerning first=101 second=235 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=355 second=277 amount=-1 +kerning first=244 second=316 amount=-1 +kerning first=100 second=8217 amount=-1 +kerning first=68 second=8250 amount=-1 +kerning first=8218 second=118 amount=-1 +kerning first=283 second=277 amount=-1 +kerning first=316 second=316 amount=-1 +kerning first=74 second=108 amount=-1 +kerning first=363 second=281 amount=-1 +kerning first=207 second=73 amount=-1 +kerning first=234 second=104 amount=-1 +kerning first=1039 second=1073 amount=-1 +kerning first=67 second=290 amount=-1 +kerning first=203 second=116 amount=-1 +kerning first=197 second=264 amount=-1 +kerning first=70 second=277 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=334 second=69 amount=-1 +kerning first=212 second=323 amount=-1 +kerning first=338 second=364 amount=-1 +kerning first=298 second=69 amount=-1 +kerning first=327 second=338 amount=-1 +kerning first=302 second=364 amount=-1 +kerning first=1052 second=1084 amount=-1 +kerning first=266 second=364 amount=-1 +kerning first=370 second=69 amount=-1 +kerning first=71 second=323 amount=-1 +kerning first=241 second=8217 amount=-2 +kerning first=194 second=364 amount=-1 +kerning first=277 second=8217 amount=-2 +kerning first=262 second=69 amount=-1 +kerning first=374 second=273 amount=-1 +kerning first=106 second=277 amount=-1 +kerning first=219 second=338 amount=-1 +kerning first=233 second=355 amount=-1 +kerning first=280 second=286 amount=-1 +kerning first=302 second=273 amount=-1 +kerning first=197 second=355 amount=-1 +kerning first=370 second=193 amount=-1 +kerning first=266 second=273 amount=-1 +kerning first=205 second=325 amount=-1 +kerning first=231 second=113 amount=-1 +kerning first=85 second=69 amount=-1 +kerning first=230 second=273 amount=-1 +kerning first=267 second=113 amount=-1 +kerning first=1052 second=1091 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=89 second=273 amount=-1 +kerning first=204 second=82 amount=-1 +kerning first=334 second=193 amount=-1 +kerning first=74 second=314 amount=-1 +kerning first=80 second=116 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=70 second=110 amount=-1 +kerning first=1064 second=1047 amount=-1 +kerning first=287 second=314 amount=-1 +kerning first=1052 second=1070 amount=-1 +kerning first=1036 second=1082 amount=-1 +kerning first=67 second=286 amount=-1 +kerning first=194 second=84 amount=-1 +kerning first=103 second=316 amount=-1 +kerning first=67 second=316 amount=-1 +kerning first=1047 second=1043 amount=-1 +kerning first=366 second=333 amount=-1 +kerning first=234 second=100 amount=-1 +kerning first=240 second=269 amount=-1 +kerning first=85 second=116 amount=-1 +kerning first=321 second=356 amount=-1 +kerning first=8217 second=213 amount=-1 +kerning first=1030 second=1100 amount=-1 +kerning first=317 second=219 amount=-1 +kerning first=112 second=289 amount=-1 +kerning first=1055 second=1048 amount=-1 +kerning first=330 second=333 amount=-1 +kerning first=253 second=289 amount=-1 +kerning first=8218 second=122 amount=-1 +kerning first=354 second=339 amount=-1 +kerning first=109 second=101 amount=-1 +kerning first=366 second=194 amount=-1 +kerning first=1067 second=1042 amount=-1 +kerning first=73 second=101 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=289 second=289 amount=-1 +kerning first=213 second=356 amount=-1 +kerning first=69 second=68 amount=-1 +kerning first=251 second=171 amount=-1 +kerning first=1071 second=1049 amount=-1 +kerning first=287 second=171 amount=-1 +kerning first=346 second=304 amount=-1 +kerning first=323 second=171 amount=-1 +kerning first=351 second=103 amount=-1 +kerning first=8249 second=89 amount=-1 +kerning first=355 second=281 amount=-1 +kerning first=275 second=246 amount=-1 +kerning first=74 second=270 amount=-1 +kerning first=279 second=103 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=72 second=330 amount=-1 +kerning first=202 second=304 amount=-1 +kerning first=243 second=103 amount=-1 +kerning first=80 second=296 amount=-1 +kerning first=217 second=220 amount=-1 +kerning first=213 second=330 amount=-1 +kerning first=207 second=103 amount=-1 +kerning first=79 second=280 amount=-1 +kerning first=230 second=46 amount=-1 +kerning first=274 second=304 amount=-1 +kerning first=78 second=338 amount=-1 +kerning first=333 second=8250 amount=-1 +kerning first=325 second=262 amount=-1 +kerning first=1055 second=1074 amount=-1 +kerning first=231 second=109 amount=-1 +kerning first=321 second=85 amount=-1 +kerning first=221 second=8218 amount=-2 +kerning first=1064 second=1051 amount=-1 +kerning first=73 second=298 amount=-1 +kerning first=70 second=281 amount=-1 +kerning first=264 second=315 amount=-1 +kerning first=267 second=109 amount=-1 +kerning first=74 second=277 amount=-1 +kerning first=105 second=339 amount=-1 +kerning first=72 second=85 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=214 second=298 amount=-1 +kerning first=258 second=355 amount=-1 +kerning first=364 second=211 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=224 second=382 amount=-1 +kerning first=353 second=8250 amount=-1 +kerning first=286 second=298 amount=-1 +kerning first=1038 second=1040 amount=-1 +kerning first=280 second=290 amount=-1 +kerning first=116 second=8218 amount=-1 +kerning first=240 second=8221 amount=-2 +kerning first=296 second=382 amount=-1 +kerning first=281 second=8250 amount=-1 +kerning first=228 second=289 amount=-1 +kerning first=1068 second=1079 amount=-1 +kerning first=245 second=8250 amount=-1 +kerning first=368 second=382 amount=-1 +kerning first=209 second=8250 amount=-1 +kerning first=224 second=287 amount=-1 +kerning first=221 second=120 amount=-1 +kerning first=230 second=234 amount=-1 +kerning first=307 second=339 amount=-1 +kerning first=206 second=302 amount=-1 +kerning first=220 second=83 amount=-1 +kerning first=74 second=210 amount=-1 +kerning first=302 second=234 amount=-1 +kerning first=219 second=263 amount=-1 +kerning first=77 second=101 amount=-1 +kerning first=235 second=107 amount=-1 +kerning first=266 second=234 amount=-1 +kerning first=370 second=232 amount=-1 +kerning first=374 second=234 amount=-1 +kerning first=65 second=8220 amount=-2 +kerning first=88 second=223 amount=-1 +kerning first=370 second=362 amount=-1 +kerning first=8250 second=196 amount=-1 +kerning first=1043 second=1114 amount=-1 +kerning first=284 second=219 amount=-1 +kerning first=235 second=339 amount=-1 +kerning first=199 second=339 amount=-1 +kerning first=101 second=8220 amount=-2 +kerning first=83 second=317 amount=-1 +kerning first=212 second=219 amount=-1 +kerning first=73 second=267 amount=-1 +kerning first=323 second=75 amount=-1 +kerning first=8222 second=283 amount=-1 +kerning first=275 second=311 amount=-1 +kerning first=202 second=330 amount=-1 +kerning first=85 second=232 amount=-1 +kerning first=325 second=122 amount=-1 +kerning first=346 second=219 amount=-1 +kerning first=199 second=107 amount=-1 +kerning first=217 second=122 amount=-1 +kerning first=362 second=103 amount=-1 +kerning first=71 second=219 amount=-1 +kerning first=253 second=122 amount=-1 +kerning first=298 second=232 amount=-1 +kerning first=326 second=103 amount=-1 +kerning first=112 second=122 amount=-1 +kerning first=72 second=214 amount=-1 +kerning first=262 second=232 amount=-1 +kerning first=89 second=234 amount=-1 +kerning first=226 second=232 amount=-1 +kerning first=218 second=335 amount=-1 +kerning first=8218 second=79 amount=-1 +kerning first=89 second=269 amount=-1 +kerning first=8250 second=210 amount=-1 +kerning first=1066 second=1065 amount=-1 +kerning first=368 second=85 amount=-1 +kerning first=261 second=8220 amount=-2 +kerning first=266 second=269 amount=-1 +kerning first=326 second=335 amount=-1 +kerning first=302 second=269 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=296 second=85 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=230 second=269 amount=-1 +kerning first=216 second=46 amount=-1 +kerning first=242 second=8220 amount=-2 +kerning first=73 second=229 amount=-1 +kerning first=1102 second=1083 amount=-1 +kerning first=288 second=46 amount=-1 +kerning first=314 second=8220 amount=-1 +kerning first=210 second=8217 amount=-2 +kerning first=83 second=85 amount=-1 +kerning first=374 second=269 amount=-1 +kerning first=1031 second=1081 amount=-1 +kerning first=187 second=241 amount=-1 +kerning first=350 second=302 amount=-1 +kerning first=1067 second=1081 amount=-1 +kerning first=334 second=65 amount=-1 +kerning first=370 second=65 amount=-1 +kerning first=269 second=225 amount=-1 +kerning first=278 second=302 amount=-1 +kerning first=77 second=335 amount=-1 +kerning first=220 second=250 amount=-1 +kerning first=1042 second=1038 amount=-2 +kerning first=279 second=378 amount=-1 +kerning first=243 second=378 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=81 second=195 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=207 second=378 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=364 second=250 amount=-1 +kerning first=1071 second=1075 amount=-1 +kerning first=370 second=366 amount=-1 +kerning first=201 second=262 amount=-1 +kerning first=203 second=207 amount=-1 +kerning first=221 second=192 amount=-1 +kerning first=111 second=46 amount=-1 +kerning first=298 second=366 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=75 second=46 amount=-1 +kerning first=334 second=366 amount=-1 +kerning first=110 second=345 amount=-1 +kerning first=200 second=216 amount=-1 +kerning first=334 second=330 amount=-1 +kerning first=1060 second=1053 amount=-1 +kerning first=325 second=259 amount=-1 +kerning first=354 second=227 amount=-1 +kerning first=1051 second=1076 amount=-1 +kerning first=366 second=195 amount=-1 +kerning first=344 second=216 amount=-1 +kerning first=1091 second=1117 amount=-1 +kerning first=73 second=246 amount=-1 +kerning first=88 second=357 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=233 second=251 amount=-1 +kerning first=302 second=338 amount=-1 +kerning first=290 second=201 amount=-1 +kerning first=200 second=251 amount=-1 +kerning first=193 second=357 amount=-1 +kerning first=196 second=116 amount=-1 +kerning first=8250 second=356 amount=-1 +kerning first=327 second=332 amount=-1 +kerning first=220 second=113 amount=-1 +kerning first=77 second=201 amount=-1 +kerning first=217 second=259 amount=-1 +kerning first=304 second=116 amount=-1 +kerning first=120 second=103 amount=-1 +kerning first=224 second=108 amount=-1 +kerning first=187 second=375 amount=-1 +kerning first=78 second=204 amount=-1 +kerning first=232 second=116 amount=-1 +kerning first=1058 second=1108 amount=-1 +kerning first=327 second=204 amount=-1 +kerning first=262 second=366 amount=-1 +kerning first=275 second=242 amount=-1 +kerning first=69 second=369 amount=-1 +kerning first=234 second=271 amount=-1 +kerning first=323 second=210 amount=-1 +kerning first=73 second=268 amount=-1 +kerning first=1101 second=1093 amount=-1 +kerning first=1049 second=1096 amount=-1 +kerning first=328 second=113 amount=-1 +kerning first=296 second=317 amount=-1 +kerning first=1039 second=1047 amount=-1 +kerning first=374 second=67 amount=-1 +kerning first=282 second=369 amount=-1 +kerning first=364 second=113 amount=-1 +kerning first=266 second=67 amount=-1 +kerning first=368 second=317 amount=-1 +kerning first=1054 second=1067 amount=-1 +kerning first=302 second=67 amount=-1 +kerning first=8217 second=243 amount=-1 +kerning first=110 second=279 amount=-1 +kerning first=278 second=371 amount=-1 +kerning first=1091 second=1113 amount=-1 +kerning first=279 second=244 amount=-1 +kerning first=101 second=233 amount=-1 +kerning first=350 second=371 amount=-1 +kerning first=330 second=97 amount=-1 +kerning first=74 second=279 amount=-1 +kerning first=366 second=97 amount=-1 +kerning first=287 second=279 amount=-1 +kerning first=80 second=257 amount=-1 +kerning first=1039 second=1079 amount=-1 +kerning first=323 second=279 amount=-1 +kerning first=1051 second=1080 amount=-1 +kerning first=201 second=327 amount=-1 +kerning first=251 second=279 amount=-1 +kerning first=199 second=209 amount=-1 +kerning first=206 second=233 amount=-1 +kerning first=274 second=200 amount=-1 +kerning first=1062 second=1102 amount=-1 +kerning first=70 second=75 amount=-1 +kerning first=362 second=266 amount=-1 +kerning first=277 second=187 amount=-1 +kerning first=202 second=200 amount=-1 +kerning first=314 second=233 amount=-1 +kerning first=1082 second=1095 amount=-1 +kerning first=65 second=371 amount=-1 +kerning first=218 second=266 amount=-1 +kerning first=354 second=235 amount=-1 +kerning first=81 second=8221 amount=-2 +kerning first=304 second=218 amount=-1 +kerning first=98 second=380 amount=-1 +kerning first=290 second=270 amount=-1 +kerning first=232 second=283 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=211 second=220 amount=-1 +kerning first=368 second=248 amount=-1 +kerning first=268 second=283 amount=-1 +kerning first=218 second=270 amount=-1 +kerning first=354 second=231 amount=-1 +kerning first=196 second=218 amount=-1 +kerning first=8216 second=65 amount=-2 +kerning first=1054 second=1071 amount=-1 +kerning first=284 second=282 amount=-1 +kerning first=275 second=380 amount=-1 +kerning first=105 second=231 amount=-1 +kerning first=220 second=44 amount=-2 +kerning first=224 second=248 amount=-1 +kerning first=256 second=44 amount=-1 +kerning first=307 second=45 amount=-1 +kerning first=362 second=270 amount=-1 +kerning first=211 second=75 amount=-1 +kerning first=115 second=44 amount=-1 +kerning first=296 second=248 amount=-1 +kerning first=286 second=66 amount=-1 +kerning first=1060 second=1071 amount=-1 +kerning first=264 second=79 amount=-1 +kerning first=269 second=269 amount=-1 +kerning first=8218 second=289 amount=-1 +kerning first=87 second=79 amount=-1 +kerning first=278 second=367 amount=-1 +kerning first=8250 second=85 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=207 second=244 amount=-1 +kerning first=304 second=283 amount=-1 +kerning first=350 second=367 amount=-1 +kerning first=77 second=270 amount=-1 +kerning first=314 second=367 amount=-1 +kerning first=75 second=217 amount=-1 +kerning first=74 second=344 amount=-1 +kerning first=101 second=367 amount=-1 +kerning first=192 second=354 amount=-1 +kerning first=344 second=114 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=310 second=8222 amount=-1 +kerning first=71 second=8218 amount=-1 +kerning first=288 second=217 amount=-1 +kerning first=280 second=80 amount=-1 +kerning first=74 second=206 amount=-1 +kerning first=200 second=114 amount=-1 +kerning first=380 second=45 amount=-1 +kerning first=323 second=344 amount=-1 +kerning first=119 second=252 amount=-1 +kerning first=1065 second=1097 amount=-1 +kerning first=83 second=252 amount=-1 +kerning first=80 second=261 amount=-1 +kerning first=1025 second=1095 amount=-1 +kerning first=313 second=89 amount=-1 +kerning first=8222 second=218 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=212 second=353 amount=-1 +kerning first=8250 second=81 amount=-1 +kerning first=81 second=368 amount=-1 +kerning first=1097 second=1095 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=356 second=353 amount=-1 +kerning first=195 second=345 amount=-1 +kerning first=231 second=345 amount=-1 +kerning first=323 second=206 amount=-1 +kerning first=267 second=345 amount=-1 +kerning first=330 second=368 amount=-1 +kerning first=77 second=266 amount=-1 +kerning first=117 second=8221 amount=-1 +kerning first=366 second=368 amount=-1 +kerning first=339 second=345 amount=-1 +kerning first=1067 second=1077 amount=-1 +kerning first=222 second=8221 amount=-2 +kerning first=255 second=106 amount=-1 +kerning first=375 second=345 amount=-1 +kerning first=334 second=302 amount=-1 +kerning first=1031 second=1077 amount=-1 +kerning first=86 second=243 amount=-1 +kerning first=258 second=8221 amount=-2 +kerning first=304 second=214 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=227 second=243 amount=-1 +kerning first=268 second=214 amount=-1 +kerning first=258 second=368 amount=-1 +kerning first=218 second=197 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=263 second=243 amount=-1 +kerning first=287 second=275 amount=-1 +kerning first=68 second=362 amount=-1 +kerning first=286 second=46 amount=-1 +kerning first=251 second=275 amount=-1 +kerning first=198 second=336 amount=-1 +kerning first=362 second=197 amount=-1 +kerning first=67 second=315 amount=-1 +kerning first=193 second=223 amount=-1 +kerning first=323 second=275 amount=-1 +kerning first=352 second=80 amount=-1 +kerning first=110 second=275 amount=-1 +kerning first=370 second=327 amount=-1 +kerning first=368 second=252 amount=-1 +kerning first=200 second=45 amount=-1 +kerning first=70 second=71 amount=-1 +kerning first=209 second=362 amount=-1 +kerning first=220 second=288 amount=-1 +kerning first=317 second=362 amount=-1 +kerning first=232 second=8220 amount=-2 +kerning first=1064 second=1086 amount=-1 +kerning first=67 second=71 amount=-1 +kerning first=1053 second=1094 amount=-1 +kerning first=356 second=275 amount=-1 +kerning first=74 second=353 amount=-1 +kerning first=225 second=45 amount=-1 +kerning first=78 second=243 amount=-1 +kerning first=213 second=69 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=219 second=243 amount=-1 +kerning first=120 second=45 amount=-1 +kerning first=287 second=353 amount=-1 +kerning first=291 second=243 amount=-1 +kerning first=1068 second=1036 amount=-1 +kerning first=204 second=214 amount=-1 +kerning first=369 second=45 amount=-1 +kerning first=261 second=45 amount=-1 +kerning first=363 second=243 amount=-1 +kerning first=1070 second=1068 amount=-1 +kerning first=213 second=206 amount=-1 +kerning first=205 second=219 amount=-1 +kerning first=327 second=243 amount=-1 +kerning first=1034 second=1068 amount=-1 +kerning first=284 second=362 amount=-1 +kerning first=201 second=223 amount=-1 +kerning first=205 second=80 amount=-1 +kerning first=1060 second=1062 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=1040 second=1097 amount=-1 +kerning first=327 second=248 amount=-1 +kerning first=282 second=67 amount=-1 +kerning first=226 second=318 amount=-1 +kerning first=224 second=45 amount=-1 +kerning first=1051 second=1060 amount=-1 +kerning first=1038 second=1082 amount=-1 +kerning first=264 second=350 amount=-1 +kerning first=232 second=46 amount=-1 +kerning first=334 second=258 amount=-1 +kerning first=205 second=200 amount=-1 +kerning first=370 second=258 amount=-1 +kerning first=366 second=234 amount=-1 +kerning first=327 second=262 amount=-1 +kerning first=330 second=234 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=339 second=8250 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=269 second=103 amount=-1 +kerning first=296 second=226 amount=-1 +kerning first=71 second=362 amount=-1 +kerning first=323 second=266 amount=-1 +kerning first=212 second=362 amount=-1 +kerning first=368 second=226 amount=-1 +kerning first=1059 second=1076 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=280 second=71 amount=-1 +kerning first=105 second=283 amount=-1 +kerning first=234 second=232 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=1038 second=1096 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=267 second=241 amount=-1 +kerning first=1051 second=1089 amount=-1 +kerning first=231 second=241 amount=-1 +kerning first=316 second=244 amount=-1 +kerning first=198 second=332 amount=-1 +kerning first=288 second=72 amount=-1 +kerning first=259 second=267 amount=-1 +kerning first=1041 second=1096 amount=-1 +kerning first=199 second=98 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=103 second=98 amount=-1 +kerning first=116 second=275 amount=-1 +kerning first=112 second=345 amount=-1 +kerning first=267 second=328 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=217 second=8249 amount=-2 +kerning first=231 second=328 amount=-1 +kerning first=279 second=243 amount=-1 +kerning first=217 second=345 amount=-1 +kerning first=171 second=352 amount=-1 +kerning first=80 second=335 amount=-1 +kerning first=366 second=114 amount=-1 +kerning first=253 second=345 amount=-1 +kerning first=207 second=352 amount=-1 +kerning first=330 second=114 amount=-1 +kerning first=289 second=345 amount=-1 +kerning first=203 second=302 amount=-1 +kerning first=1118 second=1079 amount=-1 +kerning first=85 second=258 amount=-1 +kerning first=325 second=345 amount=-1 +kerning first=116 second=335 amount=-1 +kerning first=275 second=8222 amount=-1 +kerning first=257 second=335 amount=-1 +kerning first=221 second=335 amount=-1 +kerning first=260 second=46 amount=-1 +kerning first=1059 second=1061 amount=-1 +kerning first=368 second=46 amount=-2 +kerning first=258 second=114 amount=-1 +kerning first=201 second=370 amount=-1 +kerning first=45 second=114 amount=-1 +kerning first=290 second=344 amount=-1 +kerning first=209 second=284 amount=-1 +kerning first=374 second=115 amount=-1 +kerning first=87 second=250 amount=-1 +kerning first=117 second=114 amount=-1 +kerning first=197 second=119 amount=-1 +kerning first=362 second=344 amount=-1 +kerning first=271 second=378 amount=-1 +kerning first=70 second=8221 amount=-1 +kerning first=220 second=336 amount=-1 +kerning first=1046 second=1079 amount=-1 +kerning first=230 second=115 amount=-1 +kerning first=1107 second=1114 amount=-1 +kerning first=266 second=115 amount=-1 +kerning first=302 second=115 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=305 second=119 amount=-1 +kerning first=197 second=199 amount=-1 +kerning first=264 second=216 amount=-1 +kerning first=233 second=106 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=269 second=106 amount=-1 +kerning first=235 second=378 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=1062 second=1054 amount=-1 +kerning first=77 second=344 amount=-1 +kerning first=1038 second=1105 amount=-1 +kerning first=1057 second=1071 amount=-1 +kerning first=218 second=344 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=1043 second=1088 amount=-1 +kerning first=274 second=282 amount=-1 +kerning first=1043 second=1101 amount=-1 +kerning first=79 second=204 amount=-1 +kerning first=202 second=282 amount=-1 +kerning first=327 second=206 amount=-1 +kerning first=1070 second=1055 amount=-1 +kerning first=1067 second=1096 amount=-1 +kerning first=204 second=288 amount=-1 +kerning first=195 second=87 amount=-1 +kerning first=263 second=230 amount=-1 +kerning first=307 second=291 amount=-1 +kerning first=271 second=291 amount=-1 +kerning first=72 second=81 amount=-1 +kerning first=119 second=106 amount=-1 +kerning first=235 second=291 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=1055 second=1052 amount=-1 +kerning first=275 second=101 amount=-1 +kerning first=207 second=279 amount=-1 +kerning first=210 second=296 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=264 second=337 amount=-1 +kerning first=69 second=296 amount=-1 +kerning first=1048 second=1098 amount=-1 +kerning first=228 second=337 amount=-1 +kerning first=8218 second=374 amount=-2 +kerning first=8250 second=120 amount=-1 +kerning first=279 second=279 amount=-1 +kerning first=1031 second=1064 amount=-1 +kerning first=287 second=244 amount=-1 +kerning first=282 second=296 amount=-1 +kerning first=87 second=337 amount=-1 +kerning first=203 second=75 amount=-1 +kerning first=370 second=245 amount=-1 +kerning first=8217 second=217 amount=-1 +kerning first=1067 second=1064 amount=-1 +kerning first=279 second=99 amount=-1 +kerning first=213 second=187 amount=-1 +kerning first=298 second=245 amount=-1 +kerning first=270 second=8250 amount=-1 +kerning first=207 second=99 amount=-1 +kerning first=234 second=8250 amount=-1 +kerning first=226 second=245 amount=-1 +kerning first=268 second=8218 amount=-1 +kerning first=232 second=8218 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=234 second=233 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=85 second=245 amount=-1 +kerning first=314 second=380 amount=-1 +kerning first=347 second=8220 amount=-2 +kerning first=71 second=202 amount=-1 +kerning first=116 second=248 amount=-1 +kerning first=70 second=255 amount=-1 +kerning first=311 second=8220 amount=-1 +kerning first=212 second=202 amount=-1 +kerning first=257 second=248 amount=-1 +kerning first=250 second=235 amount=-1 +kerning first=1064 second=1025 amount=-1 +kerning first=221 second=248 amount=-1 +kerning first=201 second=117 amount=-1 +kerning first=249 second=287 amount=-1 +kerning first=205 second=116 amount=-1 +kerning first=209 second=83 amount=-1 +kerning first=72 second=8222 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=80 second=248 amount=-1 +kerning first=1059 second=1081 amount=-1 +kerning first=350 second=66 amount=-1 +kerning first=327 second=97 amount=-1 +kerning first=346 second=209 amount=-1 +kerning first=219 second=364 amount=-1 +kerning first=69 second=270 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=278 second=66 amount=-1 +kerning first=1028 second=1073 amount=-1 +kerning first=274 second=209 amount=-1 +kerning first=258 second=307 amount=-1 +kerning first=206 second=66 amount=-1 +kerning first=78 second=364 amount=-1 +kerning first=284 second=202 amount=-1 +kerning first=210 second=270 amount=-1 +kerning first=218 second=257 amount=-1 +kerning first=202 second=209 amount=-1 +kerning first=203 second=8220 amount=-1 +kerning first=1064 second=1073 amount=-1 +kerning first=364 second=257 amount=-1 +kerning first=101 second=380 amount=-1 +kerning first=67 second=264 amount=-1 +kerning first=242 second=380 amount=-1 +kerning first=275 second=8220 amount=-2 +kerning first=206 second=380 amount=-1 +kerning first=8217 second=111 amount=-1 +kerning first=205 second=296 amount=-1 +kerning first=254 second=103 amount=-1 +kerning first=338 second=211 amount=-1 +kerning first=207 second=205 amount=-1 +kerning first=45 second=355 amount=-1 +kerning first=218 second=103 amount=-1 +kerning first=8216 second=366 amount=-1 +kerning first=1058 second=1091 amount=-1 +kerning first=304 second=227 amount=-1 +kerning first=1047 second=1039 amount=-1 +kerning first=268 second=227 amount=-1 +kerning first=201 second=69 amount=-1 +kerning first=288 second=325 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=277 second=273 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=274 second=330 amount=-1 +kerning first=356 second=74 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=205 second=273 amount=-1 +kerning first=346 second=330 amount=-1 +kerning first=78 second=269 amount=-1 +kerning first=291 second=269 amount=-1 +kerning first=366 second=355 amount=-1 +kerning first=199 second=218 amount=-1 +kerning first=270 second=78 amount=-1 +kerning first=327 second=269 amount=-1 +kerning first=330 second=355 amount=-1 +kerning first=119 second=120 amount=-1 +kerning first=1091 second=1078 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=112 second=44 amount=-1 +kerning first=255 second=316 amount=-1 +kerning first=287 second=112 amount=-1 +kerning first=1042 second=1116 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=8218 second=250 amount=-1 +kerning first=350 second=8220 amount=-1 +kerning first=363 second=269 amount=-1 +kerning first=253 second=44 amount=-1 +kerning first=198 second=78 amount=-1 +kerning first=346 second=282 amount=-1 +kerning first=289 second=44 amount=-1 +kerning first=218 second=365 amount=-1 +kerning first=218 second=171 amount=-2 +kerning first=121 second=117 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=85 second=117 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=290 second=171 amount=-1 +kerning first=205 second=286 amount=-1 +kerning first=326 second=171 amount=-1 +kerning first=1031 second=1051 amount=-1 +kerning first=274 second=68 amount=-1 +kerning first=1067 second=1051 amount=-1 +kerning first=74 second=249 amount=-1 +kerning first=1055 second=1100 amount=-1 +kerning first=84 second=333 amount=-1 +kerning first=346 second=68 amount=-1 +kerning first=269 second=307 amount=-1 +kerning first=70 second=203 amount=-1 +kerning first=1034 second=1042 amount=-1 +kerning first=339 second=100 amount=-1 +kerning first=65 second=220 amount=-1 +kerning first=366 second=260 amount=-1 +kerning first=1070 second=1042 amount=-1 +kerning first=206 second=220 amount=-1 +kerning first=211 second=203 amount=-1 +kerning first=104 second=263 amount=-1 +kerning first=346 second=82 amount=-1 +kerning first=209 second=263 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=1039 second=1025 amount=-1 +kerning first=8222 second=248 amount=-1 +kerning first=187 second=121 amount=-1 +kerning first=113 second=171 amount=-1 +kerning first=196 second=8250 amount=-1 +kerning first=281 second=263 amount=-1 +kerning first=250 second=246 amount=-1 +kerning first=1064 second=1060 amount=-1 +kerning first=337 second=103 amount=-1 +kerning first=1027 second=1119 amount=-1 +kerning first=8220 second=256 amount=-2 +kerning first=327 second=353 amount=-1 +kerning first=85 second=102 amount=-1 +kerning first=109 second=246 amount=-1 +kerning first=1067 second=1118 amount=-1 +kerning first=229 second=103 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=231 second=100 amount=-1 +kerning first=278 second=220 amount=-1 +kerning first=350 second=220 amount=-1 +kerning first=267 second=100 amount=-1 +kerning first=1060 second=1083 amount=-1 +kerning first=264 second=109 amount=-1 +kerning first=230 second=316 amount=-1 +kerning first=290 second=310 amount=-1 +kerning first=194 second=316 amount=-1 +kerning first=225 second=333 amount=-1 +kerning first=261 second=333 amount=-1 +kerning first=202 second=68 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=266 second=316 amount=-1 +kerning first=367 second=267 amount=-1 +kerning first=264 second=242 amount=-1 +kerning first=362 second=365 amount=-1 +kerning first=102 second=8218 amount=-1 +kerning first=369 second=333 amount=-1 +kerning first=235 second=8222 amount=-1 +kerning first=209 second=211 amount=-1 +kerning first=228 second=242 amount=-1 +kerning first=199 second=8222 amount=-1 +kerning first=214 second=194 amount=-1 +kerning first=280 second=45 amount=-1 +kerning first=347 second=289 amount=-1 +kerning first=268 second=313 amount=-1 +kerning first=1051 second=1094 amount=-1 +kerning first=116 second=233 amount=-1 +kerning first=304 second=313 amount=-1 +kerning first=85 second=210 amount=-1 +kerning first=224 second=339 amount=-1 +kerning first=86 second=111 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=374 second=256 amount=-1 +kerning first=323 second=8220 amount=-1 +kerning first=8222 second=86 amount=-2 +kerning first=323 second=245 amount=-1 +kerning first=227 second=111 amount=-1 +kerning first=287 second=245 amount=-1 +kerning first=263 second=111 amount=-1 +kerning first=206 second=280 amount=-1 +kerning first=1030 second=1057 amount=-1 +kerning first=1041 second=1079 amount=-1 +kerning first=231 second=233 amount=-1 +kerning first=350 second=280 amount=-1 +kerning first=296 second=339 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=71 second=274 amount=-1 +kerning first=103 second=104 amount=-1 +kerning first=339 second=233 amount=-1 +kerning first=368 second=339 amount=-1 +kerning first=368 second=120 amount=-1 +kerning first=1049 second=1118 amount=-1 +kerning first=103 second=277 amount=-1 +kerning first=200 second=298 amount=-1 +kerning first=280 second=212 amount=-1 +kerning first=197 second=8217 amount=-2 +kerning first=272 second=298 amount=-1 +kerning first=233 second=8217 amount=-2 +kerning first=269 second=8217 amount=-2 +kerning first=266 second=102 amount=-1 +kerning first=67 second=212 amount=-1 +kerning first=212 second=8217 amount=-2 +kerning first=345 second=230 amount=-1 +kerning first=362 second=357 amount=-1 +kerning first=220 second=344 amount=-1 +kerning first=251 second=245 amount=-1 +kerning first=262 second=331 amount=-1 +kerning first=1038 second=1104 amount=-1 +kerning first=8250 second=334 amount=-1 +kerning first=298 second=331 amount=-1 +kerning first=98 second=289 amount=-1 +kerning first=311 second=289 amount=-1 +kerning first=110 second=245 amount=-1 +kerning first=370 second=331 amount=-1 +kerning first=74 second=245 amount=-1 +kerning first=85 second=331 amount=-1 +kerning first=305 second=8217 amount=-1 +kerning first=313 second=221 amount=-1 +kerning first=199 second=85 amount=-1 +kerning first=275 second=289 amount=-1 +kerning first=377 second=8217 amount=-1 +kerning first=244 second=8221 amount=-2 +kerning first=367 second=113 amount=-1 +kerning first=1052 second=1096 amount=-1 +kerning first=1068 second=1049 amount=-1 +kerning first=323 second=366 amount=-1 +kerning first=1050 second=1095 amount=-1 +kerning first=211 second=195 amount=-1 +kerning first=88 second=116 amount=-1 +kerning first=203 second=216 amount=-1 +kerning first=259 second=113 amount=-1 +kerning first=205 second=67 amount=-1 +kerning first=325 second=79 amount=-1 +kerning first=220 second=241 amount=-1 +kerning first=73 second=8218 amount=-1 +kerning first=65 second=345 amount=-1 +kerning first=8222 second=240 amount=-1 +kerning first=70 second=195 amount=-1 +kerning first=289 second=250 amount=-1 +kerning first=253 second=250 amount=-1 +kerning first=121 second=104 amount=-1 +kerning first=1056 second=1119 amount=-1 +kerning first=217 second=250 amount=-1 +kerning first=364 second=70 amount=-1 +kerning first=218 second=357 amount=-1 +kerning first=8218 second=283 amount=-1 +kerning first=79 second=70 amount=-1 +kerning first=368 second=274 amount=-1 +kerning first=374 second=258 amount=-1 +kerning first=314 second=345 amount=-1 +kerning first=296 second=274 amount=-1 +kerning first=77 second=357 amount=-1 +kerning first=298 second=214 amount=-1 +kerning first=220 second=70 amount=-1 +kerning first=213 second=46 amount=-1 +kerning first=274 second=76 amount=-1 +kerning first=211 second=368 amount=-1 +kerning first=206 second=207 amount=-1 +kerning first=1049 second=1105 amount=-1 +kerning first=250 second=291 amount=-1 +kerning first=106 second=8221 amount=-1 +kerning first=278 second=207 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=211 second=8221 amount=-2 +kerning first=350 second=207 amount=-1 +kerning first=232 second=107 amount=-1 +kerning first=221 second=243 amount=-1 +kerning first=99 second=382 amount=-1 +kerning first=70 second=368 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=196 second=107 amount=-1 +kerning first=108 second=369 amount=-1 +kerning first=209 second=271 amount=-1 +kerning first=209 second=336 amount=-1 +kerning first=366 second=8250 amount=-2 +kerning first=1053 second=1086 amount=-1 +kerning first=1065 second=1054 amount=-1 +kerning first=74 second=366 amount=-1 +kerning first=281 second=271 amount=-1 +kerning first=8222 second=117 amount=-1 +kerning first=296 second=103 amount=-1 +kerning first=193 second=116 amount=-1 +kerning first=354 second=378 amount=-1 +kerning first=8217 second=252 amount=-1 +kerning first=370 second=210 amount=-1 +kerning first=89 second=256 amount=-1 +kerning first=262 second=210 amount=-1 +kerning first=298 second=200 amount=-1 +kerning first=364 second=122 amount=-1 +kerning first=280 second=204 amount=-1 +kerning first=246 second=378 amount=-1 +kerning first=196 second=86 amount=-1 +kerning first=8218 second=269 amount=-1 +kerning first=302 second=382 amount=-1 +kerning first=202 second=202 amount=-1 +kerning first=209 second=8220 amount=-1 +kerning first=1059 second=1117 amount=-1 +kerning first=1069 second=1083 amount=-1 +kerning first=8250 second=326 amount=-1 +kerning first=1066 second=1044 amount=-1 +kerning first=80 second=235 amount=-1 +kerning first=223 second=187 amount=-1 +kerning first=362 second=207 amount=-1 +kerning first=116 second=235 amount=-1 +kerning first=266 second=209 amount=-1 +kerning first=368 second=347 amount=-1 +kerning first=221 second=235 amount=-1 +kerning first=275 second=281 amount=-1 +kerning first=70 second=97 amount=-1 +kerning first=296 second=347 amount=-1 +kerning first=257 second=235 amount=-1 +kerning first=200 second=290 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=217 second=350 amount=-1 +kerning first=365 second=235 amount=-1 +kerning first=250 second=277 amount=-1 +kerning first=1033 second=1056 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=1069 second=1056 amount=-1 +kerning first=205 second=213 amount=-1 +kerning first=1075 second=1090 amount=-1 +kerning first=70 second=268 amount=-1 +kerning first=8218 second=275 amount=-1 +kerning first=1056 second=1077 amount=-1 +kerning first=80 second=283 amount=-1 +kerning first=327 second=351 amount=-1 +kerning first=116 second=283 amount=-1 +kerning first=291 second=351 amount=-1 +kerning first=199 second=231 amount=-1 +kerning first=255 second=351 amount=-1 +kerning first=200 second=363 amount=-1 +kerning first=235 second=231 amount=-1 +kerning first=219 second=351 amount=-1 +kerning first=271 second=231 amount=-1 +kerning first=8249 second=219 amount=-1 +kerning first=325 second=350 amount=-1 +kerning first=1091 second=1087 amount=-1 +kerning first=214 second=88 amount=-1 +kerning first=77 second=244 amount=-1 +kerning first=221 second=257 amount=-1 +kerning first=338 second=67 amount=-1 +kerning first=1054 second=1049 amount=-1 +kerning first=1078 second=1081 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=1033 second=1064 amount=-1 +kerning first=365 second=283 amount=-1 +kerning first=217 second=79 amount=-1 +kerning first=218 second=244 amount=-1 +kerning first=257 second=283 amount=-1 +kerning first=201 second=82 amount=-1 +kerning first=226 second=8249 amount=-1 +kerning first=307 second=231 amount=-1 +kerning first=73 second=344 amount=-1 +kerning first=65 second=307 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=78 second=351 amount=-1 +kerning first=326 second=244 amount=-1 +kerning first=221 second=283 amount=-1 +kerning first=362 second=244 amount=-1 +kerning first=82 second=332 amount=-1 +kerning first=87 second=345 amount=-1 +kerning first=200 second=202 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=72 second=209 amount=-1 +kerning first=105 second=248 amount=-1 +kerning first=192 second=345 amount=-1 +kerning first=1062 second=1089 amount=-1 +kerning first=228 second=345 amount=-1 +kerning first=271 second=283 amount=-1 +kerning first=1048 second=1076 amount=-1 +kerning first=281 second=243 amount=-1 +kerning first=264 second=345 amount=-1 +kerning first=307 second=283 amount=-1 +kerning first=268 second=235 amount=-1 +kerning first=339 second=369 amount=-1 +kerning first=199 second=283 amount=-1 +kerning first=187 second=332 amount=-1 +kerning first=220 second=371 amount=-1 +kerning first=304 second=235 amount=-1 +kerning first=235 second=283 amount=-1 +kerning first=274 second=274 amount=-1 +kerning first=203 second=367 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=112 second=380 amount=-1 +kerning first=1051 second=1067 amount=-1 +kerning first=202 second=274 amount=-1 +kerning first=275 second=367 amount=-1 +kerning first=108 second=101 amount=-1 +kerning first=362 second=192 amount=-1 +kerning first=217 second=380 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=85 second=323 amount=-1 +kerning first=325 second=66 amount=-1 +kerning first=106 second=281 amount=-1 +kerning first=253 second=380 amount=-1 +kerning first=218 second=192 amount=-1 +kerning first=213 second=209 amount=-1 +kerning first=199 second=226 amount=-1 +kerning first=1065 second=1080 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=1036 second=1054 amount=-1 +kerning first=350 second=44 amount=-1 +kerning first=262 second=323 amount=-1 +kerning first=86 second=252 amount=-1 +kerning first=71 second=330 amount=-1 +kerning first=263 second=252 amount=-1 +kerning first=45 second=119 amount=-1 +kerning first=370 second=323 amount=-1 +kerning first=198 second=70 amount=-1 +kerning first=346 second=274 amount=-1 +kerning first=334 second=323 amount=-1 +kerning first=229 second=244 amount=-1 +kerning first=89 second=171 amount=-2 +kerning first=298 second=323 amount=-1 +kerning first=8250 second=68 amount=-1 +kerning first=296 second=231 amount=-1 +kerning first=354 second=248 amount=-1 +kerning first=258 second=119 amount=-1 +kerning first=328 second=8217 amount=-2 +kerning first=296 second=261 amount=-1 +kerning first=290 second=366 amount=-1 +kerning first=65 second=44 amount=-1 +kerning first=282 second=218 amount=-1 +kerning first=323 second=201 amount=-1 +kerning first=368 second=231 amount=-1 +kerning first=368 second=261 amount=-1 +kerning first=1069 second=1055 amount=-1 +kerning first=210 second=218 amount=-1 +kerning first=198 second=327 amount=-1 +kerning first=1068 second=1071 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=229 second=314 amount=-1 +kerning first=242 second=44 amount=-1 +kerning first=193 second=314 amount=-1 +kerning first=270 second=327 amount=-1 +kerning first=224 second=231 amount=-1 +kerning first=101 second=44 amount=-1 +kerning first=69 second=218 amount=-1 +kerning first=74 second=201 amount=-1 +kerning first=262 second=353 amount=-1 +kerning first=266 second=243 amount=-1 +kerning first=97 second=8249 amount=-1 +kerning first=362 second=249 amount=-1 +kerning first=1028 second=1081 amount=-1 +kerning first=370 second=223 amount=-1 +kerning first=230 second=243 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=338 second=80 amount=-1 +kerning first=334 second=353 amount=-1 +kerning first=302 second=80 amount=-1 +kerning first=298 second=353 amount=-1 +kerning first=298 second=223 amount=-1 +kerning first=302 second=243 amount=-1 +kerning first=88 second=214 amount=-1 +kerning first=218 second=249 amount=-1 +kerning first=370 second=353 amount=-1 +kerning first=374 second=243 amount=-1 +kerning first=250 second=45 amount=-1 +kerning first=1064 second=1081 amount=-1 +kerning first=370 second=310 amount=-1 +kerning first=1118 second=1114 amount=-1 +kerning first=85 second=223 amount=-1 +kerning first=218 second=72 amount=-1 +kerning first=119 second=287 amount=-1 +kerning first=286 second=45 amount=-1 +kerning first=1064 second=1036 amount=-1 +kerning first=258 second=363 amount=-1 +kerning first=85 second=353 amount=-1 +kerning first=262 second=223 amount=-1 +kerning first=89 second=243 amount=-1 +kerning first=87 second=101 amount=-1 +kerning first=362 second=201 amount=-1 +kerning first=198 second=284 amount=-1 +kerning first=1046 second=1114 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=71 second=370 amount=-1 +kerning first=366 second=363 amount=-1 +kerning first=116 second=240 amount=-1 +kerning first=1051 second=1097 amount=-1 +kerning first=1065 second=1082 amount=-1 +kerning first=1059 second=1098 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=259 second=232 amount=-1 +kerning first=228 second=101 amount=-1 +kerning first=288 second=200 amount=-1 +kerning first=1067 second=1072 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=8222 second=99 amount=-1 +kerning first=1069 second=1027 amount=-1 +kerning first=204 second=266 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=78 second=347 amount=-1 +kerning first=74 second=258 amount=-1 +kerning first=367 second=232 amount=-1 +kerning first=259 second=8250 amount=-1 +kerning first=223 second=8250 amount=-1 +kerning first=118 second=8250 amount=-1 +kerning first=364 second=371 amount=-1 +kerning first=197 second=71 amount=-1 +kerning first=202 second=217 amount=-1 +kerning first=269 second=234 amount=-1 +kerning first=233 second=234 amount=-1 +kerning first=274 second=217 amount=-1 +kerning first=1031 second=1072 amount=-1 +kerning first=310 second=217 amount=-1 +kerning first=253 second=351 amount=-1 +kerning first=305 second=234 amount=-1 +kerning first=346 second=217 amount=-1 +kerning first=1036 second=1096 amount=-1 +kerning first=228 second=8220 amount=-2 +kerning first=80 second=313 amount=-1 +kerning first=97 second=111 amount=-1 +kerning first=192 second=8220 amount=-2 +kerning first=221 second=229 amount=-1 +kerning first=97 second=287 amount=-1 +kerning first=252 second=235 amount=-1 +kerning first=264 second=8220 amount=-1 +kerning first=234 second=254 amount=-1 +kerning first=205 second=72 amount=-1 +kerning first=66 second=8218 amount=-1 +kerning first=336 second=8220 amount=-2 +kerning first=1051 second=1024 amount=-1 +kerning first=77 second=352 amount=-1 +kerning first=193 second=374 amount=-1 +kerning first=267 second=263 amount=-1 +kerning first=296 second=69 amount=-1 +kerning first=1030 second=1117 amount=-1 +kerning first=366 second=212 amount=-1 +kerning first=218 second=352 amount=-1 +kerning first=339 second=263 amount=-1 +kerning first=377 second=8220 amount=-1 +kerning first=109 second=118 amount=-1 +kerning first=205 second=278 amount=-1 +kerning first=266 second=259 amount=-1 +kerning first=278 second=315 amount=-1 +kerning first=362 second=352 amount=-1 +kerning first=1038 second=1083 amount=-1 +kerning first=258 second=212 amount=-1 +kerning first=87 second=8220 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=206 second=315 amount=-1 +kerning first=197 second=114 amount=-1 +kerning first=83 second=68 amount=-1 +kerning first=67 second=199 amount=-1 +kerning first=219 second=115 amount=-1 +kerning first=269 second=114 amount=-1 +kerning first=255 second=115 amount=-1 +kerning first=233 second=114 amount=-1 +kerning first=284 second=370 amount=-1 +kerning first=87 second=194 amount=-1 +kerning first=316 second=250 amount=-1 +kerning first=323 second=331 amount=-1 +kerning first=280 second=199 amount=-1 +kerning first=78 second=115 amount=-1 +kerning first=231 second=263 amount=-1 +kerning first=202 second=81 amount=-1 +kerning first=334 second=310 amount=-1 +kerning first=232 second=365 amount=-1 +kerning first=298 second=310 amount=-1 +kerning first=368 second=68 amount=-1 +kerning first=45 second=106 amount=-1 +kerning first=67 second=269 amount=-1 +kerning first=310 second=81 amount=-1 +kerning first=103 second=269 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=316 second=269 amount=-1 +kerning first=327 second=115 amount=-1 +kerning first=252 second=243 amount=-1 +kerning first=8222 second=235 amount=-1 +kerning first=85 second=310 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=296 second=68 amount=-1 +kerning first=74 second=331 amount=-1 +kerning first=73 second=346 amount=-1 +kerning first=266 second=245 amount=-1 +kerning first=206 second=78 amount=-1 +kerning first=209 second=78 amount=-1 +kerning first=330 second=246 amount=-1 +kerning first=8218 second=229 amount=-1 +kerning first=1048 second=1062 amount=-1 +kerning first=213 second=282 amount=-1 +kerning first=1069 second=1043 amount=-1 +kerning first=368 second=334 amount=-1 +kerning first=207 second=219 amount=-1 +kerning first=8222 second=305 amount=-1 +kerning first=323 second=288 amount=-1 +kerning first=1033 second=1043 amount=-1 +kerning first=283 second=355 amount=-1 +kerning first=70 second=260 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=211 second=84 amount=-1 +kerning first=8218 second=101 amount=-1 +kerning first=1069 second=1041 amount=-1 +kerning first=72 second=282 amount=-1 +kerning first=1066 second=1052 amount=-1 +kerning first=272 second=8217 amount=-2 +kerning first=211 second=260 amount=-1 +kerning first=1030 second=1052 amount=-1 +kerning first=1078 second=1094 amount=-1 +kerning first=74 second=288 amount=-1 +kerning first=1042 second=1094 amount=-1 +kerning first=346 second=187 amount=-1 +kerning first=217 second=337 amount=-1 +kerning first=362 second=279 amount=-1 +kerning first=274 second=187 amount=-1 +kerning first=193 second=108 amount=-1 +kerning first=65 second=87 amount=-1 +kerning first=310 second=187 amount=-1 +kerning first=229 second=108 amount=-1 +kerning first=255 second=8217 amount=-2 +kerning first=105 second=291 amount=-1 +kerning first=291 second=8217 amount=-2 +kerning first=269 second=111 amount=-1 +kerning first=327 second=8217 amount=-1 +kerning first=337 second=108 amount=-1 +kerning first=363 second=8217 amount=-1 +kerning first=286 second=75 amount=-1 +kerning first=77 second=279 amount=-1 +kerning first=1056 second=1064 amount=-1 +kerning first=214 second=75 amount=-1 +kerning first=370 second=216 amount=-1 +kerning first=202 second=187 amount=-1 +kerning first=362 second=70 amount=-1 +kerning first=268 second=99 amount=-1 +kerning first=218 second=279 amount=-1 +kerning first=1062 second=1119 amount=-1 +kerning first=304 second=99 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=368 second=355 amount=-1 +kerning first=97 second=187 amount=-1 +kerning first=289 second=337 amount=-1 +kerning first=105 second=235 amount=-1 +kerning first=73 second=75 amount=-1 +kerning first=232 second=99 amount=-1 +kerning first=200 second=268 amount=-1 +kerning first=289 second=242 amount=-1 +kerning first=258 second=255 amount=-1 +kerning first=325 second=242 amount=-1 +kerning first=221 second=99 amount=-1 +kerning first=1050 second=1082 amount=-1 +kerning first=217 second=242 amount=-1 +kerning first=250 second=281 amount=-1 +kerning first=257 second=99 amount=-1 +kerning first=1065 second=1104 amount=-1 +kerning first=315 second=86 amount=-1 +kerning first=344 second=268 amount=-1 +kerning first=213 second=347 amount=-1 +kerning first=8249 second=370 amount=-1 +kerning first=45 second=255 amount=-1 +kerning first=365 second=99 amount=-1 +kerning first=213 second=89 amount=-1 +kerning first=171 second=86 amount=-1 +kerning first=72 second=347 amount=-1 +kerning first=305 second=277 amount=-1 +kerning first=69 second=77 amount=-1 +kerning first=269 second=277 amount=-1 +kerning first=196 second=355 amount=-1 +kerning first=274 second=325 amount=-1 +kerning first=233 second=277 amount=-1 +kerning first=364 second=198 amount=-1 +kerning first=219 second=264 amount=-1 +kerning first=346 second=325 amount=-1 +kerning first=1053 second=1073 amount=-1 +kerning first=73 second=281 amount=-1 +kerning first=220 second=233 amount=-1 +kerning first=203 second=296 amount=-1 +kerning first=109 second=281 amount=-1 +kerning first=78 second=264 amount=-1 +kerning first=284 second=69 amount=-1 +kerning first=113 second=108 amount=-1 +kerning first=280 second=8217 amount=-1 +kerning first=8222 second=335 amount=-1 +kerning first=209 second=241 amount=-1 +kerning first=316 second=8217 amount=-1 +kerning first=352 second=364 amount=-1 +kerning first=70 second=290 amount=-1 +kerning first=202 second=250 amount=-1 +kerning first=328 second=233 amount=-1 +kerning first=288 second=282 amount=-1 +kerning first=298 second=82 amount=-1 +kerning first=1055 second=1065 amount=-1 +kerning first=262 second=82 amount=-1 +kerning first=280 second=364 amount=-1 +kerning first=374 second=286 amount=-1 +kerning first=103 second=8217 amount=-2 +kerning first=370 second=82 amount=-1 +kerning first=1041 second=1117 amount=-1 +kerning first=71 second=69 amount=-1 +kerning first=334 second=82 amount=-1 +kerning first=1077 second=1117 amount=-1 +kerning first=212 second=69 amount=-1 +kerning first=208 second=8217 amount=-2 +kerning first=254 second=108 amount=-1 +kerning first=244 second=8217 amount=-2 +kerning first=1047 second=1091 amount=-1 +kerning first=105 second=243 amount=-1 +kerning first=266 second=286 amount=-1 +kerning first=89 second=351 amount=-1 +kerning first=66 second=86 amount=-1 +kerning first=302 second=286 amount=-1 +kerning first=1038 second=1061 amount=-1 +kerning first=338 second=286 amount=-1 +kerning first=302 second=351 amount=-1 +kerning first=70 second=355 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=266 second=351 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=230 second=351 amount=-1 +kerning first=1105 second=1078 amount=-1 +kerning first=199 second=334 amount=-1 +kerning first=1064 second=1030 amount=-1 +kerning first=194 second=286 amount=-1 +kerning first=80 second=99 amount=-1 +kerning first=85 second=82 amount=-1 +kerning first=258 second=216 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=272 second=203 amount=-1 +kerning first=1039 second=1095 amount=-1 +kerning first=1056 second=1043 amount=-1 +kerning first=327 second=103 amount=-1 +kerning first=1041 second=1037 amount=-1 +kerning first=118 second=254 amount=-1 +kerning first=1064 second=1072 amount=-1 +kerning first=74 second=117 amount=-1 +kerning first=200 second=203 amount=-1 +kerning first=1052 second=1074 amount=-1 +kerning first=1055 second=1039 amount=-1 +kerning first=220 second=122 amount=-1 +kerning first=1042 second=1083 amount=-1 +kerning first=287 second=117 amount=-1 +kerning first=220 second=100 amount=-1 +kerning first=288 second=296 amount=-1 +kerning first=220 second=263 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=70 second=298 amount=-1 +kerning first=67 second=8217 amount=-1 +kerning first=211 second=298 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=364 second=100 amount=-1 +kerning first=328 second=263 amount=-1 +kerning first=264 second=229 amount=-1 +kerning first=229 second=171 amount=-1 +kerning first=1036 second=1104 amount=-1 +kerning first=364 second=263 amount=-1 +kerning first=369 second=246 amount=-1 +kerning first=1038 second=1118 amount=-1 +kerning first=210 second=356 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=368 second=369 amount=-1 +kerning first=296 second=304 amount=-1 +kerning first=8217 second=230 amount=-1 +kerning first=261 second=246 amount=-1 +kerning first=368 second=304 amount=-1 +kerning first=73 second=66 amount=-1 +kerning first=225 second=246 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=1065 second=1118 amount=-1 +kerning first=1039 second=1060 amount=-1 +kerning first=1049 second=1080 amount=-1 +kerning first=199 second=120 amount=-1 +kerning first=1070 second=1031 amount=-1 +kerning first=277 second=316 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=235 second=120 amount=-1 +kerning first=195 second=220 amount=-1 +kerning first=1078 second=1086 amount=-1 +kerning first=344 second=368 amount=-1 +kerning first=200 second=8221 amount=-1 +kerning first=240 second=103 amount=-1 +kerning first=194 second=221 amount=-1 +kerning first=204 second=103 amount=-1 +kerning first=264 second=217 amount=-1 +kerning first=275 second=382 amount=-1 +kerning first=272 second=8221 amount=-2 +kerning first=272 second=218 amount=-1 +kerning first=198 second=211 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=200 second=368 amount=-1 +kerning first=289 second=109 amount=-1 +kerning first=344 second=8221 amount=-1 +kerning first=1078 second=1108 amount=-1 +kerning first=288 second=330 amount=-1 +kerning first=8250 second=369 amount=-1 +kerning first=325 second=109 amount=-1 +kerning first=72 second=68 amount=-1 +kerning first=272 second=368 amount=-1 +kerning first=103 second=307 amount=-1 +kerning first=217 second=109 amount=-1 +kerning first=213 second=68 amount=-1 +kerning first=1046 second=1092 amount=-1 +kerning first=279 second=8218 amount=-1 +kerning first=97 second=382 amount=-1 +kerning first=119 second=98 amount=-1 +kerning first=210 second=85 amount=-1 +kerning first=287 second=223 amount=-1 +kerning first=72 second=339 amount=-1 +kerning first=69 second=85 amount=-1 +kerning first=219 second=256 amount=-1 +kerning first=67 second=234 amount=-1 +kerning first=321 second=8220 amount=-1 +kerning first=1053 second=1081 amount=-1 +kerning first=201 second=210 amount=-1 +kerning first=89 second=199 amount=-1 +kerning first=1070 second=1059 amount=-1 +kerning first=264 second=302 amount=-1 +kerning first=323 second=223 amount=-1 +kerning first=103 second=234 amount=-1 +kerning first=100 second=243 amount=-1 +kerning first=325 second=280 amount=-1 +kerning first=268 second=335 amount=-1 +kerning first=1050 second=1090 amount=-1 +kerning first=232 second=335 amount=-1 +kerning first=205 second=243 amount=-1 +kerning first=70 second=363 amount=-1 +kerning first=304 second=335 amount=-1 +kerning first=277 second=243 amount=-1 +kerning first=241 second=243 amount=-1 +kerning first=74 second=223 amount=-1 +kerning first=108 second=339 amount=-1 +kerning first=249 second=339 amount=-1 +kerning first=270 second=219 amount=-1 +kerning first=283 second=363 amount=-1 +kerning first=70 second=225 amount=-1 +kerning first=198 second=219 amount=-1 +kerning first=287 second=8249 amount=-1 +kerning first=323 second=8249 amount=-1 +kerning first=368 second=71 amount=-1 +kerning first=207 second=357 amount=-1 +kerning first=206 second=350 amount=-1 +kerning first=213 second=76 amount=-1 +kerning first=282 second=365 amount=-1 +kerning first=72 second=76 amount=-1 +kerning first=279 second=357 amount=-1 +kerning first=1048 second=1034 amount=-1 +kerning first=214 second=196 amount=-1 +kerning first=109 second=289 amount=-1 +kerning first=250 second=289 amount=-1 +kerning first=267 second=228 amount=-1 +kerning first=316 second=234 amount=-1 +kerning first=214 second=354 amount=-1 +kerning first=1048 second=1068 amount=-1 +kerning first=8250 second=357 amount=-1 +kerning first=1049 second=1075 amount=-1 +kerning first=1078 second=1080 amount=-1 +kerning first=231 second=228 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=1049 second=1074 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=282 second=85 amount=-1 +kerning first=278 second=79 amount=-1 +kerning first=1044 second=1108 amount=-1 +kerning first=72 second=274 amount=-1 +kerning first=73 second=80 amount=-1 +kerning first=204 second=366 amount=-1 +kerning first=350 second=250 amount=-1 +kerning first=346 second=46 amount=-1 +kerning first=310 second=46 amount=-1 +kerning first=45 second=112 amount=-1 +kerning first=354 second=283 amount=-1 +kerning first=1070 second=1045 amount=-1 +kerning first=80 second=378 amount=-1 +kerning first=368 second=8222 amount=-2 +kerning first=1071 second=1062 amount=-1 +kerning first=1054 second=1050 amount=-1 +kerning first=278 second=8218 amount=-1 +kerning first=8216 second=353 amount=-1 +kerning first=101 second=250 amount=-1 +kerning first=209 second=70 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=66 second=357 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=364 second=229 amount=-1 +kerning first=73 second=216 amount=-1 +kerning first=314 second=250 amount=-1 +kerning first=278 second=250 amount=-1 +kerning first=8220 second=115 amount=-1 +kerning first=1049 second=1060 amount=-1 +kerning first=272 second=195 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=72 second=382 amount=-1 +kerning first=68 second=70 amount=-1 +kerning first=213 second=274 amount=-1 +kerning first=266 second=213 amount=-1 +kerning first=202 second=317 amount=-1 +kerning first=74 second=323 amount=-1 +kerning first=375 second=122 amount=-1 +kerning first=119 second=369 amount=-1 +kerning first=325 second=207 amount=-1 +kerning first=83 second=369 amount=-1 +kerning first=274 second=317 amount=-1 +kerning first=362 second=116 amount=-1 +kerning first=220 second=271 amount=-1 +kerning first=346 second=317 amount=-1 +kerning first=231 second=122 amount=-1 +kerning first=374 second=213 amount=-1 +kerning first=267 second=122 amount=-1 +kerning first=338 second=213 amount=-1 +kerning first=302 second=213 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=364 second=271 amount=-1 +kerning first=332 second=8222 amount=-1 +kerning first=234 second=113 amount=-1 +kerning first=70 second=119 amount=-1 +kerning first=204 second=201 amount=-1 +kerning first=77 second=116 amount=-1 +kerning first=257 second=378 amount=-1 +kerning first=323 second=323 amount=-1 +kerning first=1027 second=1096 amount=-1 +kerning first=221 second=378 amount=-1 +kerning first=1070 second=1051 amount=-1 +kerning first=8249 second=362 amount=-1 +kerning first=217 second=207 amount=-1 +kerning first=119 second=8222 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=83 second=8222 amount=-1 +kerning first=218 second=116 amount=-1 +kerning first=187 second=262 amount=-1 +kerning first=210 second=315 amount=-1 +kerning first=79 second=366 amount=-1 +kerning first=87 second=113 amount=-1 +kerning first=254 second=314 amount=-1 +kerning first=220 second=259 amount=-1 +kerning first=213 second=204 amount=-1 +kerning first=1048 second=1081 amount=-1 +kerning first=291 second=355 amount=-1 +kerning first=232 second=339 amount=-1 +kerning first=80 second=195 amount=-1 +kerning first=113 second=314 amount=-1 +kerning first=65 second=363 amount=-1 +kerning first=101 second=363 amount=-1 +kerning first=364 second=259 amount=-1 +kerning first=205 second=110 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=323 second=116 amount=-1 +kerning first=344 second=67 amount=-1 +kerning first=279 second=369 amount=-1 +kerning first=287 second=116 amount=-1 +kerning first=1031 second=1030 amount=-1 +kerning first=278 second=363 amount=-1 +kerning first=67 second=73 amount=-1 +kerning first=200 second=207 amount=-1 +kerning first=200 second=67 amount=-1 +kerning first=350 second=363 amount=-1 +kerning first=214 second=356 amount=-1 +kerning first=205 second=317 amount=-1 +kerning first=230 second=103 amount=-1 +kerning first=272 second=207 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=264 second=113 amount=-1 +kerning first=187 second=210 amount=-1 +kerning first=8222 second=284 amount=-1 +kerning first=220 second=366 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=228 second=113 amount=-1 +kerning first=347 second=44 amount=-1 +kerning first=356 second=8250 amount=-1 +kerning first=1104 second=1093 amount=-1 +kerning first=270 second=302 amount=-1 +kerning first=78 second=213 amount=-1 +kerning first=67 second=268 amount=-1 +kerning first=267 second=271 amount=-1 +kerning first=1070 second=1038 amount=-1 +kerning first=253 second=8218 amount=-1 +kerning first=198 second=302 amount=-1 +kerning first=248 second=8250 amount=-1 +kerning first=339 second=271 amount=-1 +kerning first=280 second=268 amount=-1 +kerning first=212 second=8250 amount=-1 +kerning first=72 second=351 amount=-1 +kerning first=217 second=101 amount=-1 +kerning first=272 second=354 amount=-1 +kerning first=219 second=213 amount=-1 +kerning first=269 second=8220 amount=-2 +kerning first=234 second=8220 amount=-2 +kerning first=289 second=101 amount=-1 +kerning first=71 second=8250 amount=-1 +kerning first=198 second=8220 amount=-1 +kerning first=219 second=257 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=193 second=219 amount=-1 +kerning first=207 second=262 amount=-1 +kerning first=1044 second=1105 amount=-1 +kerning first=327 second=213 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=234 second=122 amount=-1 +kerning first=254 second=291 amount=-1 +kerning first=1058 second=1098 amount=-1 +kerning first=72 second=204 amount=-1 +kerning first=71 second=345 amount=-1 +kerning first=262 second=72 amount=-1 +kerning first=296 second=296 amount=-1 +kerning first=201 second=73 amount=-1 +kerning first=1078 second=1072 amount=-1 +kerning first=205 second=290 amount=-1 +kerning first=323 second=283 amount=-1 +kerning first=330 second=338 amount=-1 +kerning first=279 second=235 amount=-1 +kerning first=207 second=82 amount=-1 +kerning first=251 second=283 amount=-1 +kerning first=258 second=338 amount=-1 +kerning first=310 second=286 amount=-1 +kerning first=206 second=355 amount=-1 +kerning first=110 second=283 amount=-1 +kerning first=1067 second=1060 amount=-1 +kerning first=73 second=277 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=45 second=338 amount=-1 +kerning first=74 second=283 amount=-1 +kerning first=202 second=286 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=270 second=8220 amount=-2 +kerning first=213 second=351 amount=-1 +kerning first=114 second=226 amount=-1 +kerning first=232 second=367 amount=-1 +kerning first=274 second=286 amount=-1 +kerning first=272 second=260 amount=-1 +kerning first=210 second=86 amount=-1 +kerning first=82 second=8250 amount=-1 +kerning first=219 second=226 amount=-1 +kerning first=354 second=347 amount=-1 +kerning first=220 second=79 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=77 second=275 amount=-1 +kerning first=327 second=226 amount=-1 +kerning first=72 second=244 amount=-1 +kerning first=345 second=240 amount=-1 +kerning first=356 second=171 amount=-1 +kerning first=108 second=244 amount=-1 +kerning first=219 second=333 amount=-1 +kerning first=214 second=70 amount=-1 +kerning first=78 second=333 amount=-1 +kerning first=286 second=70 amount=-1 +kerning first=249 second=244 amount=-1 +kerning first=327 second=333 amount=-1 +kerning first=1064 second=1056 amount=-1 +kerning first=363 second=333 amount=-1 +kerning first=338 second=278 amount=-1 +kerning first=288 second=220 amount=-1 +kerning first=302 second=278 amount=-1 +kerning first=73 second=70 amount=-1 +kerning first=1055 second=1069 amount=-1 +kerning first=291 second=333 amount=-1 +kerning first=266 second=278 amount=-1 +kerning first=1039 second=1094 amount=-1 +kerning first=217 second=74 amount=-1 +kerning first=1052 second=1065 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=249 second=231 amount=-1 +kerning first=107 second=171 amount=-1 +kerning first=325 second=74 amount=-1 +kerning first=1031 second=1060 amount=-1 +kerning first=8250 second=76 amount=-1 +kerning first=224 second=269 amount=-1 +kerning first=72 second=231 amount=-1 +kerning first=284 second=171 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=108 second=231 amount=-1 +kerning first=338 second=252 amount=-1 +kerning first=370 second=214 amount=-1 +kerning first=368 second=269 amount=-1 +kerning first=279 second=249 amount=-1 +kerning first=107 second=318 amount=-1 +kerning first=296 second=269 amount=-1 +kerning first=374 second=252 amount=-1 +kerning first=262 second=214 amount=-1 +kerning first=171 second=370 amount=-1 +kerning first=323 second=310 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=8250 second=90 amount=-1 +kerning first=248 second=318 amount=-1 +kerning first=282 second=200 amount=-1 +kerning first=69 second=266 amount=-1 +kerning first=268 second=8222 amount=-1 +kerning first=212 second=209 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=232 second=8222 amount=-1 +kerning first=266 second=45 amount=-1 +kerning first=196 second=370 amount=-1 +kerning first=89 second=252 amount=-1 +kerning first=73 second=97 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=203 second=71 amount=-1 +kerning first=1062 second=1097 amount=-1 +kerning first=374 second=45 amount=-2 +kerning first=304 second=370 amount=-1 +kerning first=78 second=199 amount=-1 +kerning first=234 second=275 amount=-1 +kerning first=230 second=252 amount=-1 +kerning first=338 second=45 amount=-1 +kerning first=85 second=214 amount=-1 +kerning first=268 second=370 amount=-1 +kerning first=288 second=209 amount=-1 +kerning first=1105 second=1081 amount=-1 +kerning first=270 second=73 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=72 second=217 amount=-1 +kerning first=8250 second=296 amount=-1 +kerning first=304 second=223 amount=-1 +kerning first=77 second=338 amount=-1 +kerning first=268 second=223 amount=-1 +kerning first=364 second=232 amount=-1 +kerning first=213 second=217 amount=-1 +kerning first=1030 second=1027 amount=-1 +kerning first=219 second=201 amount=-1 +kerning first=328 second=232 amount=-1 +kerning first=67 second=108 amount=-1 +kerning first=230 second=251 amount=-1 +kerning first=224 second=243 amount=-1 +kerning first=321 second=217 amount=-1 +kerning first=1066 second=1027 amount=-1 +kerning first=296 second=243 amount=-1 +kerning first=282 second=266 amount=-1 +kerning first=374 second=251 amount=-1 +kerning first=368 second=243 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=259 second=171 amount=-1 +kerning first=101 second=242 amount=-1 +kerning first=214 second=8221 amount=-2 +kerning first=89 second=225 amount=-1 +kerning first=250 second=8221 amount=-1 +kerning first=284 second=345 amount=-1 +kerning first=235 second=335 amount=-1 +kerning first=286 second=8221 amount=-1 +kerning first=199 second=335 amount=-1 +kerning first=302 second=225 amount=-1 +kerning first=220 second=232 amount=-1 +kerning first=266 second=72 amount=-1 +kerning first=307 second=335 amount=-1 +kerning first=1048 second=1054 amount=-1 +kerning first=266 second=225 amount=-1 +kerning first=302 second=72 amount=-1 +kerning first=271 second=335 amount=-1 +kerning first=197 second=89 amount=-1 +kerning first=374 second=225 amount=-1 +kerning first=8249 second=83 amount=-1 +kerning first=206 second=242 amount=-1 +kerning first=1043 second=1105 amount=-1 +kerning first=1039 second=1052 amount=-1 +kerning first=1065 second=1089 amount=-1 +kerning first=1054 second=1063 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=204 second=243 amount=-1 +kerning first=262 second=114 amount=-1 +kerning first=1028 second=1117 amount=-1 +kerning first=338 second=72 amount=-1 +kerning first=272 second=344 amount=-1 +kerning first=85 second=241 amount=-1 +kerning first=1055 second=1096 amount=-1 +kerning first=206 second=336 amount=-1 +kerning first=217 second=269 amount=-1 +kerning first=370 second=241 amount=-1 +kerning first=8250 second=270 amount=-1 +kerning first=278 second=336 amount=-1 +kerning first=298 second=241 amount=-1 +kerning first=262 second=241 amount=-1 +kerning first=325 second=114 amount=-1 +kerning first=1060 second=1045 amount=-1 +kerning first=72 second=378 amount=-1 +kerning first=289 second=114 amount=-1 +kerning first=219 second=199 amount=-1 +kerning first=67 second=115 amount=-1 +kerning first=1071 second=1056 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=255 second=46 amount=-1 +kerning first=327 second=199 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=77 second=81 amount=-1 +kerning first=112 second=114 amount=-1 +kerning first=77 second=327 amount=-1 +kerning first=1049 second=1113 amount=-1 +kerning first=85 second=361 amount=-1 +kerning first=217 second=114 amount=-1 +kerning first=108 second=378 amount=-1 +kerning first=206 second=79 amount=-1 +kerning first=204 second=284 amount=-1 +kerning first=218 second=327 amount=-1 +kerning first=1053 second=1045 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=290 second=327 amount=-1 +kerning first=74 second=310 amount=-1 +kerning first=218 second=81 amount=-1 +kerning first=262 second=44 amount=-1 +kerning first=73 second=8221 amount=-1 +kerning first=370 second=361 amount=-1 +kerning first=109 second=8221 amount=-2 +kerning first=206 second=216 amount=-1 +kerning first=362 second=81 amount=-1 +kerning first=88 second=218 amount=-1 +kerning first=333 second=8221 amount=-2 +kerning first=369 second=8221 amount=-1 +kerning first=214 second=44 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=356 second=224 amount=-1 +kerning first=1042 second=1098 amount=-1 +kerning first=116 second=8249 amount=-1 +kerning first=78 second=72 amount=-1 +kerning first=221 second=369 amount=-1 +kerning first=221 second=8249 amount=-2 +kerning first=368 second=282 amount=-1 +kerning first=257 second=8249 amount=-1 +kerning first=1069 second=1068 amount=-1 +kerning first=221 second=331 amount=-1 +kerning first=296 second=282 amount=-1 +kerning first=209 second=352 amount=-1 +kerning first=199 second=102 amount=-1 +kerning first=85 second=267 amount=-1 +kerning first=1055 second=1070 amount=-1 +kerning first=326 second=45 amount=-1 +kerning first=219 second=72 amount=-1 +kerning first=1039 second=1055 amount=-1 +kerning first=1055 second=1089 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=86 second=248 amount=-1 +kerning first=193 second=218 amount=-1 +kerning first=227 second=248 amount=-1 +kerning first=8250 second=217 amount=-1 +kerning first=73 second=44 amount=-1 +kerning first=302 second=199 amount=-1 +kerning first=269 second=230 amount=-1 +kerning first=77 second=206 amount=-1 +kerning first=1067 second=1086 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=1033 second=1031 amount=-1 +kerning first=1031 second=1086 amount=-1 +kerning first=374 second=199 amount=-1 +kerning first=362 second=288 amount=-1 +kerning first=290 second=206 amount=-1 +kerning first=230 second=291 amount=-1 +kerning first=201 second=361 amount=-1 +kerning first=218 second=206 amount=-1 +kerning first=77 second=288 amount=-1 +kerning first=1048 second=1080 amount=-1 +kerning first=199 second=227 amount=-1 +kerning first=305 second=337 amount=-1 +kerning first=84 second=8221 amount=-1 +kerning first=313 second=84 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=269 second=337 amount=-1 +kerning first=362 second=206 amount=-1 +kerning first=120 second=8221 amount=-1 +kerning first=1091 second=1095 amount=-1 +kerning first=233 second=337 amount=-1 +kerning first=1055 second=1095 amount=-1 +kerning first=225 second=8221 amount=-2 +kerning first=207 second=81 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=261 second=8221 amount=-2 +kerning first=1043 second=1079 amount=-1 +kerning first=257 second=267 amount=-1 +kerning first=218 second=288 amount=-1 +kerning first=72 second=352 amount=-1 +kerning first=8249 second=221 amount=-1 +kerning first=206 second=362 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=103 second=187 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=217 second=75 amount=-1 +kerning first=195 second=219 amount=-1 +kerning first=278 second=362 amount=-1 +kerning first=1055 second=1117 amount=-1 +kerning first=72 second=325 amount=-1 +kerning first=67 second=187 amount=-1 +kerning first=350 second=362 amount=-1 +kerning first=218 second=8218 amount=-2 +kerning first=213 second=325 amount=-1 +kerning first=280 second=187 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=296 second=270 amount=-1 +kerning first=1075 second=1082 amount=-1 +kerning first=77 second=8218 amount=-1 +kerning first=221 second=266 amount=-1 +kerning first=244 second=187 amount=-1 +kerning first=70 second=66 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=335 second=382 amount=-1 +kerning first=80 second=8222 amount=-2 +kerning first=85 second=202 amount=-1 +kerning first=80 second=266 amount=-1 +kerning first=1036 second=1116 amount=-1 +kerning first=73 second=71 amount=-1 +kerning first=374 second=264 amount=-1 +kerning first=233 second=107 amount=-1 +kerning first=1055 second=1043 amount=-1 +kerning first=338 second=264 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=217 second=77 amount=-1 +kerning first=281 second=275 amount=-1 +kerning first=325 second=75 amount=-1 +kerning first=302 second=264 amount=-1 +kerning first=65 second=362 amount=-1 +kerning first=266 second=264 amount=-1 +kerning first=356 second=279 amount=-1 +kerning first=218 second=261 amount=-1 +kerning first=205 second=209 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=281 second=367 amount=-1 +kerning first=81 second=218 amount=-1 +kerning first=197 second=364 amount=-1 +kerning first=375 second=117 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=362 second=261 amount=-1 +kerning first=78 second=334 amount=-1 +kerning first=298 second=202 amount=-1 +kerning first=211 second=66 amount=-1 +kerning first=262 second=202 amount=-1 +kerning first=370 second=202 amount=-1 +kerning first=323 second=257 amount=-1 +kerning first=334 second=202 amount=-1 +kerning first=1027 second=1091 amount=-1 +kerning first=351 second=108 amount=-1 +kerning first=74 second=257 amount=-1 +kerning first=202 second=205 amount=-1 +kerning first=364 second=193 amount=-1 +kerning first=243 second=108 amount=-1 +kerning first=279 second=108 amount=-1 +kerning first=219 second=334 amount=-1 +kerning first=368 second=270 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=346 second=205 amount=-1 +kerning first=220 second=193 amount=-1 +kerning first=286 second=171 amount=-1 +kerning first=327 second=334 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=274 second=205 amount=-1 +kerning first=201 second=323 amount=-1 +kerning first=291 second=307 amount=-1 +kerning first=8218 second=113 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=8217 second=231 amount=-1 +kerning first=228 second=267 amount=-1 +kerning first=268 second=82 amount=-1 +kerning first=259 second=263 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=195 second=117 amount=-1 +kerning first=280 second=8218 amount=-1 +kerning first=368 second=351 amount=-1 +kerning first=220 second=46 amount=-2 +kerning first=86 second=286 amount=-1 +kerning first=296 second=351 amount=-1 +kerning first=99 second=365 amount=-1 +kerning first=339 second=117 amount=-1 +kerning first=1058 second=1074 amount=-1 +kerning first=288 second=68 amount=-1 +kerning first=8222 second=111 amount=-1 +kerning first=1055 second=1108 amount=-1 +kerning first=1108 second=1078 amount=-1 +kerning first=267 second=117 amount=-1 +kerning first=231 second=117 amount=-1 +kerning first=8250 second=282 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=1031 second=1119 amount=-1 +kerning first=302 second=333 amount=-1 +kerning first=210 second=347 amount=-1 +kerning first=298 second=100 amount=-1 +kerning first=120 second=316 amount=-1 +kerning first=1118 second=1083 amount=-1 +kerning first=86 second=382 amount=-1 +kerning first=230 second=333 amount=-1 +kerning first=261 second=316 amount=-1 +kerning first=220 second=220 amount=-1 +kerning first=266 second=333 amount=-1 +kerning first=333 second=316 amount=-1 +kerning first=227 second=382 amount=-1 +kerning first=79 second=220 amount=-1 +kerning first=263 second=382 amount=-1 +kerning first=374 second=333 amount=-1 +kerning first=1067 second=1034 amount=-1 +kerning first=368 second=103 amount=-1 +kerning first=99 second=234 amount=-1 +kerning first=304 second=330 amount=-1 +kerning first=1031 second=1034 amount=-1 +kerning first=1031 second=1099 amount=-1 +kerning first=73 second=211 amount=-1 +kerning first=85 second=100 amount=-1 +kerning first=1065 second=1076 amount=-1 +kerning first=224 second=103 amount=-1 +kerning first=217 second=281 amount=-1 +kerning first=367 second=171 amount=-1 +kerning first=1067 second=1099 amount=-1 +kerning first=119 second=103 amount=-1 +kerning first=262 second=100 amount=-1 +kerning first=8250 second=378 amount=-1 +kerning first=364 second=220 amount=-1 +kerning first=204 second=77 amount=-1 +kerning first=89 second=333 amount=-1 +kerning first=338 second=85 amount=-1 +kerning first=339 second=113 amount=-1 +kerning first=235 second=252 amount=-1 +kerning first=1044 second=1057 amount=-1 +kerning first=302 second=85 amount=-1 +kerning first=80 second=304 amount=-1 +kerning first=266 second=85 amount=-1 +kerning first=1052 second=1092 amount=-1 +kerning first=201 second=280 amount=-1 +kerning first=279 second=314 amount=-1 +kerning first=194 second=85 amount=-1 +kerning first=337 second=120 amount=-1 +kerning first=243 second=314 amount=-1 +kerning first=200 second=315 amount=-1 +kerning first=355 second=8217 amount=-1 +kerning first=88 second=44 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=351 second=314 amount=-1 +kerning first=328 second=118 amount=-1 +kerning first=253 second=254 amount=-1 +kerning first=302 second=110 amount=-1 +kerning first=66 second=8220 amount=-2 +kerning first=345 second=8250 amount=-1 +kerning first=266 second=110 amount=-1 +kerning first=97 second=339 amount=-1 +kerning first=374 second=110 amount=-1 +kerning first=362 second=219 amount=-1 +kerning first=232 second=357 amount=-1 +kerning first=290 second=219 amount=-1 +kerning first=1048 second=1042 amount=-1 +kerning first=201 second=8250 amount=-1 +kerning first=196 second=357 amount=-1 +kerning first=310 second=85 amount=-1 +kerning first=8217 second=248 amount=-1 +kerning first=304 second=357 amount=-1 +kerning first=368 second=76 amount=-1 +kerning first=218 second=219 amount=-1 +kerning first=268 second=357 amount=-1 +kerning first=289 second=254 amount=-1 +kerning first=205 second=332 amount=-1 +kerning first=210 second=374 amount=-1 +kerning first=101 second=101 amount=-1 +kerning first=296 second=76 amount=-1 +kerning first=334 second=46 amount=-1 +kerning first=120 second=289 amount=-1 +kerning first=206 second=101 amount=-1 +kerning first=261 second=289 amount=-1 +kerning first=225 second=289 amount=-1 +kerning first=77 second=219 amount=-1 +kerning first=72 second=296 amount=-1 +kerning first=333 second=289 amount=-1 +kerning first=203 second=212 amount=-1 +kerning first=211 second=8217 amount=-2 +kerning first=100 second=111 amount=-1 +kerning first=272 second=315 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=369 second=289 amount=-1 +kerning first=213 second=296 amount=-1 +kerning first=205 second=111 amount=-1 +kerning first=241 second=111 amount=-1 +kerning first=70 second=8217 amount=-1 +kerning first=277 second=111 amount=-1 +kerning first=106 second=8217 amount=-1 +kerning first=284 second=280 amount=-1 +kerning first=323 second=241 amount=-1 +kerning first=354 second=335 amount=-1 +kerning first=287 second=241 amount=-1 +kerning first=81 second=89 amount=-1 +kerning first=313 second=85 amount=-1 +kerning first=1053 second=1099 amount=-1 +kerning first=205 second=85 amount=-1 +kerning first=74 second=241 amount=-1 +kerning first=243 second=287 amount=-1 +kerning first=219 second=8249 amount=-2 +kerning first=244 second=46 amount=-1 +kerning first=118 second=8220 amount=-2 +kerning first=206 second=271 amount=-1 +kerning first=352 second=46 amount=-1 +kerning first=259 second=8220 amount=-2 +kerning first=86 second=339 amount=-1 +kerning first=223 second=8220 amount=-2 +kerning first=262 second=259 amount=-1 +kerning first=114 second=171 amount=-1 +kerning first=351 second=287 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=8217 second=286 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=194 second=118 amount=-1 +kerning first=279 second=287 amount=-1 +kerning first=219 second=269 amount=-1 +kerning first=367 second=8220 amount=-1 +kerning first=275 second=250 amount=-1 +kerning first=366 second=229 amount=-1 +kerning first=355 second=225 amount=-1 +kerning first=224 second=378 amount=-1 +kerning first=330 second=229 amount=-1 +kerning first=214 second=195 amount=-1 +kerning first=203 second=250 amount=-1 +kerning first=1047 second=1090 amount=-1 +kerning first=72 second=8221 amount=-1 +kerning first=70 second=67 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=80 second=357 amount=-1 +kerning first=219 second=278 amount=-1 +kerning first=103 second=46 amount=-1 +kerning first=218 second=8217 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=368 second=378 amount=-1 +kerning first=67 second=46 amount=-1 +kerning first=270 second=344 amount=-1 +kerning first=1039 second=1043 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=211 second=207 amount=-1 +kerning first=78 second=278 amount=-1 +kerning first=296 second=378 amount=-1 +kerning first=1027 second=1075 amount=-1 +kerning first=258 second=89 amount=-1 +kerning first=67 second=288 amount=-1 +kerning first=198 second=220 amount=-1 +kerning first=327 second=278 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=270 second=220 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=366 second=246 amount=-1 +kerning first=1039 second=1064 amount=-1 +kerning first=206 second=74 amount=-1 +kerning first=71 second=280 amount=-1 +kerning first=1041 second=1118 amount=-1 +kerning first=212 second=280 amount=-1 +kerning first=204 second=114 amount=-1 +kerning first=325 second=216 amount=-1 +kerning first=282 second=201 amount=-1 +kerning first=275 second=113 amount=-1 +kerning first=362 second=369 amount=-1 +kerning first=118 second=104 amount=-1 +kerning first=234 second=339 amount=-1 +kerning first=1051 second=1084 amount=-1 +kerning first=72 second=269 amount=-1 +kerning first=210 second=201 amount=-1 +kerning first=72 second=213 amount=-1 +kerning first=108 second=269 amount=-1 +kerning first=69 second=201 amount=-1 +kerning first=274 second=204 amount=-1 +kerning first=1028 second=1094 amount=-1 +kerning first=8222 second=249 amount=-1 +kerning first=1064 second=1094 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=204 second=116 amount=-1 +kerning first=202 second=204 amount=-1 +kerning first=249 second=269 amount=-1 +kerning first=267 second=233 amount=-1 +kerning first=1031 second=1042 amount=-1 +kerning first=218 second=65 amount=-1 +kerning first=74 second=104 amount=-1 +kerning first=235 second=271 amount=-1 +kerning first=317 second=366 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=74 second=250 amount=-1 +kerning first=346 second=204 amount=-1 +kerning first=197 second=268 amount=-1 +kerning first=288 second=317 amount=-1 +kerning first=1030 second=1069 amount=-1 +kerning first=362 second=65 amount=-1 +kerning first=218 second=369 amount=-1 +kerning first=198 second=210 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=68 second=366 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=87 second=283 amount=-1 +kerning first=281 second=113 amount=-1 +kerning first=370 second=382 amount=-1 +kerning first=8218 second=255 amount=-1 +kerning first=262 second=73 amount=-1 +kerning first=77 second=262 amount=-1 +kerning first=334 second=73 amount=-1 +kerning first=298 second=73 amount=-1 +kerning first=8218 second=362 amount=-1 +kerning first=67 second=213 amount=-1 +kerning first=366 second=256 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=1031 second=1070 amount=-1 +kerning first=283 second=311 amount=-1 +kerning first=99 second=326 amount=-1 +kerning first=280 second=213 amount=-1 +kerning first=218 second=262 amount=-1 +kerning first=219 second=251 amount=-1 +kerning first=204 second=219 amount=-1 +kerning first=1052 second=1053 amount=-1 +kerning first=1046 second=1105 amount=-1 +kerning first=281 second=122 amount=-1 +kerning first=275 second=277 amount=-1 +kerning first=278 second=282 amount=-1 +kerning first=209 second=122 amount=-1 +kerning first=85 second=73 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=1058 second=1051 amount=-1 +kerning first=70 second=311 amount=-1 +kerning first=291 second=251 amount=-1 +kerning first=1059 second=1054 amount=-1 +kerning first=362 second=235 amount=-1 +kerning first=98 second=8221 amount=-2 +kerning first=367 second=345 amount=-1 +kerning first=204 second=283 amount=-1 +kerning first=203 second=8221 amount=-1 +kerning first=264 second=75 amount=-1 +kerning first=199 second=270 amount=-1 +kerning first=99 second=283 amount=-1 +kerning first=330 second=380 amount=-1 +kerning first=275 second=8221 amount=-2 +kerning first=100 second=248 amount=-1 +kerning first=197 second=187 amount=-1 +kerning first=311 second=8221 amount=-1 +kerning first=241 second=248 amount=-1 +kerning first=1048 second=1119 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=347 second=8221 amount=-2 +kerning first=205 second=248 amount=-1 +kerning first=366 second=380 amount=-1 +kerning first=74 second=218 amount=-1 +kerning first=367 second=279 amount=-1 +kerning first=221 second=196 amount=-1 +kerning first=206 second=243 amount=-1 +kerning first=217 second=336 amount=-1 +kerning first=339 second=242 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=241 second=232 amount=-1 +kerning first=231 second=242 amount=-1 +kerning first=81 second=66 amount=-1 +kerning first=78 second=223 amount=-1 +kerning first=302 second=226 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=325 second=336 amount=-1 +kerning first=374 second=226 amount=-1 +kerning first=327 second=277 amount=-1 +kerning first=240 second=283 amount=-1 +kerning first=258 second=370 amount=-1 +kerning first=8218 second=228 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=217 second=194 amount=-1 +kerning first=224 second=244 amount=-1 +kerning first=288 second=274 amount=-1 +kerning first=296 second=244 amount=-1 +kerning first=70 second=230 amount=-1 +kerning first=327 second=45 amount=-1 +kerning first=84 second=233 amount=-1 +kerning first=80 second=227 amount=-1 +kerning first=234 second=367 amount=-1 +kerning first=366 second=66 amount=-1 +kerning first=368 second=244 amount=-1 +kerning first=330 second=66 amount=-1 +kerning first=221 second=8222 amount=-2 +kerning first=225 second=233 amount=-1 +kerning first=219 second=8221 amount=-1 +kerning first=261 second=233 amount=-1 +kerning first=116 second=8222 amount=-1 +kerning first=266 second=71 amount=-1 +kerning first=77 second=235 amount=-1 +kerning first=283 second=279 amount=-1 +kerning first=336 second=44 amount=-1 +kerning first=369 second=233 amount=-1 +kerning first=97 second=231 amount=-1 +kerning first=264 second=44 amount=-1 +kerning first=218 second=235 amount=-1 +kerning first=203 second=70 amount=-1 +kerning first=288 second=82 amount=-1 +kerning first=1071 second=1045 amount=-1 +kerning first=326 second=235 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=1058 second=1116 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=74 second=214 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=196 second=249 amount=-1 +kerning first=367 second=275 amount=-1 +kerning first=219 second=206 amount=-1 +kerning first=364 second=258 amount=-1 +kerning first=217 second=363 amount=-1 +kerning first=323 second=214 amount=-1 +kerning first=204 second=310 amount=-1 +kerning first=99 second=353 amount=-1 +kerning first=253 second=363 amount=-1 +kerning first=1050 second=1104 amount=-1 +kerning first=235 second=243 amount=-1 +kerning first=289 second=363 amount=-1 +kerning first=264 second=71 amount=-1 +kerning first=66 second=370 amount=-1 +kerning first=204 second=353 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=80 second=298 amount=-1 +kerning first=70 second=77 amount=-1 +kerning first=315 second=370 amount=-1 +kerning first=114 second=45 amount=-1 +kerning first=207 second=370 amount=-1 +kerning first=103 second=369 amount=-1 +kerning first=259 second=275 amount=-1 +kerning first=192 second=362 amount=-1 +kerning first=288 second=80 amount=-1 +kerning first=232 second=249 amount=-1 +kerning first=255 second=45 amount=-1 +kerning first=263 second=106 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=277 second=252 amount=-1 +kerning first=291 second=45 amount=-1 +kerning first=198 second=8250 amount=-1 +kerning first=227 second=242 amount=-1 +kerning first=335 second=106 amount=-1 +kerning first=219 second=45 amount=-2 +kerning first=106 second=234 amount=-1 +kerning first=370 second=267 amount=-1 +kerning first=45 second=250 amount=-1 +kerning first=70 second=234 amount=-1 +kerning first=83 second=217 amount=-1 +kerning first=1046 second=1028 amount=-1 +kerning first=221 second=223 amount=-1 +kerning first=283 second=234 amount=-1 +kerning first=226 second=267 amount=-1 +kerning first=262 second=267 amount=-1 +kerning first=355 second=234 amount=-1 +kerning first=67 second=281 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=296 second=217 amount=-1 +kerning first=80 second=223 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=1064 second=1098 amount=-1 +kerning first=73 second=368 amount=-1 +kerning first=220 second=258 amount=-1 +kerning first=368 second=217 amount=-1 +kerning first=209 second=232 amount=-1 +kerning first=271 second=243 amount=-1 +kerning first=1044 second=1095 amount=-1 +kerning first=82 second=345 amount=-1 +kerning first=207 second=206 amount=-1 +kerning first=104 second=232 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=118 second=345 amount=-1 +kerning first=214 second=368 amount=-1 +kerning first=1116 second=1095 amount=-1 +kerning first=198 second=371 amount=-1 +kerning first=187 second=345 amount=-1 +kerning first=199 second=266 amount=-1 +kerning first=223 second=345 amount=-1 +kerning first=79 second=258 amount=-1 +kerning first=206 second=259 amount=-1 +kerning first=1060 second=1042 amount=-1 +kerning first=1031 second=1091 amount=-1 +kerning first=80 second=200 amount=-1 +kerning first=354 second=277 amount=-1 +kerning first=8218 second=281 amount=-1 +kerning first=70 second=315 amount=-1 +kerning first=77 second=370 amount=-1 +kerning first=88 second=8218 amount=-1 +kerning first=362 second=290 amount=-1 +kerning first=290 second=370 amount=-1 +kerning first=366 second=337 amount=-1 +kerning first=240 second=245 amount=-1 +kerning first=337 second=8218 amount=-1 +kerning first=288 second=313 amount=-1 +kerning first=330 second=337 amount=-1 +kerning first=204 second=245 amount=-1 +kerning first=1047 second=1116 amount=-1 +kerning first=218 second=370 amount=-1 +kerning first=284 second=323 amount=-1 +kerning first=1070 second=1037 amount=-1 +kerning first=221 second=249 amount=-1 +kerning first=205 second=199 amount=-1 +kerning first=258 second=105 amount=-1 +kerning first=362 second=370 amount=-1 +kerning first=337 second=106 amount=-1 +kerning first=99 second=120 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=362 second=257 amount=-1 +kerning first=103 second=45 amount=-1 +kerning first=1056 second=1086 amount=-1 +kerning first=366 second=230 amount=-1 +kerning first=330 second=230 amount=-1 +kerning first=251 second=267 amount=-1 +kerning first=1038 second=1076 amount=-1 +kerning first=192 second=318 amount=-1 +kerning first=287 second=267 amount=-1 +kerning first=199 second=217 amount=-1 +kerning first=352 second=72 amount=-1 +kerning first=323 second=267 amount=-1 +kerning first=74 second=267 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=278 second=345 amount=-1 +kerning first=110 second=267 amount=-1 +kerning first=264 second=212 amount=-1 +kerning first=264 second=114 amount=-1 +kerning first=8222 second=108 amount=-1 +kerning first=68 second=258 amount=-1 +kerning first=99 second=245 amount=-1 +kerning first=233 second=115 amount=-1 +kerning first=364 second=350 amount=-1 +kerning first=269 second=115 amount=-1 +kerning first=87 second=114 amount=-1 +kerning first=282 second=8249 amount=-1 +kerning first=228 second=114 amount=-1 +kerning first=252 second=111 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=1053 second=1054 amount=-1 +kerning first=192 second=114 amount=-1 +kerning first=220 second=350 amount=-1 +kerning first=354 second=8249 amount=-1 +kerning first=192 second=254 amount=-1 +kerning first=324 second=111 amount=-1 +kerning first=246 second=8221 amount=-2 +kerning first=304 second=81 amount=-1 +kerning first=204 second=218 amount=-1 +kerning first=86 second=231 amount=-1 +kerning first=223 second=318 amount=-1 +kerning first=1059 second=1119 amount=-1 +kerning first=1070 second=1064 amount=-1 +kerning first=259 second=318 amount=-1 +kerning first=98 second=44 amount=-1 +kerning first=1034 second=1064 amount=-1 +kerning first=268 second=81 amount=-1 +kerning first=368 second=352 amount=-1 +kerning first=311 second=44 amount=-1 +kerning first=70 second=273 amount=-1 +kerning first=75 second=355 amount=-1 +kerning first=345 second=187 amount=-1 +kerning first=283 second=380 amount=-1 +kerning first=275 second=44 amount=-1 +kerning first=1041 second=1027 amount=-1 +kerning first=108 second=275 amount=-1 +kerning first=1056 second=1059 amount=-1 +kerning first=368 second=258 amount=-1 +kerning first=204 second=78 amount=-1 +kerning first=252 second=248 amount=-1 +kerning first=249 second=289 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=280 second=72 amount=-1 +kerning first=231 second=98 amount=-1 +kerning first=105 second=113 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=85 second=332 amount=-1 +kerning first=1064 second=1055 amount=-1 +kerning first=282 second=8222 amount=-1 +kerning first=298 second=332 amount=-1 +kerning first=246 second=8222 amount=-1 +kerning first=262 second=332 amount=-1 +kerning first=210 second=8222 amount=-1 +kerning first=81 second=330 amount=-1 +kerning first=105 second=8222 amount=-1 +kerning first=264 second=346 amount=-1 +kerning first=259 second=279 amount=-1 +kerning first=69 second=8222 amount=-1 +kerning first=1066 second=1070 amount=-1 +kerning first=192 second=87 amount=-1 +kerning first=1030 second=1070 amount=-1 +kerning first=1060 second=1063 amount=-1 +kerning first=370 second=332 amount=-1 +kerning first=277 second=291 amount=-1 +kerning first=368 second=8250 amount=-2 +kerning first=241 second=291 amount=-1 +kerning first=305 second=187 amount=-1 +kerning first=339 second=235 amount=-1 +kerning first=368 second=263 amount=-1 +kerning first=79 second=323 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=233 second=187 amount=-1 +kerning first=117 second=337 amount=-1 +kerning first=100 second=291 amount=-1 +kerning first=269 second=187 amount=-1 +kerning first=204 second=231 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=296 second=352 amount=-1 +kerning first=354 second=8222 amount=-1 +kerning first=220 second=323 amount=-1 +kerning first=1068 second=1050 amount=-1 +kerning first=203 second=211 amount=-1 +kerning first=264 second=336 amount=-1 +kerning first=80 second=86 amount=-1 +kerning first=80 second=270 amount=-1 +kerning first=307 second=46 amount=-1 +kerning first=270 second=198 amount=-1 +kerning first=330 second=268 amount=-1 +kerning first=1067 second=1083 amount=-1 +kerning first=291 second=287 amount=-1 +kerning first=1042 second=1034 amount=-1 +kerning first=296 second=325 amount=-1 +kerning first=87 second=281 amount=-1 +kerning first=368 second=325 amount=-1 +kerning first=85 second=99 amount=-1 +kerning first=1066 second=1043 amount=-1 +kerning first=1041 second=1069 amount=-1 +kerning first=323 second=73 amount=-1 +kerning first=298 second=99 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=268 second=314 amount=-1 +kerning first=1052 second=1057 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=74 second=202 amount=-1 +kerning first=1066 second=1036 amount=-1 +kerning first=232 second=314 amount=-1 +kerning first=45 second=268 amount=-1 +kerning first=235 second=347 amount=-1 +kerning first=78 second=110 amount=-1 +kerning first=226 second=99 amount=-1 +kerning first=196 second=314 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=211 second=221 amount=-1 +kerning first=258 second=268 amount=-1 +kerning first=199 second=347 amount=-1 +kerning first=226 second=8250 amount=-1 +kerning first=370 second=99 amount=-1 +kerning first=8217 second=339 amount=-1 +kerning first=219 second=110 amount=-1 +kerning first=323 second=202 amount=-1 +kerning first=199 second=351 amount=-1 +kerning first=85 second=8250 amount=-2 +kerning first=89 second=334 amount=-1 +kerning first=81 second=364 amount=-1 +kerning first=1107 second=1087 amount=-1 +kerning first=264 second=277 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=79 second=218 amount=-1 +kerning first=74 second=73 amount=-1 +kerning first=228 second=277 amount=-1 +kerning first=81 second=8217 amount=-2 +kerning first=85 second=171 amount=-2 +kerning first=266 second=334 amount=-1 +kerning first=205 second=264 amount=-1 +kerning first=287 second=104 amount=-1 +kerning first=194 second=334 amount=-1 +kerning first=235 second=351 amount=-1 +kerning first=374 second=334 amount=-1 +kerning first=1033 second=1030 amount=-1 +kerning first=270 second=69 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=1069 second=1030 amount=-1 +kerning first=196 second=108 amount=-1 +kerning first=366 second=8217 amount=-1 +kerning first=302 second=334 amount=-1 +kerning first=366 second=364 amount=-1 +kerning first=231 second=101 amount=-1 +kerning first=338 second=334 amount=-1 +kerning first=330 second=364 amount=-1 +kerning first=1041 second=1065 amount=-1 +kerning first=117 second=8217 amount=-1 +kerning first=1060 second=1070 amount=-1 +kerning first=1052 second=1050 amount=-1 +kerning first=258 second=364 amount=-1 +kerning first=267 second=101 amount=-1 +kerning first=1036 second=1117 amount=-1 +kerning first=87 second=277 amount=-1 +kerning first=222 second=8217 amount=-2 +kerning first=83 second=325 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=232 second=108 amount=-1 +kerning first=258 second=8217 amount=-2 +kerning first=339 second=101 amount=-1 +kerning first=283 second=273 amount=-1 +kerning first=268 second=108 amount=-1 +kerning first=1047 second=1051 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=234 second=263 amount=-1 +kerning first=220 second=282 amount=-1 +kerning first=1053 second=1089 amount=-1 +kerning first=198 second=171 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=1039 second=1039 amount=-1 +kerning first=366 second=203 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=69 second=8249 amount=-1 +kerning first=1052 second=1049 amount=-1 +kerning first=80 second=82 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=346 second=296 amount=-1 +kerning first=206 second=298 amount=-1 +kerning first=1067 second=1068 amount=-1 +kerning first=278 second=298 amount=-1 +kerning first=304 second=241 amount=-1 +kerning first=269 second=229 amount=-1 +kerning first=314 second=363 amount=-1 +kerning first=350 second=298 amount=-1 +kerning first=330 second=203 amount=-1 +kerning first=220 second=117 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=232 second=287 amount=-1 +kerning first=81 second=203 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=364 second=369 amount=-1 +kerning first=266 second=99 amount=-1 +kerning first=68 second=220 amount=-1 +kerning first=1071 second=1083 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=227 second=339 amount=-1 +kerning first=313 second=356 amount=-1 +kerning first=74 second=77 amount=-1 +kerning first=323 second=100 amount=-1 +kerning first=197 second=218 amount=-1 +kerning first=111 second=382 amount=-1 +kerning first=263 second=339 amount=-1 +kerning first=8218 second=87 amount=-2 +kerning first=355 second=246 amount=-1 +kerning first=1052 second=1118 amount=-1 +kerning first=228 second=281 amount=-1 +kerning first=317 second=220 amount=-1 +kerning first=378 second=171 amount=-1 +kerning first=282 second=304 amount=-1 +kerning first=264 second=281 amount=-1 +kerning first=100 second=333 amount=-1 +kerning first=1067 second=1076 amount=-1 +kerning first=194 second=307 amount=-1 +kerning first=209 second=220 amount=-1 +kerning first=1053 second=1060 amount=-1 +kerning first=69 second=304 amount=-1 +kerning first=1039 second=1092 amount=-1 +kerning first=352 second=278 amount=-1 +kerning first=270 second=194 amount=-1 +kerning first=307 second=103 amount=-1 +kerning first=241 second=333 amount=-1 +kerning first=106 second=246 amount=-1 +kerning first=271 second=103 amount=-1 +kerning first=277 second=333 amount=-1 +kerning first=80 second=330 amount=-1 +kerning first=323 second=77 amount=-1 +kerning first=70 second=246 amount=-1 +kerning first=210 second=304 amount=-1 +kerning first=235 second=103 amount=-1 +kerning first=305 second=246 amount=-1 +kerning first=230 second=382 amount=-1 +kerning first=218 second=8222 amount=-2 +kerning first=269 second=246 amount=-1 +kerning first=266 second=382 amount=-1 +kerning first=202 second=223 amount=-1 +kerning first=233 second=246 amount=-1 +kerning first=217 second=298 amount=-1 +kerning first=362 second=77 amount=-1 +kerning first=77 second=8222 amount=-1 +kerning first=374 second=382 amount=-1 +kerning first=210 second=330 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=290 second=77 amount=-1 +kerning first=362 second=304 amount=-1 +kerning first=282 second=330 amount=-1 +kerning first=97 second=269 amount=-1 +kerning first=218 second=77 amount=-1 +kerning first=1038 second=1075 amount=-1 +kerning first=325 second=298 amount=-1 +kerning first=233 second=333 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=217 second=211 amount=-1 +kerning first=269 second=333 amount=-1 +kerning first=218 second=304 amount=-1 +kerning first=302 second=68 amount=-1 +kerning first=370 second=365 amount=-1 +kerning first=266 second=68 amount=-1 +kerning first=290 second=304 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=362 second=8222 amount=-2 +kerning first=228 second=283 amount=-1 +kerning first=305 second=333 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=290 second=8222 amount=-1 +kerning first=77 second=304 amount=-1 +kerning first=1052 second=1048 amount=-1 +kerning first=254 second=8222 amount=-1 +kerning first=203 second=315 amount=-1 +kerning first=214 second=260 amount=-1 +kerning first=368 second=313 amount=-1 +kerning first=70 second=109 amount=-1 +kerning first=1070 second=1044 amount=-1 +kerning first=252 second=339 amount=-1 +kerning first=231 second=281 amount=-1 +kerning first=266 second=107 amount=-1 +kerning first=268 second=347 amount=-1 +kerning first=267 second=281 amount=-1 +kerning first=67 second=111 amount=-1 +kerning first=325 second=211 amount=-1 +kerning first=304 second=347 amount=-1 +kerning first=1052 second=1108 amount=-1 +kerning first=103 second=111 amount=-1 +kerning first=1039 second=1051 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=339 second=281 amount=-1 +kerning first=296 second=313 amount=-1 +kerning first=232 second=347 amount=-1 +kerning first=77 second=77 amount=-1 +kerning first=8216 second=198 amount=-2 +kerning first=327 second=290 amount=-1 +kerning first=1058 second=1117 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=1051 second=1042 amount=-1 +kerning first=69 second=330 amount=-1 +kerning first=364 second=69 amount=-1 +kerning first=1047 second=1025 amount=-1 +kerning first=232 second=120 amount=-1 +kerning first=324 second=339 amount=-1 +kerning first=268 second=120 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=354 second=103 amount=-1 +kerning first=103 second=251 amount=-1 +kerning first=316 second=251 amount=-1 +kerning first=69 second=76 amount=-1 +kerning first=352 second=251 amount=-1 +kerning first=8217 second=264 amount=-1 +kerning first=280 second=251 amount=-1 +kerning first=333 second=8217 amount=-2 +kerning first=226 second=378 amount=-1 +kerning first=84 second=8217 amount=-1 +kerning first=298 second=76 amount=-1 +kerning first=192 second=8221 amount=-2 +kerning first=218 second=225 amount=-1 +kerning first=120 second=8217 amount=-1 +kerning first=228 second=8221 amount=-2 +kerning first=288 second=85 amount=-1 +kerning first=264 second=8221 amount=-1 +kerning first=231 second=254 amount=-1 +kerning first=217 second=271 amount=-1 +kerning first=220 second=242 amount=-1 +kerning first=279 second=245 amount=-1 +kerning first=362 second=331 amount=-1 +kerning first=267 second=254 amount=-1 +kerning first=325 second=271 amount=-1 +kerning first=336 second=8221 amount=-2 +kerning first=87 second=212 amount=-1 +kerning first=207 second=245 amount=-1 +kerning first=339 second=254 amount=-1 +kerning first=213 second=221 amount=-1 +kerning first=328 second=242 amount=-1 +kerning first=375 second=254 amount=-1 +kerning first=75 second=85 amount=-1 +kerning first=364 second=242 amount=-1 +kerning first=218 second=331 amount=-1 +kerning first=321 second=221 amount=-1 +kerning first=283 second=289 amount=-1 +kerning first=327 second=203 amount=-1 +kerning first=121 second=365 amount=-1 +kerning first=258 second=67 amount=-1 +kerning first=1027 second=1113 amount=-1 +kerning first=8216 second=351 amount=-1 +kerning first=355 second=289 amount=-1 +kerning first=1052 second=1075 amount=-1 +kerning first=77 second=331 amount=-1 +kerning first=85 second=365 amount=-1 +kerning first=70 second=229 amount=-1 +kerning first=219 second=203 amount=-1 +kerning first=221 second=288 amount=-1 +kerning first=1046 second=1104 amount=-1 +kerning first=73 second=233 amount=-1 +kerning first=45 second=67 amount=-1 +kerning first=270 second=366 amount=-1 +kerning first=109 second=233 amount=-1 +kerning first=195 second=254 amount=-1 +kerning first=244 second=8220 amount=-2 +kerning first=8250 second=252 amount=-1 +kerning first=78 second=203 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=250 second=233 amount=-1 +kerning first=263 second=248 amount=-1 +kerning first=339 second=8222 amount=-1 +kerning first=282 second=357 amount=-1 +kerning first=196 second=374 amount=-1 +kerning first=69 second=357 amount=-1 +kerning first=355 second=229 amount=-1 +kerning first=282 second=76 amount=-1 +kerning first=1076 second=1084 amount=-1 +kerning first=1030 second=1118 amount=-1 +kerning first=210 second=76 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=356 second=122 amount=-1 +kerning first=248 second=122 amount=-1 +kerning first=219 second=317 amount=-1 +kerning first=85 second=224 amount=-1 +kerning first=287 second=114 amount=-1 +kerning first=1053 second=1117 amount=-1 +kerning first=214 second=207 amount=-1 +kerning first=298 second=224 amount=-1 +kerning first=327 second=317 amount=-1 +kerning first=1039 second=1104 amount=-1 +kerning first=200 second=250 amount=-1 +kerning first=1027 second=1087 amount=-1 +kerning first=286 second=207 amount=-1 +kerning first=262 second=224 amount=-1 +kerning first=8250 second=200 amount=-1 +kerning first=67 second=311 amount=-1 +kerning first=86 second=378 amount=-1 +kerning first=1118 second=1093 amount=-1 +kerning first=206 second=113 amount=-1 +kerning first=80 second=201 amount=-1 +kerning first=103 second=311 amount=-1 +kerning first=198 second=366 amount=-1 +kerning first=370 second=224 amount=-1 +kerning first=81 second=354 amount=-1 +kerning first=364 second=216 amount=-1 +kerning first=70 second=256 amount=-1 +kerning first=199 second=244 amount=-1 +kerning first=263 second=378 amount=-1 +kerning first=235 second=244 amount=-1 +kerning first=227 second=378 amount=-1 +kerning first=330 second=67 amount=-1 +kerning first=258 second=354 amount=-1 +kerning first=231 second=251 amount=-1 +kerning first=78 second=317 amount=-1 +kerning first=366 second=67 amount=-1 +kerning first=307 second=244 amount=-1 +kerning first=310 second=8249 amount=-1 +kerning first=374 second=268 amount=-1 +kerning first=88 second=262 amount=-1 +kerning first=199 second=275 amount=-1 +kerning first=1065 second=1095 amount=-1 +kerning first=338 second=268 amount=-1 +kerning first=370 second=198 amount=-1 +kerning first=1105 second=1096 amount=-1 +kerning first=232 second=115 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=334 second=198 amount=-1 +kerning first=266 second=268 amount=-1 +kerning first=101 second=117 amount=-1 +kerning first=209 second=210 amount=-1 +kerning first=1060 second=1049 amount=-1 +kerning first=364 second=302 amount=-1 +kerning first=1105 second=1095 amount=-1 +kerning first=8218 second=97 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=279 second=98 amount=-1 +kerning first=220 second=302 amount=-1 +kerning first=198 second=345 amount=-1 +kerning first=1051 second=1101 amount=-1 +kerning first=108 second=335 amount=-1 +kerning first=234 second=345 amount=-1 +kerning first=249 second=335 amount=-1 +kerning first=323 second=219 amount=-1 +kerning first=199 second=199 amount=-1 +kerning first=362 second=262 amount=-1 +kerning first=268 second=206 amount=-1 +kerning first=304 second=206 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=79 second=302 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=197 second=213 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=8250 second=313 amount=-1 +kerning first=1055 second=1053 amount=-1 +kerning first=263 second=351 amount=-1 +kerning first=227 second=231 amount=-1 +kerning first=316 second=335 amount=-1 +kerning first=263 second=231 amount=-1 +kerning first=8222 second=374 amount=-2 +kerning first=1064 second=1099 amount=-1 +kerning first=78 second=290 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=369 second=171 amount=-1 +kerning first=1118 second=1091 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=81 second=88 amount=-1 +kerning first=187 second=73 amount=-1 +kerning first=219 second=290 amount=-1 +kerning first=203 second=368 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=280 second=338 amount=-1 +kerning first=113 second=8249 amount=-1 +kerning first=1056 second=1038 amount=-1 +kerning first=79 second=82 amount=-1 +kerning first=221 second=214 amount=-1 +kerning first=218 second=8249 amount=-2 +kerning first=337 second=314 amount=-1 +kerning first=1030 second=1031 amount=-1 +kerning first=86 second=351 amount=-1 +kerning first=296 second=286 amount=-1 +kerning first=290 second=8249 amount=-1 +kerning first=199 second=8218 amount=-1 +kerning first=370 second=197 amount=-1 +kerning first=229 second=283 amount=-1 +kerning first=326 second=8249 amount=-1 +kerning first=334 second=197 amount=-1 +kerning first=368 second=286 amount=-1 +kerning first=362 second=8249 amount=-2 +kerning first=1066 second=1031 amount=-1 +kerning first=67 second=338 amount=-1 +kerning first=1051 second=1068 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=205 second=274 amount=-1 +kerning first=226 second=171 amount=-1 +kerning first=198 second=79 amount=-1 +kerning first=314 second=113 amount=-1 +kerning first=316 second=45 amount=-1 +kerning first=352 second=45 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=250 second=242 amount=-1 +kerning first=229 second=235 amount=-1 +kerning first=264 second=70 amount=-1 +kerning first=8222 second=81 amount=-1 +kerning first=1059 second=1074 amount=-1 +kerning first=255 second=378 amount=-1 +kerning first=366 second=8221 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=1039 second=1077 amount=-1 +kerning first=87 second=363 amount=-1 +kerning first=1058 second=1090 amount=-1 +kerning first=1069 second=1069 amount=-1 +kerning first=271 second=380 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=1052 second=1027 amount=-1 +kerning first=103 second=252 amount=-1 +kerning first=298 second=344 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=84 second=335 amount=-1 +kerning first=296 second=205 amount=-1 +kerning first=370 second=344 amount=-1 +kerning first=334 second=344 amount=-1 +kerning first=330 second=115 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=280 second=252 amount=-1 +kerning first=201 second=284 amount=-1 +kerning first=366 second=115 amount=-1 +kerning first=194 second=89 amount=-1 +kerning first=1031 second=1076 amount=-1 +kerning first=323 second=368 amount=-1 +kerning first=304 second=261 amount=-1 +kerning first=268 second=261 amount=-1 +kerning first=298 second=205 amount=-1 +kerning first=8218 second=111 amount=-1 +kerning first=1104 second=1097 amount=-1 +kerning first=111 second=106 amount=-1 +kerning first=210 second=217 amount=-1 +kerning first=290 second=204 amount=-1 +kerning first=324 second=231 amount=-1 +kerning first=282 second=217 amount=-1 +kerning first=85 second=344 amount=-1 +kerning first=1038 second=1044 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=74 second=332 amount=-1 +kerning first=261 second=103 amount=-1 +kerning first=362 second=223 amount=-1 +kerning first=99 second=235 amount=-1 +kerning first=269 second=45 amount=-1 +kerning first=84 second=347 amount=-1 +kerning first=232 second=353 amount=-1 +kerning first=280 second=210 amount=-1 +kerning first=267 second=275 amount=-1 +kerning first=204 second=235 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=304 second=353 amount=-1 +kerning first=240 second=235 amount=-1 +kerning first=200 second=71 amount=-1 +kerning first=1071 second=1028 amount=-1 +kerning first=339 second=275 amount=-1 +kerning first=268 second=353 amount=-1 +kerning first=1067 second=1028 amount=-1 +kerning first=370 second=263 amount=-1 +kerning first=220 second=362 amount=-1 +kerning first=352 second=252 amount=-1 +kerning first=296 second=80 amount=-1 +kerning first=207 second=111 amount=-1 +kerning first=77 second=223 amount=-1 +kerning first=364 second=362 amount=-1 +kerning first=8218 second=271 amount=-1 +kerning first=264 second=97 amount=-1 +kerning first=290 second=223 amount=-1 +kerning first=99 second=240 amount=-1 +kerning first=68 second=323 amount=-1 +kerning first=97 second=243 amount=-1 +kerning first=218 second=223 amount=-1 +kerning first=8222 second=288 amount=-1 +kerning first=270 second=258 amount=-1 +kerning first=119 second=107 amount=-1 +kerning first=314 second=232 amount=-1 +kerning first=1105 second=1093 amount=-1 +kerning first=87 second=336 amount=-1 +kerning first=1062 second=1080 amount=-1 +kerning first=209 second=323 amount=-1 +kerning first=75 second=199 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=283 second=337 amount=-1 +kerning first=109 second=119 amount=-1 +kerning first=1065 second=1079 amount=-1 +kerning first=291 second=311 amount=-1 +kerning first=8218 second=211 amount=-1 +kerning first=323 second=8250 amount=-1 +kerning first=67 second=225 amount=-1 +kerning first=69 second=249 amount=-1 +kerning first=287 second=8250 amount=-1 +kerning first=213 second=205 amount=-1 +kerning first=337 second=382 amount=-1 +kerning first=187 second=328 amount=-1 +kerning first=109 second=234 amount=-1 +kerning first=220 second=226 amount=-1 +kerning first=73 second=234 amount=-1 +kerning first=1051 second=1041 amount=-1 +kerning first=269 second=105 amount=-1 +kerning first=206 second=232 amount=-1 +kerning first=257 second=314 amount=-1 +kerning first=67 second=110 amount=-1 +kerning first=1091 second=1091 amount=-1 +kerning first=210 second=72 amount=-1 +kerning first=187 second=361 amount=-1 +kerning first=101 second=232 amount=-1 +kerning first=250 second=234 amount=-1 +kerning first=1038 second=1071 amount=-1 +kerning first=1107 second=1088 amount=-1 +kerning first=99 second=267 amount=-1 +kerning first=103 second=110 amount=-1 +kerning first=204 second=327 amount=-1 +kerning first=8250 second=288 amount=-1 +kerning first=220 second=198 amount=-1 +kerning first=197 second=105 amount=-1 +kerning first=1049 second=1049 amount=-1 +kerning first=8222 second=261 amount=-1 +kerning first=8250 second=286 amount=-1 +kerning first=209 second=368 amount=-1 +kerning first=283 second=8222 amount=-1 +kerning first=81 second=115 amount=-1 +kerning first=287 second=305 amount=-1 +kerning first=275 second=114 amount=-1 +kerning first=1044 second=1096 amount=-1 +kerning first=1059 second=1097 amount=-1 +kerning first=1027 second=1114 amount=-1 +kerning first=97 second=335 amount=-1 +kerning first=88 second=370 amount=-1 +kerning first=258 second=187 amount=-1 +kerning first=98 second=114 amount=-1 +kerning first=274 second=81 amount=-1 +kerning first=234 second=318 amount=-1 +kerning first=203 second=114 amount=-1 +kerning first=1057 second=1046 amount=-1 +kerning first=277 second=46 amount=-1 +kerning first=221 second=242 amount=-1 +kerning first=68 second=69 amount=-1 +kerning first=328 second=101 amount=-1 +kerning first=275 second=117 amount=-1 +kerning first=356 second=269 amount=-1 +kerning first=8250 second=80 amount=-1 +kerning first=330 second=273 amount=-1 +kerning first=116 second=228 amount=-1 +kerning first=68 second=84 amount=-1 +kerning first=80 second=81 amount=-1 +kerning first=364 second=101 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=221 second=81 amount=-1 +kerning first=202 second=363 amount=-1 +kerning first=71 second=73 amount=-1 +kerning first=363 second=111 amount=-1 +kerning first=207 second=331 amount=-1 +kerning first=272 second=44 amount=-1 +kerning first=323 second=78 amount=-1 +kerning first=8250 second=205 amount=-1 +kerning first=74 second=78 amount=-1 +kerning first=116 second=287 amount=-1 +kerning first=277 second=355 amount=-1 +kerning first=325 second=296 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=205 second=355 amount=-1 +kerning first=282 second=282 amount=-1 +kerning first=344 second=44 amount=-1 +kerning first=210 second=282 amount=-1 +kerning first=257 second=287 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=217 second=346 amount=-1 +kerning first=69 second=282 amount=-1 +kerning first=85 second=83 amount=-1 +kerning first=304 second=288 amount=-1 +kerning first=365 second=287 amount=-1 +kerning first=268 second=288 amount=-1 +kerning first=262 second=83 amount=-1 +kerning first=106 second=337 amount=-1 +kerning first=298 second=83 amount=-1 +kerning first=219 second=230 amount=-1 +kerning first=324 second=291 amount=-1 +kerning first=327 second=230 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=370 second=83 amount=-1 +kerning first=252 second=291 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=370 second=243 amount=-1 +kerning first=282 second=274 amount=-1 +kerning first=325 second=346 amount=-1 +kerning first=111 second=291 amount=-1 +kerning first=114 second=230 amount=-1 +kerning first=192 second=303 amount=-1 +kerning first=1053 second=1034 amount=-1 +kerning first=298 second=279 amount=-1 +kerning first=370 second=371 amount=-1 +kerning first=72 second=200 amount=-1 +kerning first=338 second=187 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=257 second=108 amount=-1 +kerning first=226 second=279 amount=-1 +kerning first=374 second=187 amount=-1 +kerning first=220 second=74 amount=-1 +kerning first=364 second=290 amount=-1 +kerning first=240 second=8218 amount=-1 +kerning first=262 second=279 amount=-1 +kerning first=86 second=269 amount=-1 +kerning first=70 second=316 amount=-1 +kerning first=370 second=279 amount=-1 +kerning first=364 second=74 amount=-1 +kerning first=290 second=323 amount=-1 +kerning first=327 second=209 amount=-1 +kerning first=89 second=187 amount=-1 +kerning first=85 second=371 amount=-1 +kerning first=227 second=269 amount=-1 +kerning first=263 second=269 amount=-1 +kerning first=100 second=382 amount=-1 +kerning first=74 second=99 amount=-1 +kerning first=344 second=71 amount=-1 +kerning first=110 second=99 amount=-1 +kerning first=192 second=255 amount=-1 +kerning first=205 second=382 amount=-1 +kerning first=192 second=211 amount=-1 +kerning first=323 second=99 amount=-1 +kerning first=283 second=316 amount=-1 +kerning first=221 second=250 amount=-1 +kerning first=194 second=187 amount=-1 +kerning first=277 second=382 amount=-1 +kerning first=264 second=211 amount=-1 +kerning first=213 second=200 amount=-1 +kerning first=99 second=8218 amount=-1 +kerning first=207 second=266 amount=-1 +kerning first=230 second=187 amount=-1 +kerning first=287 second=99 amount=-1 +kerning first=85 second=279 amount=-1 +kerning first=205 second=334 amount=-1 +kerning first=218 second=281 amount=-1 +kerning first=204 second=202 amount=-1 +kerning first=73 second=8217 amount=-1 +kerning first=375 second=8220 amount=-2 +kerning first=346 second=270 amount=-1 +kerning first=1050 second=1116 amount=-1 +kerning first=218 second=196 amount=-1 +kerning first=72 second=248 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=375 second=367 amount=-1 +kerning first=1041 second=1043 amount=-1 +kerning first=45 second=214 amount=-1 +kerning first=231 second=8250 amount=-1 +kerning first=108 second=248 amount=-1 +kerning first=281 second=117 amount=-1 +kerning first=362 second=196 amount=-1 +kerning first=73 second=345 amount=-1 +kerning first=267 second=367 amount=-1 +kerning first=90 second=8220 amount=-1 +kerning first=231 second=367 amount=-1 +kerning first=1047 second=1052 amount=-1 +kerning first=368 second=205 amount=-1 +kerning first=339 second=367 amount=-1 +kerning first=219 second=209 amount=-1 +kerning first=211 second=364 amount=-1 +kerning first=75 second=264 amount=-1 +kerning first=274 second=270 amount=-1 +kerning first=73 second=380 amount=-1 +kerning first=267 second=8220 amount=-2 +kerning first=231 second=8220 amount=-2 +kerning first=195 second=367 amount=-1 +kerning first=202 second=270 amount=-1 +kerning first=1048 second=1097 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=84 second=277 amount=-1 +kerning first=344 second=8217 amount=-1 +kerning first=290 second=82 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=323 second=284 amount=-1 +kerning first=246 second=108 amount=-1 +kerning first=380 second=8217 amount=-1 +kerning first=1069 second=1047 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=362 second=82 amount=-1 +kerning first=1064 second=1034 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=261 second=277 amount=-1 +kerning first=105 second=242 amount=-1 +kerning first=362 second=202 amount=-1 +kerning first=225 second=277 amount=-1 +kerning first=266 second=290 amount=-1 +kerning first=197 second=338 amount=-1 +kerning first=302 second=290 amount=-1 +kerning first=269 second=251 amount=-1 +kerning first=338 second=290 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=258 second=316 amount=-1 +kerning first=84 second=8250 amount=-1 +kerning first=78 second=355 amount=-1 +kerning first=217 second=8221 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=230 second=311 amount=-1 +kerning first=209 second=242 amount=-1 +kerning first=253 second=8221 amount=-2 +kerning first=240 second=99 amount=-1 +kerning first=289 second=8221 amount=-2 +kerning first=77 second=82 amount=-1 +kerning first=99 second=99 amount=-1 +kerning first=325 second=8221 amount=-1 +kerning first=218 second=82 amount=-1 +kerning first=1052 second=1043 amount=-1 +kerning first=1039 second=1056 amount=-1 +kerning first=67 second=333 amount=-1 +kerning first=201 second=78 amount=-1 +kerning first=281 second=242 amount=-1 +kerning first=72 second=286 amount=-1 +kerning first=345 second=171 amount=-1 +kerning first=1047 second=1030 amount=-1 +kerning first=327 second=355 amount=-1 +kerning first=69 second=325 amount=-1 +kerning first=103 second=333 amount=-1 +kerning first=198 second=117 amount=-1 +kerning first=219 second=355 amount=-1 +kerning first=314 second=114 amount=-1 +kerning first=210 second=325 amount=-1 +kerning first=356 second=100 amount=-1 +kerning first=8217 second=199 amount=-1 +kerning first=282 second=325 amount=-1 +kerning first=193 second=104 amount=-1 +kerning first=275 second=233 amount=-1 +kerning first=281 second=250 amount=-1 +kerning first=201 second=171 amount=-1 +kerning first=1053 second=1039 amount=-1 +kerning first=1064 second=1043 amount=-1 +kerning first=78 second=382 amount=-1 +kerning first=212 second=220 amount=-1 +kerning first=1064 second=1104 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=364 second=194 amount=-1 +kerning first=365 second=103 amount=-1 +kerning first=284 second=220 amount=-1 +kerning first=219 second=382 amount=-1 +kerning first=71 second=220 amount=-1 +kerning first=255 second=382 amount=-1 +kerning first=316 second=246 amount=-1 +kerning first=66 second=120 amount=-1 +kerning first=257 second=103 amount=-1 +kerning first=207 second=304 amount=-1 +kerning first=291 second=382 amount=-1 +kerning first=220 second=194 amount=-1 +kerning first=221 second=103 amount=-1 +kerning first=327 second=382 amount=-1 +kerning first=74 second=224 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=116 second=103 amount=-1 +kerning first=323 second=224 amount=-1 +kerning first=1050 second=1057 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=8217 second=99 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=67 second=246 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=287 second=365 amount=-1 +kerning first=316 second=333 amount=-1 +kerning first=8249 second=366 amount=-1 +kerning first=8222 second=369 amount=-1 +kerning first=205 second=68 amount=-1 +kerning first=230 second=283 amount=-1 +kerning first=1052 second=1113 amount=-1 +kerning first=99 second=333 amount=-1 +kerning first=74 second=365 amount=-1 +kerning first=67 second=120 amount=-1 +kerning first=334 second=8218 amount=-1 +kerning first=75 second=307 amount=-1 +kerning first=213 second=313 amount=-1 +kerning first=78 second=111 amount=-1 +kerning first=221 second=347 amount=-1 +kerning first=245 second=8220 amount=-2 +kerning first=314 second=281 amount=-1 +kerning first=231 second=243 amount=-1 +kerning first=286 second=315 amount=-1 +kerning first=100 second=339 amount=-1 +kerning first=116 second=347 amount=-1 +kerning first=121 second=8218 amount=-1 +kerning first=317 second=8220 amount=-1 +kerning first=219 second=111 amount=-1 +kerning first=206 second=211 amount=-1 +kerning first=85 second=8218 amount=-2 +kerning first=281 second=8220 amount=-2 +kerning first=72 second=313 amount=-1 +kerning first=291 second=111 amount=-1 +kerning first=278 second=211 amount=-1 +kerning first=80 second=347 amount=-1 +kerning first=353 second=8220 amount=-2 +kerning first=327 second=111 amount=-1 +kerning first=217 second=257 amount=-1 +kerning first=218 second=202 amount=-1 +kerning first=243 second=120 amount=-1 +kerning first=279 second=120 amount=-1 +kerning first=74 second=113 amount=-1 +kerning first=290 second=202 amount=-1 +kerning first=8250 second=72 amount=-1 +kerning first=310 second=264 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=241 second=339 amount=-1 +kerning first=193 second=254 amount=-1 +kerning first=274 second=264 amount=-1 +kerning first=101 second=281 amount=-1 +kerning first=214 second=315 amount=-1 +kerning first=205 second=339 amount=-1 +kerning first=68 second=8220 amount=-2 +kerning first=73 second=315 amount=-1 +kerning first=202 second=264 amount=-1 +kerning first=206 second=281 amount=-1 +kerning first=77 second=202 amount=-1 +kerning first=277 second=339 amount=-1 +kerning first=231 second=232 amount=-1 +kerning first=87 second=271 amount=-1 +kerning first=262 second=219 amount=-1 +kerning first=351 second=8249 amount=-1 +kerning first=192 second=368 amount=-1 +kerning first=1055 second=1118 amount=-1 +kerning first=74 second=284 amount=-1 +kerning first=282 second=338 amount=-1 +kerning first=78 second=225 amount=-1 +kerning first=80 second=76 amount=-1 +kerning first=264 second=271 amount=-1 +kerning first=1091 second=1118 amount=-1 +kerning first=235 second=357 amount=-1 +kerning first=85 second=219 amount=-1 +kerning first=114 second=225 amount=-1 +kerning first=1043 second=1040 amount=-1 +kerning first=267 second=232 amount=-1 +kerning first=219 second=225 amount=-1 +kerning first=1055 second=1031 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=1060 second=1044 amount=-1 +kerning first=261 second=234 amount=-1 +kerning first=66 second=8249 amount=-1 +kerning first=225 second=234 amount=-1 +kerning first=268 second=98 amount=-1 +kerning first=212 second=344 amount=-1 +kerning first=339 second=314 amount=-1 +kerning first=102 second=8249 amount=-1 +kerning first=264 second=368 amount=-1 +kerning first=284 second=344 amount=-1 +kerning first=323 second=332 amount=-1 +kerning first=369 second=234 amount=-1 +kerning first=1039 second=1099 amount=-1 +kerning first=346 second=80 amount=-1 +kerning first=266 second=46 amount=-1 +kerning first=104 second=275 amount=-1 +kerning first=356 second=229 amount=-1 +kerning first=274 second=80 amount=-1 +kerning first=362 second=353 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=270 second=197 amount=-1 +kerning first=1034 second=1055 amount=-1 +kerning first=209 second=275 amount=-1 +kerning first=1077 second=1097 amount=-1 +kerning first=97 second=378 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=87 second=195 amount=-1 +kerning first=374 second=46 amount=-1 +kerning first=71 second=344 amount=-1 +kerning first=198 second=280 amount=-1 +kerning first=79 second=86 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=1058 second=1114 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=270 second=280 amount=-1 +kerning first=327 second=225 amount=-1 +kerning first=1064 second=1077 amount=-1 +kerning first=77 second=353 amount=-1 +kerning first=199 second=357 amount=-1 +kerning first=202 second=80 amount=-1 +kerning first=203 second=363 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=275 second=363 amount=-1 +kerning first=194 second=46 amount=-1 +kerning first=218 second=353 amount=-1 +kerning first=330 second=213 amount=-1 +kerning first=66 second=8222 amount=-1 +kerning first=266 second=317 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=370 second=116 amount=-1 +kerning first=69 second=217 amount=-1 +kerning first=302 second=317 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=327 second=201 amount=-1 +kerning first=338 second=317 amount=-1 +kerning first=197 second=311 amount=-1 +kerning first=298 second=116 amount=-1 +kerning first=267 second=259 amount=-1 +kerning first=233 second=311 amount=-1 +kerning first=1051 second=1117 amount=-1 +kerning first=1028 second=1046 amount=-1 +kerning first=217 second=70 amount=-1 +kerning first=1105 second=1117 amount=-1 +kerning first=232 second=369 amount=-1 +kerning first=368 second=362 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=1034 second=1059 amount=-2 +kerning first=304 second=201 amount=-1 +kerning first=223 second=122 amount=-1 +kerning first=366 second=213 amount=-1 +kerning first=325 second=70 amount=-1 +kerning first=259 second=122 amount=-1 +kerning first=282 second=66 amount=-1 +kerning first=231 second=271 amount=-1 +kerning first=325 second=113 amount=-1 +kerning first=351 second=8222 amount=-1 +kerning first=268 second=201 amount=-1 +kerning first=217 second=113 amount=-1 +kerning first=235 second=99 amount=-1 +kerning first=279 second=8222 amount=-1 +kerning first=262 second=116 amount=-1 +kerning first=243 second=8222 amount=-1 +kerning first=231 second=259 amount=-1 +kerning first=288 second=204 amount=-1 +kerning first=192 second=89 amount=-1 +kerning first=354 second=244 amount=-1 +kerning first=1086 second=1078 amount=-1 +kerning first=102 second=8222 amount=-1 +kerning first=364 second=210 amount=-1 +kerning first=219 second=268 amount=-1 +kerning first=204 second=262 amount=-1 +kerning first=1054 second=1062 amount=-1 +kerning first=1069 second=1048 amount=-1 +kerning first=1027 second=1108 amount=-1 +kerning first=272 second=256 amount=-1 +kerning first=1059 second=1102 amount=-1 +kerning first=232 second=98 amount=-1 +kerning first=204 second=332 amount=-1 +kerning first=220 second=210 amount=-1 +kerning first=196 second=98 amount=-1 +kerning first=8217 second=85 amount=-1 +kerning first=327 second=268 amount=-1 +kerning first=1049 second=1025 amount=-1 +kerning first=209 second=302 amount=-1 +kerning first=68 second=302 amount=-1 +kerning first=104 second=8217 amount=-2 +kerning first=118 second=122 amount=-1 +kerning first=369 second=277 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=296 second=335 amount=-1 +kerning first=1038 second=1087 amount=-1 +kerning first=212 second=73 amount=-1 +kerning first=287 second=231 amount=-1 +kerning first=368 second=335 amount=-1 +kerning first=1030 second=1053 amount=-1 +kerning first=78 second=268 amount=-1 +kerning first=370 second=219 amount=-1 +kerning first=284 second=73 amount=-1 +kerning first=1066 second=1053 amount=-1 +kerning first=255 second=122 amount=-1 +kerning first=298 second=219 amount=-1 +kerning first=45 second=213 amount=-1 +kerning first=334 second=219 amount=-1 +kerning first=291 second=187 amount=-1 +kerning first=198 second=323 amount=-1 +kerning first=327 second=187 amount=-1 +kerning first=203 second=336 amount=-1 +kerning first=80 second=244 amount=-1 +kerning first=219 second=187 amount=-2 +kerning first=70 second=213 amount=-1 +kerning first=116 second=244 amount=-1 +kerning first=255 second=187 amount=-1 +kerning first=311 second=46 amount=-1 +kerning first=8218 second=368 amount=-1 +kerning first=304 second=266 amount=-1 +kerning first=370 second=114 amount=-1 +kerning first=268 second=266 amount=-1 +kerning first=195 second=362 amount=-1 +kerning first=257 second=244 amount=-1 +kerning first=270 second=323 amount=-1 +kerning first=218 second=283 amount=-1 +kerning first=1049 second=1071 amount=-1 +kerning first=201 second=371 amount=-1 +kerning first=365 second=244 amount=-1 +kerning first=8216 second=219 amount=-1 +kerning first=72 second=77 amount=-1 +kerning first=101 second=369 amount=-1 +kerning first=74 second=327 amount=-1 +kerning first=196 second=266 amount=-1 +kerning first=278 second=75 amount=-1 +kerning first=114 second=187 amount=-1 +kerning first=206 second=75 amount=-1 +kerning first=368 second=200 amount=-1 +kerning first=220 second=101 amount=-1 +kerning first=78 second=187 amount=-1 +kerning first=74 second=235 amount=-1 +kerning first=296 second=200 amount=-1 +kerning first=97 second=248 amount=-1 +kerning first=323 second=327 amount=-1 +kerning first=323 second=262 amount=-1 +kerning first=200 second=66 amount=-1 +kerning first=333 second=380 amount=-1 +kerning first=1051 second=1036 amount=-1 +kerning first=246 second=314 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=362 second=283 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=362 second=218 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=269 second=110 amount=-1 +kerning first=364 second=367 amount=-1 +kerning first=326 second=283 amount=-1 +kerning first=374 second=371 amount=-1 +kerning first=290 second=218 amount=-1 +kerning first=187 second=79 amount=-1 +kerning first=1064 second=1091 amount=-1 +kerning first=338 second=274 amount=-1 +kerning first=370 second=192 amount=-1 +kerning first=298 second=257 amount=-1 +kerning first=99 second=305 amount=-1 +kerning first=262 second=257 amount=-1 +kerning first=266 second=274 amount=-1 +kerning first=220 second=367 amount=-1 +kerning first=370 second=257 amount=-1 +kerning first=338 second=209 amount=-1 +kerning first=302 second=274 amount=-1 +kerning first=213 second=270 amount=-1 +kerning first=245 second=318 amount=-1 +kerning first=334 second=192 amount=-1 +kerning first=302 second=209 amount=-1 +kerning first=1056 second=1050 amount=-1 +kerning first=281 second=318 amount=-1 +kerning first=249 second=8217 amount=-1 +kerning first=225 second=380 amount=-1 +kerning first=85 second=257 amount=-1 +kerning first=353 second=318 amount=-1 +kerning first=272 second=66 amount=-1 +kerning first=261 second=380 amount=-1 +kerning first=268 second=44 amount=-1 +kerning first=219 second=252 amount=-1 +kerning first=77 second=310 amount=-1 +kerning first=109 second=114 amount=-1 +kerning first=104 second=101 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=73 second=114 amount=-1 +kerning first=85 second=284 amount=-1 +kerning first=283 second=115 amount=-1 +kerning first=291 second=252 amount=-1 +kerning first=201 second=211 amount=-1 +kerning first=209 second=101 amount=-1 +kerning first=268 second=8249 amount=-1 +kerning first=1039 second=1072 amount=-1 +kerning first=355 second=115 amount=-1 +kerning first=73 second=109 amount=-1 +kerning first=70 second=115 amount=-1 +kerning first=281 second=101 amount=-1 +kerning first=8216 second=192 amount=-2 +kerning first=72 second=335 amount=-1 +kerning first=1067 second=1098 amount=-1 +kerning first=1031 second=1098 amount=-1 +kerning first=80 second=217 amount=-1 +kerning first=211 second=115 amount=-1 +kerning first=241 second=231 amount=-1 +kerning first=197 second=354 amount=-1 +kerning first=201 second=214 amount=-1 +kerning first=362 second=310 amount=-1 +kerning first=277 second=231 amount=-1 +kerning first=45 second=89 amount=-2 +kerning first=201 second=344 amount=-1 +kerning first=100 second=337 amount=-1 +kerning first=218 second=310 amount=-1 +kerning first=100 second=231 amount=-1 +kerning first=205 second=231 amount=-1 +kerning first=262 second=99 amount=-1 +kerning first=110 second=235 amount=-1 +kerning first=71 second=317 amount=-1 +kerning first=279 second=353 amount=-1 +kerning first=364 second=275 amount=-1 +kerning first=328 second=275 amount=-1 +kerning first=104 second=345 amount=-1 +kerning first=287 second=235 amount=-1 +kerning first=246 second=287 amount=-1 +kerning first=277 second=106 amount=-1 +kerning first=209 second=345 amount=-1 +kerning first=84 second=234 amount=-1 +kerning first=220 second=275 amount=-1 +kerning first=245 second=345 amount=-1 +kerning first=74 second=83 amount=-1 +kerning first=235 second=249 amount=-1 +kerning first=281 second=345 amount=-1 +kerning first=8222 second=380 amount=-1 +kerning first=352 second=296 amount=-1 +kerning first=325 second=97 amount=-1 +kerning first=72 second=80 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=72 second=243 amount=-1 +kerning first=258 second=45 amount=-1 +kerning first=207 second=223 amount=-1 +kerning first=298 second=284 amount=-1 +kerning first=323 second=83 amount=-1 +kerning first=81 second=278 amount=-1 +kerning first=366 second=45 amount=-2 +kerning first=370 second=284 amount=-1 +kerning first=289 second=335 amount=-1 +kerning first=66 second=353 amount=-1 +kerning first=263 second=226 amount=-1 +kerning first=217 second=97 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=227 second=291 amount=-1 +kerning first=86 second=199 amount=-1 +kerning first=1049 second=1081 amount=-1 +kerning first=187 second=253 amount=-1 +kerning first=73 second=212 amount=-1 +kerning first=77 second=245 amount=-1 +kerning first=268 second=304 amount=-1 +kerning first=325 second=380 amount=-1 +kerning first=1054 second=1046 amount=-1 +kerning first=304 second=304 amount=-1 +kerning first=267 second=324 amount=-1 +kerning first=218 second=120 amount=-1 +kerning first=254 second=120 amount=-1 +kerning first=8218 second=212 amount=-1 +kerning first=366 second=278 amount=-1 +kerning first=330 second=278 amount=-1 +kerning first=346 second=313 amount=-1 +kerning first=212 second=72 amount=-1 +kerning first=1042 second=1056 amount=-1 +kerning first=362 second=245 amount=-1 +kerning first=234 second=103 amount=-1 +kerning first=198 second=361 amount=-1 +kerning first=116 second=111 amount=-1 +kerning first=326 second=245 amount=-1 +kerning first=323 second=8218 amount=-1 +kerning first=202 second=313 amount=-1 +kerning first=1118 second=1088 amount=-1 +kerning first=338 second=338 amount=-1 +kerning first=287 second=8218 amount=-1 +kerning first=8222 second=266 amount=-1 +kerning first=274 second=313 amount=-1 +kerning first=218 second=245 amount=-1 +kerning first=1048 second=1037 amount=-1 +kerning first=1027 second=1092 amount=-1 +kerning first=82 second=187 amount=-1 +kerning first=89 second=192 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=65 second=254 amount=-1 +kerning first=230 second=111 amount=-1 +kerning first=324 second=269 amount=-1 +kerning first=1046 second=1088 amount=-1 +kerning first=280 second=203 amount=-1 +kerning first=81 second=72 amount=-1 +kerning first=101 second=254 amount=-1 +kerning first=266 second=111 amount=-1 +kerning first=195 second=118 amount=-1 +kerning first=221 second=65 amount=-1 +kerning first=103 second=105 amount=-1 +kerning first=330 second=72 amount=-1 +kerning first=352 second=304 amount=-1 +kerning first=1042 second=1055 amount=-1 +kerning first=366 second=72 amount=-1 +kerning first=87 second=260 amount=-1 +kerning first=374 second=111 amount=-1 +kerning first=362 second=120 amount=-1 +kerning first=286 second=219 amount=-1 +kerning first=80 second=374 amount=-1 +kerning first=115 second=8220 amount=-2 +kerning first=286 second=114 amount=-1 +kerning first=356 second=263 amount=-1 +kerning first=79 second=8220 amount=-2 +kerning first=1050 second=1094 amount=-1 +kerning first=250 second=114 amount=-1 +kerning first=1049 second=1073 amount=-1 +kerning first=220 second=8220 amount=-1 +kerning first=89 second=111 amount=-1 +kerning first=368 second=70 amount=-1 +kerning first=204 second=370 amount=-1 +kerning first=45 second=251 amount=-1 +kerning first=220 second=69 amount=-1 +kerning first=368 second=102 amount=-1 +kerning first=368 second=227 amount=-1 +kerning first=333 second=44 amount=-1 +kerning first=344 second=364 amount=-1 +kerning first=296 second=227 amount=-1 +kerning first=268 second=331 amount=-1 +kerning first=258 second=251 amount=-1 +kerning first=305 second=101 amount=-1 +kerning first=272 second=364 amount=-1 +kerning first=304 second=331 amount=-1 +kerning first=269 second=273 amount=-1 +kerning first=69 second=81 amount=-1 +kerning first=233 second=273 amount=-1 +kerning first=79 second=69 amount=-1 +kerning first=200 second=364 amount=-1 +kerning first=370 second=78 amount=-1 +kerning first=366 second=251 amount=-1 +kerning first=302 second=355 amount=-1 +kerning first=1048 second=1064 amount=-1 +kerning first=334 second=78 amount=-1 +kerning first=218 second=218 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=230 second=355 amount=-1 +kerning first=194 second=355 amount=-1 +kerning first=282 second=81 amount=-1 +kerning first=77 second=218 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=298 second=78 amount=-1 +kerning first=1062 second=1085 amount=-1 +kerning first=262 second=78 amount=-1 +kerning first=277 second=113 amount=-1 +kerning first=66 second=88 amount=-1 +kerning first=111 second=8250 amount=-1 +kerning first=234 second=242 amount=-1 +kerning first=207 second=288 amount=-1 +kerning first=1056 second=1076 amount=-1 +kerning first=85 second=78 amount=-1 +kerning first=279 second=234 amount=-1 +kerning first=335 second=8221 amount=-2 +kerning first=217 second=313 amount=-1 +kerning first=80 second=282 amount=-1 +kerning first=338 second=355 amount=-1 +kerning first=67 second=230 amount=-1 +kerning first=280 second=274 amount=-1 +kerning first=262 second=79 amount=-1 +kerning first=214 second=87 amount=-1 +kerning first=1036 second=1073 amount=-1 +kerning first=335 second=291 amount=-1 +kerning first=228 second=233 amount=-1 +kerning first=87 second=233 amount=-1 +kerning first=8249 second=220 amount=-1 +kerning first=263 second=291 amount=-1 +kerning first=206 second=346 amount=-1 +kerning first=8222 second=217 amount=-1 +kerning first=1042 second=1052 amount=-1 +kerning first=363 second=233 amount=-1 +kerning first=268 second=230 amount=-1 +kerning first=272 second=87 amount=-1 +kerning first=291 second=233 amount=-1 +kerning first=327 second=233 amount=-1 +kerning first=325 second=288 amount=-1 +kerning first=232 second=235 amount=-1 +kerning first=240 second=291 amount=-1 +kerning first=200 second=334 amount=-1 +kerning first=73 second=202 amount=-1 +kerning first=1068 second=1046 amount=-1 +kerning first=1086 second=1113 amount=-1 +kerning first=99 second=291 amount=-1 +kerning first=354 second=257 amount=-1 +kerning first=209 second=227 amount=-1 +kerning first=213 second=84 amount=-1 +kerning first=330 second=224 amount=-1 +kerning first=217 second=288 amount=-1 +kerning first=344 second=334 amount=-1 +kerning first=1055 second=1049 amount=-1 +kerning first=366 second=224 amount=-1 +kerning first=370 second=81 amount=-1 +kerning first=262 second=81 amount=-1 +kerning first=298 second=81 amount=-1 +kerning first=200 second=187 amount=-1 +kerning first=278 second=8221 amount=-1 +kerning first=314 second=8221 amount=-1 +kerning first=97 second=99 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=1038 second=1095 amount=-1 +kerning first=221 second=245 amount=-1 +kerning first=344 second=187 amount=-1 +kerning first=205 second=270 amount=-1 +kerning first=116 second=245 amount=-1 +kerning first=272 second=187 amount=-1 +kerning first=80 second=245 amount=-1 +kerning first=103 second=363 amount=-1 +kerning first=201 second=8218 amount=-1 +kerning first=367 second=337 amount=-1 +kerning first=1054 second=1070 amount=-1 +kerning first=73 second=223 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=97 second=279 amount=-1 +kerning first=281 second=269 amount=-1 +kerning first=1053 second=1104 amount=-1 +kerning first=204 second=277 amount=-1 +kerning first=304 second=230 amount=-1 +kerning first=288 second=75 amount=-1 +kerning first=302 second=331 amount=-1 +kerning first=283 second=44 amount=-1 +kerning first=256 second=8249 amount=-1 +kerning first=214 second=364 amount=-1 +kerning first=85 second=261 amount=-1 +kerning first=210 second=206 amount=-1 +kerning first=69 second=206 amount=-1 +kerning first=114 second=228 amount=-1 +kerning first=73 second=364 amount=-1 +kerning first=201 second=66 amount=-1 +kerning first=298 second=261 amount=-1 +kerning first=262 second=261 amount=-1 +kerning first=258 second=371 amount=-1 +kerning first=201 second=367 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=370 second=261 amount=-1 +kerning first=81 second=217 amount=-1 +kerning first=72 second=264 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=368 second=69 amount=-1 +kerning first=282 second=206 amount=-1 +kerning first=302 second=366 amount=-1 +kerning first=291 second=380 amount=-1 +kerning first=1030 second=1034 amount=-1 +kerning first=284 second=205 amount=-1 +kerning first=255 second=380 amount=-1 +kerning first=77 second=200 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=289 second=108 amount=-1 +kerning first=212 second=205 amount=-1 +kerning first=327 second=380 amount=-1 +kerning first=65 second=303 amount=-1 +kerning first=364 second=266 amount=-1 +kerning first=264 second=273 amount=-1 +kerning first=199 second=368 amount=-1 +kerning first=286 second=364 amount=-1 +kerning first=193 second=370 amount=-1 +kerning first=1066 second=1034 amount=-1 +kerning first=8217 second=114 amount=-1 +kerning first=203 second=8218 amount=-1 +kerning first=253 second=318 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=1036 second=1063 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=284 second=8221 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=1041 second=1116 amount=-1 +kerning first=235 second=355 amount=-1 +kerning first=71 second=205 amount=-1 +kerning first=203 second=78 amount=-1 +kerning first=249 second=8249 amount=-1 +kerning first=199 second=355 amount=-1 +kerning first=78 second=380 amount=-1 +kerning first=80 second=325 amount=-1 +kerning first=219 second=380 amount=-1 +kerning first=8250 second=370 amount=-1 +kerning first=1077 second=1103 amount=-1 +kerning first=1062 second=1077 amount=-1 +kerning first=316 second=248 amount=-1 +kerning first=1060 second=1039 amount=-1 +kerning first=338 second=218 amount=-1 +kerning first=344 second=87 amount=-1 +kerning first=302 second=218 amount=-1 +kerning first=67 second=248 amount=-1 +kerning first=266 second=218 amount=-1 +kerning first=202 second=76 amount=-1 +kerning first=209 second=214 amount=-1 +kerning first=194 second=218 amount=-1 +kerning first=103 second=248 amount=-1 +kerning first=1069 second=1039 amount=-1 +kerning first=77 second=347 amount=-1 +kerning first=74 second=330 amount=-1 +kerning first=205 second=77 amount=-1 +kerning first=201 second=220 amount=-1 +kerning first=1041 second=1081 amount=-1 +kerning first=1050 second=1059 amount=-1 +kerning first=255 second=107 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=1091 second=1103 amount=-1 +kerning first=374 second=339 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=367 second=103 amount=-1 +kerning first=226 second=382 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=269 second=289 amount=-1 +kerning first=1076 second=1094 amount=-1 +kerning first=233 second=289 amount=-1 +kerning first=259 second=103 amount=-1 +kerning first=8222 second=230 amount=-1 +kerning first=288 second=8218 amount=-1 +kerning first=223 second=103 amount=-1 +kerning first=249 second=171 amount=-1 +kerning first=305 second=289 amount=-1 +kerning first=86 second=242 amount=-1 +kerning first=281 second=281 amount=-1 +kerning first=70 second=261 amount=-1 +kerning first=1053 second=1091 amount=-1 +kerning first=330 second=304 amount=-1 +kerning first=97 second=333 amount=-1 +kerning first=366 second=304 amount=-1 +kerning first=258 second=211 amount=-1 +kerning first=1053 second=1051 amount=-1 +kerning first=221 second=338 amount=-1 +kerning first=240 second=187 amount=-1 +kerning first=1053 second=1050 amount=-1 +kerning first=330 second=211 amount=-1 +kerning first=1060 second=1052 amount=-1 +kerning first=269 second=109 amount=-1 +kerning first=204 second=242 amount=-1 +kerning first=282 second=332 amount=-1 +kerning first=80 second=114 amount=-1 +kerning first=80 second=338 amount=-1 +kerning first=70 second=85 amount=-1 +kerning first=370 second=203 amount=-1 +kerning first=81 second=304 amount=-1 +kerning first=266 second=339 amount=-1 +kerning first=262 second=382 amount=-1 +kerning first=71 second=298 amount=-1 +kerning first=230 second=339 amount=-1 +kerning first=298 second=382 amount=-1 +kerning first=339 second=339 amount=-1 +kerning first=302 second=339 amount=-1 +kerning first=362 second=347 amount=-1 +kerning first=1051 second=1025 amount=-1 +kerning first=70 second=332 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=89 second=339 amount=-1 +kerning first=366 second=211 amount=-1 +kerning first=212 second=298 amount=-1 +kerning first=201 second=313 amount=-1 +kerning first=206 second=290 amount=-1 +kerning first=302 second=275 amount=-1 +kerning first=218 second=347 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=234 second=382 amount=-1 +kerning first=1043 second=1085 amount=-1 +kerning first=221 second=271 amount=-1 +kerning first=240 second=111 amount=-1 +kerning first=278 second=357 amount=-1 +kerning first=317 second=374 amount=-1 +kerning first=283 second=8250 amount=-1 +kerning first=8222 second=243 amount=-1 +kerning first=304 second=76 amount=-1 +kerning first=1118 second=1094 amount=-1 +kerning first=211 second=8250 amount=-1 +kerning first=101 second=357 amount=-1 +kerning first=264 second=219 amount=-1 +kerning first=268 second=76 amount=-1 +kerning first=106 second=8250 amount=-1 +kerning first=65 second=357 amount=-1 +kerning first=364 second=212 amount=-1 +kerning first=206 second=357 amount=-1 +kerning first=68 second=374 amount=-1 +kerning first=1044 second=1118 amount=-1 +kerning first=192 second=219 amount=-1 +kerning first=208 second=8222 amount=-1 +kerning first=364 second=82 amount=-1 +kerning first=330 second=317 amount=-1 +kerning first=262 second=315 amount=-1 +kerning first=304 second=323 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=220 second=212 amount=-1 +kerning first=268 second=323 amount=-1 +kerning first=1048 second=1075 amount=-1 +kerning first=86 second=263 amount=-1 +kerning first=365 second=8217 amount=-1 +kerning first=370 second=315 amount=-1 +kerning first=80 second=8217 amount=-1 +kerning first=8250 second=69 amount=-1 +kerning first=99 second=111 amount=-1 +kerning first=116 second=8217 amount=-1 +kerning first=296 second=262 amount=-1 +kerning first=298 second=315 amount=-1 +kerning first=302 second=261 amount=-1 +kerning first=334 second=315 amount=-1 +kerning first=221 second=8217 amount=-1 +kerning first=199 second=314 amount=-1 +kerning first=203 second=366 amount=-1 +kerning first=286 second=204 amount=-1 +kerning first=338 second=365 amount=-1 +kerning first=374 second=365 amount=-1 +kerning first=214 second=204 amount=-1 +kerning first=233 second=263 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=269 second=263 amount=-1 +kerning first=200 second=280 amount=-1 +kerning first=1051 second=1092 amount=-1 +kerning first=8218 second=273 amount=-1 +kerning first=305 second=263 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=70 second=254 amount=-1 +kerning first=272 second=280 amount=-1 +kerning first=235 second=314 amount=-1 +kerning first=230 second=365 amount=-1 +kerning first=1031 second=1067 amount=-1 +kerning first=89 second=365 amount=-1 +kerning first=231 second=110 amount=-1 +kerning first=8249 second=350 amount=-1 +kerning first=1048 second=1101 amount=-1 +kerning first=72 second=331 amount=-1 +kerning first=8222 second=104 amount=-1 +kerning first=199 second=67 amount=-1 +kerning first=1071 second=1024 amount=-1 +kerning first=267 second=110 amount=-1 +kerning first=352 second=68 amount=-1 +kerning first=205 second=203 amount=-1 +kerning first=80 second=271 amount=-1 +kerning first=217 second=195 amount=-1 +kerning first=100 second=378 amount=-1 +kerning first=258 second=250 amount=-1 +kerning first=195 second=357 amount=-1 +kerning first=264 second=274 amount=-1 +kerning first=277 second=378 amount=-1 +kerning first=272 second=46 amount=-1 +kerning first=234 second=101 amount=-1 +kerning first=205 second=378 amount=-1 +kerning first=234 second=347 amount=-1 +kerning first=69 second=8217 amount=-1 +kerning first=199 second=262 amount=-1 +kerning first=1068 second=1067 amount=-1 +kerning first=207 second=76 amount=-1 +kerning first=105 second=8217 amount=-1 +kerning first=255 second=8221 amount=-2 +kerning first=334 second=354 amount=-1 +kerning first=217 second=261 amount=-1 +kerning first=334 second=209 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=89 second=267 amount=-1 +kerning first=8222 second=257 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=339 second=357 amount=-1 +kerning first=88 second=345 amount=-1 +kerning first=211 second=280 amount=-1 +kerning first=203 second=204 amount=-1 +kerning first=77 second=113 amount=-1 +kerning first=366 second=317 amount=-1 +kerning first=193 second=345 amount=-1 +kerning first=229 second=345 amount=-1 +kerning first=1070 second=1084 amount=-1 +kerning first=345 second=259 amount=-1 +kerning first=354 second=187 amount=-1 +kerning first=203 second=270 amount=-1 +kerning first=103 second=287 amount=-1 +kerning first=1033 second=1038 amount=-2 +kerning first=337 second=345 amount=-1 +kerning first=1086 second=1083 amount=-1 +kerning first=370 second=369 amount=-1 +kerning first=8217 second=240 amount=-1 +kerning first=362 second=113 amount=-1 +kerning first=201 second=207 amount=-1 +kerning first=316 second=287 amount=-1 +kerning first=370 second=100 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=1047 second=1096 amount=-1 +kerning first=264 second=366 amount=-1 +kerning first=81 second=317 amount=-1 +kerning first=244 second=287 amount=-1 +kerning first=73 second=336 amount=-1 +kerning first=326 second=113 amount=-1 +kerning first=192 second=366 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=232 second=271 amount=-1 +kerning first=121 second=369 amount=-1 +kerning first=72 second=210 amount=-1 +kerning first=75 second=116 amount=-1 +kerning first=85 second=369 amount=-1 +kerning first=304 second=271 amount=-1 +kerning first=355 second=8250 amount=-1 +kerning first=268 second=271 amount=-1 +kerning first=67 second=8220 amount=-1 +kerning first=202 second=371 amount=-1 +kerning first=70 second=278 amount=-1 +kerning first=209 second=73 amount=-1 +kerning first=330 second=83 amount=-1 +kerning first=366 second=83 amount=-1 +kerning first=103 second=8220 amount=-2 +kerning first=8218 second=221 amount=-2 +kerning first=259 second=244 amount=-1 +kerning first=218 second=213 amount=-1 +kerning first=317 second=86 amount=-1 +kerning first=198 second=268 amount=-1 +kerning first=97 second=289 amount=-1 +kerning first=296 second=97 amount=-1 +kerning first=73 second=351 amount=-1 +kerning first=211 second=278 amount=-1 +kerning first=316 second=8220 amount=-1 +kerning first=367 second=244 amount=-1 +kerning first=368 second=97 amount=-1 +kerning first=77 second=213 amount=-1 +kerning first=368 second=114 amount=-1 +kerning first=1044 second=1090 amount=-1 +kerning first=302 second=77 amount=-1 +kerning first=1059 second=1099 amount=-1 +kerning first=338 second=77 amount=-1 +kerning first=368 second=82 amount=-1 +kerning first=108 second=277 amount=-1 +kerning first=1059 second=1060 amount=-1 +kerning first=207 second=74 amount=-1 +kerning first=266 second=77 amount=-1 +kerning first=72 second=277 amount=-1 +kerning first=67 second=235 amount=-1 +kerning first=68 second=88 amount=-1 +kerning first=68 second=73 amount=-1 +kerning first=103 second=235 amount=-1 +kerning first=8218 second=219 amount=-1 +kerning first=74 second=251 amount=-1 +kerning first=249 second=277 amount=-1 +kerning first=8218 second=234 amount=-1 +kerning first=1047 second=1081 amount=-1 +kerning first=268 second=269 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=304 second=269 amount=-1 +kerning first=218 second=113 amount=-1 +kerning first=304 second=338 amount=-1 +kerning first=232 second=269 amount=-1 +kerning first=234 second=283 amount=-1 +kerning first=266 second=231 amount=-1 +kerning first=282 second=286 amount=-1 +kerning first=1048 second=1117 amount=-1 +kerning first=268 second=338 amount=-1 +kerning first=302 second=231 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=296 second=82 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=374 second=231 amount=-1 +kerning first=69 second=286 amount=-1 +kerning first=201 second=274 amount=-1 +kerning first=352 second=8220 amount=-1 +kerning first=214 second=351 amount=-1 +kerning first=198 second=203 amount=-1 +kerning first=68 second=86 amount=-1 +kerning first=1050 second=1074 amount=-1 +kerning first=277 second=363 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=263 second=240 amount=-1 +kerning first=264 second=108 amount=-1 +kerning first=252 second=114 amount=-1 +kerning first=354 second=353 amount=-1 +kerning first=264 second=80 amount=-1 +kerning first=1027 second=1097 amount=-1 +kerning first=296 second=278 amount=-1 +kerning first=382 second=45 amount=-1 +kerning first=324 second=114 amount=-1 +kerning first=1068 second=1025 amount=-1 +kerning first=366 second=8222 amount=-2 +kerning first=288 second=114 amount=-1 +kerning first=87 second=347 amount=-1 +kerning first=284 second=66 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=85 second=367 amount=-1 +kerning first=266 second=344 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=196 second=217 amount=-1 +kerning first=212 second=66 amount=-1 +kerning first=272 second=317 amount=-1 +kerning first=222 second=8222 amount=-1 +kerning first=111 second=114 amount=-1 +kerning first=268 second=217 amount=-1 +kerning first=268 second=284 amount=-1 +kerning first=89 second=231 amount=-1 +kerning first=220 second=251 amount=-1 +kerning first=304 second=217 amount=-1 +kerning first=1047 second=1027 amount=-1 +kerning first=304 second=284 amount=-1 +kerning first=230 second=231 amount=-1 +kerning first=202 second=357 amount=-1 +kerning first=272 second=115 amount=-1 +kerning first=210 second=353 amount=-1 +kerning first=1034 second=1101 amount=-1 +kerning first=196 second=284 amount=-1 +kerning first=1064 second=1028 amount=-1 +kerning first=201 second=205 amount=-1 +kerning first=101 second=249 amount=-1 +kerning first=220 second=266 amount=-1 +kerning first=316 second=235 amount=-1 +kerning first=362 second=200 amount=-1 +kerning first=1064 second=1037 amount=-1 +kerning first=315 second=362 amount=-1 +kerning first=198 second=214 amount=-1 +kerning first=84 second=243 amount=-1 +kerning first=290 second=200 amount=-1 +kerning first=204 second=111 amount=-1 +kerning first=1058 second=1076 amount=-1 +kerning first=218 second=200 amount=-1 +kerning first=8218 second=288 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=70 second=226 amount=-1 +kerning first=8222 second=271 amount=-1 +kerning first=220 second=370 amount=-1 +kerning first=367 second=242 amount=-1 +kerning first=202 second=45 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=81 second=8222 amount=-1 +kerning first=97 second=45 amount=-1 +kerning first=99 second=252 amount=-1 +kerning first=278 second=249 amount=-1 +kerning first=310 second=45 amount=-1 +kerning first=314 second=249 amount=-1 +kerning first=67 second=233 amount=-1 +kerning first=8222 second=98 amount=-1 +kerning first=346 second=45 amount=-1 +kerning first=217 second=275 amount=-1 +kerning first=350 second=249 amount=-1 +kerning first=355 second=226 amount=-1 +kerning first=207 second=362 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=325 second=275 amount=-1 +kerning first=171 second=362 amount=-1 +kerning first=274 second=45 amount=-1 +kerning first=289 second=275 amount=-1 +kerning first=337 second=291 amount=-1 +kerning first=72 second=223 amount=-1 +kerning first=352 second=302 amount=-1 +kerning first=291 second=326 amount=-1 +kerning first=103 second=233 amount=-1 +kerning first=280 second=302 amount=-1 +kerning first=364 second=199 amount=-1 +kerning first=229 second=291 amount=-1 +kerning first=87 second=234 amount=-1 +kerning first=1030 second=1083 amount=-1 +kerning first=228 second=234 amount=-1 +kerning first=8250 second=84 amount=-1 +kerning first=99 second=98 amount=-1 +kerning first=270 second=46 amount=-1 +kerning first=326 second=267 amount=-1 +kerning first=67 second=302 amount=-1 +kerning first=362 second=267 amount=-1 +kerning first=316 second=233 amount=-1 +kerning first=1039 second=1113 amount=-1 +kerning first=281 second=248 amount=-1 +kerning first=8222 second=269 amount=-1 +kerning first=233 second=122 amount=-1 +kerning first=225 second=243 amount=-1 +kerning first=70 second=224 amount=-1 +kerning first=217 second=327 amount=-1 +kerning first=77 second=220 amount=-1 +kerning first=65 second=8221 amount=-2 +kerning first=1062 second=1094 amount=-1 +kerning first=262 second=333 amount=-1 +kerning first=101 second=8221 amount=-2 +kerning first=291 second=107 amount=-1 +kerning first=369 second=243 amount=-1 +kerning first=325 second=327 amount=-1 +kerning first=234 second=337 amount=-1 +kerning first=225 second=269 amount=-1 +kerning first=1038 second=1119 amount=-1 +kerning first=277 second=311 amount=-1 +kerning first=354 second=232 amount=-1 +kerning first=171 second=89 amount=-1 +kerning first=355 second=224 amount=-1 +kerning first=66 second=89 amount=-1 +kerning first=234 second=335 amount=-1 +kerning first=97 second=318 amount=-1 +kerning first=8220 second=218 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=1052 second=1071 amount=-1 +kerning first=344 second=46 amount=-1 +kerning first=1078 second=1104 amount=-1 +kerning first=218 second=267 amount=-1 +kerning first=368 second=370 amount=-1 +kerning first=8222 second=338 amount=-1 +kerning first=330 second=212 amount=-1 +kerning first=296 second=370 amount=-1 +kerning first=8250 second=82 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=220 second=199 amount=-1 +kerning first=77 second=267 amount=-1 +kerning first=220 second=361 amount=-1 +kerning first=291 second=277 amount=-1 +kerning first=1068 second=1031 amount=-1 +kerning first=302 second=71 amount=-1 +kerning first=1030 second=1086 amount=-1 +kerning first=364 second=361 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=207 second=267 amount=-1 +kerning first=209 second=212 amount=-1 +kerning first=346 second=114 amount=-1 +kerning first=68 second=296 amount=-1 +kerning first=279 second=267 amount=-1 +kerning first=1104 second=1117 amount=-1 +kerning first=1062 second=1079 amount=-1 +kerning first=274 second=8249 amount=-1 +kerning first=214 second=115 amount=-1 +kerning first=202 second=114 amount=-1 +kerning first=110 second=111 amount=-1 +kerning first=310 second=114 amount=-1 +kerning first=346 second=8249 amount=-1 +kerning first=274 second=114 amount=-1 +kerning first=382 second=8249 amount=-1 +kerning first=1027 second=1095 amount=-1 +kerning first=251 second=111 amount=-1 +kerning first=350 second=45 amount=-1 +kerning first=287 second=111 amount=-1 +kerning first=73 second=115 amount=-1 +kerning first=323 second=111 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=97 second=114 amount=-1 +kerning first=87 second=258 amount=-1 +kerning first=291 second=365 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=327 second=68 amount=-1 +kerning first=219 second=365 amount=-1 +kerning first=220 second=197 amount=-1 +kerning first=316 second=263 amount=-1 +kerning first=255 second=365 amount=-1 +kerning first=203 second=310 amount=-1 +kerning first=199 second=370 amount=-1 +kerning first=302 second=203 amount=-1 +kerning first=77 second=72 amount=-1 +kerning first=338 second=203 amount=-1 +kerning first=368 second=368 amount=-1 +kerning first=234 second=249 amount=-1 +kerning first=364 second=197 amount=-1 +kerning first=98 second=46 amount=-1 +kerning first=202 second=8249 amount=-1 +kerning first=1042 second=1037 amount=-1 +kerning first=8217 second=346 amount=-1 +kerning first=199 second=364 amount=-1 +kerning first=1041 second=1088 amount=-1 +kerning first=195 second=199 amount=-1 +kerning first=246 second=8220 amount=-2 +kerning first=266 second=203 amount=-1 +kerning first=368 second=290 amount=-1 +kerning first=362 second=72 amount=-1 +kerning first=67 second=263 amount=-1 +kerning first=270 second=374 amount=-1 +kerning first=103 second=263 amount=-1 +kerning first=235 second=106 amount=-1 +kerning first=290 second=72 amount=-1 +kerning first=1054 second=1055 amount=-1 +kerning first=355 second=8222 amount=-1 +kerning first=8216 second=220 amount=-1 +kerning first=116 second=230 amount=-1 +kerning first=203 second=327 amount=-1 +kerning first=80 second=230 amount=-1 +kerning first=1053 second=1052 amount=-1 +kerning first=211 second=8222 amount=-1 +kerning first=211 second=87 amount=-1 +kerning first=1055 second=1104 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=1030 second=1036 amount=-1 +kerning first=72 second=279 amount=-1 +kerning first=70 second=8222 amount=-2 +kerning first=235 second=333 amount=-1 +kerning first=108 second=279 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=74 second=81 amount=-1 +kerning first=287 second=291 amount=-1 +kerning first=251 second=291 amount=-1 +kerning first=87 second=288 amount=-1 +kerning first=364 second=227 amount=-1 +kerning first=8217 second=363 amount=-1 +kerning first=337 second=44 amount=-1 +kerning first=206 second=274 amount=-1 +kerning first=333 second=187 amount=-1 +kerning first=255 second=252 amount=-1 +kerning first=196 second=89 amount=-1 +kerning first=110 second=291 amount=-1 +kerning first=71 second=209 amount=-1 +kerning first=263 second=281 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=264 second=288 amount=-1 +kerning first=220 second=227 amount=-1 +kerning first=224 second=318 amount=-1 +kerning first=1059 second=1090 amount=-1 +kerning first=86 second=99 amount=-1 +kerning first=84 second=187 amount=-1 +kerning first=1042 second=1050 amount=-1 +kerning first=1067 second=1095 amount=-1 +kerning first=356 second=337 amount=-1 +kerning first=227 second=99 amount=-1 +kerning first=225 second=187 amount=-1 +kerning first=290 second=8218 amount=-1 +kerning first=1033 second=1027 amount=-1 +kerning first=263 second=99 amount=-1 +kerning first=261 second=187 amount=-1 +kerning first=268 second=245 amount=-1 +kerning first=65 second=221 amount=-1 +kerning first=232 second=245 amount=-1 +kerning first=1047 second=1113 amount=-1 +kerning first=288 second=270 amount=-1 +kerning first=287 second=328 amount=-1 +kerning first=1031 second=1073 amount=-1 +kerning first=71 second=66 amount=-1 +kerning first=264 second=330 amount=-1 +kerning first=249 second=279 amount=-1 +kerning first=221 second=230 amount=-1 +kerning first=366 second=196 amount=-1 +kerning first=200 second=332 amount=-1 +kerning first=370 second=367 amount=-1 +kerning first=344 second=332 amount=-1 +kerning first=214 second=202 amount=-1 +kerning first=84 second=351 amount=-1 +kerning first=198 second=73 amount=-1 +kerning first=368 second=264 amount=-1 +kerning first=196 second=8217 amount=-2 +kerning first=286 second=202 amount=-1 +kerning first=65 second=108 amount=-1 +kerning first=296 second=264 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=1030 second=1073 amount=-1 +kerning first=279 second=104 amount=-1 +kerning first=339 second=248 amount=-1 +kerning first=242 second=108 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=213 second=82 amount=-1 +kerning first=1034 second=1030 amount=-1 +kerning first=8249 second=352 amount=-1 +kerning first=80 second=323 amount=-1 +kerning first=1041 second=1034 amount=-1 +kerning first=8250 second=368 amount=-1 +kerning first=232 second=8217 amount=-2 +kerning first=1089 second=1076 amount=-1 +kerning first=203 second=364 amount=-1 +kerning first=1040 second=1038 amount=-2 +kerning first=268 second=8217 amount=-1 +kerning first=314 second=108 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=97 second=277 amount=-1 +kerning first=375 second=8218 amount=-1 +kerning first=1078 second=1091 amount=-1 +kerning first=275 second=273 amount=-1 +kerning first=8218 second=366 amount=-1 +kerning first=240 second=113 amount=-1 +kerning first=1056 second=1067 amount=-1 +kerning first=1039 second=1067 amount=-1 +kerning first=230 second=116 amount=-1 +kerning first=224 second=314 amount=-1 +kerning first=72 second=82 amount=-1 +kerning first=268 second=325 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=286 second=78 amount=-1 +kerning first=204 second=113 amount=-1 +kerning first=82 second=44 amount=-1 +kerning first=199 second=286 amount=-1 +kerning first=119 second=314 amount=-1 +kerning first=1118 second=1078 amount=-1 +kerning first=304 second=325 amount=-1 +kerning first=99 second=113 amount=-1 +kerning first=280 second=317 amount=-1 +kerning first=1031 second=1069 amount=-1 +kerning first=267 second=112 amount=-1 +kerning first=1067 second=1069 amount=-1 +kerning first=327 second=264 amount=-1 +kerning first=231 second=112 amount=-1 +kerning first=352 second=317 amount=-1 +kerning first=214 second=78 amount=-1 +kerning first=109 second=339 amount=-1 +kerning first=220 second=110 amount=-1 +kerning first=1038 second=1077 amount=-1 +kerning first=272 second=282 amount=-1 +kerning first=73 second=78 amount=-1 +kerning first=199 second=316 amount=-1 +kerning first=99 second=109 amount=-1 +kerning first=291 second=242 amount=-1 +kerning first=8217 second=256 amount=-2 +kerning first=200 second=282 amount=-1 +kerning first=364 second=110 amount=-1 +kerning first=288 second=77 amount=-1 +kerning first=217 second=8220 amount=-1 +kerning first=103 second=289 amount=-1 +kerning first=1031 second=1094 amount=-1 +kerning first=291 second=339 amount=-1 +kerning first=258 second=356 amount=-1 +kerning first=244 second=289 amount=-1 +kerning first=363 second=339 amount=-1 +kerning first=255 second=311 amount=-1 +kerning first=316 second=289 amount=-1 +kerning first=327 second=339 amount=-1 +kerning first=74 second=382 amount=-1 +kerning first=72 second=333 amount=-1 +kerning first=81 second=356 amount=-1 +kerning first=260 second=171 amount=-1 +kerning first=262 second=220 amount=-1 +kerning first=108 second=333 amount=-1 +kerning first=328 second=281 amount=-1 +kerning first=356 second=246 amount=-1 +kerning first=334 second=220 amount=-1 +kerning first=364 second=281 amount=-1 +kerning first=259 second=101 amount=-1 +kerning first=368 second=171 amount=-2 +kerning first=298 second=220 amount=-1 +kerning first=249 second=333 amount=-1 +kerning first=274 second=212 amount=-1 +kerning first=367 second=101 amount=-1 +kerning first=85 second=220 amount=-1 +kerning first=84 second=100 amount=-1 +kerning first=1049 second=1065 amount=-1 +kerning first=204 second=330 amount=-1 +kerning first=71 second=296 amount=-1 +kerning first=211 second=304 amount=-1 +kerning first=70 second=280 amount=-1 +kerning first=1030 second=1045 amount=-1 +kerning first=284 second=8218 amount=-1 +kerning first=69 second=338 amount=-1 +kerning first=284 second=296 amount=-1 +kerning first=366 second=85 amount=-1 +kerning first=248 second=8218 amount=-1 +kerning first=195 second=86 amount=-1 +kerning first=1064 second=1074 amount=-1 +kerning first=330 second=85 amount=-1 +kerning first=212 second=8218 amount=-1 +kerning first=212 second=296 amount=-1 +kerning first=70 second=304 amount=-1 +kerning first=89 second=382 amount=-1 +kerning first=298 second=313 amount=-1 +kerning first=258 second=85 amount=-1 +kerning first=334 second=313 amount=-1 +kerning first=366 second=109 amount=-1 +kerning first=370 second=220 amount=-1 +kerning first=370 second=313 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=356 second=8218 amount=-1 +kerning first=220 second=281 amount=-1 +kerning first=81 second=85 amount=-1 +kerning first=78 second=339 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=279 second=347 amount=-1 +kerning first=219 second=339 amount=-1 +kerning first=262 second=313 amount=-1 +kerning first=344 second=8250 amount=-1 +kerning first=217 second=290 amount=-1 +kerning first=207 second=347 amount=-1 +kerning first=66 second=347 amount=-1 +kerning first=107 second=8218 amount=-1 +kerning first=1051 second=1037 amount=-1 +kerning first=272 second=8250 amount=-1 +kerning first=45 second=109 amount=-1 +kerning first=323 second=382 amount=-1 +kerning first=305 second=287 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=325 second=290 amount=-1 +kerning first=269 second=287 amount=-1 +kerning first=85 second=313 amount=-1 +kerning first=200 second=8250 amount=-1 +kerning first=233 second=287 amount=-1 +kerning first=200 second=371 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=67 second=282 amount=-1 +kerning first=1091 second=1090 amount=-1 +kerning first=291 second=289 amount=-1 +kerning first=275 second=234 amount=-1 +kerning first=255 second=289 amount=-1 +kerning first=316 second=339 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=363 second=289 amount=-1 +kerning first=209 second=66 amount=-1 +kerning first=197 second=8220 amount=-2 +kerning first=206 second=330 amount=-1 +kerning first=1055 second=1105 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=199 second=232 amount=-1 +kerning first=203 second=219 amount=-1 +kerning first=272 second=278 amount=-1 +kerning first=1039 second=1070 amount=-1 +kerning first=266 second=311 amount=-1 +kerning first=316 second=122 amount=-1 +kerning first=200 second=278 amount=-1 +kerning first=81 second=280 amount=-1 +kerning first=338 second=199 amount=-1 +kerning first=1046 second=1082 amount=-1 +kerning first=8250 second=264 amount=-1 +kerning first=244 second=122 amount=-1 +kerning first=307 second=232 amount=-1 +kerning first=103 second=107 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=271 second=232 amount=-1 +kerning first=67 second=107 amount=-1 +kerning first=281 second=103 amount=-1 +kerning first=235 second=232 amount=-1 +kerning first=209 second=335 amount=-1 +kerning first=368 second=225 amount=-1 +kerning first=80 second=269 amount=-1 +kerning first=116 second=269 amount=-1 +kerning first=281 second=335 amount=-1 +kerning first=1031 second=1062 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=89 second=45 amount=-2 +kerning first=199 second=311 amount=-1 +kerning first=281 second=8217 amount=-2 +kerning first=257 second=269 amount=-1 +kerning first=198 second=298 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=270 second=298 amount=-1 +kerning first=221 second=269 amount=-1 +kerning first=193 second=98 amount=-1 +kerning first=197 second=85 amount=-1 +kerning first=233 second=8220 amount=-2 +kerning first=323 second=101 amount=-1 +kerning first=171 second=346 amount=-1 +kerning first=365 second=269 amount=-1 +kerning first=1058 second=1081 amount=-1 +kerning first=333 second=46 amount=-1 +kerning first=104 second=335 amount=-1 +kerning first=73 second=241 amount=-1 +kerning first=296 second=225 amount=-1 +kerning first=370 second=274 amount=-1 +kerning first=81 second=70 amount=-1 +kerning first=1043 second=1087 amount=-1 +kerning first=221 second=67 amount=-1 +kerning first=298 second=274 amount=-1 +kerning first=71 second=207 amount=-1 +kerning first=268 second=104 amount=-1 +kerning first=80 second=67 amount=-1 +kerning first=334 second=274 amount=-1 +kerning first=70 second=250 amount=-1 +kerning first=196 second=104 amount=-1 +kerning first=262 second=274 amount=-1 +kerning first=232 second=104 amount=-1 +kerning first=283 second=250 amount=-1 +kerning first=120 second=46 amount=-1 +kerning first=212 second=207 amount=-1 +kerning first=325 second=366 amount=-1 +kerning first=368 second=260 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=370 second=259 amount=-1 +kerning first=282 second=262 amount=-1 +kerning first=204 second=200 amount=-1 +kerning first=267 second=187 amount=-1 +kerning first=362 second=76 amount=-1 +kerning first=298 second=259 amount=-1 +kerning first=375 second=8250 amount=-1 +kerning first=109 second=269 amount=-1 +kerning first=364 second=357 amount=-1 +kerning first=1051 second=1053 amount=-1 +kerning first=1038 second=1074 amount=-1 +kerning first=290 second=76 amount=-1 +kerning first=200 second=357 amount=-1 +kerning first=1118 second=1117 amount=-1 +kerning first=111 second=378 amount=-1 +kerning first=218 second=76 amount=-1 +kerning first=77 second=76 amount=-1 +kerning first=220 second=357 amount=-1 +kerning first=366 second=70 amount=-1 +kerning first=366 second=280 amount=-1 +kerning first=1059 second=1084 amount=-1 +kerning first=229 second=113 amount=-1 +kerning first=330 second=280 amount=-1 +kerning first=352 second=187 amount=-1 +kerning first=277 second=116 amount=-1 +kerning first=1088 second=1083 amount=-1 +kerning first=85 second=259 amount=-1 +kerning first=280 second=75 amount=-1 +kerning first=196 second=375 amount=-1 +kerning first=217 second=366 amount=-1 +kerning first=207 second=271 amount=-1 +kerning first=1067 second=1108 amount=-1 +kerning first=284 second=207 amount=-1 +kerning first=187 second=268 amount=-1 +kerning first=368 second=210 amount=-1 +kerning first=279 second=271 amount=-1 +kerning first=264 second=204 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=296 second=210 amount=-1 +kerning first=1031 second=1108 amount=-1 +kerning first=214 second=256 amount=-1 +kerning first=1058 second=1096 amount=-1 +kerning first=1048 second=1047 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=356 second=242 amount=-1 +kerning first=201 second=369 amount=-1 +kerning first=266 second=257 amount=-1 +kerning first=117 second=333 amount=-1 +kerning first=352 second=209 amount=-1 +kerning first=8217 second=324 amount=-1 +kerning first=302 second=257 amount=-1 +kerning first=1064 second=1113 amount=-1 +kerning first=233 second=233 amount=-1 +kerning first=280 second=209 amount=-1 +kerning first=296 second=279 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=269 second=233 amount=-1 +kerning first=263 second=316 amount=-1 +kerning first=224 second=279 amount=-1 +kerning first=1107 second=1102 amount=-1 +kerning first=264 second=327 amount=-1 +kerning first=78 second=235 amount=-1 +kerning first=207 second=213 amount=-1 +kerning first=286 second=187 amount=-1 +kerning first=374 second=380 amount=-1 +kerning first=305 second=233 amount=-1 +kerning first=219 second=235 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=291 second=235 amount=-1 +kerning first=197 second=371 amount=-1 +kerning first=8222 second=245 amount=-1 +kerning first=327 second=235 amount=-1 +kerning first=1034 second=1045 amount=-1 +kerning first=90 second=8221 amount=-1 +kerning first=363 second=235 amount=-1 +kerning first=313 second=218 amount=-1 +kerning first=89 second=380 amount=-1 +kerning first=200 second=336 amount=-1 +kerning first=291 second=231 amount=-1 +kerning first=108 second=318 amount=-1 +kerning first=116 second=281 amount=-1 +kerning first=259 second=283 amount=-1 +kerning first=8222 second=89 amount=-2 +kerning first=327 second=231 amount=-1 +kerning first=1027 second=1071 amount=-1 +kerning first=363 second=231 amount=-1 +kerning first=205 second=218 amount=-1 +kerning first=73 second=187 amount=-1 +kerning first=1067 second=1104 amount=-1 +kerning first=233 second=248 amount=-1 +kerning first=266 second=380 amount=-1 +kerning first=270 second=88 amount=-1 +kerning first=230 second=380 amount=-1 +kerning first=282 second=8221 amount=-1 +kerning first=305 second=248 amount=-1 +kerning first=202 second=75 amount=-1 +kerning first=1031 second=1104 amount=-1 +kerning first=269 second=248 amount=-1 +kerning first=302 second=380 amount=-1 +kerning first=282 second=220 amount=-1 +kerning first=70 second=196 amount=-1 +kerning first=85 second=274 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=8250 second=260 amount=-1 +kerning first=114 second=8218 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=368 second=279 amount=-1 +kerning first=367 second=283 amount=-1 +kerning first=374 second=257 amount=-1 +kerning first=287 second=367 amount=-1 +kerning first=201 second=79 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=234 second=244 amount=-1 +kerning first=74 second=367 amount=-1 +kerning first=66 second=217 amount=-1 +kerning first=252 second=103 amount=-1 +kerning first=356 second=261 amount=-1 +kerning first=335 second=114 amount=-1 +kerning first=263 second=45 amount=-1 +kerning first=1051 second=1107 amount=-1 +kerning first=207 second=217 amount=-1 +kerning first=84 second=115 amount=-1 +kerning first=74 second=252 amount=-1 +kerning first=227 second=114 amount=-1 +kerning first=206 second=344 amount=-1 +kerning first=315 second=217 amount=-1 +kerning first=69 second=67 amount=-1 +kerning first=334 second=205 amount=-1 +kerning first=225 second=8217 amount=-2 +kerning first=1046 second=1063 amount=-1 +kerning first=370 second=205 amount=-1 +kerning first=263 second=114 amount=-1 +kerning first=278 second=344 amount=-1 +kerning first=1043 second=1072 amount=-1 +kerning first=80 second=284 amount=-1 +kerning first=73 second=310 amount=-1 +kerning first=221 second=353 amount=-1 +kerning first=264 second=351 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=72 second=368 amount=-1 +kerning first=86 second=114 amount=-1 +kerning first=78 second=231 amount=-1 +kerning first=1052 second=1095 amount=-1 +kerning first=99 second=345 amount=-1 +kerning first=85 second=205 amount=-1 +kerning first=197 second=220 amount=-1 +kerning first=368 second=206 amount=-1 +kerning first=367 second=8221 amount=-1 +kerning first=204 second=345 amount=-1 +kerning first=261 second=8250 amount=-1 +kerning first=296 second=206 amount=-1 +kerning first=240 second=345 amount=-1 +kerning first=1036 second=1098 amount=-1 +kerning first=321 second=368 amount=-1 +kerning first=362 second=362 amount=-1 +kerning first=77 second=110 amount=-1 +kerning first=316 second=111 amount=-1 +kerning first=209 second=266 amount=-1 +kerning first=267 second=8221 amount=-2 +kerning first=246 second=106 amount=-1 +kerning first=234 second=281 amount=-1 +kerning first=1053 second=1037 amount=-1 +kerning first=339 second=8221 amount=-2 +kerning first=213 second=368 amount=-1 +kerning first=364 second=71 amount=-1 +kerning first=187 second=214 amount=-1 +kerning first=116 second=353 amount=-1 +kerning first=77 second=362 amount=-1 +kerning first=310 second=223 amount=-1 +kerning first=274 second=223 amount=-1 +kerning first=1031 second=1052 amount=-1 +kerning first=339 second=249 amount=-1 +kerning first=45 second=286 amount=-1 +kerning first=375 second=249 amount=-1 +kerning first=330 second=226 amount=-1 +kerning first=287 second=252 amount=-1 +kerning first=314 second=275 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=325 second=80 amount=-1 +kerning first=1039 second=1089 amount=-1 +kerning first=366 second=226 amount=-1 +kerning first=101 second=275 amount=-1 +kerning first=218 second=362 amount=-1 +kerning first=310 second=8217 amount=-1 +kerning first=206 second=275 amount=-1 +kerning first=231 second=249 amount=-1 +kerning first=86 second=45 amount=-2 +kerning first=290 second=362 amount=-1 +kerning first=346 second=223 amount=-1 +kerning first=1055 second=1086 amount=-1 +kerning first=267 second=249 amount=-1 +kerning first=122 second=45 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=87 second=243 amount=-1 +kerning first=290 second=217 amount=-1 +kerning first=345 second=224 amount=-1 +kerning first=286 second=327 amount=-1 +kerning first=228 second=243 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=362 second=217 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=324 second=45 amount=-1 +kerning first=296 second=353 amount=-1 +kerning first=264 second=243 amount=-1 +kerning first=364 second=249 amount=-1 +kerning first=217 second=71 amount=-1 +kerning first=252 second=45 amount=-1 +kerning first=262 second=344 amount=-1 +kerning first=368 second=353 amount=-1 +kerning first=288 second=45 amount=-1 +kerning first=275 second=275 amount=-1 +kerning first=219 second=68 amount=-1 +kerning first=279 second=252 amount=-1 +kerning first=214 second=80 amount=-1 +kerning first=1056 second=1045 amount=-1 +kerning first=1062 second=1114 amount=-1 +kerning first=1051 second=1062 amount=-1 +kerning first=240 second=267 amount=-1 +kerning first=1049 second=1097 amount=-1 +kerning first=199 second=318 amount=-1 +kerning first=8222 second=67 amount=-1 +kerning first=235 second=318 amount=-1 +kerning first=86 second=336 amount=-1 +kerning first=69 second=370 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=286 second=80 amount=-1 +kerning first=282 second=223 amount=-1 +kerning first=263 second=97 amount=-1 +kerning first=72 second=116 amount=-1 +kerning first=267 second=234 amount=-1 +kerning first=231 second=234 amount=-1 +kerning first=212 second=88 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=339 second=234 amount=-1 +kerning first=1065 second=1085 amount=-1 +kerning first=69 second=223 amount=-1 +kerning first=217 second=258 amount=-1 +kerning first=269 second=226 amount=-1 +kerning first=80 second=362 amount=-1 +kerning first=1054 second=1053 amount=-1 +kerning first=262 second=330 amount=-1 +kerning first=1050 second=1076 amount=-1 +kerning first=206 second=266 amount=-1 +kerning first=220 second=249 amount=-1 +kerning first=207 second=235 amount=-1 +kerning first=1118 second=1084 amount=-1 +kerning first=278 second=266 amount=-1 +kerning first=325 second=71 amount=-1 +kerning first=77 second=217 amount=-1 +kerning first=279 second=232 amount=-1 +kerning first=304 second=200 amount=-1 +kerning first=207 second=232 amount=-1 +kerning first=268 second=200 amount=-1 +kerning first=218 second=217 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=262 second=98 amount=-1 +kerning first=232 second=267 amount=-1 +kerning first=268 second=267 amount=-1 +kerning first=1052 second=1041 amount=-1 +kerning first=1050 second=1096 amount=-1 +kerning first=304 second=267 amount=-1 +kerning first=121 second=98 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=85 second=345 amount=-1 +kerning first=121 second=345 amount=-1 +kerning first=330 second=241 amount=-1 +kerning first=8250 second=206 amount=-1 +kerning first=1078 second=1089 amount=-1 +kerning first=226 second=345 amount=-1 +kerning first=69 second=323 amount=-1 +kerning first=262 second=345 amount=-1 +kerning first=302 second=302 amount=-1 +kerning first=298 second=345 amount=-1 +kerning first=338 second=302 amount=-1 +kerning first=233 second=46 amount=-1 +kerning first=8250 second=193 amount=-1 +kerning first=370 second=345 amount=-1 +kerning first=266 second=302 amount=-1 +kerning first=310 second=363 amount=-1 +kerning first=1027 second=1080 amount=-1 +kerning first=45 second=241 amount=-1 +kerning first=269 second=46 amount=-1 +kerning first=1067 second=1050 amount=-1 +kerning first=1053 second=1069 amount=-1 +kerning first=356 second=335 amount=-1 +kerning first=249 second=114 amount=-1 +kerning first=1031 second=1050 amount=-1 +kerning first=8218 second=364 amount=-1 +kerning first=210 second=370 amount=-1 +kerning first=73 second=110 amount=-1 +kerning first=70 second=336 amount=-1 +kerning first=370 second=200 amount=-1 +kerning first=108 second=114 amount=-1 +kerning first=316 second=378 amount=-1 +kerning first=72 second=114 amount=-1 +kerning first=204 second=81 amount=-1 +kerning first=282 second=323 amount=-1 +kerning first=291 second=250 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=204 second=207 amount=-1 +kerning first=219 second=250 amount=-1 +kerning first=282 second=370 amount=-1 +kerning first=77 second=284 amount=-1 +kerning first=275 second=115 amount=-1 +kerning first=206 second=199 amount=-1 +kerning first=67 second=378 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=219 second=216 amount=-1 +kerning first=278 second=199 amount=-1 +kerning first=258 second=44 amount=-1 +kerning first=108 second=314 amount=-1 +kerning first=207 second=72 amount=-1 +kerning first=1031 second=1037 amount=-1 +kerning first=68 second=344 amount=-1 +kerning first=325 second=281 amount=-1 +kerning first=1067 second=1037 amount=-1 +kerning first=209 second=344 amount=-1 +kerning first=1066 second=1071 amount=-1 +kerning first=264 second=310 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=214 second=327 amount=-1 +kerning first=209 second=110 amount=-1 +kerning first=108 second=117 amount=-1 +kerning first=45 second=334 amount=-1 +kerning first=86 second=8222 amount=-2 +kerning first=211 second=282 amount=-1 +kerning first=330 second=334 amount=-1 +kerning first=70 second=282 amount=-1 +kerning first=374 second=232 amount=-1 +kerning first=258 second=334 amount=-1 +kerning first=362 second=230 amount=-1 +kerning first=267 second=45 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=366 second=334 amount=-1 +kerning first=258 second=87 amount=-1 +kerning first=218 second=230 amount=-1 +kerning first=72 second=205 amount=-1 +kerning first=323 second=313 amount=-1 +kerning first=86 second=197 amount=-1 +kerning first=121 second=115 amount=-1 +kerning first=229 second=242 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=1064 second=1052 amount=-1 +kerning first=81 second=87 amount=-1 +kerning first=226 second=291 amount=-1 +kerning first=45 second=87 amount=-2 +kerning first=201 second=296 amount=-1 +kerning first=121 second=291 amount=-1 +kerning first=252 second=279 amount=-1 +kerning first=356 second=101 amount=-1 +kerning first=206 second=212 amount=-1 +kerning first=339 second=108 amount=-1 +kerning first=375 second=108 amount=-1 +kerning first=194 second=8220 amount=-2 +kerning first=1039 second=1098 amount=-1 +kerning first=1046 second=1117 amount=-1 +kerning first=8217 second=257 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=324 second=279 amount=-1 +kerning first=82 second=8218 amount=-1 +kerning first=268 second=254 amount=-1 +kerning first=252 second=99 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=222 second=187 amount=-1 +kerning first=1046 second=1119 amount=-1 +kerning first=81 second=187 amount=-1 +kerning first=307 second=245 amount=-1 +kerning first=99 second=328 amount=-1 +kerning first=225 second=8250 amount=-1 +kerning first=1118 second=1119 amount=-1 +kerning first=271 second=245 amount=-1 +kerning first=225 second=245 amount=-1 +kerning first=235 second=245 amount=-1 +kerning first=366 second=187 amount=-2 +kerning first=199 second=245 amount=-1 +kerning first=230 second=107 amount=-1 +kerning first=242 second=345 amount=-1 +kerning first=81 second=206 amount=-1 +kerning first=324 second=99 amount=-1 +kerning first=224 second=335 amount=-1 +kerning first=118 second=8218 amount=-1 +kerning first=8222 second=254 amount=-1 +kerning first=338 second=8220 amount=-1 +kerning first=269 second=380 amount=-1 +kerning first=203 second=202 amount=-1 +kerning first=266 second=248 amount=-1 +kerning first=230 second=248 amount=-1 +kerning first=260 second=8249 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=327 second=270 amount=-1 +kerning first=352 second=218 amount=-1 +kerning first=338 second=75 amount=-1 +kerning first=302 second=75 amount=-1 +kerning first=280 second=218 amount=-1 +kerning first=89 second=248 amount=-1 +kerning first=266 second=75 amount=-1 +kerning first=8218 second=305 amount=-1 +kerning first=367 second=231 amount=-1 +kerning first=283 second=357 amount=-1 +kerning first=350 second=201 amount=-1 +kerning first=314 second=242 amount=-1 +kerning first=231 second=307 amount=-1 +kerning first=323 second=66 amount=-1 +kerning first=78 second=270 amount=-1 +kerning first=195 second=307 amount=-1 +kerning first=199 second=264 amount=-1 +kerning first=89 second=8220 amount=-1 +kerning first=1055 second=1073 amount=-1 +kerning first=362 second=171 amount=-2 +kerning first=267 second=307 amount=-1 +kerning first=267 second=108 amount=-1 +kerning first=211 second=209 amount=-1 +kerning first=219 second=270 amount=-1 +kerning first=118 second=367 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=274 second=362 amount=-1 +kerning first=219 second=196 amount=-1 +kerning first=282 second=69 amount=-1 +kerning first=195 second=108 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=304 second=205 amount=-1 +kerning first=266 second=8220 amount=-1 +kerning first=233 second=380 amount=-1 +kerning first=231 second=108 amount=-1 +kerning first=74 second=66 amount=-1 +kerning first=70 second=209 amount=-1 +kerning first=230 second=8220 amount=-2 +kerning first=245 second=103 amount=-1 +kerning first=198 second=205 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=221 second=74 amount=-1 +kerning first=207 second=325 amount=-1 +kerning first=66 second=252 amount=-1 +kerning first=1067 second=1091 amount=-1 +kerning first=104 second=103 amount=-1 +kerning first=70 second=334 amount=-1 +kerning first=279 second=8220 amount=-2 +kerning first=1049 second=1030 amount=-1 +kerning first=105 second=269 amount=-1 +kerning first=106 second=279 amount=-1 +kerning first=1052 second=1034 amount=-1 +kerning first=118 second=187 amount=-1 +kerning first=69 second=69 amount=-1 +kerning first=264 second=364 amount=-1 +kerning first=73 second=273 amount=-1 +kerning first=85 second=44 amount=-2 +kerning first=200 second=304 amount=-1 +kerning first=67 second=218 amount=-1 +kerning first=121 second=44 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=334 second=44 amount=-1 +kerning first=246 second=316 amount=-1 +kerning first=325 second=337 amount=-1 +kerning first=368 second=193 amount=-1 +kerning first=302 second=248 amount=-1 +kerning first=87 second=117 amount=-1 +kerning first=74 second=275 amount=-1 +kerning first=354 second=269 amount=-1 +kerning first=374 second=248 amount=-1 +kerning first=1071 second=1048 amount=-1 +kerning first=122 second=171 amount=-1 +kerning first=263 second=365 amount=-1 +kerning first=217 second=216 amount=-1 +kerning first=8222 second=101 amount=-1 +kerning first=368 second=65 amount=-1 +kerning first=1030 second=1101 amount=-1 +kerning first=1048 second=1030 amount=-1 +kerning first=1036 second=1074 amount=-1 +kerning first=263 second=171 amount=-1 +kerning first=1038 second=1088 amount=-1 +kerning first=112 second=8221 amount=-2 +kerning first=86 second=365 amount=-1 +kerning first=289 second=117 amount=-1 +kerning first=274 second=203 amount=-1 +kerning first=1027 second=1079 amount=-1 +kerning first=213 second=260 amount=-1 +kerning first=253 second=117 amount=-1 +kerning first=217 second=117 amount=-1 +kerning first=346 second=203 amount=-1 +kerning first=366 second=100 amount=-1 +kerning first=1057 second=1117 amount=-1 +kerning first=74 second=220 amount=-1 +kerning first=330 second=100 amount=-1 +kerning first=202 second=203 amount=-1 +kerning first=367 second=246 amount=-1 +kerning first=115 second=108 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=1048 second=1025 amount=-1 +kerning first=366 second=65 amount=-1 +kerning first=86 second=171 amount=-2 +kerning first=68 second=298 amount=-1 +kerning first=290 second=330 amount=-1 +kerning first=352 second=77 amount=-1 +kerning first=103 second=8222 amount=-1 +kerning first=362 second=325 amount=-1 +kerning first=364 second=103 amount=-1 +kerning first=67 second=8222 amount=-1 +kerning first=198 second=251 amount=-1 +kerning first=328 second=103 amount=-1 +kerning first=280 second=77 amount=-1 +kerning first=8216 second=364 amount=-1 +kerning first=234 second=251 amount=-1 +kerning first=364 second=325 amount=-1 +kerning first=280 second=304 amount=-1 +kerning first=220 second=103 amount=-1 +kerning first=291 second=324 amount=-1 +kerning first=212 second=317 amount=-1 +kerning first=218 second=330 amount=-1 +kerning first=282 second=75 amount=-1 +kerning first=235 second=277 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=323 second=220 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=267 second=369 amount=-1 +kerning first=291 second=109 amount=-1 +kerning first=221 second=227 amount=-1 +kerning first=356 second=281 amount=-1 +kerning first=324 second=333 amount=-1 +kerning first=1041 second=1091 amount=-1 +kerning first=327 second=109 amount=-1 +kerning first=70 second=68 amount=-1 +kerning first=1048 second=1092 amount=-1 +kerning first=344 second=211 amount=-1 +kerning first=219 second=109 amount=-1 +kerning first=211 second=68 amount=-1 +kerning first=352 second=8222 amount=-1 +kerning first=252 second=333 amount=-1 +kerning first=257 second=316 amount=-1 +kerning first=362 second=205 amount=-1 +kerning first=1060 second=1048 amount=-1 +kerning first=280 second=8222 amount=-1 +kerning first=8222 second=113 amount=-1 +kerning first=204 second=382 amount=-1 +kerning first=244 second=8222 amount=-1 +kerning first=1047 second=1064 amount=-1 +kerning first=200 second=211 amount=-1 +kerning first=240 second=382 amount=-1 +kerning first=289 second=112 amount=-1 +kerning first=325 second=323 amount=-1 +kerning first=199 second=210 amount=-1 +kerning first=1049 second=1024 amount=-1 +kerning first=204 second=315 amount=-1 +kerning first=281 second=251 amount=-1 +kerning first=233 second=339 amount=-1 +kerning first=214 second=221 amount=-1 +kerning first=77 second=111 amount=-1 +kerning first=266 second=229 amount=-1 +kerning first=368 second=245 amount=-1 +kerning first=117 second=233 amount=-1 +kerning first=218 second=111 amount=-1 +kerning first=296 second=245 amount=-1 +kerning first=78 second=109 amount=-1 +kerning first=1039 second=1057 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=8222 second=213 amount=-1 +kerning first=287 second=120 amount=-1 +kerning first=305 second=339 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=214 second=219 amount=-1 +kerning first=269 second=339 amount=-1 +kerning first=73 second=219 amount=-1 +kerning first=330 second=233 amount=-1 +kerning first=8218 second=71 amount=-1 +kerning first=1058 second=1118 amount=-1 +kerning first=366 second=233 amount=-1 +kerning first=65 second=374 amount=-1 +kerning first=201 second=332 amount=-1 +kerning first=209 second=298 amount=-1 +kerning first=84 second=224 amount=-1 +kerning first=325 second=212 amount=-1 +kerning first=117 second=277 amount=-1 +kerning first=224 second=8217 amount=-2 +kerning first=364 second=283 amount=-1 +kerning first=1056 second=1104 amount=-1 +kerning first=260 second=8217 amount=-2 +kerning first=8222 second=121 amount=-1 +kerning first=355 second=228 amount=-1 +kerning first=352 second=369 amount=-1 +kerning first=281 second=357 amount=-1 +kerning first=283 second=8217 amount=-2 +kerning first=217 second=212 amount=-1 +kerning first=83 second=8217 amount=-1 +kerning first=352 second=85 amount=-1 +kerning first=325 second=101 amount=-1 +kerning first=8250 second=65 amount=-1 +kerning first=224 second=245 amount=-1 +kerning first=326 second=111 amount=-1 +kerning first=280 second=85 amount=-1 +kerning first=362 second=111 amount=-1 +kerning first=1051 second=1054 amount=-1 +kerning first=332 second=8217 amount=-2 +kerning first=368 second=8217 amount=-1 +kerning first=199 second=331 amount=-1 +kerning first=67 second=85 amount=-1 +kerning first=230 second=289 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=304 second=67 amount=-1 +kerning first=70 second=241 amount=-1 +kerning first=1051 second=1075 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=77 second=209 amount=-1 +kerning first=350 second=366 amount=-1 +kerning first=221 second=262 amount=-1 +kerning first=268 second=67 amount=-1 +kerning first=220 second=195 amount=-1 +kerning first=74 second=274 amount=-1 +kerning first=266 second=216 amount=-1 +kerning first=232 second=113 amount=-1 +kerning first=298 second=79 amount=-1 +kerning first=1041 second=1049 amount=-1 +kerning first=8222 second=286 amount=-1 +kerning first=278 second=366 amount=-1 +kerning first=268 second=113 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=70 second=216 amount=-1 +kerning first=370 second=79 amount=-1 +kerning first=79 second=195 amount=-1 +kerning first=302 second=216 amount=-1 +kerning first=364 second=195 amount=-1 +kerning first=1041 second=1113 amount=-1 +kerning first=235 second=104 amount=-1 +kerning first=263 second=225 amount=-1 +kerning first=8217 second=365 amount=-1 +kerning first=72 second=206 amount=-1 +kerning first=280 second=250 amount=-1 +kerning first=1069 second=1071 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=221 second=261 amount=-1 +kerning first=199 second=104 amount=-1 +kerning first=209 second=357 amount=-1 +kerning first=70 second=70 amount=-1 +kerning first=8218 second=257 amount=-1 +kerning first=251 second=345 amount=-1 +kerning first=1048 second=1084 amount=-1 +kerning first=287 second=345 amount=-1 +kerning first=365 second=335 amount=-1 +kerning first=323 second=274 amount=-1 +kerning first=323 second=345 amount=-1 +kerning first=258 second=46 amount=-1 +kerning first=352 second=250 amount=-1 +kerning first=222 second=46 amount=-1 +kerning first=202 second=368 amount=-1 +kerning first=346 second=201 amount=-1 +kerning first=283 second=122 amount=-1 +kerning first=77 second=271 amount=-1 +kerning first=79 second=8221 amount=-2 +kerning first=274 second=368 amount=-1 +kerning first=304 second=213 amount=-1 +kerning first=323 second=207 amount=-1 +kerning first=245 second=46 amount=-1 +kerning first=274 second=201 amount=-1 +kerning first=310 second=368 amount=-1 +kerning first=268 second=213 amount=-1 +kerning first=277 second=107 amount=-1 +kerning first=8222 second=281 amount=-1 +kerning first=70 second=122 amount=-1 +kerning first=202 second=201 amount=-1 +kerning first=103 second=250 amount=-1 +kerning first=99 second=369 amount=-1 +kerning first=256 second=8221 amount=-2 +kerning first=103 second=275 amount=-1 +kerning first=263 second=311 amount=-1 +kerning first=209 second=187 amount=-1 +kerning first=328 second=8221 amount=-2 +kerning first=269 second=326 amount=-1 +kerning first=217 second=204 amount=-1 +kerning first=203 second=252 amount=-1 +kerning first=364 second=8221 amount=-1 +kerning first=374 second=216 amount=-1 +kerning first=198 second=8217 amount=-1 +kerning first=323 second=45 amount=-1 +kerning first=344 second=336 amount=-1 +kerning first=202 second=116 amount=-1 +kerning first=362 second=271 amount=-1 +kerning first=346 second=368 amount=-1 +kerning first=74 second=207 amount=-1 +kerning first=327 second=378 amount=-1 +kerning first=1054 second=1041 amount=-1 +kerning first=325 second=204 amount=-1 +kerning first=291 second=378 amount=-1 +kerning first=80 second=262 amount=-1 +kerning first=362 second=198 amount=-1 +kerning first=87 second=8218 amount=-2 +kerning first=220 second=268 amount=-1 +kerning first=1068 second=1068 amount=-1 +kerning first=187 second=86 amount=-2 +kerning first=89 second=235 amount=-1 +kerning first=339 second=103 amount=-1 +kerning first=323 second=347 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=364 second=268 amount=-1 +kerning first=230 second=235 amount=-1 +kerning first=287 second=347 amount=-1 +kerning first=266 second=235 amount=-1 +kerning first=302 second=235 amount=-1 +kerning first=209 second=290 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=74 second=347 amount=-1 +kerning first=262 second=350 amount=-1 +kerning first=374 second=235 amount=-1 +kerning first=218 second=198 amount=-1 +kerning first=1060 second=1056 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=281 second=245 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=1065 second=1077 amount=-1 +kerning first=86 second=363 amount=-1 +kerning first=199 second=277 amount=-1 +kerning first=1058 second=1073 amount=-1 +kerning first=8217 second=225 amount=-1 +kerning first=8217 second=378 amount=-1 +kerning first=263 second=363 amount=-1 +kerning first=362 second=213 amount=-1 +kerning first=1033 second=1062 amount=-1 +kerning first=298 second=350 amount=-1 +kerning first=307 second=277 amount=-1 +kerning first=271 second=277 amount=-1 +kerning first=362 second=366 amount=-1 +kerning first=1118 second=1087 amount=-1 +kerning first=67 second=231 amount=-1 +kerning first=85 second=79 amount=-1 +kerning first=104 second=244 amount=-1 +kerning first=362 second=338 amount=-1 +kerning first=209 second=244 amount=-1 +kerning first=8222 second=267 amount=-1 +kerning first=356 second=283 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=281 second=244 amount=-1 +kerning first=210 second=82 amount=-1 +kerning first=316 second=231 amount=-1 +kerning first=268 second=286 amount=-1 +kerning first=218 second=338 amount=-1 +kerning first=212 second=354 amount=-1 +kerning first=304 second=286 amount=-1 +kerning first=87 second=351 amount=-1 +kerning first=282 second=82 amount=-1 +kerning first=307 second=8249 amount=-1 +kerning first=8222 second=289 amount=-1 +kerning first=258 second=8249 amount=-1 +kerning first=100 second=235 amount=-1 +kerning first=204 second=79 amount=-1 +kerning first=85 second=66 amount=-1 +kerning first=370 second=283 amount=-1 +kerning first=81 second=209 amount=-1 +kerning first=205 second=235 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=78 second=248 amount=-1 +kerning first=304 second=366 amount=-1 +kerning first=298 second=283 amount=-1 +kerning first=277 second=235 amount=-1 +kerning first=70 second=371 amount=-1 +kerning first=325 second=331 amount=-1 +kerning first=74 second=261 amount=-1 +kerning first=226 second=283 amount=-1 +kerning first=262 second=283 amount=-1 +kerning first=1039 second=1076 amount=-1 +kerning first=1042 second=1067 amount=-1 +kerning first=1038 second=1080 amount=-1 +kerning first=103 second=380 amount=-1 +kerning first=244 second=380 amount=-1 +kerning first=45 second=374 amount=-2 +kerning first=1062 second=1076 amount=-1 +kerning first=370 second=66 amount=-1 +kerning first=366 second=209 amount=-1 +kerning first=334 second=66 amount=-1 +kerning first=73 second=46 amount=-1 +kerning first=80 second=213 amount=-1 +kerning first=330 second=209 amount=-1 +kerning first=298 second=66 amount=-1 +kerning first=262 second=66 amount=-1 +kerning first=266 second=270 amount=-1 +kerning first=302 second=270 amount=-1 +kerning first=258 second=336 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=287 second=242 amount=-1 +kerning first=287 second=44 amount=-1 +kerning first=218 second=252 amount=-1 +kerning first=330 second=336 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=366 second=336 amount=-1 +kerning first=1067 second=1045 amount=-1 +kerning first=1031 second=1045 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=362 second=252 amount=-1 +kerning first=286 second=220 amount=-1 +kerning first=116 second=187 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=220 second=244 amount=-1 +kerning first=305 second=231 amount=-1 +kerning first=296 second=201 amount=-1 +kerning first=327 second=218 amount=-1 +kerning first=363 second=248 amount=-1 +kerning first=220 second=214 amount=-1 +kerning first=366 second=371 amount=-1 +kerning first=212 second=115 amount=-1 +kerning first=258 second=290 amount=-1 +kerning first=375 second=104 amount=-1 +kerning first=328 second=244 amount=-1 +kerning first=1041 second=1071 amount=-1 +kerning first=1042 second=1039 amount=-1 +kerning first=364 second=244 amount=-1 +kerning first=1055 second=1045 amount=-1 +kerning first=219 second=218 amount=-1 +kerning first=219 second=248 amount=-1 +kerning first=364 second=214 amount=-1 +kerning first=233 second=231 amount=-1 +kerning first=1055 second=1083 amount=-1 +kerning first=291 second=248 amount=-1 +kerning first=269 second=231 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=1041 second=1041 amount=-1 +kerning first=97 second=314 amount=-1 +kerning first=255 second=353 amount=-1 +kerning first=228 second=275 amount=-1 +kerning first=275 second=243 amount=-1 +kerning first=235 second=353 amount=-1 +kerning first=1066 second=1049 amount=-1 +kerning first=221 second=8220 amount=-1 +kerning first=307 second=279 amount=-1 +kerning first=264 second=275 amount=-1 +kerning first=74 second=68 amount=-1 +kerning first=241 second=45 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=1055 second=1081 amount=-1 +kerning first=100 second=45 amount=-1 +kerning first=1091 second=1081 amount=-1 +kerning first=281 second=249 amount=-1 +kerning first=87 second=275 amount=-1 +kerning first=85 second=302 amount=-1 +kerning first=108 second=363 amount=-1 +kerning first=207 second=284 amount=-1 +kerning first=1042 second=1119 amount=-1 +kerning first=199 second=353 amount=-1 +kerning first=80 second=370 amount=-1 +kerning first=199 second=223 amount=-1 +kerning first=203 second=80 amount=-1 +kerning first=267 second=347 amount=-1 +kerning first=74 second=116 amount=-1 +kerning first=268 second=232 amount=-1 +kerning first=345 second=44 amount=-1 +kerning first=1050 second=1098 amount=-1 +kerning first=232 second=232 amount=-1 +kerning first=196 second=362 amount=-1 +kerning first=207 second=200 amount=-1 +kerning first=268 second=362 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=67 second=226 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=286 second=8250 amount=-1 +kerning first=304 second=232 amount=-1 +kerning first=304 second=362 amount=-1 +kerning first=85 second=296 amount=-1 +kerning first=101 second=234 amount=-1 +kerning first=278 second=71 amount=-1 +kerning first=278 second=209 amount=-1 +kerning first=8222 second=262 amount=-1 +kerning first=334 second=296 amount=-1 +kerning first=327 second=71 amount=-1 +kerning first=8217 second=279 amount=-1 +kerning first=1054 second=1031 amount=-1 +kerning first=75 second=223 amount=-1 +kerning first=230 second=318 amount=-1 +kerning first=206 second=71 amount=-1 +kerning first=298 second=296 amount=-1 +kerning first=85 second=283 amount=-1 +kerning first=262 second=296 amount=-1 +kerning first=314 second=234 amount=-1 +kerning first=74 second=219 amount=-1 +kerning first=201 second=206 amount=-1 +kerning first=1056 second=1037 amount=-1 +kerning first=219 second=8220 amount=-1 +kerning first=268 second=72 amount=-1 +kerning first=1043 second=1089 amount=-1 +kerning first=323 second=315 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=212 second=313 amount=-1 +kerning first=291 second=8220 amount=-2 +kerning first=229 second=111 amount=-1 +kerning first=116 second=267 amount=-1 +kerning first=355 second=287 amount=-1 +kerning first=279 second=254 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=327 second=8220 amount=-1 +kerning first=304 second=72 amount=-1 +kerning first=283 second=287 amount=-1 +kerning first=334 second=88 amount=-1 +kerning first=1060 second=1024 amount=-1 +kerning first=202 second=298 amount=-1 +kerning first=71 second=313 amount=-1 +kerning first=74 second=315 amount=-1 +kerning first=262 second=120 amount=-1 +kerning first=213 second=85 amount=-1 +kerning first=365 second=267 amount=-1 +kerning first=330 second=263 amount=-1 +kerning first=366 second=263 amount=-1 +kerning first=370 second=120 amount=-1 +kerning first=1059 second=1028 amount=-1 +kerning first=214 second=278 amount=-1 +kerning first=187 second=118 amount=-1 +kerning first=221 second=267 amount=-1 +kerning first=296 second=114 amount=-1 +kerning first=1047 second=1083 amount=-1 +kerning first=217 second=278 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=114 second=8220 amount=-1 +kerning first=73 second=278 amount=-1 +kerning first=72 second=334 amount=-1 +kerning first=88 second=81 amount=-1 +kerning first=119 second=114 amount=-1 +kerning first=354 second=45 amount=-1 +kerning first=264 second=115 amount=-1 +kerning first=286 second=278 amount=-1 +kerning first=1062 second=1092 amount=-1 +kerning first=224 second=114 amount=-1 +kerning first=296 second=331 amount=-1 +kerning first=255 second=367 amount=-1 +kerning first=217 second=199 amount=-1 +kerning first=117 second=263 amount=-1 +kerning first=368 second=331 amount=-1 +kerning first=87 second=115 amount=-1 +kerning first=83 second=114 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=219 second=194 amount=-1 +kerning first=325 second=199 amount=-1 +kerning first=1062 second=1116 amount=-1 +kerning first=368 second=363 amount=-1 +kerning first=277 second=365 amount=-1 +kerning first=354 second=74 amount=-1 +kerning first=325 second=310 amount=-1 +kerning first=65 second=361 amount=-1 +kerning first=1042 second=1095 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=288 second=203 amount=-1 +kerning first=217 second=310 amount=-1 +kerning first=350 second=361 amount=-1 +kerning first=364 second=251 amount=-1 +kerning first=235 second=269 amount=-1 +kerning first=271 second=269 amount=-1 +kerning first=83 second=8221 amount=-1 +kerning first=206 second=288 amount=-1 +kerning first=1052 second=1036 amount=-1 +kerning first=213 second=65 amount=-1 +kerning first=197 second=334 amount=-1 +kerning first=366 second=282 amount=-1 +kerning first=330 second=282 amount=-1 +kerning first=200 second=78 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=259 second=246 amount=-1 +kerning first=278 second=288 amount=-1 +kerning first=310 second=355 amount=-1 +kerning first=1059 second=1101 amount=-1 +kerning first=1060 second=1043 amount=-1 +kerning first=203 second=284 amount=-1 +kerning first=77 second=325 amount=-1 +kerning first=1068 second=1055 amount=-1 +kerning first=81 second=282 amount=-1 +kerning first=246 second=318 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=263 second=187 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=8217 second=333 amount=-1 +kerning first=205 second=346 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=197 second=87 amount=-1 +kerning first=290 second=325 amount=-1 +kerning first=267 second=291 amount=-1 +kerning first=315 second=220 amount=-1 +kerning first=226 second=337 amount=-1 +kerning first=355 second=187 amount=-1 +kerning first=118 second=251 amount=-1 +kerning first=1055 second=1051 amount=-1 +kerning first=187 second=251 amount=-1 +kerning first=251 second=287 amount=-1 +kerning first=263 second=279 amount=-1 +kerning first=283 second=187 amount=-1 +kerning first=105 second=245 amount=-1 +kerning first=85 second=337 amount=-1 +kerning first=246 second=8217 amount=-2 +kerning first=282 second=8217 amount=-1 +kerning first=354 second=8217 amount=-1 +kerning first=250 second=171 amount=-1 +kerning first=100 second=99 amount=-1 +kerning first=8222 second=232 amount=-1 +kerning first=67 second=99 amount=-1 +kerning first=192 second=221 amount=-1 +kerning first=205 second=75 amount=-1 +kerning first=277 second=99 amount=-1 +kerning first=211 second=187 amount=-1 +kerning first=354 second=245 amount=-1 +kerning first=1071 second=1119 amount=-1 +kerning first=227 second=279 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=298 second=337 amount=-1 +kerning first=205 second=99 amount=-1 +kerning first=106 second=187 amount=-1 +kerning first=262 second=337 amount=-1 +kerning first=241 second=99 amount=-1 +kerning first=364 second=261 amount=-1 +kerning first=262 second=242 amount=-1 +kerning first=364 second=73 amount=-1 +kerning first=1071 second=1043 amount=-1 +kerning first=1070 second=1043 amount=-1 +kerning first=298 second=242 amount=-1 +kerning first=302 second=99 amount=-1 +kerning first=1059 second=1082 amount=-1 +kerning first=209 second=281 amount=-1 +kerning first=270 second=86 amount=-1 +kerning first=259 second=281 amount=-1 +kerning first=226 second=242 amount=-1 +kerning first=204 second=347 amount=-1 +kerning first=367 second=281 amount=-1 +kerning first=261 second=382 amount=-1 +kerning first=99 second=347 amount=-1 +kerning first=370 second=242 amount=-1 +kerning first=209 second=268 amount=-1 +kerning first=374 second=99 amount=-1 +kerning first=106 second=233 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=220 second=120 amount=-1 +kerning first=264 second=202 amount=-1 +kerning first=219 second=77 amount=-1 +kerning first=296 second=277 amount=-1 +kerning first=78 second=77 amount=-1 +kerning first=8218 second=199 amount=-1 +kerning first=282 second=264 amount=-1 +kerning first=70 second=233 amount=-1 +kerning first=224 second=277 amount=-1 +kerning first=79 second=73 amount=-1 +kerning first=283 second=233 amount=-1 +kerning first=220 second=73 amount=-1 +kerning first=1049 second=1056 amount=-1 +kerning first=368 second=277 amount=-1 +kerning first=69 second=264 amount=-1 +kerning first=271 second=8217 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=307 second=8217 amount=-1 +kerning first=355 second=233 amount=-1 +kerning first=325 second=364 amount=-1 +kerning first=213 second=193 amount=-1 +kerning first=379 second=8217 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=281 second=108 amount=-1 +kerning first=220 second=290 amount=-1 +kerning first=80 second=69 amount=-1 +kerning first=217 second=364 amount=-1 +kerning first=8250 second=114 amount=-1 +kerning first=199 second=8217 amount=-1 +kerning first=252 second=283 amount=-1 +kerning first=235 second=8217 amount=-2 +kerning first=1056 second=1091 amount=-1 +kerning first=245 second=108 amount=-1 +kerning first=207 second=338 amount=-1 +kerning first=202 second=355 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=1042 second=1113 amount=-1 +kerning first=353 second=108 amount=-1 +kerning first=1047 second=1061 amount=-1 +kerning first=67 second=334 amount=-1 +kerning first=84 second=273 amount=-1 +kerning first=80 second=286 amount=-1 +kerning first=89 second=99 amount=-1 +kerning first=211 second=347 amount=-1 +kerning first=275 second=351 amount=-1 +kerning first=272 second=78 amount=-1 +kerning first=364 second=8220 amount=-1 +kerning first=1064 second=1070 amount=-1 +kerning first=221 second=286 amount=-1 +kerning first=213 second=87 amount=-1 +kerning first=310 second=171 amount=-1 +kerning first=86 second=333 amount=-1 +kerning first=263 second=112 amount=-1 +kerning first=346 second=171 amount=-1 +kerning first=1030 second=1095 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=382 second=171 amount=-1 +kerning first=289 second=307 amount=-1 +kerning first=263 second=333 amount=-1 +kerning first=196 second=254 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=232 second=254 amount=-1 +kerning first=252 second=269 amount=-1 +kerning first=227 second=333 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=106 second=263 amount=-1 +kerning first=350 second=117 amount=-1 +kerning first=314 second=117 amount=-1 +kerning first=195 second=374 amount=-1 +kerning first=1071 second=1100 amount=-1 +kerning first=79 second=298 amount=-1 +kerning first=278 second=117 amount=-1 +kerning first=1070 second=1067 amount=-1 +kerning first=97 second=171 amount=-1 +kerning first=1058 second=1083 amount=-1 +kerning first=283 second=100 amount=-1 +kerning first=278 second=212 amount=-1 +kerning first=283 second=263 amount=-1 +kerning first=202 second=171 amount=-1 +kerning first=1052 second=1039 amount=-1 +kerning first=355 second=263 amount=-1 +kerning first=1071 second=1117 amount=-1 +kerning first=274 second=171 amount=-1 +kerning first=345 second=229 amount=-1 +kerning first=1047 second=1118 amount=-1 +kerning first=274 second=206 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=229 second=382 amount=-1 +kerning first=202 second=206 amount=-1 +kerning first=207 second=330 amount=-1 +kerning first=79 second=353 amount=-1 +kerning first=232 second=316 amount=-1 +kerning first=234 second=246 amount=-1 +kerning first=327 second=77 amount=-1 +kerning first=70 second=100 amount=-1 +kerning first=375 second=103 amount=-1 +kerning first=1048 second=1060 amount=-1 +kerning first=196 second=316 amount=-1 +kerning first=121 second=120 amount=-1 +kerning first=1071 second=1077 amount=-1 +kerning first=68 second=8221 amount=-2 +kerning first=66 second=330 amount=-1 +kerning first=268 second=316 amount=-1 +kerning first=70 second=263 amount=-1 +kerning first=346 second=206 amount=-1 +kerning first=104 second=8221 amount=-2 +kerning first=267 second=103 amount=-1 +kerning first=103 second=109 amount=-1 +kerning first=1049 second=1048 amount=-1 +kerning first=234 second=8218 amount=-1 +kerning first=89 second=194 amount=-1 +kerning first=231 second=103 amount=-1 +kerning first=198 second=8218 amount=-1 +kerning first=209 second=8221 amount=-1 +kerning first=304 second=74 amount=-1 +kerning first=366 second=68 amount=-1 +kerning first=245 second=8221 amount=-2 +kerning first=67 second=109 amount=-1 +kerning first=241 second=113 amount=-1 +kerning first=193 second=217 amount=-1 +kerning first=281 second=8221 amount=-2 +kerning first=284 second=313 amount=-1 +kerning first=81 second=68 amount=-1 +kerning first=353 second=8221 amount=-2 +kerning first=270 second=8218 amount=-1 +kerning first=364 second=205 amount=-1 +kerning first=219 second=85 amount=-1 +kerning first=296 second=223 amount=-1 +kerning first=74 second=98 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=282 second=210 amount=-1 +kerning first=103 second=326 amount=-1 +kerning first=78 second=85 amount=-1 +kerning first=350 second=8250 amount=-1 +kerning first=1064 second=1057 amount=-1 +kerning first=205 second=66 amount=-1 +kerning first=287 second=98 amount=-1 +kerning first=327 second=302 amount=-1 +kerning first=1044 second=1081 amount=-1 +kerning first=219 second=302 amount=-1 +kerning first=69 second=210 amount=-1 +kerning first=368 second=223 amount=-1 +kerning first=330 second=339 amount=-1 +kerning first=73 second=243 amount=-1 +kerning first=259 second=335 amount=-1 +kerning first=355 second=99 amount=-1 +kerning first=280 second=280 amount=-1 +kerning first=365 second=232 amount=-1 +kerning first=74 second=350 amount=-1 +kerning first=78 second=302 amount=-1 +kerning first=366 second=339 amount=-1 +kerning first=194 second=107 amount=-1 +kerning first=109 second=243 amount=-1 +kerning first=250 second=243 amount=-1 +kerning first=117 second=339 amount=-1 +kerning first=367 second=335 amount=-1 +kerning first=83 second=223 amount=-1 +kerning first=1056 second=1055 amount=-1 +kerning first=8222 second=316 amount=-1 +kerning first=274 second=363 amount=-1 +kerning first=323 second=350 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=80 second=232 amount=-1 +kerning first=364 second=344 amount=-1 +kerning first=346 second=363 amount=-1 +kerning first=364 second=298 amount=-1 +kerning first=296 second=355 amount=-1 +kerning first=368 second=8249 amount=-2 +kerning first=198 second=357 amount=-1 +kerning first=332 second=46 amount=-1 +kerning first=257 second=232 amount=-1 +kerning first=204 second=76 amount=-1 +kerning first=221 second=232 amount=-1 +kerning first=1065 second=1072 amount=-1 +kerning first=100 second=289 amount=-1 +kerning first=234 second=357 amount=-1 +kerning first=352 second=323 amount=-1 +kerning first=79 second=344 amount=-1 +kerning first=217 second=234 amount=-1 +kerning first=1050 second=1114 amount=-1 +kerning first=1055 second=1027 amount=-1 +kerning first=325 second=234 amount=-1 +kerning first=277 second=289 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=289 second=234 amount=-1 +kerning first=241 second=289 amount=-1 +kerning first=1049 second=1054 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=327 second=85 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=1053 second=1108 amount=-1 +kerning first=304 second=262 amount=-1 +kerning first=106 second=46 amount=-1 +kerning first=202 second=280 amount=-1 +kerning first=350 second=204 amount=-1 +kerning first=323 second=79 amount=-1 +kerning first=205 second=216 amount=-1 +kerning first=8250 second=377 amount=-1 +kerning first=195 second=366 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=278 second=204 amount=-1 +kerning first=355 second=113 amount=-1 +kerning first=283 second=46 amount=-1 +kerning first=109 second=103 amount=-1 +kerning first=279 second=113 amount=-1 +kerning first=89 second=378 amount=-1 +kerning first=207 second=67 amount=-1 +kerning first=1073 second=1084 amount=-1 +kerning first=296 second=345 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=200 second=70 amount=-1 +kerning first=220 second=102 amount=-1 +kerning first=270 second=192 amount=-1 +kerning first=66 second=87 amount=-1 +kerning first=269 second=250 amount=-1 +kerning first=70 second=46 amount=-2 +kerning first=233 second=250 amount=-1 +kerning first=1056 second=1065 amount=-1 +kerning first=204 second=274 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=211 second=317 amount=-1 +kerning first=366 second=122 amount=-1 +kerning first=370 second=207 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=221 second=213 amount=-1 +kerning first=334 second=207 amount=-1 +kerning first=74 second=369 amount=-1 +kerning first=8250 second=106 amount=-1 +kerning first=330 second=122 amount=-1 +kerning first=272 second=70 amount=-1 +kerning first=1088 second=1093 amount=-1 +kerning first=287 second=369 amount=-1 +kerning first=291 second=108 amount=-1 +kerning first=8217 second=368 amount=-1 +kerning first=213 second=201 amount=-1 +kerning first=356 second=259 amount=-1 +kerning first=200 second=8217 amount=-1 +kerning first=207 second=113 amount=-1 +kerning first=305 second=8222 amount=-1 +kerning first=87 second=256 amount=-1 +kerning first=302 second=378 amount=-1 +kerning first=368 second=323 amount=-1 +kerning first=1066 second=1041 amount=-1 +kerning first=109 second=111 amount=-1 +kerning first=233 second=8222 amount=-1 +kerning first=1030 second=1041 amount=-1 +kerning first=72 second=201 amount=-1 +kerning first=85 second=207 amount=-1 +kerning first=230 second=378 amount=-1 +kerning first=296 second=323 amount=-1 +kerning first=104 second=231 amount=-1 +kerning first=8220 second=194 amount=-2 +kerning first=8222 second=362 amount=-1 +kerning first=70 second=317 amount=-1 +kerning first=206 second=204 amount=-1 +kerning first=298 second=207 amount=-1 +kerning first=310 second=119 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=262 second=207 amount=-1 +kerning first=374 second=378 amount=-1 +kerning first=263 second=314 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=227 second=314 amount=-1 +kerning first=234 second=369 amount=-1 +kerning first=1039 second=1081 amount=-1 +kerning first=366 second=111 amount=-1 +kerning first=198 second=369 amount=-1 +kerning first=362 second=355 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=70 second=366 amount=-1 +kerning first=368 second=116 amount=-1 +kerning first=366 second=204 amount=-1 +kerning first=80 second=198 amount=-1 +kerning first=1058 second=1105 amount=-1 +kerning first=335 second=314 amount=-1 +kerning first=1053 second=1084 amount=-1 +kerning first=330 second=204 amount=-1 +kerning first=221 second=198 amount=-1 +kerning first=296 second=116 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=73 second=317 amount=-1 +kerning first=268 second=210 amount=-1 +kerning first=233 second=363 amount=-1 +kerning first=68 second=207 amount=-1 +kerning first=304 second=210 amount=-1 +kerning first=366 second=378 amount=-1 +kerning first=269 second=363 amount=-1 +kerning first=209 second=207 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=325 second=268 amount=-1 +kerning first=214 second=317 amount=-1 +kerning first=1088 second=1078 amount=-1 +kerning first=286 second=317 amount=-1 +kerning first=211 second=366 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=85 second=101 amount=-1 +kerning first=69 second=213 amount=-1 +kerning first=347 second=8250 amount=-1 +kerning first=264 second=73 amount=-1 +kerning first=364 second=219 amount=-1 +kerning first=84 second=8220 amount=-1 +kerning first=275 second=8250 amount=-1 +kerning first=282 second=213 amount=-1 +kerning first=262 second=101 amount=-1 +kerning first=74 second=296 amount=-1 +kerning first=226 second=101 amount=-1 +kerning first=120 second=8220 amount=-1 +kerning first=203 second=8250 amount=-1 +kerning first=1062 second=1081 amount=-1 +kerning first=217 second=268 amount=-1 +kerning first=8216 second=362 amount=-1 +kerning first=220 second=219 amount=-1 +kerning first=317 second=354 amount=-1 +kerning first=268 second=298 amount=-1 +kerning first=298 second=101 amount=-1 +kerning first=225 second=8220 amount=-2 +kerning first=277 second=277 amount=-1 +kerning first=370 second=101 amount=-1 +kerning first=241 second=277 amount=-1 +kerning first=225 second=122 amount=-1 +kerning first=205 second=277 amount=-1 +kerning first=232 second=318 amount=-1 +kerning first=79 second=219 amount=-1 +kerning first=261 second=122 amount=-1 +kerning first=8222 second=264 amount=-1 +kerning first=81 second=204 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=80 second=345 amount=-1 +kerning first=323 second=296 amount=-1 +kerning first=1051 second=1072 amount=-1 +kerning first=84 second=122 amount=-1 +kerning first=207 second=273 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=324 second=235 amount=-1 +kerning first=227 second=287 amount=-1 +kerning first=100 second=277 amount=-1 +kerning first=206 second=283 amount=-1 +kerning first=366 second=231 amount=-1 +kerning first=101 second=283 amount=-1 +kerning first=72 second=338 amount=-1 +kerning first=333 second=8220 amount=-2 +kerning first=193 second=286 amount=-1 +kerning first=335 second=287 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=73 second=83 amount=-1 +kerning first=1039 second=1108 amount=-1 +kerning first=77 second=274 amount=-1 +kerning first=81 second=351 amount=-1 +kerning first=263 second=287 amount=-1 +kerning first=369 second=8220 amount=-1 +kerning first=366 second=351 amount=-1 +kerning first=330 second=351 amount=-1 +kerning first=264 second=226 amount=-1 +kerning first=73 second=290 amount=-1 +kerning first=1060 second=1065 amount=-1 +kerning first=1067 second=1047 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=364 second=192 amount=-1 +kerning first=1031 second=1047 amount=-1 +kerning first=365 second=171 amount=-1 +kerning first=219 second=44 amount=-2 +kerning first=99 second=244 amount=-1 +kerning first=205 second=70 amount=-1 +kerning first=1027 second=1090 amount=-1 +kerning first=362 second=274 amount=-1 +kerning first=1108 second=1103 amount=-1 +kerning first=220 second=192 amount=-1 +kerning first=8217 second=67 amount=-1 +kerning first=204 second=244 amount=-1 +kerning first=105 second=333 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=240 second=244 amount=-1 +kerning first=1055 second=1056 amount=-1 +kerning first=354 second=333 amount=-1 +kerning first=218 second=274 amount=-1 +kerning first=8250 second=203 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=1064 second=1069 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=116 second=171 amount=-1 +kerning first=264 second=100 amount=-1 +kerning first=1051 second=1099 amount=-1 +kerning first=352 second=201 amount=-1 +kerning first=1040 second=1060 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=298 second=74 amount=-1 +kerning first=221 second=171 amount=-2 +kerning first=280 second=201 amount=-1 +kerning first=257 second=171 amount=-1 +kerning first=370 second=74 amount=-1 +kerning first=74 second=269 amount=-1 +kerning first=110 second=269 amount=-1 +kerning first=117 second=231 amount=-1 +kerning first=267 second=8218 amount=-1 +kerning first=264 second=245 amount=-1 +kerning first=218 second=70 amount=-1 +kerning first=323 second=269 amount=-1 +kerning first=1047 second=1088 amount=-1 +kerning first=1078 second=1118 amount=-1 +kerning first=339 second=333 amount=-1 +kerning first=8218 second=253 amount=-1 +kerning first=251 second=269 amount=-1 +kerning first=8222 second=85 amount=-1 +kerning first=209 second=69 amount=-1 +kerning first=287 second=269 amount=-1 +kerning first=350 second=310 amount=-1 +kerning first=1036 second=1090 amount=-1 +kerning first=248 second=114 amount=-1 +kerning first=278 second=310 amount=-1 +kerning first=257 second=318 amount=-1 +kerning first=213 second=66 amount=-1 +kerning first=255 second=120 amount=-1 +kerning first=221 second=45 amount=-2 +kerning first=205 second=370 amount=-1 +kerning first=257 second=45 amount=-1 +kerning first=116 second=45 amount=-1 +kerning first=86 second=260 amount=-1 +kerning first=313 second=370 amount=-1 +kerning first=365 second=45 amount=-1 +kerning first=217 second=214 amount=-1 +kerning first=1071 second=1097 amount=-1 +kerning first=1056 second=1062 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=262 second=362 amount=-1 +kerning first=87 second=199 amount=-1 +kerning first=261 second=275 amount=-1 +kerning first=221 second=252 amount=-1 +kerning first=225 second=275 amount=-1 +kerning first=205 second=223 amount=-1 +kerning first=1048 second=1028 amount=-1 +kerning first=8222 second=210 amount=-1 +kerning first=81 second=258 amount=-1 +kerning first=1062 second=1060 amount=-1 +kerning first=8222 second=84 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=354 second=267 amount=-1 +kerning first=104 second=234 amount=-1 +kerning first=203 second=251 amount=-1 +kerning first=209 second=234 amount=-1 +kerning first=45 second=79 amount=-1 +kerning first=8250 second=298 amount=-1 +kerning first=204 second=217 amount=-1 +kerning first=366 second=258 amount=-1 +kerning first=1039 second=1027 amount=-1 +kerning first=201 second=200 amount=-1 +kerning first=269 second=243 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=233 second=243 amount=-1 +kerning first=275 second=251 amount=-1 +kerning first=305 second=243 amount=-1 +kerning first=1068 second=1053 amount=-1 +kerning first=223 second=8221 amount=-2 +kerning first=116 second=225 amount=-1 +kerning first=203 second=206 amount=-1 +kerning first=80 second=72 amount=-1 +kerning first=110 second=242 amount=-1 +kerning first=259 second=8221 amount=-2 +kerning first=80 second=225 amount=-1 +kerning first=257 second=345 amount=-1 +kerning first=72 second=187 amount=-1 +kerning first=226 second=335 amount=-1 +kerning first=74 second=242 amount=-1 +kerning first=229 second=232 amount=-1 +kerning first=298 second=335 amount=-1 +kerning first=365 second=345 amount=-1 +kerning first=1039 second=1054 amount=-1 +kerning first=262 second=335 amount=-1 +kerning first=323 second=242 amount=-1 +kerning first=370 second=335 amount=-1 +kerning first=74 second=100 amount=-1 +kerning first=1052 second=1105 amount=-1 +kerning first=117 second=8249 amount=-1 +kerning first=251 second=242 amount=-1 +kerning first=281 second=234 amount=-1 +kerning first=217 second=241 amount=-1 +kerning first=286 second=344 amount=-1 +kerning first=1064 second=1096 amount=-1 +kerning first=282 second=249 amount=-1 +kerning first=113 second=8217 amount=-2 +kerning first=1028 second=1096 amount=-1 +kerning first=272 second=351 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=325 second=241 amount=-1 +kerning first=355 second=335 amount=-1 +kerning first=86 second=233 amount=-1 +kerning first=289 second=241 amount=-1 +kerning first=1051 second=1045 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=316 second=114 amount=-1 +kerning first=200 second=80 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=366 second=200 amount=-1 +kerning first=192 second=46 amount=-1 +kerning first=264 second=199 amount=-1 +kerning first=84 second=275 amount=-1 +kerning first=263 second=233 amount=-1 +kerning first=277 second=250 amount=-1 +kerning first=352 second=114 amount=-1 +kerning first=264 second=46 amount=-1 +kerning first=68 second=327 amount=-1 +kerning first=103 second=114 amount=-1 +kerning first=1058 second=1113 amount=-1 +kerning first=336 second=46 amount=-1 +kerning first=244 second=114 amount=-1 +kerning first=1060 second=1046 amount=-1 +kerning first=272 second=80 amount=-1 +kerning first=277 second=8222 amount=-1 +kerning first=214 second=344 amount=-1 +kerning first=206 second=310 amount=-1 +kerning first=209 second=327 amount=-1 +kerning first=220 second=327 amount=-1 +kerning first=364 second=336 amount=-1 +kerning first=1064 second=1062 amount=-1 +kerning first=217 second=361 amount=-1 +kerning first=67 second=114 amount=-1 +kerning first=120 second=8218 amount=-1 +kerning first=1104 second=1080 amount=-1 +kerning first=209 second=81 amount=-1 +kerning first=217 second=115 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=253 second=115 amount=-1 +kerning first=118 second=8221 amount=-2 +kerning first=289 second=115 amount=-1 +kerning first=72 second=284 amount=-1 +kerning first=325 second=115 amount=-1 +kerning first=197 second=216 amount=-1 +kerning first=8250 second=284 amount=-1 +kerning first=266 second=331 amount=-1 +kerning first=378 second=8221 amount=-1 +kerning first=223 second=44 amount=-1 +kerning first=1033 second=1098 amount=-1 +kerning first=364 second=78 amount=-1 +kerning first=89 second=8249 amount=-2 +kerning first=204 second=352 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=370 second=227 amount=-1 +kerning first=103 second=116 amount=-1 +kerning first=220 second=78 amount=-1 +kerning first=266 second=8249 amount=-1 +kerning first=86 second=380 amount=-1 +kerning first=69 second=72 amount=-1 +kerning first=298 second=227 amount=-1 +kerning first=8217 second=260 amount=-2 +kerning first=266 second=346 amount=-1 +kerning first=282 second=72 amount=-1 +kerning first=346 second=218 amount=-1 +kerning first=310 second=218 amount=-1 +kerning first=199 second=267 amount=-1 +kerning first=204 second=290 amount=-1 +kerning first=274 second=218 amount=-1 +kerning first=1048 second=1055 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=202 second=218 amount=-1 +kerning first=1043 second=1119 amount=-1 +kerning first=1069 second=1061 amount=-1 +kerning first=74 second=79 amount=-1 +kerning first=334 second=72 amount=-1 +kerning first=1060 second=1031 amount=-1 +kerning first=1058 second=1086 amount=-1 +kerning first=192 second=361 amount=-1 +kerning first=365 second=291 amount=-1 +kerning first=296 second=230 amount=-1 +kerning first=87 second=361 amount=-1 +kerning first=80 second=279 amount=-1 +kerning first=116 second=279 amount=-1 +kerning first=8217 second=235 amount=-1 +kerning first=302 second=346 amount=-1 +kerning first=1030 second=1056 amount=-1 +kerning first=116 second=291 amount=-1 +kerning first=262 second=227 amount=-1 +kerning first=353 second=8218 amount=-1 +kerning first=1057 second=1080 amount=-1 +kerning first=288 second=368 amount=-1 +kerning first=101 second=187 amount=-1 +kerning first=281 second=8218 amount=-1 +kerning first=1077 second=1095 amount=-1 +kerning first=85 second=227 amount=-1 +kerning first=198 second=8221 amount=-1 +kerning first=75 second=368 amount=-1 +kerning first=1046 second=1095 amount=-1 +kerning first=234 second=8221 amount=-2 +kerning first=196 second=84 amount=-1 +kerning first=289 second=269 amount=-1 +kerning first=87 second=8221 amount=-1 +kerning first=198 second=81 amount=-1 +kerning first=270 second=8221 amount=-2 +kerning first=101 second=337 amount=-1 +kerning first=1034 second=1079 amount=-1 +kerning first=1118 second=1095 amount=-1 +kerning first=68 second=8218 amount=-1 +kerning first=112 second=187 amount=-1 +kerning first=105 second=99 amount=-1 +kerning first=109 second=8220 amount=-2 +kerning first=262 second=200 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=362 second=44 amount=-2 +kerning first=245 second=8218 amount=-1 +kerning first=204 second=325 amount=-1 +kerning first=289 second=187 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=209 second=8218 amount=-1 +kerning first=325 second=187 amount=-1 +kerning first=217 second=187 amount=-2 +kerning first=85 second=200 amount=-1 +kerning first=205 second=211 amount=-1 +kerning first=187 second=71 amount=-1 +kerning first=89 second=8222 amount=-2 +kerning first=257 second=279 amount=-1 +kerning first=82 second=71 amount=-1 +kerning first=217 second=202 amount=-1 +kerning first=211 second=85 amount=-1 +kerning first=8217 second=233 amount=-1 +kerning first=221 second=279 amount=-1 +kerning first=259 second=337 amount=-1 +kerning first=352 second=75 amount=-1 +kerning first=327 second=211 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=74 second=362 amount=-1 +kerning first=8218 second=361 amount=-1 +kerning first=365 second=279 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=278 second=364 amount=-1 +kerning first=364 second=66 amount=-1 +kerning first=1070 second=1052 amount=-1 +kerning first=221 second=264 amount=-1 +kerning first=214 second=209 amount=-1 +kerning first=1034 second=1052 amount=-1 +kerning first=206 second=364 amount=-1 +kerning first=362 second=367 amount=-1 +kerning first=296 second=257 amount=-1 +kerning first=268 second=69 amount=-1 +kerning first=80 second=264 amount=-1 +kerning first=73 second=209 amount=-1 +kerning first=65 second=364 amount=-1 +kerning first=368 second=257 amount=-1 +kerning first=304 second=69 amount=-1 +kerning first=304 second=114 amount=-1 +kerning first=325 second=202 amount=-1 +kerning first=218 second=367 amount=-1 +kerning first=227 second=380 amount=-1 +kerning first=77 second=355 amount=-1 +kerning first=338 second=8249 amount=-1 +kerning first=264 second=334 amount=-1 +kerning first=374 second=8249 amount=-2 +kerning first=234 second=108 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=281 second=273 amount=-1 +kerning first=263 second=380 amount=-1 +kerning first=1064 second=1041 amount=-1 +kerning first=272 second=330 amount=-1 +kerning first=209 second=366 amount=-1 +kerning first=323 second=235 amount=-1 +kerning first=209 second=273 amount=-1 +kerning first=335 second=380 amount=-1 +kerning first=1053 second=1030 amount=-1 +kerning first=350 second=364 amount=-1 +kerning first=374 second=290 amount=-1 +kerning first=266 second=226 amount=-1 +kerning first=286 second=209 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=1034 second=1050 amount=-1 +kerning first=362 second=286 amount=-1 +kerning first=73 second=263 amount=-1 +kerning first=253 second=249 amount=-1 +kerning first=272 second=194 amount=-1 +kerning first=109 second=263 amount=-1 +kerning first=1027 second=1051 amount=-1 +kerning first=1070 second=1050 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=45 second=117 amount=-1 +kerning first=218 second=286 amount=-1 +kerning first=101 second=339 amount=-1 +kerning first=250 second=263 amount=-1 +kerning first=205 second=82 amount=-1 +kerning first=1041 second=1094 amount=-1 +kerning first=116 second=8221 amount=-1 +kerning first=1041 second=1039 amount=-1 +kerning first=368 second=203 amount=-1 +kerning first=325 second=229 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=8222 second=225 amount=-1 +kerning first=77 second=286 amount=-1 +kerning first=278 second=67 amount=-1 +kerning first=108 second=365 amount=-1 +kerning first=204 second=298 amount=-1 +kerning first=269 second=351 amount=-1 +kerning first=1067 second=1074 amount=-1 +kerning first=366 second=117 amount=-1 +kerning first=1064 second=1108 amount=-1 +kerning first=264 second=332 amount=-1 +kerning first=296 second=203 amount=-1 +kerning first=291 second=46 amount=-1 +kerning first=78 second=261 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=217 second=229 amount=-1 +kerning first=258 second=117 amount=-1 +kerning first=193 second=220 amount=-1 +kerning first=370 second=281 amount=-1 +kerning first=365 second=333 amount=-1 +kerning first=1091 second=1083 amount=-1 +kerning first=1036 second=1076 amount=-1 +kerning first=257 second=333 amount=-1 +kerning first=1070 second=1025 amount=-1 +kerning first=355 second=339 amount=-1 +kerning first=1036 second=1118 amount=-1 +kerning first=1034 second=1025 amount=-1 +kerning first=218 second=382 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=281 second=246 amount=-1 +kerning first=88 second=220 amount=-1 +kerning first=254 second=382 amount=-1 +kerning first=209 second=246 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=85 second=281 amount=-1 +kerning first=323 second=103 amount=-1 +kerning first=104 second=246 amount=-1 +kerning first=287 second=103 amount=-1 +kerning first=204 second=323 amount=-1 +kerning first=263 second=369 amount=-1 +kerning first=195 second=364 amount=-1 +kerning first=217 second=100 amount=-1 +kerning first=192 second=307 amount=-1 +kerning first=226 second=281 amount=-1 +kerning first=85 second=262 amount=-1 +kerning first=221 second=333 amount=-1 +kerning first=262 second=281 amount=-1 +kerning first=266 second=304 amount=-1 +kerning first=80 second=333 amount=-1 +kerning first=284 second=209 amount=-1 +kerning first=298 second=281 amount=-1 +kerning first=302 second=304 amount=-1 +kerning first=110 second=103 amount=-1 +kerning first=116 second=333 amount=-1 +kerning first=338 second=304 amount=-1 +kerning first=264 second=81 amount=-1 +kerning first=213 second=77 amount=-1 +kerning first=111 second=314 amount=-1 +kerning first=1108 second=1076 amount=-1 +kerning first=1053 second=1057 amount=-1 +kerning first=1043 second=1092 amount=-1 +kerning first=8217 second=229 amount=-1 +kerning first=217 second=256 amount=-1 +kerning first=362 second=313 amount=-1 +kerning first=97 second=245 amount=-1 +kerning first=203 second=85 amount=-1 +kerning first=264 second=280 amount=-1 +kerning first=346 second=8217 amount=-1 +kerning first=272 second=221 amount=-1 +kerning first=1048 second=1067 amount=-1 +kerning first=364 second=120 amount=-1 +kerning first=356 second=267 amount=-1 +kerning first=382 second=8217 amount=-1 +kerning first=221 second=210 amount=-1 +kerning first=344 second=221 amount=-1 +kerning first=68 second=315 amount=-1 +kerning first=218 second=313 amount=-1 +kerning first=1067 second=1101 amount=-1 +kerning first=290 second=313 amount=-1 +kerning first=283 second=339 amount=-1 +kerning first=192 second=44 amount=-1 +kerning first=80 second=210 amount=-1 +kerning first=99 second=248 amount=-1 +kerning first=368 second=230 amount=-1 +kerning first=77 second=313 amount=-1 +kerning first=336 second=8250 amount=-1 +kerning first=99 second=271 amount=-1 +kerning first=106 second=339 amount=-1 +kerning first=269 second=324 amount=-1 +kerning first=70 second=339 amount=-1 +kerning first=204 second=271 amount=-1 +kerning first=1039 second=1042 amount=-1 +kerning first=228 second=8250 amount=-1 +kerning first=304 second=111 amount=-1 +kerning first=8218 second=334 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=192 second=8250 amount=-1 +kerning first=187 second=357 amount=-1 +kerning first=1052 second=1117 amount=-1 +kerning first=262 second=254 amount=-1 +kerning first=87 second=8250 amount=-1 +kerning first=270 second=195 amount=-1 +kerning first=110 second=101 amount=-1 +kerning first=214 second=258 amount=-1 +kerning first=209 second=219 amount=-1 +kerning first=74 second=101 amount=-1 +kerning first=323 second=76 amount=-1 +kerning first=370 second=73 amount=-1 +kerning first=68 second=219 amount=-1 +kerning first=252 second=289 amount=-1 +kerning first=82 second=357 amount=-1 +kerning first=1031 second=1101 amount=-1 +kerning first=287 second=101 amount=-1 +kerning first=324 second=289 amount=-1 +kerning first=202 second=8217 amount=-1 +kerning first=1033 second=1065 amount=-1 +kerning first=251 second=101 amount=-1 +kerning first=339 second=111 amount=-1 +kerning first=274 second=8217 amount=-1 +kerning first=224 second=380 amount=-1 +kerning first=74 second=76 amount=-1 +kerning first=374 second=331 amount=-1 +kerning first=204 second=296 amount=-1 +kerning first=232 second=111 amount=-1 +kerning first=97 second=8217 amount=-2 +kerning first=268 second=111 amount=-1 +kerning first=121 second=254 amount=-1 +kerning first=269 second=228 amount=-1 +kerning first=268 second=225 amount=-1 +kerning first=70 second=187 amount=-2 +kerning first=106 second=99 amount=-1 +kerning first=77 second=232 amount=-1 +kerning first=8218 second=332 amount=-1 +kerning first=286 second=85 amount=-1 +kerning first=214 second=85 amount=-1 +kerning first=304 second=203 amount=-1 +kerning first=73 second=332 amount=-1 +kerning first=252 second=287 amount=-1 +kerning first=289 second=46 amount=-1 +kerning first=74 second=271 amount=-1 +kerning first=253 second=46 amount=-1 +kerning first=214 second=330 amount=-1 +kerning first=73 second=85 amount=-1 +kerning first=250 second=8220 amount=-1 +kerning first=111 second=287 amount=-1 +kerning first=325 second=46 amount=-1 +kerning first=109 second=277 amount=-1 +kerning first=286 second=302 amount=-1 +kerning first=206 second=241 amount=-1 +kerning first=286 second=8220 amount=-1 +kerning first=370 second=368 amount=-1 +kerning first=324 second=287 amount=-1 +kerning first=214 second=302 amount=-1 +kerning first=323 second=271 amount=-1 +kerning first=246 second=103 amount=-1 +kerning first=1039 second=1096 amount=-1 +kerning first=74 second=243 amount=-1 +kerning first=233 second=378 amount=-1 +kerning first=8250 second=223 amount=-1 +kerning first=230 second=250 amount=-1 +kerning first=227 second=289 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=231 second=229 amount=-1 +kerning first=112 second=46 amount=-1 +kerning first=202 second=284 amount=-1 +kerning first=274 second=75 amount=-1 +kerning first=263 second=289 amount=-1 +kerning first=87 second=273 amount=-1 +kerning first=374 second=250 amount=-1 +kerning first=45 second=336 amount=-1 +kerning first=217 second=46 amount=-2 +kerning first=274 second=284 amount=-1 +kerning first=334 second=76 amount=-1 +kerning first=335 second=289 amount=-1 +kerning first=267 second=229 amount=-1 +kerning first=269 second=378 amount=-1 +kerning first=370 second=76 amount=-1 +kerning first=207 second=220 amount=-1 +kerning first=262 second=76 amount=-1 +kerning first=351 second=46 amount=-1 +kerning first=171 second=220 amount=-1 +kerning first=74 second=74 amount=-1 +kerning first=8250 second=218 amount=-1 +kerning first=362 second=259 amount=-1 +kerning first=264 second=278 amount=-1 +kerning first=1027 second=1105 amount=-1 +kerning first=201 second=45 amount=-1 +kerning first=280 second=216 amount=-1 +kerning first=339 second=246 amount=-1 +kerning first=85 second=76 amount=-1 +kerning first=1050 second=1118 amount=-1 +kerning first=203 second=280 amount=-1 +kerning first=267 second=246 amount=-1 +kerning first=321 second=89 amount=-1 +kerning first=231 second=246 amount=-1 +kerning first=66 second=220 amount=-1 +kerning first=323 second=74 amount=-1 +kerning first=204 second=269 amount=-1 +kerning first=262 second=245 amount=-1 +kerning first=209 second=74 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=70 second=204 amount=-1 +kerning first=99 second=269 amount=-1 +kerning first=1042 second=1084 amount=-1 +kerning first=281 second=369 amount=-1 +kerning first=78 second=201 amount=-1 +kerning first=86 second=65 amount=-1 +kerning first=218 second=259 amount=-1 +kerning first=211 second=204 amount=-1 +kerning first=272 second=366 amount=-1 +kerning first=278 second=268 amount=-1 +kerning first=220 second=207 amount=-1 +kerning first=119 second=104 amount=-1 +kerning first=78 second=8220 amount=-1 +kerning first=200 second=366 amount=-1 +kerning first=206 second=268 amount=-1 +kerning first=1039 second=1069 amount=-1 +kerning first=280 second=67 amount=-1 +kerning first=274 second=67 amount=-1 +kerning first=218 second=110 amount=-1 +kerning first=8217 second=289 amount=-1 +kerning first=364 second=207 amount=-1 +kerning first=310 second=67 amount=-1 +kerning first=74 second=244 amount=-1 +kerning first=207 second=210 amount=-1 +kerning first=1067 second=1062 amount=-1 +kerning first=110 second=244 amount=-1 +kerning first=75 second=303 amount=-1 +kerning first=356 second=113 amount=-1 +kerning first=374 second=277 amount=-1 +kerning first=8216 second=347 amount=-1 +kerning first=217 second=73 amount=-1 +kerning first=1054 second=1068 amount=-1 +kerning first=73 second=302 amount=-1 +kerning first=325 second=73 amount=-1 +kerning first=86 second=262 amount=-1 +kerning first=233 second=351 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=287 second=108 amount=-1 +kerning first=1038 second=1117 amount=-1 +kerning first=89 second=277 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=199 second=213 amount=-1 +kerning first=87 second=251 amount=-1 +kerning first=302 second=277 amount=-1 +kerning first=266 second=277 amount=-1 +kerning first=230 second=277 amount=-1 +kerning first=368 second=218 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=71 second=8221 amount=-1 +kerning first=355 second=231 amount=-1 +kerning first=270 second=354 amount=-1 +kerning first=327 second=75 amount=-1 +kerning first=108 second=380 amount=-1 +kerning first=280 second=270 amount=-1 +kerning first=296 second=218 amount=-1 +kerning first=374 second=196 amount=-1 +kerning first=245 second=8222 amount=-1 +kerning first=212 second=8221 amount=-2 +kerning first=262 second=8249 amount=-1 +kerning first=248 second=8221 amount=-2 +kerning first=219 second=75 amount=-1 +kerning first=78 second=216 amount=-1 +kerning first=109 second=248 amount=-1 +kerning first=67 second=336 amount=-1 +kerning first=1031 second=1089 amount=-1 +kerning first=65 second=187 amount=-1 +kerning first=250 second=248 amount=-1 +kerning first=1057 second=1119 amount=-1 +kerning first=283 second=231 amount=-1 +kerning first=83 second=218 amount=-1 +kerning first=99 second=242 amount=-1 +kerning first=356 second=8221 amount=-1 +kerning first=78 second=75 amount=-1 +kerning first=352 second=270 amount=-1 +kerning first=200 second=209 amount=-1 +kerning first=218 second=79 amount=-1 +kerning first=73 second=248 amount=-1 +kerning first=304 second=279 amount=-1 +kerning first=280 second=336 amount=-1 +kerning first=204 second=234 amount=-1 +kerning first=258 second=84 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=279 second=367 amount=-1 +kerning first=339 second=283 amount=-1 +kerning first=77 second=79 amount=-1 +kerning first=231 second=283 amount=-1 +kerning first=109 second=333 amount=-1 +kerning first=89 second=369 amount=-1 +kerning first=1043 second=1080 amount=-1 +kerning first=374 second=8222 amount=-2 +kerning first=251 second=244 amount=-1 +kerning first=79 second=327 amount=-1 +kerning first=338 second=8222 amount=-1 +kerning first=8218 second=369 amount=-1 +kerning first=290 second=205 amount=-1 +kerning first=323 second=244 amount=-1 +kerning first=266 second=8222 amount=-1 +kerning first=362 second=79 amount=-1 +kerning first=207 second=274 amount=-1 +kerning first=230 second=8222 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=1031 second=1028 amount=-1 +kerning first=252 second=233 amount=-1 +kerning first=338 second=70 amount=-1 +kerning first=364 second=327 amount=-1 +kerning first=70 second=231 amount=-1 +kerning first=86 second=235 amount=-1 +kerning first=106 second=231 amount=-1 +kerning first=1066 second=1062 amount=-1 +kerning first=1055 second=1071 amount=-1 +kerning first=356 second=227 amount=-1 +kerning first=218 second=205 amount=-1 +kerning first=227 second=235 amount=-1 +kerning first=258 second=108 amount=-1 +kerning first=77 second=205 amount=-1 +kerning first=263 second=235 amount=-1 +kerning first=266 second=70 amount=-1 +kerning first=87 second=224 amount=-1 +kerning first=302 second=70 amount=-1 +kerning first=8217 second=65 amount=-2 +kerning first=206 second=214 amount=-1 +kerning first=201 second=71 amount=-1 +kerning first=72 second=353 amount=-1 +kerning first=118 second=249 amount=-1 +kerning first=210 second=202 amount=-1 +kerning first=264 second=224 amount=-1 +kerning first=187 second=249 amount=-1 +kerning first=330 second=70 amount=-1 +kerning first=1038 second=1090 amount=-1 +kerning first=103 second=243 amount=-1 +kerning first=1058 second=1088 amount=-1 +kerning first=1059 second=1104 amount=-1 +kerning first=280 second=363 amount=-1 +kerning first=213 second=353 amount=-1 +kerning first=316 second=363 amount=-1 +kerning first=278 second=214 amount=-1 +kerning first=75 second=370 amount=-1 +kerning first=374 second=223 amount=-1 +kerning first=69 second=45 amount=-1 +kerning first=288 second=370 amount=-1 +kerning first=338 second=223 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=302 second=223 amount=-1 +kerning first=232 second=252 amount=-1 +kerning first=250 second=275 amount=-1 +kerning first=266 second=223 amount=-1 +kerning first=196 second=252 amount=-1 +kerning first=325 second=8218 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=1043 second=1107 amount=-1 +kerning first=79 second=354 amount=-1 +kerning first=203 second=199 amount=-1 +kerning first=282 second=45 amount=-1 +kerning first=254 second=106 amount=-1 +kerning first=109 second=275 amount=-1 +kerning first=1050 second=1081 amount=-1 +kerning first=73 second=275 amount=-1 +kerning first=375 second=8221 amount=-2 +kerning first=8217 second=262 amount=-1 +kerning first=1046 second=1097 amount=-1 +kerning first=74 second=217 amount=-1 +kerning first=266 second=97 amount=-1 +kerning first=220 second=234 amount=-1 +kerning first=302 second=97 amount=-1 +kerning first=370 second=288 amount=-1 +kerning first=235 second=267 amount=-1 +kerning first=271 second=267 amount=-1 +kerning first=307 second=267 amount=-1 +kerning first=272 second=209 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=73 second=8220 amount=-1 +kerning first=364 second=234 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=8218 second=251 amount=-1 +kerning first=328 second=234 amount=-1 +kerning first=316 second=243 amount=-1 +kerning first=323 second=217 amount=-1 +kerning first=211 second=258 amount=-1 +kerning first=1091 second=1098 amount=-1 +kerning first=288 second=201 amount=-1 +kerning first=288 second=206 amount=-1 +kerning first=1071 second=1095 amount=-1 +kerning first=298 second=266 amount=-1 +kerning first=218 second=232 amount=-1 +kerning first=284 second=200 amount=-1 +kerning first=350 second=345 amount=-1 +kerning first=1062 second=1072 amount=-1 +kerning first=370 second=266 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=196 second=345 amount=-1 +kerning first=324 second=113 amount=-1 +kerning first=232 second=345 amount=-1 +kerning first=8222 second=279 amount=-1 +kerning first=374 second=97 amount=-1 +kerning first=362 second=232 amount=-1 +kerning first=268 second=345 amount=-1 +kerning first=262 second=266 amount=-1 +kerning first=326 second=232 amount=-1 +kerning first=364 second=79 amount=-1 +kerning first=219 second=283 amount=-1 +kerning first=71 second=200 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=1059 second=1077 amount=-1 +kerning first=220 second=8218 amount=-2 +kerning first=339 second=120 amount=-1 +kerning first=375 second=120 amount=-1 +kerning first=115 second=8218 amount=-1 +kerning first=87 second=197 amount=-1 +kerning first=79 second=8218 amount=-1 +kerning first=266 second=109 amount=-1 +kerning first=364 second=8218 amount=-2 +kerning first=249 second=245 amount=-1 +kerning first=105 second=111 amount=-1 +kerning first=302 second=109 amount=-1 +kerning first=272 second=258 amount=-1 +kerning first=220 second=315 amount=-1 +kerning first=339 second=337 amount=-1 +kerning first=73 second=199 amount=-1 +kerning first=187 second=367 amount=-1 +kerning first=325 second=214 amount=-1 +kerning first=108 second=245 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=267 second=105 amount=-1 +kerning first=207 second=313 amount=-1 +kerning first=231 second=120 amount=-1 +kerning first=195 second=105 amount=-1 +kerning first=374 second=229 amount=-1 +kerning first=296 second=267 amount=-1 +kerning first=262 second=217 amount=-1 +kerning first=263 second=318 amount=-1 +kerning first=368 second=267 amount=-1 +kerning first=298 second=217 amount=-1 +kerning first=1071 second=1068 amount=-1 +kerning first=334 second=217 amount=-1 +kerning first=291 second=114 amount=-1 +kerning first=1057 second=1097 amount=-1 +kerning first=370 second=217 amount=-1 +kerning first=255 second=114 amount=-1 +kerning first=326 second=279 amount=-1 +kerning first=219 second=102 amount=-1 +kerning first=1030 second=1037 amount=-1 +kerning first=224 second=267 amount=-1 +kerning first=327 second=114 amount=-1 +kerning first=8220 second=196 amount=-2 +kerning first=72 second=245 amount=-1 +kerning first=78 second=114 amount=-1 +kerning first=317 second=8221 amount=-1 +kerning first=364 second=315 amount=-1 +kerning first=219 second=114 amount=-1 +kerning first=291 second=8249 amount=-1 +kerning first=8222 second=318 amount=-1 +kerning first=201 second=212 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=279 second=111 amount=-1 +kerning first=274 second=8222 amount=-1 +kerning first=327 second=8249 amount=-1 +kerning first=363 second=8249 amount=-1 +kerning first=101 second=115 amount=-1 +kerning first=1044 second=1098 amount=-1 +kerning first=327 second=331 amount=-1 +kerning first=206 second=115 amount=-1 +kerning first=220 second=273 amount=-1 +kerning first=279 second=355 amount=-1 +kerning first=339 second=8220 amount=-2 +kerning first=196 second=318 amount=-1 +kerning first=213 second=218 amount=-1 +kerning first=201 second=77 amount=-1 +kerning first=323 second=352 amount=-1 +kerning first=231 second=105 amount=-1 +kerning first=1033 second=1061 amount=-1 +kerning first=97 second=380 amount=-1 +kerning first=8250 second=89 amount=-2 +kerning first=207 second=355 amount=-1 +kerning first=268 second=318 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=80 second=288 amount=-1 +kerning first=8220 second=85 amount=-1 +kerning first=284 second=44 amount=-1 +kerning first=261 second=248 amount=-1 +kerning first=66 second=355 amount=-1 +kerning first=369 second=248 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=8222 second=333 amount=-1 +kerning first=362 second=193 amount=-1 +kerning first=248 second=44 amount=-1 +kerning first=354 second=275 amount=-1 +kerning first=1047 second=1059 amount=-2 +kerning first=78 second=346 amount=-1 +kerning first=84 second=248 amount=-1 +kerning first=352 second=282 amount=-1 +kerning first=225 second=248 amount=-1 +kerning first=8216 second=217 amount=-1 +kerning first=280 second=282 amount=-1 +kerning first=321 second=218 amount=-1 +kerning first=325 second=332 amount=-1 +kerning first=291 second=8222 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=219 second=8222 amount=-2 +kerning first=327 second=346 amount=-1 +kerning first=203 second=361 amount=-1 +kerning first=203 second=117 amount=-1 +kerning first=217 second=332 amount=-1 +kerning first=1071 second=1041 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=114 second=8222 amount=-1 +kerning first=232 second=279 amount=-1 +kerning first=78 second=8222 amount=-1 +kerning first=268 second=279 amount=-1 +kerning first=219 second=346 amount=-1 +kerning first=8250 second=77 amount=-1 +kerning first=74 second=352 amount=-1 +kerning first=298 second=267 amount=-1 +kerning first=267 second=337 amount=-1 +kerning first=350 second=187 amount=-1 +kerning first=232 second=291 amount=-1 +kerning first=231 second=337 amount=-1 +kerning first=356 second=44 amount=-1 +kerning first=278 second=187 amount=-1 +kerning first=99 second=187 amount=-1 +kerning first=103 second=355 amount=-1 +kerning first=187 second=81 amount=-1 +kerning first=209 second=109 amount=-1 +kerning first=315 second=84 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=327 second=8222 amount=-1 +kerning first=364 second=288 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=71 second=204 amount=-1 +kerning first=202 second=338 amount=-1 +kerning first=266 second=211 amount=-1 +kerning first=264 second=362 amount=-1 +kerning first=324 second=119 amount=-1 +kerning first=323 second=325 amount=-1 +kerning first=199 second=99 amount=-1 +kerning first=1033 second=1034 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=220 second=369 amount=-1 +kerning first=334 second=347 amount=-1 +kerning first=207 second=382 amount=-1 +kerning first=262 second=269 amount=-1 +kerning first=370 second=347 amount=-1 +kerning first=243 second=382 amount=-1 +kerning first=370 second=333 amount=-1 +kerning first=325 second=8250 amount=-1 +kerning first=262 second=347 amount=-1 +kerning first=279 second=382 amount=-1 +kerning first=289 second=8250 amount=-1 +kerning first=298 second=347 amount=-1 +kerning first=271 second=99 amount=-1 +kerning first=253 second=8250 amount=-1 +kerning first=212 second=86 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=101 second=248 amount=-1 +kerning first=217 second=8250 amount=-2 +kerning first=72 second=224 amount=-1 +kerning first=314 second=365 amount=-1 +kerning first=85 second=347 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=374 second=211 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=227 second=316 amount=-1 +kerning first=1049 second=1100 amount=-1 +kerning first=1062 second=1087 amount=-1 +kerning first=264 second=110 amount=-1 +kerning first=278 second=202 amount=-1 +kerning first=283 second=117 amount=-1 +kerning first=103 second=351 amount=-1 +kerning first=304 second=264 amount=-1 +kerning first=72 second=8217 amount=-1 +kerning first=219 second=277 amount=-1 +kerning first=67 second=351 amount=-1 +kerning first=350 second=202 amount=-1 +kerning first=108 second=8217 amount=-1 +kerning first=206 second=73 amount=-1 +kerning first=350 second=369 amount=-1 +kerning first=289 second=305 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=278 second=73 amount=-1 +kerning first=1031 second=1065 amount=-1 +kerning first=363 second=277 amount=-1 +kerning first=203 second=334 amount=-1 +kerning first=206 second=202 amount=-1 +kerning first=240 second=8250 amount=-1 +kerning first=321 second=8217 amount=-1 +kerning first=207 second=69 amount=-1 +kerning first=223 second=108 amount=-1 +kerning first=233 second=245 amount=-1 +kerning first=368 second=232 amount=-1 +kerning first=240 second=101 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=218 second=193 amount=-1 +kerning first=204 second=101 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=364 second=273 amount=-1 +kerning first=1068 second=1065 amount=-1 +kerning first=8217 second=370 amount=-1 +kerning first=338 second=82 amount=-1 +kerning first=310 second=338 amount=-1 +kerning first=75 second=364 amount=-1 +kerning first=302 second=82 amount=-1 +kerning first=213 second=8217 amount=-2 +kerning first=78 second=277 amount=-1 +kerning first=259 second=108 amount=-1 +kerning first=74 second=325 amount=-1 +kerning first=274 second=338 amount=-1 +kerning first=269 second=254 amount=-1 +kerning first=346 second=365 amount=-1 +kerning first=1056 second=1074 amount=-1 +kerning first=1038 second=1051 amount=-1 +kerning first=121 second=103 amount=-1 +kerning first=272 second=68 amount=-1 +kerning first=225 second=263 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=274 second=365 amount=-1 +kerning first=74 second=298 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=1039 second=1097 amount=-1 +kerning first=261 second=263 amount=-1 +kerning first=1075 second=1114 amount=-1 +kerning first=310 second=365 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=202 second=365 amount=-1 +kerning first=1030 second=1039 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=114 second=8249 amount=-1 +kerning first=200 second=68 amount=-1 +kerning first=323 second=298 amount=-1 +kerning first=374 second=194 amount=-1 +kerning first=213 second=203 amount=-1 +kerning first=100 second=287 amount=-1 +kerning first=8222 second=211 amount=-1 +kerning first=277 second=287 amount=-1 +kerning first=334 second=374 amount=-1 +kerning first=72 second=203 amount=-1 +kerning first=241 second=287 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=84 second=263 amount=-1 +kerning first=70 second=117 amount=-1 +kerning first=206 second=100 amount=-1 +kerning first=1054 second=1048 amount=-1 +kerning first=8250 second=202 amount=-1 +kerning first=264 second=83 amount=-1 +kerning first=103 second=324 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=212 second=330 amount=-1 +kerning first=219 second=304 amount=-1 +kerning first=364 second=246 amount=-1 +kerning first=351 second=171 amount=-1 +kerning first=328 second=246 amount=-1 +kerning first=290 second=220 amount=-1 +kerning first=284 second=330 amount=-1 +kerning first=103 second=339 amount=-1 +kerning first=370 second=103 amount=-1 +kerning first=327 second=304 amount=-1 +kerning first=268 second=218 amount=-1 +kerning first=362 second=220 amount=-1 +kerning first=8250 second=375 amount=-1 +kerning first=368 second=77 amount=-1 +kerning first=220 second=246 amount=-1 +kerning first=298 second=103 amount=-1 +kerning first=78 second=304 amount=-1 +kerning first=1049 second=1031 amount=-1 +kerning first=374 second=197 amount=-1 +kerning first=262 second=103 amount=-1 +kerning first=232 second=333 amount=-1 +kerning first=325 second=278 amount=-1 +kerning first=296 second=77 amount=-1 +kerning first=101 second=100 amount=-1 +kerning first=226 second=103 amount=-1 +kerning first=204 second=74 amount=-1 +kerning first=246 second=187 amount=-1 +kerning first=218 second=220 amount=-1 +kerning first=221 second=382 amount=-1 +kerning first=314 second=246 amount=-1 +kerning first=8217 second=97 amount=-1 +kerning first=85 second=298 amount=-1 +kerning first=73 second=100 amount=-1 +kerning first=211 second=356 amount=-1 +kerning first=339 second=232 amount=-1 +kerning first=1070 second=1030 amount=-1 +kerning first=206 second=246 amount=-1 +kerning first=298 second=298 amount=-1 +kerning first=333 second=103 amount=-1 +kerning first=262 second=298 amount=-1 +kerning first=201 second=330 amount=-1 +kerning first=196 second=220 amount=-1 +kerning first=1039 second=1091 amount=-1 +kerning first=229 second=269 amount=-1 +kerning first=370 second=298 amount=-1 +kerning first=304 second=220 amount=-1 +kerning first=334 second=298 amount=-1 +kerning first=268 second=220 amount=-1 +kerning first=224 second=333 amount=-1 +kerning first=271 second=339 amount=-1 +kerning first=203 second=68 amount=-1 +kerning first=1044 second=1074 amount=-1 +kerning first=1059 second=1040 amount=-1 +kerning first=280 second=211 amount=-1 +kerning first=368 second=333 amount=-1 +kerning first=80 second=382 amount=-1 +kerning first=335 second=8222 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=235 second=365 amount=-1 +kerning first=296 second=333 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=263 second=8222 amount=-1 +kerning first=67 second=211 amount=-1 +kerning first=212 second=315 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=225 second=339 amount=-1 +kerning first=99 second=281 amount=-1 +kerning first=83 second=361 amount=-1 +kerning first=204 second=281 amount=-1 +kerning first=79 second=202 amount=-1 +kerning first=1052 second=1047 amount=-1 +kerning first=261 second=339 amount=-1 +kerning first=240 second=281 amount=-1 +kerning first=8250 second=213 amount=-1 +kerning first=1053 second=1074 amount=-1 +kerning first=284 second=315 amount=-1 +kerning first=198 second=344 amount=-1 +kerning first=1030 second=1051 amount=-1 +kerning first=362 second=264 amount=-1 +kerning first=199 second=111 amount=-1 +kerning first=84 second=339 amount=-1 +kerning first=364 second=202 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=1031 second=1057 amount=-1 +kerning first=118 second=120 amount=-1 +kerning first=68 second=364 amount=-1 +kerning first=74 second=313 amount=-1 +kerning first=187 second=120 amount=-1 +kerning first=218 second=264 amount=-1 +kerning first=314 second=277 amount=-1 +kerning first=223 second=120 amount=-1 +kerning first=220 second=202 amount=-1 +kerning first=1056 second=1025 amount=-1 +kerning first=369 second=339 amount=-1 +kerning first=71 second=315 amount=-1 +kerning first=217 second=251 amount=-1 +kerning first=298 second=275 amount=-1 +kerning first=77 second=264 amount=-1 +kerning first=198 second=212 amount=-1 +kerning first=8218 second=290 amount=-1 +kerning first=216 second=8217 amount=-2 +kerning first=252 second=8217 amount=-1 +kerning first=330 second=223 amount=-1 +kerning first=288 second=8217 amount=-1 +kerning first=253 second=251 amount=-1 +kerning first=324 second=8217 amount=-2 +kerning first=289 second=251 amount=-1 +kerning first=353 second=8222 amount=-1 +kerning first=85 second=271 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=75 second=8217 amount=-1 +kerning first=370 second=269 amount=-1 +kerning first=111 second=8217 amount=-2 +kerning first=1043 second=1094 amount=-1 +kerning first=201 second=8221 amount=-1 +kerning first=324 second=245 amount=-1 +kerning first=262 second=271 amount=-1 +kerning first=235 second=111 amount=-1 +kerning first=271 second=111 amount=-1 +kerning first=252 second=245 amount=-1 +kerning first=307 second=111 amount=-1 +kerning first=298 second=271 amount=-1 +kerning first=345 second=8221 amount=-1 +kerning first=207 second=353 amount=-1 +kerning first=381 second=8221 amount=-1 +kerning first=370 second=271 amount=-1 +kerning first=1065 second=1092 amount=-1 +kerning first=209 second=334 amount=-1 +kerning first=258 second=221 amount=-1 +kerning first=1053 second=1101 amount=-1 +kerning first=220 second=229 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=1030 second=1024 amount=-1 +kerning first=1043 second=1075 amount=-1 +kerning first=72 second=67 amount=-1 +kerning first=205 second=233 amount=-1 +kerning first=210 second=203 amount=-1 +kerning first=99 second=254 amount=-1 +kerning first=1056 second=1044 amount=-1 +kerning first=229 second=277 amount=-1 +kerning first=100 second=233 amount=-1 +kerning first=282 second=203 amount=-1 +kerning first=323 second=8221 amount=-1 +kerning first=73 second=280 amount=-1 +kerning first=201 second=357 amount=-1 +kerning first=241 second=233 amount=-1 +kerning first=214 second=280 amount=-1 +kerning first=234 second=117 amount=-1 +kerning first=69 second=203 amount=-1 +kerning first=277 second=233 amount=-1 +kerning first=187 second=374 amount=-2 +kerning first=1066 second=1024 amount=-1 +kerning first=286 second=280 amount=-1 +kerning first=228 second=263 amount=-1 +kerning first=74 second=111 amount=-1 +kerning first=264 second=263 amount=-1 +kerning first=1104 second=1119 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=1031 second=1084 amount=-1 +kerning first=219 second=363 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=198 second=288 amount=-1 +kerning first=255 second=363 amount=-1 +kerning first=302 second=201 amount=-1 +kerning first=291 second=363 amount=-1 +kerning first=368 second=213 amount=-1 +kerning first=338 second=201 amount=-1 +kerning first=275 second=122 amount=-1 +kerning first=327 second=70 amount=-1 +kerning first=235 second=311 amount=-1 +kerning first=374 second=245 amount=-1 +kerning first=264 second=317 amount=-1 +kerning first=266 second=201 amount=-1 +kerning first=325 second=224 amount=-1 +kerning first=1048 second=1104 amount=-1 +kerning first=217 second=224 amount=-1 +kerning first=219 second=103 amount=-1 +kerning first=86 second=250 amount=-1 +kerning first=98 second=122 amount=-1 +kerning first=110 second=113 amount=-1 +kerning first=272 second=204 amount=-1 +kerning first=1091 second=1093 amount=-1 +kerning first=85 second=244 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=200 second=204 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=327 second=8218 amount=-1 +kerning first=195 second=354 amount=-1 +kerning first=323 second=259 amount=-1 +kerning first=226 second=244 amount=-1 +kerning first=70 second=79 amount=-1 +kerning first=262 second=244 amount=-1 +kerning first=282 second=116 amount=-1 +kerning first=362 second=210 amount=-1 +kerning first=298 second=244 amount=-1 +kerning first=1042 second=1096 amount=-1 +kerning first=364 second=256 amount=-1 +kerning first=218 second=210 amount=-1 +kerning first=1078 second=1096 amount=-1 +kerning first=77 second=210 amount=-1 +kerning first=99 second=363 amount=-1 +kerning first=327 second=283 amount=-1 +kerning first=1096 second=1095 amount=-1 +kerning first=202 second=262 amount=-1 +kerning first=310 second=262 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=274 second=262 amount=-1 +kerning first=217 second=355 amount=-1 +kerning first=1033 second=1049 amount=-1 +kerning first=234 second=98 amount=-1 +kerning first=264 second=298 amount=-1 +kerning first=1043 second=1102 amount=-1 +kerning first=211 second=302 amount=-1 +kerning first=286 second=73 amount=-1 +kerning first=277 second=248 amount=-1 +kerning first=204 second=335 amount=-1 +kerning first=207 second=345 amount=-1 +kerning first=243 second=345 amount=-1 +kerning first=1024 second=1095 amount=-1 +kerning first=258 second=107 amount=-1 +kerning first=279 second=345 amount=-1 +kerning first=350 second=219 amount=-1 +kerning first=240 second=335 amount=-1 +kerning first=296 second=213 amount=-1 +kerning first=70 second=302 amount=-1 +kerning first=203 second=268 amount=-1 +kerning first=278 second=219 amount=-1 +kerning first=205 second=206 amount=-1 +kerning first=1068 second=1070 amount=-1 +kerning first=206 second=219 amount=-1 +kerning first=263 second=277 amount=-1 +kerning first=266 second=368 amount=-1 +kerning first=352 second=8221 amount=-1 +kerning first=227 second=277 amount=-1 +kerning first=8249 second=374 amount=-1 +kerning first=302 second=368 amount=-1 +kerning first=338 second=368 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=325 second=82 amount=-1 +kerning first=87 second=290 amount=-1 +kerning first=85 second=217 amount=-1 +kerning first=73 second=73 amount=-1 +kerning first=1053 second=1047 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=214 second=73 amount=-1 +kerning first=194 second=368 amount=-1 +kerning first=328 second=283 amount=-1 +kerning first=122 second=8249 amount=-1 +kerning first=217 second=197 amount=-1 +kerning first=1056 second=1092 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=199 second=338 amount=-1 +kerning first=1054 second=1084 amount=-1 +kerning first=202 second=82 amount=-1 +kerning first=8222 second=246 amount=-1 +kerning first=289 second=245 amount=-1 +kerning first=263 second=8249 amount=-1 +kerning first=86 second=277 amount=-1 +kerning first=1062 second=1057 amount=-1 +kerning first=274 second=82 amount=-1 +kerning first=323 second=286 amount=-1 +kerning first=230 second=120 amount=-1 +kerning first=212 second=282 amount=-1 +kerning first=220 second=283 amount=-1 +kerning first=1036 second=1086 amount=-1 +kerning first=1118 second=1097 amount=-1 +kerning first=251 second=99 amount=-1 +kerning first=70 second=251 amount=-1 +kerning first=271 second=45 amount=-1 +kerning first=1060 second=1068 amount=-1 +kerning first=370 second=244 amount=-1 +kerning first=199 second=45 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=69 second=116 amount=-1 +kerning first=287 second=113 amount=-1 +kerning first=207 second=79 amount=-1 +kerning first=323 second=113 amount=-1 +kerning first=97 second=235 amount=-1 +kerning first=307 second=171 amount=-1 +kerning first=1053 second=1048 amount=-1 +kerning first=74 second=286 amount=-1 +kerning first=251 second=113 amount=-1 +kerning first=86 second=8249 amount=-2 +kerning first=218 second=350 amount=-1 +kerning first=219 second=70 amount=-1 +kerning first=246 second=8250 amount=-1 +kerning first=263 second=104 amount=-1 +kerning first=304 second=274 amount=-1 +kerning first=205 second=109 amount=-1 +kerning first=77 second=350 amount=-1 +kerning first=1041 second=1056 amount=-1 +kerning first=1048 second=1077 amount=-1 +kerning first=78 second=70 amount=-1 +kerning first=262 second=226 amount=-1 +kerning first=268 second=274 amount=-1 +kerning first=217 second=344 amount=-1 +kerning first=1118 second=1085 amount=-1 +kerning first=282 second=284 amount=-1 +kerning first=375 second=115 amount=-1 +kerning first=84 second=231 amount=-1 +kerning first=220 second=310 amount=-1 +kerning first=351 second=318 amount=-1 +kerning first=1046 second=1085 amount=-1 +kerning first=8217 second=250 amount=-1 +kerning first=74 second=205 amount=-1 +kerning first=8218 second=85 amount=-1 +kerning first=1071 second=1053 amount=-1 +kerning first=79 second=310 amount=-1 +kerning first=231 second=115 amount=-1 +kerning first=8250 second=274 amount=-1 +kerning first=323 second=205 amount=-1 +kerning first=213 second=219 amount=-1 +kerning first=69 second=284 amount=-1 +kerning first=267 second=115 amount=-1 +kerning first=339 second=115 amount=-1 +kerning first=243 second=106 amount=-1 +kerning first=369 second=231 amount=-1 +kerning first=279 second=106 amount=-1 +kerning first=1054 second=1036 amount=-1 +kerning first=1105 second=1091 amount=-1 +kerning first=80 second=89 amount=-1 +kerning first=203 second=214 amount=-1 +kerning first=225 second=231 amount=-1 +kerning first=261 second=231 amount=-1 +kerning first=201 second=217 amount=-1 +kerning first=1047 second=1044 amount=-1 +kerning first=83 second=45 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=72 second=235 amount=-1 +kerning first=287 second=333 amount=-1 +kerning first=310 second=116 amount=-1 +kerning first=283 second=243 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=108 second=235 amount=-1 +kerning first=260 second=45 amount=-1 +kerning first=355 second=243 amount=-1 +kerning first=205 second=353 amount=-1 +kerning first=278 second=332 amount=-1 +kerning first=366 second=275 amount=-1 +kerning first=1062 second=1028 amount=-1 +kerning first=270 second=70 amount=-1 +kerning first=277 second=353 amount=-1 +kerning first=209 second=71 amount=-1 +kerning first=117 second=275 amount=-1 +kerning first=1048 second=1050 amount=-1 +kerning first=8220 second=368 amount=-1 +kerning first=193 second=362 amount=-1 +kerning first=1034 second=1067 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=8250 second=67 amount=-1 +kerning first=368 second=45 amount=-2 +kerning first=1030 second=1096 amount=-1 +kerning first=219 second=97 amount=-1 +kerning first=85 second=225 amount=-1 +kerning first=77 second=323 amount=-1 +kerning first=263 second=223 amount=-1 +kerning first=106 second=243 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=70 second=243 amount=-1 +kerning first=274 second=370 amount=-1 +kerning first=197 second=107 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=228 second=122 amount=-1 +kerning first=1071 second=1080 amount=-1 +kerning first=310 second=370 amount=-1 +kerning first=323 second=232 amount=-1 +kerning first=81 second=302 amount=-1 +kerning first=87 second=122 amount=-1 +kerning first=202 second=370 amount=-1 +kerning first=364 second=337 amount=-1 +kerning first=287 second=232 amount=-1 +kerning first=78 second=336 amount=-1 +kerning first=218 second=323 amount=-1 +kerning first=328 second=337 amount=-1 +kerning first=251 second=232 amount=-1 +kerning first=117 second=234 amount=-1 +kerning first=219 second=336 amount=-1 +kerning first=346 second=370 amount=-1 +kerning first=220 second=337 amount=-1 +kerning first=217 second=317 amount=-1 +kerning first=218 second=75 amount=-1 +kerning first=362 second=323 amount=-1 +kerning first=241 second=119 amount=-1 +kerning first=8217 second=277 amount=-1 +kerning first=327 second=336 amount=-1 +kerning first=242 second=8250 amount=-1 +kerning first=201 second=249 amount=-1 +kerning first=8222 second=122 amount=-1 +kerning first=1030 second=1105 amount=-1 +kerning first=1060 second=1041 amount=-1 +kerning first=101 second=8250 amount=-1 +kerning first=65 second=8250 amount=-1 +kerning first=266 second=314 amount=-1 +kerning first=264 second=122 amount=-1 +kerning first=259 second=234 amount=-1 +kerning first=110 second=232 amount=-1 +kerning first=230 second=314 amount=-1 +kerning first=1047 second=1071 amount=-1 +kerning first=344 second=45 amount=-1 +kerning first=74 second=232 amount=-1 +kerning first=194 second=314 amount=-1 +kerning first=296 second=72 amount=-1 +kerning first=72 second=267 amount=-1 +kerning first=108 second=267 amount=-1 +kerning first=65 second=105 amount=-1 +kerning first=281 second=98 amount=-1 +kerning first=217 second=110 amount=-1 +kerning first=325 second=110 amount=-1 +kerning first=289 second=110 amount=-1 +kerning first=368 second=72 amount=-1 +kerning first=368 second=296 amount=-1 +kerning first=1049 second=1036 amount=-1 +kerning first=302 second=114 amount=-1 +kerning first=1048 second=1079 amount=-1 +kerning first=199 second=225 amount=-1 +kerning first=72 second=323 amount=-1 +kerning first=266 second=114 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=264 second=290 amount=-1 +kerning first=374 second=114 amount=-1 +kerning first=1068 second=1062 amount=-1 +kerning first=302 second=211 amount=-1 +kerning first=338 second=114 amount=-1 +kerning first=330 second=302 amount=-1 +kerning first=330 second=231 amount=-1 +kerning first=249 second=267 amount=-1 +kerning first=89 second=114 amount=-1 +kerning first=214 second=46 amount=-1 +kerning first=218 second=115 amount=-1 +kerning first=230 second=114 amount=-1 +kerning first=1038 second=1046 amount=-1 +kerning first=243 second=318 amount=-1 +kerning first=229 second=335 amount=-1 +kerning first=194 second=114 amount=-1 +kerning first=99 second=8250 amount=-1 +kerning first=279 second=318 amount=-1 +kerning first=77 second=69 amount=-1 +kerning first=327 second=219 amount=-1 +kerning first=339 second=273 amount=-1 +kerning first=77 second=296 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=267 second=273 amount=-1 +kerning first=231 second=273 amount=-1 +kerning first=290 second=296 amount=-1 +kerning first=350 second=78 amount=-1 +kerning first=1059 second=1096 amount=-1 +kerning first=225 second=108 amount=-1 +kerning first=346 second=117 amount=-1 +kerning first=218 second=296 amount=-1 +kerning first=364 second=364 amount=-1 +kerning first=245 second=44 amount=-1 +kerning first=354 second=111 amount=-1 +kerning first=75 second=218 amount=-1 +kerning first=281 second=44 amount=-1 +kerning first=362 second=296 amount=-1 +kerning first=278 second=78 amount=-1 +kerning first=209 second=44 amount=-1 +kerning first=1047 second=1098 amount=-1 +kerning first=304 second=355 amount=-1 +kerning first=366 second=248 amount=-1 +kerning first=73 second=334 amount=-1 +kerning first=327 second=282 amount=-1 +kerning first=232 second=355 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=353 second=44 amount=-1 +kerning first=1041 second=1024 amount=-1 +kerning first=219 second=282 amount=-1 +kerning first=230 second=287 amount=-1 +kerning first=187 second=288 amount=-1 +kerning first=45 second=221 amount=-2 +kerning first=1076 second=1091 amount=-1 +kerning first=82 second=288 amount=-1 +kerning first=78 second=282 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=354 second=230 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=8222 second=382 amount=-1 +kerning first=1059 second=1089 amount=-1 +kerning first=217 second=83 amount=-1 +kerning first=219 second=331 amount=-1 +kerning first=1038 second=1073 amount=-1 +kerning first=351 second=291 amount=-1 +kerning first=262 second=352 amount=-1 +kerning first=194 second=87 amount=-1 +kerning first=325 second=83 amount=-1 +kerning first=279 second=291 amount=-1 +kerning first=243 second=291 amount=-1 +kerning first=370 second=352 amount=-1 +kerning first=307 second=99 amount=-1 +kerning first=298 second=352 amount=-1 +kerning first=200 second=76 amount=-1 +kerning first=268 second=282 amount=-1 +kerning first=1050 second=1091 amount=-1 +kerning first=334 second=325 amount=-1 +kerning first=298 second=325 amount=-1 +kerning first=199 second=279 amount=-1 +kerning first=347 second=187 amount=-1 +kerning first=350 second=278 amount=-1 +kerning first=248 second=108 amount=-1 +kerning first=231 second=8218 amount=-1 +kerning first=370 second=325 amount=-1 +kerning first=78 second=211 amount=-1 +kerning first=1077 second=1119 amount=-1 +kerning first=70 second=211 amount=-1 +kerning first=78 second=68 amount=-1 +kerning first=77 second=269 amount=-1 +kerning first=210 second=84 amount=-1 +kerning first=219 second=323 amount=-1 +kerning first=8217 second=226 amount=-1 +kerning first=221 second=71 amount=-1 +kerning first=88 second=362 amount=-1 +kerning first=98 second=187 amount=-1 +kerning first=218 second=269 amount=-1 +kerning first=224 second=99 amount=-1 +kerning first=97 second=316 amount=-1 +kerning first=275 second=187 amount=-1 +kerning first=362 second=269 amount=-1 +kerning first=81 second=75 amount=-1 +kerning first=232 second=382 amount=-1 +kerning first=217 second=371 amount=-1 +kerning first=368 second=99 amount=-1 +kerning first=1044 second=1082 amount=-1 +kerning first=268 second=382 amount=-1 +kerning first=203 second=187 amount=-1 +kerning first=198 second=266 amount=-1 +kerning first=304 second=382 amount=-1 +kerning first=1062 second=1082 amount=-1 +kerning first=296 second=99 amount=-1 +kerning first=326 second=269 amount=-1 +kerning first=8250 second=86 amount=-2 +kerning first=89 second=260 amount=-1 +kerning first=200 second=117 amount=-1 +kerning first=1076 second=1083 amount=-1 +kerning first=366 second=8220 amount=-1 +kerning first=205 second=380 amount=-1 +kerning first=330 second=248 amount=-1 +kerning first=1059 second=1116 amount=-1 +kerning first=277 second=380 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=288 second=218 amount=-1 +kerning first=1067 second=1030 amount=-1 +kerning first=275 second=103 amount=-1 +kerning first=1068 second=1043 amount=-1 +kerning first=1038 second=1100 amount=-1 +kerning first=366 second=75 amount=-1 +kerning first=330 second=75 amount=-1 +kerning first=117 second=248 amount=-1 +kerning first=207 second=264 amount=-1 +kerning first=374 second=260 amount=-1 +kerning first=264 second=209 amount=-1 +kerning first=81 second=8220 amount=-2 +kerning first=362 second=69 amount=-1 +kerning first=85 second=325 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=220 second=364 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=70 second=270 amount=-1 +kerning first=270 second=66 amount=-1 +kerning first=99 second=367 amount=-1 +kerning first=86 second=196 amount=-1 +kerning first=258 second=8220 amount=-2 +kerning first=65 second=251 amount=-1 +kerning first=222 second=8220 amount=-2 +kerning first=218 second=69 amount=-1 +kerning first=79 second=364 amount=-1 +kerning first=198 second=66 amount=-1 +kerning first=262 second=325 amount=-1 +kerning first=211 second=270 amount=-1 +kerning first=100 second=380 amount=-1 +kerning first=107 second=108 amount=-1 +kerning first=1052 second=1073 amount=-1 +kerning first=335 second=8217 amount=-2 +kerning first=193 second=264 amount=-1 +kerning first=350 second=8221 amount=-1 +kerning first=355 second=351 amount=-1 +kerning first=101 second=251 amount=-1 +kerning first=103 second=103 amount=-1 +kerning first=270 second=364 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=269 second=122 amount=-1 +kerning first=1055 second=1034 amount=-1 +kerning first=283 second=351 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=350 second=251 amount=-1 +kerning first=204 second=69 amount=-1 +kerning first=198 second=364 amount=-1 +kerning first=252 second=277 amount=-1 +kerning first=108 second=316 amount=-1 +kerning first=278 second=251 amount=-1 +kerning first=263 second=8217 amount=-2 +kerning first=275 second=355 amount=-1 +kerning first=8218 second=254 amount=-1 +kerning first=314 second=251 amount=-1 +kerning first=1065 second=1060 amount=-1 +kerning first=252 second=232 amount=-1 +kerning first=325 second=273 amount=-1 +kerning first=70 second=351 amount=-1 +kerning first=85 second=8221 amount=-1 +kerning first=72 second=99 amount=-1 +kerning first=374 second=65 amount=-1 +kerning first=121 second=8221 amount=-2 +kerning first=69 second=355 amount=-1 +kerning first=1041 second=1051 amount=-1 +kerning first=226 second=8221 amount=-2 +kerning first=1064 second=1064 amount=-1 +kerning first=221 second=193 amount=-1 +kerning first=249 second=99 amount=-1 +kerning first=211 second=351 amount=-1 +kerning first=204 second=286 amount=-1 +kerning first=218 second=242 amount=-1 +kerning first=108 second=99 amount=-1 +kerning first=77 second=242 amount=-1 +kerning first=356 second=347 amount=-1 +kerning first=326 second=242 amount=-1 +kerning first=8250 second=365 amount=-1 +kerning first=1056 second=1030 amount=-1 +kerning first=282 second=171 amount=-1 +kerning first=362 second=242 amount=-1 +kerning first=1066 second=1056 amount=-1 +kerning first=354 second=171 amount=-1 +kerning first=264 second=78 amount=-1 +kerning first=199 second=333 amount=-1 +kerning first=370 second=113 amount=-1 +kerning first=70 second=8250 amount=-2 +kerning first=65 second=118 amount=-1 +kerning first=78 second=44 amount=-1 +kerning first=205 second=282 amount=-1 +kerning first=330 second=346 amount=-1 +kerning first=275 second=100 amount=-1 +kerning first=230 second=233 amount=-1 +kerning first=8218 second=117 amount=-1 +kerning first=86 second=8217 amount=-1 +kerning first=89 second=233 amount=-1 +kerning first=122 second=8217 amount=-1 +kerning first=1049 second=1091 amount=-1 +kerning first=69 second=171 amount=-1 +kerning first=211 second=310 amount=-1 +kerning first=374 second=233 amount=-1 +kerning first=89 second=117 amount=-1 +kerning first=266 second=233 amount=-1 +kerning first=302 second=233 amount=-1 +kerning first=74 second=71 amount=-1 +kerning first=1056 second=1108 amount=-1 +kerning first=298 second=330 amount=-1 +kerning first=1069 second=1034 amount=-1 +kerning first=325 second=246 amount=-1 +kerning first=73 second=68 amount=-1 +kerning first=356 second=103 amount=-1 +kerning first=289 second=246 amount=-1 +kerning first=80 second=220 amount=-1 +kerning first=246 second=382 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=217 second=246 amount=-1 +kerning first=248 second=103 amount=-1 +kerning first=368 second=365 amount=-1 +kerning first=346 second=77 amount=-1 +kerning first=375 second=45 amount=-1 +kerning first=354 second=382 amount=-1 +kerning first=85 second=330 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=253 second=316 amount=-1 +kerning first=107 second=103 amount=-1 +kerning first=263 second=109 amount=-1 +kerning first=1078 second=1074 amount=-1 +kerning first=271 second=333 amount=-1 +kerning first=70 second=194 amount=-1 +kerning first=1068 second=1048 amount=-1 +kerning first=307 second=333 amount=-1 +kerning first=214 second=68 amount=-1 +kerning first=370 second=330 amount=-1 +kerning first=119 second=365 amount=-1 +kerning first=8220 second=260 amount=-2 +kerning first=271 second=171 amount=-1 +kerning first=286 second=68 amount=-1 +kerning first=83 second=365 amount=-1 +kerning first=296 second=334 amount=-1 +kerning first=73 second=339 amount=-1 +kerning first=204 second=313 amount=-1 +kerning first=251 second=281 amount=-1 +kerning first=1085 second=1095 amount=-1 +kerning first=287 second=281 amount=-1 +kerning first=334 second=86 amount=-1 +kerning first=212 second=347 amount=-1 +kerning first=72 second=355 amount=-1 +kerning first=323 second=281 amount=-1 +kerning first=1033 second=1041 amount=-1 +kerning first=272 second=8220 amount=-2 +kerning first=112 second=8218 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=87 second=353 amount=-1 +kerning first=380 second=8220 amount=-1 +kerning first=323 second=270 amount=-1 +kerning first=344 second=8220 amount=-1 +kerning first=1031 second=1025 amount=-1 +kerning first=316 second=277 amount=-1 +kerning first=274 second=77 amount=-1 +kerning first=234 second=120 amount=-1 +kerning first=202 second=77 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=250 second=339 amount=-1 +kerning first=8218 second=105 amount=-1 +kerning first=8217 second=326 amount=-1 +kerning first=74 second=281 amount=-1 +kerning first=1052 second=1100 amount=-1 +kerning first=1070 second=1070 amount=-1 +kerning first=110 second=281 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=201 second=298 amount=-1 +kerning first=272 second=356 amount=-1 +kerning first=68 second=202 amount=-1 +kerning first=1053 second=1042 amount=-1 +kerning first=288 second=8249 amount=-1 +kerning first=78 second=368 amount=-1 +kerning first=204 second=232 amount=-1 +kerning first=302 second=206 amount=-1 +kerning first=105 second=232 amount=-1 +kerning first=324 second=8249 amount=-1 +kerning first=284 second=76 amount=-1 +kerning first=338 second=206 amount=-1 +kerning first=370 second=357 amount=-1 +kerning first=99 second=232 amount=-1 +kerning first=74 second=335 amount=-1 +kerning first=1028 second=1118 amount=-1 +kerning first=219 second=368 amount=-1 +kerning first=217 second=219 amount=-1 +kerning first=266 second=206 amount=-1 +kerning first=101 second=111 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=262 second=357 amount=-1 +kerning first=8250 second=121 amount=-1 +kerning first=110 second=335 amount=-1 +kerning first=1064 second=1118 amount=-1 +kerning first=251 second=335 amount=-1 +kerning first=240 second=232 amount=-1 +kerning first=298 second=357 amount=-1 +kerning first=203 second=344 amount=-1 +kerning first=1033 second=1044 amount=-1 +kerning first=344 second=85 amount=-1 +kerning first=45 second=71 amount=-1 +kerning first=234 second=234 amount=-1 +kerning first=264 second=241 amount=-1 +kerning first=272 second=85 amount=-1 +kerning first=8250 second=338 amount=-1 +kerning first=67 second=102 amount=-1 +kerning first=72 second=262 amount=-1 +kerning first=200 second=85 amount=-1 +kerning first=327 second=368 amount=-1 +kerning first=1069 second=1044 amount=-1 +kerning first=252 second=8249 amount=-1 +kerning first=368 second=67 amount=-1 +kerning first=1042 second=1042 amount=-1 +kerning first=296 second=67 amount=-1 +kerning first=275 second=46 amount=-1 +kerning first=286 second=366 amount=-1 +kerning first=330 second=216 amount=-1 +kerning first=70 second=378 amount=-1 +kerning first=347 second=46 amount=-1 +kerning first=258 second=213 amount=-1 +kerning first=214 second=366 amount=-1 +kerning first=73 second=366 amount=-1 +kerning first=1036 second=1081 amount=-1 +kerning first=366 second=216 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=85 second=357 amount=-1 +kerning first=296 second=284 amount=-1 +kerning first=86 second=353 amount=-1 +kerning first=89 second=363 amount=-1 +kerning first=202 second=325 amount=-1 +kerning first=212 second=370 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=354 second=225 amount=-1 +kerning first=207 second=350 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=211 second=80 amount=-1 +kerning first=230 second=363 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=263 second=353 amount=-1 +kerning first=1065 second=1114 amount=-1 +kerning first=45 second=216 amount=-1 +kerning first=70 second=80 amount=-1 +kerning first=75 second=8222 amount=-1 +kerning first=117 second=113 amount=-1 +kerning first=270 second=207 amount=-1 +kerning first=204 second=73 amount=-1 +kerning first=70 second=107 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=1033 second=1071 amount=-1 +kerning first=256 second=8220 amount=-2 +kerning first=119 second=311 amount=-1 +kerning first=8217 second=353 amount=-1 +kerning first=280 second=70 amount=-1 +kerning first=118 second=369 amount=-1 +kerning first=283 second=378 amount=-1 +kerning first=298 second=113 amount=-1 +kerning first=205 second=201 amount=-1 +kerning first=1041 second=1070 amount=-1 +kerning first=310 second=44 amount=-1 +kerning first=226 second=113 amount=-1 +kerning first=288 second=8222 amount=-1 +kerning first=262 second=113 amount=-1 +kerning first=235 second=116 amount=-1 +kerning first=216 second=8222 amount=-1 +kerning first=1049 second=1068 amount=-1 +kerning first=199 second=116 amount=-1 +kerning first=326 second=118 amount=-1 +kerning first=203 second=317 amount=-1 +kerning first=111 second=8222 amount=-1 +kerning first=85 second=113 amount=-1 +kerning first=198 second=207 amount=-1 +kerning first=99 second=259 amount=-1 +kerning first=264 second=268 amount=-1 +kerning first=8217 second=109 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=1036 second=1108 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=8217 second=194 amount=-2 +kerning first=338 second=284 amount=-1 +kerning first=1054 second=1038 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=118 second=98 amount=-1 +kerning first=200 second=302 amount=-1 +kerning first=1053 second=1096 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=323 second=335 amount=-1 +kerning first=287 second=335 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=203 second=73 amount=-1 +kerning first=324 second=277 amount=-1 +kerning first=73 second=122 amount=-1 +kerning first=264 second=234 amount=-1 +kerning first=1044 second=1114 amount=-1 +kerning first=87 second=268 amount=-1 +kerning first=325 second=219 amount=-1 +kerning first=283 second=107 amount=-1 +kerning first=202 second=213 amount=-1 +kerning first=264 second=187 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=79 second=88 amount=-1 +kerning first=192 second=187 amount=-1 +kerning first=1028 second=1080 amount=-1 +kerning first=354 second=279 amount=-1 +kerning first=266 second=336 amount=-1 +kerning first=228 second=187 amount=-1 +kerning first=263 second=117 amount=-1 +kerning first=302 second=336 amount=-1 +kerning first=74 second=200 amount=-1 +kerning first=81 second=270 amount=-1 +kerning first=204 second=362 amount=-1 +kerning first=241 second=118 amount=-1 +kerning first=338 second=336 amount=-1 +kerning first=310 second=213 amount=-1 +kerning first=8217 second=245 amount=-1 +kerning first=267 second=8250 amount=-1 +kerning first=374 second=336 amount=-1 +kerning first=274 second=213 amount=-1 +kerning first=336 second=187 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=207 second=323 amount=-1 +kerning first=209 second=283 amount=-1 +kerning first=194 second=119 amount=-1 +kerning first=105 second=279 amount=-1 +kerning first=356 second=244 amount=-1 +kerning first=192 second=371 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=187 second=266 amount=-1 +kerning first=87 second=187 amount=-1 +kerning first=206 second=327 amount=-1 +kerning first=323 second=200 amount=-1 +kerning first=73 second=204 amount=-1 +kerning first=278 second=327 amount=-1 +kerning first=368 second=262 amount=-1 +kerning first=106 second=248 amount=-1 +kerning first=291 second=314 amount=-1 +kerning first=268 second=79 amount=-1 +kerning first=350 second=327 amount=-1 +kerning first=70 second=248 amount=-1 +kerning first=255 second=314 amount=-1 +kerning first=304 second=79 amount=-1 +kerning first=1060 second=1036 amount=-1 +kerning first=327 second=171 amount=-1 +kerning first=1056 second=1052 amount=-1 +kerning first=206 second=110 amount=-1 +kerning first=274 second=327 amount=-1 +kerning first=68 second=66 amount=-1 +kerning first=1070 second=1062 amount=-1 +kerning first=281 second=283 amount=-1 +kerning first=120 second=318 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=87 second=371 amount=-1 +kerning first=113 second=318 amount=-1 +kerning first=229 second=245 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=111 second=380 amount=-1 +kerning first=254 second=318 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=217 second=192 amount=-1 +kerning first=267 second=305 amount=-1 +kerning first=328 second=231 amount=-1 +kerning first=339 second=44 amount=-1 +kerning first=231 second=305 amount=-1 +kerning first=330 second=270 amount=-1 +kerning first=203 second=209 amount=-1 +kerning first=1064 second=1089 amount=-1 +kerning first=378 second=8249 amount=-1 +kerning first=1047 second=1049 amount=-1 +kerning first=366 second=270 amount=-1 +kerning first=197 second=356 amount=-1 +kerning first=1048 second=1072 amount=-1 +kerning first=100 second=114 amount=-1 +kerning first=8217 second=218 amount=-1 +kerning first=374 second=363 amount=-1 +kerning first=68 second=310 amount=-1 +kerning first=205 second=114 amount=-1 +kerning first=282 second=252 amount=-1 +kerning first=241 second=8249 amount=-1 +kerning first=218 second=101 amount=-1 +kerning first=219 second=79 amount=-1 +kerning first=199 second=284 amount=-1 +kerning first=364 second=115 amount=-1 +kerning first=326 second=101 amount=-1 +kerning first=79 second=115 amount=-1 +kerning first=242 second=114 amount=-1 +kerning first=204 second=205 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=65 second=354 amount=-1 +kerning first=99 second=335 amount=-1 +kerning first=71 second=217 amount=-1 +kerning first=362 second=101 amount=-1 +kerning first=220 second=115 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=250 second=231 amount=-1 +kerning first=1056 second=1036 amount=-1 +kerning first=212 second=217 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=232 second=106 amount=-1 +kerning first=207 second=296 amount=-1 +kerning first=284 second=217 amount=-1 +kerning first=210 second=89 amount=-1 +kerning first=229 second=8220 amount=-2 +kerning first=73 second=231 amount=-1 +kerning first=109 second=231 amount=-1 +kerning first=264 second=214 amount=-1 +kerning first=264 second=344 amount=-1 +kerning first=209 second=310 amount=-1 +kerning first=69 second=252 amount=-1 +kerning first=100 second=8249 amount=-1 +kerning first=242 second=187 amount=-1 +kerning first=330 second=243 amount=-1 +kerning first=283 second=275 amount=-1 +kerning first=77 second=345 amount=-1 +kerning first=288 second=223 amount=-1 +kerning first=370 second=249 amount=-1 +kerning first=1041 second=1046 amount=-1 +kerning first=355 second=275 amount=-1 +kerning first=366 second=243 amount=-1 +kerning first=85 second=249 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=198 second=71 amount=-1 +kerning first=1049 second=1043 amount=-1 +kerning first=296 second=235 amount=-1 +kerning first=121 second=249 amount=-1 +kerning first=255 second=287 amount=-1 +kerning first=106 second=275 amount=-1 +kerning first=218 second=345 amount=-1 +kerning first=187 second=223 amount=-1 +kerning first=254 second=345 amount=-1 +kerning first=368 second=235 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=290 second=345 amount=-1 +kerning first=8218 second=268 amount=-1 +kerning first=326 second=345 amount=-1 +kerning first=362 second=345 amount=-1 +kerning first=200 second=213 amount=-1 +kerning first=81 second=80 amount=-1 +kerning first=363 second=287 amount=-1 +kerning first=70 second=275 amount=-1 +kerning first=206 second=83 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=249 second=45 amount=-1 +kerning first=67 second=97 amount=-1 +kerning first=330 second=80 amount=-1 +kerning first=1118 second=1080 amount=-1 +kerning first=117 second=243 amount=-1 +kerning first=1046 second=1080 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=1049 second=1083 amount=-1 +kerning first=107 second=44 amount=-1 +kerning first=281 second=337 amount=-1 +kerning first=68 second=195 amount=-1 +kerning first=205 second=304 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=86 second=245 amount=-1 +kerning first=1031 second=1079 amount=-1 +kerning first=209 second=337 amount=-1 +kerning first=200 second=199 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=350 second=8218 amount=-1 +kerning first=104 second=337 amount=-1 +kerning first=77 second=74 amount=-1 +kerning first=245 second=120 amount=-1 +kerning first=282 second=364 amount=-1 +kerning first=87 second=100 amount=-1 +kerning first=344 second=199 amount=-1 +kerning first=281 second=120 amount=-1 +kerning first=218 second=74 amount=-1 +kerning first=302 second=315 amount=-1 +kerning first=45 second=324 amount=-1 +kerning first=101 second=8218 amount=-1 +kerning first=75 second=220 amount=-1 +kerning first=362 second=74 amount=-1 +kerning first=1042 second=1082 amount=-1 +kerning first=279 second=269 amount=-1 +kerning first=242 second=8218 amount=-1 +kerning first=227 second=245 amount=-1 +kerning first=1039 second=1037 amount=-1 +kerning first=119 second=250 amount=-1 +kerning first=207 second=269 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=283 second=8220 amount=-2 +kerning first=221 second=111 amount=-1 +kerning first=213 second=72 amount=-1 +kerning first=1034 second=1037 amount=-1 +kerning first=257 second=111 amount=-1 +kerning first=72 second=72 amount=-1 +kerning first=355 second=8220 amount=-1 +kerning first=1042 second=1101 amount=-1 +kerning first=1091 second=1088 amount=-1 +kerning first=289 second=105 amount=-1 +kerning first=1078 second=1101 amount=-1 +kerning first=365 second=111 amount=-1 +kerning first=287 second=254 amount=-1 +kerning first=230 second=249 amount=-1 +kerning first=72 second=370 amount=-1 +kerning first=212 second=374 amount=-1 +kerning first=219 second=260 amount=-1 +kerning first=198 second=315 amount=-1 +kerning first=275 second=263 amount=-1 +kerning first=277 second=114 amount=-1 +kerning first=187 second=212 amount=-1 +kerning first=97 second=267 amount=-1 +kerning first=1059 second=1094 amount=-1 +kerning first=241 second=114 amount=-1 +kerning first=1043 second=1097 amount=-1 +kerning first=70 second=8220 amount=-1 +kerning first=80 second=111 amount=-1 +kerning first=211 second=8220 amount=-2 +kerning first=258 second=253 amount=-1 +kerning first=213 second=370 amount=-1 +kerning first=270 second=315 amount=-1 +kerning first=224 second=316 amount=-1 +kerning first=323 second=227 amount=-1 +kerning first=1067 second=1052 amount=-1 +kerning first=317 second=364 amount=-1 +kerning first=232 second=337 amount=-1 +kerning first=267 second=251 amount=-1 +kerning first=201 second=81 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=1064 second=1105 amount=-1 +kerning first=209 second=364 amount=-1 +kerning first=375 second=251 amount=-1 +kerning first=206 second=273 amount=-1 +kerning first=101 second=273 amount=-1 +kerning first=205 second=331 amount=-1 +kerning first=339 second=251 amount=-1 +kerning first=270 second=44 amount=-1 +kerning first=283 second=248 amount=-1 +kerning first=204 second=357 amount=-1 +kerning first=80 second=355 amount=-1 +kerning first=325 second=78 amount=-1 +kerning first=355 second=248 amount=-1 +kerning first=234 second=44 amount=-1 +kerning first=290 second=69 amount=-1 +kerning first=1107 second=1085 amount=-1 +kerning first=207 second=242 amount=-1 +kerning first=338 second=282 amount=-1 +kerning first=302 second=282 amount=-1 +kerning first=266 second=282 amount=-1 +kerning first=1049 second=1067 amount=-1 +kerning first=1052 second=1024 amount=-1 +kerning first=8218 second=214 amount=-1 +kerning first=279 second=242 amount=-1 +kerning first=200 second=8220 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=78 second=233 amount=-1 +kerning first=313 second=87 amount=-1 +kerning first=199 second=230 amount=-1 +kerning first=305 second=99 amount=-1 +kerning first=219 second=233 amount=-1 +kerning first=1027 second=1073 amount=-1 +kerning first=8222 second=220 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.png b/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.png new file mode 100644 index 000000000..a9cf3d830 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FT-FreeSerif16I.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif.ttf b/jme3-examples/src/main/resources/jme3test/font/FreeSerif.ttf new file mode 100644 index 000000000..b8906f505 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif.ttf differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.fnt b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.fnt new file mode 100644 index 000000000..4ff598269 --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.fnt @@ -0,0 +1,8029 @@ +info face="Free Serif" size=16 bold=0 italic=1 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=-2,-2 +common lineHeight=22 base=16 scaleW=512 scaleH=512 pages=1 packed=0 +page id=0 file="FreeSerif16I.png" +chars count=821 +char id=0 x=138 y=177 width=13 height=13 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=13 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=33 x=294 y=106 width=6 height=14 xoffset=1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=34 x=252 y=278 width=7 height=7 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=35 x=151 y=177 width=13 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=36 x=282 y=57 width=11 height=16 xoffset=-1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=37 x=300 y=106 width=14 height=14 xoffset=1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=38 x=314 y=106 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=39 x=505 y=256 width=4 height=7 xoffset=1 yoffset=4 xadvance=3 page=0 chnl=0 +char id=40 x=293 y=57 width=9 height=16 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=41 x=302 y=57 width=9 height=16 xoffset=-2 yoffset=4 xadvance=5 page=0 chnl=0 +char id=42 x=144 y=278 width=9 height=9 xoffset=1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=43 x=0 y=256 width=11 height=11 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=0 +char id=44 x=505 y=135 width=6 height=7 xoffset=-1 yoffset=13 xadvance=4 page=0 chnl=0 +char id=45 x=34 y=288 width=7 height=4 xoffset=0 yoffset=10 xadvance=5 page=0 chnl=0 +char id=46 x=451 y=278 width=5 height=5 xoffset=0 yoffset=13 xadvance=4 page=0 chnl=0 +char id=47 x=328 y=106 width=12 height=14 xoffset=-2 yoffset=4 xadvance=4 page=0 chnl=0 +char id=48 x=340 y=106 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=49 x=164 y=177 width=8 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=50 x=172 y=177 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=51 x=350 y=106 width=10 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=52 x=183 y=177 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=53 x=360 y=106 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=54 x=371 y=106 width=12 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=55 x=383 y=106 width=12 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=56 x=395 y=106 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=57 x=405 y=106 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=58 x=504 y=230 width=6 height=11 xoffset=0 yoffset=7 xadvance=4 page=0 chnl=0 +char id=59 x=194 y=177 width=7 height=13 xoffset=-1 yoffset=7 xadvance=4 page=0 chnl=0 +char id=60 x=129 y=243 width=13 height=12 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=0 +char id=61 x=222 y=278 width=12 height=8 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=0 +char id=62 x=142 y=243 width=12 height=12 xoffset=-1 yoffset=6 xadvance=9 page=0 chnl=0 +char id=63 x=416 y=106 width=10 height=14 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=64 x=426 y=106 width=15 height=14 xoffset=1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=65 x=201 y=177 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=66 x=215 y=177 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=67 x=441 y=106 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=68 x=228 y=177 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=69 x=242 y=177 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=70 x=255 y=177 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=71 x=454 y=106 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=72 x=269 y=177 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=73 x=286 y=177 width=10 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=74 x=468 y=106 width=11 height=14 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=75 x=296 y=177 width=15 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=76 x=311 y=177 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=77 x=323 y=177 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=78 x=479 y=106 width=17 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=79 x=496 y=106 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=80 x=342 y=177 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=81 x=311 y=57 width=14 height=16 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=82 x=356 y=177 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=83 x=0 y=121 width=11 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=84 x=369 y=177 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=85 x=11 y=121 width=15 height=14 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=86 x=26 y=121 width=14 height=14 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=87 x=40 y=121 width=19 height=14 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=88 x=383 y=177 width=16 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=89 x=399 y=177 width=15 height=13 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=90 x=414 y=177 width=15 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=91 x=325 y=57 width=9 height=16 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=92 x=59 y=121 width=6 height=14 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=93 x=334 y=57 width=9 height=16 xoffset=-2 yoffset=4 xadvance=5 page=0 chnl=0 +char id=94 x=153 y=278 width=9 height=9 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=95 x=108 y=288 width=11 height=3 xoffset=-2 yoffset=16 xadvance=8 page=0 chnl=0 +char id=96 x=456 y=278 width=6 height=5 xoffset=1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=97 x=11 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=98 x=65 y=121 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=99 x=21 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=100 x=75 y=121 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=101 x=31 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=102 x=429 y=177 width=12 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=103 x=86 y=121 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=104 x=441 y=177 width=10 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=105 x=451 y=177 width=7 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=106 x=120 y=22 width=10 height=17 xoffset=-3 yoffset=4 xadvance=4 page=0 chnl=0 +char id=107 x=458 y=177 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=108 x=469 y=177 width=7 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=109 x=182 y=267 width=15 height=10 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=110 x=197 y=267 width=10 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=111 x=41 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=112 x=97 y=121 width=12 height=14 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=113 x=109 y=121 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=114 x=207 y=267 width=10 height=10 xoffset=-1 yoffset=7 xadvance=5 page=0 chnl=0 +char id=115 x=51 y=256 width=9 height=11 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=116 x=476 y=177 width=8 height=13 xoffset=0 yoffset=5 xadvance=4 page=0 chnl=0 +char id=117 x=60 y=256 width=9 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=118 x=69 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=119 x=79 y=256 width=14 height=11 xoffset=0 yoffset=7 xadvance=12 page=0 chnl=0 +char id=120 x=217 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=121 x=120 y=121 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=122 x=228 y=267 width=10 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=123 x=503 y=40 width=8 height=16 xoffset=1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=124 x=131 y=121 width=6 height=14 xoffset=0 yoffset=4 xadvance=3 page=0 chnl=0 +char id=125 x=343 y=57 width=8 height=16 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=126 x=381 y=278 width=10 height=6 xoffset=0 yoffset=9 xadvance=9 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=161 x=137 y=121 width=7 height=14 xoffset=-1 yoffset=7 xadvance=5 page=0 chnl=0 +char id=162 x=446 y=90 width=10 height=15 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=163 x=144 y=121 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=164 x=93 y=256 width=13 height=11 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=165 x=484 y=177 width=15 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=166 x=155 y=121 width=6 height=14 xoffset=0 yoffset=4 xadvance=3 page=0 chnl=0 +char id=167 x=351 y=57 width=9 height=16 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=168 x=41 y=288 width=9 height=4 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=0 +char id=169 x=456 y=90 width=15 height=15 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=0 +char id=170 x=259 y=278 width=8 height=7 xoffset=0 yoffset=4 xadvance=4 page=0 chnl=0 +char id=171 x=162 y=278 width=10 height=9 xoffset=-1 yoffset=8 xadvance=7 page=0 chnl=0 +char id=172 x=234 y=278 width=11 height=8 xoffset=0 yoffset=8 xadvance=9 page=0 chnl=0 +char id=173 x=50 y=288 width=7 height=4 xoffset=0 yoffset=10 xadvance=5 page=0 chnl=0 +char id=174 x=471 y=90 width=15 height=15 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=0 +char id=175 x=57 y=288 width=9 height=4 xoffset=0 yoffset=5 xadvance=5 page=0 chnl=0 +char id=176 x=267 y=278 width=9 height=7 xoffset=1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=177 x=499 y=177 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=178 x=172 y=278 width=9 height=9 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=179 x=181 y=278 width=9 height=9 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=180 x=462 y=278 width=8 height=5 xoffset=1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=181 x=161 y=121 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=182 x=360 y=57 width=12 height=16 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=183 x=470 y=278 width=5 height=5 xoffset=0 yoffset=10 xadvance=4 page=0 chnl=0 +char id=184 x=276 y=278 width=6 height=7 xoffset=-1 yoffset=14 xadvance=5 page=0 chnl=0 +char id=185 x=190 y=278 width=7 height=9 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=186 x=282 y=278 width=9 height=7 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=187 x=197 y=278 width=11 height=9 xoffset=-1 yoffset=8 xadvance=7 page=0 chnl=0 +char id=188 x=172 y=121 width=13 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=189 x=185 y=121 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=190 x=199 y=121 width=13 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=191 x=212 y=121 width=8 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=192 x=130 y=22 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=193 x=144 y=22 width=15 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=194 x=159 y=22 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=195 x=372 y=57 width=14 height=16 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=196 x=386 y=57 width=14 height=16 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=197 x=173 y=22 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=198 x=0 y=191 width=17 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=199 x=187 y=22 width=13 height=17 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=200 x=200 y=22 width=13 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=201 x=213 y=22 width=15 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=202 x=228 y=22 width=13 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=203 x=400 y=57 width=15 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=204 x=241 y=22 width=12 height=17 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=205 x=253 y=22 width=16 height=17 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=206 x=269 y=22 width=12 height=17 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=207 x=415 y=57 width=14 height=16 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=208 x=17 y=191 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=209 x=281 y=22 width=17 height=17 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=210 x=121 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=211 x=135 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=212 x=149 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=213 x=298 y=22 width=14 height=17 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=214 x=312 y=22 width=14 height=17 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=215 x=238 y=267 width=12 height=10 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=216 x=429 y=57 width=15 height=16 xoffset=-1 yoffset=3 xadvance=12 page=0 chnl=0 +char id=217 x=163 y=0 width=15 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=218 x=178 y=0 width=15 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=219 x=193 y=0 width=15 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=220 x=326 y=22 width=15 height=17 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=221 x=341 y=22 width=15 height=17 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=222 x=31 y=191 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=223 x=220 y=121 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=224 x=231 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=225 x=241 y=121 width=14 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=226 x=255 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=227 x=265 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=228 x=43 y=191 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=229 x=486 y=90 width=10 height=15 xoffset=-1 yoffset=3 xadvance=7 page=0 chnl=0 +char id=230 x=106 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=231 x=275 y=121 width=10 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=232 x=285 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=233 x=295 y=121 width=14 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=234 x=309 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=235 x=57 y=191 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=236 x=71 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=237 x=82 y=191 width=15 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=238 x=97 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=239 x=154 y=243 width=11 height=12 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=0 +char id=240 x=319 y=121 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=241 x=108 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=242 x=330 y=121 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=243 x=340 y=121 width=14 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=244 x=354 y=121 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=245 x=364 y=121 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=246 x=119 y=191 width=12 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=247 x=165 y=243 width=11 height=12 xoffset=0 yoffset=6 xadvance=9 page=0 chnl=0 +char id=248 x=131 y=191 width=11 height=13 xoffset=-1 yoffset=6 xadvance=8 page=0 chnl=0 +char id=249 x=374 y=121 width=9 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=250 x=383 y=121 width=14 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=251 x=397 y=121 width=9 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=252 x=142 y=191 width=12 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=253 x=356 y=22 width=15 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=254 x=371 y=22 width=12 height=17 xoffset=-2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=255 x=383 y=22 width=13 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=256 x=496 y=90 width=15 height=15 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=0 +char id=257 x=154 y=191 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=258 x=396 y=22 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=259 x=406 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=260 x=444 y=57 width=15 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=261 x=168 y=191 width=10 height=13 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=262 x=208 y=0 width=16 height=18 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=263 x=416 y=121 width=15 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=264 x=224 y=0 width=13 height=18 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=265 x=431 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=266 x=410 y=22 width=13 height=17 xoffset=0 yoffset=1 xadvance=11 page=0 chnl=0 +char id=267 x=178 y=191 width=10 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=268 x=237 y=0 width=13 height=18 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=269 x=441 y=121 width=12 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=270 x=423 y=22 width=14 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=271 x=453 y=121 width=19 height=14 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=272 x=188 y=191 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=273 x=472 y=121 width=13 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=274 x=0 y=106 width=13 height=15 xoffset=-1 yoffset=2 xadvance=10 page=0 chnl=0 +char id=275 x=202 y=191 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=276 x=437 y=22 width=13 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=277 x=485 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=278 x=459 y=57 width=13 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=279 x=216 y=191 width=10 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=280 x=472 y=57 width=13 height=16 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=281 x=226 y=191 width=10 height=13 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=282 x=450 y=22 width=13 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=283 x=495 y=121 width=10 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=284 x=250 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=285 x=463 y=22 width=11 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=286 x=264 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=287 x=474 y=22 width=11 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=288 x=485 y=22 width=14 height=17 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=289 x=485 y=57 width=11 height=16 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=290 x=278 y=0 width=14 height=18 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=291 x=51 y=0 width=11 height=19 xoffset=-1 yoffset=2 xadvance=8 page=0 chnl=0 +char id=292 x=0 y=40 width=17 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=293 x=499 y=22 width=11 height=17 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=294 x=236 y=191 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=295 x=253 y=191 width=10 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=296 x=496 y=57 width=12 height=16 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=297 x=176 y=243 width=11 height=12 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=0 +char id=298 x=13 y=106 width=16 height=15 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=0 +char id=299 x=187 y=243 width=14 height=12 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=0 +char id=300 x=17 y=40 width=12 height=17 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=301 x=263 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=302 x=0 y=74 width=10 height=16 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=303 x=10 y=74 width=7 height=16 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=304 x=17 y=74 width=10 height=16 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=305 x=250 y=267 width=7 height=10 xoffset=-1 yoffset=7 xadvance=4 page=0 chnl=0 +char id=306 x=0 y=135 width=16 height=14 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=307 x=29 y=40 width=11 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=308 x=292 y=0 width=13 height=18 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=309 x=40 y=40 width=14 height=17 xoffset=-3 yoffset=4 xadvance=4 page=0 chnl=0 +char id=310 x=305 y=0 width=15 height=18 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=311 x=320 y=0 width=11 height=18 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=312 x=257 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=313 x=54 y=40 width=12 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=314 x=66 y=40 width=16 height=17 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=315 x=331 y=0 width=12 height=18 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=316 x=343 y=0 width=7 height=18 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=317 x=274 y=191 width=15 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=318 x=289 y=191 width=15 height=13 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=319 x=304 y=191 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=320 x=316 y=191 width=9 height=13 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=321 x=325 y=191 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=322 x=337 y=191 width=9 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=323 x=350 y=0 width=17 height=18 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=324 x=346 y=191 width=15 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=325 x=367 y=0 width=17 height=18 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=326 x=29 y=106 width=10 height=15 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=327 x=384 y=0 width=17 height=18 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=328 x=361 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=329 x=372 y=191 width=10 height=13 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=330 x=16 y=135 width=14 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=331 x=30 y=135 width=10 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=332 x=27 y=74 width=14 height=16 xoffset=0 yoffset=2 xadvance=12 page=0 chnl=0 +char id=333 x=382 y=191 width=12 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=334 x=401 y=0 width=14 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=335 x=40 y=135 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=336 x=415 y=0 width=21 height=18 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=337 x=50 y=135 width=19 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=338 x=69 y=135 width=18 height=14 xoffset=0 yoffset=4 xadvance=14 page=0 chnl=0 +char id=339 x=119 y=256 width=13 height=11 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=340 x=82 y=40 width=13 height=17 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=341 x=394 y=191 width=14 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=342 x=436 y=0 width=13 height=18 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=343 x=39 y=106 width=10 height=15 xoffset=-1 yoffset=7 xadvance=5 page=0 chnl=0 +char id=344 x=95 y=40 width=13 height=17 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=345 x=408 y=191 width=11 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=346 x=449 y=0 width=15 height=18 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=347 x=87 y=135 width=15 height=14 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=348 x=464 y=0 width=11 height=18 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=349 x=102 y=135 width=10 height=14 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=350 x=108 y=40 width=11 height=17 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=351 x=112 y=135 width=9 height=14 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=352 x=475 y=0 width=11 height=18 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=353 x=121 y=135 width=11 height=14 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=354 x=119 y=40 width=14 height=17 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=355 x=41 y=74 width=9 height=16 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=0 +char id=356 x=133 y=40 width=14 height=17 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=357 x=132 y=135 width=15 height=14 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=358 x=419 y=191 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=359 x=433 y=191 width=9 height=13 xoffset=-1 yoffset=5 xadvance=4 page=0 chnl=0 +char id=360 x=147 y=40 width=15 height=17 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=361 x=442 y=191 width=10 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=362 x=50 y=74 width=15 height=16 xoffset=1 yoffset=2 xadvance=12 page=0 chnl=0 +char id=363 x=452 y=191 width=12 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=364 x=486 y=0 width=15 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=365 x=147 y=135 width=10 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=366 x=0 y=22 width=15 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=367 x=49 y=106 width=9 height=15 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=368 x=15 y=22 width=20 height=18 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=369 x=157 y=135 width=19 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=370 x=65 y=74 width=15 height=16 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=371 x=464 y=191 width=9 height=13 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=372 x=35 y=22 width=19 height=18 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=373 x=176 y=135 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=374 x=162 y=40 width=15 height=17 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=375 x=177 y=40 width=11 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=376 x=80 y=74 width=15 height=16 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=377 x=188 y=40 width=15 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=378 x=473 y=191 width=14 height=13 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=379 x=95 y=74 width=15 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=380 x=201 y=243 width=10 height=12 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=381 x=203 y=40 width=15 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=382 x=487 y=191 width=10 height=13 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=383 x=497 y=191 width=12 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=884 x=291 y=278 width=7 height=7 xoffset=0 yoffset=2 xadvance=3 page=0 chnl=0 +char id=885 x=391 y=278 width=6 height=6 xoffset=-1 yoffset=15 xadvance=3 page=0 chnl=0 +char id=890 x=397 y=278 width=6 height=6 xoffset=0 yoffset=15 xadvance=5 page=0 chnl=0 +char id=894 x=0 y=204 width=9 height=13 xoffset=-1 yoffset=7 xadvance=4 page=0 chnl=0 +char id=900 x=298 y=278 width=7 height=7 xoffset=1 yoffset=2 xadvance=4 page=0 chnl=0 +char id=901 x=403 y=278 width=9 height=6 xoffset=0 yoffset=3 xadvance=5 page=0 chnl=0 +char id=902 x=190 y=135 width=14 height=14 xoffset=-1 yoffset=3 xadvance=12 page=0 chnl=0 +char id=903 x=475 y=278 width=5 height=5 xoffset=1 yoffset=7 xadvance=4 page=0 chnl=0 +char id=904 x=204 y=135 width=19 height=14 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=0 +char id=905 x=223 y=135 width=22 height=14 xoffset=0 yoffset=3 xadvance=14 page=0 chnl=0 +char id=906 x=245 y=135 width=16 height=14 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=908 x=58 y=106 width=18 height=15 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=0 +char id=910 x=261 y=135 width=18 height=14 xoffset=0 yoffset=3 xadvance=14 page=0 chnl=0 +char id=911 x=279 y=135 width=16 height=14 xoffset=0 yoffset=3 xadvance=14 page=0 chnl=0 +char id=912 x=110 y=74 width=8 height=16 xoffset=-1 yoffset=2 xadvance=5 page=0 chnl=0 +char id=913 x=9 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=914 x=23 y=204 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=915 x=36 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=916 x=50 y=204 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=917 x=63 y=204 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=918 x=76 y=204 width=15 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=919 x=91 y=204 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=920 x=295 y=135 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=921 x=108 y=204 width=10 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=922 x=118 y=204 width=15 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=923 x=133 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=924 x=147 y=204 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=925 x=309 y=135 width=17 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=926 x=166 y=204 width=13 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=927 x=326 y=135 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=928 x=179 y=204 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=929 x=196 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=931 x=210 y=204 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=932 x=223 y=204 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=933 x=237 y=204 width=14 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=934 x=251 y=204 width=14 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=935 x=265 y=204 width=16 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=936 x=281 y=204 width=17 height=13 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=937 x=298 y=204 width=15 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=938 x=118 y=74 width=14 height=16 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=939 x=132 y=74 width=14 height=16 xoffset=1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=940 x=146 y=74 width=11 height=16 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=0 +char id=941 x=157 y=74 width=10 height=16 xoffset=-1 yoffset=2 xadvance=7 page=0 chnl=0 +char id=942 x=62 y=0 width=10 height=19 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=0 +char id=943 x=167 y=74 width=7 height=16 xoffset=0 yoffset=2 xadvance=5 page=0 chnl=0 +char id=944 x=76 y=106 width=10 height=15 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=945 x=132 y=256 width=11 height=11 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=946 x=218 y=40 width=11 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=947 x=340 y=135 width=10 height=14 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=948 x=350 y=135 width=10 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=949 x=143 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=950 x=501 y=0 width=10 height=18 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=951 x=360 y=135 width=10 height=14 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=952 x=370 y=135 width=10 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=953 x=505 y=121 width=6 height=11 xoffset=0 yoffset=7 xadvance=5 page=0 chnl=0 +char id=954 x=268 y=267 width=11 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=955 x=380 y=135 width=10 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=956 x=390 y=135 width=11 height=14 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=957 x=279 y=267 width=10 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=958 x=229 y=40 width=11 height=17 xoffset=-1 yoffset=3 xadvance=8 page=0 chnl=0 +char id=959 x=153 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=960 x=163 y=256 width=14 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=961 x=401 y=135 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=962 x=412 y=135 width=9 height=14 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=963 x=177 y=256 width=11 height=11 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=964 x=188 y=256 width=9 height=11 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=965 x=197 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=966 x=421 y=135 width=12 height=14 xoffset=0 yoffset=7 xadvance=10 page=0 chnl=0 +char id=967 x=433 y=135 width=12 height=14 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=968 x=174 y=74 width=13 height=16 xoffset=0 yoffset=5 xadvance=11 page=0 chnl=0 +char id=969 x=207 y=256 width=13 height=11 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=970 x=445 y=135 width=11 height=14 xoffset=0 yoffset=4 xadvance=5 page=0 chnl=0 +char id=971 x=456 y=135 width=12 height=14 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=972 x=187 y=74 width=12 height=16 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=973 x=86 y=106 width=10 height=15 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=974 x=96 y=106 width=13 height=15 xoffset=0 yoffset=3 xadvance=11 page=0 chnl=0 +char id=976 x=109 y=106 width=10 height=15 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=977 x=119 y=106 width=13 height=15 xoffset=0 yoffset=3 xadvance=9 page=0 chnl=0 +char id=978 x=313 y=204 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=979 x=468 y=135 width=17 height=14 xoffset=0 yoffset=3 xadvance=13 page=0 chnl=0 +char id=980 x=199 y=74 width=14 height=16 xoffset=0 yoffset=1 xadvance=10 page=0 chnl=0 +char id=981 x=213 y=74 width=12 height=16 xoffset=0 yoffset=5 xadvance=10 page=0 chnl=0 +char id=982 x=211 y=243 width=13 height=12 xoffset=0 yoffset=6 xadvance=11 page=0 chnl=0 +char id=983 x=327 y=204 width=10 height=13 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=984 x=337 y=204 width=13 height=13 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=985 x=485 y=135 width=10 height=14 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=986 x=350 y=204 width=12 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=987 x=495 y=135 width=10 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=988 x=362 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=989 x=0 y=149 width=13 height=14 xoffset=-2 yoffset=7 xadvance=7 page=0 chnl=0 +char id=990 x=13 y=149 width=12 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=991 x=240 y=40 width=8 height=17 xoffset=0 yoffset=3 xadvance=6 page=0 chnl=0 +char id=992 x=376 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=993 x=248 y=40 width=12 height=17 xoffset=-1 yoffset=3 xadvance=9 page=0 chnl=0 +char id=994 x=260 y=40 width=19 height=17 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=995 x=25 y=149 width=14 height=14 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=996 x=225 y=74 width=13 height=16 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=997 x=39 y=149 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=998 x=238 y=74 width=12 height=16 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=999 x=224 y=243 width=10 height=12 xoffset=-1 yoffset=6 xadvance=7 page=0 chnl=0 +char id=1000 x=132 y=106 width=12 height=15 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1001 x=234 y=243 width=10 height=12 xoffset=-1 yoffset=7 xadvance=5 page=0 chnl=0 +char id=1002 x=50 y=149 width=15 height=14 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1003 x=220 y=256 width=12 height=11 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1004 x=250 y=74 width=15 height=16 xoffset=0 yoffset=2 xadvance=9 page=0 chnl=0 +char id=1005 x=244 y=243 width=12 height=12 xoffset=-1 yoffset=6 xadvance=7 page=0 chnl=0 +char id=1006 x=54 y=22 width=12 height=18 xoffset=0 yoffset=2 xadvance=10 page=0 chnl=0 +char id=1007 x=265 y=74 width=9 height=16 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1008 x=232 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1009 x=65 y=149 width=11 height=14 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1010 x=242 y=256 width=9 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1011 x=279 y=40 width=10 height=17 xoffset=-3 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1012 x=76 y=149 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1013 x=251 y=256 width=8 height=11 xoffset=0 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1014 x=259 y=256 width=9 height=11 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1015 x=390 y=204 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1016 x=289 y=40 width=10 height=17 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1017 x=90 y=149 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1018 x=402 y=204 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1019 x=103 y=149 width=14 height=14 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1020 x=117 y=149 width=14 height=14 xoffset=-3 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1021 x=131 y=149 width=14 height=14 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1022 x=145 y=149 width=13 height=14 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1023 x=158 y=149 width=14 height=14 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1024 x=299 y=40 width=17 height=17 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1025 x=274 y=74 width=17 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=1026 x=172 y=149 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1027 x=316 y=40 width=16 height=17 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1028 x=186 y=149 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1029 x=199 y=149 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1030 x=421 y=204 width=10 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1031 x=291 y=74 width=15 height=16 xoffset=-1 yoffset=1 xadvance=5 page=0 chnl=0 +char id=1032 x=210 y=149 width=11 height=14 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=1033 x=221 y=149 width=18 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1034 x=431 y=204 width=18 height=13 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1035 x=239 y=149 width=14 height=14 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1036 x=332 y=40 width=16 height=17 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1037 x=348 y=40 width=17 height=17 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1038 x=365 y=40 width=17 height=17 xoffset=0 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1039 x=306 y=74 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1040 x=449 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1041 x=463 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1042 x=477 y=204 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1043 x=490 y=204 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1044 x=323 y=74 width=16 height=16 xoffset=-2 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1045 x=0 y=217 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1046 x=13 y=217 width=18 height=13 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1047 x=253 y=149 width=13 height=14 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1048 x=31 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1049 x=339 y=74 width=17 height=16 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1050 x=48 y=217 width=14 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1051 x=266 y=149 width=16 height=14 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1052 x=62 y=217 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1053 x=81 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1054 x=282 y=149 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1055 x=98 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1056 x=115 y=217 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1057 x=296 y=149 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1058 x=129 y=217 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1059 x=309 y=149 width=17 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1060 x=143 y=217 width=14 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1061 x=157 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1062 x=356 y=74 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1063 x=174 y=217 width=14 height=13 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1064 x=188 y=217 width=21 height=13 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1065 x=373 y=74 width=21 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1066 x=209 y=217 width=13 height=13 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1067 x=222 y=217 width=21 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1068 x=243 y=217 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1069 x=326 y=149 width=14 height=14 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1070 x=340 y=149 width=19 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1071 x=255 y=217 width=15 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1072 x=268 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1073 x=144 y=106 width=10 height=15 xoffset=0 yoffset=3 xadvance=8 page=0 chnl=0 +char id=1074 x=289 y=267 width=10 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1075 x=299 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1076 x=256 y=243 width=12 height=12 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1077 x=278 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1078 x=310 y=267 width=14 height=10 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1079 x=288 y=256 width=9 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1080 x=324 y=267 width=13 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1081 x=270 y=217 width=13 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1082 x=337 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1083 x=297 y=256 width=11 height=11 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1084 x=308 y=256 width=15 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1085 x=348 y=267 width=13 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1086 x=323 y=256 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1087 x=361 y=267 width=13 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1088 x=359 y=149 width=12 height=14 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1089 x=333 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1090 x=374 y=267 width=9 height=10 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1091 x=371 y=149 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1092 x=382 y=40 width=14 height=17 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1093 x=383 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1094 x=268 y=243 width=13 height=12 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1095 x=394 y=267 width=12 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1096 x=406 y=267 width=17 height=10 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1097 x=281 y=243 width=17 height=12 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1098 x=423 y=267 width=10 height=10 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1099 x=433 y=267 width=15 height=10 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1100 x=448 y=267 width=9 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1101 x=343 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1102 x=353 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1103 x=457 y=267 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1104 x=382 y=149 width=11 height=14 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1105 x=393 y=149 width=13 height=14 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1106 x=396 y=40 width=10 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1107 x=283 y=217 width=15 height=13 xoffset=-1 yoffset=4 xadvance=6 page=0 chnl=0 +char id=1108 x=366 y=256 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1109 x=376 y=256 width=8 height=11 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1110 x=504 y=204 width=7 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1111 x=298 y=217 width=14 height=13 xoffset=-1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1112 x=406 y=40 width=10 height=17 xoffset=-3 yoffset=4 xadvance=4 page=0 chnl=0 +char id=1113 x=384 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1114 x=468 y=267 width=14 height=10 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1115 x=312 y=217 width=11 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1116 x=323 y=217 width=13 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1117 x=336 y=217 width=13 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1118 x=416 y=40 width=16 height=17 xoffset=-2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1119 x=349 y=217 width=13 height=13 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1120 x=406 y=149 width=18 height=14 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1121 x=397 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1122 x=362 y=217 width=13 height=13 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1123 x=375 y=217 width=10 height=13 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1124 x=424 y=149 width=20 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1125 x=410 y=256 width=14 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1126 x=385 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1127 x=482 y=267 width=13 height=10 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1128 x=402 y=217 width=22 height=13 xoffset=-1 yoffset=4 xadvance=20 page=0 chnl=0 +char id=1129 x=0 y=278 width=17 height=10 xoffset=-1 yoffset=7 xadvance=14 page=0 chnl=0 +char id=1130 x=424 y=217 width=17 height=13 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1131 x=495 y=267 width=13 height=10 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1132 x=441 y=217 width=23 height=13 xoffset=-1 yoffset=4 xadvance=20 page=0 chnl=0 +char id=1133 x=17 y=278 width=17 height=10 xoffset=-1 yoffset=7 xadvance=15 page=0 chnl=0 +char id=1134 x=38 y=0 width=13 height=20 xoffset=-1 yoffset=1 xadvance=8 page=0 chnl=0 +char id=1135 x=154 y=106 width=11 height=15 xoffset=-1 yoffset=5 xadvance=6 page=0 chnl=0 +char id=1136 x=464 y=217 width=18 height=13 xoffset=0 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1137 x=432 y=40 width=13 height=17 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1138 x=444 y=149 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1139 x=424 y=256 width=11 height=11 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1140 x=458 y=149 width=15 height=14 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1141 x=435 y=256 width=11 height=11 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1142 x=445 y=40 width=17 height=17 xoffset=1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1143 x=473 y=149 width=15 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1144 x=462 y=40 width=23 height=17 xoffset=0 yoffset=4 xadvance=19 page=0 chnl=0 +char id=1145 x=488 y=149 width=20 height=14 xoffset=-1 yoffset=7 xadvance=15 page=0 chnl=0 +char id=1146 x=394 y=74 width=16 height=16 xoffset=0 yoffset=3 xadvance=14 page=0 chnl=0 +char id=1147 x=446 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1148 x=66 y=22 width=18 height=18 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1149 x=165 y=106 width=16 height=15 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=1150 x=485 y=40 width=18 height=17 xoffset=0 yoffset=1 xadvance=16 page=0 chnl=0 +char id=1151 x=482 y=217 width=13 height=13 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=0 +char id=1152 x=495 y=217 width=12 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1153 x=0 y=230 width=10 height=13 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1154 x=245 y=278 width=7 height=8 xoffset=-2 yoffset=13 xadvance=4 page=0 chnl=0 +char id=1155 x=480 y=278 width=12 height=5 xoffset=-5 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1156 x=492 y=278 width=16 height=5 xoffset=-7 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1157 x=0 y=288 width=10 height=5 xoffset=-4 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1158 x=10 y=288 width=10 height=5 xoffset=-4 yoffset=4 xadvance=0 page=0 chnl=0 +char id=1159 x=412 y=278 width=18 height=6 xoffset=-7 yoffset=1 xadvance=0 page=0 chnl=0 +char id=1160 x=72 y=0 width=33 height=19 xoffset=-12 yoffset=1 xadvance=0 page=0 chnl=0 +char id=1161 x=0 y=0 width=38 height=22 xoffset=-13 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1162 x=105 y=0 width=16 height=19 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1163 x=410 y=74 width=13 height=16 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1164 x=10 y=230 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1165 x=34 y=278 width=9 height=10 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1166 x=22 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1167 x=0 y=163 width=12 height=14 xoffset=-2 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1168 x=181 y=106 width=14 height=15 xoffset=-1 yoffset=2 xadvance=9 page=0 chnl=0 +char id=1169 x=459 y=256 width=11 height=11 xoffset=-1 yoffset=6 xadvance=6 page=0 chnl=0 +char id=1170 x=36 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1171 x=43 y=278 width=11 height=10 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1172 x=0 y=57 width=13 height=17 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1173 x=12 y=163 width=10 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1174 x=423 y=74 width=18 height=16 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1175 x=298 y=243 width=14 height=12 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1176 x=13 y=57 width=13 height=17 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1177 x=50 y=230 width=9 height=13 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1178 x=441 y=74 width=14 height=16 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1179 x=312 y=243 width=11 height=12 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1180 x=59 y=230 width=15 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1181 x=54 y=278 width=11 height=10 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1182 x=74 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1183 x=65 y=278 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1184 x=88 y=230 width=15 height=13 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1185 x=76 y=278 width=11 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1186 x=455 y=74 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1187 x=323 y=243 width=13 height=12 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1188 x=103 y=230 width=20 height=13 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1189 x=87 y=278 width=15 height=10 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1190 x=26 y=57 width=19 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1191 x=22 y=163 width=14 height=14 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1192 x=36 y=163 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1193 x=470 y=256 width=11 height=11 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1194 x=45 y=57 width=13 height=17 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1195 x=123 y=230 width=10 height=13 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1196 x=472 y=74 width=14 height=16 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1197 x=336 y=243 width=11 height=12 xoffset=0 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1198 x=133 y=230 width=15 height=13 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1199 x=50 y=163 width=13 height=14 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1200 x=148 y=230 width=15 height=13 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1201 x=63 y=163 width=13 height=14 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1202 x=486 y=74 width=16 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1203 x=347 y=243 width=11 height=12 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1204 x=0 y=90 width=19 height=16 xoffset=0 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1205 x=358 y=243 width=15 height=12 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1206 x=19 y=90 width=14 height=16 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1207 x=373 y=243 width=12 height=12 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1208 x=163 y=230 width=15 height=13 xoffset=1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1209 x=102 y=278 width=11 height=10 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1210 x=178 y=230 width=13 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1211 x=191 y=230 width=10 height=13 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1212 x=76 y=163 width=16 height=14 xoffset=0 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1213 x=481 y=256 width=11 height=11 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1214 x=33 y=90 width=16 height=16 xoffset=0 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1215 x=201 y=230 width=11 height=13 xoffset=0 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1216 x=212 y=230 width=10 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1217 x=49 y=90 width=18 height=16 xoffset=-1 yoffset=1 xadvance=15 page=0 chnl=0 +char id=1218 x=222 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1219 x=58 y=57 width=15 height=17 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1220 x=92 y=163 width=12 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1221 x=67 y=90 width=16 height=16 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1222 x=236 y=230 width=11 height=13 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1223 x=83 y=90 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1224 x=104 y=163 width=12 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1225 x=100 y=90 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1226 x=247 y=230 width=12 height=13 xoffset=-1 yoffset=7 xadvance=9 page=0 chnl=0 +char id=1227 x=117 y=90 width=14 height=16 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1228 x=385 y=243 width=12 height=12 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1229 x=131 y=90 width=19 height=16 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1230 x=259 y=230 width=15 height=13 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1231 x=274 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=1232 x=150 y=90 width=14 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1233 x=116 y=163 width=11 height=14 xoffset=0 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1234 x=164 y=90 width=16 height=16 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1235 x=288 y=230 width=13 height=13 xoffset=0 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1236 x=301 y=230 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1237 x=492 y=256 width=13 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1238 x=180 y=90 width=17 height=16 xoffset=-1 yoffset=1 xadvance=10 page=0 chnl=0 +char id=1239 x=127 y=163 width=12 height=14 xoffset=-1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=1240 x=139 y=163 width=14 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1241 x=0 y=267 width=9 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1242 x=73 y=57 width=14 height=17 xoffset=0 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1243 x=320 y=230 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1244 x=197 y=90 width=18 height=16 xoffset=-1 yoffset=1 xadvance=15 page=0 chnl=0 +char id=1245 x=397 y=243 width=14 height=12 xoffset=-1 yoffset=5 xadvance=11 page=0 chnl=0 +char id=1246 x=87 y=57 width=15 height=17 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=0 +char id=1247 x=334 y=230 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1248 x=153 y=163 width=13 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1249 x=9 y=267 width=9 height=11 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1250 x=195 y=106 width=17 height=15 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=0 +char id=1251 x=411 y=243 width=15 height=12 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1252 x=212 y=106 width=17 height=15 xoffset=-1 yoffset=2 xadvance=12 page=0 chnl=0 +char id=1253 x=426 y=243 width=15 height=12 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1254 x=102 y=57 width=16 height=17 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1255 x=348 y=230 width=12 height=13 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1256 x=166 y=163 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1257 x=18 y=267 width=11 height=11 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1258 x=118 y=57 width=14 height=17 xoffset=0 yoffset=1 xadvance=12 page=0 chnl=0 +char id=1259 x=360 y=230 width=13 height=13 xoffset=-1 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1260 x=132 y=57 width=14 height=17 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1261 x=373 y=230 width=14 height=13 xoffset=-1 yoffset=5 xadvance=7 page=0 chnl=0 +char id=1262 x=215 y=90 width=17 height=16 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=0 +char id=1263 x=232 y=90 width=16 height=16 xoffset=-2 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1264 x=146 y=57 width=17 height=17 xoffset=0 yoffset=1 xadvance=11 page=0 chnl=0 +char id=1265 x=248 y=90 width=16 height=16 xoffset=-2 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1266 x=84 y=22 width=23 height=18 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1267 x=163 y=57 width=22 height=17 xoffset=-2 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1268 x=229 y=106 width=14 height=15 xoffset=1 yoffset=2 xadvance=11 page=0 chnl=0 +char id=1269 x=441 y=243 width=12 height=12 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=1270 x=264 y=90 width=14 height=16 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1271 x=453 y=243 width=11 height=12 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1272 x=278 y=90 width=25 height=16 xoffset=-1 yoffset=1 xadvance=14 page=0 chnl=0 +char id=1273 x=464 y=243 width=15 height=12 xoffset=-1 yoffset=5 xadvance=10 page=0 chnl=0 +char id=1274 x=185 y=57 width=14 height=17 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1275 x=180 y=163 width=11 height=14 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=1276 x=303 y=90 width=16 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1277 x=191 y=163 width=12 height=14 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1278 x=387 y=230 width=16 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1279 x=113 y=278 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1280 x=403 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1281 x=203 y=163 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=1282 x=417 y=230 width=19 height=13 xoffset=-1 yoffset=4 xadvance=14 page=0 chnl=0 +char id=1283 x=214 y=163 width=13 height=14 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=1284 x=227 y=163 width=15 height=14 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1285 x=29 y=267 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1286 x=319 y=90 width=10 height=16 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1287 x=436 y=230 width=9 height=13 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1288 x=242 y=163 width=20 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1289 x=39 y=267 width=13 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1290 x=262 y=163 width=20 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1291 x=52 y=267 width=14 height=11 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1292 x=282 y=163 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1293 x=66 y=267 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1294 x=296 y=163 width=15 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1295 x=76 y=267 width=10 height=11 xoffset=0 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1296 x=311 y=163 width=11 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=1297 x=86 y=267 width=10 height=11 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=1298 x=329 y=90 width=16 height=16 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1299 x=322 y=163 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1300 x=333 y=163 width=20 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1301 x=96 y=267 width=13 height=11 xoffset=-1 yoffset=7 xadvance=10 page=0 chnl=0 +char id=1302 x=445 y=230 width=18 height=13 xoffset=-1 yoffset=4 xadvance=13 page=0 chnl=0 +char id=1303 x=353 y=163 width=15 height=14 xoffset=-2 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1304 x=463 y=230 width=20 height=13 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1305 x=109 y=267 width=15 height=11 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=1306 x=345 y=90 width=14 height=16 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=1307 x=368 y=163 width=11 height=14 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1308 x=379 y=163 width=19 height=14 xoffset=0 yoffset=4 xadvance=15 page=0 chnl=0 +char id=1309 x=124 y=267 width=15 height=11 xoffset=0 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1310 x=483 y=230 width=14 height=13 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=1311 x=124 y=278 width=11 height=10 xoffset=-1 yoffset=7 xadvance=8 page=0 chnl=0 +char id=1312 x=199 y=57 width=18 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1313 x=398 y=163 width=14 height=14 xoffset=-1 yoffset=7 xadvance=11 page=0 chnl=0 +char id=1314 x=217 y=57 width=19 height=17 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=1315 x=412 y=163 width=14 height=14 xoffset=-1 yoffset=7 xadvance=12 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=2 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8210 x=66 y=288 width=11 height=4 xoffset=-1 yoffset=10 xadvance=8 page=0 chnl=0 +char id=8211 x=66 y=288 width=11 height=4 xoffset=-1 yoffset=10 xadvance=8 page=0 chnl=0 +char id=8212 x=77 y=288 width=19 height=4 xoffset=-1 yoffset=10 xadvance=16 page=0 chnl=0 +char id=8213 x=77 y=288 width=19 height=4 xoffset=-1 yoffset=10 xadvance=16 page=0 chnl=0 +char id=8214 x=497 y=230 width=7 height=13 xoffset=-1 yoffset=6 xadvance=5 page=0 chnl=0 +char id=8215 x=430 y=278 width=8 height=6 xoffset=0 yoffset=15 xadvance=8 page=0 chnl=0 +char id=8216 x=506 y=163 width=5 height=7 xoffset=1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=8217 x=438 y=278 width=5 height=6 xoffset=1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=8218 x=305 y=278 width=6 height=7 xoffset=-1 yoffset=13 xadvance=4 page=0 chnl=0 +char id=8219 x=311 y=278 width=5 height=7 xoffset=1 yoffset=4 xadvance=4 page=0 chnl=0 +char id=8220 x=316 y=278 width=8 height=7 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=8221 x=443 y=278 width=8 height=6 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=8222 x=324 y=278 width=9 height=7 xoffset=-1 yoffset=13 xadvance=7 page=0 chnl=0 +char id=8223 x=333 y=278 width=8 height=7 xoffset=1 yoffset=4 xadvance=7 page=0 chnl=0 +char id=8224 x=502 y=74 width=9 height=16 xoffset=1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8225 x=359 y=90 width=10 height=16 xoffset=0 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8226 x=341 y=278 width=7 height=7 xoffset=0 yoffset=7 xadvance=6 page=0 chnl=0 +char id=8230 x=20 y=288 width=14 height=5 xoffset=1 yoffset=13 xadvance=16 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8240 x=243 y=106 width=18 height=15 xoffset=0 yoffset=3 xadvance=16 page=0 chnl=0 +char id=8242 x=348 y=278 width=8 height=7 xoffset=0 yoffset=3 xadvance=4 page=0 chnl=0 +char id=8243 x=356 y=278 width=11 height=7 xoffset=0 yoffset=3 xadvance=7 page=0 chnl=0 +char id=8244 x=367 y=278 width=14 height=7 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=0 +char id=8249 x=208 y=278 width=7 height=9 xoffset=-1 yoffset=8 xadvance=4 page=0 chnl=0 +char id=8250 x=215 y=278 width=7 height=9 xoffset=-1 yoffset=8 xadvance=4 page=0 chnl=0 +char id=8252 x=426 y=163 width=11 height=14 xoffset=1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=8254 x=96 y=288 width=12 height=4 xoffset=0 yoffset=5 xadvance=8 page=0 chnl=0 +char id=8260 x=437 y=163 width=19 height=14 xoffset=-4 yoffset=4 xadvance=3 page=0 chnl=0 +char id=8286 x=369 y=90 width=6 height=16 xoffset=-1 yoffset=2 xadvance=3 page=0 chnl=0 +char id=8352 x=456 y=163 width=11 height=14 xoffset=1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=8353 x=107 y=22 width=13 height=18 xoffset=0 yoffset=2 xadvance=11 page=0 chnl=0 +char id=8354 x=467 y=163 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=8355 x=0 y=243 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=8356 x=480 y=163 width=11 height=14 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8357 x=491 y=163 width=15 height=14 xoffset=-1 yoffset=5 xadvance=12 page=0 chnl=0 +char id=8358 x=0 y=177 width=17 height=14 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=8359 x=17 y=177 width=18 height=14 xoffset=-1 yoffset=4 xadvance=15 page=0 chnl=0 +char id=8360 x=35 y=177 width=19 height=14 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=8361 x=54 y=177 width=17 height=14 xoffset=0 yoffset=4 xadvance=13 page=0 chnl=0 +char id=8363 x=375 y=90 width=12 height=16 xoffset=0 yoffset=2 xadvance=8 page=0 chnl=0 +char id=8364 x=71 y=177 width=14 height=14 xoffset=0 yoffset=4 xadvance=12 page=0 chnl=0 +char id=8365 x=14 y=243 width=15 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=8366 x=29 y=243 width=14 height=13 xoffset=0 yoffset=4 xadvance=10 page=0 chnl=0 +char id=8367 x=236 y=57 width=24 height=17 xoffset=-1 yoffset=4 xadvance=21 page=0 chnl=0 +char id=8368 x=260 y=57 width=10 height=17 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=8369 x=43 y=243 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=8370 x=261 y=106 width=12 height=15 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=0 +char id=8371 x=56 y=243 width=14 height=13 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=8372 x=85 y=177 width=11 height=14 xoffset=0 yoffset=4 xadvance=9 page=0 chnl=0 +char id=8373 x=387 y=90 width=12 height=16 xoffset=0 yoffset=3 xadvance=10 page=0 chnl=0 +char id=11360 x=70 y=243 width=12 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=11361 x=82 y=243 width=8 height=13 xoffset=-1 yoffset=4 xadvance=5 page=0 chnl=0 +char id=11362 x=90 y=243 width=13 height=13 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=11363 x=103 y=243 width=14 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=11364 x=270 y=57 width=12 height=17 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=11365 x=479 y=243 width=12 height=12 xoffset=-1 yoffset=6 xadvance=7 page=0 chnl=0 +char id=11366 x=96 y=177 width=8 height=14 xoffset=-1 yoffset=5 xadvance=5 page=0 chnl=0 +char id=11367 x=399 y=90 width=17 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=11368 x=273 y=106 width=10 height=15 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=11369 x=416 y=90 width=15 height=16 xoffset=-1 yoffset=4 xadvance=12 page=0 chnl=0 +char id=11370 x=283 y=106 width=11 height=15 xoffset=-1 yoffset=4 xadvance=8 page=0 chnl=0 +char id=11371 x=431 y=90 width=15 height=16 xoffset=-1 yoffset=4 xadvance=10 page=0 chnl=0 +char id=11372 x=491 y=243 width=10 height=12 xoffset=-1 yoffset=7 xadvance=7 page=0 chnl=0 +char id=11373 x=104 y=177 width=13 height=14 xoffset=0 yoffset=4 xadvance=11 page=0 chnl=0 +char id=11377 x=139 y=267 width=14 height=11 xoffset=0 yoffset=7 xadvance=10 page=0 chnl=0 +char id=11378 x=117 y=177 width=21 height=14 xoffset=0 yoffset=4 xadvance=17 page=0 chnl=0 +char id=11379 x=153 y=267 width=17 height=11 xoffset=0 yoffset=7 xadvance=14 page=0 chnl=0 +char id=11380 x=501 y=243 width=10 height=12 xoffset=0 yoffset=6 xadvance=8 page=0 chnl=0 +char id=11381 x=117 y=243 width=12 height=13 xoffset=-1 yoffset=4 xadvance=9 page=0 chnl=0 +char id=11382 x=135 y=278 width=9 height=10 xoffset=-1 yoffset=7 xadvance=6 page=0 chnl=0 +char id=11383 x=170 y=267 width=12 height=11 xoffset=0 yoffset=7 xadvance=10 page=0 chnl=0 +kernings count=7203 +kerning first=221 second=171 amount=-1 +kerning first=279 second=311 amount=-1 +kerning first=256 second=87 amount=-2 +kerning first=264 second=201 amount=-1 +kerning first=88 second=253 amount=-1 +kerning first=234 second=44 amount=-1 +kerning first=272 second=46 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=102 second=311 amount=1 +kerning first=206 second=259 amount=-1 +kerning first=229 second=253 amount=-1 +kerning first=337 second=253 amount=-1 +kerning first=83 second=65 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=268 second=68 amount=-1 +kerning first=262 second=69 amount=-1 +kerning first=352 second=70 amount=-1 +kerning first=376 second=71 amount=-1 +kerning first=350 second=72 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=354 second=74 amount=-1 +kerning first=262 second=75 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=262 second=78 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=266 second=80 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=67 second=82 amount=-1 +kerning first=290 second=84 amount=-1 +kerning first=82 second=85 amount=-1 +kerning first=321 second=86 amount=-1 +kerning first=350 second=87 amount=-1 +kerning first=8250 second=89 amount=-1 +kerning first=313 second=90 amount=-1 +kerning first=1046 second=1086 amount=-1 +kerning first=84 second=100 amount=-1 +kerning first=255 second=101 amount=-1 +kerning first=350 second=102 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=352 second=105 amount=-1 +kerning first=371 second=106 amount=1 +kerning first=277 second=107 amount=-1 +kerning first=102 second=108 amount=1 +kerning first=84 second=109 amount=-1 +kerning first=354 second=110 amount=-1 +kerning first=118 second=111 amount=-1 +kerning first=268 second=112 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=89 second=115 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=110 second=119 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=98 second=121 amount=-1 +kerning first=253 second=122 amount=-1 +kerning first=195 second=219 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=121 second=235 amount=-1 +kerning first=84 second=187 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=374 second=192 amount=-2 +kerning first=83 second=193 amount=-1 +kerning first=366 second=194 amount=-1 +kerning first=45 second=195 amount=-1 +kerning first=87 second=196 amount=-2 +kerning first=8216 second=197 amount=-2 +kerning first=89 second=198 amount=-2 +kerning first=199 second=199 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=266 second=201 amount=-1 +kerning first=268 second=204 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=346 second=206 amount=-1 +kerning first=350 second=207 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=376 second=211 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=264 second=213 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=67 second=216 amount=-1 +kerning first=258 second=219 amount=-1 +kerning first=195 second=220 amount=-1 +kerning first=223 second=46 amount=-1 +kerning first=356 second=223 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=375 second=225 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=376 second=227 amount=-1 +kerning first=370 second=228 amount=-1 +kerning first=8216 second=229 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=371 second=231 amount=-1 +kerning first=356 second=232 amount=-1 +kerning first=350 second=120 amount=-1 +kerning first=354 second=234 amount=-1 +kerning first=371 second=235 amount=-1 +kerning first=263 second=237 amount=-1 +kerning first=118 second=240 amount=-1 +kerning first=221 second=241 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=356 second=243 amount=-1 +kerning first=303 second=244 amount=-1 +kerning first=86 second=245 amount=-1 +kerning first=374 second=246 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=82 second=248 amount=-1 +kerning first=8220 second=277 amount=-1 +kerning first=274 second=103 amount=-1 +kerning first=307 second=171 amount=-1 +kerning first=90 second=252 amount=-1 +kerning first=376 second=253 amount=-1 +kerning first=66 second=254 amount=-1 +kerning first=272 second=256 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=269 second=259 amount=-1 +kerning first=199 second=260 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=8220 second=263 amount=-1 +kerning first=67 second=264 amount=-1 +kerning first=356 second=266 amount=-1 +kerning first=107 second=267 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=346 second=270 amount=-1 +kerning first=311 second=271 amount=-1 +kerning first=119 second=273 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=356 second=275 amount=-1 +kerning first=262 second=278 amount=-1 +kerning first=221 second=279 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=84 second=281 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=354 second=284 amount=-1 +kerning first=194 second=286 amount=-1 +kerning first=365 second=287 amount=-1 +kerning first=258 second=288 amount=-1 +kerning first=187 second=289 amount=-1 +kerning first=8250 second=291 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=268 second=304 amount=-1 +kerning first=66 second=305 amount=-1 +kerning first=267 second=307 amount=-1 +kerning first=354 second=99 amount=-1 +kerning first=262 second=310 amount=-1 +kerning first=376 second=352 amount=-1 +kerning first=365 second=314 amount=-1 +kerning first=8250 second=315 amount=-1 +kerning first=333 second=316 amount=-1 +kerning first=283 second=318 amount=-1 +kerning first=268 second=330 amount=-1 +kerning first=266 second=323 amount=-1 +kerning first=264 second=325 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=84 second=328 amount=-1 +kerning first=346 second=330 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=303 second=333 amount=-1 +kerning first=221 second=334 amount=-1 +kerning first=82 second=335 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=194 second=338 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=220 second=346 amount=-1 +kerning first=354 second=347 amount=-1 +kerning first=87 second=350 amount=-1 +kerning first=255 second=351 amount=-1 +kerning first=65 second=352 amount=-1 +kerning first=192 second=353 amount=-1 +kerning first=344 second=355 amount=-1 +kerning first=8218 second=356 amount=-2 +kerning first=251 second=103 amount=-1 +kerning first=196 second=350 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=8222 second=362 amount=-1 +kerning first=66 second=364 amount=-1 +kerning first=310 second=365 amount=-1 +kerning first=65 second=366 amount=-1 +kerning first=204 second=367 amount=-1 +kerning first=268 second=350 amount=-1 +kerning first=204 second=369 amount=-1 +kerning first=315 second=370 amount=-1 +kerning first=120 second=371 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=65 second=374 amount=-2 +kerning first=256 second=375 amount=-1 +kerning first=317 second=377 amount=-1 +kerning first=313 second=378 amount=-1 +kerning first=376 second=379 amount=-1 +kerning first=219 second=380 amount=-1 +kerning first=66 second=381 amount=-1 +kerning first=220 second=382 amount=-1 +kerning first=242 second=318 amount=-1 +kerning first=256 second=199 amount=-1 +kerning first=307 second=118 amount=-1 +kerning first=315 second=368 amount=-1 +kerning first=1059 second=1078 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=230 second=121 amount=-1 +kerning first=221 second=231 amount=-1 +kerning first=8216 second=194 amount=-2 +kerning first=193 second=332 amount=-1 +kerning first=350 second=204 amount=-1 +kerning first=72 second=117 amount=-1 +kerning first=8220 second=225 amount=-1 +kerning first=88 second=332 amount=-1 +kerning first=217 second=378 amount=-1 +kerning first=234 second=316 amount=-1 +kerning first=196 second=252 amount=-1 +kerning first=86 second=267 amount=-1 +kerning first=76 second=378 amount=-1 +kerning first=1040 second=1095 amount=-1 +kerning first=337 second=46 amount=-1 +kerning first=194 second=364 amount=-1 +kerning first=8250 second=77 amount=-1 +kerning first=197 second=264 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=258 second=362 amount=-1 +kerning first=289 second=378 amount=-1 +kerning first=253 second=378 amount=-1 +kerning first=317 second=218 amount=-1 +kerning first=8220 second=226 amount=-1 +kerning first=101 second=375 amount=-1 +kerning first=354 second=119 amount=-1 +kerning first=350 second=200 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=196 second=364 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=371 second=267 amount=-1 +kerning first=224 second=8220 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=379 second=250 amount=-1 +kerning first=356 second=216 amount=-1 +kerning first=264 second=378 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=255 second=245 amount=-1 +kerning first=87 second=378 amount=-1 +kerning first=362 second=193 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=290 second=193 amount=-1 +kerning first=266 second=325 amount=-1 +kerning first=192 second=221 amount=-2 +kerning first=187 second=296 amount=-1 +kerning first=262 second=274 amount=-1 +kerning first=346 second=366 amount=-1 +kerning first=8250 second=327 amount=-1 +kerning first=376 second=291 amount=-1 +kerning first=8220 second=74 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=304 second=291 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=260 second=210 amount=-1 +kerning first=232 second=291 amount=-1 +kerning first=86 second=326 amount=-1 +kerning first=196 second=291 amount=-1 +kerning first=255 second=226 amount=-1 +kerning first=71 second=197 amount=-1 +kerning first=219 second=226 amount=-1 +kerning first=346 second=327 amount=-1 +kerning first=327 second=226 amount=-1 +kerning first=291 second=226 amount=-1 +kerning first=350 second=68 amount=-1 +kerning first=284 second=197 amount=-1 +kerning first=266 second=344 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=356 second=197 amount=-2 +kerning first=89 second=187 amount=-1 +kerning first=205 second=365 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=206 second=8249 amount=-1 +kerning first=84 second=262 amount=-1 +kerning first=375 second=337 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=303 second=337 amount=-1 +kerning first=350 second=8249 amount=-1 +kerning first=314 second=8249 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=253 second=108 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=269 second=303 amount=-1 +kerning first=263 second=228 amount=-1 +kerning first=339 second=318 amount=-1 +kerning first=375 second=318 amount=-1 +kerning first=217 second=260 amount=-1 +kerning first=86 second=228 amount=-1 +kerning first=72 second=367 amount=-1 +kerning first=258 second=45 amount=-1 +kerning first=289 second=108 amount=-1 +kerning first=253 second=279 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=1036 second=1104 amount=-1 +kerning first=82 second=231 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=311 second=339 amount=-1 +kerning first=119 second=229 amount=-1 +kerning first=8222 second=119 amount=-1 +kerning first=252 second=8217 amount=-1 +kerning first=324 second=8217 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=352 second=304 amount=-1 +kerning first=87 second=240 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=193 second=352 amount=-1 +kerning first=284 second=45 amount=-1 +kerning first=368 second=229 amount=-1 +kerning first=356 second=45 amount=-1 +kerning first=296 second=229 amount=-1 +kerning first=107 second=45 amount=-1 +kerning first=268 second=310 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=346 second=77 amount=-1 +kerning first=263 second=307 amount=-1 +kerning first=344 second=111 amount=-1 +kerning first=226 second=255 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=221 second=211 amount=-1 +kerning first=1038 second=1033 amount=-1 +kerning first=1036 second=1038 amount=-1 +kerning first=1038 second=1040 amount=-2 +kerning first=118 second=46 amount=-1 +kerning first=8249 second=84 amount=-1 +kerning first=1038 second=1047 amount=-1 +kerning first=1058 second=1051 amount=-1 +kerning first=350 second=69 amount=-1 +kerning first=8250 second=346 amount=-1 +kerning first=218 second=193 amount=-1 +kerning first=119 second=289 amount=-1 +kerning first=1040 second=1057 amount=-1 +kerning first=1061 second=1058 amount=-1 +kerning first=1050 second=1059 amount=-1 +kerning first=1040 second=1060 amount=-1 +kerning first=1061 second=1063 amount=-1 +kerning first=83 second=289 amount=-1 +kerning first=354 second=79 amount=-1 +kerning first=296 second=289 amount=-1 +kerning first=1038 second=1072 amount=-1 +kerning first=1038 second=1073 amount=-1 +kerning first=1038 second=1074 amount=-1 +kerning first=1038 second=1076 amount=-1 +kerning first=1038 second=1077 amount=-1 +kerning first=1038 second=1078 amount=-1 +kerning first=1038 second=1079 amount=-1 +kerning first=1038 second=1080 amount=-1 +kerning first=1038 second=1081 amount=-1 +kerning first=1038 second=1082 amount=-1 +kerning first=260 second=289 amount=-1 +kerning first=1038 second=1084 amount=-1 +kerning first=1038 second=1085 amount=-1 +kerning first=1038 second=1086 amount=-1 +kerning first=1038 second=1087 amount=-1 +kerning first=1038 second=1088 amount=-1 +kerning first=1038 second=1089 amount=-1 +kerning first=103 second=225 amount=-1 +kerning first=1040 second=1091 amount=-1 +kerning first=1043 second=1092 amount=-1 +kerning first=1038 second=1093 amount=-1 +kerning first=1059 second=1094 amount=-1 +kerning first=1044 second=1095 amount=-1 +kerning first=1038 second=1096 amount=-1 +kerning first=1038 second=1097 amount=-1 +kerning first=1050 second=1098 amount=-1 +kerning first=1038 second=1099 amount=-1 +kerning first=1038 second=1100 amount=-1 +kerning first=45 second=375 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=1038 second=1103 amount=-1 +kerning first=258 second=264 amount=-1 +kerning first=1038 second=1105 amount=-1 +kerning first=1038 second=1107 amount=-1 +kerning first=1038 second=1108 amount=-1 +kerning first=291 second=225 amount=-1 +kerning first=1043 second=1113 amount=-1 +kerning first=1038 second=1114 amount=-1 +kerning first=327 second=225 amount=-1 +kerning first=1038 second=1116 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=1040 second=1118 amount=-1 +kerning first=1038 second=1119 amount=-1 +kerning first=313 second=364 amount=-1 +kerning first=286 second=287 amount=-1 +kerning first=221 second=46 amount=-1 +kerning first=260 second=368 amount=-1 +kerning first=288 second=287 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=252 second=287 amount=-1 +kerning first=352 second=206 amount=-1 +kerning first=352 second=69 amount=-1 +kerning first=260 second=347 amount=-1 +kerning first=344 second=71 amount=-1 +kerning first=194 second=8217 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=8220 second=244 amount=-1 +kerning first=78 second=225 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=85 second=45 amount=-1 +kerning first=317 second=87 amount=-1 +kerning first=248 second=46 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=219 second=225 amount=-1 +kerning first=255 second=225 amount=-1 +kerning first=356 second=46 amount=-1 +kerning first=376 second=332 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=231 second=259 amount=-1 +kerning first=1038 second=1090 amount=-1 +kerning first=201 second=287 amount=-1 +kerning first=354 second=230 amount=-1 +kerning first=304 second=369 amount=-1 +kerning first=367 second=375 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=1027 second=1105 amount=-1 +kerning first=375 second=259 amount=-1 +kerning first=69 second=289 amount=-1 +kerning first=187 second=375 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=223 second=375 amount=-1 +kerning first=221 second=350 amount=-1 +kerning first=259 second=375 amount=-1 +kerning first=267 second=259 amount=-1 +kerning first=376 second=81 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=256 second=219 amount=-1 +kerning first=8250 second=209 amount=-1 +kerning first=354 second=289 amount=-1 +kerning first=103 second=46 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=260 second=288 amount=-1 +kerning first=1065 second=1095 amount=-1 +kerning first=281 second=316 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=337 second=121 amount=-1 +kerning first=310 second=117 amount=-1 +kerning first=286 second=221 amount=-1 +kerning first=262 second=196 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=370 second=196 amount=-1 +kerning first=334 second=196 amount=-1 +kerning first=88 second=121 amount=-1 +kerning first=256 second=8221 amount=-1 +kerning first=354 second=231 amount=-1 +kerning first=307 second=119 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=82 second=375 amount=-1 +kerning first=193 second=351 amount=-1 +kerning first=235 second=119 amount=-1 +kerning first=1059 second=1098 amount=-1 +kerning first=336 second=196 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=350 second=298 amount=-1 +kerning first=1059 second=1097 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=287 second=314 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=1038 second=1098 amount=-1 +kerning first=251 second=314 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=243 second=120 amount=-1 +kerning first=99 second=253 amount=-1 +kerning first=256 second=8249 amount=-1 +kerning first=240 second=253 amount=-1 +kerning first=220 second=8249 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=328 second=8249 amount=-1 +kerning first=204 second=291 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=364 second=8249 amount=-1 +kerning first=255 second=246 amount=-1 +kerning first=88 second=214 amount=-1 +kerning first=344 second=263 amount=-1 +kerning first=370 second=103 amount=-1 +kerning first=1060 second=1033 amount=-1 +kerning first=192 second=220 amount=-1 +kerning first=298 second=103 amount=-1 +kerning first=377 second=363 amount=-1 +kerning first=356 second=334 amount=-1 +kerning first=352 second=344 amount=-1 +kerning first=376 second=101 amount=-1 +kerning first=8217 second=226 amount=-1 +kerning first=311 second=281 amount=-1 +kerning first=44 second=8221 amount=-1 +kerning first=224 second=118 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=83 second=118 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=245 second=316 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=66 second=120 amount=-1 +kerning first=258 second=86 amount=-2 +kerning first=193 second=83 amount=-1 +kerning first=370 second=44 amount=-1 +kerning first=334 second=44 amount=-1 +kerning first=194 second=374 amount=-2 +kerning first=121 second=44 amount=-1 +kerning first=85 second=44 amount=-1 +kerning first=251 second=255 amount=-1 +kerning first=296 second=97 amount=-1 +kerning first=365 second=8221 amount=-1 +kerning first=196 second=211 amount=-1 +kerning first=344 second=262 amount=-1 +kerning first=257 second=8221 amount=-1 +kerning first=368 second=97 amount=-1 +kerning first=250 second=118 amount=-1 +kerning first=90 second=8249 amount=-1 +kerning first=268 second=211 amount=-1 +kerning first=221 second=79 amount=-1 +kerning first=346 second=209 amount=-1 +kerning first=108 second=118 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=321 second=118 amount=-1 +kerning first=187 second=85 amount=-1 +kerning first=262 second=65 amount=-1 +kerning first=218 second=83 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=221 second=232 amount=-1 +kerning first=334 second=65 amount=-1 +kerning first=121 second=234 amount=-1 +kerning first=354 second=192 amount=-2 +kerning first=249 second=118 amount=-1 +kerning first=254 second=120 amount=-1 +kerning first=8220 second=246 amount=-1 +kerning first=370 second=65 amount=-1 +kerning first=350 second=260 amount=-1 +kerning first=296 second=250 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=260 second=250 amount=-1 +kerning first=339 second=107 amount=-1 +kerning first=376 second=331 amount=-1 +kerning first=195 second=199 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=8250 second=302 amount=-1 +kerning first=284 second=84 amount=-1 +kerning first=365 second=291 amount=-1 +kerning first=84 second=381 amount=-1 +kerning first=244 second=253 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=71 second=84 amount=-1 +kerning first=221 second=291 amount=-1 +kerning first=80 second=291 amount=-1 +kerning first=311 second=242 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=256 second=67 amount=-1 +kerning first=8250 second=78 amount=-1 +kerning first=107 second=335 amount=-1 +kerning first=356 second=335 amount=-1 +kerning first=381 second=45 amount=-1 +kerning first=258 second=112 amount=-1 +kerning first=253 second=339 amount=-1 +kerning first=8220 second=245 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=253 second=240 amount=-1 +kerning first=86 second=268 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=66 second=370 amount=-1 +kerning first=8217 second=227 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=220 second=198 amount=-1 +kerning first=307 second=289 amount=-1 +kerning first=87 second=279 amount=-1 +kerning first=199 second=289 amount=-1 +kerning first=235 second=289 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=65 second=218 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=266 second=286 amount=-1 +kerning first=1061 second=1104 amount=-1 +kerning first=242 second=108 amount=-1 +kerning first=352 second=305 amount=-1 +kerning first=333 second=108 amount=-1 +kerning first=89 second=324 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=374 second=324 amount=-1 +kerning first=277 second=287 amount=-1 +kerning first=205 second=287 amount=-1 +kerning first=86 second=352 amount=-1 +kerning first=86 second=115 amount=-1 +kerning first=287 second=353 amount=-1 +kerning first=256 second=356 amount=-2 +kerning first=8220 second=283 amount=-1 +kerning first=354 second=290 amount=-1 +kerning first=84 second=223 amount=-1 +kerning first=119 second=97 amount=-1 +kerning first=268 second=80 amount=-1 +kerning first=313 second=287 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=303 second=279 amount=-1 +kerning first=302 second=226 amount=-1 +kerning first=321 second=368 amount=-1 +kerning first=107 second=275 amount=-1 +kerning first=45 second=74 amount=-1 +kerning first=216 second=198 amount=-1 +kerning first=287 second=45 amount=-1 +kerning first=288 second=194 amount=-1 +kerning first=323 second=45 amount=-1 +kerning first=366 second=74 amount=-1 +kerning first=74 second=45 amount=-1 +kerning first=354 second=350 amount=-1 +kerning first=356 second=353 amount=-1 +kerning first=303 second=240 amount=-1 +kerning first=376 second=65 amount=-2 +kerning first=80 second=289 amount=-1 +kerning first=381 second=255 amount=-1 +kerning first=82 second=356 amount=-1 +kerning first=1059 second=1116 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=352 second=112 amount=-1 +kerning first=1054 second=1033 amount=-1 +kerning first=354 second=214 amount=-1 +kerning first=367 second=255 amount=-1 +kerning first=221 second=289 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=259 second=255 amount=-1 +kerning first=376 second=261 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=253 second=227 amount=-1 +kerning first=187 second=255 amount=-1 +kerning first=67 second=112 amount=-1 +kerning first=82 second=255 amount=-1 +kerning first=375 second=240 amount=-1 +kerning first=260 second=211 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=304 second=97 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=221 second=193 amount=-2 +kerning first=374 second=241 amount=-1 +kerning first=379 second=251 amount=-1 +kerning first=362 second=192 amount=-1 +kerning first=365 second=8220 amount=-1 +kerning first=8217 second=346 amount=-1 +kerning first=356 second=257 amount=-1 +kerning first=218 second=192 amount=-1 +kerning first=256 second=338 amount=-1 +kerning first=290 second=192 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=44 second=8220 amount=-1 +kerning first=83 second=119 amount=-1 +kerning first=249 second=103 amount=-1 +kerning first=224 second=119 amount=-1 +kerning first=260 second=119 amount=-1 +kerning first=376 second=233 amount=-1 +kerning first=1046 second=1073 amount=-1 +kerning first=89 second=225 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=240 second=314 amount=-1 +kerning first=374 second=225 amount=-1 +kerning first=199 second=209 amount=-1 +kerning first=8217 second=263 amount=-1 +kerning first=302 second=363 amount=-1 +kerning first=302 second=225 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=376 second=213 amount=-1 +kerning first=356 second=375 amount=-1 +kerning first=1043 second=1072 amount=-1 +kerning first=76 second=375 amount=-1 +kerning first=268 second=213 amount=-1 +kerning first=364 second=259 amount=-1 +kerning first=248 second=375 amount=-1 +kerning first=1040 second=1054 amount=-1 +kerning first=220 second=259 amount=-1 +kerning first=221 second=101 amount=-1 +kerning first=8217 second=287 amount=-1 +kerning first=311 second=246 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=199 second=288 amount=-1 +kerning first=107 second=235 amount=-1 +kerning first=350 second=317 amount=-1 +kerning first=1043 second=1033 amount=-1 +kerning first=65 second=87 amount=-2 +kerning first=8217 second=267 amount=-1 +kerning first=195 second=218 amount=-1 +kerning first=356 second=235 amount=-1 +kerning first=82 second=104 amount=-1 +kerning first=207 second=369 amount=-1 +kerning first=346 second=76 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=44 second=171 amount=-1 +kerning first=354 second=212 amount=-1 +kerning first=1091 second=1113 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=118 second=277 amount=-1 +kerning first=362 second=83 amount=-1 +kerning first=82 second=277 amount=-1 +kerning first=262 second=197 amount=-1 +kerning first=77 second=287 amount=-1 +kerning first=240 second=121 amount=-1 +kerning first=278 second=103 amount=-1 +kerning first=99 second=121 amount=-1 +kerning first=370 second=197 amount=-1 +kerning first=262 second=352 amount=-1 +kerning first=334 second=197 amount=-1 +kerning first=263 second=229 amount=-1 +kerning first=370 second=122 amount=-1 +kerning first=121 second=122 amount=-1 +kerning first=268 second=270 amount=-1 +kerning first=354 second=100 amount=-1 +kerning first=279 second=108 amount=-1 +kerning first=221 second=192 amount=-2 +kerning first=324 second=8220 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=119 second=99 amount=-1 +kerning first=251 second=253 amount=-1 +kerning first=291 second=115 amount=-1 +kerning first=363 second=8217 amount=-1 +kerning first=1101 second=1076 amount=-1 +kerning first=255 second=115 amount=-1 +kerning first=107 second=333 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=8250 second=76 amount=-1 +kerning first=304 second=171 amount=-1 +kerning first=268 second=171 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=195 second=86 amount=-2 +kerning first=268 second=82 amount=-1 +kerning first=381 second=103 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=196 second=8221 amount=-1 +kerning first=201 second=103 amount=-1 +kerning first=258 second=361 amount=-1 +kerning first=67 second=266 amount=-1 +kerning first=226 second=121 amount=-1 +kerning first=330 second=361 amount=-1 +kerning first=287 second=351 amount=-1 +kerning first=310 second=249 amount=-1 +kerning first=8220 second=243 amount=-1 +kerning first=264 second=71 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=1059 second=1096 amount=-1 +kerning first=260 second=86 amount=-2 +kerning first=195 second=67 amount=-1 +kerning first=354 second=232 amount=-1 +kerning first=310 second=118 amount=-1 +kerning first=280 second=287 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=264 second=202 amount=-1 +kerning first=107 second=171 amount=-1 +kerning first=366 second=380 amount=-1 +kerning first=8250 second=207 amount=-1 +kerning first=120 second=224 amount=-1 +kerning first=84 second=379 amount=-1 +kerning first=8217 second=225 amount=-1 +kerning first=317 second=217 amount=-1 +kerning first=346 second=69 amount=-1 +kerning first=1070 second=1040 amount=-1 +kerning first=84 second=224 amount=-1 +kerning first=350 second=218 amount=-1 +kerning first=82 second=354 amount=-1 +kerning first=352 second=364 amount=-1 +kerning first=1050 second=1104 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=337 second=120 amount=-1 +kerning first=234 second=104 amount=-1 +kerning first=254 second=46 amount=-1 +kerning first=97 second=118 amount=-1 +kerning first=8218 second=218 amount=-1 +kerning first=376 second=193 amount=-2 +kerning first=193 second=71 amount=-1 +kerning first=72 second=250 amount=-1 +kerning first=221 second=331 amount=-1 +kerning first=65 second=221 amount=-2 +kerning first=375 second=108 amount=-1 +kerning first=339 second=108 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=89 second=287 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=260 second=79 amount=-1 +kerning first=234 second=107 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=346 second=368 amount=-1 +kerning first=302 second=287 amount=-1 +kerning first=1061 second=1089 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=230 second=287 amount=-1 +kerning first=337 second=44 amount=-1 +kerning first=374 second=113 amount=-1 +kerning first=266 second=287 amount=-1 +kerning first=87 second=90 amount=-1 +kerning first=187 second=84 amount=-1 +kerning first=194 second=287 amount=-1 +kerning first=82 second=84 amount=-1 +kerning first=362 second=291 amount=-1 +kerning first=290 second=291 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=370 second=45 amount=-1 +kerning first=86 second=269 amount=-1 +kerning first=354 second=210 amount=-1 +kerning first=77 second=291 amount=-1 +kerning first=78 second=365 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=262 second=45 amount=-1 +kerning first=195 second=89 amount=-2 +kerning first=264 second=68 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=371 second=269 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=197 second=112 amount=-1 +kerning first=87 second=8249 amount=-1 +kerning first=311 second=279 amount=-1 +kerning first=344 second=286 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=252 second=375 amount=-1 +kerning first=264 second=8249 amount=-1 +kerning first=350 second=221 amount=-1 +kerning first=267 second=108 amount=-1 +kerning first=72 second=228 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=268 second=332 amount=-1 +kerning first=296 second=251 amount=-1 +kerning first=245 second=108 amount=-1 +kerning first=260 second=251 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=65 second=219 amount=-1 +kerning first=281 second=108 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=310 second=375 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=221 second=212 amount=-1 +kerning first=263 second=226 amount=-1 +kerning first=1045 second=1098 amount=-1 +kerning first=1118 second=1113 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=108 second=119 amount=-1 +kerning first=321 second=119 amount=-1 +kerning first=356 second=109 amount=-1 +kerning first=194 second=115 amount=-1 +kerning first=368 second=230 amount=-1 +kerning first=249 second=119 amount=-1 +kerning first=374 second=115 amount=-1 +kerning first=78 second=363 amount=-1 +kerning first=221 second=233 amount=-1 +kerning first=263 second=97 amount=-1 +kerning first=327 second=363 amount=-1 +kerning first=337 second=314 amount=-1 +kerning first=199 second=211 amount=-1 +kerning first=8216 second=196 amount=-2 +kerning first=362 second=194 amount=-1 +kerning first=356 second=255 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=248 second=255 amount=-1 +kerning first=1046 second=1092 amount=-1 +kerning first=89 second=244 amount=-1 +kerning first=8220 second=227 amount=-1 +kerning first=121 second=275 amount=-1 +kerning first=354 second=101 amount=-1 +kerning first=290 second=194 amount=-1 +kerning first=8250 second=368 amount=-1 +kerning first=374 second=244 amount=-1 +kerning first=316 second=8221 amount=-1 +kerning first=197 second=121 amount=-1 +kerning first=262 second=296 amount=-1 +kerning first=346 second=325 amount=-1 +kerning first=1043 second=1095 amount=-1 +kerning first=334 second=46 amount=-1 +kerning first=370 second=46 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=264 second=69 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=89 second=266 amount=-1 +kerning first=374 second=266 amount=-1 +kerning first=256 second=336 amount=-1 +kerning first=375 second=339 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=264 second=70 amount=-1 +kerning first=266 second=266 amount=-1 +kerning first=226 second=253 amount=-1 +kerning first=230 second=318 amount=-1 +kerning first=39 second=1111 amount=1 +kerning first=194 second=334 amount=-1 +kerning first=317 second=86 amount=-1 +kerning first=8250 second=118 amount=-1 +kerning first=85 second=46 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=316 second=8217 amount=-1 +kerning first=119 second=230 amount=-1 +kerning first=371 second=8220 amount=-1 +kerning first=261 second=8221 amount=-1 +kerning first=381 second=375 amount=-1 +kerning first=316 second=45 amount=-1 +kerning first=374 second=333 amount=-1 +kerning first=232 second=311 amount=-1 +kerning first=193 second=370 amount=-1 +kerning first=221 second=213 amount=-1 +kerning first=262 second=8249 amount=-1 +kerning first=84 second=8250 amount=-1 +kerning first=232 second=289 amount=-1 +kerning first=268 second=289 amount=-1 +kerning first=364 second=260 amount=-1 +kerning first=310 second=210 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=196 second=289 amount=-1 +kerning first=376 second=289 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=269 second=255 amount=-1 +kerning first=287 second=122 amount=-1 +kerning first=253 second=318 amount=-1 +kerning first=220 second=260 amount=-1 +kerning first=304 second=289 amount=-1 +kerning first=8250 second=85 amount=-1 +kerning first=195 second=87 amount=-2 +kerning first=346 second=194 amount=-1 +kerning first=113 second=8221 amount=-1 +kerning first=346 second=207 amount=-1 +kerning first=354 second=288 amount=-1 +kerning first=256 second=218 amount=-1 +kerning first=107 second=277 amount=-1 +kerning first=77 second=369 amount=-1 +kerning first=350 second=219 amount=-1 +kerning first=315 second=122 amount=-1 +kerning first=371 second=248 amount=-1 +kerning first=354 second=81 amount=-1 +kerning first=356 second=277 amount=-1 +kerning first=119 second=231 amount=-1 +kerning first=66 second=291 amount=-1 +kerning first=199 second=210 amount=-1 +kerning first=217 second=346 amount=-1 +kerning first=253 second=242 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=350 second=89 amount=-1 +kerning first=302 second=365 amount=-1 +kerning first=350 second=80 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=258 second=284 amount=-1 +kerning first=284 second=256 amount=-1 +kerning first=256 second=217 amount=-1 +kerning first=251 second=121 amount=-1 +kerning first=356 second=256 amount=-2 +kerning first=375 second=101 amount=-1 +kerning first=119 second=259 amount=-1 +kerning first=264 second=298 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=254 second=375 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=193 second=112 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=8216 second=248 amount=-1 +kerning first=71 second=354 amount=-1 +kerning first=65 second=89 amount=-2 +kerning first=8218 second=219 amount=-1 +kerning first=256 second=86 amount=-2 +kerning first=284 second=354 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=82 second=333 amount=-1 +kerning first=344 second=281 amount=-1 +kerning first=376 second=214 amount=-1 +kerning first=118 second=333 amount=-1 +kerning first=352 second=362 amount=-1 +kerning first=256 second=354 amount=-2 +kerning first=366 second=382 amount=-1 +kerning first=8220 second=111 amount=-1 +kerning first=264 second=280 amount=-1 +kerning first=1059 second=1040 amount=-2 +kerning first=255 second=287 amount=-1 +kerning first=82 second=235 amount=-1 +kerning first=315 second=8221 amount=-1 +kerning first=356 second=103 amount=-1 +kerning first=84 second=333 amount=-1 +kerning first=118 second=235 amount=-1 +kerning first=1075 second=1083 amount=-1 +kerning first=231 second=316 amount=-1 +kerning first=284 second=103 amount=-1 +kerning first=375 second=316 amount=-1 +kerning first=268 second=214 amount=-1 +kerning first=350 second=220 amount=-1 +kerning first=339 second=316 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=267 second=316 amount=-1 +kerning first=71 second=103 amount=-1 +kerning first=8216 second=65 amount=-2 +kerning first=102 second=8221 amount=1 +kerning first=1036 second=1086 amount=-1 +kerning first=264 second=200 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=363 second=287 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=66 second=8221 amount=-1 +kerning first=87 second=8250 amount=-1 +kerning first=258 second=262 amount=-1 +kerning first=371 second=118 amount=-1 +kerning first=227 second=118 amount=-1 +kerning first=263 second=118 amount=-1 +kerning first=354 second=211 amount=-1 +kerning first=268 second=290 amount=-1 +kerning first=217 second=8249 amount=-1 +kerning first=313 second=366 amount=-1 +kerning first=325 second=8249 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=289 second=8249 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=376 second=290 amount=-1 +kerning first=240 second=44 amount=-1 +kerning first=338 second=287 amount=-1 +kerning first=374 second=267 amount=-1 +kerning first=107 second=234 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=199 second=79 amount=-1 +kerning first=240 second=120 amount=-1 +kerning first=86 second=118 amount=-1 +kerning first=317 second=85 amount=-1 +kerning first=260 second=350 amount=-1 +kerning first=255 second=244 amount=-1 +kerning first=83 second=209 amount=-1 +kerning first=368 second=350 amount=-1 +kerning first=118 second=257 amount=-1 +kerning first=356 second=234 amount=-1 +kerning first=89 second=267 amount=-1 +kerning first=376 second=192 amount=-2 +kerning first=8250 second=75 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=268 second=192 amount=-1 +kerning first=72 second=251 amount=-1 +kerning first=374 second=245 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=310 second=250 amount=-1 +kerning first=8249 second=374 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=350 second=198 amount=-1 +kerning first=221 second=332 amount=-1 +kerning first=89 second=245 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=84 second=378 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=1107 second=1113 amount=-1 +kerning first=381 second=102 amount=-1 +kerning first=76 second=90 amount=-1 +kerning first=377 second=361 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=255 second=113 amount=-1 +kerning first=71 second=256 amount=-1 +kerning first=351 second=291 amount=-1 +kerning first=315 second=291 amount=-1 +kerning first=1024 second=1090 amount=-1 +kerning first=97 second=119 amount=-1 +kerning first=279 second=291 amount=-1 +kerning first=310 second=119 amount=-1 +kerning first=346 second=119 amount=-1 +kerning first=207 second=291 amount=-1 +kerning first=254 second=314 amount=-1 +kerning first=8250 second=270 amount=-1 +kerning first=315 second=8217 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=354 second=233 amount=-1 +kerning first=84 second=113 amount=-1 +kerning first=334 second=198 amount=-1 +kerning first=344 second=79 amount=-1 +kerning first=370 second=198 amount=-1 +kerning first=264 second=67 amount=-1 +kerning first=262 second=198 amount=-1 +kerning first=251 second=291 amount=-1 +kerning first=77 second=250 amount=-1 +kerning first=8217 second=233 amount=-1 +kerning first=87 second=67 amount=-1 +kerning first=260 second=117 amount=-1 +kerning first=74 second=291 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=221 second=268 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=270 second=44 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=356 second=171 amount=-1 +kerning first=66 second=212 amount=-1 +kerning first=356 second=337 amount=-1 +kerning first=264 second=72 amount=-1 +kerning first=317 second=378 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=231 second=261 amount=-1 +kerning first=266 second=210 amount=-1 +kerning first=354 second=228 amount=-1 +kerning first=327 second=361 amount=-1 +kerning first=375 second=261 amount=-1 +kerning first=78 second=361 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=267 second=261 amount=-1 +kerning first=344 second=89 amount=-1 +kerning first=196 second=83 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=268 second=83 amount=-1 +kerning first=234 second=108 amount=-1 +kerning first=304 second=367 amount=-1 +kerning first=376 second=83 amount=-1 +kerning first=1098 second=1118 amount=-1 +kerning first=344 second=245 amount=-1 +kerning first=67 second=262 amount=-1 +kerning first=275 second=107 amount=-1 +kerning first=260 second=286 amount=-1 +kerning first=354 second=67 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=260 second=262 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=286 second=8249 amount=-1 +kerning first=8216 second=111 amount=-1 +kerning first=192 second=356 amount=-2 +kerning first=66 second=289 amount=-1 +kerning first=356 second=194 amount=-2 +kerning first=207 second=289 amount=-1 +kerning first=351 second=289 amount=-1 +kerning first=279 second=289 amount=-1 +kerning first=315 second=289 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=71 second=194 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=374 second=97 amount=-1 +kerning first=310 second=211 amount=-1 +kerning first=66 second=353 amount=-1 +kerning first=317 second=255 amount=-1 +kerning first=266 second=112 amount=-1 +kerning first=353 second=255 amount=-1 +kerning first=245 second=255 amount=-1 +kerning first=194 second=112 amount=-1 +kerning first=281 second=255 amount=-1 +kerning first=8250 second=119 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=87 second=243 amount=-1 +kerning first=302 second=97 amount=-1 +kerning first=121 second=113 amount=-1 +kerning first=351 second=353 amount=-1 +kerning first=8218 second=217 amount=-1 +kerning first=310 second=290 amount=-1 +kerning first=242 second=46 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=101 second=46 amount=-1 +kerning first=350 second=46 amount=-1 +kerning first=266 second=209 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=84 second=338 amount=-1 +kerning first=217 second=257 amount=-1 +kerning first=89 second=288 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=325 second=257 amount=-1 +kerning first=253 second=257 amount=-1 +kerning first=289 second=257 amount=-1 +kerning first=120 second=225 amount=-1 +kerning first=253 second=111 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=8216 second=279 amount=-1 +kerning first=107 second=273 amount=-1 +kerning first=118 second=101 amount=-1 +kerning first=1050 second=1105 amount=-1 +kerning first=199 second=193 amount=-1 +kerning first=194 second=8221 amount=-1 +kerning first=268 second=78 amount=-1 +kerning first=226 second=375 amount=-1 +kerning first=231 second=46 amount=-1 +kerning first=339 second=46 amount=-1 +kerning first=352 second=282 amount=-1 +kerning first=72 second=369 amount=-1 +kerning first=354 second=213 amount=-1 +kerning first=67 second=282 amount=-1 +kerning first=192 second=87 amount=-2 +kerning first=101 second=316 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=242 second=316 amount=-1 +kerning first=330 second=369 amount=-1 +kerning first=1061 second=1086 amount=-1 +kerning first=376 second=122 amount=-1 +kerning first=352 second=287 amount=-1 +kerning first=1061 second=1059 amount=-1 +kerning first=268 second=122 amount=-1 +kerning first=219 second=346 amount=-1 +kerning first=316 second=287 amount=-1 +kerning first=199 second=81 amount=-1 +kerning first=65 second=220 amount=-1 +kerning first=356 second=352 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=224 second=8217 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=231 second=105 amount=-1 +kerning first=102 second=254 amount=1 +kerning first=354 second=351 amount=-1 +kerning first=221 second=223 amount=-1 +kerning first=8217 second=244 amount=-1 +kerning first=267 second=105 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=266 second=75 amount=-1 +kerning first=90 second=289 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=253 second=277 amount=-1 +kerning first=381 second=253 amount=-1 +kerning first=102 second=104 amount=1 +kerning first=267 second=225 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=256 second=85 amount=-1 +kerning first=221 second=347 amount=-1 +kerning first=356 second=214 amount=-1 +kerning first=250 second=318 amount=-1 +kerning first=264 second=199 amount=-1 +kerning first=45 second=119 amount=-1 +kerning first=8217 second=97 amount=-1 +kerning first=197 second=71 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=310 second=251 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=84 second=382 amount=-1 +kerning first=83 second=120 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=371 second=8221 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=354 second=332 amount=-1 +kerning first=367 second=103 amount=-1 +kerning first=317 second=220 amount=-1 +kerning first=354 second=90 amount=-1 +kerning first=260 second=365 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=122 second=171 amount=-1 +kerning first=352 second=203 amount=-1 +kerning first=187 second=103 amount=-1 +kerning first=67 second=291 amount=-1 +kerning first=296 second=365 amount=-1 +kerning first=82 second=103 amount=-1 +kerning first=118 second=103 amount=-1 +kerning first=227 second=119 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=279 second=314 amount=-1 +kerning first=243 second=314 amount=-1 +kerning first=371 second=119 amount=-1 +kerning first=279 second=118 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=263 second=119 amount=-1 +kerning first=315 second=118 amount=-1 +kerning first=76 second=380 amount=-1 +kerning first=102 second=314 amount=1 +kerning first=66 second=118 amount=-1 +kerning first=66 second=314 amount=-1 +kerning first=289 second=380 amount=-1 +kerning first=253 second=380 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=195 second=217 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=194 second=366 amount=-1 +kerning first=8222 second=380 amount=-1 +kerning first=351 second=118 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=354 second=248 amount=-1 +kerning first=315 second=8220 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=8220 second=287 amount=-1 +kerning first=255 second=267 amount=-1 +kerning first=258 second=364 amount=-1 +kerning first=220 second=226 amount=-1 +kerning first=119 second=101 amount=-1 +kerning first=66 second=8220 amount=-1 +kerning first=350 second=202 amount=-1 +kerning first=87 second=199 amount=-1 +kerning first=196 second=118 amount=-1 +kerning first=249 second=8221 amount=-1 +kerning first=350 second=85 amount=-1 +kerning first=310 second=79 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=302 second=361 amount=-1 +kerning first=376 second=118 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=344 second=338 amount=-1 +kerning first=232 second=118 amount=-1 +kerning first=356 second=377 amount=-1 +kerning first=65 second=85 amount=-1 +kerning first=221 second=83 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=1059 second=1060 amount=-1 +kerning first=311 second=8249 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=350 second=315 amount=-1 +kerning first=207 second=250 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=354 second=193 amount=-2 +kerning first=353 second=103 amount=-1 +kerning first=281 second=103 amount=-1 +kerning first=317 second=103 amount=-1 +kerning first=8218 second=374 amount=-2 +kerning first=8218 second=380 amount=-1 +kerning first=98 second=318 amount=-1 +kerning first=376 second=210 amount=-1 +kerning first=118 second=337 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=45 second=221 amount=-1 +kerning first=275 second=318 amount=-1 +kerning first=82 second=337 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=218 second=65 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=268 second=210 amount=-1 +kerning first=290 second=65 amount=-1 +kerning first=199 second=286 amount=-1 +kerning first=362 second=65 amount=-1 +kerning first=256 second=118 amount=-1 +kerning first=264 second=204 amount=-1 +kerning first=252 second=253 amount=-1 +kerning first=364 second=378 amount=-1 +kerning first=260 second=221 amount=-2 +kerning first=366 second=227 amount=-1 +kerning first=281 second=44 amount=-1 +kerning first=220 second=378 amount=-1 +kerning first=330 second=227 amount=-1 +kerning first=354 second=171 amount=-1 +kerning first=266 second=73 amount=-1 +kerning first=354 second=268 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=352 second=366 amount=-1 +kerning first=119 second=269 amount=-1 +kerning first=317 second=356 amount=-1 +kerning first=192 second=219 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=262 second=212 amount=-1 +kerning first=262 second=66 amount=-1 +kerning first=375 second=242 amount=-1 +kerning first=367 second=108 amount=-1 +kerning first=86 second=328 amount=-1 +kerning first=214 second=44 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=8216 second=291 amount=-1 +kerning first=82 second=108 amount=-1 +kerning first=280 second=103 amount=-1 +kerning first=223 second=108 amount=-1 +kerning first=262 second=317 amount=-1 +kerning first=303 second=242 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=258 second=252 amount=-1 +kerning first=291 second=45 amount=-1 +kerning first=8220 second=248 amount=-1 +kerning first=354 second=122 amount=-1 +kerning first=87 second=224 amount=-1 +kerning first=1061 second=1105 amount=-1 +kerning first=8250 second=375 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=267 second=237 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=8218 second=368 amount=-1 +kerning first=303 second=275 amount=-1 +kerning first=376 second=353 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=194 second=119 amount=-1 +kerning first=1058 second=1103 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=87 second=111 amount=-1 +kerning first=218 second=45 amount=-1 +kerning first=307 second=287 amount=-1 +kerning first=83 second=325 amount=-1 +kerning first=89 second=121 amount=-1 +kerning first=119 second=281 amount=-1 +kerning first=1050 second=1086 amount=-1 +kerning first=268 second=291 amount=-1 +kerning first=290 second=45 amount=-1 +kerning first=326 second=45 amount=-1 +kerning first=362 second=45 amount=-1 +kerning first=317 second=354 amount=-1 +kerning first=350 second=374 amount=-1 +kerning first=311 second=243 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=233 second=287 amount=-1 +kerning first=8216 second=100 amount=-1 +kerning first=269 second=287 amount=-1 +kerning first=217 second=193 amount=-1 +kerning first=197 second=287 amount=-1 +kerning first=196 second=353 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=108 second=8217 amount=-1 +kerning first=84 second=283 amount=-1 +kerning first=1061 second=1108 amount=-1 +kerning first=291 second=228 amount=-1 +kerning first=278 second=287 amount=-1 +kerning first=377 second=287 amount=-1 +kerning first=249 second=8217 amount=-1 +kerning first=321 second=8217 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=313 second=368 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=311 second=111 amount=-1 +kerning first=374 second=264 amount=-1 +kerning first=266 second=264 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=221 second=248 amount=-1 +kerning first=248 second=253 amount=-1 +kerning first=89 second=269 amount=-1 +kerning first=356 second=253 amount=-1 +kerning first=197 second=364 amount=-1 +kerning first=314 second=118 amount=-1 +kerning first=374 second=269 amount=-1 +kerning first=256 second=334 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=266 second=346 amount=-1 +kerning first=75 second=288 amount=-1 +kerning first=8216 second=232 amount=-1 +kerning first=218 second=289 amount=-1 +kerning first=77 second=289 amount=-1 +kerning first=89 second=346 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=362 second=289 amount=-1 +kerning first=86 second=99 amount=-1 +kerning first=290 second=289 amount=-1 +kerning first=220 second=46 amount=-1 +kerning first=296 second=369 amount=-1 +kerning first=352 second=207 amount=-1 +kerning first=260 second=369 amount=-1 +kerning first=364 second=46 amount=-1 +kerning first=366 second=192 amount=-1 +kerning first=102 second=98 amount=1 +kerning first=66 second=98 amount=-1 +kerning first=350 second=70 amount=-1 +kerning first=371 second=99 amount=-1 +kerning first=362 second=230 amount=-1 +kerning first=8220 second=267 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=199 second=332 amount=-1 +kerning first=82 second=352 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=260 second=81 amount=-1 +kerning first=218 second=230 amount=-1 +kerning first=251 second=375 amount=-1 +kerning first=374 second=346 amount=-1 +kerning first=221 second=122 amount=-1 +kerning first=119 second=233 amount=-1 +kerning first=65 second=217 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=221 second=351 amount=-1 +kerning first=83 second=102 amount=-1 +kerning first=334 second=256 amount=-1 +kerning first=221 second=210 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=324 second=119 amount=-1 +kerning first=350 second=217 amount=-1 +kerning first=302 second=117 amount=-1 +kerning first=262 second=256 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=232 second=314 amount=-1 +kerning first=1046 second=1095 amount=-1 +kerning first=87 second=263 amount=-1 +kerning first=381 second=121 amount=-1 +kerning first=84 second=245 amount=-1 +kerning first=326 second=8220 amount=-1 +kerning first=205 second=363 amount=-1 +kerning first=262 second=82 amount=-1 +kerning first=113 second=8220 amount=-1 +kerning first=266 second=302 amount=-1 +kerning first=258 second=221 amount=-2 +kerning first=296 second=228 amount=-1 +kerning first=368 second=228 amount=-1 +kerning first=376 second=347 amount=-1 +kerning first=119 second=228 amount=-1 +kerning first=375 second=281 amount=-1 +kerning first=196 second=347 amount=-1 +kerning first=1040 second=1059 amount=-1 +kerning first=97 second=8221 amount=-1 +kerning first=195 second=85 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=193 second=361 amount=-1 +kerning first=67 second=288 amount=-1 +kerning first=260 second=266 amount=-1 +kerning first=8216 second=335 amount=-1 +kerning first=289 second=316 amount=-1 +kerning first=229 second=8220 amount=-1 +kerning first=218 second=197 amount=-1 +kerning first=371 second=246 amount=-1 +kerning first=354 second=83 amount=-1 +kerning first=356 second=90 amount=-1 +kerning first=346 second=171 amount=-1 +kerning first=362 second=197 amount=-1 +kerning first=379 second=365 amount=-1 +kerning first=310 second=171 amount=-1 +kerning first=352 second=325 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=290 second=197 amount=-1 +kerning first=382 second=171 amount=-1 +kerning first=258 second=87 amount=-2 +kerning first=1027 second=1051 amount=-1 +kerning first=234 second=103 amount=-1 +kerning first=8250 second=350 amount=-1 +kerning first=1043 second=1077 amount=-1 +kerning first=67 second=71 amount=-1 +kerning first=303 second=281 amount=-1 +kerning first=198 second=103 amount=-1 +kerning first=364 second=103 amount=-1 +kerning first=220 second=103 amount=-1 +kerning first=256 second=103 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=84 second=263 amount=-1 +kerning first=256 second=364 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=119 second=333 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=284 second=196 amount=-1 +kerning first=246 second=120 amount=-1 +kerning first=260 second=334 amount=-1 +kerning first=262 second=214 amount=-1 +kerning first=266 second=284 amount=-1 +kerning first=232 second=255 amount=-1 +kerning first=84 second=199 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=286 second=89 amount=-1 +kerning first=374 second=284 amount=-1 +kerning first=87 second=382 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=367 second=121 amount=-1 +kerning first=205 second=361 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=344 second=362 amount=-1 +kerning first=259 second=121 amount=-1 +kerning first=264 second=382 amount=-1 +kerning first=223 second=121 amount=-1 +kerning first=310 second=264 amount=-1 +kerning first=187 second=121 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=303 second=339 amount=-1 +kerning first=224 second=8221 amount=-1 +kerning first=66 second=102 amount=-1 +kerning first=260 second=8221 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=257 second=118 amount=-1 +kerning first=303 second=235 amount=-1 +kerning first=216 second=44 amount=-1 +kerning first=375 second=235 amount=-1 +kerning first=365 second=118 amount=-1 +kerning first=119 second=248 amount=-1 +kerning first=90 second=378 amount=-1 +kerning first=253 second=283 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=87 second=281 amount=-1 +kerning first=221 second=118 amount=-1 +kerning first=45 second=69 amount=-1 +kerning first=284 second=86 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=8216 second=289 amount=-1 +kerning first=262 second=315 amount=-1 +kerning first=264 second=323 amount=-1 +kerning first=45 second=346 amount=-1 +kerning first=71 second=86 amount=-1 +kerning first=192 second=217 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=304 second=250 amount=-1 +kerning first=86 second=83 amount=-1 +kerning first=217 second=224 amount=-1 +kerning first=356 second=198 amount=-2 +kerning first=289 second=224 amount=-1 +kerning first=327 second=227 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=284 second=198 amount=-1 +kerning first=291 second=227 amount=-1 +kerning first=255 second=227 amount=-1 +kerning first=192 second=89 amount=-2 +kerning first=236 second=8249 amount=-1 +kerning first=78 second=227 amount=-1 +kerning first=72 second=363 amount=-1 +kerning first=86 second=244 amount=-1 +kerning first=381 second=291 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=325 second=97 amount=-1 +kerning first=371 second=244 amount=-1 +kerning first=317 second=90 amount=-1 +kerning first=87 second=121 amount=-1 +kerning first=201 second=291 amount=-1 +kerning first=86 second=187 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=375 second=378 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=248 second=44 amount=-1 +kerning first=290 second=256 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=199 second=268 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=362 second=256 amount=-1 +kerning first=121 second=337 amount=-1 +kerning first=284 second=44 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=197 second=366 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=71 second=198 amount=-1 +kerning first=218 second=256 amount=-1 +kerning first=310 second=286 amount=-1 +kerning first=89 second=326 amount=-1 +kerning first=315 second=379 amount=-1 +kerning first=366 second=287 amount=-1 +kerning first=330 second=287 amount=-1 +kerning first=266 second=205 amount=-1 +kerning first=258 second=287 amount=-1 +kerning first=376 second=228 amount=-1 +kerning first=260 second=8220 amount=-1 +kerning first=368 second=260 amount=-1 +kerning first=194 second=368 amount=-1 +kerning first=374 second=326 amount=-1 +kerning first=304 second=228 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=86 second=350 amount=-1 +kerning first=283 second=107 amount=-1 +kerning first=374 second=262 amount=-1 +kerning first=248 second=108 amount=-1 +kerning first=266 second=262 amount=-1 +kerning first=344 second=8249 amount=-1 +kerning first=217 second=261 amount=-1 +kerning first=380 second=8249 amount=-1 +kerning first=255 second=269 amount=-1 +kerning first=325 second=261 amount=-1 +kerning first=289 second=261 amount=-1 +kerning first=8220 second=97 amount=-1 +kerning first=253 second=261 amount=-1 +kerning first=327 second=229 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=291 second=229 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=1038 second=1113 amount=-1 +kerning first=220 second=257 amount=-1 +kerning first=1036 second=1059 amount=-1 +kerning first=78 second=229 amount=-1 +kerning first=194 second=346 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=255 second=229 amount=-1 +kerning first=219 second=229 amount=-1 +kerning first=84 second=243 amount=-1 +kerning first=103 second=97 amount=-1 +kerning first=260 second=332 amount=-1 +kerning first=1070 second=1038 amount=-1 +kerning first=199 second=290 amount=-1 +kerning first=121 second=271 amount=-1 +kerning first=8216 second=333 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=195 second=356 amount=-2 +kerning first=87 second=261 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=118 second=275 amount=-1 +kerning first=313 second=381 amount=-1 +kerning first=266 second=304 amount=-1 +kerning first=82 second=275 amount=-1 +kerning first=339 second=255 amount=-1 +kerning first=82 second=240 amount=-1 +kerning first=231 second=255 amount=-1 +kerning first=119 second=226 amount=-1 +kerning first=8218 second=378 amount=-1 +kerning first=267 second=255 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=374 second=227 amount=-1 +kerning first=241 second=119 amount=-1 +kerning first=296 second=226 amount=-1 +kerning first=277 second=119 amount=-1 +kerning first=90 second=255 amount=-1 +kerning first=302 second=227 amount=-1 +kerning first=345 second=44 amount=-1 +kerning first=368 second=226 amount=-1 +kerning first=374 second=259 amount=-1 +kerning first=313 second=119 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=330 second=225 amount=-1 +kerning first=366 second=225 amount=-1 +kerning first=310 second=363 amount=-1 +kerning first=233 second=289 amount=-1 +kerning first=1113 second=1091 amount=-1 +kerning first=103 second=230 amount=-1 +kerning first=84 second=241 amount=-1 +kerning first=364 second=257 amount=-1 +kerning first=334 second=192 amount=-1 +kerning first=370 second=192 amount=-1 +kerning first=193 second=289 amount=-1 +kerning first=213 second=193 amount=-1 +kerning first=192 second=338 amount=-1 +kerning first=193 second=8220 amount=-1 +kerning first=264 second=338 amount=-1 +kerning first=362 second=122 amount=-1 +kerning first=245 second=44 amount=-1 +kerning first=218 second=122 amount=-1 +kerning first=84 second=375 amount=-1 +kerning first=86 second=288 amount=-1 +kerning first=65 second=354 amount=-2 +kerning first=68 second=46 amount=-1 +kerning first=260 second=213 amount=-1 +kerning first=195 second=361 amount=-1 +kerning first=221 second=230 amount=-1 +kerning first=344 second=364 amount=-1 +kerning first=379 second=369 amount=-1 +kerning first=245 second=46 amount=-1 +kerning first=281 second=46 amount=-1 +kerning first=266 second=282 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=197 second=346 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=240 second=375 amount=-1 +kerning first=286 second=87 amount=-1 +kerning first=99 second=375 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=375 second=277 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=89 second=328 amount=-1 +kerning first=354 second=243 amount=-1 +kerning first=303 second=277 amount=-1 +kerning first=376 second=351 amount=-1 +kerning first=352 second=75 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=196 second=351 amount=-1 +kerning first=97 second=8217 amount=-1 +kerning first=78 second=117 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=69 second=287 amount=-1 +kerning first=204 second=289 amount=-1 +kerning first=82 second=253 amount=-1 +kerning first=1100 second=1118 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=187 second=253 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=268 second=65 amount=-1 +kerning first=223 second=253 amount=-1 +kerning first=327 second=117 amount=-1 +kerning first=212 second=260 amount=-1 +kerning first=367 second=253 amount=-1 +kerning first=356 second=121 amount=-1 +kerning first=71 second=260 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=374 second=328 amount=-1 +kerning first=86 second=231 amount=-1 +kerning first=216 second=197 amount=-1 +kerning first=284 second=260 amount=-1 +kerning first=344 second=318 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=356 second=260 amount=-2 +kerning first=234 second=121 amount=-1 +kerning first=356 second=196 amount=-2 +kerning first=71 second=196 amount=-1 +kerning first=250 second=316 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=351 second=351 amount=-1 +kerning first=281 second=118 amount=-1 +kerning first=221 second=228 amount=-1 +kerning first=218 second=44 amount=-1 +kerning first=89 second=99 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=374 second=99 amount=-1 +kerning first=310 second=213 amount=-1 +kerning first=344 second=221 amount=-1 +kerning first=67 second=302 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=66 second=351 amount=-1 +kerning first=1027 second=1093 amount=-1 +kerning first=199 second=270 amount=-1 +kerning first=258 second=71 amount=-1 +kerning first=374 second=8250 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=339 second=103 amount=-1 +kerning first=119 second=246 amount=-1 +kerning first=375 second=103 amount=-1 +kerning first=267 second=103 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=195 second=103 amount=-1 +kerning first=325 second=224 amount=-1 +kerning first=231 second=103 amount=-1 +kerning first=90 second=103 amount=-1 +kerning first=281 second=253 amount=-1 +kerning first=245 second=253 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=353 second=253 amount=-1 +kerning first=195 second=354 amount=-2 +kerning first=317 second=253 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=260 second=171 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=368 second=171 amount=-1 +kerning first=234 second=255 amount=-1 +kerning first=253 second=281 amount=-1 +kerning first=87 second=283 amount=-1 +kerning first=354 second=118 amount=-1 +kerning first=72 second=365 amount=-1 +kerning first=377 second=117 amount=-1 +kerning first=45 second=253 amount=-1 +kerning first=266 second=45 amount=-1 +kerning first=262 second=313 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=283 second=287 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=70 second=287 amount=-1 +kerning first=262 second=216 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=192 second=85 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=268 second=274 amount=-1 +kerning first=118 second=273 amount=-1 +kerning first=120 second=8249 amount=-1 +kerning first=374 second=46 amount=-1 +kerning first=332 second=193 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=375 second=279 amount=-1 +kerning first=268 second=327 amount=-1 +kerning first=344 second=113 amount=-1 +kerning first=103 second=227 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=260 second=268 amount=-1 +kerning first=313 second=8217 amount=-1 +kerning first=1027 second=1113 amount=-1 +kerning first=121 second=333 amount=-1 +kerning first=370 second=291 amount=-1 +kerning first=298 second=291 amount=-1 +kerning first=262 second=291 amount=-1 +kerning first=121 second=291 amount=-1 +kerning first=85 second=291 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=8220 second=196 amount=-2 +kerning first=67 second=73 amount=-1 +kerning first=232 second=121 amount=-1 +kerning first=8249 second=86 amount=-1 +kerning first=344 second=199 amount=-1 +kerning first=84 second=67 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=374 second=210 amount=-1 +kerning first=258 second=366 amount=-1 +kerning first=379 second=367 amount=-1 +kerning first=89 second=277 amount=-1 +kerning first=223 second=44 amount=-1 +kerning first=352 second=73 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=122 second=112 amount=-1 +kerning first=89 second=119 amount=-1 +kerning first=262 second=194 amount=-1 +kerning first=350 second=105 amount=-1 +kerning first=230 second=119 amount=-1 +kerning first=356 second=240 amount=-1 +kerning first=121 second=335 amount=-1 +kerning first=374 second=119 amount=-1 +kerning first=8217 second=99 amount=-1 +kerning first=1045 second=1038 amount=-1 +kerning first=8250 second=282 amount=-1 +kerning first=317 second=374 amount=-1 +kerning first=281 second=107 amount=-1 +kerning first=193 second=353 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=295 second=45 amount=-1 +kerning first=246 second=314 amount=-1 +kerning first=296 second=367 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=260 second=367 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=193 second=212 amount=-1 +kerning first=86 second=101 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=8216 second=234 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=231 second=257 amount=-1 +kerning first=346 second=310 amount=-1 +kerning first=371 second=101 amount=-1 +kerning first=375 second=257 amount=-1 +kerning first=267 second=257 amount=-1 +kerning first=352 second=205 amount=-1 +kerning first=258 second=115 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=374 second=229 amount=-1 +kerning first=118 second=339 amount=-1 +kerning first=1036 second=1108 amount=-1 +kerning first=302 second=229 amount=-1 +kerning first=82 second=339 amount=-1 +kerning first=344 second=214 amount=-1 +kerning first=255 second=97 amount=-1 +kerning first=219 second=97 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=327 second=97 amount=-1 +kerning first=107 second=240 amount=-1 +kerning first=291 second=97 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=267 second=318 amount=-1 +kerning first=350 second=356 amount=-1 +kerning first=218 second=287 amount=-1 +kerning first=260 second=290 amount=-1 +kerning first=253 second=316 amount=-1 +kerning first=260 second=83 amount=-1 +kerning first=370 second=194 amount=-1 +kerning first=268 second=45 amount=-1 +kerning first=268 second=197 amount=-1 +kerning first=304 second=45 amount=-1 +kerning first=256 second=255 amount=-1 +kerning first=115 second=255 amount=-1 +kerning first=368 second=83 amount=-1 +kerning first=65 second=356 amount=-2 +kerning first=376 second=197 amount=-2 +kerning first=87 second=336 amount=-1 +kerning first=264 second=380 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=332 second=44 amount=-1 +kerning first=264 second=336 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=352 second=120 amount=-1 +kerning first=234 second=253 amount=-1 +kerning first=310 second=81 amount=-1 +kerning first=270 second=46 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=221 second=65 amount=-2 +kerning first=171 second=84 amount=-1 +kerning first=231 second=289 amount=-1 +kerning first=234 second=46 amount=-1 +kerning first=344 second=243 amount=-1 +kerning first=75 second=264 amount=-1 +kerning first=1054 second=1059 amount=-1 +kerning first=87 second=380 amount=-1 +kerning first=84 second=111 amount=-1 +kerning first=82 second=121 amount=-1 +kerning first=310 second=288 amount=-1 +kerning first=333 second=318 amount=-1 +kerning first=369 second=318 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=8216 second=256 amount=-2 +kerning first=325 second=259 amount=-1 +kerning first=345 second=46 amount=-1 +kerning first=289 second=259 amount=-1 +kerning first=253 second=259 amount=-1 +kerning first=376 second=230 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=304 second=230 amount=-1 +kerning first=371 second=8217 amount=-1 +kerning first=337 second=375 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=88 second=375 amount=-1 +kerning first=217 second=259 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=229 second=375 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=266 second=207 amount=-1 +kerning first=350 second=323 amount=-1 +kerning first=374 second=381 amount=-1 +kerning first=234 second=311 amount=-1 +kerning first=323 second=259 amount=-1 +kerning first=287 second=259 amount=-1 +kerning first=115 second=253 amount=-1 +kerning first=325 second=363 amount=-1 +kerning first=256 second=253 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=267 second=224 amount=-1 +kerning first=344 second=346 amount=-1 +kerning first=354 second=334 amount=-1 +kerning first=321 second=122 amount=-1 +kerning first=375 second=224 amount=-1 +kerning first=279 second=375 amount=-1 +kerning first=315 second=375 amount=-1 +kerning first=351 second=375 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=231 second=224 amount=-1 +kerning first=8217 second=261 amount=-1 +kerning first=8220 second=279 amount=-1 +kerning first=192 second=8220 amount=-1 +kerning first=102 second=316 amount=1 +kerning first=66 second=316 amount=-1 +kerning first=268 second=207 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=264 second=206 amount=-1 +kerning first=335 second=121 amount=-1 +kerning first=263 second=121 amount=-1 +kerning first=346 second=82 amount=-1 +kerning first=227 second=121 amount=-1 +kerning first=376 second=335 amount=-1 +kerning first=352 second=368 amount=-1 +kerning first=86 second=121 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=85 second=171 amount=-1 +kerning first=118 second=271 amount=-1 +kerning first=374 second=231 amount=-1 +kerning first=362 second=287 amount=-1 +kerning first=262 second=171 amount=-1 +kerning first=376 second=212 amount=-1 +kerning first=370 second=171 amount=-1 +kerning first=334 second=194 amount=-1 +kerning first=290 second=287 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=109 second=8217 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=243 second=375 amount=-1 +kerning first=8249 second=89 amount=-1 +kerning first=66 second=237 amount=-1 +kerning first=250 second=8217 amount=-1 +kerning first=66 second=375 amount=-1 +kerning first=266 second=310 amount=-1 +kerning first=377 second=171 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=350 second=237 amount=-1 +kerning first=353 second=351 amount=-1 +kerning first=8218 second=382 amount=-1 +kerning first=354 second=333 amount=-1 +kerning first=187 second=330 amount=-1 +kerning first=187 second=120 amount=-1 +kerning first=377 second=249 amount=-1 +kerning first=223 second=120 amount=-1 +kerning first=374 second=379 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=368 second=103 amount=-1 +kerning first=260 second=103 amount=-1 +kerning first=219 second=230 amount=-1 +kerning first=296 second=103 amount=-1 +kerning first=207 second=365 amount=-1 +kerning first=83 second=103 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=233 second=318 amount=-1 +kerning first=316 second=118 amount=-1 +kerning first=352 second=118 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=321 second=362 amount=-1 +kerning first=89 second=231 amount=-1 +kerning first=101 second=44 amount=-1 +kerning first=310 second=332 amount=-1 +kerning first=204 second=117 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=279 second=316 amount=-1 +kerning first=243 second=316 amount=-1 +kerning first=354 second=216 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=85 second=378 amount=-1 +kerning first=66 second=86 amount=-1 +kerning first=256 second=264 amount=-1 +kerning first=260 second=264 amount=-1 +kerning first=381 second=250 amount=-1 +kerning first=316 second=8220 amount=-1 +kerning first=82 second=281 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=118 second=281 amount=-1 +kerning first=347 second=375 amount=-1 +kerning first=1061 second=1098 amount=-1 +kerning first=1025 second=1098 amount=-1 +kerning first=370 second=378 amount=-1 +kerning first=363 second=8221 amount=-1 +kerning first=344 second=218 amount=-1 +kerning first=262 second=378 amount=-1 +kerning first=266 second=70 amount=-1 +kerning first=235 second=314 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=344 second=267 amount=-1 +kerning first=315 second=86 amount=-1 +kerning first=171 second=86 amount=-1 +kerning first=89 second=379 amount=-1 +kerning first=192 second=354 amount=-2 +kerning first=284 second=192 amount=-1 +kerning first=356 second=192 amount=-2 +kerning first=298 second=250 amount=-1 +kerning first=71 second=192 amount=-1 +kerning first=253 second=224 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=268 second=296 amount=-1 +kerning first=375 second=244 amount=-1 +kerning first=350 second=303 amount=-1 +kerning first=87 second=245 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=381 second=378 amount=-1 +kerning first=268 second=256 amount=-1 +kerning first=120 second=227 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=376 second=256 amount=-2 +kerning first=193 second=366 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=313 second=291 amount=-1 +kerning first=90 second=102 amount=-1 +kerning first=277 second=291 amount=-1 +kerning first=84 second=336 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=205 second=291 amount=-1 +kerning first=351 second=112 amount=-1 +kerning first=221 second=216 amount=-1 +kerning first=303 second=263 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=375 second=263 amount=-1 +kerning first=382 second=112 amount=-1 +kerning first=304 second=365 amount=-1 +kerning first=249 second=255 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=74 second=8249 amount=-1 +kerning first=255 second=240 amount=-1 +kerning first=287 second=8249 amount=-1 +kerning first=192 second=84 amount=-2 +kerning first=323 second=8249 amount=-1 +kerning first=193 second=268 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=117 second=318 amount=-1 +kerning first=1025 second=1059 amount=-1 +kerning first=362 second=228 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=290 second=198 amount=-1 +kerning first=350 second=205 amount=-1 +kerning first=218 second=198 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=218 second=228 amount=-1 +kerning first=268 second=286 amount=-1 +kerning first=77 second=228 amount=-1 +kerning first=362 second=198 amount=-1 +kerning first=262 second=260 amount=-1 +kerning first=354 second=65 amount=-2 +kerning first=330 second=367 amount=-1 +kerning first=8250 second=194 amount=-1 +kerning first=1043 second=1078 amount=-1 +kerning first=258 second=367 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=107 second=339 amount=-1 +kerning first=8250 second=82 amount=-1 +kerning first=287 second=229 amount=-1 +kerning first=370 second=260 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=334 second=260 amount=-1 +kerning first=1040 second=1090 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=107 second=271 amount=-1 +kerning first=84 second=115 amount=-1 +kerning first=290 second=356 amount=-1 +kerning first=261 second=8217 amount=-1 +kerning first=118 second=242 amount=-1 +kerning first=1050 second=1058 amount=-1 +kerning first=205 second=261 amount=-1 +kerning first=369 second=8217 amount=-1 +kerning first=82 second=242 amount=-1 +kerning first=311 second=45 amount=-1 +kerning first=323 second=229 amount=-1 +kerning first=356 second=339 amount=-1 +kerning first=8217 second=231 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=119 second=339 amount=-1 +kerning first=356 second=211 amount=-1 +kerning first=242 second=44 amount=-1 +kerning first=8217 second=100 amount=-1 +kerning first=379 second=255 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=307 second=255 amount=-1 +kerning first=235 second=255 amount=-1 +kerning first=220 second=224 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=374 second=110 amount=-1 +kerning first=366 second=97 amount=-1 +kerning first=356 second=290 amount=-1 +kerning first=330 second=97 amount=-1 +kerning first=350 second=44 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=268 second=76 amount=-1 +kerning first=232 second=46 amount=-1 +kerning first=74 second=289 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=119 second=242 amount=-1 +kerning first=356 second=241 amount=-1 +kerning first=323 second=289 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=313 second=370 amount=-1 +kerning first=354 second=225 amount=-1 +kerning first=66 second=287 amount=-1 +kerning first=365 second=255 amount=-1 +kerning first=197 second=368 amount=-1 +kerning first=351 second=287 amount=-1 +kerning first=260 second=352 amount=-1 +kerning first=315 second=287 amount=-1 +kerning first=218 second=261 amount=-1 +kerning first=107 second=281 amount=-1 +kerning first=207 second=287 amount=-1 +kerning first=119 second=283 amount=-1 +kerning first=235 second=118 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=287 second=347 amount=-1 +kerning first=368 second=352 amount=-1 +kerning first=80 second=46 amount=-1 +kerning first=313 second=380 amount=-1 +kerning first=1050 second=1057 amount=-1 +kerning first=196 second=86 amount=-2 +kerning first=344 second=87 amount=-1 +kerning first=84 second=266 amount=-1 +kerning first=90 second=253 amount=-1 +kerning first=262 second=201 amount=-1 +kerning first=356 second=333 amount=-1 +kerning first=266 second=350 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=368 second=74 amount=-1 +kerning first=374 second=350 amount=-1 +kerning first=281 second=311 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=376 second=375 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=89 second=350 amount=-1 +kerning first=291 second=230 amount=-1 +kerning first=196 second=375 amount=-1 +kerning first=194 second=350 amount=-1 +kerning first=232 second=375 amount=-1 +kerning first=255 second=230 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=201 second=289 amount=-1 +kerning first=235 second=104 amount=-1 +kerning first=381 second=289 amount=-1 +kerning first=193 second=219 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=1038 second=1075 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=259 second=253 amount=-1 +kerning first=71 second=65 amount=-1 +kerning first=1024 second=1098 amount=-1 +kerning first=376 second=326 amount=-1 +kerning first=381 second=251 amount=-1 +kerning first=368 second=259 amount=-1 +kerning first=218 second=291 amount=-1 +kerning first=313 second=221 amount=-1 +kerning first=1059 second=1033 amount=-1 +kerning first=97 second=121 amount=-1 +kerning first=295 second=8217 amount=-1 +kerning first=255 second=231 amount=-1 +kerning first=381 second=171 amount=-1 +kerning first=217 second=196 amount=-1 +kerning first=207 second=228 amount=-1 +kerning first=266 second=270 amount=-1 +kerning first=374 second=100 amount=-1 +kerning first=316 second=119 amount=-1 +kerning first=256 second=351 amount=-1 +kerning first=119 second=314 amount=-1 +kerning first=1059 second=1082 amount=-1 +kerning first=317 second=381 amount=-1 +kerning first=269 second=318 amount=-1 +kerning first=256 second=214 amount=-1 +kerning first=8250 second=204 amount=-1 +kerning first=352 second=119 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=66 second=228 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=313 second=379 amount=-1 +kerning first=221 second=44 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=1059 second=1113 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=289 second=382 amount=-1 +kerning first=119 second=234 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=267 second=253 amount=-1 +kerning first=231 second=253 amount=-1 +kerning first=258 second=249 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=339 second=253 amount=-1 +kerning first=65 second=363 amount=-1 +kerning first=206 second=363 amount=-1 +kerning first=354 second=246 amount=-1 +kerning first=1027 second=1083 amount=-1 +kerning first=8220 second=240 amount=-1 +kerning first=379 second=103 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=307 second=103 amount=-1 +kerning first=235 second=103 amount=-1 +kerning first=89 second=100 amount=-1 +kerning first=82 second=232 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=118 second=232 amount=-1 +kerning first=197 second=118 amount=-1 +kerning first=346 second=203 amount=-1 +kerning first=233 second=118 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=269 second=118 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=71 second=89 amount=-1 +kerning first=77 second=365 amount=-1 +kerning first=264 second=284 amount=-1 +kerning first=346 second=362 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=88 second=117 amount=-1 +kerning first=8216 second=269 amount=-1 +kerning first=76 second=382 amount=-1 +kerning first=253 second=382 amount=-1 +kerning first=305 second=118 amount=-1 +kerning first=254 second=316 amount=-1 +kerning first=217 second=382 amount=-1 +kerning first=353 second=120 amount=-1 +kerning first=289 second=44 amount=-1 +kerning first=87 second=197 amount=-2 +kerning first=253 second=44 amount=-1 +kerning first=187 second=86 amount=-1 +kerning first=260 second=255 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=112 second=44 amount=-1 +kerning first=379 second=252 amount=-1 +kerning first=84 second=267 amount=-1 +kerning first=217 second=44 amount=-1 +kerning first=269 second=97 amount=-1 +kerning first=336 second=197 amount=-1 +kerning first=346 second=313 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=1059 second=1081 amount=-1 +kerning first=220 second=193 amount=-1 +kerning first=266 second=79 amount=-1 +kerning first=45 second=118 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=374 second=79 amount=-1 +kerning first=364 second=193 amount=-1 +kerning first=196 second=85 amount=-1 +kerning first=371 second=273 amount=-1 +kerning first=199 second=65 amount=-1 +kerning first=262 second=338 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=117 second=118 amount=-1 +kerning first=245 second=120 amount=-1 +kerning first=107 second=232 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=258 second=118 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=323 second=250 amount=-1 +kerning first=253 second=245 amount=-1 +kerning first=356 second=378 amount=-1 +kerning first=8220 second=275 amount=-1 +kerning first=267 second=303 amount=-1 +kerning first=263 second=46 amount=-1 +kerning first=279 second=44 amount=-1 +kerning first=231 second=303 amount=-1 +kerning first=194 second=221 amount=-2 +kerning first=258 second=199 amount=-1 +kerning first=1070 second=1059 amount=-1 +kerning first=374 second=83 amount=-1 +kerning first=374 second=291 amount=-1 +kerning first=310 second=361 amount=-1 +kerning first=338 second=291 amount=-1 +kerning first=107 second=242 amount=-1 +kerning first=119 second=113 amount=-1 +kerning first=266 second=291 amount=-1 +kerning first=230 second=291 amount=-1 +kerning first=194 second=291 amount=-1 +kerning first=89 second=291 amount=-1 +kerning first=356 second=242 amount=-1 +kerning first=268 second=216 amount=-1 +kerning first=66 second=326 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=346 second=204 amount=-1 +kerning first=376 second=216 amount=-1 +kerning first=87 second=187 amount=-1 +kerning first=264 second=196 amount=-1 +kerning first=8216 second=259 amount=-1 +kerning first=221 second=335 amount=-1 +kerning first=8217 second=101 amount=-1 +kerning first=346 second=323 amount=-1 +kerning first=67 second=287 amount=-1 +kerning first=362 second=378 amount=-1 +kerning first=346 second=73 amount=-1 +kerning first=1038 second=1095 amount=-1 +kerning first=196 second=374 amount=-2 +kerning first=364 second=44 amount=-1 +kerning first=366 second=346 amount=-1 +kerning first=85 second=289 amount=-1 +kerning first=121 second=289 amount=-1 +kerning first=255 second=279 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=262 second=289 amount=-1 +kerning first=298 second=289 amount=-1 +kerning first=1059 second=1051 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=370 second=289 amount=-1 +kerning first=187 second=195 amount=-1 +kerning first=8250 second=203 amount=-1 +kerning first=287 second=108 amount=-1 +kerning first=251 second=108 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=8250 second=83 amount=-1 +kerning first=8250 second=198 amount=-1 +kerning first=121 second=229 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=370 second=229 amount=-1 +kerning first=268 second=325 amount=-1 +kerning first=298 second=229 amount=-1 +kerning first=264 second=197 amount=-1 +kerning first=232 second=287 amount=-1 +kerning first=87 second=171 amount=-1 +kerning first=268 second=287 amount=-1 +kerning first=350 second=206 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=196 second=287 amount=-1 +kerning first=85 second=229 amount=-1 +kerning first=1036 second=1089 amount=-1 +kerning first=260 second=353 amount=-1 +kerning first=311 second=275 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=193 second=356 amount=-2 +kerning first=1059 second=1054 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=376 second=287 amount=-1 +kerning first=86 second=248 amount=-1 +kerning first=304 second=287 amount=-1 +kerning first=268 second=81 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=1059 second=1103 amount=-1 +kerning first=258 second=368 amount=-1 +kerning first=264 second=45 amount=-1 +kerning first=213 second=194 amount=-1 +kerning first=87 second=45 amount=-1 +kerning first=206 second=45 amount=-1 +kerning first=121 second=339 amount=-1 +kerning first=221 second=353 amount=-1 +kerning first=219 second=350 amount=-1 +kerning first=120 second=97 amount=-1 +kerning first=314 second=45 amount=-1 +kerning first=119 second=243 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=71 second=289 amount=-1 +kerning first=216 second=194 amount=-1 +kerning first=255 second=318 amount=-1 +kerning first=8220 second=231 amount=-1 +kerning first=291 second=318 amount=-1 +kerning first=196 second=356 amount=-2 +kerning first=350 second=45 amount=-1 +kerning first=363 second=318 amount=-1 +kerning first=284 second=289 amount=-1 +kerning first=376 second=255 amount=-1 +kerning first=354 second=46 amount=-1 +kerning first=346 second=370 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=199 second=112 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=262 second=80 amount=-1 +kerning first=303 second=101 amount=-1 +kerning first=8250 second=323 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=284 second=193 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=298 second=251 amount=-1 +kerning first=356 second=193 amount=-2 +kerning first=8216 second=198 amount=-2 +kerning first=220 second=44 amount=-1 +kerning first=71 second=193 amount=-1 +kerning first=194 second=8220 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=258 second=79 amount=-1 +kerning first=82 second=233 amount=-1 +kerning first=1046 second=1105 amount=-1 +kerning first=120 second=226 amount=-1 +kerning first=197 second=119 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=305 second=119 amount=-1 +kerning first=8250 second=313 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=233 second=119 amount=-1 +kerning first=269 second=119 amount=-1 +kerning first=303 second=111 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=221 second=225 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=249 second=314 amount=-1 +kerning first=375 second=111 amount=-1 +kerning first=352 second=209 amount=-1 +kerning first=346 second=274 amount=-1 +kerning first=246 second=46 amount=-1 +kerning first=374 second=8249 amount=-1 +kerning first=376 second=334 amount=-1 +kerning first=365 second=375 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=268 second=334 amount=-1 +kerning first=253 second=115 amount=-1 +kerning first=89 second=101 amount=-1 +kerning first=197 second=87 amount=-2 +kerning first=187 second=201 amount=-1 +kerning first=221 second=375 amount=-1 +kerning first=257 second=375 amount=-1 +kerning first=195 second=291 amount=-1 +kerning first=356 second=122 amount=-1 +kerning first=376 second=277 amount=-1 +kerning first=356 second=81 amount=-1 +kerning first=374 second=101 amount=-1 +kerning first=1070 second=1033 amount=-1 +kerning first=258 second=218 amount=-1 +kerning first=350 second=196 amount=-1 +kerning first=196 second=8220 amount=-1 +kerning first=311 second=235 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=286 second=193 amount=-1 +kerning first=337 second=316 amount=-1 +kerning first=84 second=248 amount=-1 +kerning first=232 second=104 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=281 second=119 amount=-1 +kerning first=8250 second=73 amount=-1 +kerning first=356 second=281 amount=-1 +kerning first=310 second=252 amount=-1 +kerning first=321 second=121 amount=-1 +kerning first=217 second=197 amount=-1 +kerning first=249 second=121 amount=-1 +kerning first=87 second=333 amount=-1 +kerning first=108 second=121 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=255 second=100 amount=-1 +kerning first=375 second=351 amount=-1 +kerning first=352 second=310 amount=-1 +kerning first=258 second=336 amount=-1 +kerning first=379 second=122 amount=-1 +kerning first=218 second=229 amount=-1 +kerning first=195 second=351 amount=-1 +kerning first=67 second=310 amount=-1 +kerning first=199 second=122 amount=-1 +kerning first=362 second=229 amount=-1 +kerning first=330 second=230 amount=-1 +kerning first=366 second=230 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=228 second=8217 amount=-1 +kerning first=195 second=366 amount=-1 +kerning first=266 second=72 amount=-1 +kerning first=84 second=198 amount=-2 +kerning first=87 second=115 amount=-1 +kerning first=101 second=253 amount=-1 +kerning first=242 second=253 amount=-1 +kerning first=1092 second=1076 amount=-1 +kerning first=332 second=65 amount=-1 +kerning first=295 second=171 amount=-1 +kerning first=368 second=65 amount=-1 +kerning first=266 second=200 amount=-1 +kerning first=351 second=347 amount=-1 +kerning first=368 second=289 amount=-1 +kerning first=331 second=171 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=197 second=199 amount=-1 +kerning first=72 second=361 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=364 second=382 amount=-1 +kerning first=354 second=103 amount=-1 +kerning first=66 second=347 amount=-1 +kerning first=311 second=333 amount=-1 +kerning first=218 second=194 amount=-1 +kerning first=282 second=103 amount=-1 +kerning first=224 second=255 amount=-1 +kerning first=1038 second=1101 amount=-1 +kerning first=356 second=8250 amount=-1 +kerning first=266 second=82 amount=-1 +kerning first=313 second=8221 amount=-1 +kerning first=220 second=256 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=241 second=8221 amount=-1 +kerning first=69 second=103 amount=-1 +kerning first=77 second=117 amount=-1 +kerning first=258 second=346 amount=-1 +kerning first=46 second=171 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=66 second=104 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=86 second=283 amount=-1 +kerning first=354 second=266 amount=-1 +kerning first=354 second=264 amount=-1 +kerning first=8250 second=370 amount=-1 +kerning first=269 second=121 amount=-1 +kerning first=321 second=380 amount=-1 +kerning first=315 second=366 amount=-1 +kerning first=83 second=305 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=344 second=217 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=266 second=69 amount=-1 +kerning first=115 second=120 amount=-1 +kerning first=262 second=298 amount=-1 +kerning first=1059 second=1104 amount=-1 +kerning first=374 second=331 amount=-1 +kerning first=315 second=85 amount=-1 +kerning first=283 second=118 amount=-1 +kerning first=286 second=354 amount=-1 +kerning first=279 second=104 amount=-1 +kerning first=197 second=218 amount=-1 +kerning first=244 second=318 amount=-1 +kerning first=371 second=283 amount=-1 +kerning first=106 second=118 amount=-1 +kerning first=66 second=85 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=204 second=250 amount=-1 +kerning first=8217 second=235 amount=-1 +kerning first=197 second=221 amount=-2 +kerning first=80 second=287 amount=-1 +kerning first=252 second=119 amount=-1 +kerning first=197 second=79 amount=-1 +kerning first=279 second=107 amount=-1 +kerning first=352 second=78 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=66 second=366 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=286 second=84 amount=-1 +kerning first=194 second=347 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=221 second=287 amount=-1 +kerning first=1091 second=1083 amount=-1 +kerning first=221 second=113 amount=-1 +kerning first=197 second=115 amount=-1 +kerning first=1027 second=1108 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=67 second=210 amount=-1 +kerning first=263 second=291 amount=-1 +kerning first=325 second=45 amount=-1 +kerning first=256 second=284 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=86 second=291 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=217 second=45 amount=-1 +kerning first=8216 second=260 amount=-2 +kerning first=344 second=337 amount=-1 +kerning first=289 second=45 amount=-1 +kerning first=256 second=262 amount=-1 +kerning first=263 second=261 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=260 second=112 amount=-1 +kerning first=266 second=203 amount=-1 +kerning first=374 second=279 amount=-1 +kerning first=83 second=112 amount=-1 +kerning first=354 second=286 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=253 second=263 amount=-1 +kerning first=240 second=108 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=253 second=244 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=8222 second=122 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=204 second=228 amount=-1 +kerning first=254 second=108 amount=-1 +kerning first=323 second=251 amount=-1 +kerning first=374 second=212 amount=-1 +kerning first=369 second=253 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=8250 second=379 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=266 second=212 amount=-1 +kerning first=171 second=356 amount=-1 +kerning first=1036 second=1098 amount=-1 +kerning first=350 second=364 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=241 second=8220 amount=-1 +kerning first=117 second=119 amount=-1 +kerning first=120 second=367 amount=-1 +kerning first=278 second=291 amount=-1 +kerning first=379 second=171 amount=-1 +kerning first=258 second=119 amount=-1 +kerning first=356 second=233 amount=-1 +kerning first=347 second=115 amount=-1 +kerning first=107 second=233 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=90 second=45 amount=-1 +kerning first=195 second=45 amount=-1 +kerning first=262 second=211 amount=-1 +kerning first=375 second=45 amount=-1 +kerning first=253 second=275 amount=-1 +kerning first=354 second=353 amount=-1 +kerning first=315 second=356 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=66 second=356 amount=-1 +kerning first=346 second=304 amount=-1 +kerning first=221 second=255 amount=-1 +kerning first=257 second=255 amount=-1 +kerning first=193 second=291 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=8220 second=100 amount=-1 +kerning first=86 second=194 amount=-2 +kerning first=1050 second=1092 amount=-1 +kerning first=311 second=244 amount=-1 +kerning first=84 second=324 amount=-1 +kerning first=84 second=377 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=8250 second=74 amount=-1 +kerning first=192 second=364 amount=-1 +kerning first=235 second=46 amount=-1 +kerning first=361 second=8217 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=374 second=228 amount=-1 +kerning first=260 second=362 amount=-1 +kerning first=268 second=212 amount=-1 +kerning first=199 second=264 amount=-1 +kerning first=8217 second=279 amount=-1 +kerning first=354 second=352 amount=-1 +kerning first=193 second=347 amount=-1 +kerning first=350 second=197 amount=-1 +kerning first=362 second=259 amount=-1 +kerning first=268 second=278 amount=-1 +kerning first=82 second=71 amount=-1 +kerning first=352 second=200 amount=-1 +kerning first=112 second=253 amount=-1 +kerning first=376 second=225 amount=-1 +kerning first=76 second=253 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=304 second=225 amount=-1 +kerning first=290 second=86 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=346 second=282 amount=-1 +kerning first=82 second=311 amount=-1 +kerning first=213 second=65 amount=-1 +kerning first=374 second=213 amount=-1 +kerning first=354 second=375 amount=-1 +kerning first=266 second=213 amount=-1 +kerning first=82 second=289 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=246 second=375 amount=-1 +kerning first=269 second=230 amount=-1 +kerning first=262 second=103 amount=-1 +kerning first=1059 second=1117 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=65 second=351 amount=-1 +kerning first=118 second=289 amount=-1 +kerning first=260 second=118 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=84 second=346 amount=-1 +kerning first=367 second=289 amount=-1 +kerning first=86 second=380 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=75 second=336 amount=-1 +kerning first=368 second=122 amount=-1 +kerning first=1042 second=1063 amount=-1 +kerning first=221 second=277 amount=-1 +kerning first=321 second=370 amount=-1 +kerning first=234 second=314 amount=-1 +kerning first=121 second=242 amount=-1 +kerning first=1059 second=1072 amount=-1 +kerning first=344 second=248 amount=-1 +kerning first=8222 second=382 amount=-1 +kerning first=207 second=117 amount=-1 +kerning first=268 second=344 amount=-1 +kerning first=217 second=122 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=1059 second=1102 amount=-1 +kerning first=66 second=259 amount=-1 +kerning first=253 second=351 amount=-1 +kerning first=289 second=351 amount=-1 +kerning first=368 second=44 amount=-1 +kerning first=262 second=68 amount=-1 +kerning first=323 second=171 amount=-1 +kerning first=260 second=121 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=224 second=121 amount=-1 +kerning first=220 second=196 amount=-1 +kerning first=1045 second=1059 amount=-1 +kerning first=374 second=288 amount=-1 +kerning first=256 second=369 amount=-1 +kerning first=118 second=224 amount=-1 +kerning first=266 second=288 amount=-1 +kerning first=86 second=379 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=354 second=277 amount=-1 +kerning first=364 second=196 amount=-1 +kerning first=8217 second=229 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=204 second=103 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=378 second=171 amount=-1 +kerning first=260 second=252 amount=-1 +kerning first=8216 second=261 amount=-1 +kerning first=90 second=382 amount=-1 +kerning first=261 second=106 amount=1 +kerning first=193 second=86 amount=-2 +kerning first=375 second=382 amount=-1 +kerning first=8217 second=259 amount=-1 +kerning first=376 second=246 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=282 second=287 amount=-1 +kerning first=252 second=8221 amount=-1 +kerning first=365 second=103 amount=-1 +kerning first=240 second=316 amount=-1 +kerning first=264 second=266 amount=-1 +kerning first=344 second=368 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=99 second=316 amount=-1 +kerning first=221 second=103 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=344 second=336 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=262 second=330 amount=-1 +kerning first=356 second=71 amount=-1 +kerning first=187 second=352 amount=-1 +kerning first=344 second=118 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=121 second=232 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=236 second=118 amount=-1 +kerning first=339 second=44 amount=-1 +kerning first=354 second=255 amount=-1 +kerning first=246 second=255 amount=-1 +kerning first=375 second=44 amount=-1 +kerning first=370 second=8249 amount=-1 +kerning first=267 second=44 amount=-1 +kerning first=196 second=366 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=311 second=267 amount=-1 +kerning first=85 second=8249 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=87 second=244 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=1046 second=1057 amount=-1 +kerning first=197 second=350 amount=-1 +kerning first=221 second=234 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=337 second=108 amount=-1 +kerning first=67 second=199 amount=-1 +kerning first=204 second=251 amount=-1 +kerning first=352 second=221 amount=-1 +kerning first=74 second=198 amount=-1 +kerning first=354 second=328 amount=-1 +kerning first=260 second=361 amount=-1 +kerning first=296 second=361 amount=-1 +kerning first=311 second=245 amount=-1 +kerning first=374 second=332 amount=-1 +kerning first=8250 second=380 amount=-1 +kerning first=267 second=46 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=266 second=332 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=376 second=268 amount=-1 +kerning first=264 second=82 amount=-1 +kerning first=1059 second=1073 amount=-1 +kerning first=221 second=256 amount=-2 +kerning first=352 second=76 amount=-1 +kerning first=268 second=268 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=288 second=291 amount=-1 +kerning first=106 second=119 amount=-1 +kerning first=252 second=291 amount=-1 +kerning first=1046 second=1038 amount=-1 +kerning first=262 second=210 amount=-1 +kerning first=283 second=119 amount=-1 +kerning first=213 second=256 amount=-1 +kerning first=335 second=314 amount=-1 +kerning first=266 second=204 amount=-1 +kerning first=84 second=279 amount=-1 +kerning first=199 second=198 amount=-1 +kerning first=263 second=314 amount=-1 +kerning first=368 second=291 amount=-1 +kerning first=209 second=250 amount=-1 +kerning first=260 second=291 amount=-1 +kerning first=8216 second=195 amount=-2 +kerning first=119 second=291 amount=-1 +kerning first=83 second=291 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=268 second=73 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=89 second=381 amount=-1 +kerning first=317 second=84 amount=-1 +kerning first=1059 second=1095 amount=-1 +kerning first=311 second=337 amount=-1 +kerning first=356 second=268 amount=-1 +kerning first=333 second=44 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=350 second=66 amount=-1 +kerning first=66 second=108 amount=-1 +kerning first=374 second=199 amount=-1 +kerning first=366 second=261 amount=-1 +kerning first=67 second=336 amount=-1 +kerning first=330 second=261 amount=-1 +kerning first=84 second=284 amount=-1 +kerning first=8249 second=356 amount=-1 +kerning first=317 second=89 amount=-1 +kerning first=205 second=367 amount=-1 +kerning first=243 second=108 amount=-1 +kerning first=252 second=121 amount=-1 +kerning first=331 second=8249 amount=-1 +kerning first=66 second=220 amount=-1 +kerning first=356 second=263 amount=-1 +kerning first=346 second=344 amount=-1 +kerning first=264 second=302 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=295 second=8249 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=284 second=194 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=266 second=327 amount=-1 +kerning first=198 second=289 amount=-1 +kerning first=234 second=289 amount=-1 +kerning first=118 second=335 amount=-1 +kerning first=1040 second=1038 amount=-1 +kerning first=220 second=45 amount=-1 +kerning first=290 second=260 amount=-1 +kerning first=256 second=45 amount=-1 +kerning first=346 second=65 amount=-1 +kerning first=304 second=229 amount=-1 +kerning first=362 second=260 amount=-1 +kerning first=328 second=45 amount=-1 +kerning first=82 second=254 amount=-1 +kerning first=86 second=346 amount=-1 +kerning first=121 second=103 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=121 second=111 amount=-1 +kerning first=260 second=370 amount=-1 +kerning first=221 second=194 amount=-2 +kerning first=376 second=229 amount=-1 +kerning first=8217 second=234 amount=-1 +kerning first=364 second=45 amount=-1 +kerning first=254 second=255 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=260 second=212 amount=-1 +kerning first=253 second=225 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=8217 second=283 amount=-1 +kerning first=344 second=240 amount=-1 +kerning first=8216 second=246 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=287 second=46 amount=-1 +kerning first=283 second=44 amount=-1 +kerning first=103 second=257 amount=-1 +kerning first=8216 second=101 amount=-1 +kerning first=8220 second=101 amount=-1 +kerning first=1059 second=1090 amount=-1 +kerning first=1038 second=1057 amount=-1 +kerning first=334 second=193 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=262 second=193 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=370 second=193 amount=-1 +kerning first=87 second=346 amount=-1 +kerning first=235 second=375 amount=-1 +kerning first=307 second=375 amount=-1 +kerning first=367 second=314 amount=-1 +kerning first=356 second=224 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=240 second=46 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=194 second=289 amount=-1 +kerning first=82 second=98 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=103 second=259 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=1043 second=1051 amount=-1 +kerning first=263 second=225 amount=-1 +kerning first=118 second=259 amount=-1 +kerning first=287 second=316 amount=-1 +kerning first=251 second=316 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=8250 second=221 amount=-1 +kerning first=262 second=81 amount=-1 +kerning first=379 second=287 amount=-1 +kerning first=264 second=346 amount=-1 +kerning first=379 second=375 amount=-1 +kerning first=199 second=287 amount=-1 +kerning first=192 second=346 amount=-1 +kerning first=235 second=287 amount=-1 +kerning first=313 second=122 amount=-1 +kerning first=197 second=8217 amount=-1 +kerning first=8250 second=65 amount=-1 +kerning first=346 second=305 amount=-1 +kerning first=375 second=271 amount=-1 +kerning first=303 second=271 amount=-1 +kerning first=221 second=352 amount=-1 +kerning first=354 second=194 amount=-2 +kerning first=88 second=81 amount=-1 +kerning first=304 second=117 amount=-1 +kerning first=379 second=121 amount=-1 +kerning first=119 second=335 amount=-1 +kerning first=196 second=117 amount=-1 +kerning first=376 second=269 amount=-1 +kerning first=307 second=121 amount=-1 +kerning first=366 second=350 amount=-1 +kerning first=65 second=115 amount=-1 +kerning first=86 second=353 amount=-1 +kerning first=351 second=103 amount=-1 +kerning first=8217 second=83 amount=-1 +kerning first=87 second=253 amount=-1 +kerning first=193 second=374 amount=-2 +kerning first=45 second=350 amount=-1 +kerning first=228 second=253 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=121 second=277 amount=-1 +kerning first=258 second=350 amount=-1 +kerning first=272 second=196 amount=-1 +kerning first=258 second=266 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=193 second=85 amount=-1 +kerning first=364 second=289 amount=-1 +kerning first=298 second=228 amount=-1 +kerning first=85 second=228 amount=-1 +kerning first=121 second=228 amount=-1 +kerning first=379 second=361 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=107 second=263 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=344 second=8221 amount=-1 +kerning first=8220 second=257 amount=-1 +kerning first=376 second=103 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=218 second=171 amount=-1 +kerning first=304 second=103 amount=-1 +kerning first=196 second=103 amount=-1 +kerning first=290 second=171 amount=-1 +kerning first=87 second=381 amount=-1 +kerning first=232 second=103 amount=-1 +kerning first=120 second=249 amount=-1 +kerning first=362 second=171 amount=-1 +kerning first=236 second=119 amount=-1 +kerning first=313 second=362 amount=-1 +kerning first=326 second=171 amount=-1 +kerning first=344 second=119 amount=-1 +kerning first=266 second=256 amount=-1 +kerning first=252 second=118 amount=-1 +kerning first=103 second=380 amount=-1 +kerning first=324 second=118 amount=-1 +kerning first=268 second=313 amount=-1 +kerning first=121 second=233 amount=-1 +kerning first=192 second=218 amount=-1 +kerning first=111 second=314 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=255 second=248 amount=-1 +kerning first=258 second=217 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=262 second=67 amount=-1 +kerning first=296 second=230 amount=-1 +kerning first=87 second=267 amount=-1 +kerning first=376 second=264 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=268 second=264 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=120 second=363 amount=-1 +kerning first=252 second=8220 amount=-1 +kerning first=195 second=364 amount=-1 +kerning first=313 second=217 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=356 second=347 amount=-1 +kerning first=8216 second=339 amount=-1 +kerning first=1042 second=1059 amount=-1 +kerning first=260 second=249 amount=-1 +kerning first=264 second=209 amount=-1 +kerning first=258 second=8221 amount=-1 +kerning first=117 second=8221 amount=-1 +kerning first=291 second=257 amount=-1 +kerning first=375 second=232 amount=-1 +kerning first=327 second=257 amount=-1 +kerning first=219 second=257 amount=-1 +kerning first=303 second=232 amount=-1 +kerning first=255 second=257 amount=-1 +kerning first=241 second=118 amount=-1 +kerning first=89 second=83 amount=-1 +kerning first=277 second=118 amount=-1 +kerning first=364 second=192 amount=-1 +kerning first=313 second=118 amount=-1 +kerning first=194 second=83 amount=-1 +kerning first=1046 second=1108 amount=-1 +kerning first=220 second=197 amount=-1 +kerning first=1086 second=1076 amount=-1 +kerning first=266 second=83 amount=-1 +kerning first=266 second=78 amount=-1 +kerning first=87 second=262 amount=-1 +kerning first=220 second=192 amount=-1 +kerning first=284 second=8249 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=364 second=197 amount=-1 +kerning first=356 second=8249 amount=-1 +kerning first=264 second=262 amount=-1 +kerning first=196 second=370 amount=-1 +kerning first=327 second=230 amount=-1 +kerning first=83 second=194 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=8217 second=248 amount=-1 +kerning first=362 second=103 amount=-1 +kerning first=290 second=103 amount=-1 +kerning first=107 second=8249 amount=-1 +kerning first=332 second=256 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=264 second=317 amount=-1 +kerning first=368 second=256 amount=-1 +kerning first=321 second=291 amount=-1 +kerning first=86 second=65 amount=-2 +kerning first=354 second=198 amount=-2 +kerning first=352 second=217 amount=-1 +kerning first=249 second=291 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=72 second=291 amount=-1 +kerning first=83 second=256 amount=-1 +kerning first=344 second=283 amount=-1 +kerning first=82 second=107 amount=-1 +kerning first=344 second=279 amount=-1 +kerning first=356 second=67 amount=-1 +kerning first=1056 second=1040 amount=-1 +kerning first=304 second=259 amount=-1 +kerning first=272 second=44 amount=-1 +kerning first=262 second=72 amount=-1 +kerning first=267 second=227 amount=-1 +kerning first=231 second=227 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=256 second=84 amount=-2 +kerning first=76 second=381 amount=-1 +kerning first=8217 second=113 amount=-1 +kerning first=199 second=212 amount=-1 +kerning first=269 second=261 amount=-1 +kerning first=311 second=171 amount=-1 +kerning first=232 second=108 amount=-1 +kerning first=366 second=226 amount=-1 +kerning first=330 second=226 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=302 second=367 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=66 second=229 amount=-1 +kerning first=291 second=122 amount=-1 +kerning first=1043 second=1083 amount=-1 +kerning first=255 second=122 amount=-1 +kerning first=327 second=365 amount=-1 +kerning first=219 second=122 amount=-1 +kerning first=8217 second=195 amount=-2 +kerning first=284 second=356 amount=-1 +kerning first=99 second=237 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=73 second=97 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=71 second=356 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=268 second=194 amount=-1 +kerning first=119 second=103 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=351 second=255 amount=-1 +kerning first=67 second=286 amount=-1 +kerning first=310 second=266 amount=-1 +kerning first=1059 second=1086 amount=-1 +kerning first=315 second=255 amount=-1 +kerning first=89 second=243 amount=-1 +kerning first=344 second=354 amount=-1 +kerning first=243 second=255 amount=-1 +kerning first=296 second=287 amount=-1 +kerning first=375 second=275 amount=-1 +kerning first=84 second=240 amount=-1 +kerning first=66 second=255 amount=-1 +kerning first=86 second=109 amount=-1 +kerning first=119 second=287 amount=-1 +kerning first=196 second=112 amount=-1 +kerning first=8218 second=364 amount=-1 +kerning first=374 second=243 amount=-1 +kerning first=83 second=287 amount=-1 +kerning first=284 second=171 amount=-1 +kerning first=117 second=8217 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=268 second=352 amount=-1 +kerning first=8250 second=274 amount=-1 +kerning first=368 second=287 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=107 second=111 amount=-1 +kerning first=377 second=380 amount=-1 +kerning first=374 second=248 amount=-1 +kerning first=354 second=260 amount=-2 +kerning first=262 second=76 amount=-1 +kerning first=356 second=111 amount=-1 +kerning first=352 second=327 amount=-1 +kerning first=317 second=382 amount=-1 +kerning first=221 second=264 amount=-1 +kerning first=221 second=269 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=89 second=248 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=275 second=253 amount=-1 +kerning first=347 second=253 amount=-1 +kerning first=354 second=245 amount=-1 +kerning first=262 second=202 amount=-1 +kerning first=65 second=364 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=1059 second=1080 amount=-1 +kerning first=209 second=289 amount=-1 +kerning first=84 second=288 amount=-1 +kerning first=67 second=213 amount=-1 +kerning first=353 second=289 amount=-1 +kerning first=281 second=289 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=317 second=289 amount=-1 +kerning first=352 second=87 amount=-1 +kerning first=323 second=369 amount=-1 +kerning first=67 second=332 amount=-1 +kerning first=8222 second=366 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=77 second=251 amount=-1 +kerning first=374 second=122 amount=-1 +kerning first=196 second=266 amount=-1 +kerning first=266 second=122 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=196 second=352 amount=-1 +kerning first=356 second=259 amount=-1 +kerning first=89 second=122 amount=-1 +kerning first=224 second=375 amount=-1 +kerning first=260 second=375 amount=-1 +kerning first=256 second=89 amount=-2 +kerning first=225 second=119 amount=-1 +kerning first=356 second=210 amount=-1 +kerning first=261 second=119 amount=-1 +kerning first=350 second=75 amount=-1 +kerning first=274 second=291 amount=-1 +kerning first=120 second=119 amount=-1 +kerning first=202 second=291 amount=-1 +kerning first=197 second=217 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=84 second=337 amount=-1 +kerning first=199 second=256 amount=-1 +kerning first=321 second=379 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=277 second=314 amount=-1 +kerning first=8217 second=243 amount=-1 +kerning first=277 second=289 amount=-1 +kerning first=356 second=351 amount=-1 +kerning first=256 second=362 amount=-1 +kerning first=354 second=121 amount=-1 +kerning first=8220 second=261 amount=-1 +kerning first=246 second=121 amount=-1 +kerning first=87 second=275 amount=-1 +kerning first=277 second=318 amount=-1 +kerning first=73 second=363 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=321 second=221 amount=-1 +kerning first=89 second=199 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=287 second=228 amount=-1 +kerning first=84 second=196 amount=-2 +kerning first=194 second=199 amount=-1 +kerning first=323 second=228 amount=-1 +kerning first=266 second=199 amount=-1 +kerning first=346 second=296 amount=-1 +kerning first=264 second=214 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=253 second=267 amount=-1 +kerning first=8217 second=74 amount=-1 +kerning first=66 second=230 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=321 second=8221 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=83 second=86 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=344 second=235 amount=-1 +kerning first=219 second=83 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=315 second=103 amount=-1 +kerning first=344 second=284 amount=-1 +kerning first=1107 second=1083 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=1054 second=1051 amount=-1 +kerning first=279 second=103 amount=-1 +kerning first=194 second=362 amount=-1 +kerning first=187 second=87 amount=-1 +kerning first=207 second=103 amount=-1 +kerning first=298 second=365 amount=-1 +kerning first=381 second=382 amount=-1 +kerning first=86 second=100 amount=-1 +kerning first=193 second=103 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=121 second=246 amount=-1 +kerning first=303 second=106 amount=1 +kerning first=45 second=121 amount=-1 +kerning first=371 second=100 amount=-1 +kerning first=1045 second=1090 amount=-1 +kerning first=346 second=78 amount=-1 +kerning first=216 second=65 amount=-1 +kerning first=86 second=234 amount=-1 +kerning first=376 second=260 amount=-2 +kerning first=75 second=199 amount=-1 +kerning first=374 second=118 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=376 second=121 amount=-1 +kerning first=1036 second=1058 amount=-1 +kerning first=304 second=361 amount=-1 +kerning first=84 second=231 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=379 second=117 amount=-1 +kerning first=66 second=107 amount=-1 +kerning first=303 second=267 amount=-1 +kerning first=193 second=264 amount=-1 +kerning first=375 second=267 amount=-1 +kerning first=197 second=8221 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=374 second=380 amount=-1 +kerning first=230 second=118 amount=-1 +kerning first=287 second=44 amount=-1 +kerning first=248 second=316 amount=-1 +kerning first=260 second=216 amount=-1 +kerning first=89 second=118 amount=-1 +kerning first=194 second=118 amount=-1 +kerning first=371 second=234 amount=-1 +kerning first=352 second=77 amount=-1 +kerning first=84 second=212 amount=-1 +kerning first=326 second=8217 amount=-1 +kerning first=195 second=346 amount=-1 +kerning first=1050 second=1089 amount=-1 +kerning first=350 second=201 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=268 second=282 amount=-1 +kerning first=8250 second=296 amount=-1 +kerning first=344 second=266 amount=-1 +kerning first=288 second=87 amount=-1 +kerning first=89 second=380 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=1069 second=1040 amount=-1 +kerning first=344 second=231 amount=-1 +kerning first=266 second=380 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=1038 second=1083 amount=-1 +kerning first=1056 second=1103 amount=-1 +kerning first=298 second=224 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=8222 second=374 amount=-2 +kerning first=195 second=84 amount=-2 +kerning first=85 second=224 amount=-1 +kerning first=121 second=224 amount=-1 +kerning first=288 second=171 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=352 second=204 amount=-1 +kerning first=262 second=325 amount=-1 +kerning first=370 second=224 amount=-1 +kerning first=99 second=259 amount=-1 +kerning first=258 second=363 amount=-1 +kerning first=354 second=291 amount=-1 +kerning first=344 second=244 amount=-1 +kerning first=330 second=363 amount=-1 +kerning first=282 second=291 amount=-1 +kerning first=8217 second=230 amount=-1 +kerning first=105 second=291 amount=-1 +kerning first=69 second=291 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=256 second=210 amount=-1 +kerning first=253 second=337 amount=-1 +kerning first=275 second=44 amount=-1 +kerning first=262 second=268 amount=-1 +kerning first=72 second=287 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=98 second=44 amount=-1 +kerning first=356 second=338 amount=-1 +kerning first=86 second=256 amount=-2 +kerning first=221 second=198 amount=-2 +kerning first=80 second=198 amount=-1 +kerning first=260 second=366 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=66 second=112 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=75 second=117 amount=-1 +kerning first=90 second=361 amount=-1 +kerning first=321 second=287 amount=-1 +kerning first=327 second=367 amount=-1 +kerning first=249 second=287 amount=-1 +kerning first=221 second=326 amount=-1 +kerning first=264 second=66 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=331 second=8220 amount=-1 +kerning first=78 second=367 amount=-1 +kerning first=193 second=286 amount=-1 +kerning first=89 second=74 amount=-1 +kerning first=350 second=302 amount=-1 +kerning first=248 second=121 amount=-1 +kerning first=118 second=228 amount=-1 +kerning first=90 second=249 amount=-1 +kerning first=288 second=221 amount=-1 +kerning first=365 second=108 amount=-1 +kerning first=374 second=74 amount=-1 +kerning first=344 second=350 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=375 second=245 amount=-1 +kerning first=354 second=269 amount=-1 +kerning first=103 second=261 amount=-1 +kerning first=303 second=245 amount=-1 +kerning first=354 second=229 amount=-1 +kerning first=256 second=289 amount=-1 +kerning first=264 second=205 amount=-1 +kerning first=66 second=251 amount=-1 +kerning first=256 second=115 amount=-1 +kerning first=66 second=211 amount=-1 +kerning first=217 second=97 amount=-1 +kerning first=378 second=45 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=289 second=97 amount=-1 +kerning first=262 second=290 amount=-1 +kerning first=207 second=251 amount=-1 +kerning first=253 second=97 amount=-1 +kerning first=78 second=261 amount=-1 +kerning first=327 second=261 amount=-1 +kerning first=291 second=261 amount=-1 +kerning first=255 second=261 amount=-1 +kerning first=253 second=271 amount=-1 +kerning first=219 second=261 amount=-1 +kerning first=332 second=194 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=368 second=194 amount=-1 +kerning first=240 second=255 amount=-1 +kerning first=99 second=255 amount=-1 +kerning first=269 second=226 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=364 second=198 amount=-1 +kerning first=250 second=119 amount=-1 +kerning first=109 second=119 amount=-1 +kerning first=336 second=44 amount=-1 +kerning first=230 second=314 amount=-1 +kerning first=1036 second=1095 amount=-1 +kerning first=1062 second=1095 amount=-1 +kerning first=8250 second=362 amount=-1 +kerning first=266 second=274 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=362 second=46 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=317 second=366 amount=-1 +kerning first=220 second=289 amount=-1 +kerning first=97 second=8220 amount=-1 +kerning first=217 second=192 amount=-1 +kerning first=231 second=44 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=8250 second=256 amount=-1 +kerning first=376 second=234 amount=-1 +kerning first=366 second=8249 amount=-1 +kerning first=258 second=347 amount=-1 +kerning first=302 second=230 amount=-1 +kerning first=197 second=354 amount=-2 +kerning first=86 second=122 amount=-1 +kerning first=197 second=213 amount=-1 +kerning first=8218 second=84 amount=-2 +kerning first=298 second=369 amount=-1 +kerning first=317 second=364 amount=-1 +kerning first=76 second=377 amount=-1 +kerning first=290 second=46 amount=-1 +kerning first=284 second=374 amount=-1 +kerning first=374 second=230 amount=-1 +kerning first=1059 second=1077 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=249 second=375 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=321 second=375 amount=-1 +kerning first=65 second=346 amount=-1 +kerning first=84 second=119 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=108 second=375 amount=-1 +kerning first=313 second=87 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=218 second=103 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=1058 second=1093 amount=-1 +kerning first=266 second=336 amount=-1 +kerning first=214 second=196 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=286 second=196 amount=-1 +kerning first=354 second=335 amount=-1 +kerning first=1059 second=1099 amount=-1 +kerning first=304 second=251 amount=-1 +kerning first=315 second=374 amount=-1 +kerning first=250 second=253 amount=-1 +kerning first=171 second=374 amount=-1 +kerning first=221 second=260 amount=-2 +kerning first=66 second=374 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=365 second=121 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=257 second=121 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=221 second=121 amount=-1 +kerning first=263 second=318 amount=-1 +kerning first=335 second=318 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=243 second=121 amount=-1 +kerning first=82 second=316 amount=-1 +kerning first=8216 second=233 amount=-1 +kerning first=66 second=121 amount=-1 +kerning first=83 second=203 amount=-1 +kerning first=356 second=228 amount=-1 +kerning first=223 second=316 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=367 second=316 amount=-1 +kerning first=264 second=75 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=74 second=171 amount=-1 +kerning first=354 second=326 amount=-1 +kerning first=263 second=375 amount=-1 +kerning first=350 second=77 amount=-1 +kerning first=335 second=375 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=86 second=375 amount=-1 +kerning first=78 second=228 amount=-1 +kerning first=221 second=99 amount=-1 +kerning first=227 second=375 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=1058 second=1040 amount=-1 +kerning first=194 second=217 amount=-1 +kerning first=323 second=365 amount=-1 +kerning first=352 second=270 amount=-1 +kerning first=120 second=230 amount=-1 +kerning first=258 second=250 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=84 second=110 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=248 second=120 amount=-1 +kerning first=314 second=106 amount=-1 +kerning first=82 second=263 amount=-1 +kerning first=262 second=334 amount=-1 +kerning first=264 second=315 amount=-1 +kerning first=196 second=220 amount=-1 +kerning first=236 second=253 amount=-1 +kerning first=344 second=253 amount=-1 +kerning first=287 second=224 amount=-1 +kerning first=323 second=224 amount=-1 +kerning first=258 second=354 amount=-2 +kerning first=287 second=171 amount=-1 +kerning first=121 second=281 amount=-1 +kerning first=255 second=283 amount=-1 +kerning first=363 second=118 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=376 second=339 amount=-1 +kerning first=204 second=365 amount=-1 +kerning first=86 second=119 amount=-1 +kerning first=356 second=382 amount=-1 +kerning first=296 second=117 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=315 second=121 amount=-1 +kerning first=279 second=121 amount=-1 +kerning first=375 second=333 amount=-1 +kerning first=88 second=255 amount=-1 +kerning first=346 second=287 amount=-1 +kerning first=199 second=216 amount=-1 +kerning first=274 second=287 amount=-1 +kerning first=202 second=287 amount=-1 +kerning first=84 second=79 amount=-1 +kerning first=267 second=230 amount=-1 +kerning first=8217 second=65 amount=-2 +kerning first=82 second=338 amount=-1 +kerning first=287 second=378 amount=-1 +kerning first=192 second=368 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=219 second=74 amount=-1 +kerning first=84 second=350 amount=-1 +kerning first=350 second=192 amount=-1 +kerning first=344 second=275 amount=-1 +kerning first=289 second=347 amount=-1 +kerning first=378 second=8249 amount=-1 +kerning first=354 second=379 amount=-1 +kerning first=217 second=227 amount=-1 +kerning first=371 second=113 amount=-1 +kerning first=376 second=198 amount=-2 +kerning first=8250 second=69 amount=-1 +kerning first=86 second=113 amount=-1 +kerning first=199 second=71 amount=-1 +kerning first=86 second=347 amount=-1 +kerning first=65 second=84 amount=-2 +kerning first=379 second=291 amount=-1 +kerning first=315 second=90 amount=-1 +kerning first=307 second=291 amount=-1 +kerning first=66 second=90 amount=-1 +kerning first=235 second=291 amount=-1 +kerning first=199 second=291 amount=-1 +kerning first=86 second=199 amount=-1 +kerning first=66 second=361 amount=-1 +kerning first=321 second=366 amount=-1 +kerning first=8222 second=86 amount=-2 +kerning first=199 second=73 amount=-1 +kerning first=86 second=287 amount=-1 +kerning first=87 second=337 amount=-1 +kerning first=325 second=227 amount=-1 +kerning first=258 second=332 amount=-1 +kerning first=346 second=256 amount=-1 +kerning first=268 second=198 amount=-1 +kerning first=84 second=275 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=199 second=194 amount=-1 +kerning first=311 second=240 amount=-1 +kerning first=275 second=119 amount=-1 +kerning first=269 second=105 amount=-1 +kerning first=8250 second=310 amount=-1 +kerning first=8216 second=103 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=268 second=103 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=1054 second=1038 amount=-1 +kerning first=347 second=119 amount=-1 +kerning first=290 second=374 amount=-1 +kerning first=310 second=212 amount=-1 +kerning first=221 second=281 amount=-1 +kerning first=363 second=314 amount=-1 +kerning first=291 second=314 amount=-1 +kerning first=246 second=108 amount=-1 +kerning first=195 second=115 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=195 second=289 amount=-1 +kerning first=249 second=8220 amount=-1 +kerning first=339 second=289 amount=-1 +kerning first=321 second=8220 amount=-1 +kerning first=233 second=44 amount=-1 +kerning first=377 second=367 amount=-1 +kerning first=267 second=289 amount=-1 +kerning first=255 second=314 amount=-1 +kerning first=8250 second=205 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=366 second=257 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=8250 second=287 amount=-1 +kerning first=330 second=257 amount=-1 +kerning first=344 second=101 amount=-1 +kerning first=221 second=229 amount=-1 +kerning first=86 second=243 amount=-1 +kerning first=256 second=220 amount=-1 +kerning first=374 second=287 amount=-1 +kerning first=375 second=115 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=1038 second=1102 amount=-1 +kerning first=302 second=261 amount=-1 +kerning first=374 second=109 amount=-1 +kerning first=46 second=45 amount=-1 +kerning first=1024 second=1059 amount=-1 +kerning first=374 second=261 amount=-1 +kerning first=197 second=83 amount=-1 +kerning first=229 second=255 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=103 second=226 amount=-1 +kerning first=331 second=45 amount=-1 +kerning first=217 second=289 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=119 second=225 amount=-1 +kerning first=291 second=380 amount=-1 +kerning first=255 second=380 amount=-1 +kerning first=8220 second=269 amount=-1 +kerning first=1027 second=1092 amount=-1 +kerning first=296 second=225 amount=-1 +kerning first=120 second=253 amount=-1 +kerning first=368 second=225 amount=-1 +kerning first=66 second=252 amount=-1 +kerning first=84 second=253 amount=-1 +kerning first=315 second=220 amount=-1 +kerning first=289 second=227 amount=-1 +kerning first=225 second=253 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=243 second=46 amount=-1 +kerning first=374 second=283 amount=-1 +kerning first=279 second=46 amount=-1 +kerning first=333 second=253 amount=-1 +kerning first=371 second=243 amount=-1 +kerning first=118 second=382 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=266 second=65 amount=-1 +kerning first=374 second=65 amount=-2 +kerning first=241 second=8217 amount=-1 +kerning first=315 second=381 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=89 second=283 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=252 second=318 amount=-1 +kerning first=260 second=287 amount=-1 +kerning first=264 second=264 amount=-1 +kerning first=375 second=289 amount=-1 +kerning first=370 second=259 amount=-1 +kerning first=268 second=317 amount=-1 +kerning first=298 second=259 amount=-1 +kerning first=339 second=311 amount=-1 +kerning first=8220 second=194 amount=-2 +kerning first=66 second=46 amount=-1 +kerning first=381 second=369 amount=-1 +kerning first=8216 second=277 amount=-1 +kerning first=344 second=8217 amount=-1 +kerning first=376 second=99 amount=-1 +kerning first=258 second=213 amount=-1 +kerning first=8250 second=325 amount=-1 +kerning first=362 second=352 amount=-1 +kerning first=97 second=375 amount=-1 +kerning first=121 second=259 amount=-1 +kerning first=85 second=259 amount=-1 +kerning first=218 second=352 amount=-1 +kerning first=194 second=87 amount=-2 +kerning first=1050 second=1063 amount=-1 +kerning first=1047 second=1093 amount=-1 +kerning first=289 second=230 amount=-1 +kerning first=325 second=230 amount=-1 +kerning first=106 second=253 amount=-1 +kerning first=217 second=230 amount=-1 +kerning first=253 second=230 amount=-1 +kerning first=283 second=253 amount=-1 +kerning first=346 second=87 amount=-1 +kerning first=298 second=363 amount=-1 +kerning first=366 second=122 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=82 second=101 amount=-1 +kerning first=84 second=81 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=8217 second=197 amount=-2 +kerning first=321 second=219 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=346 second=317 amount=-1 +kerning first=1043 second=1103 amount=-1 +kerning first=86 second=277 amount=-1 +kerning first=209 second=287 amount=-1 +kerning first=316 second=121 amount=-1 +kerning first=344 second=121 amount=-1 +kerning first=219 second=196 amount=-1 +kerning first=236 second=121 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=371 second=277 amount=-1 +kerning first=311 second=231 amount=-1 +kerning first=217 second=171 amount=-1 +kerning first=353 second=287 amount=-1 +kerning first=289 second=171 amount=-1 +kerning first=253 second=171 amount=-1 +kerning first=281 second=287 amount=-1 +kerning first=120 second=252 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=317 second=287 amount=-1 +kerning first=325 second=171 amount=-1 +kerning first=111 second=375 amount=-1 +kerning first=366 second=352 amount=-1 +kerning first=46 second=8217 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=264 second=270 amount=-1 +kerning first=87 second=99 amount=-1 +kerning first=8222 second=89 amount=-2 +kerning first=259 second=8217 amount=-1 +kerning first=258 second=352 amount=-1 +kerning first=331 second=8217 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=75 second=375 amount=-1 +kerning first=86 second=286 amount=-1 +kerning first=267 second=229 amount=-1 +kerning first=367 second=8217 amount=-1 +kerning first=231 second=229 amount=-1 +kerning first=370 second=74 amount=-1 +kerning first=344 second=213 amount=-1 +kerning first=375 second=229 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=287 second=382 amount=-1 +kerning first=377 second=103 amount=-1 +kerning first=266 second=315 amount=-1 +kerning first=258 second=214 amount=-1 +kerning first=233 second=103 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=356 second=246 amount=-1 +kerning first=197 second=103 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=107 second=246 amount=-1 +kerning first=310 second=199 amount=-1 +kerning first=8250 second=356 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=374 second=337 amount=-1 +kerning first=77 second=361 amount=-1 +kerning first=121 second=99 amount=-1 +kerning first=195 second=117 amount=-1 +kerning first=8217 second=335 amount=-1 +kerning first=117 second=255 amount=-1 +kerning first=90 second=117 amount=-1 +kerning first=361 second=8220 amount=-1 +kerning first=252 second=316 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=8216 second=224 amount=-1 +kerning first=87 second=119 amount=-1 +kerning first=192 second=8221 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=76 second=118 amount=-1 +kerning first=379 second=378 amount=-1 +kerning first=192 second=119 amount=-1 +kerning first=376 second=281 amount=-1 +kerning first=268 second=202 amount=-1 +kerning first=228 second=119 amount=-1 +kerning first=344 second=233 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=375 second=347 amount=-1 +kerning first=8216 second=242 amount=-1 +kerning first=244 second=314 amount=-1 +kerning first=315 second=380 amount=-1 +kerning first=194 second=85 amount=-1 +kerning first=103 second=314 amount=-1 +kerning first=195 second=347 amount=-1 +kerning first=288 second=86 amount=-1 +kerning first=8217 second=256 amount=-2 +kerning first=221 second=379 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=8249 second=221 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=354 second=378 amount=-1 +kerning first=84 second=101 amount=-1 +kerning first=374 second=216 amount=-1 +kerning first=325 second=250 amount=-1 +kerning first=314 second=8220 amount=-1 +kerning first=65 second=8220 amount=-1 +kerning first=326 second=119 amount=-1 +kerning first=84 second=331 amount=-1 +kerning first=272 second=193 amount=-1 +kerning first=352 second=274 amount=-1 +kerning first=310 second=216 amount=-1 +kerning first=219 second=197 amount=-1 +kerning first=8220 second=195 amount=-2 +kerning first=376 second=90 amount=-1 +kerning first=286 second=291 amount=-1 +kerning first=1061 second=1054 amount=-1 +kerning first=250 second=291 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=321 second=377 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=45 second=83 amount=-1 +kerning first=73 second=291 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=89 second=197 amount=-2 +kerning first=258 second=121 amount=-1 +kerning first=258 second=83 amount=-1 +kerning first=266 second=216 amount=-1 +kerning first=266 second=197 amount=-1 +kerning first=8217 second=257 amount=-1 +kerning first=376 second=110 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=366 second=83 amount=-1 +kerning first=374 second=197 amount=-2 +kerning first=119 second=8249 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=8250 second=87 amount=-1 +kerning first=356 second=187 amount=-1 +kerning first=260 second=8249 amount=-1 +kerning first=354 second=240 amount=-1 +kerning first=368 second=8249 amount=-1 +kerning first=256 second=268 amount=-1 +kerning first=83 second=68 amount=-1 +kerning first=346 second=278 amount=-1 +kerning first=8220 second=333 amount=-1 +kerning first=86 second=198 amount=-2 +kerning first=83 second=45 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=235 second=108 amount=-1 +kerning first=249 second=318 amount=-1 +kerning first=222 second=46 amount=-1 +kerning first=209 second=228 amount=-1 +kerning first=219 second=65 amount=-1 +kerning first=195 second=367 amount=-1 +kerning first=268 second=193 amount=-1 +kerning first=351 second=120 amount=-1 +kerning first=8220 second=235 amount=-1 +kerning first=90 second=367 amount=-1 +kerning first=298 second=361 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=221 second=339 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=1061 second=1073 amount=-1 +kerning first=8222 second=220 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=262 second=304 amount=-1 +kerning first=354 second=109 amount=-1 +kerning first=89 second=45 amount=-1 +kerning first=70 second=352 amount=-1 +kerning first=255 second=275 amount=-1 +kerning first=8250 second=195 amount=-1 +kerning first=374 second=45 amount=-1 +kerning first=8216 second=263 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=8216 second=244 amount=-1 +kerning first=70 second=194 amount=-1 +kerning first=376 second=242 amount=-1 +kerning first=316 second=255 amount=-1 +kerning first=370 second=225 amount=-1 +kerning first=244 second=255 amount=-1 +kerning first=298 second=225 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=376 second=286 amount=-1 +kerning first=221 second=110 amount=-1 +kerning first=344 second=81 amount=-1 +kerning first=231 second=97 amount=-1 +kerning first=267 second=97 amount=-1 +kerning first=269 second=44 amount=-1 +kerning first=375 second=97 amount=-1 +kerning first=87 second=79 amount=-1 +kerning first=288 second=65 amount=-1 +kerning first=350 second=84 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=197 second=252 amount=-1 +kerning first=264 second=79 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=277 second=46 amount=-1 +kerning first=65 second=289 amount=-1 +kerning first=8222 second=378 amount=-1 +kerning first=278 second=289 amount=-1 +kerning first=314 second=289 amount=-1 +kerning first=206 second=289 amount=-1 +kerning first=1059 second=1088 amount=-1 +kerning first=85 second=225 amount=-1 +kerning first=350 second=289 amount=-1 +kerning first=65 second=368 amount=-1 +kerning first=303 second=248 amount=-1 +kerning first=354 second=241 amount=-1 +kerning first=263 second=230 amount=-1 +kerning first=1059 second=1108 amount=-1 +kerning first=197 second=352 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=1059 second=1084 amount=-1 +kerning first=198 second=287 amount=-1 +kerning first=262 second=206 amount=-1 +kerning first=234 second=287 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=195 second=374 amount=-2 +kerning first=313 second=86 amount=-1 +kerning first=8218 second=118 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=350 second=368 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=268 second=380 amount=-1 +kerning first=230 second=46 amount=-1 +kerning first=370 second=256 amount=-1 +kerning first=103 second=45 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=8216 second=273 amount=-1 +kerning first=98 second=253 amount=-1 +kerning first=268 second=70 amount=-1 +kerning first=376 second=380 amount=-1 +kerning first=303 second=269 amount=-1 +kerning first=375 second=269 amount=-1 +kerning first=255 second=353 amount=-1 +kerning first=229 second=121 amount=-1 +kerning first=344 second=311 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=313 second=375 amount=-1 +kerning first=364 second=346 amount=-1 +kerning first=87 second=289 amount=-1 +kerning first=256 second=346 amount=-1 +kerning first=277 second=375 amount=-1 +kerning first=264 second=289 amount=-1 +kerning first=346 second=219 amount=-1 +kerning first=192 second=289 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=375 second=248 amount=-1 +kerning first=73 second=369 amount=-1 +kerning first=1059 second=1087 amount=-1 +kerning first=344 second=370 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=356 second=289 amount=-1 +kerning first=67 second=196 amount=-1 +kerning first=8216 second=243 amount=-1 +kerning first=344 second=220 amount=-1 +kerning first=344 second=332 amount=-1 +kerning first=192 second=171 amount=-1 +kerning first=256 second=117 amount=-1 +kerning first=264 second=171 amount=-1 +kerning first=87 second=231 amount=-1 +kerning first=228 second=8220 amount=-1 +kerning first=106 second=121 amount=-1 +kerning first=352 second=196 amount=-1 +kerning first=208 second=196 amount=-1 +kerning first=76 second=119 amount=-1 +kerning first=311 second=100 amount=-1 +kerning first=84 second=233 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=196 second=221 amount=-2 +kerning first=8250 second=219 amount=-1 +kerning first=253 second=99 amount=-1 +kerning first=269 second=314 amount=-1 +kerning first=233 second=314 amount=-1 +kerning first=84 second=213 amount=-1 +kerning first=262 second=382 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=258 second=253 amount=-1 +kerning first=333 second=120 amount=-1 +kerning first=266 second=334 amount=-1 +kerning first=310 second=8249 amount=-1 +kerning first=382 second=8249 amount=-1 +kerning first=346 second=291 amount=-1 +kerning first=89 second=334 amount=-1 +kerning first=346 second=8249 amount=-1 +kerning first=262 second=344 amount=-1 +kerning first=1090 second=1083 amount=-1 +kerning first=323 second=363 amount=-1 +kerning first=316 second=103 amount=-1 +kerning first=352 second=103 amount=-1 +kerning first=374 second=334 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=101 second=118 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=196 second=8217 amount=-1 +kerning first=209 second=365 amount=-1 +kerning first=266 second=296 amount=-1 +kerning first=65 second=118 amount=-1 +kerning first=346 second=68 amount=-1 +kerning first=8217 second=275 amount=-1 +kerning first=263 second=316 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=255 second=235 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=377 second=255 amount=-1 +kerning first=244 second=44 amount=-1 +kerning first=352 second=44 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=103 second=44 amount=-1 +kerning first=233 second=255 amount=-1 +kerning first=228 second=8221 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=8250 second=317 amount=-1 +kerning first=87 second=100 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=87 second=290 amount=-1 +kerning first=118 second=227 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=120 second=115 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=70 second=193 amount=-1 +kerning first=8250 second=122 amount=-1 +kerning first=313 second=85 amount=-1 +kerning first=67 second=65 amount=-1 +kerning first=8250 second=121 amount=-1 +kerning first=303 second=118 amount=-1 +kerning first=339 second=118 amount=-1 +kerning first=311 second=232 amount=-1 +kerning first=199 second=338 amount=-1 +kerning first=263 second=257 amount=-1 +kerning first=1027 second=1078 amount=-1 +kerning first=208 second=65 amount=-1 +kerning first=83 second=260 amount=-1 +kerning first=264 second=192 amount=-1 +kerning first=195 second=118 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=231 second=118 amount=-1 +kerning first=336 second=192 amount=-1 +kerning first=352 second=65 amount=-1 +kerning first=87 second=192 amount=-2 +kerning first=332 second=260 amount=-1 +kerning first=206 second=250 amount=-1 +kerning first=1105 second=1076 amount=-1 +kerning first=121 second=245 amount=-1 +kerning first=221 second=378 amount=-1 +kerning first=1036 second=1073 amount=-1 +kerning first=194 second=84 amount=-2 +kerning first=347 second=291 amount=-1 +kerning first=275 second=291 amount=-1 +kerning first=288 second=256 amount=-1 +kerning first=119 second=337 amount=-1 +kerning first=203 second=291 amount=-1 +kerning first=221 second=90 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=8218 second=354 amount=-2 +kerning first=377 second=102 amount=-1 +kerning first=216 second=256 amount=-1 +kerning first=221 second=242 amount=-1 +kerning first=310 second=67 amount=-1 +kerning first=119 second=100 amount=-1 +kerning first=310 second=338 amount=-1 +kerning first=89 second=335 amount=-1 +kerning first=327 second=45 amount=-1 +kerning first=352 second=280 amount=-1 +kerning first=313 second=374 amount=-1 +kerning first=66 second=261 amount=-1 +kerning first=374 second=335 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=256 second=367 amount=-1 +kerning first=362 second=224 amount=-1 +kerning first=76 second=289 amount=-1 +kerning first=99 second=303 amount=-1 +kerning first=325 second=289 amount=-1 +kerning first=8220 second=103 amount=-1 +kerning first=1027 second=1040 amount=-1 +kerning first=218 second=224 amount=-1 +kerning first=253 second=289 amount=-1 +kerning first=8250 second=377 amount=-1 +kerning first=87 second=328 amount=-1 +kerning first=354 second=279 amount=-1 +kerning first=1043 second=1104 amount=-1 +kerning first=119 second=108 amount=-1 +kerning first=354 second=381 amount=-1 +kerning first=356 second=286 amount=-1 +kerning first=253 second=229 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=217 second=229 amount=-1 +kerning first=353 second=115 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=8218 second=221 amount=-2 +kerning first=325 second=229 amount=-1 +kerning first=289 second=229 amount=-1 +kerning first=197 second=353 amount=-1 +kerning first=352 second=354 amount=-1 +kerning first=356 second=324 amount=-1 +kerning first=118 second=287 amount=-1 +kerning first=187 second=287 amount=-1 +kerning first=82 second=287 amount=-1 +kerning first=346 second=356 amount=-1 +kerning first=102 second=107 amount=1 +kerning first=110 second=45 amount=-1 +kerning first=264 second=290 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=1050 second=1054 amount=-1 +kerning first=367 second=287 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=374 second=275 amount=-1 +kerning first=376 second=245 amount=-1 +kerning first=354 second=339 amount=-1 +kerning first=1027 second=1089 amount=-1 +kerning first=195 second=368 amount=-1 +kerning first=219 second=45 amount=-1 +kerning first=255 second=45 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=222 second=194 amount=-1 +kerning first=89 second=275 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=8220 second=234 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=192 second=350 amount=-1 +kerning first=194 second=353 amount=-1 +kerning first=305 second=45 amount=-1 +kerning first=264 second=350 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=313 second=356 amount=-1 +kerning first=374 second=353 amount=-1 +kerning first=246 second=318 amount=-1 +kerning first=8217 second=277 amount=-1 +kerning first=377 second=45 amount=-1 +kerning first=275 second=289 amount=-1 +kerning first=203 second=289 amount=-1 +kerning first=277 second=255 amount=-1 +kerning first=313 second=255 amount=-1 +kerning first=262 second=112 amount=-1 +kerning first=347 second=289 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=84 second=194 amount=-2 +kerning first=84 second=332 amount=-1 +kerning first=376 second=223 amount=-1 +kerning first=352 second=374 amount=-1 +kerning first=89 second=353 amount=-1 +kerning first=120 second=259 amount=-1 +kerning first=8249 second=354 amount=-1 +kerning first=84 second=290 amount=-1 +kerning first=325 second=251 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=374 second=257 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=1100 second=1091 amount=-1 +kerning first=272 second=192 amount=-1 +kerning first=70 second=44 amount=-1 +kerning first=101 second=119 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=65 second=119 amount=-1 +kerning first=302 second=257 amount=-1 +kerning first=264 second=78 amount=-1 +kerning first=314 second=119 amount=-1 +kerning first=315 second=221 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=350 second=119 amount=-1 +kerning first=356 second=225 amount=-1 +kerning first=291 second=46 amount=-1 +kerning first=219 second=46 amount=-1 +kerning first=255 second=46 amount=-1 +kerning first=8250 second=66 amount=-1 +kerning first=269 second=253 amount=-1 +kerning first=377 second=253 amount=-1 +kerning first=187 second=346 amount=-1 +kerning first=231 second=230 amount=-1 +kerning first=374 second=375 amount=-1 +kerning first=82 second=346 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=194 second=375 amount=-1 +kerning first=230 second=375 amount=-1 +kerning first=83 second=87 amount=-1 +kerning first=268 second=201 amount=-1 +kerning first=311 second=101 amount=-1 +kerning first=260 second=87 amount=-2 +kerning first=8220 second=273 amount=-1 +kerning first=89 second=375 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=8250 second=70 amount=-1 +kerning first=217 second=380 amount=-1 +kerning first=89 second=235 amount=-1 +kerning first=321 second=218 amount=-1 +kerning first=288 second=354 amount=-1 +kerning first=277 second=104 amount=-1 +kerning first=374 second=235 amount=-1 +kerning first=8216 second=74 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=86 second=377 amount=-1 +kerning first=120 second=369 amount=-1 +kerning first=263 second=105 amount=-1 +kerning first=264 second=212 amount=-1 +kerning first=67 second=197 amount=-1 +kerning first=1059 second=1083 amount=-1 +kerning first=344 second=83 amount=-1 +kerning first=255 second=333 amount=-1 +kerning first=208 second=197 amount=-1 +kerning first=83 second=317 amount=-1 +kerning first=253 second=231 amount=-1 +kerning first=352 second=197 amount=-1 +kerning first=323 second=291 amount=-1 +kerning first=258 second=351 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=86 second=335 amount=-1 +kerning first=346 second=237 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=275 second=311 amount=-1 +kerning first=375 second=230 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=233 second=253 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=371 second=335 amount=-1 +kerning first=89 second=333 amount=-1 +kerning first=213 second=260 amount=-1 +kerning first=286 second=171 amount=-1 +kerning first=256 second=249 amount=-1 +kerning first=262 second=266 amount=-1 +kerning first=283 second=121 amount=-1 +kerning first=346 second=200 amount=-1 +kerning first=260 second=199 amount=-1 +kerning first=204 second=361 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=67 second=79 amount=-1 +kerning first=363 second=103 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=268 second=280 amount=-1 +kerning first=84 second=214 amount=-1 +kerning first=109 second=8221 amount=-1 +kerning first=327 second=103 amount=-1 +kerning first=219 second=103 amount=-1 +kerning first=8218 second=119 amount=-1 +kerning first=255 second=103 amount=-1 +kerning first=253 second=100 amount=-1 +kerning first=221 second=267 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=250 second=8221 amount=-1 +kerning first=354 second=71 amount=-1 +kerning first=264 second=330 amount=-1 +kerning first=381 second=365 amount=-1 +kerning first=45 second=103 amount=-1 +kerning first=321 second=220 amount=-1 +kerning first=221 second=8250 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=8216 second=192 amount=-2 +kerning first=354 second=242 amount=-1 +kerning first=220 second=97 amount=-1 +kerning first=328 second=118 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=207 second=224 amount=-1 +kerning first=199 second=298 amount=-1 +kerning first=118 second=248 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=296 second=259 amount=-1 +kerning first=66 second=224 amount=-1 +kerning first=66 second=379 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=118 second=267 amount=-1 +kerning first=260 second=218 amount=-1 +kerning first=82 second=267 amount=-1 +kerning first=66 second=330 amount=-1 +kerning first=313 second=354 amount=-1 +kerning first=255 second=234 amount=-1 +kerning first=83 second=218 amount=-1 +kerning first=115 second=118 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=90 second=250 amount=-1 +kerning first=1050 second=1090 amount=-1 +kerning first=83 second=221 amount=-1 +kerning first=8220 second=197 amount=-2 +kerning first=376 second=378 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=71 second=287 amount=-1 +kerning first=363 second=108 amount=-1 +kerning first=84 second=192 amount=-2 +kerning first=214 second=193 amount=-1 +kerning first=1113 second=1118 amount=-1 +kerning first=213 second=198 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=118 second=226 amount=-1 +kerning first=313 second=84 amount=-1 +kerning first=364 second=227 amount=-1 +kerning first=356 second=287 amount=-1 +kerning first=356 second=113 amount=-1 +kerning first=352 second=102 amount=-1 +kerning first=284 second=287 amount=-1 +kerning first=1118 second=1083 amount=-1 +kerning first=220 second=227 amount=-1 +kerning first=231 second=307 amount=-1 +kerning first=268 second=378 amount=-1 +kerning first=344 second=291 amount=-1 +kerning first=107 second=113 amount=-1 +kerning first=256 second=368 amount=-1 +kerning first=254 second=121 amount=-1 +kerning first=264 second=210 amount=-1 +kerning first=236 second=291 amount=-1 +kerning first=352 second=45 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=321 second=89 amount=-1 +kerning first=310 second=268 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=88 second=262 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=217 second=350 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=371 second=337 amount=-1 +kerning first=354 second=8249 amount=-1 +kerning first=86 second=337 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=119 second=240 amount=-1 +kerning first=219 second=256 amount=-1 +kerning first=8218 second=87 amount=-2 +kerning first=209 second=367 amount=-1 +kerning first=118 second=245 amount=-1 +kerning first=350 second=327 amount=-1 +kerning first=82 second=245 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=121 second=263 amount=-1 +kerning first=1038 second=1092 amount=-1 +kerning first=267 second=228 amount=-1 +kerning first=346 second=66 amount=-1 +kerning first=375 second=228 amount=-1 +kerning first=121 second=244 amount=-1 +kerning first=249 second=108 amount=-1 +kerning first=347 second=120 amount=-1 +kerning first=231 second=228 amount=-1 +kerning first=268 second=302 amount=-1 +kerning first=263 second=108 amount=-1 +kerning first=335 second=108 amount=-1 +kerning first=66 second=303 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=206 second=251 amount=-1 +kerning first=374 second=226 amount=-1 +kerning first=109 second=8220 amount=-1 +kerning first=364 second=229 amount=-1 +kerning first=250 second=8220 amount=-1 +kerning first=262 second=286 amount=-1 +kerning first=66 second=311 amount=-1 +kerning first=195 second=119 amount=-1 +kerning first=376 second=279 amount=-1 +kerning first=264 second=310 amount=-1 +kerning first=303 second=119 amount=-1 +kerning first=339 second=119 amount=-1 +kerning first=8217 second=333 amount=-1 +kerning first=231 second=119 amount=-1 +kerning first=267 second=119 amount=-1 +kerning first=356 second=115 amount=-1 +kerning first=220 second=229 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=381 second=363 amount=-1 +kerning first=291 second=353 amount=-1 +kerning first=8222 second=221 amount=-2 +kerning first=283 second=314 amount=-1 +kerning first=288 second=356 amount=-1 +kerning first=366 second=45 amount=-1 +kerning first=374 second=255 amount=-1 +kerning first=1046 second=1060 amount=-1 +kerning first=8217 second=246 amount=-1 +kerning first=230 second=255 amount=-1 +kerning first=330 second=45 amount=-1 +kerning first=87 second=101 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=107 second=244 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=89 second=255 amount=-1 +kerning first=272 second=194 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=356 second=244 amount=-1 +kerning first=350 second=280 amount=-1 +kerning first=264 second=80 amount=-1 +kerning first=352 second=296 amount=-1 +kerning first=1114 second=1091 amount=-1 +kerning first=121 second=243 amount=-1 +kerning first=8217 second=103 amount=-1 +kerning first=1061 second=1095 amount=-1 +kerning first=352 second=46 amount=-1 +kerning first=310 second=121 amount=-1 +kerning first=244 second=46 amount=-1 +kerning first=219 second=352 amount=-1 +kerning first=264 second=203 amount=-1 +kerning first=84 second=83 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=262 second=264 amount=-1 +kerning first=352 second=330 amount=-1 +kerning first=115 second=347 amount=-1 +kerning first=256 second=347 amount=-1 +kerning first=218 second=380 amount=-1 +kerning first=268 second=71 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=362 second=380 amount=-1 +kerning first=118 second=225 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=85 second=230 amount=-1 +kerning first=226 second=8217 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=316 second=253 amount=-1 +kerning first=222 second=65 amount=-1 +kerning first=363 second=375 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=321 second=87 amount=-1 +kerning first=366 second=65 amount=-1 +kerning first=303 second=99 amount=-1 +kerning first=73 second=289 amount=-1 +kerning first=375 second=99 amount=-1 +kerning first=89 second=65 amount=-2 +kerning first=263 second=259 amount=-1 +kerning first=197 second=351 amount=-1 +kerning first=1043 second=1076 amount=-1 +kerning first=250 second=289 amount=-1 +kerning first=258 second=370 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=235 second=318 amount=-1 +kerning first=346 second=260 amount=-1 +kerning first=286 second=289 amount=-1 +kerning first=377 second=122 amount=-1 +kerning first=264 second=288 amount=-1 +kerning first=346 second=218 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=366 second=196 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=87 second=288 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=222 second=196 amount=-1 +kerning first=230 second=104 amount=-1 +kerning first=264 second=81 amount=-1 +kerning first=374 second=277 amount=-1 +kerning first=260 second=219 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=260 second=89 amount=-2 +kerning first=374 second=286 amount=-1 +kerning first=268 second=203 amount=-1 +kerning first=1036 second=1054 amount=-1 +kerning first=377 second=121 amount=-1 +kerning first=374 second=256 amount=-2 +kerning first=346 second=217 amount=-1 +kerning first=103 second=351 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=311 second=283 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=364 second=228 amount=-1 +kerning first=70 second=196 amount=-1 +kerning first=346 second=75 amount=-1 +kerning first=376 second=224 amount=-1 +kerning first=376 second=194 amount=-2 +kerning first=83 second=89 amount=-1 +kerning first=220 second=228 amount=-1 +kerning first=82 second=111 amount=-1 +kerning first=255 second=277 amount=-1 +kerning first=194 second=354 amount=-2 +kerning first=304 second=224 amount=-1 +kerning first=346 second=86 amount=-1 +kerning first=377 second=252 amount=-1 +kerning first=83 second=220 amount=-1 +kerning first=353 second=347 amount=-1 +kerning first=221 second=71 amount=-1 +kerning first=225 second=8221 amount=-1 +kerning first=118 second=246 amount=-1 +kerning first=338 second=103 amount=-1 +kerning first=317 second=368 amount=-1 +kerning first=374 second=103 amount=-1 +kerning first=86 second=336 amount=-1 +kerning first=192 second=8217 amount=-1 +kerning first=266 second=103 amount=-1 +kerning first=82 second=246 amount=-1 +kerning first=302 second=103 amount=-1 +kerning first=369 second=8221 amount=-1 +kerning first=354 second=8250 amount=-1 +kerning first=194 second=103 amount=-1 +kerning first=230 second=103 amount=-1 +kerning first=350 second=291 amount=-1 +kerning first=120 second=171 amount=-1 +kerning first=260 second=220 amount=-1 +kerning first=249 second=316 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=381 second=287 amount=-1 +kerning first=264 second=211 amount=-1 +kerning first=353 second=118 amount=-1 +kerning first=8250 second=260 amount=-1 +kerning first=192 second=211 amount=-1 +kerning first=364 second=97 amount=-1 +kerning first=253 second=232 amount=-1 +kerning first=8250 second=86 amount=-1 +kerning first=346 second=315 amount=-1 +kerning first=65 second=350 amount=-1 +kerning first=218 second=74 amount=-1 +kerning first=260 second=67 amount=-1 +kerning first=317 second=118 amount=-1 +kerning first=363 second=255 amount=-1 +kerning first=362 second=74 amount=-1 +kerning first=366 second=44 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=379 second=8249 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=8216 second=283 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=222 second=44 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=45 second=120 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=84 second=193 amount=-2 +kerning first=356 second=267 amount=-1 +kerning first=89 second=234 amount=-1 +kerning first=350 second=209 amount=-1 +kerning first=268 second=72 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=374 second=234 amount=-1 +kerning first=1043 second=1108 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=350 second=78 amount=-1 +kerning first=286 second=192 amount=-1 +kerning first=83 second=198 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=90 second=251 amount=-1 +kerning first=356 second=245 amount=-1 +kerning first=268 second=315 amount=-1 +kerning first=323 second=361 amount=-1 +kerning first=231 second=318 amount=-1 +kerning first=214 second=192 amount=-1 +kerning first=256 second=250 amount=-1 +kerning first=368 second=198 amount=-1 +kerning first=107 second=245 amount=-1 +kerning first=332 second=198 amount=-1 +kerning first=1059 second=1074 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=1090 second=1113 amount=-1 +kerning first=1050 second=1073 amount=-1 +kerning first=209 second=227 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=89 second=256 amount=-2 +kerning first=369 second=291 amount=-1 +kerning first=87 second=233 amount=-1 +kerning first=115 second=119 amount=-1 +kerning first=78 second=287 amount=-1 +kerning first=328 second=119 amount=-1 +kerning first=315 second=378 amount=-1 +kerning first=256 second=119 amount=-1 +kerning first=84 second=291 amount=-1 +kerning first=222 second=256 amount=-1 +kerning first=67 second=198 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=344 second=314 amount=-1 +kerning first=89 second=337 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=208 second=198 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=377 second=291 amount=-1 +kerning first=321 second=90 amount=-1 +kerning first=352 second=198 amount=-1 +kerning first=269 second=291 amount=-1 +kerning first=233 second=291 amount=-1 +kerning first=197 second=291 amount=-1 +kerning first=82 second=244 amount=-1 +kerning first=8250 second=278 amount=-1 +kerning first=118 second=244 amount=-1 +kerning first=288 second=44 amount=-1 +kerning first=84 second=210 amount=-1 +kerning first=346 second=354 amount=-1 +kerning first=86 second=378 amount=-1 +kerning first=111 second=44 amount=-1 +kerning first=253 second=101 amount=-1 +kerning first=344 second=84 amount=-1 +kerning first=289 second=318 amount=-1 +kerning first=1050 second=1095 amount=-1 +kerning first=323 second=227 amount=-1 +kerning first=366 second=256 amount=-1 +kerning first=287 second=227 amount=-1 +kerning first=86 second=8250 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=262 second=203 amount=-1 +kerning first=8222 second=356 amount=-2 +kerning first=199 second=336 amount=-1 +kerning first=87 second=228 amount=-1 +kerning first=187 second=73 amount=-1 +kerning first=290 second=89 amount=-1 +kerning first=252 second=108 amount=-1 +kerning first=381 second=361 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=221 second=263 amount=-1 +kerning first=266 second=278 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=222 second=197 amount=-1 +kerning first=1088 second=1076 amount=-1 +kerning first=73 second=367 amount=-1 +kerning first=316 second=106 amount=-1 +kerning first=8250 second=196 amount=-1 +kerning first=366 second=197 amount=-1 +kerning first=262 second=262 amount=-1 +kerning first=193 second=221 amount=-2 +kerning first=375 second=246 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=303 second=246 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=304 second=8249 amount=-1 +kerning first=268 second=8249 amount=-1 +kerning first=8220 second=230 amount=-1 +kerning first=70 second=65 amount=-1 +kerning first=84 second=289 amount=-1 +kerning first=266 second=194 amount=-1 +kerning first=374 second=194 amount=-2 +kerning first=211 second=65 amount=-1 +kerning first=83 second=237 amount=-1 +kerning first=313 second=8220 amount=-1 +kerning first=369 second=289 amount=-1 +kerning first=86 second=260 amount=-2 +kerning first=70 second=45 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=89 second=194 amount=-2 +kerning first=89 second=8249 amount=-1 +kerning first=356 second=97 amount=-1 +kerning first=256 second=211 amount=-1 +kerning first=45 second=287 amount=-1 +kerning first=84 second=353 amount=-1 +kerning first=120 second=353 amount=-1 +kerning first=335 second=255 amount=-1 +kerning first=321 second=374 amount=-1 +kerning first=263 second=255 amount=-1 +kerning first=86 second=240 amount=-1 +kerning first=227 second=255 amount=-1 +kerning first=86 second=255 amount=-1 +kerning first=71 second=374 amount=-1 +kerning first=104 second=8221 amount=-1 +kerning first=371 second=240 amount=-1 +kerning first=8220 second=198 amount=-2 +kerning first=350 second=76 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=121 second=225 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=258 second=8217 amount=-1 +kerning first=332 second=46 amount=-1 +kerning first=368 second=46 amount=-1 +kerning first=8220 second=232 amount=-1 +kerning first=351 second=121 amount=-1 +kerning first=354 second=44 amount=-1 +kerning first=268 second=323 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=364 second=226 amount=-1 +kerning first=1046 second=1104 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=66 second=225 amount=-1 +kerning first=222 second=192 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=379 second=289 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=221 second=224 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=330 second=224 amount=-1 +kerning first=256 second=290 amount=-1 +kerning first=244 second=375 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=316 second=375 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=213 second=46 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=8217 second=337 amount=-1 +kerning first=266 second=317 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=90 second=369 amount=-1 +kerning first=262 second=282 amount=-1 +kerning first=82 second=288 amount=-1 +kerning first=346 second=221 amount=-1 +kerning first=354 second=111 amount=-1 +kerning first=85 second=287 amount=-1 +kerning first=1070 second=1051 amount=-1 +kerning first=121 second=287 amount=-1 +kerning first=233 second=311 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=218 second=225 amount=-1 +kerning first=362 second=225 amount=-1 +kerning first=1043 second=1086 amount=-1 +kerning first=370 second=287 amount=-1 +kerning first=262 second=287 amount=-1 +kerning first=298 second=287 amount=-1 +kerning first=376 second=259 amount=-1 +kerning first=266 second=352 amount=-1 +kerning first=192 second=351 amount=-1 +kerning first=219 second=194 amount=-1 +kerning first=374 second=352 amount=-1 +kerning first=87 second=351 amount=-1 +kerning first=89 second=352 amount=-1 +kerning first=314 second=8217 amount=-1 +kerning first=66 second=74 amount=-1 +kerning first=194 second=352 amount=-1 +kerning first=303 second=231 amount=-1 +kerning first=264 second=327 amount=-1 +kerning first=1050 second=1038 amount=-1 +kerning first=120 second=254 amount=-1 +kerning first=118 second=269 amount=-1 +kerning first=82 second=269 amount=-1 +kerning first=120 second=261 amount=-1 +kerning first=315 second=84 amount=-1 +kerning first=8250 second=255 amount=-1 +kerning first=244 second=121 amount=-1 +kerning first=346 second=374 amount=-1 +kerning first=86 second=196 amount=-2 +kerning first=118 second=229 amount=-1 +kerning first=1059 second=1085 amount=-1 +kerning first=287 second=115 amount=-1 +kerning first=375 second=231 amount=-1 +kerning first=363 second=253 amount=-1 +kerning first=258 second=212 amount=-1 +kerning first=195 second=350 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=65 second=347 amount=-1 +kerning first=65 second=8217 amount=-1 +kerning first=253 second=228 amount=-1 +kerning first=217 second=228 amount=-1 +kerning first=232 second=318 amount=-1 +kerning first=325 second=228 amount=-1 +kerning first=374 second=214 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=289 second=228 amount=-1 +kerning first=354 second=199 amount=-1 +kerning first=219 second=287 amount=-1 +kerning first=266 second=214 amount=-1 +kerning first=264 second=332 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=256 second=251 amount=-1 +kerning first=313 second=103 amount=-1 +kerning first=104 second=171 amount=-1 +kerning first=350 second=330 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=196 second=362 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=277 second=103 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=317 second=8221 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=353 second=119 amount=-1 +kerning first=225 second=118 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=261 second=118 amount=-1 +kerning first=379 second=45 amount=-1 +kerning first=1040 second=1063 amount=-1 +kerning first=317 second=119 amount=-1 +kerning first=379 second=380 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=84 second=118 amount=-1 +kerning first=283 second=104 amount=-1 +kerning first=221 second=246 amount=-1 +kerning first=253 second=233 amount=-1 +kerning first=199 second=67 amount=-1 +kerning first=354 second=113 amount=-1 +kerning first=321 second=217 amount=-1 +kerning first=8250 second=354 amount=-1 +kerning first=369 second=118 amount=-1 +kerning first=369 second=314 amount=-1 +kerning first=333 second=314 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=369 second=8220 amount=-1 +kerning first=315 second=382 amount=-1 +kerning first=242 second=120 amount=-1 +kerning first=87 second=248 amount=-1 +kerning first=225 second=8220 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=376 second=283 amount=-1 +kerning first=261 second=8220 amount=-1 +kerning first=89 second=377 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=347 second=347 amount=-1 +kerning first=346 second=85 amount=-1 +kerning first=87 second=193 amount=-2 +kerning first=109 second=118 amount=-1 +kerning first=260 second=8217 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=264 second=193 amount=-1 +kerning first=1038 second=1117 amount=-1 +kerning first=260 second=85 amount=-1 +kerning first=195 second=8221 amount=-1 +kerning first=231 second=237 amount=-1 +kerning first=354 second=257 amount=-1 +kerning first=258 second=216 amount=-1 +kerning first=83 second=85 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=374 second=377 amount=-1 +kerning first=255 second=273 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=221 second=8249 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=70 second=197 amount=-1 +kerning first=279 second=287 amount=-1 +kerning first=120 second=250 amount=-1 +kerning first=70 second=192 amount=-1 +kerning first=321 second=289 amount=-1 +kerning first=1036 second=1077 amount=-1 +kerning first=336 second=193 amount=-1 +kerning first=44 second=8249 amount=-1 +kerning first=86 second=279 amount=-1 +kerning first=219 second=198 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=366 second=291 amount=-1 +kerning first=1024 second=1038 amount=-1 +kerning first=330 second=291 amount=-1 +kerning first=1060 second=1038 amount=-1 +kerning first=258 second=291 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=365 second=318 amount=-1 +kerning first=232 second=107 amount=-1 +kerning first=216 second=260 amount=-1 +kerning first=272 second=65 amount=-1 +kerning first=213 second=197 amount=-1 +kerning first=371 second=279 amount=-1 +kerning first=87 second=268 amount=-1 +kerning first=335 second=44 amount=-1 +kerning first=8220 second=271 amount=-1 +kerning first=221 second=67 amount=-1 +kerning first=288 second=260 amount=-1 +kerning first=263 second=44 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=376 second=113 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=268 second=199 amount=-1 +kerning first=264 second=268 amount=-1 +kerning first=8222 second=87 amount=-2 +kerning first=99 second=227 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=376 second=199 amount=-1 +kerning first=368 second=261 amount=-1 +kerning first=346 second=105 amount=-1 +kerning first=83 second=374 amount=-1 +kerning first=67 second=212 amount=-1 +kerning first=296 second=261 amount=-1 +kerning first=352 second=66 amount=-1 +kerning first=1043 second=1105 amount=-1 +kerning first=231 second=226 amount=-1 +kerning first=277 second=108 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=267 second=226 amount=-1 +kerning first=296 second=291 amount=-1 +kerning first=375 second=226 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=8216 second=271 amount=-1 +kerning first=344 second=98 amount=-1 +kerning first=356 second=44 amount=-1 +kerning first=205 second=229 amount=-1 +kerning first=264 second=122 amount=-1 +kerning first=8218 second=85 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=8250 second=220 amount=-1 +kerning first=87 second=122 amount=-1 +kerning first=119 second=261 amount=-1 +kerning first=121 second=115 amount=-1 +kerning first=8216 second=227 amount=-1 +kerning first=354 second=224 amount=-1 +kerning first=260 second=356 amount=-2 +kerning first=118 second=97 amount=-1 +kerning first=262 second=77 amount=-1 +kerning first=8250 second=378 amount=-1 +kerning first=350 second=310 amount=-1 +kerning first=371 second=339 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=380 second=45 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=236 second=45 amount=-1 +kerning first=252 second=255 amount=-1 +kerning first=221 second=243 amount=-1 +kerning first=82 second=368 amount=-1 +kerning first=350 second=325 amount=-1 +kerning first=187 second=89 amount=-1 +kerning first=344 second=45 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=75 second=255 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=323 second=287 amount=-1 +kerning first=111 second=255 amount=-1 +kerning first=8222 second=118 amount=-1 +kerning first=251 second=287 amount=-1 +kerning first=260 second=374 amount=-2 +kerning first=74 second=287 amount=-1 +kerning first=344 second=104 amount=-1 +kerning first=235 second=121 amount=-1 +kerning first=195 second=8217 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=284 second=46 amount=-1 +kerning first=66 second=109 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=368 second=380 amount=-1 +kerning first=221 second=111 amount=-1 +kerning first=311 second=248 amount=-1 +kerning first=356 second=264 amount=-1 +kerning first=311 second=233 amount=-1 +kerning first=89 second=253 amount=-1 +kerning first=220 second=350 amount=-1 +kerning first=362 second=382 amount=-1 +kerning first=256 second=350 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=268 second=69 amount=-1 +kerning first=376 second=74 amount=-1 +kerning first=364 second=350 amount=-1 +kerning first=230 second=253 amount=-1 +kerning first=86 second=339 amount=-1 +kerning first=187 second=374 amount=-1 +kerning first=107 second=269 amount=-1 +kerning first=1036 second=1057 amount=-1 +kerning first=374 second=253 amount=-1 +kerning first=376 second=243 amount=-1 +kerning first=352 second=218 amount=-1 +kerning first=356 second=269 amount=-1 +kerning first=310 second=334 amount=-1 +kerning first=260 second=338 amount=-1 +kerning first=200 second=289 amount=-1 +kerning first=236 second=289 amount=-1 +kerning first=197 second=375 amount=-1 +kerning first=344 second=289 amount=-1 +kerning first=262 second=207 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=209 second=251 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=8220 second=65 amount=-2 +kerning first=263 second=289 amount=-1 +kerning first=206 second=369 amount=-1 +kerning first=8220 second=256 amount=-2 +kerning first=65 second=369 amount=-1 +kerning first=120 second=98 amount=-1 +kerning first=352 second=370 amount=-1 +kerning first=346 second=46 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=377 second=375 amount=-1 +kerning first=311 second=263 amount=-1 +kerning first=117 second=121 amount=-1 +kerning first=257 second=8220 amount=-1 +kerning first=363 second=119 amount=-1 +kerning first=233 second=375 amount=-1 +kerning first=356 second=346 amount=-1 +kerning first=269 second=375 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=221 second=259 amount=-1 +kerning first=234 second=119 amount=-1 +kerning first=193 second=89 amount=-2 +kerning first=83 second=217 amount=-1 +kerning first=283 second=291 amount=-1 +kerning first=352 second=256 amount=-1 +kerning first=260 second=217 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=1042 second=1093 amount=-1 +kerning first=70 second=291 amount=-1 +kerning first=268 second=298 amount=-1 +kerning first=208 second=256 amount=-1 +kerning first=354 second=187 amount=-1 +kerning first=250 second=314 amount=-1 +kerning first=347 second=351 amount=-1 +kerning first=67 second=256 amount=-1 +kerning first=363 second=121 amount=-1 +kerning first=84 second=326 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=344 second=8220 amount=-1 +kerning first=354 second=263 amount=-1 +kerning first=216 second=196 amount=-1 +kerning first=119 second=277 amount=-1 +kerning first=288 second=196 amount=-1 +kerning first=221 second=199 amount=-1 +kerning first=8217 second=352 amount=-1 +kerning first=352 second=82 amount=-1 +kerning first=288 second=84 amount=-1 +kerning first=206 second=228 amount=-1 +kerning first=321 second=85 amount=-1 +kerning first=344 second=333 amount=-1 +kerning first=197 second=86 amount=-2 +kerning first=86 second=235 amount=-1 +kerning first=84 second=234 amount=-1 +kerning first=218 second=382 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=87 second=83 amount=-1 +kerning first=346 second=220 amount=-1 +kerning first=235 second=316 amount=-1 +kerning first=192 second=83 amount=-1 +kerning first=266 second=68 amount=-1 +kerning first=264 second=83 amount=-1 +kerning first=256 second=171 amount=-1 +kerning first=220 second=171 amount=-1 +kerning first=328 second=171 amount=-1 +kerning first=352 second=278 amount=-1 +kerning first=266 second=313 amount=-1 +kerning first=262 second=71 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=364 second=171 amount=-1 +kerning first=272 second=197 amount=-1 +kerning first=252 second=103 amount=-1 +kerning first=1038 second=1051 amount=-1 +kerning first=1061 second=1077 amount=-1 +kerning first=288 second=103 amount=-1 +kerning first=328 second=8221 amount=-1 +kerning first=325 second=365 amount=-1 +kerning first=88 second=71 amount=-1 +kerning first=346 second=103 amount=-1 +kerning first=67 second=214 amount=-1 +kerning first=253 second=246 amount=-1 +kerning first=344 second=100 amount=-1 +kerning first=202 second=103 amount=-1 +kerning first=8216 second=225 amount=-1 +kerning first=84 second=65 amount=-2 +kerning first=67 second=315 amount=-1 +kerning first=1036 second=1090 amount=-1 +kerning first=1102 second=1076 amount=-1 +kerning first=381 second=249 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=194 second=220 amount=-1 +kerning first=356 second=284 amount=-1 +kerning first=298 second=117 amount=-1 +kerning first=90 second=171 amount=-1 +kerning first=256 second=365 amount=-1 +kerning first=1036 second=1063 amount=-1 +kerning first=66 second=199 amount=-1 +kerning first=195 second=171 amount=-1 +kerning first=354 second=281 amount=-1 +kerning first=1059 second=1047 amount=-1 +kerning first=375 second=171 amount=-1 +kerning first=196 second=89 amount=-2 +kerning first=313 second=121 amount=-1 +kerning first=277 second=121 amount=-1 +kerning first=354 second=382 amount=-1 +kerning first=197 second=216 amount=-1 +kerning first=314 second=8221 amount=-1 +kerning first=313 second=218 amount=-1 +kerning first=275 second=118 amount=-1 +kerning first=315 second=364 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=347 second=118 amount=-1 +kerning first=269 second=228 amount=-1 +kerning first=65 second=8221 amount=-1 +kerning first=365 second=316 amount=-1 +kerning first=233 second=104 amount=-1 +kerning first=352 second=315 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=344 second=234 amount=-1 +kerning first=1059 second=1089 amount=-1 +kerning first=73 second=250 amount=-1 +kerning first=221 second=290 amount=-1 +kerning first=194 second=86 amount=-2 +kerning first=8220 second=335 amount=-1 +kerning first=315 second=87 amount=-1 +kerning first=253 second=347 amount=-1 +kerning first=8220 second=337 amount=-1 +kerning first=1060 second=1040 amount=-1 +kerning first=8217 second=240 amount=-1 +kerning first=284 second=65 amount=-1 +kerning first=221 second=380 amount=-1 +kerning first=86 second=90 amount=-1 +kerning first=258 second=84 amount=-2 +kerning first=266 second=198 amount=-1 +kerning first=67 second=192 amount=-1 +kerning first=374 second=44 amount=-1 +kerning first=8216 second=193 amount=-2 +kerning first=374 second=198 amount=-2 +kerning first=218 second=8249 amount=-1 +kerning first=90 second=363 amount=-1 +kerning first=195 second=363 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=376 second=67 amount=-1 +kerning first=363 second=291 amount=-1 +kerning first=327 second=291 amount=-1 +kerning first=268 second=67 amount=-1 +kerning first=302 second=250 amount=-1 +kerning first=255 second=291 amount=-1 +kerning first=219 second=291 amount=-1 +kerning first=8250 second=200 amount=-1 +kerning first=78 second=291 amount=-1 +kerning first=321 second=378 amount=-1 +kerning first=8222 second=364 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=89 second=113 amount=-1 +kerning first=8222 second=217 amount=-1 +kerning first=230 second=44 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=204 second=287 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=381 second=8249 amount=-1 +kerning first=192 second=367 amount=-1 +kerning first=8250 second=103 amount=-1 +kerning first=230 second=108 amount=-1 +kerning first=8217 second=260 amount=-2 +kerning first=356 second=326 amount=-1 +kerning first=256 second=286 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=221 second=74 amount=-1 +kerning first=66 second=221 amount=-1 +kerning first=171 second=221 amount=-1 +kerning first=73 second=228 amount=-1 +kerning first=356 second=262 amount=-1 +kerning first=89 second=262 amount=-1 +kerning first=326 second=8249 amount=-1 +kerning first=290 second=8249 amount=-1 +kerning first=205 second=289 amount=-1 +kerning first=362 second=8249 amount=-1 +kerning first=235 second=107 amount=-1 +kerning first=8250 second=68 amount=-1 +kerning first=108 second=8221 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=283 second=289 amount=-1 +kerning first=325 second=367 amount=-1 +kerning first=193 second=115 amount=-1 +kerning first=352 second=86 amount=-1 +kerning first=266 second=66 amount=-1 +kerning first=85 second=97 amount=-1 +kerning first=321 second=356 amount=-1 +kerning first=121 second=97 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=120 second=45 amount=-1 +kerning first=298 second=97 amount=-1 +kerning first=354 second=261 amount=-1 +kerning first=378 second=112 amount=-1 +kerning first=115 second=121 amount=-1 +kerning first=362 second=257 amount=-1 +kerning first=8250 second=202 amount=-1 +kerning first=8217 second=196 amount=-2 +kerning first=321 second=255 amount=-1 +kerning first=82 second=119 amount=-1 +kerning first=108 second=255 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=291 second=44 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=255 second=44 amount=-1 +kerning first=356 second=227 amount=-1 +kerning first=259 second=119 amount=-1 +kerning first=187 second=119 amount=-1 +kerning first=367 second=119 amount=-1 +kerning first=370 second=97 amount=-1 +kerning first=275 second=314 amount=-1 +kerning first=376 second=109 amount=-1 +kerning first=376 second=111 amount=-1 +kerning first=295 second=119 amount=-1 +kerning first=331 second=119 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=302 second=291 amount=-1 +kerning first=303 second=233 amount=-1 +kerning first=264 second=76 amount=-1 +kerning first=256 second=363 amount=-1 +kerning first=1025 second=1038 amount=-1 +kerning first=1061 second=1057 amount=-1 +kerning first=335 second=46 amount=-1 +kerning first=205 second=251 amount=-1 +kerning first=66 second=241 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=354 second=338 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=219 second=44 amount=-1 +kerning first=352 second=192 amount=-1 +kerning first=8216 second=287 amount=-1 +kerning first=70 second=289 amount=-1 +kerning first=208 second=192 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=8250 second=90 amount=-1 +kerning first=83 second=354 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=283 second=311 amount=-1 +kerning first=260 second=354 amount=-2 +kerning first=325 second=369 amount=-1 +kerning first=354 second=283 amount=-1 +kerning first=375 second=46 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=246 second=316 amount=-1 +kerning first=1050 second=1077 amount=-1 +kerning first=99 second=291 amount=-1 +kerning first=84 second=197 amount=-2 +kerning first=8217 second=198 amount=-2 +kerning first=217 second=83 amount=-1 +kerning first=354 second=259 amount=-1 +kerning first=259 second=8220 amount=-1 +kerning first=258 second=375 amount=-1 +kerning first=225 second=8217 amount=-1 +kerning first=117 second=375 amount=-1 +kerning first=196 second=87 amount=-2 +kerning first=206 second=225 amount=-1 +kerning first=263 second=103 amount=-1 +kerning first=221 second=336 amount=-1 +kerning first=8220 second=192 amount=-2 +kerning first=233 second=121 amount=-1 +kerning first=86 second=103 amount=-1 +kerning first=350 second=270 amount=-1 +kerning first=1061 second=1092 amount=-1 +kerning first=255 second=335 amount=-1 +kerning first=256 second=8217 amount=-1 +kerning first=288 second=374 amount=-1 +kerning first=328 second=8217 amount=-1 +kerning first=214 second=65 amount=-1 +kerning first=315 second=219 amount=-1 +kerning first=286 second=65 amount=-1 +kerning first=66 second=219 amount=-1 +kerning first=8216 second=113 amount=-1 +kerning first=313 second=253 amount=-1 +kerning first=258 second=353 amount=-1 +kerning first=277 second=253 amount=-1 +kerning first=67 second=284 amount=-1 +kerning first=344 second=212 amount=-1 +kerning first=374 second=121 amount=-1 +kerning first=89 second=260 amount=-2 +kerning first=1047 second=1059 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=356 second=328 amount=-1 +kerning first=254 second=318 amount=-1 +kerning first=374 second=260 amount=-2 +kerning first=266 second=196 amount=-1 +kerning first=119 second=235 amount=-1 +kerning first=111 second=121 amount=-1 +kerning first=89 second=196 amount=-2 +kerning first=232 second=316 amount=-1 +kerning first=315 second=89 amount=-1 +kerning first=86 second=242 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=107 second=99 amount=-1 +kerning first=89 second=382 amount=-1 +kerning first=205 second=117 amount=-1 +kerning first=171 second=89 amount=-1 +kerning first=374 second=196 amount=-2 +kerning first=66 second=89 amount=-1 +kerning first=206 second=171 amount=-1 +kerning first=262 second=302 amount=-1 +kerning first=356 second=99 amount=-1 +kerning first=376 second=263 amount=-1 +kerning first=256 second=213 amount=-1 +kerning first=344 second=375 amount=-1 +kerning first=290 second=221 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=371 second=242 amount=-1 +kerning first=8250 second=374 amount=-1 +kerning first=84 second=351 amount=-1 +kerning first=120 second=351 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=87 second=347 amount=-1 +kerning first=119 second=224 amount=-1 +kerning first=192 second=347 amount=-1 +kerning first=321 second=103 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=102 second=8249 amount=-1 +kerning first=256 second=266 amount=-1 +kerning first=86 second=253 amount=-1 +kerning first=66 second=8249 amount=-1 +kerning first=227 second=253 amount=-1 +kerning first=313 second=220 amount=-1 +kerning first=199 second=334 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=263 second=253 amount=-1 +kerning first=108 second=103 amount=-1 +kerning first=197 second=214 amount=-1 +kerning first=335 second=253 amount=-1 +kerning first=296 second=224 amount=-1 +kerning first=321 second=354 amount=-1 +kerning first=368 second=224 amount=-1 +kerning first=344 second=232 amount=-1 +kerning first=352 second=313 amount=-1 +kerning first=118 second=231 amount=-1 +kerning first=350 second=171 amount=-1 +kerning first=346 second=202 amount=-1 +kerning first=66 second=362 amount=-1 +kerning first=221 second=382 amount=-1 +kerning first=90 second=365 amount=-1 +kerning first=315 second=362 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=219 second=227 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=323 second=117 amount=-1 +kerning first=368 second=257 amount=-1 +kerning first=97 second=255 amount=-1 +kerning first=296 second=257 amount=-1 +kerning first=376 second=338 amount=-1 +kerning first=193 second=287 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=268 second=338 amount=-1 +kerning first=87 second=118 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=368 second=378 amount=-1 +kerning first=192 second=118 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=228 second=118 amount=-1 +kerning first=8217 second=339 amount=-1 +kerning first=119 second=257 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=371 second=275 amount=-1 +kerning first=377 second=382 amount=-1 +kerning first=350 second=193 amount=-1 +kerning first=121 second=269 amount=-1 +kerning first=364 second=380 amount=-1 +kerning first=249 second=253 amount=-1 +kerning first=121 second=227 amount=-1 +kerning first=85 second=227 amount=-1 +kerning first=197 second=84 amount=-2 +kerning first=1061 second=1090 amount=-1 +kerning first=1025 second=1090 amount=-1 +kerning first=121 second=273 amount=-1 +kerning first=352 second=291 amount=-1 +kerning first=344 second=210 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=316 second=291 amount=-1 +kerning first=280 second=291 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=221 second=81 amount=-1 +kerning first=1069 second=1051 amount=-1 +kerning first=262 second=280 amount=-1 +kerning first=8250 second=352 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=262 second=73 amount=-1 +kerning first=255 second=337 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=370 second=227 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=298 second=227 amount=-1 +kerning first=277 second=44 amount=-1 +kerning first=253 second=226 amount=-1 +kerning first=217 second=226 amount=-1 +kerning first=8216 second=245 amount=-1 +kerning first=67 second=194 amount=-1 +kerning first=289 second=226 amount=-1 +kerning first=8217 second=350 amount=-1 +kerning first=352 second=84 amount=-1 +kerning first=208 second=194 amount=-1 +kerning first=374 second=240 amount=-1 +kerning first=344 second=254 amount=-1 +kerning first=356 second=119 amount=-1 +kerning first=196 second=219 amount=-1 +kerning first=291 second=108 amount=-1 +kerning first=209 second=363 amount=-1 +kerning first=8220 second=291 amount=-1 +kerning first=255 second=108 amount=-1 +kerning first=83 second=105 amount=-1 +kerning first=288 second=198 amount=-1 +kerning first=117 second=289 amount=-1 +kerning first=45 second=289 amount=-1 +kerning first=194 second=370 amount=-1 +kerning first=258 second=8220 amount=-1 +kerning first=330 second=289 amount=-1 +kerning first=119 second=279 amount=-1 +kerning first=258 second=289 amount=-1 +kerning first=275 second=104 amount=-1 +kerning first=117 second=8220 amount=-1 +kerning first=221 second=338 amount=-1 +kerning first=206 second=367 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=192 second=115 amount=-1 +kerning first=356 second=229 amount=-1 +kerning first=262 second=205 amount=-1 +kerning first=288 second=289 amount=-1 +kerning first=89 second=240 amount=-1 +kerning first=8222 second=85 amount=-1 +kerning first=65 second=83 amount=-1 +kerning first=221 second=261 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=1038 second=1060 amount=-1 +kerning first=310 second=255 amount=-1 +kerning first=352 second=194 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=286 second=45 amount=-1 +kerning first=214 second=197 amount=-1 +kerning first=353 second=112 amount=-1 +kerning first=83 second=356 amount=-1 +kerning first=74 second=225 amount=-1 +kerning first=354 second=380 amount=-1 +kerning first=256 second=81 amount=-1 +kerning first=1036 second=1092 amount=-1 +kerning first=287 second=225 amount=-1 +kerning first=194 second=218 amount=-1 +kerning first=84 second=244 amount=-1 +kerning first=221 second=109 amount=-1 +kerning first=354 second=336 amount=-1 +kerning first=323 second=225 amount=-1 +kerning first=111 second=253 amount=-1 +kerning first=104 second=8217 amount=-1 +kerning first=8216 second=267 amount=-1 +kerning first=75 second=253 amount=-1 +kerning first=253 second=248 amount=-1 +kerning first=317 second=8217 amount=-1 +kerning first=288 second=46 amount=-1 +kerning first=8217 second=245 amount=-1 +kerning first=216 second=46 amount=-1 +kerning first=193 second=364 amount=-1 +kerning first=221 second=283 amount=-1 +kerning first=268 second=382 amount=-1 +kerning first=376 second=382 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=376 second=241 amount=-1 +kerning first=66 second=318 amount=-1 +kerning first=102 second=318 amount=1 +kerning first=243 second=318 amount=-1 +kerning first=219 second=260 amount=-1 +kerning first=279 second=318 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=366 second=289 amount=-1 +kerning first=84 second=122 amount=-1 +kerning first=256 second=288 amount=-1 +kerning first=346 second=70 amount=-1 +kerning first=1038 second=1104 amount=-1 +kerning first=122 second=8249 amount=-1 +kerning first=1091 second=1076 amount=-1 +kerning first=111 second=46 amount=-1 +kerning first=118 second=99 amount=-1 +kerning first=82 second=99 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=283 second=375 amount=-1 +kerning first=370 second=346 amount=-1 +kerning first=255 second=271 amount=-1 +kerning first=106 second=375 amount=-1 +kerning first=262 second=346 amount=-1 +kerning first=8217 second=273 amount=-1 +kerning first=356 second=381 amount=-1 +kerning first=85 second=346 amount=-1 +kerning first=298 second=230 amount=-1 +kerning first=97 second=253 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=45 second=352 amount=-1 +kerning first=193 second=87 amount=-2 +kerning first=302 second=369 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=370 second=230 amount=-1 +kerning first=8250 second=72 amount=-1 +kerning first=362 second=346 amount=-1 +kerning first=310 second=253 amount=-1 +kerning first=379 second=363 amount=-1 +kerning first=375 second=122 amount=-1 +kerning first=72 second=224 amount=-1 +kerning first=218 second=346 amount=-1 +kerning first=333 second=375 amount=-1 +kerning first=369 second=375 amount=-1 +kerning first=264 second=334 amount=-1 +kerning first=8217 second=192 amount=-2 +kerning first=344 second=116 amount=-1 +kerning first=368 second=193 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=1069 second=1059 amount=-1 +kerning first=200 second=287 amount=-1 +kerning first=327 second=287 amount=-1 +kerning first=236 second=287 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=317 second=121 amount=-1 +kerning first=281 second=121 amount=-1 +kerning first=245 second=121 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=344 second=277 amount=-1 +kerning first=356 second=231 amount=-1 +kerning first=344 second=287 amount=-1 +kerning first=352 second=171 amount=-1 +kerning first=354 second=196 amount=-2 +kerning first=316 second=171 amount=-1 +kerning first=120 second=375 amount=-1 +kerning first=255 second=99 amount=-1 +kerning first=379 second=102 amount=-1 +kerning first=90 second=122 amount=-1 +kerning first=225 second=375 amount=-1 +kerning first=366 second=224 amount=-1 +kerning first=195 second=352 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=217 second=74 amount=-1 +kerning first=376 second=115 amount=-1 +kerning first=366 second=229 amount=-1 +kerning first=330 second=229 amount=-1 +kerning first=346 second=197 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=1047 second=1063 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=352 second=220 amount=-1 +kerning first=356 second=379 amount=-1 +kerning first=264 second=344 amount=-1 +kerning first=368 second=382 amount=-1 +kerning first=82 second=350 amount=-1 +kerning first=314 second=103 amount=-1 +kerning first=303 second=234 amount=-1 +kerning first=350 second=103 amount=-1 +kerning first=187 second=350 amount=-1 +kerning first=118 second=100 amount=-1 +kerning first=8217 second=271 amount=-1 +kerning first=82 second=100 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=88 second=199 amount=-1 +kerning first=196 second=290 amount=-1 +kerning first=120 second=365 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=65 second=103 amount=-1 +kerning first=113 second=106 amount=1 +kerning first=193 second=362 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=381 second=117 amount=-1 +kerning first=251 second=318 amount=-1 +kerning first=287 second=318 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=107 second=231 amount=-1 +kerning first=350 second=313 amount=-1 +kerning first=199 second=284 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=226 second=118 amount=-1 +kerning first=120 second=257 amount=-1 +kerning first=330 second=117 amount=-1 +kerning first=258 second=117 amount=-1 +kerning first=256 second=332 amount=-1 +kerning first=302 second=251 amount=-1 +kerning first=346 second=102 amount=-1 +kerning first=375 second=283 amount=-1 +kerning first=323 second=257 amount=-1 +kerning first=264 second=216 amount=-1 +kerning first=8218 second=89 amount=-2 +kerning first=369 second=316 amount=-1 +kerning first=45 second=291 amount=-1 +kerning first=303 second=283 amount=-1 +kerning first=327 second=250 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=86 second=233 amount=-1 +kerning first=1059 second=1076 amount=-1 +kerning first=346 second=72 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=195 second=362 amount=-1 +kerning first=371 second=233 amount=-1 +kerning first=376 second=266 amount=-1 +kerning first=289 second=314 amount=-1 +kerning first=253 second=314 amount=-1 +kerning first=8220 second=289 amount=-1 +kerning first=363 second=8220 amount=-1 +kerning first=268 second=266 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=196 second=217 amount=-1 +kerning first=8216 second=337 amount=-1 +kerning first=263 second=227 amount=-1 +kerning first=78 second=250 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=266 second=192 amount=-1 +kerning first=251 second=8220 amount=-1 +kerning first=291 second=378 amount=-1 +kerning first=255 second=378 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=89 second=192 amount=-2 +kerning first=219 second=378 amount=-1 +kerning first=110 second=8220 amount=-1 +kerning first=70 second=256 amount=-1 +kerning first=374 second=187 amount=-1 +kerning first=1046 second=1077 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=286 second=256 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=350 second=354 amount=-1 +kerning first=66 second=227 amount=-1 +kerning first=344 second=67 amount=-1 +kerning first=367 second=291 amount=-1 +kerning first=214 second=256 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=187 second=291 amount=-1 +kerning first=118 second=291 amount=-1 +kerning first=195 second=83 amount=-1 +kerning first=82 second=291 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=221 second=187 amount=-1 +kerning first=377 second=8249 amount=-1 +kerning first=221 second=197 amount=-2 +kerning first=1036 second=1060 amount=-1 +kerning first=221 second=100 amount=-1 +kerning first=8250 second=253 amount=-1 +kerning first=1038 second=1094 amount=-1 +kerning first=256 second=112 amount=-1 +kerning first=260 second=284 amount=-1 +kerning first=115 second=112 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=118 second=261 amount=-1 +kerning first=218 second=378 amount=-1 +kerning first=73 second=365 amount=-1 +kerning first=305 second=8249 amount=-1 +kerning first=83 second=303 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=121 second=279 amount=-1 +kerning first=244 second=108 amount=-1 +kerning first=240 second=318 amount=-1 +kerning first=272 second=198 amount=-1 +kerning first=87 second=65 amount=-2 +kerning first=268 second=206 amount=-1 +kerning first=8218 second=122 amount=-1 +kerning first=8216 second=97 amount=-1 +kerning first=352 second=89 amount=-1 +kerning first=208 second=260 amount=-1 +kerning first=264 second=65 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=310 second=336 amount=-1 +kerning first=336 second=65 amount=-1 +kerning first=8250 second=218 amount=-1 +kerning first=67 second=260 amount=-1 +kerning first=1027 second=1104 amount=-1 +kerning first=89 second=339 amount=-1 +kerning first=269 second=229 amount=-1 +kerning first=352 second=260 amount=-1 +kerning first=351 second=115 amount=-1 +kerning first=8250 second=381 amount=-1 +kerning first=253 second=353 amount=-1 +kerning first=289 second=353 amount=-1 +kerning first=209 second=369 amount=-1 +kerning first=354 second=275 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=344 second=356 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=220 second=352 amount=-1 +kerning first=220 second=194 amount=-1 +kerning first=256 second=352 amount=-1 +kerning first=374 second=290 amount=-1 +kerning first=44 second=45 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=364 second=194 amount=-1 +kerning first=121 second=267 amount=-1 +kerning first=234 second=375 amount=-1 +kerning first=354 second=287 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=256 second=366 amount=-1 +kerning first=369 second=119 amount=-1 +kerning first=374 second=339 amount=-1 +kerning first=364 second=352 amount=-1 +kerning first=221 second=45 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=217 second=225 amount=-1 +kerning first=354 second=226 amount=-1 +kerning first=8250 second=366 amount=-1 +kerning first=374 second=211 amount=-1 +kerning first=371 second=111 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=8218 second=362 amount=-1 +kerning first=289 second=225 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=325 second=225 amount=-1 +kerning first=89 second=290 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=76 second=255 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=112 second=255 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=266 second=290 amount=-1 +kerning first=266 second=211 amount=-1 +kerning first=356 second=110 amount=-1 +kerning first=87 second=212 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=8222 second=84 amount=-2 +kerning first=375 second=273 amount=-1 +kerning first=286 second=46 amount=-1 +kerning first=197 second=338 amount=-1 +kerning first=354 second=324 amount=-1 +kerning first=214 second=46 amount=-1 +kerning first=86 second=193 amount=-2 +kerning first=87 second=324 amount=-1 +kerning first=66 second=257 amount=-1 +kerning first=102 second=8220 amount=1 +kerning first=269 second=289 amount=-1 +kerning first=86 second=111 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=377 second=289 amount=-1 +kerning first=89 second=241 amount=-1 +kerning first=223 second=255 amount=-1 +kerning first=84 second=287 amount=-1 +kerning first=369 second=287 amount=-1 +kerning first=1050 second=1108 amount=-1 +kerning first=89 second=281 amount=-1 +kerning first=315 second=218 amount=-1 +kerning first=376 second=232 amount=-1 +kerning first=1059 second=1092 amount=-1 +kerning first=206 second=365 amount=-1 +kerning first=193 second=346 amount=-1 +kerning first=364 second=224 amount=-1 +kerning first=44 second=8217 amount=-1 +kerning first=8217 second=232 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=98 second=46 amount=-1 +kerning first=286 second=86 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=352 second=201 amount=-1 +kerning first=275 second=46 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=257 second=8217 amount=-1 +kerning first=365 second=8217 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=104 second=8220 amount=-1 +kerning first=197 second=347 amount=-1 +kerning first=8220 second=260 amount=-2 +kerning first=187 second=70 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=356 second=350 amount=-1 +kerning first=364 second=122 amount=-1 +kerning first=290 second=87 amount=-1 +kerning first=356 second=226 amount=-1 +kerning first=220 second=122 amount=-1 +kerning first=78 second=289 amount=-1 +kerning first=366 second=259 amount=-1 +kerning first=330 second=259 amount=-1 +kerning first=250 second=375 amount=-1 +kerning first=255 second=289 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=66 second=218 amount=-1 +kerning first=268 second=75 amount=-1 +kerning first=317 second=370 amount=-1 +kerning first=219 second=289 amount=-1 +kerning first=8217 second=242 amount=-1 +kerning first=327 second=289 amount=-1 +kerning first=363 second=289 amount=-1 +kerning first=205 second=369 amount=-1 +kerning first=327 second=251 amount=-1 +kerning first=78 second=251 amount=-1 +kerning first=337 second=255 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=221 second=286 amount=-1 +kerning first=344 second=316 amount=-1 +kerning first=1027 second=1072 amount=-1 +kerning first=119 second=245 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=256 second=121 amount=-1 +kerning first=255 second=171 amount=-1 +kerning first=219 second=171 amount=-1 +kerning first=327 second=171 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=291 second=171 amount=-1 +kerning first=84 second=277 amount=-1 +kerning first=209 second=117 amount=-1 +kerning first=8220 second=229 amount=-1 +kerning first=352 second=323 amount=-1 +kerning first=8250 second=330 amount=-1 +kerning first=199 second=196 amount=-1 +kerning first=66 second=217 amount=-1 +kerning first=356 second=100 amount=-1 +kerning first=120 second=228 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=310 second=214 amount=-1 +kerning first=226 second=119 amount=-1 +kerning first=1059 second=1093 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=84 second=228 amount=-1 +kerning first=315 second=217 amount=-1 +kerning first=187 second=221 amount=-1 +kerning first=8220 second=259 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=8222 second=354 amount=-2 +kerning first=242 second=314 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=108 second=253 amount=-1 +kerning first=86 second=263 amount=-1 +kerning first=379 second=382 amount=-1 +kerning first=266 second=330 amount=-1 +kerning first=321 second=253 amount=-1 +kerning first=260 second=363 amount=-1 +kerning first=371 second=263 amount=-1 +kerning first=296 second=363 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=325 second=103 amount=-1 +kerning first=70 second=8249 amount=-1 +kerning first=217 second=103 amount=-1 +kerning first=107 second=100 amount=-1 +kerning first=253 second=103 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=374 second=281 amount=-1 +kerning first=251 second=118 amount=-1 +kerning first=76 second=103 amount=-1 +kerning first=194 second=89 amount=-2 +kerning first=8250 second=193 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=199 second=382 amount=-1 +kerning first=354 second=235 amount=-1 +kerning first=220 second=83 amount=-1 +kerning first=335 second=120 amount=-1 +kerning first=258 second=8249 amount=-1 +kerning first=304 second=261 amount=-1 +kerning first=376 second=336 amount=-1 +kerning first=253 second=234 amount=-1 +kerning first=256 second=83 amount=-1 +kerning first=330 second=8249 amount=-1 +kerning first=314 second=255 amount=-1 +kerning first=364 second=83 amount=-1 +kerning first=8217 second=281 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=235 second=44 amount=-1 +kerning first=101 second=255 amount=-1 +kerning first=374 second=232 amount=-1 +kerning first=86 second=262 amount=-1 +kerning first=287 second=97 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=304 second=227 amount=-1 +kerning first=354 second=197 amount=-2 +kerning first=323 second=97 amount=-1 +kerning first=344 second=366 amount=-1 +kerning first=279 second=255 amount=-1 +kerning first=356 second=79 amount=-1 +kerning first=99 second=118 amount=-1 +kerning first=346 second=193 amount=-1 +kerning first=337 second=318 amount=-1 +kerning first=218 second=257 amount=-1 +kerning first=217 second=65 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=67 second=338 amount=-1 +kerning first=119 second=244 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=374 second=378 amount=-1 +kerning first=219 second=192 amount=-1 +kerning first=376 second=350 amount=-1 +kerning first=346 second=302 amount=-1 +kerning first=266 second=378 amount=-1 +kerning first=89 second=90 amount=-1 +kerning first=70 second=198 amount=-1 +kerning first=264 second=274 amount=-1 +kerning first=284 second=221 amount=-1 +kerning first=377 second=250 amount=-1 +kerning first=266 second=298 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=266 second=280 amount=-1 +kerning first=356 second=291 amount=-1 +kerning first=374 second=90 amount=-1 +kerning first=284 second=291 amount=-1 +kerning first=199 second=213 amount=-1 +kerning first=71 second=221 amount=-1 +kerning first=256 second=361 amount=-1 +kerning first=119 second=267 amount=-1 +kerning first=84 second=256 amount=-2 +kerning first=8217 second=194 amount=-2 +kerning first=71 second=291 amount=-1 +kerning first=89 second=378 amount=-1 +kerning first=258 second=210 amount=-1 +kerning first=374 second=242 amount=-1 +kerning first=375 second=233 amount=-1 +kerning first=335 second=316 amount=-1 +kerning first=311 second=335 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=171 second=87 amount=-1 +kerning first=354 second=45 amount=-1 +kerning first=66 second=87 amount=-1 +kerning first=286 second=374 amount=-1 +kerning first=344 second=268 amount=-1 +kerning first=195 second=112 amount=-1 +kerning first=86 second=224 amount=-1 +kerning first=121 second=240 amount=-1 +kerning first=344 second=219 amount=-1 +kerning first=67 second=289 amount=-1 +kerning first=280 second=289 amount=-1 +kerning first=316 second=289 amount=-1 +kerning first=263 second=224 amount=-1 +kerning first=1054 second=1040 amount=-1 +kerning first=352 second=289 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=269 second=108 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=233 second=108 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=103 second=229 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=375 second=243 amount=-1 +kerning first=250 second=287 amount=-1 +kerning first=65 second=353 amount=-1 +kerning first=303 second=243 amount=-1 +kerning first=221 second=324 amount=-1 +kerning first=73 second=287 amount=-1 +kerning first=221 second=275 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=350 second=304 amount=-1 +kerning first=236 second=375 amount=-1 +kerning first=221 second=226 amount=-1 +kerning first=255 second=339 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=268 second=336 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=314 second=253 amount=-1 +kerning first=260 second=45 amount=-1 +kerning first=66 second=97 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=286 second=356 amount=-1 +kerning first=352 second=80 amount=-1 +kerning first=347 second=353 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=119 second=275 amount=-1 +kerning first=89 second=289 amount=-1 +kerning first=230 second=289 amount=-1 +kerning first=368 second=45 amount=-1 +kerning first=266 second=289 amount=-1 +kerning first=84 second=380 amount=-1 +kerning first=376 second=324 amount=-1 +kerning first=374 second=289 amount=-1 +kerning first=302 second=289 amount=-1 +kerning first=275 second=316 amount=-1 +kerning first=250 second=255 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=8250 second=120 amount=-1 +kerning first=256 second=370 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=1036 second=1105 amount=-1 +kerning first=266 second=193 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=8216 second=230 amount=-1 +kerning first=1027 second=1095 amount=-1 +kerning first=374 second=193 amount=-2 +kerning first=193 second=220 amount=-1 +kerning first=67 second=378 amount=-1 +kerning first=253 second=273 amount=-1 +kerning first=89 second=193 amount=-2 +kerning first=66 second=226 amount=-1 +kerning first=8217 second=291 amount=-1 +kerning first=86 second=192 amount=-2 +kerning first=269 second=307 amount=-1 +kerning first=221 second=257 amount=-1 +kerning first=251 second=119 amount=-1 +kerning first=375 second=314 amount=-1 +kerning first=339 second=314 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=267 second=314 amount=-1 +kerning first=262 second=284 amount=-1 +kerning first=262 second=209 amount=-1 +kerning first=231 second=314 amount=-1 +kerning first=336 second=46 amount=-1 +kerning first=376 second=346 amount=-1 +kerning first=260 second=253 amount=-1 +kerning first=268 second=346 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=196 second=346 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=107 second=101 amount=-1 +kerning first=262 second=70 amount=-1 +kerning first=275 second=375 amount=-1 +kerning first=220 second=380 amount=-1 +kerning first=98 second=375 amount=-1 +kerning first=266 second=81 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=356 second=101 amount=-1 +kerning first=264 second=296 amount=-1 +kerning first=332 second=196 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=66 second=354 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=221 second=235 amount=-1 +kerning first=368 second=196 amount=-1 +kerning first=171 second=354 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=315 second=354 amount=-1 +kerning first=262 second=288 amount=-1 +kerning first=352 second=219 amount=-1 +kerning first=374 second=81 amount=-1 +kerning first=283 second=316 amount=-1 +kerning first=89 second=171 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=266 second=171 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=1060 second=1051 amount=-1 +kerning first=339 second=121 amount=-1 +kerning first=371 second=271 amount=-1 +kerning first=374 second=171 amount=-1 +kerning first=267 second=121 amount=-1 +kerning first=256 second=252 amount=-1 +kerning first=196 second=115 amount=-1 +kerning first=231 second=121 amount=-1 +kerning first=199 second=197 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=121 second=231 amount=-1 +kerning first=217 second=352 amount=-1 +kerning first=83 second=196 amount=-1 +kerning first=90 second=121 amount=-1 +kerning first=362 second=261 amount=-1 +kerning first=354 second=115 amount=-1 +kerning first=289 second=122 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=76 second=122 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=344 second=335 amount=-1 +kerning first=224 second=253 amount=-1 +kerning first=230 second=311 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=350 second=65 amount=-1 +kerning first=241 second=171 amount=-1 +kerning first=192 second=362 amount=-1 +kerning first=222 second=260 amount=-1 +kerning first=221 second=333 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=45 second=86 amount=-1 +kerning first=199 second=266 amount=-1 +kerning first=366 second=260 amount=-1 +kerning first=197 second=362 amount=-1 +kerning first=120 second=347 amount=-1 +kerning first=84 second=347 amount=-1 +kerning first=75 second=214 amount=-1 +kerning first=46 second=8221 amount=-1 +kerning first=264 second=103 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=295 second=8221 amount=-1 +kerning first=192 second=103 amount=-1 +kerning first=331 second=8221 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=260 second=351 amount=-1 +kerning first=361 second=8221 amount=-1 +kerning first=259 second=8221 amount=-1 +kerning first=121 second=100 amount=-1 +kerning first=259 second=118 amount=-1 +kerning first=255 second=242 amount=-1 +kerning first=89 second=8250 amount=-1 +kerning first=258 second=220 amount=-1 +kerning first=256 second=79 amount=-1 +kerning first=258 second=67 amount=-1 +kerning first=90 second=380 amount=-1 +kerning first=8220 second=339 amount=-1 +kerning first=8250 second=382 amount=-1 +kerning first=1046 second=1089 amount=-1 +kerning first=233 second=107 amount=-1 +kerning first=255 second=232 amount=-1 +kerning first=1038 second=1054 amount=-1 +kerning first=367 second=8221 amount=-1 +kerning first=1046 second=1058 amount=-1 +kerning first=8217 second=193 amount=-2 +kerning first=375 second=380 amount=-1 +kerning first=284 second=89 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=1027 second=1033 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=1043 second=1040 amount=-1 +kerning first=352 second=317 amount=-1 +kerning first=352 second=298 amount=-1 +kerning first=376 second=248 amount=-1 +kerning first=193 second=118 amount=-1 +kerning first=87 second=234 amount=-1 +kerning first=229 second=118 amount=-1 +kerning first=350 second=305 amount=-1 +kerning first=196 second=354 amount=-2 +kerning first=346 second=120 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=1040 second=1098 amount=-1 +kerning first=356 second=331 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=216 second=192 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=288 second=192 amount=-1 +kerning first=107 second=279 amount=-1 +kerning first=117 second=314 amount=-1 +kerning first=222 second=198 amount=-1 +kerning first=330 second=250 amount=-1 +kerning first=346 second=303 amount=-1 +kerning first=84 second=216 amount=-1 +kerning first=350 second=370 amount=-1 +kerning first=347 second=287 amount=-1 +kerning first=87 second=256 amount=-2 +kerning first=346 second=44 amount=-1 +kerning first=275 second=287 amount=-1 +kerning first=196 second=84 amount=-2 +kerning first=304 second=226 amount=-1 +kerning first=203 second=287 amount=-1 +kerning first=376 second=226 amount=-1 +kerning first=193 second=368 amount=-1 +kerning first=353 second=291 amount=-1 +kerning first=317 second=291 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=281 second=291 amount=-1 +kerning first=209 second=291 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=220 second=74 amount=-1 +kerning first=258 second=89 amount=-2 +kerning first=199 second=45 amount=-1 +kerning first=310 second=262 amount=-1 +kerning first=364 second=74 amount=-1 +kerning first=262 second=350 amount=-1 +kerning first=1047 second=1078 amount=-1 +kerning first=218 second=260 amount=-1 +kerning first=8216 second=99 amount=-1 +kerning first=344 second=269 amount=-1 +kerning first=336 second=256 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=84 second=268 amount=-1 +kerning first=350 second=112 amount=-1 +kerning first=264 second=256 amount=-1 +kerning first=366 second=198 amount=-1 +kerning first=65 second=112 amount=-1 +kerning first=264 second=286 amount=-1 +kerning first=356 second=279 amount=-1 +kerning first=346 second=205 amount=-1 +kerning first=255 second=8249 amount=-1 +kerning first=219 second=8249 amount=-1 +kerning first=269 second=257 amount=-1 +kerning first=8220 second=99 amount=-1 +kerning first=327 second=8249 amount=-1 +kerning first=291 second=8249 amount=-1 +kerning first=197 second=289 amount=-1 +kerning first=45 second=89 amount=-1 +kerning first=370 second=350 amount=-1 +kerning first=366 second=228 amount=-1 +kerning first=330 second=228 amount=-1 +kerning first=87 second=286 amount=-1 +kerning first=77 second=367 amount=-1 +kerning first=117 second=108 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=65 second=251 amount=-1 +kerning first=66 second=105 amount=-1 +kerning first=356 second=212 amount=-1 +kerning first=377 second=251 amount=-1 +kerning first=192 second=374 amount=-2 +kerning first=82 second=332 amount=-1 +kerning first=220 second=261 amount=-1 +kerning first=353 second=121 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=269 second=227 amount=-1 +kerning first=364 second=261 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=321 second=381 amount=-1 +kerning first=295 second=8220 amount=-1 +kerning first=344 second=108 amount=-1 +kerning first=367 second=8220 amount=-1 +kerning first=218 second=226 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=362 second=226 amount=-1 +kerning first=262 second=192 amount=-1 +kerning first=207 second=367 amount=-1 +kerning first=46 second=8220 amount=-1 +kerning first=99 second=119 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=221 second=115 amount=-1 +kerning first=84 second=335 amount=-1 +kerning first=374 second=233 amount=-1 +kerning first=89 second=233 amount=-1 +kerning first=277 second=311 amount=-1 +kerning first=282 second=289 amount=-1 +kerning first=67 second=211 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=218 second=97 amount=-1 +kerning first=87 second=353 amount=-1 +kerning first=374 second=223 amount=-1 +kerning first=362 second=97 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=347 second=255 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=275 second=255 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=264 second=112 amount=-1 +kerning first=98 second=255 amount=-1 +kerning first=221 second=244 amount=-1 +kerning first=192 second=112 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=253 second=243 amount=-1 +kerning first=8222 second=219 amount=-1 +kerning first=66 second=377 amount=-1 +kerning first=346 second=198 amount=-1 +kerning first=192 second=352 amount=-1 +kerning first=226 second=8220 amount=-1 +kerning first=266 second=202 amount=-1 +kerning first=253 second=46 amount=-1 +kerning first=264 second=352 amount=-1 +kerning first=289 second=46 amount=-1 +kerning first=65 second=362 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=87 second=352 amount=-1 +kerning first=370 second=382 amount=-1 +kerning first=83 second=197 amount=-1 +kerning first=332 second=197 amount=-1 +kerning first=350 second=362 amount=-1 +kerning first=1046 second=1059 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=221 second=266 amount=-1 +kerning first=119 second=111 amount=-1 +kerning first=368 second=197 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=317 second=380 amount=-1 +kerning first=84 second=334 amount=-1 +kerning first=1027 second=1076 amount=-1 +kerning first=235 second=253 amount=-1 +kerning first=262 second=200 amount=-1 +kerning first=307 second=253 amount=-1 +kerning first=108 second=8220 amount=-1 +kerning first=217 second=46 amount=-1 +kerning first=379 second=253 amount=-1 +kerning first=344 second=86 amount=-1 +kerning first=269 second=225 amount=-1 +kerning first=112 second=46 amount=-1 +kerning first=70 second=260 amount=-1 +kerning first=356 second=213 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=323 second=230 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=228 second=375 amount=-1 +kerning first=287 second=230 amount=-1 +kerning first=195 second=370 amount=-1 +kerning first=266 second=76 amount=-1 +kerning first=193 second=84 amount=-2 +kerning first=344 second=288 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=87 second=375 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=338 second=289 amount=-1 +kerning first=211 second=260 amount=-1 +kerning first=313 second=289 amount=-1 +kerning first=311 second=277 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=213 second=196 amount=-1 +kerning first=193 second=218 amount=-1 +kerning first=197 second=219 amount=-1 +kerning first=1075 second=1113 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=120 second=117 amount=-1 +kerning first=352 second=68 amount=-1 +kerning first=8217 second=289 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=193 second=217 amount=-1 +kerning first=314 second=121 amount=-1 +kerning first=242 second=121 amount=-1 +kerning first=118 second=263 amount=-1 +kerning first=101 second=121 amount=-1 +kerning first=87 second=277 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=310 second=369 amount=-1 +kerning first=317 second=379 amount=-1 +kerning first=356 second=288 amount=-1 +kerning first=197 second=89 amount=-2 +kerning first=119 second=263 amount=-1 +kerning first=346 second=196 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=86 second=281 amount=-1 +kerning first=324 second=171 amount=-1 +kerning first=66 second=106 amount=-1 +kerning first=197 second=220 amount=-1 +kerning first=371 second=281 amount=-1 +kerning first=321 second=382 amount=-1 +kerning first=376 second=333 amount=-1 +kerning first=352 second=302 amount=-1 +kerning first=8216 second=240 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=264 second=287 amount=-1 +kerning first=1091 second=1103 amount=-1 +kerning first=347 second=103 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=192 second=287 amount=-1 +kerning first=275 second=103 amount=-1 +kerning first=87 second=287 amount=-1 +kerning first=203 second=103 amount=-1 +kerning first=117 second=316 amount=-1 +kerning first=376 second=235 amount=-1 +kerning first=258 second=365 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=1027 second=1086 amount=-1 +kerning first=374 second=71 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=266 second=71 amount=-1 +kerning first=1058 second=1078 amount=-1 +kerning first=326 second=118 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=1043 second=1093 amount=-1 +kerning first=352 second=8249 amount=-1 +kerning first=228 second=255 amount=-1 +kerning first=316 second=8249 amount=-1 +kerning first=192 second=255 amount=-1 +kerning first=84 second=269 amount=-1 +kerning first=362 second=227 amount=-1 +kerning first=87 second=255 amount=-1 +kerning first=213 second=44 amount=-1 +kerning first=258 second=338 amount=-1 +kerning first=304 second=257 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=67 second=8249 amount=-1 +kerning first=376 second=257 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=8220 second=242 amount=-1 +kerning first=344 second=85 amount=-1 +kerning first=113 second=118 amount=-1 +kerning first=354 second=244 amount=-1 +kerning first=311 second=234 amount=-1 +kerning first=258 second=251 amount=-1 +kerning first=303 second=273 amount=-1 +kerning first=263 second=303 amount=-1 +kerning first=346 second=118 amount=-1 +kerning first=350 second=274 amount=-1 +kerning first=262 second=199 amount=-1 +kerning first=283 second=108 amount=-1 +kerning first=118 second=279 amount=-1 +kerning first=216 second=193 amount=-1 +kerning first=262 second=79 amount=-1 +kerning first=356 second=332 amount=-1 +kerning first=197 second=8220 amount=-1 +kerning first=221 second=245 amount=-1 +kerning first=65 second=361 amount=-1 +kerning first=330 second=251 amount=-1 +kerning first=344 second=107 amount=-1 +kerning first=288 second=193 amount=-1 +kerning first=82 second=279 amount=-1 +kerning first=206 second=361 amount=-1 +kerning first=376 second=267 amount=-1 +kerning first=375 second=8249 amount=-1 +kerning first=8217 second=224 amount=-1 +kerning first=218 second=227 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=118 second=233 amount=-1 +kerning first=344 second=216 amount=-1 +kerning first=193 second=119 amount=-1 +kerning first=229 second=119 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=255 second=233 amount=-1 +kerning first=87 second=113 amount=-1 +kerning first=234 second=291 amount=-1 +kerning first=66 second=84 amount=-1 +kerning first=198 second=291 amount=-1 +kerning first=119 second=227 amount=-1 +kerning first=307 second=8249 amount=-1 +kerning first=281 second=314 amount=-1 +kerning first=245 second=314 amount=-1 +kerning first=217 second=198 amount=-1 +kerning first=192 second=366 amount=-1 +kerning first=8222 second=218 amount=-1 +kerning first=314 second=291 amount=-1 +kerning first=86 second=351 amount=-1 +kerning first=8250 second=206 amount=-1 +kerning first=206 second=291 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=65 second=291 amount=-1 +kerning first=193 second=354 amount=-2 +kerning first=243 second=44 amount=-1 +kerning first=121 second=101 amount=-1 +kerning first=263 second=287 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=8250 second=201 amount=-1 +kerning first=376 second=244 amount=-1 +kerning first=350 second=296 amount=-1 +kerning first=368 second=227 amount=-1 +kerning first=296 second=227 amount=-1 +kerning first=374 second=268 amount=-1 +kerning first=221 second=337 amount=-1 +kerning first=85 second=257 amount=-1 +kerning first=266 second=268 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=356 second=199 amount=-1 +kerning first=99 second=261 amount=-1 +kerning first=255 second=228 amount=-1 +kerning first=219 second=228 amount=-1 +kerning first=66 second=324 amount=-1 +kerning first=327 second=228 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=192 second=361 amount=-1 +kerning first=82 second=83 amount=-1 +kerning first=369 second=108 amount=-1 +kerning first=187 second=83 amount=-1 +kerning first=376 second=377 amount=-1 +kerning first=262 second=336 amount=-1 +kerning first=1042 second=1078 amount=-1 +kerning first=371 second=245 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=374 second=263 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=230 second=107 amount=-1 +kerning first=199 second=262 amount=-1 +kerning first=256 second=221 amount=-2 +kerning first=107 second=337 amount=-1 +kerning first=82 second=318 amount=-1 +kerning first=241 second=8249 amount=-1 +kerning first=354 second=223 amount=-1 +kerning first=8216 second=231 amount=-1 +kerning first=269 second=237 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=65 second=370 amount=-1 +kerning first=220 second=65 amount=-1 +kerning first=252 second=289 amount=-1 +kerning first=364 second=65 amount=-1 +kerning first=272 second=260 amount=-1 +kerning first=310 second=45 amount=-1 +kerning first=346 second=45 amount=-1 +kerning first=264 second=77 amount=-1 +kerning first=307 second=45 amount=-1 +kerning first=365 second=289 amount=-1 +kerning first=347 second=112 amount=-1 +kerning first=382 second=45 amount=-1 +kerning first=344 second=255 amount=-1 +kerning first=236 second=255 amount=-1 +kerning first=258 second=374 amount=-2 +kerning first=374 second=351 amount=-1 +kerning first=86 second=324 amount=-1 +kerning first=45 second=374 amount=-1 +kerning first=1040 second=1058 amount=-1 +kerning first=221 second=97 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=233 second=46 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=269 second=46 amount=-1 +kerning first=67 second=193 amount=-1 +kerning first=121 second=257 amount=-1 +kerning first=221 second=288 amount=-1 +kerning first=370 second=257 amount=-1 +kerning first=298 second=257 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=311 second=273 amount=-1 +kerning first=213 second=192 amount=-1 +kerning first=1059 second=1105 amount=-1 +kerning first=208 second=193 amount=-1 +kerning first=302 second=224 amount=-1 +kerning first=352 second=193 amount=-1 +kerning first=89 second=224 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=8250 second=280 amount=-1 +kerning first=260 second=71 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=118 second=122 amount=-1 +kerning first=8250 second=84 amount=-1 +kerning first=1046 second=1090 amount=-1 +kerning first=374 second=224 amount=-1 +kerning first=112 second=375 amount=-1 +kerning first=366 second=46 amount=-1 +kerning first=268 second=288 amount=-1 +kerning first=46 second=8249 amount=-1 +kerning first=374 second=336 amount=-1 +kerning first=323 second=103 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=1059 second=1075 amount=-1 +kerning first=66 second=368 amount=-1 +kerning first=67 second=81 amount=-1 +kerning first=76 second=287 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=269 second=316 amount=-1 +kerning first=233 second=316 amount=-1 +kerning first=251 second=289 amount=-1 +kerning first=354 second=346 amount=-1 +kerning first=370 second=352 amount=-1 +kerning first=325 second=287 amount=-1 +kerning first=217 second=287 amount=-1 +kerning first=253 second=287 amount=-1 +kerning first=73 second=117 amount=-1 +kerning first=87 second=194 amount=-2 +kerning first=110 second=8217 amount=-1 +kerning first=251 second=8217 amount=-1 +kerning first=197 second=370 amount=-1 +kerning first=264 second=194 amount=-1 +kerning first=336 second=194 amount=-1 +kerning first=344 second=242 amount=-1 +kerning first=66 second=328 amount=-1 +kerning first=194 second=219 amount=-1 +kerning first=86 second=290 amount=-1 +kerning first=99 second=105 amount=-1 +kerning first=291 second=351 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=346 second=80 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=376 second=288 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=260 second=115 amount=-1 +kerning first=242 second=255 amount=-1 +kerning first=112 second=121 amount=-1 +kerning first=258 second=369 amount=-1 +kerning first=76 second=121 amount=-1 +kerning first=73 second=229 amount=-1 +kerning first=362 second=196 amount=-1 +kerning first=246 second=253 amount=-1 +kerning first=314 second=171 amount=-1 +kerning first=354 second=253 amount=-1 +kerning first=344 second=334 amount=-1 +kerning first=353 second=353 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=218 second=196 amount=-1 +kerning first=290 second=196 amount=-1 +kerning first=1059 second=1100 amount=-1 +kerning first=223 second=318 amount=-1 +kerning first=375 second=100 amount=-1 +kerning first=103 second=228 amount=-1 +kerning first=89 second=347 amount=-1 +kerning first=367 second=318 amount=-1 +kerning first=221 second=214 amount=-1 +kerning first=354 second=267 amount=-1 +kerning first=8250 second=344 amount=-1 +kerning first=89 second=263 amount=-1 +kerning first=326 second=8221 amount=-1 +kerning first=260 second=336 amount=-1 +kerning first=377 second=365 amount=-1 +kerning first=311 second=113 amount=-1 +kerning first=250 second=103 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=286 second=103 amount=-1 +kerning first=236 second=171 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=344 second=171 amount=-1 +kerning first=303 second=100 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=380 second=171 amount=-1 +kerning first=113 second=119 amount=-1 +kerning first=8220 second=113 amount=-1 +kerning first=119 second=232 amount=-1 +kerning first=8218 second=370 amount=-1 +kerning first=234 second=118 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=370 second=380 amount=-1 +kerning first=262 second=380 amount=-1 +kerning first=121 second=230 amount=-1 +kerning first=315 second=377 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=256 second=216 amount=-1 +kerning first=67 second=67 amount=-1 +kerning first=82 second=234 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=66 second=363 amount=-1 +kerning first=321 second=364 amount=-1 +kerning first=207 second=363 amount=-1 +kerning first=118 second=234 amount=-1 +kerning first=118 second=283 amount=-1 +kerning first=1058 second=1033 amount=-1 +kerning first=374 second=347 amount=-1 +kerning first=82 second=283 amount=-1 +kerning first=8250 second=217 amount=-1 +kerning first=1060 second=1059 amount=-1 +kerning first=82 second=118 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=187 second=118 amount=-1 +kerning first=352 second=72 amount=-1 +kerning first=344 second=290 amount=-1 +kerning first=219 second=193 amount=-1 +kerning first=367 second=118 amount=-1 +kerning first=197 second=85 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=221 second=377 amount=-1 +kerning first=207 second=361 amount=-1 +kerning first=313 second=377 amount=-1 +kerning first=346 second=192 amount=-1 +kerning first=8218 second=86 amount=-2 +kerning first=1098 second=1091 amount=-1 +kerning first=295 second=118 amount=-1 +kerning first=331 second=118 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=1104 second=1076 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=356 second=83 amount=-1 +kerning first=1050 second=1060 amount=-1 +kerning first=266 second=8249 amount=-1 +kerning first=75 second=121 amount=-1 +kerning first=8217 second=269 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=354 second=262 amount=-1 +kerning first=1027 second=1077 amount=-1 +kerning first=264 second=278 amount=-1 +kerning first=344 second=103 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=350 second=256 amount=-1 +kerning first=82 second=113 amount=-1 +kerning first=87 second=198 amount=-2 +kerning first=375 second=291 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=336 second=198 amount=-1 +kerning first=339 second=291 amount=-1 +kerning first=1069 second=1038 amount=-1 +kerning first=248 second=318 amount=-1 +kerning first=264 second=198 amount=-1 +kerning first=267 second=291 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=231 second=291 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=84 second=260 amount=-2 +kerning first=1059 second=1119 amount=-1 +kerning first=90 second=291 amount=-1 +kerning first=266 second=67 amount=-1 +kerning first=374 second=67 amount=-1 +kerning first=317 second=219 amount=-1 +kerning first=362 second=44 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=84 second=71 amount=-1 +kerning first=8249 second=87 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=290 second=44 amount=-1 +kerning first=82 second=199 amount=-1 +kerning first=254 second=44 amount=-1 +kerning first=86 second=275 amount=-1 +kerning first=8220 second=233 amount=-1 +kerning first=346 second=84 amount=-1 +kerning first=118 second=113 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=376 second=337 amount=-1 +kerning first=323 second=261 amount=-1 +kerning first=287 second=261 amount=-1 +kerning first=346 second=112 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=250 second=108 amount=-1 +kerning first=258 second=286 amount=-1 +kerning first=252 second=314 amount=-1 +kerning first=120 second=229 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=381 second=122 amount=-1 +kerning first=220 second=230 amount=-1 +kerning first=262 second=122 amount=-1 +kerning first=268 second=205 amount=-1 +kerning first=364 second=230 amount=-1 +kerning first=74 second=261 amount=-1 +kerning first=219 second=224 amount=-1 +kerning first=255 second=224 amount=-1 +kerning first=291 second=224 amount=-1 +kerning first=327 second=224 amount=-1 +kerning first=194 second=356 amount=-2 +kerning first=86 second=45 amount=-1 +kerning first=122 second=45 amount=-1 +kerning first=214 second=194 amount=-1 +kerning first=286 second=194 amount=-1 +kerning first=255 second=111 amount=-1 +kerning first=195 second=8249 amount=-1 +kerning first=344 second=339 amount=-1 +kerning first=333 second=255 amount=-1 +kerning first=375 second=234 amount=-1 +kerning first=369 second=255 amount=-1 +kerning first=8250 second=197 amount=-1 +kerning first=107 second=243 amount=-1 +kerning first=225 second=255 amount=-1 +kerning first=196 second=368 amount=-1 +kerning first=84 second=255 amount=-1 +kerning first=346 second=280 amount=-1 +kerning first=120 second=255 amount=-1 +kerning first=314 second=287 amount=-1 +kerning first=206 second=287 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=376 second=97 amount=-1 +kerning first=258 second=211 amount=-1 +kerning first=65 second=287 amount=-1 +kerning first=197 second=374 amount=-2 +kerning first=67 second=202 amount=-1 +kerning first=253 second=113 amount=-1 +kerning first=281 second=104 amount=-1 +kerning first=89 second=111 amount=-1 +kerning first=350 second=287 amount=-1 +kerning first=287 second=380 amount=-1 +kerning first=356 second=248 amount=-1 +kerning first=262 second=327 amount=-1 +kerning first=187 second=74 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=374 second=111 amount=-1 +kerning first=220 second=225 amount=-1 +kerning first=118 second=243 amount=-1 +kerning first=107 second=248 amount=-1 +kerning first=82 second=243 amount=-1 +kerning first=311 second=269 amount=-1 +kerning first=257 second=253 amount=-1 +kerning first=221 second=253 amount=-1 +kerning first=260 second=364 amount=-1 +kerning first=365 second=253 amount=-1 +kerning first=352 second=202 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=193 second=350 amount=-1 +kerning first=65 second=375 amount=-1 +kerning first=221 second=346 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=86 second=289 amount=-1 +kerning first=70 second=46 amount=-1 +kerning first=76 second=370 amount=-1 +kerning first=350 second=282 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=86 second=241 amount=-1 +kerning first=344 second=99 amount=-1 +kerning first=262 second=213 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=283 second=46 amount=-1 +kerning first=364 second=225 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=375 second=335 amount=-1 +kerning first=8250 second=192 amount=-1 +kerning first=262 second=332 amount=-1 +kerning first=235 second=311 amount=-1 +kerning first=303 second=335 amount=-1 +kerning first=286 second=44 amount=-1 +kerning first=8218 second=220 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=119 second=271 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=242 second=375 amount=-1 +kerning first=302 second=259 amount=-1 +kerning first=66 second=119 amount=-1 +kerning first=314 second=375 amount=-1 +kerning first=364 second=291 amount=-1 +kerning first=194 second=351 amount=-1 +kerning first=256 second=291 amount=-1 +kerning first=89 second=351 amount=-1 +kerning first=220 second=291 amount=-1 +kerning first=351 second=119 amount=-1 +kerning first=1069 second=1033 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=279 second=119 amount=-1 +kerning first=315 second=119 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=8216 second=275 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=217 second=256 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=223 second=314 amount=-1 +kerning first=255 second=263 amount=-1 +kerning first=317 second=8220 amount=-1 +kerning first=377 second=369 amount=-1 +kerning first=228 second=121 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=1059 second=1114 amount=-1 +kerning first=195 second=221 amount=-2 +kerning first=104 second=8249 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=304 second=363 amount=-1 +kerning first=354 second=377 amount=-1 +kerning first=8216 second=226 amount=-1 +kerning first=371 second=333 amount=-1 +kerning first=350 second=86 amount=-1 +kerning first=258 second=85 amount=-1 +kerning first=268 second=200 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=86 second=382 amount=-1 +kerning first=65 second=86 amount=-2 +kerning first=103 second=316 amount=-1 +kerning first=244 second=120 amount=-1 +kerning first=115 second=351 amount=-1 +kerning first=70 second=171 amount=-1 +kerning first=45 second=330 amount=-1 +kerning first=244 second=316 amount=-1 +kerning first=253 second=235 amount=-1 +kerning first=344 second=246 amount=-1 +kerning first=86 second=197 amount=-2 +kerning first=369 second=103 amount=-1 +kerning first=193 second=8221 amount=-1 +kerning first=229 second=8221 amount=-1 +kerning first=381 second=252 amount=-1 +kerning first=196 second=249 amount=-1 +kerning first=86 second=333 amount=-1 +kerning first=199 second=214 amount=-1 +kerning first=8217 second=111 amount=-1 +kerning first=283 second=103 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=106 second=103 amount=-1 +kerning first=76 second=379 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=8216 second=257 amount=-1 +kerning first=310 second=71 amount=-1 +kerning first=286 second=260 amount=-1 +kerning first=325 second=117 amount=-1 +kerning first=258 second=171 amount=-1 +kerning first=255 second=281 amount=-1 +kerning first=121 second=283 amount=-1 +kerning first=313 second=89 amount=-1 +kerning first=330 second=171 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=354 second=256 amount=-2 +kerning first=214 second=260 amount=-1 +kerning first=366 second=171 amount=-1 +kerning first=264 second=313 amount=-1 +kerning first=219 second=382 amount=-1 +kerning first=250 second=121 amount=-1 +kerning first=221 second=284 amount=-1 +kerning first=255 second=382 amount=-1 +kerning first=291 second=382 amount=-1 +kerning first=1059 second=1079 amount=-1 +kerning first=73 second=361 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=251 second=8221 amount=-1 +kerning first=110 second=8221 amount=-1 +kerning first=350 second=118 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=317 second=362 amount=-1 +kerning first=352 second=85 amount=-1 +kerning first=230 second=316 amount=-1 +kerning first=196 second=218 amount=-1 +kerning first=356 second=118 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=205 second=250 amount=-1 +kerning first=268 second=260 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=356 second=380 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=8216 second=235 amount=-1 +kerning first=321 second=84 amount=-1 +kerning first=354 second=227 amount=-1 +kerning first=86 second=8249 amount=-1 +kerning first=103 second=224 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=86 second=381 amount=-1 +kerning first=204 second=363 amount=-1 +kerning first=262 second=204 amount=-1 +kerning first=286 second=197 amount=-1 +kerning first=264 second=291 amount=-1 +kerning first=192 second=291 amount=-1 +kerning first=366 second=378 amount=-1 +kerning first=87 second=291 amount=-1 +kerning first=1046 second=1063 amount=-1 +kerning first=195 second=287 amount=-1 +kerning first=350 second=366 amount=-1 +kerning first=90 second=287 amount=-1 +kerning first=264 second=73 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=80 second=44 amount=-1 +kerning first=67 second=268 amount=-1 +kerning first=374 second=338 amount=-1 +kerning first=120 second=112 amount=-1 +kerning first=375 second=287 amount=-1 +kerning first=310 second=367 amount=-1 +kerning first=339 second=287 amount=-1 +kerning first=231 second=287 amount=-1 +kerning first=267 second=287 amount=-1 +kerning first=381 second=367 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=1059 second=1101 amount=-1 +kerning first=205 second=228 amount=-1 +kerning first=87 second=269 amount=-1 +kerning first=221 second=262 amount=-1 +kerning first=1061 second=1060 amount=-1 +kerning first=350 second=344 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=218 second=350 amount=-1 +kerning first=356 second=74 amount=-1 +kerning first=275 second=108 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=121 second=261 amount=-1 +kerning first=85 second=261 amount=-1 +kerning first=370 second=261 amount=-1 +kerning first=298 second=261 amount=-1 +kerning first=346 second=289 amount=-1 +kerning first=82 second=314 amount=-1 +kerning first=274 second=289 amount=-1 +kerning first=298 second=367 amount=-1 +kerning first=192 second=370 amount=-1 +kerning first=362 second=350 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=84 second=339 amount=-1 +kerning first=120 second=251 amount=-1 +kerning first=195 second=353 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=288 second=45 amount=-1 +kerning first=376 second=275 amount=-1 +kerning first=324 second=45 amount=-1 +kerning first=1061 second=1038 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=376 second=240 amount=-1 +kerning first=84 second=211 amount=-1 +kerning first=258 second=356 amount=-2 +kerning first=45 second=356 amount=-1 +kerning first=82 second=336 amount=-1 +kerning first=86 second=171 amount=-1 +kerning first=376 second=381 amount=-1 +kerning first=8220 second=224 amount=-1 +kerning first=84 second=352 amount=-1 +kerning first=350 second=194 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=258 second=255 amount=-1 +kerning first=232 second=119 amount=-1 +kerning first=287 second=226 amount=-1 +kerning first=45 second=255 amount=-1 +kerning first=375 second=113 amount=-1 +kerning first=246 second=44 amount=-1 +kerning first=258 second=81 amount=-1 +kerning first=196 second=119 amount=-1 +kerning first=323 second=226 amount=-1 +kerning first=376 second=119 amount=-1 +kerning first=221 second=227 amount=-1 +kerning first=117 second=253 amount=-1 +kerning first=248 second=314 amount=-1 +kerning first=303 second=113 amount=-1 +kerning first=231 second=225 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=255 second=243 amount=-1 +kerning first=67 second=290 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=354 second=331 amount=-1 +kerning first=376 second=79 amount=-1 +kerning first=366 second=193 amount=-1 +kerning first=66 second=103 amount=-1 +kerning first=256 second=8220 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=328 second=8220 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=222 second=193 amount=-1 +kerning first=268 second=79 amount=-1 +kerning first=202 second=289 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=199 second=192 amount=-1 +kerning first=253 second=8249 amount=-1 +kerning first=290 second=354 amount=-1 +kerning first=218 second=259 amount=-1 +kerning first=264 second=207 amount=-1 +kerning first=84 second=99 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=317 second=122 amount=-1 +kerning first=1043 second=1089 amount=-1 +kerning first=87 second=377 amount=-1 +kerning first=291 second=316 amount=-1 +kerning first=255 second=316 amount=-1 +kerning first=356 second=230 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=368 second=346 amount=-1 +kerning first=363 second=316 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=260 second=346 amount=-1 +kerning first=85 second=83 amount=-1 +kerning first=231 second=375 amount=-1 +kerning first=327 second=259 amount=-1 +kerning first=267 second=375 amount=-1 +kerning first=291 second=259 amount=-1 +kerning first=262 second=83 amount=-1 +kerning first=255 second=259 amount=-1 +kerning first=370 second=83 amount=-1 +kerning first=339 second=375 amount=-1 +kerning first=219 second=259 amount=-1 +kerning first=1059 second=1107 amount=-1 +kerning first=90 second=375 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=8250 second=289 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=288 second=197 amount=-1 +kerning first=236 second=103 amount=-1 +kerning first=66 second=331 amount=-1 +kerning first=376 second=196 amount=-2 +kerning first=350 second=82 amount=-1 +kerning first=200 second=103 amount=-1 +kerning first=268 second=196 amount=-1 +kerning first=268 second=77 amount=-1 +kerning first=356 second=336 amount=-1 +kerning first=87 second=335 amount=-1 +kerning first=350 second=278 amount=-1 +kerning first=229 second=8217 amount=-1 +kerning first=193 second=8217 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=1118 second=1103 amount=-1 +kerning first=209 second=361 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=232 second=253 amount=-1 +kerning first=258 second=334 amount=-1 +kerning first=375 second=353 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=289 second=115 amount=-1 +kerning first=347 second=121 amount=-1 +kerning first=256 second=374 amount=-2 +kerning first=275 second=121 amount=-1 +kerning first=87 second=339 amount=-1 +kerning first=245 second=318 amount=-1 +kerning first=281 second=318 amount=-1 +kerning first=8216 second=281 amount=-1 +kerning first=221 second=328 amount=-1 +kerning first=225 second=121 amount=-1 +kerning first=8250 second=80 amount=-1 +kerning first=120 second=121 amount=-1 +kerning first=87 second=326 amount=-1 +kerning first=277 second=316 amount=-1 +kerning first=84 second=121 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=221 second=196 amount=-2 +kerning first=288 second=89 amount=-1 +kerning first=376 second=231 amount=-1 +kerning first=302 second=228 amount=-1 +kerning first=89 second=228 amount=-1 +kerning first=281 second=375 amount=-1 +kerning first=253 second=333 amount=-1 +kerning first=317 second=375 amount=-1 +kerning first=353 second=375 amount=-1 +kerning first=317 second=221 amount=-1 +kerning first=266 second=260 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=262 second=323 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=311 second=99 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=245 second=375 amount=-1 +kerning first=267 second=118 amount=-1 +kerning first=205 second=227 amount=-1 +kerning first=87 second=379 amount=-1 +kerning first=262 second=270 amount=-1 +kerning first=310 second=284 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=1027 second=1103 amount=-1 +kerning first=200 second=291 amount=-1 +kerning first=66 second=110 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=330 second=103 amount=-1 +kerning first=366 second=103 amount=-1 +kerning first=258 second=103 amount=-1 +kerning first=1042 second=1038 amount=-1 +kerning first=120 second=118 amount=-1 +kerning first=260 second=214 amount=-1 +kerning first=254 second=253 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=66 second=8217 amount=-1 +kerning first=269 second=224 amount=-1 +kerning first=67 second=334 amount=-1 +kerning first=232 second=44 amount=-1 +kerning first=379 second=249 amount=-1 +kerning first=102 second=8217 amount=1 +kerning first=371 second=232 amount=-1 +kerning first=305 second=171 amount=-1 +kerning first=71 second=46 amount=-1 +kerning first=206 second=117 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=376 second=284 amount=-1 +kerning first=8222 second=370 amount=-1 +kerning first=330 second=365 amount=-1 +kerning first=196 second=284 amount=-1 +kerning first=344 second=264 amount=-1 +kerning first=266 second=382 amount=-1 +kerning first=1046 second=1054 amount=-1 +kerning first=374 second=382 amount=-1 +kerning first=350 second=203 amount=-1 +kerning first=369 second=121 amount=-1 +kerning first=268 second=284 amount=-1 +kerning first=333 second=121 amount=-1 +kerning first=256 second=71 amount=-1 +kerning first=106 second=255 amount=-1 +kerning first=364 second=287 amount=-1 +kerning first=256 second=287 amount=-1 +kerning first=287 second=257 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=266 second=206 amount=-1 +kerning first=220 second=287 amount=-1 +kerning first=268 second=209 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=377 second=378 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=45 second=87 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=226 second=8221 amount=-1 +kerning first=74 second=257 amount=-1 +kerning first=8220 second=281 amount=-1 +kerning first=376 second=262 amount=-1 +kerning first=268 second=262 amount=-1 +kerning first=375 second=227 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=332 second=192 amount=-1 +kerning first=368 second=192 amount=-1 +kerning first=352 second=356 amount=-1 +kerning first=253 second=269 amount=-1 +kerning first=288 second=8249 amount=-1 +kerning first=258 second=290 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=324 second=8249 amount=-1 +kerning first=1114 second=1118 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=83 second=192 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=346 second=298 amount=-1 +kerning first=260 second=84 amount=-2 +kerning first=197 second=268 amount=-1 +kerning first=115 second=115 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=83 second=84 amount=-1 +kerning first=231 second=108 amount=-1 +kerning first=325 second=291 amount=-1 +kerning first=1047 second=1038 amount=-1 +kerning first=253 second=291 amount=-1 +kerning first=84 second=90 amount=-1 +kerning first=217 second=291 amount=-1 +kerning first=76 second=291 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=73 second=251 amount=-1 +kerning first=218 second=46 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=364 second=256 amount=-1 +kerning first=354 second=337 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=286 second=198 amount=-1 +kerning first=120 second=361 amount=-1 +kerning first=214 second=198 amount=-1 +kerning first=269 second=103 amount=-1 +kerning first=258 second=268 amount=-1 +kerning first=350 second=73 amount=-1 +kerning first=298 second=226 amount=-1 +kerning first=89 second=279 amount=-1 +kerning first=370 second=226 amount=-1 +kerning first=217 second=194 amount=-1 +kerning first=257 second=119 amount=-1 +kerning first=313 second=219 amount=-1 +kerning first=221 second=119 amount=-1 +kerning first=325 second=361 amount=-1 +kerning first=253 second=335 amount=-1 +kerning first=344 second=374 amount=-1 +kerning first=77 second=363 amount=-1 +kerning first=365 second=119 amount=-1 +kerning first=268 second=66 amount=-1 +kerning first=256 second=353 amount=-1 +kerning first=115 second=353 amount=-1 +kerning first=352 second=303 amount=-1 +kerning first=323 second=367 amount=-1 +kerning first=72 second=289 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=376 second=328 amount=-1 +kerning first=249 second=289 amount=-1 +kerning first=346 second=89 amount=-1 +kerning first=256 second=212 amount=-1 +kerning first=1046 second=1098 amount=-1 +kerning first=204 second=257 amount=-1 +kerning first=325 second=226 amount=-1 +kerning first=84 second=286 amount=-1 +kerning first=266 second=338 amount=-1 +kerning first=99 second=257 amount=-1 +kerning first=352 second=237 amount=-1 +kerning first=195 second=8220 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=8222 second=368 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=241 second=45 amount=-1 +kerning first=344 second=211 amount=-1 +kerning first=354 second=97 amount=-1 +kerning first=221 second=240 amount=-1 +kerning first=8250 second=364 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=197 second=356 amount=-2 +kerning first=8250 second=298 amount=-1 +kerning first=356 second=261 amount=-1 +kerning first=85 second=226 amount=-1 +kerning first=283 second=255 amount=-1 +kerning first=264 second=304 amount=-1 +kerning first=324 second=8221 amount=-1 +kerning first=121 second=226 amount=-1 +kerning first=380 second=112 amount=-1 +kerning first=266 second=77 amount=-1 +kerning first=339 second=104 amount=-1 +kerning first=8220 second=193 amount=-2 +kerning first=381 second=380 amount=-1 +kerning first=66 second=253 amount=-1 +kerning first=121 second=248 amount=-1 +kerning first=113 second=8217 amount=-1 +kerning first=243 second=253 amount=-1 +kerning first=315 second=253 amount=-1 +kerning first=279 second=253 amount=-1 +kerning first=1059 second=1057 amount=-1 +kerning first=356 second=283 amount=-1 +kerning first=351 second=253 amount=-1 +kerning first=192 second=86 amount=-2 +kerning first=212 second=65 amount=-1 +kerning first=87 second=260 amount=-2 +kerning first=197 second=334 amount=-1 +kerning first=356 second=65 amount=-2 +kerning first=333 second=46 amount=-1 +kerning first=313 second=382 amount=-1 +kerning first=336 second=260 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=107 second=283 amount=-1 +kerning first=84 second=264 amount=-1 +kerning first=255 second=347 amount=-1 +kerning first=234 second=318 amount=-1 +kerning first=264 second=260 amount=-1 +kerning first=291 second=347 amount=-1 +kerning first=8218 second=366 amount=-1 +kerning first=253 second=45 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=78 second=369 amount=-1 +kerning first=1118 second=1076 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=327 second=369 amount=-1 +kerning first=346 second=364 amount=-1 +kerning first=264 second=282 amount=-1 +kerning first=284 second=87 amount=-1 +kerning first=118 second=230 amount=-1 +kerning first=346 second=201 amount=-1 +kerning first=376 second=100 amount=-1 +kerning first=115 second=375 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=221 second=381 amount=-1 +kerning first=344 second=352 amount=-1 +kerning first=71 second=87 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.png new file mode 100644 index 000000000..b6f222302 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16I.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad5555.fnt b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad5555.fnt new file mode 100644 index 000000000..4c7d888a2 --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad5555.fnt @@ -0,0 +1,8030 @@ +info face="Free Serif" size=16 bold=0 italic=1 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=5,5,5,5 spacing=-2,-2 +common lineHeight=30 base=16 scaleW=512 scaleH=512 pages=2 packed=0 +page id=0 file="FreeSerif16Ipad55551.png" +page id=1 file="FreeSerif16Ipad55552.png" +chars count=821 +char id=0 x=488 y=407 width=21 height=21 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=13 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=8 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=33 x=220 y=252 width=14 height=22 xoffset=-3 yoffset=0 xadvance=13 page=0 chnl=0 +char id=35 x=29 y=429 width=21 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=36 x=291 y=131 width=19 height=24 xoffset=-5 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=37 x=234 y=252 width=22 height=22 xoffset=-3 yoffset=0 xadvance=21 page=0 chnl=0 +char id=38 x=256 y=252 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=39 x=498 y=429 width=12 height=15 xoffset=-3 yoffset=0 xadvance=11 page=0 chnl=0 +char id=40 x=310 y=131 width=17 height=24 xoffset=-4 yoffset=0 xadvance=13 page=0 chnl=0 +char id=41 x=327 y=131 width=17 height=24 xoffset=-6 yoffset=0 xadvance=13 page=0 chnl=0 +char id=47 x=278 y=252 width=20 height=22 xoffset=-6 yoffset=0 xadvance=12 page=0 chnl=0 +char id=48 x=298 y=252 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=49 x=50 y=429 width=16 height=21 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=50 x=66 y=429 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=51 x=316 y=252 width=18 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=52 x=85 y=429 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=53 x=334 y=252 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=54 x=353 y=252 width=20 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=55 x=373 y=252 width=20 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=56 x=393 y=252 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=57 x=411 y=252 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=59 x=496 y=319 width=15 height=21 xoffset=-5 yoffset=3 xadvance=12 page=0 chnl=0 +char id=63 x=430 y=252 width=18 height=22 xoffset=-3 yoffset=0 xadvance=15 page=0 chnl=0 +char id=64 x=448 y=252 width=23 height=22 xoffset=-3 yoffset=0 xadvance=23 page=0 chnl=0 +char id=65 x=104 y=429 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=66 x=126 y=429 width=21 height=21 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=67 x=471 y=252 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=68 x=147 y=429 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=69 x=169 y=429 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=70 x=190 y=429 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=71 x=0 y=275 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=72 x=212 y=429 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=73 x=237 y=429 width=18 height=21 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=74 x=492 y=252 width=19 height=22 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=75 x=255 y=429 width=23 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=76 x=278 y=429 width=20 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=77 x=298 y=429 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=0 chnl=0 +char id=78 x=22 y=275 width=25 height=22 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=79 x=47 y=275 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=80 x=325 y=429 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=81 x=344 y=131 width=22 height=24 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=82 x=347 y=429 width=21 height=21 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=83 x=69 y=275 width=19 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=84 x=368 y=429 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=0 chnl=0 +char id=85 x=88 y=275 width=23 height=22 xoffset=-3 yoffset=0 xadvance=20 page=0 chnl=0 +char id=86 x=111 y=275 width=22 height=22 xoffset=-3 yoffset=0 xadvance=20 page=0 chnl=0 +char id=87 x=133 y=275 width=27 height=22 xoffset=-4 yoffset=0 xadvance=23 page=0 chnl=0 +char id=88 x=390 y=429 width=24 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=89 x=414 y=429 width=23 height=21 xoffset=-3 yoffset=0 xadvance=20 page=0 chnl=0 +char id=90 x=437 y=429 width=23 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=91 x=366 y=131 width=17 height=24 xoffset=-4 yoffset=0 xadvance=13 page=0 chnl=0 +char id=92 x=160 y=275 width=14 height=22 xoffset=-4 yoffset=0 xadvance=13 page=0 chnl=0 +char id=93 x=383 y=131 width=17 height=24 xoffset=-6 yoffset=0 xadvance=13 page=0 chnl=0 +char id=98 x=174 y=275 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=100 x=192 y=275 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=102 x=460 y=429 width=20 height=21 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=103 x=211 y=275 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=104 x=480 y=429 width=18 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=105 x=0 y=451 width=15 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=106 x=460 y=30 width=18 height=25 xoffset=-7 yoffset=0 xadvance=12 page=0 chnl=0 +char id=107 x=15 y=451 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=108 x=34 y=451 width=15 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=109 x=0 y=493 width=23 height=18 xoffset=-5 yoffset=3 xadvance=20 page=0 chnl=0 +char id=110 x=23 y=493 width=18 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=112 x=230 y=275 width=20 height=22 xoffset=-6 yoffset=3 xadvance=16 page=0 chnl=0 +char id=113 x=250 y=275 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=114 x=41 y=493 width=18 height=18 xoffset=-5 yoffset=3 xadvance=13 page=0 chnl=0 +char id=116 x=49 y=451 width=16 height=21 xoffset=-4 yoffset=1 xadvance=12 page=0 chnl=0 +char id=120 x=59 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=121 x=269 y=275 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=122 x=78 y=493 width=18 height=18 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=123 x=400 y=131 width=16 height=24 xoffset=-3 yoffset=0 xadvance=16 page=0 chnl=0 +char id=124 x=288 y=275 width=14 height=22 xoffset=-4 yoffset=0 xadvance=11 page=0 chnl=0 +char id=125 x=416 y=131 width=16 height=24 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=161 x=302 y=275 width=15 height=22 xoffset=-5 yoffset=3 xadvance=13 page=0 chnl=0 +char id=162 x=143 y=228 width=18 height=23 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=163 x=317 y=275 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=165 x=65 y=451 width=23 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=166 x=336 y=275 width=14 height=22 xoffset=-4 yoffset=0 xadvance=11 page=0 chnl=0 +char id=167 x=432 y=131 width=17 height=24 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=169 x=161 y=228 width=23 height=23 xoffset=-4 yoffset=-1 xadvance=21 page=0 chnl=0 +char id=174 x=184 y=228 width=23 height=23 xoffset=-4 yoffset=-1 xadvance=21 page=0 chnl=0 +char id=177 x=88 y=451 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=181 x=350 y=275 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=182 x=449 y=131 width=20 height=24 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=188 x=369 y=275 width=21 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=189 x=390 y=275 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=190 x=412 y=275 width=21 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=191 x=433 y=275 width=16 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=192 x=478 y=30 width=22 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=193 x=0 y=56 width=23 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=194 x=23 y=56 width=22 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=195 x=469 y=131 width=22 height=24 xoffset=-5 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=196 x=0 y=156 width=22 height=24 xoffset=-5 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=197 x=45 y=56 width=22 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=198 x=108 y=451 width=25 height=21 xoffset=-5 yoffset=0 xadvance=22 page=0 chnl=0 +char id=199 x=67 y=56 width=21 height=25 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=200 x=88 y=56 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=201 x=109 y=56 width=23 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=202 x=132 y=56 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=203 x=22 y=156 width=23 height=24 xoffset=-5 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=204 x=153 y=56 width=20 height=25 xoffset=-5 yoffset=-4 xadvance=13 page=0 chnl=0 +char id=205 x=173 y=56 width=24 height=25 xoffset=-5 yoffset=-4 xadvance=13 page=0 chnl=0 +char id=206 x=197 y=56 width=20 height=25 xoffset=-5 yoffset=-4 xadvance=13 page=0 chnl=0 +char id=207 x=45 y=156 width=22 height=24 xoffset=-5 yoffset=-3 xadvance=13 page=0 chnl=0 +char id=208 x=133 y=451 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=209 x=217 y=56 width=25 height=25 xoffset=-5 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=210 x=169 y=0 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=211 x=191 y=0 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=212 x=213 y=0 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=213 x=242 y=56 width=22 height=25 xoffset=-4 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=214 x=264 y=56 width=22 height=25 xoffset=-4 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=215 x=96 y=493 width=20 height=18 xoffset=-5 yoffset=3 xadvance=17 page=0 chnl=0 +char id=216 x=67 y=156 width=23 height=24 xoffset=-5 yoffset=-1 xadvance=20 page=0 chnl=0 +char id=217 x=235 y=0 width=23 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=218 x=258 y=0 width=23 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=219 x=281 y=0 width=23 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=220 x=286 y=56 width=23 height=25 xoffset=-3 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=221 x=309 y=56 width=23 height=25 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=222 x=155 y=451 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=223 x=449 y=275 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=224 x=468 y=275 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=225 x=486 y=275 width=22 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=226 x=0 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=227 x=18 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=228 x=175 y=451 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=229 x=207 y=228 width=18 height=23 xoffset=-5 yoffset=-1 xadvance=15 page=0 chnl=0 +char id=231 x=36 y=297 width=18 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=232 x=54 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=233 x=72 y=297 width=22 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=234 x=94 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=235 x=197 y=451 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=236 x=219 y=451 width=19 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=237 x=238 y=451 width=23 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=238 x=261 y=451 width=19 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=240 x=112 y=297 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=241 x=280 y=451 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=242 x=131 y=297 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=243 x=149 y=297 width=22 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=244 x=171 y=297 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=245 x=189 y=297 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=246 x=299 y=451 width=20 height=21 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=248 x=319 y=451 width=19 height=21 xoffset=-5 yoffset=2 xadvance=16 page=0 chnl=0 +char id=249 x=207 y=297 width=17 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=250 x=224 y=297 width=22 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=251 x=246 y=297 width=17 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=252 x=338 y=451 width=20 height=21 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=253 x=332 y=56 width=23 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=254 x=355 y=56 width=20 height=25 xoffset=-6 yoffset=0 xadvance=16 page=0 chnl=0 +char id=255 x=375 y=56 width=21 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=256 x=225 y=228 width=23 height=23 xoffset=-5 yoffset=-2 xadvance=20 page=0 chnl=0 +char id=257 x=358 y=451 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=258 x=396 y=56 width=22 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=259 x=263 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=260 x=90 y=156 width=23 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=261 x=380 y=451 width=18 height=21 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=262 x=304 y=0 width=24 height=26 xoffset=-4 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=263 x=281 y=297 width=23 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=264 x=328 y=0 width=21 height=26 xoffset=-4 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=265 x=304 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=266 x=418 y=56 width=21 height=25 xoffset=-4 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=267 x=398 y=451 width=18 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=268 x=349 y=0 width=21 height=26 xoffset=-4 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=269 x=322 y=297 width=20 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=270 x=439 y=56 width=22 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=271 x=342 y=297 width=27 height=22 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=272 x=416 y=451 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=273 x=369 y=297 width=21 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=274 x=248 y=228 width=21 height=23 xoffset=-5 yoffset=-2 xadvance=18 page=0 chnl=0 +char id=275 x=438 y=451 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=276 x=461 y=56 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=277 x=390 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=278 x=113 y=156 width=21 height=24 xoffset=-5 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=279 x=460 y=451 width=18 height=21 xoffset=-5 yoffset=1 xadvance=15 page=0 chnl=0 +char id=280 x=134 y=156 width=21 height=24 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=281 x=478 y=451 width=18 height=21 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=282 x=482 y=56 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=283 x=408 y=297 width=18 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=284 x=370 y=0 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=285 x=0 y=81 width=19 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=286 x=392 y=0 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=287 x=19 y=81 width=19 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=288 x=38 y=81 width=22 height=25 xoffset=-4 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=289 x=491 y=131 width=19 height=24 xoffset=-5 yoffset=1 xadvance=16 page=0 chnl=0 +char id=290 x=414 y=0 width=22 height=26 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=291 x=67 y=0 width=19 height=27 xoffset=-5 yoffset=-2 xadvance=16 page=0 chnl=0 +char id=292 x=60 y=81 width=25 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=293 x=85 y=81 width=19 height=25 xoffset=-5 yoffset=-4 xadvance=16 page=0 chnl=0 +char id=294 x=0 y=472 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=295 x=25 y=472 width=18 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=296 x=155 y=156 width=20 height=24 xoffset=-5 yoffset=-3 xadvance=13 page=0 chnl=0 +char id=298 x=269 y=228 width=24 height=23 xoffset=-5 yoffset=-2 xadvance=13 page=0 chnl=0 +char id=300 x=104 y=81 width=20 height=25 xoffset=-5 yoffset=-4 xadvance=13 page=0 chnl=0 +char id=301 x=43 y=472 width=19 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=302 x=175 y=156 width=18 height=24 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=303 x=193 y=156 width=15 height=24 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=304 x=208 y=156 width=18 height=24 xoffset=-5 yoffset=-3 xadvance=13 page=0 chnl=0 +char id=305 x=116 y=493 width=15 height=18 xoffset=-5 yoffset=3 xadvance=12 page=0 chnl=0 +char id=306 x=426 y=297 width=24 height=22 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=307 x=124 y=81 width=19 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=308 x=436 y=0 width=21 height=26 xoffset=-5 yoffset=-4 xadvance=14 page=0 chnl=0 +char id=309 x=143 y=81 width=22 height=25 xoffset=-7 yoffset=0 xadvance=12 page=0 chnl=0 +char id=310 x=457 y=0 width=23 height=26 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=311 x=480 y=0 width=19 height=26 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=312 x=131 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=313 x=165 y=81 width=20 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=314 x=185 y=81 width=24 height=25 xoffset=-5 yoffset=-4 xadvance=12 page=0 chnl=0 +char id=315 x=0 y=30 width=20 height=26 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=316 x=20 y=30 width=15 height=26 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=317 x=62 y=472 width=23 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=318 x=85 y=472 width=23 height=21 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=319 x=108 y=472 width=20 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=320 x=128 y=472 width=17 height=21 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=321 x=145 y=472 width=20 height=21 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=322 x=165 y=472 width=17 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=323 x=35 y=30 width=25 height=26 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=324 x=182 y=472 width=23 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=325 x=60 y=30 width=25 height=26 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=326 x=293 y=228 width=18 height=23 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=327 x=85 y=30 width=25 height=26 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=328 x=205 y=472 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=329 x=224 y=472 width=18 height=21 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=330 x=450 y=297 width=22 height=22 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=331 x=472 y=297 width=18 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=332 x=226 y=156 width=22 height=24 xoffset=-4 yoffset=-2 xadvance=20 page=0 chnl=0 +char id=333 x=242 y=472 width=20 height=21 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=334 x=110 y=30 width=22 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=335 x=490 y=297 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=336 x=132 y=30 width=29 height=26 xoffset=-4 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=337 x=0 y=319 width=27 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=338 x=27 y=319 width=26 height=22 xoffset=-4 yoffset=0 xadvance=22 page=0 chnl=0 +char id=340 x=209 y=81 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=341 x=262 y=472 width=22 height=21 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=342 x=161 y=30 width=21 height=26 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=343 x=311 y=228 width=18 height=23 xoffset=-5 yoffset=3 xadvance=13 page=0 chnl=0 +char id=344 x=230 y=81 width=21 height=25 xoffset=-5 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=345 x=284 y=472 width=19 height=21 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=346 x=182 y=30 width=23 height=26 xoffset=-4 yoffset=-4 xadvance=17 page=0 chnl=0 +char id=347 x=53 y=319 width=23 height=22 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=348 x=205 y=30 width=19 height=26 xoffset=-4 yoffset=-4 xadvance=17 page=0 chnl=0 +char id=349 x=76 y=319 width=18 height=22 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=350 x=251 y=81 width=19 height=25 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=351 x=94 y=319 width=17 height=22 xoffset=-5 yoffset=3 xadvance=14 page=0 chnl=0 +char id=352 x=224 y=30 width=19 height=26 xoffset=-4 yoffset=-4 xadvance=17 page=0 chnl=0 +char id=353 x=111 y=319 width=19 height=22 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=354 x=270 y=81 width=22 height=25 xoffset=-4 yoffset=0 xadvance=18 page=0 chnl=0 +char id=355 x=248 y=156 width=17 height=24 xoffset=-5 yoffset=1 xadvance=12 page=0 chnl=0 +char id=356 x=292 y=81 width=22 height=25 xoffset=-4 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=357 x=130 y=319 width=23 height=22 xoffset=-4 yoffset=0 xadvance=15 page=0 chnl=0 +char id=358 x=303 y=472 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=0 chnl=0 +char id=359 x=325 y=472 width=17 height=21 xoffset=-5 yoffset=1 xadvance=12 page=0 chnl=0 +char id=360 x=314 y=81 width=23 height=25 xoffset=-3 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=361 x=342 y=472 width=18 height=21 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=362 x=265 y=156 width=23 height=24 xoffset=-3 yoffset=-2 xadvance=20 page=0 chnl=0 +char id=363 x=360 y=472 width=20 height=21 xoffset=-4 yoffset=1 xadvance=16 page=0 chnl=0 +char id=364 x=243 y=30 width=23 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=365 x=153 y=319 width=18 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=366 x=266 y=30 width=23 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=367 x=329 y=228 width=17 height=23 xoffset=-4 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=368 x=289 y=30 width=28 height=26 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=369 x=171 y=319 width=27 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=370 x=288 y=156 width=23 height=24 xoffset=-3 yoffset=0 xadvance=20 page=0 chnl=0 +char id=371 x=380 y=472 width=17 height=21 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=372 x=317 y=30 width=27 height=26 xoffset=-4 yoffset=-4 xadvance=23 page=0 chnl=0 +char id=373 x=198 y=319 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=374 x=337 y=81 width=23 height=25 xoffset=-3 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=375 x=360 y=81 width=19 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=376 x=311 y=156 width=23 height=24 xoffset=-3 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=377 x=379 y=81 width=23 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=378 x=397 y=472 width=22 height=21 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=379 x=334 y=156 width=23 height=24 xoffset=-5 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=381 x=402 y=81 width=23 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=382 x=419 y=472 width=18 height=21 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=383 x=437 y=472 width=20 height=21 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=894 x=457 y=472 width=17 height=21 xoffset=-5 yoffset=3 xadvance=12 page=0 chnl=0 +char id=902 x=220 y=319 width=22 height=22 xoffset=-5 yoffset=-1 xadvance=20 page=0 chnl=0 +char id=904 x=242 y=319 width=27 height=22 xoffset=-4 yoffset=-1 xadvance=21 page=0 chnl=0 +char id=905 x=269 y=319 width=30 height=22 xoffset=-4 yoffset=-1 xadvance=22 page=0 chnl=0 +char id=906 x=299 y=319 width=24 height=22 xoffset=-4 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=908 x=346 y=228 width=26 height=23 xoffset=-4 yoffset=-1 xadvance=21 page=0 chnl=0 +char id=910 x=323 y=319 width=26 height=22 xoffset=-4 yoffset=-1 xadvance=22 page=0 chnl=0 +char id=911 x=349 y=319 width=24 height=22 xoffset=-4 yoffset=-1 xadvance=22 page=0 chnl=0 +char id=912 x=357 y=156 width=16 height=24 xoffset=-5 yoffset=-2 xadvance=13 page=0 chnl=0 +char id=913 x=474 y=472 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=920 x=373 y=319 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=925 x=395 y=319 width=25 height=22 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=927 x=420 y=319 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=938 x=373 y=156 width=22 height=24 xoffset=-5 yoffset=-3 xadvance=13 page=0 chnl=0 +char id=939 x=395 y=156 width=22 height=24 xoffset=-3 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=940 x=417 y=156 width=19 height=24 xoffset=-4 yoffset=-2 xadvance=17 page=0 chnl=0 +char id=941 x=436 y=156 width=18 height=24 xoffset=-5 yoffset=-2 xadvance=15 page=0 chnl=0 +char id=942 x=86 y=0 width=18 height=27 xoffset=-4 yoffset=-2 xadvance=17 page=0 chnl=0 +char id=943 x=454 y=156 width=15 height=24 xoffset=-4 yoffset=-2 xadvance=13 page=0 chnl=0 +char id=944 x=372 y=228 width=18 height=23 xoffset=-4 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=946 x=425 y=81 width=19 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=947 x=442 y=319 width=18 height=22 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=948 x=460 y=319 width=18 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=950 x=344 y=30 width=18 height=26 xoffset=-4 yoffset=-1 xadvance=15 page=0 chnl=0 +char id=951 x=478 y=319 width=18 height=22 xoffset=-4 yoffset=3 xadvance=17 page=0 chnl=0 +char id=952 x=0 y=341 width=18 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=954 x=150 y=493 width=19 height=18 xoffset=-4 yoffset=3 xadvance=17 page=0 chnl=0 +char id=955 x=18 y=341 width=18 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=956 x=36 y=341 width=19 height=22 xoffset=-5 yoffset=3 xadvance=17 page=0 chnl=0 +char id=957 x=169 y=493 width=18 height=18 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=958 x=444 y=81 width=19 height=25 xoffset=-5 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=961 x=55 y=341 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=962 x=74 y=341 width=17 height=22 xoffset=-4 yoffset=3 xadvance=15 page=0 chnl=0 +char id=966 x=91 y=341 width=20 height=22 xoffset=-4 yoffset=3 xadvance=18 page=0 chnl=0 +char id=967 x=111 y=341 width=20 height=22 xoffset=-6 yoffset=3 xadvance=16 page=0 chnl=0 +char id=968 x=469 y=156 width=21 height=24 xoffset=-4 yoffset=1 xadvance=19 page=0 chnl=0 +char id=970 x=131 y=341 width=19 height=22 xoffset=-4 yoffset=0 xadvance=13 page=0 chnl=0 +char id=971 x=150 y=341 width=20 height=22 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=972 x=490 y=156 width=20 height=24 xoffset=-4 yoffset=-2 xadvance=16 page=0 chnl=0 +char id=973 x=390 y=228 width=18 height=23 xoffset=-4 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=974 x=408 y=228 width=21 height=23 xoffset=-4 yoffset=-1 xadvance=19 page=0 chnl=0 +char id=976 x=429 y=228 width=18 height=23 xoffset=-4 yoffset=-1 xadvance=17 page=0 chnl=0 +char id=977 x=447 y=228 width=21 height=23 xoffset=-4 yoffset=-1 xadvance=17 page=0 chnl=0 +char id=979 x=170 y=341 width=25 height=22 xoffset=-4 yoffset=-1 xadvance=21 page=0 chnl=0 +char id=980 x=0 y=180 width=22 height=24 xoffset=-4 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=981 x=22 y=180 width=20 height=24 xoffset=-4 yoffset=1 xadvance=18 page=0 chnl=0 +char id=985 x=195 y=341 width=18 height=22 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=987 x=213 y=341 width=18 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=989 x=231 y=341 width=21 height=22 xoffset=-6 yoffset=3 xadvance=15 page=0 chnl=0 +char id=990 x=252 y=341 width=20 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=991 x=463 y=81 width=16 height=25 xoffset=-4 yoffset=-1 xadvance=14 page=0 chnl=0 +char id=993 x=479 y=81 width=20 height=25 xoffset=-5 yoffset=-1 xadvance=17 page=0 chnl=0 +char id=994 x=0 y=106 width=27 height=25 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=995 x=272 y=341 width=22 height=22 xoffset=-5 yoffset=3 xadvance=19 page=0 chnl=0 +char id=996 x=42 y=180 width=21 height=24 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=997 x=294 y=341 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=998 x=63 y=180 width=20 height=24 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1000 x=468 y=228 width=20 height=23 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1002 x=313 y=341 width=23 height=22 xoffset=-5 yoffset=0 xadvance=21 page=0 chnl=0 +char id=1004 x=83 y=180 width=23 height=24 xoffset=-4 yoffset=-2 xadvance=17 page=0 chnl=0 +char id=1006 x=362 y=30 width=20 height=26 xoffset=-4 yoffset=-2 xadvance=18 page=0 chnl=0 +char id=1007 x=106 y=180 width=17 height=24 xoffset=-4 yoffset=1 xadvance=15 page=0 chnl=0 +char id=1009 x=336 y=341 width=19 height=22 xoffset=-5 yoffset=3 xadvance=17 page=0 chnl=0 +char id=1011 x=27 y=106 width=18 height=25 xoffset=-7 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1012 x=355 y=341 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1016 x=45 y=106 width=18 height=25 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1017 x=377 y=341 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1019 x=398 y=341 width=22 height=22 xoffset=-5 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1020 x=420 y=341 width=22 height=22 xoffset=-7 yoffset=3 xadvance=17 page=0 chnl=0 +char id=1021 x=442 y=341 width=22 height=22 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1022 x=464 y=341 width=21 height=22 xoffset=-4 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1023 x=485 y=341 width=22 height=22 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1024 x=63 y=106 width=25 height=25 xoffset=-5 yoffset=-4 xadvance=18 page=0 chnl=0 +char id=1025 x=123 y=180 width=25 height=24 xoffset=-5 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=1026 x=0 y=363 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1027 x=88 y=106 width=24 height=25 xoffset=-5 yoffset=-4 xadvance=17 page=0 chnl=0 +char id=1028 x=22 y=363 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1029 x=43 y=363 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1031 x=148 y=180 width=23 height=24 xoffset=-5 yoffset=-3 xadvance=13 page=0 chnl=0 +char id=1032 x=62 y=363 width=19 height=22 xoffset=-5 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1033 x=81 y=363 width=26 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1035 x=107 y=363 width=22 height=22 xoffset=-4 yoffset=0 xadvance=21 page=0 chnl=0 +char id=1036 x=112 y=106 width=24 height=25 xoffset=-5 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=1037 x=136 y=106 width=25 height=25 xoffset=-5 yoffset=-4 xadvance=20 page=0 chnl=0 +char id=1038 x=161 y=106 width=25 height=25 xoffset=-4 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1039 x=171 y=180 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1044 x=196 y=180 width=24 height=24 xoffset=-6 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1047 x=129 y=363 width=21 height=22 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1049 x=220 y=180 width=25 height=24 xoffset=-5 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=1051 x=150 y=363 width=24 height=22 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1054 x=174 y=363 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1057 x=196 y=363 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1059 x=217 y=363 width=25 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1062 x=245 y=180 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1065 x=270 y=180 width=29 height=24 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1069 x=242 y=363 width=22 height=22 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1070 x=264 y=363 width=27 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1073 x=488 y=228 width=18 height=23 xoffset=-4 yoffset=-1 xadvance=16 page=0 chnl=0 +char id=1074 x=187 y=493 width=18 height=18 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1075 x=205 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=14 page=0 chnl=0 +char id=1078 x=224 y=493 width=22 height=18 xoffset=-5 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1080 x=246 y=493 width=21 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1082 x=267 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1085 x=286 y=493 width=21 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1087 x=307 y=493 width=21 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1088 x=291 y=363 width=20 height=22 xoffset=-6 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1090 x=328 y=493 width=17 height=18 xoffset=-4 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1091 x=311 y=363 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1092 x=186 y=106 width=22 height=25 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1093 x=345 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1095 x=364 y=493 width=20 height=18 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1096 x=384 y=493 width=25 height=18 xoffset=-5 yoffset=3 xadvance=20 page=0 chnl=0 +char id=1098 x=409 y=493 width=18 height=18 xoffset=-4 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1099 x=427 y=493 width=23 height=18 xoffset=-5 yoffset=3 xadvance=18 page=0 chnl=0 +char id=1100 x=450 y=493 width=17 height=18 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1103 x=467 y=493 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1104 x=330 y=363 width=19 height=22 xoffset=-4 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1105 x=349 y=363 width=21 height=22 xoffset=-4 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1106 x=208 y=106 width=18 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1110 x=496 y=451 width=15 height=21 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1112 x=226 y=106 width=18 height=25 xoffset=-7 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1114 x=486 y=493 width=22 height=18 xoffset=-5 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1118 x=244 y=106 width=24 height=25 xoffset=-6 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1120 x=370 y=363 width=26 height=22 xoffset=-4 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1124 x=396 y=363 width=28 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1134 x=46 y=0 width=21 height=28 xoffset=-5 yoffset=-3 xadvance=16 page=0 chnl=0 +char id=1135 x=0 y=252 width=19 height=23 xoffset=-5 yoffset=1 xadvance=14 page=0 chnl=0 +char id=1137 x=268 y=106 width=21 height=25 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1138 x=424 y=363 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1140 x=446 y=363 width=23 height=22 xoffset=-3 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1142 x=289 y=106 width=25 height=25 xoffset=-3 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=1143 x=469 y=363 width=23 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1144 x=314 y=106 width=31 height=25 xoffset=-4 yoffset=0 xadvance=27 page=0 chnl=0 +char id=1145 x=0 y=385 width=28 height=22 xoffset=-5 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1146 x=299 y=180 width=24 height=24 xoffset=-4 yoffset=-1 xadvance=22 page=0 chnl=0 +char id=1148 x=382 y=30 width=26 height=26 xoffset=-4 yoffset=-4 xadvance=24 page=0 chnl=0 +char id=1149 x=19 y=252 width=24 height=23 xoffset=-5 yoffset=-1 xadvance=19 page=0 chnl=0 +char id=1150 x=345 y=106 width=26 height=25 xoffset=-4 yoffset=-3 xadvance=24 page=0 chnl=0 +char id=1160 x=104 y=0 width=41 height=27 xoffset=-16 yoffset=-3 xadvance=8 page=0 chnl=0 +char id=1161 x=0 y=0 width=46 height=30 xoffset=-17 yoffset=-4 xadvance=8 page=0 chnl=0 +char id=1162 x=145 y=0 width=24 height=27 xoffset=-5 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1163 x=323 y=180 width=21 height=24 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1167 x=28 y=385 width=20 height=22 xoffset=-6 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1168 x=43 y=252 width=22 height=23 xoffset=-5 yoffset=-2 xadvance=17 page=0 chnl=0 +char id=1172 x=371 y=106 width=21 height=25 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1173 x=492 y=363 width=18 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1174 x=344 y=180 width=26 height=24 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1176 x=392 y=106 width=21 height=25 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1178 x=370 y=180 width=22 height=24 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1186 x=392 y=180 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1190 x=413 y=106 width=27 height=25 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1191 x=48 y=385 width=22 height=22 xoffset=-5 yoffset=3 xadvance=20 page=0 chnl=0 +char id=1192 x=70 y=385 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1194 x=440 y=106 width=21 height=25 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1196 x=417 y=180 width=22 height=24 xoffset=-4 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1199 x=92 y=385 width=21 height=22 xoffset=-4 yoffset=3 xadvance=17 page=0 chnl=0 +char id=1201 x=113 y=385 width=21 height=22 xoffset=-4 yoffset=3 xadvance=17 page=0 chnl=0 +char id=1202 x=439 y=180 width=24 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1204 x=463 y=180 width=27 height=24 xoffset=-4 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1206 x=0 y=204 width=22 height=24 xoffset=-3 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1212 x=134 y=385 width=24 height=22 xoffset=-4 yoffset=0 xadvance=22 page=0 chnl=0 +char id=1214 x=22 y=204 width=24 height=24 xoffset=-4 yoffset=0 xadvance=22 page=0 chnl=0 +char id=1217 x=46 y=204 width=26 height=24 xoffset=-5 yoffset=-3 xadvance=23 page=0 chnl=0 +char id=1219 x=461 y=106 width=23 height=25 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1220 x=158 y=385 width=20 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1221 x=72 y=204 width=24 height=24 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1223 x=96 y=204 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1224 x=178 y=385 width=20 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1225 x=121 y=204 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1227 x=146 y=204 width=22 height=24 xoffset=-3 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1229 x=168 y=204 width=27 height=24 xoffset=-5 yoffset=0 xadvance=22 page=0 chnl=0 +char id=1232 x=195 y=204 width=22 height=24 xoffset=-5 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1233 x=198 y=385 width=19 height=22 xoffset=-4 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1234 x=217 y=204 width=24 height=24 xoffset=-5 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1238 x=241 y=204 width=25 height=24 xoffset=-5 yoffset=-3 xadvance=18 page=0 chnl=0 +char id=1239 x=217 y=385 width=20 height=22 xoffset=-5 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1240 x=237 y=385 width=22 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1242 x=484 y=106 width=22 height=25 xoffset=-4 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1244 x=266 y=204 width=26 height=24 xoffset=-5 yoffset=-3 xadvance=23 page=0 chnl=0 +char id=1246 x=0 y=131 width=23 height=25 xoffset=-5 yoffset=-3 xadvance=17 page=0 chnl=0 +char id=1248 x=259 y=385 width=21 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1250 x=65 y=252 width=25 height=23 xoffset=-5 yoffset=-2 xadvance=20 page=0 chnl=0 +char id=1252 x=90 y=252 width=25 height=23 xoffset=-5 yoffset=-2 xadvance=20 page=0 chnl=0 +char id=1254 x=23 y=131 width=24 height=25 xoffset=-4 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=1256 x=280 y=385 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1258 x=47 y=131 width=22 height=25 xoffset=-4 yoffset=-3 xadvance=20 page=0 chnl=0 +char id=1260 x=69 y=131 width=22 height=25 xoffset=-5 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1262 x=292 y=204 width=25 height=24 xoffset=-4 yoffset=-2 xadvance=19 page=0 chnl=0 +char id=1263 x=317 y=204 width=24 height=24 xoffset=-6 yoffset=1 xadvance=16 page=0 chnl=0 +char id=1264 x=91 y=131 width=25 height=25 xoffset=-4 yoffset=-3 xadvance=19 page=0 chnl=0 +char id=1265 x=341 y=204 width=24 height=24 xoffset=-6 yoffset=1 xadvance=16 page=0 chnl=0 +char id=1266 x=408 y=30 width=31 height=26 xoffset=-4 yoffset=-4 xadvance=19 page=0 chnl=0 +char id=1267 x=116 y=131 width=30 height=25 xoffset=-6 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1268 x=115 y=252 width=22 height=23 xoffset=-3 yoffset=-2 xadvance=19 page=0 chnl=0 +char id=1270 x=365 y=204 width=22 height=24 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1272 x=387 y=204 width=33 height=24 xoffset=-5 yoffset=-3 xadvance=22 page=0 chnl=0 +char id=1274 x=146 y=131 width=22 height=25 xoffset=-5 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1275 x=302 y=385 width=19 height=22 xoffset=-5 yoffset=3 xadvance=14 page=0 chnl=0 +char id=1276 x=420 y=204 width=24 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1277 x=321 y=385 width=20 height=22 xoffset=-5 yoffset=3 xadvance=15 page=0 chnl=0 +char id=1281 x=341 y=385 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1283 x=360 y=385 width=21 height=22 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1284 x=381 y=385 width=23 height=22 xoffset=-4 yoffset=0 xadvance=21 page=0 chnl=0 +char id=1286 x=490 y=180 width=18 height=24 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1288 x=404 y=385 width=28 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1290 x=432 y=385 width=28 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1292 x=460 y=385 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1294 x=482 y=385 width=23 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1296 x=0 y=407 width=19 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1298 x=444 y=204 width=24 height=24 xoffset=-5 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1299 x=19 y=407 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1300 x=38 y=407 width=28 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1303 x=66 y=407 width=23 height=22 xoffset=-6 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1306 x=468 y=204 width=22 height=24 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1307 x=89 y=407 width=19 height=22 xoffset=-5 yoffset=3 xadvance=16 page=0 chnl=0 +char id=1308 x=108 y=407 width=27 height=22 xoffset=-4 yoffset=0 xadvance=23 page=0 chnl=0 +char id=1312 x=168 y=131 width=26 height=25 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1313 x=135 y=407 width=22 height=22 xoffset=-5 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1314 x=194 y=131 width=27 height=25 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=1315 x=157 y=407 width=22 height=22 xoffset=-5 yoffset=3 xadvance=20 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=13 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=10 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8214 x=496 y=472 width=15 height=21 xoffset=-5 yoffset=2 xadvance=13 page=0 chnl=0 +char id=8224 x=490 y=204 width=17 height=24 xoffset=-3 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8225 x=0 y=228 width=18 height=24 xoffset=-4 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=-5 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8240 x=137 y=252 width=26 height=23 xoffset=-4 yoffset=-1 xadvance=24 page=0 chnl=0 +char id=8252 x=179 y=407 width=19 height=22 xoffset=-3 yoffset=0 xadvance=19 page=0 chnl=0 +char id=8260 x=198 y=407 width=27 height=22 xoffset=-8 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8286 x=18 y=228 width=14 height=24 xoffset=-5 yoffset=-2 xadvance=11 page=0 chnl=0 +char id=8352 x=225 y=407 width=19 height=22 xoffset=-3 yoffset=-1 xadvance=19 page=0 chnl=0 +char id=8353 x=439 y=30 width=21 height=26 xoffset=-4 yoffset=-2 xadvance=19 page=0 chnl=0 +char id=8354 x=244 y=407 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=8356 x=265 y=407 width=19 height=22 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8357 x=284 y=407 width=23 height=22 xoffset=-5 yoffset=1 xadvance=20 page=0 chnl=0 +char id=8358 x=307 y=407 width=25 height=22 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=8359 x=332 y=407 width=26 height=22 xoffset=-5 yoffset=0 xadvance=23 page=0 chnl=0 +char id=8360 x=358 y=407 width=27 height=22 xoffset=-5 yoffset=0 xadvance=24 page=0 chnl=0 +char id=8361 x=385 y=407 width=25 height=22 xoffset=-4 yoffset=0 xadvance=21 page=0 chnl=0 +char id=8363 x=32 y=228 width=20 height=24 xoffset=-4 yoffset=-2 xadvance=16 page=0 chnl=0 +char id=8364 x=410 y=407 width=22 height=22 xoffset=-4 yoffset=0 xadvance=20 page=0 chnl=0 +char id=8367 x=221 y=131 width=32 height=25 xoffset=-5 yoffset=0 xadvance=29 page=0 chnl=0 +char id=8368 x=253 y=131 width=18 height=25 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8370 x=163 y=252 width=20 height=23 xoffset=-4 yoffset=-1 xadvance=18 page=0 chnl=0 +char id=8372 x=432 y=407 width=19 height=22 xoffset=-4 yoffset=0 xadvance=17 page=0 chnl=0 +char id=8373 x=52 y=228 width=20 height=24 xoffset=-4 yoffset=-1 xadvance=18 page=0 chnl=0 +char id=11364 x=271 y=131 width=20 height=25 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=11366 x=451 y=407 width=16 height=22 xoffset=-5 yoffset=1 xadvance=13 page=0 chnl=0 +char id=11367 x=72 y=228 width=25 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=11368 x=183 y=252 width=18 height=23 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=11369 x=97 y=228 width=23 height=24 xoffset=-5 yoffset=0 xadvance=20 page=0 chnl=0 +char id=11370 x=201 y=252 width=19 height=23 xoffset=-5 yoffset=0 xadvance=16 page=0 chnl=0 +char id=11371 x=120 y=228 width=23 height=24 xoffset=-5 yoffset=0 xadvance=18 page=0 chnl=0 +char id=11373 x=467 y=407 width=21 height=22 xoffset=-4 yoffset=0 xadvance=19 page=0 chnl=0 +char id=11378 x=0 y=429 width=29 height=22 xoffset=-4 yoffset=0 xadvance=25 page=0 chnl=0 +char id=34 x=261 y=183 width=15 height=15 xoffset=-3 yoffset=0 xadvance=15 page=1 chnl=0 +char id=42 x=57 y=183 width=17 height=17 xoffset=-3 yoffset=0 xadvance=16 page=1 chnl=0 +char id=43 x=98 y=125 width=19 height=19 xoffset=-4 yoffset=2 xadvance=17 page=1 chnl=0 +char id=44 x=276 y=183 width=14 height=15 xoffset=-5 yoffset=9 xadvance=12 page=1 chnl=0 +char id=45 x=346 y=201 width=15 height=12 xoffset=-4 yoffset=6 xadvance=13 page=1 chnl=0 +char id=46 x=175 y=201 width=13 height=13 xoffset=-4 yoffset=9 xadvance=12 page=1 chnl=0 +char id=58 x=117 y=125 width=14 height=19 xoffset=-4 yoffset=3 xadvance=12 page=1 chnl=0 +char id=60 x=487 y=84 width=21 height=20 xoffset=-4 yoffset=2 xadvance=17 page=1 chnl=0 +char id=61 x=207 y=183 width=20 height=16 xoffset=-5 yoffset=4 xadvance=17 page=1 chnl=0 +char id=62 x=0 y=105 width=20 height=20 xoffset=-5 yoffset=2 xadvance=17 page=1 chnl=0 +char id=94 x=74 y=183 width=17 height=17 xoffset=-4 yoffset=0 xadvance=16 page=1 chnl=0 +char id=95 x=476 y=201 width=19 height=11 xoffset=-6 yoffset=12 xadvance=16 page=1 chnl=0 +char id=96 x=188 y=201 width=14 height=13 xoffset=-3 yoffset=0 xadvance=13 page=1 chnl=0 +char id=97 x=131 y=125 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=99 x=149 y=125 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=101 x=167 y=125 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=111 x=185 y=125 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=115 x=203 y=125 width=17 height=19 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=117 x=220 y=125 width=17 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=118 x=237 y=125 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=119 x=255 y=125 width=22 height=19 xoffset=-4 yoffset=3 xadvance=20 page=1 chnl=0 +char id=126 x=41 y=201 width=18 height=14 xoffset=-4 yoffset=5 xadvance=17 page=1 chnl=0 +char id=164 x=277 y=125 width=21 height=19 xoffset=-5 yoffset=1 xadvance=16 page=1 chnl=0 +char id=168 x=361 y=201 width=17 height=12 xoffset=-4 yoffset=1 xadvance=13 page=1 chnl=0 +char id=170 x=290 y=183 width=16 height=15 xoffset=-4 yoffset=0 xadvance=12 page=1 chnl=0 +char id=171 x=91 y=183 width=18 height=17 xoffset=-5 yoffset=4 xadvance=15 page=1 chnl=0 +char id=172 x=227 y=183 width=19 height=16 xoffset=-4 yoffset=4 xadvance=17 page=1 chnl=0 +char id=173 x=378 y=201 width=15 height=12 xoffset=-4 yoffset=6 xadvance=13 page=1 chnl=0 +char id=175 x=393 y=201 width=17 height=12 xoffset=-4 yoffset=1 xadvance=13 page=1 chnl=0 +char id=176 x=306 y=183 width=17 height=15 xoffset=-3 yoffset=0 xadvance=14 page=1 chnl=0 +char id=178 x=109 y=183 width=17 height=17 xoffset=-4 yoffset=0 xadvance=13 page=1 chnl=0 +char id=179 x=126 y=183 width=17 height=17 xoffset=-4 yoffset=0 xadvance=13 page=1 chnl=0 +char id=180 x=202 y=201 width=16 height=13 xoffset=-3 yoffset=0 xadvance=13 page=1 chnl=0 +char id=183 x=218 y=201 width=13 height=13 xoffset=-4 yoffset=6 xadvance=12 page=1 chnl=0 +char id=184 x=323 y=183 width=14 height=15 xoffset=-5 yoffset=10 xadvance=13 page=1 chnl=0 +char id=185 x=143 y=183 width=15 height=17 xoffset=-4 yoffset=0 xadvance=13 page=1 chnl=0 +char id=186 x=337 y=183 width=17 height=15 xoffset=-4 yoffset=0 xadvance=13 page=1 chnl=0 +char id=187 x=158 y=183 width=19 height=17 xoffset=-5 yoffset=4 xadvance=15 page=1 chnl=0 +char id=230 x=298 y=125 width=21 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=239 x=20 y=105 width=19 height=20 xoffset=-5 yoffset=1 xadvance=12 page=1 chnl=0 +char id=247 x=39 y=105 width=19 height=20 xoffset=-4 yoffset=2 xadvance=17 page=1 chnl=0 +char id=297 x=58 y=105 width=19 height=20 xoffset=-5 yoffset=1 xadvance=12 page=1 chnl=0 +char id=299 x=77 y=105 width=22 height=20 xoffset=-5 yoffset=1 xadvance=12 page=1 chnl=0 +char id=339 x=319 y=125 width=21 height=19 xoffset=-4 yoffset=3 xadvance=19 page=1 chnl=0 +char id=380 x=99 y=105 width=18 height=20 xoffset=-5 yoffset=1 xadvance=15 page=1 chnl=0 +char id=884 x=354 y=183 width=15 height=15 xoffset=-4 yoffset=-2 xadvance=11 page=1 chnl=0 +char id=885 x=59 y=201 width=14 height=14 xoffset=-5 yoffset=11 xadvance=11 page=1 chnl=0 +char id=890 x=73 y=201 width=14 height=14 xoffset=-4 yoffset=11 xadvance=13 page=1 chnl=0 +char id=900 x=369 y=183 width=15 height=15 xoffset=-3 yoffset=-2 xadvance=12 page=1 chnl=0 +char id=901 x=87 y=201 width=17 height=14 xoffset=-4 yoffset=-1 xadvance=13 page=1 chnl=0 +char id=903 x=231 y=201 width=13 height=13 xoffset=-3 yoffset=3 xadvance=12 page=1 chnl=0 +char id=914 x=0 y=0 width=21 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=915 x=21 y=0 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=916 x=43 y=0 width=21 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=917 x=64 y=0 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=918 x=85 y=0 width=23 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=919 x=108 y=0 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=921 x=133 y=0 width=18 height=21 xoffset=-5 yoffset=0 xadvance=13 page=1 chnl=0 +char id=922 x=151 y=0 width=23 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=923 x=174 y=0 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=924 x=196 y=0 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=926 x=223 y=0 width=21 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=928 x=244 y=0 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=929 x=269 y=0 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=931 x=291 y=0 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=932 x=312 y=0 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=933 x=334 y=0 width=22 height=21 xoffset=-3 yoffset=0 xadvance=19 page=1 chnl=0 +char id=934 x=356 y=0 width=22 height=21 xoffset=-4 yoffset=0 xadvance=20 page=1 chnl=0 +char id=935 x=378 y=0 width=24 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=936 x=402 y=0 width=25 height=21 xoffset=-4 yoffset=0 xadvance=21 page=1 chnl=0 +char id=937 x=427 y=0 width=23 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=945 x=340 y=125 width=19 height=19 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=949 x=359 y=125 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=953 x=377 y=125 width=14 height=19 xoffset=-4 yoffset=3 xadvance=13 page=1 chnl=0 +char id=959 x=391 y=125 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=960 x=409 y=125 width=22 height=19 xoffset=-5 yoffset=3 xadvance=17 page=1 chnl=0 +char id=963 x=431 y=125 width=19 height=19 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=964 x=450 y=125 width=17 height=19 xoffset=-4 yoffset=3 xadvance=15 page=1 chnl=0 +char id=965 x=467 y=125 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=969 x=485 y=125 width=21 height=19 xoffset=-4 yoffset=3 xadvance=19 page=1 chnl=0 +char id=978 x=450 y=0 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=982 x=117 y=105 width=21 height=20 xoffset=-4 yoffset=2 xadvance=19 page=1 chnl=0 +char id=983 x=472 y=0 width=18 height=21 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=984 x=490 y=0 width=21 height=21 xoffset=-4 yoffset=0 xadvance=17 page=1 chnl=0 +char id=986 x=0 y=21 width=20 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=988 x=20 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=992 x=42 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=999 x=138 y=105 width=18 height=20 xoffset=-5 yoffset=2 xadvance=15 page=1 chnl=0 +char id=1001 x=156 y=105 width=18 height=20 xoffset=-5 yoffset=3 xadvance=13 page=1 chnl=0 +char id=1003 x=0 y=145 width=20 height=19 xoffset=-5 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1005 x=174 y=105 width=20 height=20 xoffset=-5 yoffset=2 xadvance=15 page=1 chnl=0 +char id=1008 x=20 y=145 width=18 height=19 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1010 x=38 y=145 width=17 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1013 x=55 y=145 width=16 height=19 xoffset=-4 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1014 x=71 y=145 width=17 height=19 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1015 x=64 y=21 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1018 x=84 y=21 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1030 x=111 y=21 width=18 height=21 xoffset=-5 yoffset=0 xadvance=13 page=1 chnl=0 +char id=1034 x=129 y=21 width=26 height=21 xoffset=-5 yoffset=0 xadvance=24 page=1 chnl=0 +char id=1040 x=155 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1041 x=177 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1042 x=199 y=21 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=1043 x=220 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1045 x=242 y=21 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=1046 x=263 y=21 width=26 height=21 xoffset=-5 yoffset=0 xadvance=23 page=1 chnl=0 +char id=1048 x=289 y=21 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1050 x=314 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1052 x=336 y=21 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1053 x=363 y=21 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1055 x=388 y=21 width=25 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1056 x=413 y=21 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1058 x=435 y=21 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=1060 x=457 y=21 width=22 height=21 xoffset=-4 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1061 x=479 y=21 width=25 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1063 x=0 y=42 width=22 height=21 xoffset=-3 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1064 x=22 y=42 width=29 height=21 xoffset=-5 yoffset=0 xadvance=24 page=1 chnl=0 +char id=1066 x=51 y=42 width=21 height=21 xoffset=-4 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1067 x=72 y=42 width=29 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1068 x=101 y=42 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1071 x=121 y=42 width=23 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=1072 x=88 y=145 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1076 x=194 y=105 width=20 height=20 xoffset=-6 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1077 x=106 y=145 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1079 x=124 y=145 width=17 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1081 x=144 y=42 width=21 height=21 xoffset=-5 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1083 x=141 y=145 width=19 height=19 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1084 x=160 y=145 width=23 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1086 x=183 y=145 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1089 x=201 y=145 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1094 x=214 y=105 width=21 height=20 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1097 x=235 y=105 width=25 height=20 xoffset=-5 yoffset=3 xadvance=20 page=1 chnl=0 +char id=1101 x=219 y=145 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1102 x=237 y=145 width=21 height=19 xoffset=-5 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1107 x=165 y=42 width=23 height=21 xoffset=-5 yoffset=0 xadvance=14 page=1 chnl=0 +char id=1108 x=258 y=145 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1109 x=276 y=145 width=16 height=19 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1111 x=188 y=42 width=22 height=21 xoffset=-5 yoffset=0 xadvance=12 page=1 chnl=0 +char id=1113 x=292 y=145 width=21 height=19 xoffset=-5 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1115 x=210 y=42 width=19 height=21 xoffset=-5 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1116 x=229 y=42 width=21 height=21 xoffset=-5 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1117 x=250 y=42 width=21 height=21 xoffset=-5 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1119 x=271 y=42 width=21 height=21 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1121 x=313 y=145 width=21 height=19 xoffset=-5 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1122 x=292 y=42 width=21 height=21 xoffset=-4 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1123 x=313 y=42 width=18 height=21 xoffset=-4 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1125 x=334 y=145 width=22 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1126 x=331 y=42 width=25 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1127 x=285 y=164 width=21 height=18 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1128 x=356 y=42 width=30 height=21 xoffset=-5 yoffset=0 xadvance=28 page=1 chnl=0 +char id=1129 x=306 y=164 width=25 height=18 xoffset=-5 yoffset=3 xadvance=22 page=1 chnl=0 +char id=1130 x=386 y=42 width=25 height=21 xoffset=-5 yoffset=0 xadvance=23 page=1 chnl=0 +char id=1131 x=331 y=164 width=21 height=18 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1132 x=411 y=42 width=31 height=21 xoffset=-5 yoffset=0 xadvance=28 page=1 chnl=0 +char id=1133 x=352 y=164 width=25 height=18 xoffset=-5 yoffset=3 xadvance=23 page=1 chnl=0 +char id=1136 x=442 y=42 width=26 height=21 xoffset=-4 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1139 x=356 y=145 width=19 height=19 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1141 x=375 y=145 width=19 height=19 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1147 x=394 y=145 width=21 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1151 x=468 y=42 width=21 height=21 xoffset=-5 yoffset=1 xadvance=19 page=1 chnl=0 +char id=1152 x=489 y=42 width=20 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=1153 x=0 y=63 width=18 height=21 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1154 x=246 y=183 width=15 height=16 xoffset=-6 yoffset=9 xadvance=12 page=1 chnl=0 +char id=1155 x=244 y=201 width=20 height=13 xoffset=-9 yoffset=0 xadvance=8 page=1 chnl=0 +char id=1156 x=264 y=201 width=24 height=13 xoffset=-11 yoffset=0 xadvance=8 page=1 chnl=0 +char id=1157 x=288 y=201 width=18 height=13 xoffset=-8 yoffset=0 xadvance=8 page=1 chnl=0 +char id=1158 x=306 y=201 width=18 height=13 xoffset=-8 yoffset=0 xadvance=8 page=1 chnl=0 +char id=1159 x=104 y=201 width=26 height=14 xoffset=-11 yoffset=-3 xadvance=8 page=1 chnl=0 +char id=1164 x=18 y=63 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1165 x=377 y=164 width=17 height=18 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1166 x=38 y=63 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1169 x=415 y=145 width=19 height=19 xoffset=-5 yoffset=2 xadvance=14 page=1 chnl=0 +char id=1170 x=60 y=63 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1171 x=394 y=164 width=19 height=18 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1175 x=260 y=105 width=22 height=20 xoffset=-5 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1177 x=82 y=63 width=17 height=21 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1179 x=282 y=105 width=19 height=20 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1180 x=99 y=63 width=23 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1181 x=413 y=164 width=19 height=18 xoffset=-5 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1182 x=122 y=63 width=22 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1183 x=432 y=164 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1184 x=144 y=63 width=23 height=21 xoffset=-4 yoffset=0 xadvance=21 page=1 chnl=0 +char id=1185 x=451 y=164 width=19 height=18 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1187 x=301 y=105 width=21 height=20 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1188 x=167 y=63 width=28 height=21 xoffset=-5 yoffset=0 xadvance=23 page=1 chnl=0 +char id=1189 x=470 y=164 width=23 height=18 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1193 x=434 y=145 width=19 height=19 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1195 x=195 y=63 width=18 height=21 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1197 x=322 y=105 width=19 height=20 xoffset=-4 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1198 x=213 y=63 width=23 height=21 xoffset=-3 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1200 x=236 y=63 width=23 height=21 xoffset=-3 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1203 x=341 y=105 width=19 height=20 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1205 x=360 y=105 width=23 height=20 xoffset=-4 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1207 x=383 y=105 width=20 height=20 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1208 x=259 y=63 width=23 height=21 xoffset=-3 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1209 x=0 y=183 width=19 height=18 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1210 x=282 y=63 width=21 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1211 x=303 y=63 width=18 height=21 xoffset=-5 yoffset=0 xadvance=16 page=1 chnl=0 +char id=1213 x=453 y=145 width=19 height=19 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1215 x=321 y=63 width=19 height=21 xoffset=-4 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1216 x=340 y=63 width=18 height=21 xoffset=-5 yoffset=0 xadvance=13 page=1 chnl=0 +char id=1218 x=358 y=63 width=22 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1222 x=380 y=63 width=19 height=21 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1226 x=399 y=63 width=20 height=21 xoffset=-5 yoffset=3 xadvance=17 page=1 chnl=0 +char id=1228 x=403 y=105 width=20 height=20 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1230 x=419 y=63 width=23 height=21 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1231 x=442 y=63 width=22 height=21 xoffset=-5 yoffset=0 xadvance=13 page=1 chnl=0 +char id=1235 x=464 y=63 width=21 height=21 xoffset=-4 yoffset=1 xadvance=15 page=1 chnl=0 +char id=1236 x=0 y=84 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1237 x=472 y=145 width=21 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1241 x=493 y=145 width=17 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1243 x=485 y=63 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=1 chnl=0 +char id=1245 x=423 y=105 width=22 height=20 xoffset=-5 yoffset=1 xadvance=19 page=1 chnl=0 +char id=1247 x=27 y=84 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=1 chnl=0 +char id=1249 x=0 y=164 width=17 height=19 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1251 x=445 y=105 width=23 height=20 xoffset=-5 yoffset=1 xadvance=16 page=1 chnl=0 +char id=1253 x=468 y=105 width=23 height=20 xoffset=-5 yoffset=1 xadvance=16 page=1 chnl=0 +char id=1255 x=49 y=84 width=20 height=21 xoffset=-4 yoffset=1 xadvance=16 page=1 chnl=0 +char id=1257 x=17 y=164 width=19 height=19 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1259 x=69 y=84 width=21 height=21 xoffset=-5 yoffset=1 xadvance=16 page=1 chnl=0 +char id=1261 x=90 y=84 width=22 height=21 xoffset=-5 yoffset=1 xadvance=15 page=1 chnl=0 +char id=1269 x=491 y=105 width=20 height=20 xoffset=-4 yoffset=1 xadvance=16 page=1 chnl=0 +char id=1271 x=0 y=125 width=19 height=20 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=1273 x=19 y=125 width=23 height=20 xoffset=-5 yoffset=1 xadvance=18 page=1 chnl=0 +char id=1278 x=112 y=84 width=24 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=1279 x=19 y=183 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1280 x=136 y=84 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=1282 x=158 y=84 width=27 height=21 xoffset=-5 yoffset=0 xadvance=22 page=1 chnl=0 +char id=1285 x=36 y=164 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1287 x=185 y=84 width=17 height=21 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1289 x=54 y=164 width=21 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1291 x=75 y=164 width=22 height=19 xoffset=-5 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1293 x=97 y=164 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1295 x=115 y=164 width=18 height=19 xoffset=-4 yoffset=3 xadvance=16 page=1 chnl=0 +char id=1297 x=133 y=164 width=18 height=19 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=1301 x=151 y=164 width=21 height=19 xoffset=-5 yoffset=3 xadvance=18 page=1 chnl=0 +char id=1302 x=202 y=84 width=26 height=21 xoffset=-5 yoffset=0 xadvance=21 page=1 chnl=0 +char id=1304 x=228 y=84 width=28 height=21 xoffset=-5 yoffset=0 xadvance=23 page=1 chnl=0 +char id=1305 x=172 y=164 width=23 height=19 xoffset=-5 yoffset=3 xadvance=20 page=1 chnl=0 +char id=1309 x=195 y=164 width=23 height=19 xoffset=-4 yoffset=3 xadvance=19 page=1 chnl=0 +char id=1310 x=256 y=84 width=22 height=21 xoffset=-5 yoffset=0 xadvance=19 page=1 chnl=0 +char id=1311 x=38 y=183 width=19 height=18 xoffset=-5 yoffset=3 xadvance=16 page=1 chnl=0 +char id=8210 x=410 y=201 width=19 height=12 xoffset=-5 yoffset=6 xadvance=16 page=1 chnl=0 +char id=8211 x=410 y=201 width=19 height=12 xoffset=-5 yoffset=6 xadvance=16 page=1 chnl=0 +char id=8212 x=429 y=201 width=27 height=12 xoffset=-5 yoffset=6 xadvance=24 page=1 chnl=0 +char id=8213 x=429 y=201 width=27 height=12 xoffset=-5 yoffset=6 xadvance=24 page=1 chnl=0 +char id=8215 x=130 y=201 width=16 height=14 xoffset=-4 yoffset=11 xadvance=16 page=1 chnl=0 +char id=8216 x=384 y=183 width=13 height=15 xoffset=-3 yoffset=0 xadvance=12 page=1 chnl=0 +char id=8217 x=146 y=201 width=13 height=14 xoffset=-3 yoffset=0 xadvance=12 page=1 chnl=0 +char id=8218 x=397 y=183 width=14 height=15 xoffset=-5 yoffset=9 xadvance=12 page=1 chnl=0 +char id=8219 x=411 y=183 width=13 height=15 xoffset=-3 yoffset=0 xadvance=12 page=1 chnl=0 +char id=8220 x=424 y=183 width=16 height=15 xoffset=-3 yoffset=0 xadvance=15 page=1 chnl=0 +char id=8221 x=159 y=201 width=16 height=14 xoffset=-3 yoffset=0 xadvance=15 page=1 chnl=0 +char id=8222 x=440 y=183 width=17 height=15 xoffset=-5 yoffset=9 xadvance=15 page=1 chnl=0 +char id=8223 x=457 y=183 width=16 height=15 xoffset=-3 yoffset=0 xadvance=15 page=1 chnl=0 +char id=8226 x=473 y=183 width=15 height=15 xoffset=-4 yoffset=3 xadvance=14 page=1 chnl=0 +char id=8230 x=324 y=201 width=22 height=13 xoffset=-3 yoffset=9 xadvance=24 page=1 chnl=0 +char id=8242 x=488 y=183 width=16 height=15 xoffset=-4 yoffset=-1 xadvance=12 page=1 chnl=0 +char id=8243 x=0 y=201 width=19 height=15 xoffset=-4 yoffset=-1 xadvance=15 page=1 chnl=0 +char id=8244 x=19 y=201 width=22 height=15 xoffset=-4 yoffset=-1 xadvance=18 page=1 chnl=0 +char id=8249 x=177 y=183 width=15 height=17 xoffset=-5 yoffset=4 xadvance=12 page=1 chnl=0 +char id=8250 x=192 y=183 width=15 height=17 xoffset=-5 yoffset=4 xadvance=12 page=1 chnl=0 +char id=8254 x=456 y=201 width=20 height=12 xoffset=-4 yoffset=1 xadvance=16 page=1 chnl=0 +char id=8355 x=278 y=84 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=8365 x=300 y=84 width=23 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=8366 x=323 y=84 width=22 height=21 xoffset=-4 yoffset=0 xadvance=18 page=1 chnl=0 +char id=8369 x=345 y=84 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=8371 x=366 y=84 width=22 height=21 xoffset=-5 yoffset=0 xadvance=20 page=1 chnl=0 +char id=11360 x=388 y=84 width=20 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=11361 x=408 y=84 width=16 height=21 xoffset=-5 yoffset=0 xadvance=13 page=1 chnl=0 +char id=11362 x=424 y=84 width=21 height=21 xoffset=-5 yoffset=0 xadvance=18 page=1 chnl=0 +char id=11363 x=445 y=84 width=22 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=11365 x=42 y=125 width=20 height=20 xoffset=-5 yoffset=2 xadvance=15 page=1 chnl=0 +char id=11372 x=62 y=125 width=18 height=20 xoffset=-5 yoffset=3 xadvance=15 page=1 chnl=0 +char id=11377 x=218 y=164 width=22 height=19 xoffset=-4 yoffset=3 xadvance=18 page=1 chnl=0 +char id=11379 x=240 y=164 width=25 height=19 xoffset=-4 yoffset=3 xadvance=22 page=1 chnl=0 +char id=11380 x=80 y=125 width=18 height=20 xoffset=-4 yoffset=2 xadvance=16 page=1 chnl=0 +char id=11381 x=467 y=84 width=20 height=21 xoffset=-5 yoffset=0 xadvance=17 page=1 chnl=0 +char id=11382 x=493 y=164 width=17 height=18 xoffset=-5 yoffset=3 xadvance=14 page=1 chnl=0 +char id=11383 x=265 y=164 width=20 height=19 xoffset=-4 yoffset=3 xadvance=18 page=1 chnl=0 +kernings count=7203 +kerning first=1036 second=1098 amount=-1 +kerning first=279 second=311 amount=-1 +kerning first=256 second=87 amount=-2 +kerning first=264 second=201 amount=-1 +kerning first=88 second=253 amount=-1 +kerning first=234 second=44 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=277 second=46 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=206 second=259 amount=-1 +kerning first=229 second=253 amount=-1 +kerning first=337 second=253 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=256 second=67 amount=-1 +kerning first=268 second=68 amount=-1 +kerning first=262 second=69 amount=-1 +kerning first=352 second=70 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=266 second=72 amount=-1 +kerning first=264 second=73 amount=-1 +kerning first=368 second=74 amount=-1 +kerning first=262 second=75 amount=-1 +kerning first=264 second=76 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=262 second=78 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=268 second=80 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=350 second=82 amount=-1 +kerning first=193 second=84 amount=-2 +kerning first=196 second=85 amount=-1 +kerning first=350 second=86 amount=-1 +kerning first=66 second=90 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=375 second=99 amount=-1 +kerning first=84 second=100 amount=-1 +kerning first=356 second=101 amount=-1 +kerning first=379 second=102 amount=-1 +kerning first=249 second=103 amount=-1 +kerning first=275 second=104 amount=-1 +kerning first=269 second=105 amount=-1 +kerning first=277 second=107 amount=-1 +kerning first=119 second=108 amount=-1 +kerning first=66 second=110 amount=-1 +kerning first=118 second=111 amount=-1 +kerning first=268 second=112 amount=-1 +kerning first=356 second=113 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=196 second=115 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=377 second=117 amount=-1 +kerning first=120 second=118 amount=-1 +kerning first=260 second=119 amount=-1 +kerning first=350 second=120 amount=-1 +kerning first=226 second=121 amount=-1 +kerning first=315 second=122 amount=-1 +kerning first=195 second=219 amount=-1 +kerning first=307 second=171 amount=-1 +kerning first=121 second=235 amount=-1 +kerning first=84 second=187 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=374 second=192 amount=-2 +kerning first=67 second=193 amount=-1 +kerning first=45 second=195 amount=-1 +kerning first=86 second=196 amount=-2 +kerning first=8220 second=197 amount=-2 +kerning first=86 second=287 amount=-1 +kerning first=199 second=199 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=352 second=201 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=268 second=205 amount=-1 +kerning first=350 second=206 amount=-1 +kerning first=350 second=207 amount=-1 +kerning first=352 second=209 amount=-1 +kerning first=256 second=210 amount=-1 +kerning first=310 second=211 amount=-1 +kerning first=67 second=213 amount=-1 +kerning first=260 second=214 amount=-1 +kerning first=197 second=216 amount=-1 +kerning first=260 second=217 amount=-1 +kerning first=8218 second=218 amount=-1 +kerning first=352 second=219 amount=-1 +kerning first=344 second=220 amount=-1 +kerning first=223 second=46 amount=-1 +kerning first=374 second=223 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=8220 second=226 amount=-1 +kerning first=364 second=227 amount=-1 +kerning first=376 second=228 amount=-1 +kerning first=66 second=229 amount=-1 +kerning first=118 second=230 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=221 second=232 amount=-1 +kerning first=371 second=233 amount=-1 +kerning first=354 second=234 amount=-1 +kerning first=231 second=237 amount=-1 +kerning first=82 second=240 amount=-1 +kerning first=66 second=241 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=303 second=244 amount=-1 +kerning first=8216 second=245 amount=-1 +kerning first=374 second=246 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=344 second=248 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=298 second=250 amount=-1 +kerning first=72 second=251 amount=-1 +kerning first=258 second=252 amount=-1 +kerning first=254 second=253 amount=-1 +kerning first=66 second=254 amount=-1 +kerning first=8250 second=255 amount=-1 +kerning first=219 second=256 amount=-1 +kerning first=119 second=257 amount=-1 +kerning first=118 second=259 amount=-1 +kerning first=362 second=260 amount=-1 +kerning first=310 second=262 amount=-1 +kerning first=8220 second=263 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=255 second=267 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=346 second=270 amount=-1 +kerning first=375 second=271 amount=-1 +kerning first=78 second=117 amount=-1 +kerning first=268 second=274 amount=-1 +kerning first=303 second=275 amount=-1 +kerning first=8220 second=277 amount=-1 +kerning first=352 second=278 amount=-1 +kerning first=84 second=279 amount=-1 +kerning first=268 second=280 amount=-1 +kerning first=344 second=281 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=344 second=283 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=260 second=287 amount=-1 +kerning first=82 second=288 amount=-1 +kerning first=233 second=289 amount=-1 +kerning first=268 second=291 amount=-1 +kerning first=266 second=296 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=99 second=303 amount=-1 +kerning first=83 second=305 amount=-1 +kerning first=354 second=99 amount=-1 +kerning first=264 second=310 amount=-1 +kerning first=102 second=311 amount=1 +kerning first=376 second=352 amount=-1 +kerning first=346 second=313 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=8250 second=315 amount=-1 +kerning first=253 second=316 amount=-1 +kerning first=82 second=335 amount=-1 +kerning first=283 second=318 amount=-1 +kerning first=268 second=330 amount=-1 +kerning first=262 second=323 amount=-1 +kerning first=264 second=325 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=66 second=330 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=107 second=333 amount=-1 +kerning first=221 second=334 amount=-1 +kerning first=344 second=335 amount=-1 +kerning first=256 second=336 amount=-1 +kerning first=107 second=337 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=344 second=339 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=354 second=347 amount=-1 +kerning first=356 second=350 amount=-1 +kerning first=103 second=351 amount=-1 +kerning first=65 second=352 amount=-1 +kerning first=192 second=353 amount=-1 +kerning first=344 second=355 amount=-1 +kerning first=284 second=356 amount=-1 +kerning first=251 second=103 amount=-1 +kerning first=196 second=350 amount=-1 +kerning first=120 second=361 amount=-1 +kerning first=258 second=362 amount=-1 +kerning first=296 second=363 amount=-1 +kerning first=66 second=364 amount=-1 +kerning first=253 second=122 amount=-1 +kerning first=8250 second=366 amount=-1 +kerning first=120 second=367 amount=-1 +kerning first=346 second=368 amount=-1 +kerning first=204 second=369 amount=-1 +kerning first=120 second=371 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=256 second=374 amount=-2 +kerning first=256 second=375 amount=-1 +kerning first=313 second=378 amount=-1 +kerning first=376 second=379 amount=-1 +kerning first=219 second=380 amount=-1 +kerning first=321 second=382 amount=-1 +kerning first=242 second=318 amount=-1 +kerning first=256 second=199 amount=-1 +kerning first=307 second=118 amount=-1 +kerning first=315 second=368 amount=-1 +kerning first=1059 second=1078 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=230 second=121 amount=-1 +kerning first=221 second=231 amount=-1 +kerning first=8216 second=194 amount=-2 +kerning first=193 second=332 amount=-1 +kerning first=350 second=204 amount=-1 +kerning first=376 second=291 amount=-1 +kerning first=72 second=117 amount=-1 +kerning first=8220 second=225 amount=-1 +kerning first=88 second=332 amount=-1 +kerning first=217 second=378 amount=-1 +kerning first=234 second=316 amount=-1 +kerning first=196 second=252 amount=-1 +kerning first=86 second=267 amount=-1 +kerning first=76 second=378 amount=-1 +kerning first=1040 second=1095 amount=-1 +kerning first=337 second=46 amount=-1 +kerning first=194 second=364 amount=-1 +kerning first=8250 second=77 amount=-1 +kerning first=197 second=264 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=289 second=378 amount=-1 +kerning first=253 second=378 amount=-1 +kerning first=317 second=218 amount=-1 +kerning first=84 second=380 amount=-1 +kerning first=101 second=375 amount=-1 +kerning first=354 second=119 amount=-1 +kerning first=350 second=200 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=196 second=364 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=371 second=267 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=224 second=8220 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=379 second=250 amount=-1 +kerning first=356 second=216 amount=-1 +kerning first=264 second=378 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=87 second=378 amount=-1 +kerning first=66 second=331 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=290 second=193 amount=-1 +kerning first=266 second=325 amount=-1 +kerning first=192 second=221 amount=-2 +kerning first=187 second=296 amount=-1 +kerning first=262 second=274 amount=-1 +kerning first=346 second=366 amount=-1 +kerning first=1061 second=1058 amount=-1 +kerning first=8220 second=74 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=304 second=291 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=260 second=210 amount=-1 +kerning first=232 second=291 amount=-1 +kerning first=86 second=326 amount=-1 +kerning first=196 second=291 amount=-1 +kerning first=255 second=226 amount=-1 +kerning first=71 second=197 amount=-1 +kerning first=219 second=226 amount=-1 +kerning first=346 second=327 amount=-1 +kerning first=327 second=226 amount=-1 +kerning first=291 second=226 amount=-1 +kerning first=350 second=68 amount=-1 +kerning first=284 second=197 amount=-1 +kerning first=266 second=344 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=356 second=197 amount=-2 +kerning first=89 second=187 amount=-1 +kerning first=205 second=365 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=206 second=8249 amount=-1 +kerning first=84 second=262 amount=-1 +kerning first=375 second=337 amount=-1 +kerning first=310 second=268 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=303 second=337 amount=-1 +kerning first=350 second=8249 amount=-1 +kerning first=314 second=8249 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=253 second=108 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=269 second=303 amount=-1 +kerning first=263 second=228 amount=-1 +kerning first=339 second=318 amount=-1 +kerning first=375 second=318 amount=-1 +kerning first=217 second=260 amount=-1 +kerning first=86 second=228 amount=-1 +kerning first=72 second=367 amount=-1 +kerning first=258 second=45 amount=-1 +kerning first=289 second=108 amount=-1 +kerning first=253 second=279 amount=-1 +kerning first=268 second=290 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=1036 second=1104 amount=-1 +kerning first=82 second=231 amount=-1 +kerning first=193 second=8217 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=311 second=339 amount=-1 +kerning first=119 second=229 amount=-1 +kerning first=8222 second=119 amount=-1 +kerning first=252 second=8217 amount=-1 +kerning first=324 second=8217 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=352 second=304 amount=-1 +kerning first=87 second=240 amount=-1 +kerning first=193 second=352 amount=-1 +kerning first=284 second=45 amount=-1 +kerning first=368 second=229 amount=-1 +kerning first=356 second=45 amount=-1 +kerning first=296 second=229 amount=-1 +kerning first=107 second=45 amount=-1 +kerning first=268 second=310 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=346 second=77 amount=-1 +kerning first=263 second=307 amount=-1 +kerning first=344 second=111 amount=-1 +kerning first=226 second=255 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=221 second=211 amount=-1 +kerning first=1038 second=1033 amount=-1 +kerning first=1040 second=1038 amount=-1 +kerning first=1038 second=1040 amount=-2 +kerning first=118 second=46 amount=-1 +kerning first=8249 second=84 amount=-1 +kerning first=1038 second=1047 amount=-1 +kerning first=1038 second=1051 amount=-1 +kerning first=350 second=69 amount=-1 +kerning first=8250 second=346 amount=-1 +kerning first=218 second=193 amount=-1 +kerning first=119 second=289 amount=-1 +kerning first=1040 second=1057 amount=-1 +kerning first=1040 second=1058 amount=-1 +kerning first=1040 second=1059 amount=-1 +kerning first=1040 second=1060 amount=-1 +kerning first=1061 second=1063 amount=-1 +kerning first=83 second=289 amount=-1 +kerning first=354 second=79 amount=-1 +kerning first=296 second=289 amount=-1 +kerning first=1038 second=1072 amount=-1 +kerning first=1038 second=1073 amount=-1 +kerning first=1038 second=1074 amount=-1 +kerning first=1038 second=1076 amount=-1 +kerning first=1038 second=1077 amount=-1 +kerning first=1038 second=1078 amount=-1 +kerning first=1038 second=1079 amount=-1 +kerning first=1038 second=1080 amount=-1 +kerning first=1038 second=1081 amount=-1 +kerning first=1038 second=1082 amount=-1 +kerning first=1091 second=1083 amount=-1 +kerning first=1059 second=1084 amount=-1 +kerning first=1038 second=1085 amount=-1 +kerning first=1046 second=1086 amount=-1 +kerning first=1038 second=1087 amount=-1 +kerning first=1038 second=1088 amount=-1 +kerning first=1038 second=1089 amount=-1 +kerning first=103 second=225 amount=-1 +kerning first=1040 second=1091 amount=-1 +kerning first=1038 second=1092 amount=-1 +kerning first=1038 second=1093 amount=-1 +kerning first=1038 second=1094 amount=-1 +kerning first=1050 second=1095 amount=-1 +kerning first=1059 second=1096 amount=-1 +kerning first=1038 second=1097 amount=-1 +kerning first=1050 second=1098 amount=-1 +kerning first=1038 second=1099 amount=-1 +kerning first=1038 second=1100 amount=-1 +kerning first=45 second=375 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=1038 second=1103 amount=-1 +kerning first=258 second=264 amount=-1 +kerning first=1038 second=1105 amount=-1 +kerning first=1038 second=1107 amount=-1 +kerning first=1043 second=1108 amount=-1 +kerning first=291 second=225 amount=-1 +kerning first=1043 second=1113 amount=-1 +kerning first=1038 second=1114 amount=-1 +kerning first=327 second=225 amount=-1 +kerning first=1038 second=1116 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=1040 second=1118 amount=-1 +kerning first=1038 second=1119 amount=-1 +kerning first=313 second=364 amount=-1 +kerning first=286 second=287 amount=-1 +kerning first=221 second=46 amount=-1 +kerning first=260 second=368 amount=-1 +kerning first=288 second=287 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=252 second=287 amount=-1 +kerning first=352 second=206 amount=-1 +kerning first=352 second=69 amount=-1 +kerning first=260 second=347 amount=-1 +kerning first=344 second=71 amount=-1 +kerning first=71 second=46 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=8220 second=244 amount=-1 +kerning first=78 second=225 amount=-1 +kerning first=187 second=86 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=85 second=45 amount=-1 +kerning first=317 second=87 amount=-1 +kerning first=248 second=46 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=219 second=225 amount=-1 +kerning first=255 second=225 amount=-1 +kerning first=356 second=46 amount=-1 +kerning first=376 second=332 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=231 second=259 amount=-1 +kerning first=1038 second=1090 amount=-1 +kerning first=201 second=287 amount=-1 +kerning first=354 second=230 amount=-1 +kerning first=262 second=332 amount=-1 +kerning first=304 second=369 amount=-1 +kerning first=367 second=375 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=1027 second=1105 amount=-1 +kerning first=375 second=259 amount=-1 +kerning first=69 second=289 amount=-1 +kerning first=187 second=375 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=223 second=375 amount=-1 +kerning first=221 second=350 amount=-1 +kerning first=259 second=375 amount=-1 +kerning first=267 second=259 amount=-1 +kerning first=376 second=81 amount=-1 +kerning first=317 second=368 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=8216 second=196 amount=-2 +kerning first=268 second=81 amount=-1 +kerning first=8250 second=209 amount=-1 +kerning first=354 second=289 amount=-1 +kerning first=103 second=46 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=260 second=288 amount=-1 +kerning first=1065 second=1095 amount=-1 +kerning first=281 second=316 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=337 second=121 amount=-1 +kerning first=310 second=117 amount=-1 +kerning first=229 second=121 amount=-1 +kerning first=262 second=196 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=370 second=196 amount=-1 +kerning first=334 second=196 amount=-1 +kerning first=88 second=121 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=354 second=231 amount=-1 +kerning first=307 second=119 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=82 second=375 amount=-1 +kerning first=193 second=351 amount=-1 +kerning first=235 second=119 amount=-1 +kerning first=1059 second=1098 amount=-1 +kerning first=197 second=112 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=350 second=298 amount=-1 +kerning first=1059 second=1097 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=287 second=314 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=1038 second=1098 amount=-1 +kerning first=251 second=314 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=243 second=120 amount=-1 +kerning first=99 second=253 amount=-1 +kerning first=256 second=8249 amount=-1 +kerning first=240 second=253 amount=-1 +kerning first=220 second=8249 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=328 second=8249 amount=-1 +kerning first=204 second=291 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=364 second=8249 amount=-1 +kerning first=255 second=246 amount=-1 +kerning first=88 second=214 amount=-1 +kerning first=344 second=263 amount=-1 +kerning first=370 second=103 amount=-1 +kerning first=1060 second=1033 amount=-1 +kerning first=192 second=220 amount=-1 +kerning first=298 second=103 amount=-1 +kerning first=377 second=363 amount=-1 +kerning first=356 second=334 amount=-1 +kerning first=352 second=344 amount=-1 +kerning first=376 second=101 amount=-1 +kerning first=8217 second=226 amount=-1 +kerning first=311 second=281 amount=-1 +kerning first=44 second=8221 amount=-1 +kerning first=224 second=118 amount=-1 +kerning first=260 second=118 amount=-1 +kerning first=83 second=118 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=245 second=316 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=66 second=120 amount=-1 +kerning first=258 second=86 amount=-2 +kerning first=193 second=83 amount=-1 +kerning first=370 second=44 amount=-1 +kerning first=334 second=44 amount=-1 +kerning first=194 second=374 amount=-2 +kerning first=121 second=44 amount=-1 +kerning first=85 second=44 amount=-1 +kerning first=251 second=255 amount=-1 +kerning first=296 second=97 amount=-1 +kerning first=365 second=8221 amount=-1 +kerning first=196 second=211 amount=-1 +kerning first=344 second=262 amount=-1 +kerning first=257 second=8221 amount=-1 +kerning first=368 second=97 amount=-1 +kerning first=376 second=211 amount=-1 +kerning first=90 second=8249 amount=-1 +kerning first=268 second=211 amount=-1 +kerning first=221 second=79 amount=-1 +kerning first=346 second=209 amount=-1 +kerning first=108 second=118 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=321 second=118 amount=-1 +kerning first=187 second=85 amount=-1 +kerning first=262 second=65 amount=-1 +kerning first=218 second=83 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=82 second=85 amount=-1 +kerning first=334 second=65 amount=-1 +kerning first=121 second=234 amount=-1 +kerning first=354 second=192 amount=-2 +kerning first=249 second=118 amount=-1 +kerning first=254 second=120 amount=-1 +kerning first=8220 second=246 amount=-1 +kerning first=370 second=65 amount=-1 +kerning first=350 second=260 amount=-1 +kerning first=296 second=250 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=260 second=250 amount=-1 +kerning first=339 second=107 amount=-1 +kerning first=376 second=331 amount=-1 +kerning first=195 second=199 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=8250 second=302 amount=-1 +kerning first=284 second=84 amount=-1 +kerning first=365 second=291 amount=-1 +kerning first=84 second=381 amount=-1 +kerning first=244 second=253 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=71 second=84 amount=-1 +kerning first=221 second=291 amount=-1 +kerning first=80 second=291 amount=-1 +kerning first=311 second=242 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=8250 second=78 amount=-1 +kerning first=107 second=335 amount=-1 +kerning first=356 second=335 amount=-1 +kerning first=381 second=45 amount=-1 +kerning first=258 second=112 amount=-1 +kerning first=253 second=339 amount=-1 +kerning first=8220 second=245 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=253 second=240 amount=-1 +kerning first=86 second=268 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=66 second=370 amount=-1 +kerning first=8217 second=227 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=220 second=198 amount=-1 +kerning first=307 second=289 amount=-1 +kerning first=87 second=279 amount=-1 +kerning first=199 second=289 amount=-1 +kerning first=235 second=289 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=65 second=218 amount=-1 +kerning first=194 second=286 amount=-1 +kerning first=379 second=289 amount=-1 +kerning first=266 second=286 amount=-1 +kerning first=315 second=370 amount=-1 +kerning first=1061 second=1104 amount=-1 +kerning first=242 second=108 amount=-1 +kerning first=352 second=305 amount=-1 +kerning first=333 second=108 amount=-1 +kerning first=89 second=324 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=87 second=339 amount=-1 +kerning first=374 second=324 amount=-1 +kerning first=277 second=287 amount=-1 +kerning first=205 second=287 amount=-1 +kerning first=86 second=115 amount=-1 +kerning first=287 second=353 amount=-1 +kerning first=256 second=356 amount=-2 +kerning first=8220 second=283 amount=-1 +kerning first=354 second=290 amount=-1 +kerning first=84 second=223 amount=-1 +kerning first=119 second=97 amount=-1 +kerning first=356 second=275 amount=-1 +kerning first=313 second=287 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=303 second=279 amount=-1 +kerning first=302 second=226 amount=-1 +kerning first=321 second=368 amount=-1 +kerning first=107 second=275 amount=-1 +kerning first=45 second=74 amount=-1 +kerning first=216 second=198 amount=-1 +kerning first=287 second=45 amount=-1 +kerning first=288 second=194 amount=-1 +kerning first=323 second=45 amount=-1 +kerning first=366 second=74 amount=-1 +kerning first=74 second=45 amount=-1 +kerning first=354 second=350 amount=-1 +kerning first=356 second=353 amount=-1 +kerning first=303 second=240 amount=-1 +kerning first=80 second=289 amount=-1 +kerning first=82 second=356 amount=-1 +kerning first=1059 second=1116 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=352 second=112 amount=-1 +kerning first=1054 second=1033 amount=-1 +kerning first=354 second=214 amount=-1 +kerning first=367 second=255 amount=-1 +kerning first=221 second=289 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=259 second=255 amount=-1 +kerning first=376 second=261 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=253 second=227 amount=-1 +kerning first=187 second=255 amount=-1 +kerning first=67 second=112 amount=-1 +kerning first=82 second=255 amount=-1 +kerning first=375 second=240 amount=-1 +kerning first=260 second=211 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=304 second=97 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=221 second=193 amount=-2 +kerning first=374 second=241 amount=-1 +kerning first=379 second=251 amount=-1 +kerning first=362 second=192 amount=-1 +kerning first=365 second=8220 amount=-1 +kerning first=8217 second=346 amount=-1 +kerning first=356 second=257 amount=-1 +kerning first=218 second=192 amount=-1 +kerning first=256 second=338 amount=-1 +kerning first=290 second=192 amount=-1 +kerning first=66 second=326 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=44 second=8220 amount=-1 +kerning first=83 second=119 amount=-1 +kerning first=224 second=119 amount=-1 +kerning first=376 second=233 amount=-1 +kerning first=263 second=224 amount=-1 +kerning first=1046 second=1073 amount=-1 +kerning first=89 second=225 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=240 second=314 amount=-1 +kerning first=374 second=225 amount=-1 +kerning first=199 second=209 amount=-1 +kerning first=8217 second=263 amount=-1 +kerning first=302 second=363 amount=-1 +kerning first=302 second=225 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=376 second=213 amount=-1 +kerning first=356 second=375 amount=-1 +kerning first=1043 second=1072 amount=-1 +kerning first=76 second=375 amount=-1 +kerning first=268 second=213 amount=-1 +kerning first=364 second=259 amount=-1 +kerning first=248 second=375 amount=-1 +kerning first=350 second=87 amount=-1 +kerning first=1040 second=1054 amount=-1 +kerning first=220 second=259 amount=-1 +kerning first=221 second=101 amount=-1 +kerning first=8217 second=287 amount=-1 +kerning first=311 second=246 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=199 second=288 amount=-1 +kerning first=107 second=235 amount=-1 +kerning first=350 second=317 amount=-1 +kerning first=1043 second=1033 amount=-1 +kerning first=65 second=87 amount=-2 +kerning first=8217 second=267 amount=-1 +kerning first=195 second=218 amount=-1 +kerning first=356 second=235 amount=-1 +kerning first=82 second=104 amount=-1 +kerning first=207 second=369 amount=-1 +kerning first=346 second=76 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=44 second=171 amount=-1 +kerning first=354 second=212 amount=-1 +kerning first=1091 second=1113 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=221 second=171 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=118 second=277 amount=-1 +kerning first=362 second=83 amount=-1 +kerning first=82 second=277 amount=-1 +kerning first=262 second=197 amount=-1 +kerning first=77 second=287 amount=-1 +kerning first=240 second=121 amount=-1 +kerning first=278 second=103 amount=-1 +kerning first=99 second=121 amount=-1 +kerning first=370 second=197 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=262 second=352 amount=-1 +kerning first=334 second=197 amount=-1 +kerning first=263 second=229 amount=-1 +kerning first=370 second=122 amount=-1 +kerning first=121 second=122 amount=-1 +kerning first=268 second=270 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=354 second=100 amount=-1 +kerning first=279 second=108 amount=-1 +kerning first=221 second=192 amount=-2 +kerning first=324 second=8220 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=119 second=99 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=291 second=115 amount=-1 +kerning first=363 second=8217 amount=-1 +kerning first=1101 second=1076 amount=-1 +kerning first=255 second=115 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=8250 second=76 amount=-1 +kerning first=304 second=171 amount=-1 +kerning first=268 second=171 amount=-1 +kerning first=339 second=46 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=195 second=86 amount=-2 +kerning first=268 second=82 amount=-1 +kerning first=381 second=103 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=196 second=8221 amount=-1 +kerning first=201 second=103 amount=-1 +kerning first=258 second=361 amount=-1 +kerning first=67 second=266 amount=-1 +kerning first=330 second=361 amount=-1 +kerning first=287 second=351 amount=-1 +kerning first=310 second=249 amount=-1 +kerning first=195 second=220 amount=-1 +kerning first=365 second=287 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=260 second=86 amount=-2 +kerning first=195 second=67 amount=-1 +kerning first=354 second=232 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=280 second=287 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=264 second=202 amount=-1 +kerning first=107 second=171 amount=-1 +kerning first=366 second=380 amount=-1 +kerning first=8250 second=207 amount=-1 +kerning first=120 second=224 amount=-1 +kerning first=84 second=379 amount=-1 +kerning first=8217 second=225 amount=-1 +kerning first=317 second=217 amount=-1 +kerning first=346 second=69 amount=-1 +kerning first=192 second=211 amount=-1 +kerning first=1070 second=1040 amount=-1 +kerning first=84 second=224 amount=-1 +kerning first=350 second=218 amount=-1 +kerning first=82 second=354 amount=-1 +kerning first=352 second=364 amount=-1 +kerning first=1050 second=1104 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=337 second=120 amount=-1 +kerning first=234 second=104 amount=-1 +kerning first=254 second=46 amount=-1 +kerning first=97 second=118 amount=-1 +kerning first=376 second=193 amount=-2 +kerning first=256 second=117 amount=-1 +kerning first=193 second=71 amount=-1 +kerning first=72 second=250 amount=-1 +kerning first=221 second=331 amount=-1 +kerning first=1027 second=1033 amount=-1 +kerning first=375 second=108 amount=-1 +kerning first=339 second=108 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=89 second=287 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=260 second=79 amount=-1 +kerning first=234 second=107 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=374 second=287 amount=-1 +kerning first=302 second=287 amount=-1 +kerning first=1061 second=1089 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=230 second=287 amount=-1 +kerning first=337 second=44 amount=-1 +kerning first=374 second=113 amount=-1 +kerning first=266 second=287 amount=-1 +kerning first=87 second=90 amount=-1 +kerning first=187 second=84 amount=-1 +kerning first=194 second=287 amount=-1 +kerning first=82 second=84 amount=-1 +kerning first=362 second=291 amount=-1 +kerning first=290 second=291 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=370 second=45 amount=-1 +kerning first=86 second=269 amount=-1 +kerning first=354 second=210 amount=-1 +kerning first=77 second=291 amount=-1 +kerning first=78 second=365 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=262 second=45 amount=-1 +kerning first=1038 second=1108 amount=-1 +kerning first=264 second=68 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=371 second=269 amount=-1 +kerning first=87 second=8249 amount=-1 +kerning first=311 second=279 amount=-1 +kerning first=344 second=286 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=252 second=375 amount=-1 +kerning first=264 second=8249 amount=-1 +kerning first=350 second=221 amount=-1 +kerning first=267 second=108 amount=-1 +kerning first=220 second=196 amount=-1 +kerning first=72 second=228 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=268 second=332 amount=-1 +kerning first=296 second=251 amount=-1 +kerning first=8218 second=220 amount=-1 +kerning first=260 second=251 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=65 second=219 amount=-1 +kerning first=281 second=108 amount=-1 +kerning first=371 second=245 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=310 second=375 amount=-1 +kerning first=89 second=115 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=221 second=212 amount=-1 +kerning first=263 second=226 amount=-1 +kerning first=1045 second=1098 amount=-1 +kerning first=1118 second=1113 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=108 second=119 amount=-1 +kerning first=321 second=119 amount=-1 +kerning first=356 second=109 amount=-1 +kerning first=194 second=115 amount=-1 +kerning first=368 second=230 amount=-1 +kerning first=249 second=119 amount=-1 +kerning first=374 second=115 amount=-1 +kerning first=78 second=363 amount=-1 +kerning first=221 second=233 amount=-1 +kerning first=263 second=97 amount=-1 +kerning first=327 second=363 amount=-1 +kerning first=337 second=314 amount=-1 +kerning first=199 second=211 amount=-1 +kerning first=225 second=375 amount=-1 +kerning first=362 second=194 amount=-1 +kerning first=356 second=255 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=248 second=255 amount=-1 +kerning first=1046 second=1092 amount=-1 +kerning first=89 second=244 amount=-1 +kerning first=8220 second=227 amount=-1 +kerning first=121 second=275 amount=-1 +kerning first=354 second=101 amount=-1 +kerning first=290 second=194 amount=-1 +kerning first=8250 second=368 amount=-1 +kerning first=374 second=244 amount=-1 +kerning first=316 second=8221 amount=-1 +kerning first=197 second=121 amount=-1 +kerning first=262 second=296 amount=-1 +kerning first=346 second=325 amount=-1 +kerning first=1043 second=1095 amount=-1 +kerning first=334 second=46 amount=-1 +kerning first=370 second=46 amount=-1 +kerning first=84 second=281 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=264 second=69 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=67 second=264 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=89 second=266 amount=-1 +kerning first=374 second=266 amount=-1 +kerning first=375 second=339 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=264 second=70 amount=-1 +kerning first=266 second=266 amount=-1 +kerning first=226 second=253 amount=-1 +kerning first=230 second=318 amount=-1 +kerning first=39 second=1111 amount=1 +kerning first=194 second=334 amount=-1 +kerning first=317 second=86 amount=-1 +kerning first=8250 second=118 amount=-1 +kerning first=85 second=46 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=249 second=8217 amount=-1 +kerning first=119 second=230 amount=-1 +kerning first=260 second=8220 amount=-1 +kerning first=369 second=8221 amount=-1 +kerning first=381 second=375 amount=-1 +kerning first=316 second=45 amount=-1 +kerning first=374 second=333 amount=-1 +kerning first=232 second=311 amount=-1 +kerning first=193 second=370 amount=-1 +kerning first=221 second=213 amount=-1 +kerning first=241 second=8249 amount=-1 +kerning first=84 second=8250 amount=-1 +kerning first=232 second=289 amount=-1 +kerning first=268 second=289 amount=-1 +kerning first=364 second=260 amount=-1 +kerning first=310 second=210 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=196 second=289 amount=-1 +kerning first=376 second=289 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=287 second=122 amount=-1 +kerning first=253 second=318 amount=-1 +kerning first=220 second=260 amount=-1 +kerning first=304 second=289 amount=-1 +kerning first=8250 second=85 amount=-1 +kerning first=195 second=87 amount=-2 +kerning first=346 second=194 amount=-1 +kerning first=113 second=8221 amount=-1 +kerning first=346 second=207 amount=-1 +kerning first=354 second=288 amount=-1 +kerning first=256 second=218 amount=-1 +kerning first=107 second=277 amount=-1 +kerning first=77 second=369 amount=-1 +kerning first=350 second=219 amount=-1 +kerning first=264 second=65 amount=-1 +kerning first=371 second=248 amount=-1 +kerning first=356 second=277 amount=-1 +kerning first=119 second=231 amount=-1 +kerning first=66 second=291 amount=-1 +kerning first=199 second=210 amount=-1 +kerning first=217 second=346 amount=-1 +kerning first=253 second=242 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=350 second=89 amount=-1 +kerning first=302 second=365 amount=-1 +kerning first=350 second=80 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=258 second=284 amount=-1 +kerning first=284 second=256 amount=-1 +kerning first=256 second=217 amount=-1 +kerning first=251 second=121 amount=-1 +kerning first=356 second=256 amount=-2 +kerning first=375 second=101 amount=-1 +kerning first=119 second=259 amount=-1 +kerning first=264 second=298 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=254 second=375 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=193 second=112 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=8216 second=248 amount=-1 +kerning first=346 second=75 amount=-1 +kerning first=65 second=89 amount=-2 +kerning first=8218 second=219 amount=-1 +kerning first=256 second=86 amount=-2 +kerning first=284 second=354 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=82 second=333 amount=-1 +kerning first=376 second=214 amount=-1 +kerning first=118 second=333 amount=-1 +kerning first=352 second=362 amount=-1 +kerning first=256 second=354 amount=-2 +kerning first=366 second=382 amount=-1 +kerning first=8220 second=111 amount=-1 +kerning first=264 second=280 amount=-1 +kerning first=1059 second=1040 amount=-2 +kerning first=255 second=287 amount=-1 +kerning first=82 second=235 amount=-1 +kerning first=315 second=8221 amount=-1 +kerning first=86 second=347 amount=-1 +kerning first=84 second=333 amount=-1 +kerning first=118 second=235 amount=-1 +kerning first=1075 second=1083 amount=-1 +kerning first=231 second=316 amount=-1 +kerning first=119 second=100 amount=-1 +kerning first=375 second=316 amount=-1 +kerning first=268 second=214 amount=-1 +kerning first=350 second=220 amount=-1 +kerning first=339 second=316 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=267 second=316 amount=-1 +kerning first=71 second=103 amount=-1 +kerning first=8216 second=65 amount=-2 +kerning first=102 second=8221 amount=1 +kerning first=1036 second=1086 amount=-1 +kerning first=264 second=200 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=363 second=287 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=66 second=8221 amount=-1 +kerning first=87 second=8250 amount=-1 +kerning first=258 second=262 amount=-1 +kerning first=371 second=118 amount=-1 +kerning first=350 second=366 amount=-1 +kerning first=227 second=118 amount=-1 +kerning first=381 second=255 amount=-1 +kerning first=354 second=211 amount=-1 +kerning first=253 second=8249 amount=-1 +kerning first=217 second=8249 amount=-1 +kerning first=313 second=366 amount=-1 +kerning first=325 second=8249 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=289 second=8249 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=376 second=290 amount=-1 +kerning first=240 second=44 amount=-1 +kerning first=338 second=287 amount=-1 +kerning first=374 second=267 amount=-1 +kerning first=107 second=234 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=199 second=79 amount=-1 +kerning first=86 second=118 amount=-1 +kerning first=354 second=331 amount=-1 +kerning first=260 second=350 amount=-1 +kerning first=255 second=244 amount=-1 +kerning first=83 second=209 amount=-1 +kerning first=368 second=350 amount=-1 +kerning first=118 second=257 amount=-1 +kerning first=356 second=234 amount=-1 +kerning first=89 second=267 amount=-1 +kerning first=376 second=192 amount=-2 +kerning first=8250 second=75 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=268 second=192 amount=-1 +kerning first=374 second=245 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=310 second=250 amount=-1 +kerning first=8249 second=374 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=350 second=198 amount=-1 +kerning first=221 second=332 amount=-1 +kerning first=89 second=245 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=84 second=378 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=1107 second=1113 amount=-1 +kerning first=381 second=102 amount=-1 +kerning first=76 second=90 amount=-1 +kerning first=377 second=361 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=255 second=113 amount=-1 +kerning first=71 second=256 amount=-1 +kerning first=351 second=291 amount=-1 +kerning first=315 second=291 amount=-1 +kerning first=1024 second=1090 amount=-1 +kerning first=97 second=119 amount=-1 +kerning first=279 second=291 amount=-1 +kerning first=310 second=119 amount=-1 +kerning first=346 second=119 amount=-1 +kerning first=207 second=291 amount=-1 +kerning first=254 second=314 amount=-1 +kerning first=8250 second=270 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=354 second=233 amount=-1 +kerning first=84 second=113 amount=-1 +kerning first=334 second=198 amount=-1 +kerning first=344 second=79 amount=-1 +kerning first=370 second=198 amount=-1 +kerning first=264 second=67 amount=-1 +kerning first=262 second=198 amount=-1 +kerning first=251 second=291 amount=-1 +kerning first=77 second=250 amount=-1 +kerning first=8217 second=233 amount=-1 +kerning first=87 second=67 amount=-1 +kerning first=74 second=291 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=221 second=268 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=270 second=44 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=356 second=171 amount=-1 +kerning first=66 second=212 amount=-1 +kerning first=290 second=84 amount=-1 +kerning first=356 second=337 amount=-1 +kerning first=264 second=72 amount=-1 +kerning first=317 second=378 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=231 second=261 amount=-1 +kerning first=266 second=210 amount=-1 +kerning first=354 second=228 amount=-1 +kerning first=327 second=361 amount=-1 +kerning first=375 second=261 amount=-1 +kerning first=78 second=361 amount=-1 +kerning first=267 second=261 amount=-1 +kerning first=344 second=89 amount=-1 +kerning first=196 second=83 amount=-1 +kerning first=268 second=197 amount=-1 +kerning first=268 second=83 amount=-1 +kerning first=234 second=108 amount=-1 +kerning first=304 second=367 amount=-1 +kerning first=376 second=83 amount=-1 +kerning first=1098 second=1118 amount=-1 +kerning first=344 second=245 amount=-1 +kerning first=67 second=262 amount=-1 +kerning first=275 second=107 amount=-1 +kerning first=260 second=286 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=260 second=262 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=286 second=8249 amount=-1 +kerning first=8216 second=111 amount=-1 +kerning first=192 second=356 amount=-2 +kerning first=66 second=289 amount=-1 +kerning first=356 second=194 amount=-2 +kerning first=207 second=289 amount=-1 +kerning first=351 second=289 amount=-1 +kerning first=279 second=289 amount=-1 +kerning first=288 second=196 amount=-1 +kerning first=315 second=289 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=71 second=194 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=374 second=97 amount=-1 +kerning first=66 second=353 amount=-1 +kerning first=317 second=255 amount=-1 +kerning first=266 second=112 amount=-1 +kerning first=353 second=255 amount=-1 +kerning first=245 second=255 amount=-1 +kerning first=194 second=112 amount=-1 +kerning first=281 second=255 amount=-1 +kerning first=8250 second=119 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=87 second=243 amount=-1 +kerning first=302 second=97 amount=-1 +kerning first=351 second=353 amount=-1 +kerning first=8218 second=217 amount=-1 +kerning first=310 second=290 amount=-1 +kerning first=242 second=46 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=101 second=46 amount=-1 +kerning first=350 second=46 amount=-1 +kerning first=266 second=209 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=84 second=338 amount=-1 +kerning first=217 second=257 amount=-1 +kerning first=89 second=288 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=325 second=257 amount=-1 +kerning first=253 second=257 amount=-1 +kerning first=289 second=257 amount=-1 +kerning first=120 second=225 amount=-1 +kerning first=253 second=111 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=8216 second=279 amount=-1 +kerning first=107 second=273 amount=-1 +kerning first=118 second=101 amount=-1 +kerning first=1050 second=1105 amount=-1 +kerning first=199 second=193 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=226 second=375 amount=-1 +kerning first=231 second=46 amount=-1 +kerning first=8216 second=197 amount=-2 +kerning first=352 second=282 amount=-1 +kerning first=72 second=369 amount=-1 +kerning first=354 second=213 amount=-1 +kerning first=67 second=282 amount=-1 +kerning first=192 second=87 amount=-2 +kerning first=101 second=316 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=242 second=316 amount=-1 +kerning first=330 second=369 amount=-1 +kerning first=281 second=253 amount=-1 +kerning first=376 second=122 amount=-1 +kerning first=352 second=287 amount=-1 +kerning first=1061 second=1059 amount=-1 +kerning first=268 second=122 amount=-1 +kerning first=219 second=346 amount=-1 +kerning first=316 second=287 amount=-1 +kerning first=199 second=81 amount=-1 +kerning first=65 second=220 amount=-1 +kerning first=356 second=352 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=224 second=8217 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=231 second=105 amount=-1 +kerning first=102 second=254 amount=1 +kerning first=354 second=351 amount=-1 +kerning first=221 second=223 amount=-1 +kerning first=8217 second=244 amount=-1 +kerning first=205 second=117 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=266 second=75 amount=-1 +kerning first=90 second=289 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=253 second=277 amount=-1 +kerning first=381 second=253 amount=-1 +kerning first=102 second=104 amount=1 +kerning first=267 second=225 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=256 second=85 amount=-1 +kerning first=221 second=347 amount=-1 +kerning first=379 second=252 amount=-1 +kerning first=250 second=318 amount=-1 +kerning first=264 second=199 amount=-1 +kerning first=45 second=119 amount=-1 +kerning first=8217 second=97 amount=-1 +kerning first=197 second=71 amount=-1 +kerning first=258 second=84 amount=-2 +kerning first=310 second=251 amount=-1 +kerning first=84 second=382 amount=-1 +kerning first=83 second=120 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=371 second=8221 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=354 second=332 amount=-1 +kerning first=367 second=103 amount=-1 +kerning first=317 second=220 amount=-1 +kerning first=354 second=90 amount=-1 +kerning first=260 second=365 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=122 second=171 amount=-1 +kerning first=352 second=203 amount=-1 +kerning first=187 second=103 amount=-1 +kerning first=67 second=291 amount=-1 +kerning first=296 second=365 amount=-1 +kerning first=82 second=103 amount=-1 +kerning first=118 second=103 amount=-1 +kerning first=227 second=119 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=279 second=314 amount=-1 +kerning first=243 second=314 amount=-1 +kerning first=371 second=119 amount=-1 +kerning first=279 second=118 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=263 second=119 amount=-1 +kerning first=315 second=118 amount=-1 +kerning first=76 second=380 amount=-1 +kerning first=102 second=314 amount=1 +kerning first=66 second=118 amount=-1 +kerning first=66 second=314 amount=-1 +kerning first=289 second=380 amount=-1 +kerning first=253 second=380 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=195 second=217 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=194 second=366 amount=-1 +kerning first=8222 second=380 amount=-1 +kerning first=351 second=118 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=354 second=248 amount=-1 +kerning first=315 second=8220 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=8220 second=287 amount=-1 +kerning first=310 second=365 amount=-1 +kerning first=258 second=364 amount=-1 +kerning first=119 second=101 amount=-1 +kerning first=66 second=8220 amount=-1 +kerning first=350 second=202 amount=-1 +kerning first=87 second=199 amount=-1 +kerning first=196 second=118 amount=-1 +kerning first=249 second=8221 amount=-1 +kerning first=350 second=85 amount=-1 +kerning first=310 second=79 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=302 second=361 amount=-1 +kerning first=376 second=118 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=344 second=338 amount=-1 +kerning first=232 second=118 amount=-1 +kerning first=356 second=377 amount=-1 +kerning first=65 second=85 amount=-1 +kerning first=221 second=83 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=1059 second=1060 amount=-1 +kerning first=311 second=8249 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=207 second=250 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=354 second=193 amount=-2 +kerning first=353 second=103 amount=-1 +kerning first=281 second=103 amount=-1 +kerning first=317 second=103 amount=-1 +kerning first=8218 second=374 amount=-2 +kerning first=8218 second=380 amount=-1 +kerning first=98 second=318 amount=-1 +kerning first=376 second=210 amount=-1 +kerning first=118 second=337 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=275 second=318 amount=-1 +kerning first=82 second=337 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=218 second=65 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=1044 second=1095 amount=-1 +kerning first=268 second=210 amount=-1 +kerning first=290 second=65 amount=-1 +kerning first=199 second=286 amount=-1 +kerning first=362 second=65 amount=-1 +kerning first=264 second=204 amount=-1 +kerning first=364 second=378 amount=-1 +kerning first=366 second=227 amount=-1 +kerning first=281 second=44 amount=-1 +kerning first=220 second=378 amount=-1 +kerning first=330 second=227 amount=-1 +kerning first=354 second=171 amount=-1 +kerning first=266 second=73 amount=-1 +kerning first=354 second=268 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=352 second=366 amount=-1 +kerning first=119 second=269 amount=-1 +kerning first=317 second=356 amount=-1 +kerning first=192 second=219 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=262 second=212 amount=-1 +kerning first=262 second=66 amount=-1 +kerning first=375 second=242 amount=-1 +kerning first=367 second=108 amount=-1 +kerning first=86 second=328 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=8216 second=291 amount=-1 +kerning first=82 second=108 amount=-1 +kerning first=280 second=103 amount=-1 +kerning first=223 second=108 amount=-1 +kerning first=262 second=317 amount=-1 +kerning first=303 second=242 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=291 second=45 amount=-1 +kerning first=8220 second=248 amount=-1 +kerning first=354 second=122 amount=-1 +kerning first=87 second=224 amount=-1 +kerning first=1061 second=1105 amount=-1 +kerning first=8250 second=375 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=267 second=237 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=375 second=275 amount=-1 +kerning first=8218 second=368 amount=-1 +kerning first=376 second=353 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=194 second=119 amount=-1 +kerning first=1058 second=1103 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=352 second=77 amount=-1 +kerning first=218 second=45 amount=-1 +kerning first=307 second=287 amount=-1 +kerning first=83 second=325 amount=-1 +kerning first=89 second=121 amount=-1 +kerning first=119 second=281 amount=-1 +kerning first=1050 second=1086 amount=-1 +kerning first=290 second=45 amount=-1 +kerning first=326 second=45 amount=-1 +kerning first=362 second=45 amount=-1 +kerning first=317 second=354 amount=-1 +kerning first=350 second=374 amount=-1 +kerning first=311 second=243 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=233 second=287 amount=-1 +kerning first=8216 second=100 amount=-1 +kerning first=269 second=287 amount=-1 +kerning first=197 second=287 amount=-1 +kerning first=196 second=353 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=108 second=8217 amount=-1 +kerning first=84 second=283 amount=-1 +kerning first=1061 second=1108 amount=-1 +kerning first=291 second=228 amount=-1 +kerning first=377 second=287 amount=-1 +kerning first=84 second=109 amount=-1 +kerning first=321 second=8217 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=313 second=368 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=311 second=111 amount=-1 +kerning first=374 second=264 amount=-1 +kerning first=266 second=264 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=221 second=248 amount=-1 +kerning first=272 second=44 amount=-1 +kerning first=89 second=269 amount=-1 +kerning first=356 second=253 amount=-1 +kerning first=197 second=364 amount=-1 +kerning first=314 second=118 amount=-1 +kerning first=374 second=269 amount=-1 +kerning first=256 second=334 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=266 second=346 amount=-1 +kerning first=75 second=288 amount=-1 +kerning first=255 second=245 amount=-1 +kerning first=8216 second=232 amount=-1 +kerning first=218 second=289 amount=-1 +kerning first=77 second=289 amount=-1 +kerning first=89 second=346 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=362 second=289 amount=-1 +kerning first=86 second=99 amount=-1 +kerning first=290 second=289 amount=-1 +kerning first=220 second=46 amount=-1 +kerning first=296 second=369 amount=-1 +kerning first=352 second=207 amount=-1 +kerning first=260 second=369 amount=-1 +kerning first=364 second=46 amount=-1 +kerning first=366 second=192 amount=-1 +kerning first=102 second=98 amount=1 +kerning first=66 second=98 amount=-1 +kerning first=350 second=70 amount=-1 +kerning first=371 second=99 amount=-1 +kerning first=362 second=230 amount=-1 +kerning first=8220 second=267 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=199 second=332 amount=-1 +kerning first=82 second=352 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=260 second=81 amount=-1 +kerning first=218 second=230 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=374 second=346 amount=-1 +kerning first=221 second=122 amount=-1 +kerning first=119 second=233 amount=-1 +kerning first=65 second=217 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=221 second=351 amount=-1 +kerning first=83 second=102 amount=-1 +kerning first=334 second=256 amount=-1 +kerning first=370 second=256 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=324 second=119 amount=-1 +kerning first=350 second=217 amount=-1 +kerning first=302 second=117 amount=-1 +kerning first=262 second=256 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=232 second=314 amount=-1 +kerning first=1046 second=1095 amount=-1 +kerning first=87 second=263 amount=-1 +kerning first=381 second=121 amount=-1 +kerning first=84 second=245 amount=-1 +kerning first=326 second=8220 amount=-1 +kerning first=205 second=363 amount=-1 +kerning first=262 second=82 amount=-1 +kerning first=113 second=8220 amount=-1 +kerning first=266 second=302 amount=-1 +kerning first=258 second=221 amount=-2 +kerning first=296 second=228 amount=-1 +kerning first=368 second=228 amount=-1 +kerning first=376 second=347 amount=-1 +kerning first=119 second=228 amount=-1 +kerning first=375 second=281 amount=-1 +kerning first=291 second=259 amount=-1 +kerning first=196 second=347 amount=-1 +kerning first=97 second=8221 amount=-1 +kerning first=195 second=85 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=67 second=288 amount=-1 +kerning first=260 second=266 amount=-1 +kerning first=8216 second=335 amount=-1 +kerning first=289 second=316 amount=-1 +kerning first=229 second=8220 amount=-1 +kerning first=218 second=197 amount=-1 +kerning first=371 second=246 amount=-1 +kerning first=354 second=83 amount=-1 +kerning first=356 second=90 amount=-1 +kerning first=346 second=171 amount=-1 +kerning first=362 second=197 amount=-1 +kerning first=310 second=171 amount=-1 +kerning first=352 second=325 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=290 second=197 amount=-1 +kerning first=382 second=171 amount=-1 +kerning first=258 second=87 amount=-2 +kerning first=1027 second=1051 amount=-1 +kerning first=234 second=103 amount=-1 +kerning first=8250 second=350 amount=-1 +kerning first=1043 second=1077 amount=-1 +kerning first=262 second=278 amount=-1 +kerning first=303 second=281 amount=-1 +kerning first=198 second=103 amount=-1 +kerning first=364 second=103 amount=-1 +kerning first=346 second=274 amount=-1 +kerning first=220 second=103 amount=-1 +kerning first=256 second=103 amount=-1 +kerning first=84 second=263 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=119 second=333 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=284 second=196 amount=-1 +kerning first=246 second=120 amount=-1 +kerning first=260 second=334 amount=-1 +kerning first=262 second=214 amount=-1 +kerning first=266 second=284 amount=-1 +kerning first=232 second=255 amount=-1 +kerning first=84 second=199 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=286 second=89 amount=-1 +kerning first=374 second=284 amount=-1 +kerning first=87 second=382 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=367 second=121 amount=-1 +kerning first=205 second=361 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=344 second=362 amount=-1 +kerning first=259 second=121 amount=-1 +kerning first=8218 second=356 amount=-2 +kerning first=223 second=121 amount=-1 +kerning first=310 second=264 amount=-1 +kerning first=187 second=121 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=303 second=339 amount=-1 +kerning first=224 second=8221 amount=-1 +kerning first=66 second=102 amount=-1 +kerning first=260 second=8221 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=350 second=72 amount=-1 +kerning first=257 second=118 amount=-1 +kerning first=303 second=235 amount=-1 +kerning first=375 second=235 amount=-1 +kerning first=365 second=118 amount=-1 +kerning first=119 second=248 amount=-1 +kerning first=90 second=378 amount=-1 +kerning first=253 second=283 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=87 second=281 amount=-1 +kerning first=221 second=118 amount=-1 +kerning first=45 second=69 amount=-1 +kerning first=284 second=86 amount=-1 +kerning first=266 second=352 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=8216 second=289 amount=-1 +kerning first=262 second=315 amount=-1 +kerning first=240 second=120 amount=-1 +kerning first=264 second=323 amount=-1 +kerning first=45 second=346 amount=-1 +kerning first=71 second=86 amount=-1 +kerning first=192 second=217 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=304 second=250 amount=-1 +kerning first=86 second=83 amount=-1 +kerning first=217 second=224 amount=-1 +kerning first=356 second=198 amount=-2 +kerning first=289 second=224 amount=-1 +kerning first=327 second=227 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=284 second=198 amount=-1 +kerning first=291 second=227 amount=-1 +kerning first=255 second=227 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=192 second=89 amount=-2 +kerning first=236 second=8249 amount=-1 +kerning first=78 second=227 amount=-1 +kerning first=72 second=363 amount=-1 +kerning first=86 second=244 amount=-1 +kerning first=381 second=291 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=325 second=97 amount=-1 +kerning first=371 second=244 amount=-1 +kerning first=317 second=90 amount=-1 +kerning first=87 second=121 amount=-1 +kerning first=201 second=291 amount=-1 +kerning first=86 second=187 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=375 second=378 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=248 second=44 amount=-1 +kerning first=290 second=256 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=199 second=268 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=362 second=256 amount=-1 +kerning first=121 second=337 amount=-1 +kerning first=284 second=44 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=197 second=366 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=71 second=198 amount=-1 +kerning first=218 second=256 amount=-1 +kerning first=310 second=286 amount=-1 +kerning first=89 second=326 amount=-1 +kerning first=366 second=287 amount=-1 +kerning first=330 second=287 amount=-1 +kerning first=266 second=205 amount=-1 +kerning first=258 second=287 amount=-1 +kerning first=272 second=197 amount=-1 +kerning first=194 second=368 amount=-1 +kerning first=374 second=326 amount=-1 +kerning first=304 second=228 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=86 second=350 amount=-1 +kerning first=374 second=262 amount=-1 +kerning first=248 second=108 amount=-1 +kerning first=266 second=262 amount=-1 +kerning first=344 second=8249 amount=-1 +kerning first=217 second=261 amount=-1 +kerning first=380 second=8249 amount=-1 +kerning first=255 second=269 amount=-1 +kerning first=325 second=261 amount=-1 +kerning first=289 second=261 amount=-1 +kerning first=8220 second=97 amount=-1 +kerning first=253 second=261 amount=-1 +kerning first=327 second=229 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=291 second=229 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=1038 second=1113 amount=-1 +kerning first=220 second=257 amount=-1 +kerning first=1036 second=1059 amount=-1 +kerning first=78 second=229 amount=-1 +kerning first=194 second=346 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=255 second=229 amount=-1 +kerning first=219 second=229 amount=-1 +kerning first=86 second=286 amount=-1 +kerning first=84 second=243 amount=-1 +kerning first=103 second=97 amount=-1 +kerning first=118 second=240 amount=-1 +kerning first=260 second=332 amount=-1 +kerning first=1070 second=1038 amount=-1 +kerning first=199 second=290 amount=-1 +kerning first=121 second=271 amount=-1 +kerning first=8216 second=333 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=195 second=356 amount=-2 +kerning first=87 second=261 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=313 second=381 amount=-1 +kerning first=266 second=304 amount=-1 +kerning first=82 second=275 amount=-1 +kerning first=339 second=255 amount=-1 +kerning first=231 second=255 amount=-1 +kerning first=119 second=226 amount=-1 +kerning first=8218 second=378 amount=-1 +kerning first=267 second=255 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=374 second=227 amount=-1 +kerning first=241 second=119 amount=-1 +kerning first=296 second=226 amount=-1 +kerning first=277 second=119 amount=-1 +kerning first=90 second=255 amount=-1 +kerning first=302 second=227 amount=-1 +kerning first=345 second=44 amount=-1 +kerning first=368 second=226 amount=-1 +kerning first=67 second=71 amount=-1 +kerning first=374 second=259 amount=-1 +kerning first=313 second=119 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=330 second=225 amount=-1 +kerning first=366 second=225 amount=-1 +kerning first=310 second=363 amount=-1 +kerning first=1113 second=1091 amount=-1 +kerning first=365 second=314 amount=-1 +kerning first=103 second=230 amount=-1 +kerning first=84 second=241 amount=-1 +kerning first=364 second=257 amount=-1 +kerning first=334 second=192 amount=-1 +kerning first=370 second=192 amount=-1 +kerning first=193 second=289 amount=-1 +kerning first=213 second=193 amount=-1 +kerning first=192 second=338 amount=-1 +kerning first=193 second=8220 amount=-1 +kerning first=264 second=338 amount=-1 +kerning first=362 second=122 amount=-1 +kerning first=233 second=46 amount=-1 +kerning first=245 second=44 amount=-1 +kerning first=218 second=122 amount=-1 +kerning first=84 second=375 amount=-1 +kerning first=86 second=288 amount=-1 +kerning first=65 second=354 amount=-2 +kerning first=68 second=46 amount=-1 +kerning first=260 second=213 amount=-1 +kerning first=195 second=361 amount=-1 +kerning first=221 second=230 amount=-1 +kerning first=344 second=364 amount=-1 +kerning first=379 second=369 amount=-1 +kerning first=245 second=46 amount=-1 +kerning first=281 second=46 amount=-1 +kerning first=266 second=282 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=197 second=346 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=240 second=375 amount=-1 +kerning first=286 second=87 amount=-1 +kerning first=99 second=375 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=375 second=277 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=89 second=328 amount=-1 +kerning first=354 second=243 amount=-1 +kerning first=303 second=277 amount=-1 +kerning first=376 second=351 amount=-1 +kerning first=352 second=75 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=196 second=351 amount=-1 +kerning first=97 second=8217 amount=-1 +kerning first=346 second=330 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=69 second=287 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=82 second=253 amount=-1 +kerning first=1100 second=1118 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=187 second=253 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=259 second=253 amount=-1 +kerning first=371 second=231 amount=-1 +kerning first=223 second=253 amount=-1 +kerning first=327 second=117 amount=-1 +kerning first=284 second=103 amount=-1 +kerning first=212 second=260 amount=-1 +kerning first=376 second=65 amount=-2 +kerning first=356 second=121 amount=-1 +kerning first=71 second=260 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=374 second=328 amount=-1 +kerning first=86 second=231 amount=-1 +kerning first=216 second=197 amount=-1 +kerning first=284 second=260 amount=-1 +kerning first=344 second=318 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=356 second=260 amount=-2 +kerning first=234 second=121 amount=-1 +kerning first=356 second=196 amount=-2 +kerning first=71 second=196 amount=-1 +kerning first=250 second=316 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=351 second=351 amount=-1 +kerning first=281 second=118 amount=-1 +kerning first=221 second=228 amount=-1 +kerning first=218 second=44 amount=-1 +kerning first=89 second=99 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=264 second=382 amount=-1 +kerning first=374 second=99 amount=-1 +kerning first=310 second=213 amount=-1 +kerning first=344 second=221 amount=-1 +kerning first=67 second=302 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=66 second=351 amount=-1 +kerning first=1027 second=1093 amount=-1 +kerning first=199 second=270 amount=-1 +kerning first=258 second=71 amount=-1 +kerning first=374 second=8250 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=310 second=266 amount=-1 +kerning first=119 second=246 amount=-1 +kerning first=375 second=103 amount=-1 +kerning first=267 second=103 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=195 second=103 amount=-1 +kerning first=325 second=224 amount=-1 +kerning first=231 second=103 amount=-1 +kerning first=90 second=103 amount=-1 +kerning first=1043 second=1092 amount=-1 +kerning first=245 second=253 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=353 second=253 amount=-1 +kerning first=195 second=354 amount=-2 +kerning first=317 second=253 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=260 second=171 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=368 second=171 amount=-1 +kerning first=234 second=255 amount=-1 +kerning first=253 second=281 amount=-1 +kerning first=87 second=283 amount=-1 +kerning first=354 second=118 amount=-1 +kerning first=72 second=365 amount=-1 +kerning first=45 second=253 amount=-1 +kerning first=266 second=45 amount=-1 +kerning first=262 second=313 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=283 second=287 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=70 second=287 amount=-1 +kerning first=262 second=216 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=192 second=85 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=118 second=273 amount=-1 +kerning first=120 second=8249 amount=-1 +kerning first=83 second=193 amount=-1 +kerning first=374 second=46 amount=-1 +kerning first=332 second=193 amount=-1 +kerning first=310 second=118 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=375 second=279 amount=-1 +kerning first=268 second=327 amount=-1 +kerning first=344 second=113 amount=-1 +kerning first=103 second=227 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=260 second=268 amount=-1 +kerning first=313 second=8217 amount=-1 +kerning first=1027 second=1113 amount=-1 +kerning first=121 second=333 amount=-1 +kerning first=370 second=291 amount=-1 +kerning first=298 second=291 amount=-1 +kerning first=262 second=291 amount=-1 +kerning first=121 second=291 amount=-1 +kerning first=85 second=291 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=8220 second=196 amount=-2 +kerning first=67 second=73 amount=-1 +kerning first=8249 second=86 amount=-1 +kerning first=344 second=199 amount=-1 +kerning first=84 second=67 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=260 second=289 amount=-1 +kerning first=374 second=210 amount=-1 +kerning first=258 second=366 amount=-1 +kerning first=379 second=367 amount=-1 +kerning first=89 second=277 amount=-1 +kerning first=223 second=44 amount=-1 +kerning first=352 second=73 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=122 second=112 amount=-1 +kerning first=262 second=194 amount=-1 +kerning first=350 second=105 amount=-1 +kerning first=230 second=119 amount=-1 +kerning first=356 second=240 amount=-1 +kerning first=121 second=335 amount=-1 +kerning first=374 second=119 amount=-1 +kerning first=8217 second=99 amount=-1 +kerning first=1045 second=1038 amount=-1 +kerning first=8250 second=282 amount=-1 +kerning first=317 second=374 amount=-1 +kerning first=281 second=107 amount=-1 +kerning first=193 second=353 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=295 second=45 amount=-1 +kerning first=246 second=314 amount=-1 +kerning first=296 second=367 amount=-1 +kerning first=204 second=289 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=260 second=367 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=193 second=212 amount=-1 +kerning first=1061 second=1086 amount=-1 +kerning first=86 second=101 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=8216 second=234 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=231 second=257 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=346 second=310 amount=-1 +kerning first=371 second=101 amount=-1 +kerning first=375 second=257 amount=-1 +kerning first=267 second=257 amount=-1 +kerning first=352 second=205 amount=-1 +kerning first=258 second=115 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=374 second=229 amount=-1 +kerning first=118 second=339 amount=-1 +kerning first=1036 second=1108 amount=-1 +kerning first=101 second=253 amount=-1 +kerning first=302 second=229 amount=-1 +kerning first=82 second=339 amount=-1 +kerning first=344 second=214 amount=-1 +kerning first=362 second=193 amount=-1 +kerning first=219 second=97 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=327 second=97 amount=-1 +kerning first=107 second=240 amount=-1 +kerning first=291 second=97 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=267 second=318 amount=-1 +kerning first=350 second=356 amount=-1 +kerning first=218 second=287 amount=-1 +kerning first=260 second=290 amount=-1 +kerning first=334 second=194 amount=-1 +kerning first=260 second=83 amount=-1 +kerning first=370 second=194 amount=-1 +kerning first=268 second=45 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=304 second=45 amount=-1 +kerning first=256 second=255 amount=-1 +kerning first=115 second=255 amount=-1 +kerning first=368 second=83 amount=-1 +kerning first=65 second=356 amount=-2 +kerning first=376 second=197 amount=-2 +kerning first=87 second=336 amount=-1 +kerning first=264 second=380 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=264 second=336 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=352 second=120 amount=-1 +kerning first=333 second=253 amount=-1 +kerning first=310 second=81 amount=-1 +kerning first=270 second=46 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=221 second=65 amount=-2 +kerning first=171 second=84 amount=-1 +kerning first=234 second=46 amount=-1 +kerning first=344 second=243 amount=-1 +kerning first=75 second=264 amount=-1 +kerning first=1054 second=1059 amount=-1 +kerning first=87 second=380 amount=-1 +kerning first=84 second=111 amount=-1 +kerning first=82 second=121 amount=-1 +kerning first=310 second=288 amount=-1 +kerning first=333 second=318 amount=-1 +kerning first=369 second=318 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=8216 second=256 amount=-2 +kerning first=325 second=259 amount=-1 +kerning first=345 second=46 amount=-1 +kerning first=289 second=259 amount=-1 +kerning first=253 second=259 amount=-1 +kerning first=376 second=230 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=371 second=8217 amount=-1 +kerning first=248 second=253 amount=-1 +kerning first=337 second=375 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=88 second=375 amount=-1 +kerning first=217 second=259 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=229 second=375 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=266 second=207 amount=-1 +kerning first=350 second=323 amount=-1 +kerning first=374 second=381 amount=-1 +kerning first=234 second=311 amount=-1 +kerning first=323 second=259 amount=-1 +kerning first=287 second=259 amount=-1 +kerning first=115 second=253 amount=-1 +kerning first=325 second=363 amount=-1 +kerning first=256 second=253 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=267 second=224 amount=-1 +kerning first=344 second=346 amount=-1 +kerning first=354 second=334 amount=-1 +kerning first=321 second=122 amount=-1 +kerning first=375 second=224 amount=-1 +kerning first=279 second=375 amount=-1 +kerning first=315 second=375 amount=-1 +kerning first=351 second=375 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=231 second=224 amount=-1 +kerning first=8217 second=261 amount=-1 +kerning first=8220 second=279 amount=-1 +kerning first=218 second=225 amount=-1 +kerning first=192 second=8220 amount=-1 +kerning first=102 second=316 amount=1 +kerning first=66 second=316 amount=-1 +kerning first=268 second=207 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=87 second=196 amount=-2 +kerning first=335 second=121 amount=-1 +kerning first=263 second=121 amount=-1 +kerning first=346 second=82 amount=-1 +kerning first=227 second=121 amount=-1 +kerning first=376 second=335 amount=-1 +kerning first=283 second=104 amount=-1 +kerning first=86 second=121 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=85 second=171 amount=-1 +kerning first=118 second=271 amount=-1 +kerning first=374 second=231 amount=-1 +kerning first=362 second=287 amount=-1 +kerning first=262 second=171 amount=-1 +kerning first=376 second=212 amount=-1 +kerning first=370 second=171 amount=-1 +kerning first=336 second=196 amount=-1 +kerning first=290 second=287 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=109 second=8217 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=243 second=375 amount=-1 +kerning first=8249 second=89 amount=-1 +kerning first=66 second=237 amount=-1 +kerning first=250 second=8217 amount=-1 +kerning first=66 second=375 amount=-1 +kerning first=266 second=310 amount=-1 +kerning first=377 second=171 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=350 second=237 amount=-1 +kerning first=353 second=351 amount=-1 +kerning first=8218 second=382 amount=-1 +kerning first=354 second=333 amount=-1 +kerning first=272 second=256 amount=-1 +kerning first=187 second=330 amount=-1 +kerning first=187 second=120 amount=-1 +kerning first=377 second=249 amount=-1 +kerning first=223 second=120 amount=-1 +kerning first=374 second=379 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=368 second=103 amount=-1 +kerning first=260 second=103 amount=-1 +kerning first=219 second=230 amount=-1 +kerning first=296 second=103 amount=-1 +kerning first=207 second=365 amount=-1 +kerning first=83 second=103 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=233 second=318 amount=-1 +kerning first=316 second=118 amount=-1 +kerning first=352 second=118 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=321 second=362 amount=-1 +kerning first=89 second=231 amount=-1 +kerning first=101 second=44 amount=-1 +kerning first=310 second=332 amount=-1 +kerning first=204 second=117 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=279 second=316 amount=-1 +kerning first=243 second=316 amount=-1 +kerning first=354 second=216 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=85 second=378 amount=-1 +kerning first=66 second=86 amount=-1 +kerning first=256 second=264 amount=-1 +kerning first=260 second=264 amount=-1 +kerning first=381 second=250 amount=-1 +kerning first=316 second=8220 amount=-1 +kerning first=82 second=281 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=118 second=281 amount=-1 +kerning first=347 second=375 amount=-1 +kerning first=1061 second=1098 amount=-1 +kerning first=1025 second=1098 amount=-1 +kerning first=118 second=283 amount=-1 +kerning first=304 second=230 amount=-1 +kerning first=363 second=8221 amount=-1 +kerning first=344 second=218 amount=-1 +kerning first=262 second=378 amount=-1 +kerning first=8222 second=218 amount=-1 +kerning first=235 second=314 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=256 second=119 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=344 second=267 amount=-1 +kerning first=315 second=86 amount=-1 +kerning first=171 second=86 amount=-1 +kerning first=89 second=379 amount=-1 +kerning first=192 second=354 amount=-2 +kerning first=284 second=192 amount=-1 +kerning first=356 second=192 amount=-2 +kerning first=71 second=192 amount=-1 +kerning first=253 second=224 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=268 second=296 amount=-1 +kerning first=375 second=244 amount=-1 +kerning first=350 second=303 amount=-1 +kerning first=87 second=245 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=381 second=378 amount=-1 +kerning first=268 second=256 amount=-1 +kerning first=120 second=227 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=376 second=256 amount=-2 +kerning first=193 second=366 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=313 second=291 amount=-1 +kerning first=90 second=102 amount=-1 +kerning first=277 second=291 amount=-1 +kerning first=84 second=336 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=205 second=291 amount=-1 +kerning first=351 second=112 amount=-1 +kerning first=221 second=216 amount=-1 +kerning first=1038 second=1084 amount=-1 +kerning first=303 second=263 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=375 second=263 amount=-1 +kerning first=382 second=112 amount=-1 +kerning first=304 second=365 amount=-1 +kerning first=249 second=255 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=74 second=8249 amount=-1 +kerning first=255 second=240 amount=-1 +kerning first=287 second=8249 amount=-1 +kerning first=192 second=84 amount=-2 +kerning first=323 second=8249 amount=-1 +kerning first=193 second=268 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=117 second=318 amount=-1 +kerning first=1025 second=1059 amount=-1 +kerning first=362 second=228 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=290 second=198 amount=-1 +kerning first=350 second=205 amount=-1 +kerning first=218 second=198 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=218 second=228 amount=-1 +kerning first=268 second=286 amount=-1 +kerning first=77 second=228 amount=-1 +kerning first=362 second=198 amount=-1 +kerning first=262 second=260 amount=-1 +kerning first=354 second=65 amount=-2 +kerning first=330 second=367 amount=-1 +kerning first=8250 second=194 amount=-1 +kerning first=1043 second=1078 amount=-1 +kerning first=258 second=367 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=120 second=115 amount=-1 +kerning first=107 second=339 amount=-1 +kerning first=8250 second=82 amount=-1 +kerning first=287 second=229 amount=-1 +kerning first=370 second=260 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=334 second=260 amount=-1 +kerning first=1040 second=1090 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=107 second=271 amount=-1 +kerning first=84 second=115 amount=-1 +kerning first=290 second=356 amount=-1 +kerning first=261 second=8217 amount=-1 +kerning first=118 second=242 amount=-1 +kerning first=1050 second=1058 amount=-1 +kerning first=205 second=261 amount=-1 +kerning first=369 second=8217 amount=-1 +kerning first=82 second=242 amount=-1 +kerning first=311 second=45 amount=-1 +kerning first=323 second=229 amount=-1 +kerning first=356 second=339 amount=-1 +kerning first=8217 second=74 amount=-1 +kerning first=8217 second=231 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=119 second=339 amount=-1 +kerning first=356 second=211 amount=-1 +kerning first=242 second=44 amount=-1 +kerning first=8217 second=100 amount=-1 +kerning first=379 second=255 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=307 second=255 amount=-1 +kerning first=235 second=255 amount=-1 +kerning first=220 second=224 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=374 second=110 amount=-1 +kerning first=366 second=97 amount=-1 +kerning first=356 second=290 amount=-1 +kerning first=330 second=97 amount=-1 +kerning first=350 second=44 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=364 second=224 amount=-1 +kerning first=232 second=46 amount=-1 +kerning first=74 second=289 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=356 second=241 amount=-1 +kerning first=323 second=289 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=313 second=370 amount=-1 +kerning first=354 second=225 amount=-1 +kerning first=66 second=287 amount=-1 +kerning first=365 second=255 amount=-1 +kerning first=197 second=368 amount=-1 +kerning first=351 second=287 amount=-1 +kerning first=260 second=352 amount=-1 +kerning first=315 second=287 amount=-1 +kerning first=207 second=287 amount=-1 +kerning first=65 second=112 amount=-1 +kerning first=119 second=283 amount=-1 +kerning first=235 second=118 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=287 second=347 amount=-1 +kerning first=368 second=352 amount=-1 +kerning first=80 second=46 amount=-1 +kerning first=313 second=380 amount=-1 +kerning first=1050 second=1057 amount=-1 +kerning first=71 second=291 amount=-1 +kerning first=344 second=87 amount=-1 +kerning first=84 second=266 amount=-1 +kerning first=90 second=253 amount=-1 +kerning first=262 second=201 amount=-1 +kerning first=356 second=333 amount=-1 +kerning first=266 second=350 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=99 second=259 amount=-1 +kerning first=281 second=311 amount=-1 +kerning first=260 second=370 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=376 second=375 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=89 second=350 amount=-1 +kerning first=291 second=230 amount=-1 +kerning first=196 second=375 amount=-1 +kerning first=194 second=350 amount=-1 +kerning first=232 second=375 amount=-1 +kerning first=255 second=230 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=201 second=289 amount=-1 +kerning first=235 second=104 amount=-1 +kerning first=381 second=289 amount=-1 +kerning first=193 second=219 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=1038 second=1075 amount=-1 +kerning first=219 second=378 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=71 second=65 amount=-1 +kerning first=1024 second=1098 amount=-1 +kerning first=376 second=326 amount=-1 +kerning first=310 second=121 amount=-1 +kerning first=218 second=291 amount=-1 +kerning first=313 second=221 amount=-1 +kerning first=1059 second=1033 amount=-1 +kerning first=97 second=121 amount=-1 +kerning first=295 second=8217 amount=-1 +kerning first=255 second=231 amount=-1 +kerning first=381 second=171 amount=-1 +kerning first=217 second=196 amount=-1 +kerning first=207 second=228 amount=-1 +kerning first=266 second=270 amount=-1 +kerning first=374 second=100 amount=-1 +kerning first=316 second=119 amount=-1 +kerning first=256 second=351 amount=-1 +kerning first=119 second=314 amount=-1 +kerning first=121 second=99 amount=-1 +kerning first=317 second=381 amount=-1 +kerning first=269 second=318 amount=-1 +kerning first=256 second=214 amount=-1 +kerning first=8250 second=204 amount=-1 +kerning first=352 second=119 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=66 second=228 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=313 second=379 amount=-1 +kerning first=1059 second=1113 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=289 second=382 amount=-1 +kerning first=119 second=234 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=267 second=253 amount=-1 +kerning first=231 second=253 amount=-1 +kerning first=258 second=249 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=339 second=253 amount=-1 +kerning first=194 second=89 amount=-2 +kerning first=65 second=363 amount=-1 +kerning first=206 second=363 amount=-1 +kerning first=354 second=246 amount=-1 +kerning first=1027 second=1083 amount=-1 +kerning first=8220 second=240 amount=-1 +kerning first=379 second=103 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=307 second=103 amount=-1 +kerning first=235 second=103 amount=-1 +kerning first=89 second=100 amount=-1 +kerning first=82 second=232 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=118 second=232 amount=-1 +kerning first=197 second=118 amount=-1 +kerning first=346 second=203 amount=-1 +kerning first=233 second=118 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=269 second=118 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=194 second=8221 amount=-1 +kerning first=71 second=89 amount=-1 +kerning first=77 second=365 amount=-1 +kerning first=264 second=284 amount=-1 +kerning first=346 second=362 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=88 second=117 amount=-1 +kerning first=8216 second=269 amount=-1 +kerning first=76 second=382 amount=-1 +kerning first=253 second=382 amount=-1 +kerning first=305 second=118 amount=-1 +kerning first=254 second=316 amount=-1 +kerning first=217 second=382 amount=-1 +kerning first=353 second=120 amount=-1 +kerning first=289 second=44 amount=-1 +kerning first=87 second=197 amount=-2 +kerning first=253 second=44 amount=-1 +kerning first=260 second=255 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=112 second=44 amount=-1 +kerning first=264 second=197 amount=-1 +kerning first=84 second=267 amount=-1 +kerning first=217 second=44 amount=-1 +kerning first=356 second=232 amount=-1 +kerning first=269 second=97 amount=-1 +kerning first=336 second=197 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=1059 second=1081 amount=-1 +kerning first=220 second=193 amount=-1 +kerning first=266 second=79 amount=-1 +kerning first=45 second=118 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=374 second=79 amount=-1 +kerning first=364 second=193 amount=-1 +kerning first=1050 second=1059 amount=-1 +kerning first=371 second=273 amount=-1 +kerning first=199 second=65 amount=-1 +kerning first=262 second=338 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=117 second=118 amount=-1 +kerning first=245 second=120 amount=-1 +kerning first=107 second=232 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=258 second=118 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=323 second=250 amount=-1 +kerning first=253 second=245 amount=-1 +kerning first=356 second=378 amount=-1 +kerning first=8220 second=275 amount=-1 +kerning first=267 second=303 amount=-1 +kerning first=263 second=46 amount=-1 +kerning first=279 second=44 amount=-1 +kerning first=231 second=303 amount=-1 +kerning first=194 second=221 amount=-2 +kerning first=258 second=199 amount=-1 +kerning first=1070 second=1059 amount=-1 +kerning first=374 second=83 amount=-1 +kerning first=374 second=291 amount=-1 +kerning first=310 second=361 amount=-1 +kerning first=338 second=291 amount=-1 +kerning first=107 second=242 amount=-1 +kerning first=302 second=291 amount=-1 +kerning first=119 second=113 amount=-1 +kerning first=266 second=291 amount=-1 +kerning first=230 second=291 amount=-1 +kerning first=194 second=291 amount=-1 +kerning first=89 second=291 amount=-1 +kerning first=356 second=242 amount=-1 +kerning first=268 second=216 amount=-1 +kerning first=350 second=102 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=346 second=204 amount=-1 +kerning first=376 second=216 amount=-1 +kerning first=87 second=187 amount=-1 +kerning first=264 second=196 amount=-1 +kerning first=8216 second=259 amount=-1 +kerning first=221 second=335 amount=-1 +kerning first=8217 second=101 amount=-1 +kerning first=346 second=323 amount=-1 +kerning first=67 second=287 amount=-1 +kerning first=362 second=378 amount=-1 +kerning first=346 second=73 amount=-1 +kerning first=1038 second=1095 amount=-1 +kerning first=196 second=374 amount=-2 +kerning first=364 second=44 amount=-1 +kerning first=366 second=346 amount=-1 +kerning first=85 second=289 amount=-1 +kerning first=121 second=289 amount=-1 +kerning first=255 second=279 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=262 second=289 amount=-1 +kerning first=298 second=289 amount=-1 +kerning first=230 second=253 amount=-1 +kerning first=1059 second=1051 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=370 second=289 amount=-1 +kerning first=187 second=195 amount=-1 +kerning first=8250 second=203 amount=-1 +kerning first=287 second=108 amount=-1 +kerning first=251 second=108 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=8250 second=83 amount=-1 +kerning first=121 second=229 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=370 second=229 amount=-1 +kerning first=268 second=325 amount=-1 +kerning first=298 second=229 amount=-1 +kerning first=232 second=287 amount=-1 +kerning first=87 second=171 amount=-1 +kerning first=268 second=287 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=196 second=287 amount=-1 +kerning first=85 second=229 amount=-1 +kerning first=1036 second=1089 amount=-1 +kerning first=260 second=353 amount=-1 +kerning first=311 second=275 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=193 second=356 amount=-2 +kerning first=1059 second=1054 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=376 second=287 amount=-1 +kerning first=86 second=248 amount=-1 +kerning first=304 second=287 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=1059 second=1103 amount=-1 +kerning first=258 second=368 amount=-1 +kerning first=264 second=45 amount=-1 +kerning first=213 second=194 amount=-1 +kerning first=87 second=45 amount=-1 +kerning first=206 second=45 amount=-1 +kerning first=121 second=339 amount=-1 +kerning first=221 second=353 amount=-1 +kerning first=219 second=350 amount=-1 +kerning first=120 second=97 amount=-1 +kerning first=314 second=45 amount=-1 +kerning first=119 second=243 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=71 second=289 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=255 second=318 amount=-1 +kerning first=8220 second=231 amount=-1 +kerning first=291 second=318 amount=-1 +kerning first=196 second=356 amount=-2 +kerning first=350 second=45 amount=-1 +kerning first=363 second=318 amount=-1 +kerning first=284 second=289 amount=-1 +kerning first=376 second=255 amount=-1 +kerning first=346 second=370 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=199 second=112 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=262 second=80 amount=-1 +kerning first=8250 second=323 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=284 second=193 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=298 second=251 amount=-1 +kerning first=118 second=267 amount=-1 +kerning first=356 second=193 amount=-2 +kerning first=8216 second=198 amount=-2 +kerning first=220 second=44 amount=-1 +kerning first=71 second=193 amount=-1 +kerning first=194 second=8220 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=258 second=79 amount=-1 +kerning first=82 second=233 amount=-1 +kerning first=1046 second=1105 amount=-1 +kerning first=118 second=233 amount=-1 +kerning first=197 second=119 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=305 second=119 amount=-1 +kerning first=8250 second=313 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=233 second=119 amount=-1 +kerning first=269 second=119 amount=-1 +kerning first=303 second=111 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=221 second=225 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=249 second=314 amount=-1 +kerning first=375 second=111 amount=-1 +kerning first=354 second=46 amount=-1 +kerning first=246 second=46 amount=-1 +kerning first=374 second=8249 amount=-1 +kerning first=376 second=334 amount=-1 +kerning first=365 second=375 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=268 second=334 amount=-1 +kerning first=89 second=101 amount=-1 +kerning first=197 second=87 amount=-2 +kerning first=187 second=201 amount=-1 +kerning first=221 second=375 amount=-1 +kerning first=257 second=375 amount=-1 +kerning first=195 second=291 amount=-1 +kerning first=376 second=277 amount=-1 +kerning first=356 second=81 amount=-1 +kerning first=374 second=101 amount=-1 +kerning first=1070 second=1033 amount=-1 +kerning first=258 second=218 amount=-1 +kerning first=350 second=196 amount=-1 +kerning first=196 second=8220 amount=-1 +kerning first=311 second=235 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=286 second=193 amount=-1 +kerning first=337 second=316 amount=-1 +kerning first=84 second=248 amount=-1 +kerning first=232 second=104 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=281 second=119 amount=-1 +kerning first=8250 second=73 amount=-1 +kerning first=356 second=281 amount=-1 +kerning first=310 second=252 amount=-1 +kerning first=321 second=121 amount=-1 +kerning first=217 second=197 amount=-1 +kerning first=249 second=121 amount=-1 +kerning first=87 second=333 amount=-1 +kerning first=108 second=121 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=255 second=100 amount=-1 +kerning first=375 second=351 amount=-1 +kerning first=352 second=310 amount=-1 +kerning first=258 second=336 amount=-1 +kerning first=379 second=122 amount=-1 +kerning first=218 second=229 amount=-1 +kerning first=195 second=351 amount=-1 +kerning first=67 second=310 amount=-1 +kerning first=199 second=122 amount=-1 +kerning first=362 second=229 amount=-1 +kerning first=330 second=230 amount=-1 +kerning first=366 second=230 amount=-1 +kerning first=83 second=65 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=228 second=8217 amount=-1 +kerning first=195 second=366 amount=-1 +kerning first=84 second=198 amount=-2 +kerning first=87 second=115 amount=-1 +kerning first=8250 second=89 amount=-1 +kerning first=242 second=253 amount=-1 +kerning first=1092 second=1076 amount=-1 +kerning first=332 second=65 amount=-1 +kerning first=295 second=171 amount=-1 +kerning first=368 second=65 amount=-1 +kerning first=266 second=200 amount=-1 +kerning first=351 second=347 amount=-1 +kerning first=368 second=289 amount=-1 +kerning first=331 second=171 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=197 second=199 amount=-1 +kerning first=72 second=361 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=220 second=382 amount=-1 +kerning first=364 second=382 amount=-1 +kerning first=256 second=219 amount=-1 +kerning first=66 second=347 amount=-1 +kerning first=311 second=333 amount=-1 +kerning first=218 second=194 amount=-1 +kerning first=282 second=103 amount=-1 +kerning first=224 second=255 amount=-1 +kerning first=1038 second=1101 amount=-1 +kerning first=356 second=8250 amount=-1 +kerning first=313 second=8221 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=241 second=8221 amount=-1 +kerning first=69 second=103 amount=-1 +kerning first=77 second=117 amount=-1 +kerning first=258 second=346 amount=-1 +kerning first=46 second=171 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=86 second=283 amount=-1 +kerning first=354 second=264 amount=-1 +kerning first=8250 second=370 amount=-1 +kerning first=269 second=121 amount=-1 +kerning first=321 second=380 amount=-1 +kerning first=315 second=366 amount=-1 +kerning first=1059 second=1072 amount=-1 +kerning first=344 second=217 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=266 second=69 amount=-1 +kerning first=115 second=120 amount=-1 +kerning first=262 second=298 amount=-1 +kerning first=1059 second=1104 amount=-1 +kerning first=374 second=331 amount=-1 +kerning first=194 second=220 amount=-1 +kerning first=283 second=118 amount=-1 +kerning first=286 second=354 amount=-1 +kerning first=279 second=104 amount=-1 +kerning first=197 second=218 amount=-1 +kerning first=244 second=318 amount=-1 +kerning first=371 second=283 amount=-1 +kerning first=106 second=118 amount=-1 +kerning first=66 second=85 amount=-1 +kerning first=102 second=107 amount=1 +kerning first=204 second=250 amount=-1 +kerning first=66 second=107 amount=-1 +kerning first=8217 second=235 amount=-1 +kerning first=197 second=221 amount=-2 +kerning first=80 second=287 amount=-1 +kerning first=119 second=273 amount=-1 +kerning first=252 second=119 amount=-1 +kerning first=197 second=79 amount=-1 +kerning first=279 second=107 amount=-1 +kerning first=352 second=78 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=66 second=366 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=240 second=46 amount=-1 +kerning first=194 second=347 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=221 second=287 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=221 second=113 amount=-1 +kerning first=197 second=115 amount=-1 +kerning first=1027 second=1108 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=67 second=210 amount=-1 +kerning first=263 second=291 amount=-1 +kerning first=325 second=45 amount=-1 +kerning first=256 second=284 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=86 second=291 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=217 second=45 amount=-1 +kerning first=8216 second=260 amount=-2 +kerning first=344 second=337 amount=-1 +kerning first=289 second=45 amount=-1 +kerning first=256 second=262 amount=-1 +kerning first=381 second=8249 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=260 second=112 amount=-1 +kerning first=266 second=203 amount=-1 +kerning first=374 second=279 amount=-1 +kerning first=83 second=112 amount=-1 +kerning first=354 second=286 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=253 second=263 amount=-1 +kerning first=240 second=108 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=253 second=244 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=8222 second=122 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=204 second=228 amount=-1 +kerning first=254 second=108 amount=-1 +kerning first=323 second=251 amount=-1 +kerning first=374 second=212 amount=-1 +kerning first=369 second=253 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=8250 second=379 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=266 second=212 amount=-1 +kerning first=171 second=356 amount=-1 +kerning first=87 second=192 amount=-2 +kerning first=350 second=364 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=241 second=8220 amount=-1 +kerning first=117 second=119 amount=-1 +kerning first=379 second=171 amount=-1 +kerning first=258 second=119 amount=-1 +kerning first=356 second=233 amount=-1 +kerning first=347 second=115 amount=-1 +kerning first=107 second=233 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=90 second=45 amount=-1 +kerning first=195 second=45 amount=-1 +kerning first=356 second=223 amount=-1 +kerning first=262 second=211 amount=-1 +kerning first=375 second=45 amount=-1 +kerning first=253 second=275 amount=-1 +kerning first=354 second=353 amount=-1 +kerning first=315 second=356 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=66 second=356 amount=-1 +kerning first=346 second=304 amount=-1 +kerning first=84 second=346 amount=-1 +kerning first=221 second=255 amount=-1 +kerning first=257 second=255 amount=-1 +kerning first=193 second=291 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=8220 second=100 amount=-1 +kerning first=86 second=194 amount=-2 +kerning first=255 second=101 amount=-1 +kerning first=1050 second=1092 amount=-1 +kerning first=311 second=244 amount=-1 +kerning first=84 second=324 amount=-1 +kerning first=8216 second=99 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=8250 second=74 amount=-1 +kerning first=192 second=364 amount=-1 +kerning first=235 second=46 amount=-1 +kerning first=361 second=8217 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=374 second=228 amount=-1 +kerning first=260 second=362 amount=-1 +kerning first=268 second=212 amount=-1 +kerning first=199 second=264 amount=-1 +kerning first=8217 second=279 amount=-1 +kerning first=354 second=352 amount=-1 +kerning first=193 second=347 amount=-1 +kerning first=350 second=197 amount=-1 +kerning first=362 second=259 amount=-1 +kerning first=268 second=278 amount=-1 +kerning first=82 second=71 amount=-1 +kerning first=352 second=200 amount=-1 +kerning first=112 second=253 amount=-1 +kerning first=376 second=225 amount=-1 +kerning first=76 second=253 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=304 second=225 amount=-1 +kerning first=290 second=86 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=346 second=282 amount=-1 +kerning first=82 second=311 amount=-1 +kerning first=213 second=65 amount=-1 +kerning first=374 second=213 amount=-1 +kerning first=354 second=375 amount=-1 +kerning first=266 second=213 amount=-1 +kerning first=82 second=289 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=246 second=375 amount=-1 +kerning first=269 second=230 amount=-1 +kerning first=262 second=103 amount=-1 +kerning first=1059 second=1117 amount=-1 +kerning first=65 second=351 amount=-1 +kerning first=118 second=289 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=187 second=289 amount=-1 +kerning first=367 second=289 amount=-1 +kerning first=86 second=380 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=75 second=336 amount=-1 +kerning first=368 second=122 amount=-1 +kerning first=1042 second=1063 amount=-1 +kerning first=1042 second=1078 amount=-1 +kerning first=321 second=370 amount=-1 +kerning first=234 second=314 amount=-1 +kerning first=121 second=242 amount=-1 +kerning first=8222 second=382 amount=-1 +kerning first=207 second=117 amount=-1 +kerning first=268 second=344 amount=-1 +kerning first=217 second=122 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=8216 second=229 amount=-1 +kerning first=1059 second=1102 amount=-1 +kerning first=66 second=259 amount=-1 +kerning first=253 second=351 amount=-1 +kerning first=289 second=351 amount=-1 +kerning first=368 second=44 amount=-1 +kerning first=262 second=68 amount=-1 +kerning first=323 second=171 amount=-1 +kerning first=260 second=121 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=224 second=121 amount=-1 +kerning first=266 second=82 amount=-1 +kerning first=374 second=288 amount=-1 +kerning first=256 second=369 amount=-1 +kerning first=118 second=224 amount=-1 +kerning first=266 second=288 amount=-1 +kerning first=86 second=379 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=354 second=277 amount=-1 +kerning first=364 second=196 amount=-1 +kerning first=8217 second=229 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=204 second=103 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=378 second=171 amount=-1 +kerning first=260 second=252 amount=-1 +kerning first=8216 second=261 amount=-1 +kerning first=90 second=382 amount=-1 +kerning first=261 second=106 amount=1 +kerning first=193 second=86 amount=-2 +kerning first=375 second=382 amount=-1 +kerning first=376 second=246 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=282 second=287 amount=-1 +kerning first=252 second=8221 amount=-1 +kerning first=365 second=103 amount=-1 +kerning first=240 second=316 amount=-1 +kerning first=264 second=266 amount=-1 +kerning first=344 second=368 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=99 second=316 amount=-1 +kerning first=221 second=103 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=344 second=336 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=262 second=330 amount=-1 +kerning first=356 second=71 amount=-1 +kerning first=187 second=352 amount=-1 +kerning first=344 second=118 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=121 second=232 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=236 second=118 amount=-1 +kerning first=339 second=44 amount=-1 +kerning first=262 second=8249 amount=-1 +kerning first=354 second=255 amount=-1 +kerning first=246 second=255 amount=-1 +kerning first=375 second=44 amount=-1 +kerning first=370 second=8249 amount=-1 +kerning first=267 second=44 amount=-1 +kerning first=196 second=366 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=99 second=105 amount=-1 +kerning first=311 second=267 amount=-1 +kerning first=85 second=8249 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=87 second=244 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=1046 second=1057 amount=-1 +kerning first=197 second=350 amount=-1 +kerning first=221 second=234 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=337 second=108 amount=-1 +kerning first=67 second=199 amount=-1 +kerning first=204 second=251 amount=-1 +kerning first=352 second=221 amount=-1 +kerning first=74 second=198 amount=-1 +kerning first=354 second=328 amount=-1 +kerning first=260 second=361 amount=-1 +kerning first=296 second=361 amount=-1 +kerning first=311 second=245 amount=-1 +kerning first=374 second=332 amount=-1 +kerning first=8250 second=380 amount=-1 +kerning first=267 second=46 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=266 second=332 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=376 second=268 amount=-1 +kerning first=264 second=82 amount=-1 +kerning first=1059 second=1073 amount=-1 +kerning first=221 second=256 amount=-2 +kerning first=352 second=76 amount=-1 +kerning first=268 second=268 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=288 second=291 amount=-1 +kerning first=106 second=119 amount=-1 +kerning first=252 second=291 amount=-1 +kerning first=1046 second=1038 amount=-1 +kerning first=262 second=210 amount=-1 +kerning first=283 second=119 amount=-1 +kerning first=213 second=256 amount=-1 +kerning first=335 second=314 amount=-1 +kerning first=266 second=204 amount=-1 +kerning first=199 second=198 amount=-1 +kerning first=263 second=314 amount=-1 +kerning first=368 second=291 amount=-1 +kerning first=209 second=250 amount=-1 +kerning first=296 second=291 amount=-1 +kerning first=260 second=291 amount=-1 +kerning first=8216 second=195 amount=-2 +kerning first=119 second=291 amount=-1 +kerning first=83 second=291 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=268 second=73 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=89 second=381 amount=-1 +kerning first=317 second=84 amount=-1 +kerning first=1059 second=1095 amount=-1 +kerning first=311 second=337 amount=-1 +kerning first=356 second=268 amount=-1 +kerning first=333 second=44 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=102 second=108 amount=1 +kerning first=350 second=66 amount=-1 +kerning first=66 second=108 amount=-1 +kerning first=374 second=199 amount=-1 +kerning first=366 second=261 amount=-1 +kerning first=67 second=336 amount=-1 +kerning first=330 second=261 amount=-1 +kerning first=84 second=284 amount=-1 +kerning first=8249 second=356 amount=-1 +kerning first=107 second=281 amount=-1 +kerning first=317 second=89 amount=-1 +kerning first=205 second=367 amount=-1 +kerning first=243 second=108 amount=-1 +kerning first=252 second=121 amount=-1 +kerning first=331 second=8249 amount=-1 +kerning first=66 second=220 amount=-1 +kerning first=356 second=263 amount=-1 +kerning first=346 second=344 amount=-1 +kerning first=264 second=302 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=295 second=8249 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=284 second=194 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=266 second=327 amount=-1 +kerning first=198 second=289 amount=-1 +kerning first=234 second=289 amount=-1 +kerning first=118 second=335 amount=-1 +kerning first=220 second=45 amount=-1 +kerning first=290 second=260 amount=-1 +kerning first=256 second=45 amount=-1 +kerning first=346 second=65 amount=-1 +kerning first=328 second=45 amount=-1 +kerning first=82 second=254 amount=-1 +kerning first=86 second=346 amount=-1 +kerning first=121 second=103 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=121 second=111 amount=-1 +kerning first=218 second=260 amount=-1 +kerning first=221 second=194 amount=-2 +kerning first=376 second=229 amount=-1 +kerning first=8217 second=234 amount=-1 +kerning first=364 second=45 amount=-1 +kerning first=254 second=255 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=260 second=212 amount=-1 +kerning first=253 second=225 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=8217 second=283 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=255 second=243 amount=-1 +kerning first=8216 second=246 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=287 second=46 amount=-1 +kerning first=283 second=44 amount=-1 +kerning first=103 second=257 amount=-1 +kerning first=8216 second=101 amount=-1 +kerning first=8220 second=101 amount=-1 +kerning first=1059 second=1090 amount=-1 +kerning first=1038 second=1057 amount=-1 +kerning first=334 second=193 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=262 second=193 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=370 second=193 amount=-1 +kerning first=87 second=346 amount=-1 +kerning first=235 second=375 amount=-1 +kerning first=307 second=375 amount=-1 +kerning first=367 second=314 amount=-1 +kerning first=356 second=224 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=346 second=305 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=194 second=289 amount=-1 +kerning first=82 second=98 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=103 second=259 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=1043 second=1051 amount=-1 +kerning first=263 second=225 amount=-1 +kerning first=287 second=316 amount=-1 +kerning first=251 second=316 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=8250 second=221 amount=-1 +kerning first=262 second=81 amount=-1 +kerning first=379 second=287 amount=-1 +kerning first=264 second=346 amount=-1 +kerning first=379 second=375 amount=-1 +kerning first=199 second=287 amount=-1 +kerning first=192 second=346 amount=-1 +kerning first=235 second=287 amount=-1 +kerning first=313 second=122 amount=-1 +kerning first=197 second=8217 amount=-1 +kerning first=8250 second=65 amount=-1 +kerning first=303 second=271 amount=-1 +kerning first=221 second=352 amount=-1 +kerning first=354 second=194 amount=-2 +kerning first=88 second=81 amount=-1 +kerning first=84 second=328 amount=-1 +kerning first=304 second=117 amount=-1 +kerning first=379 second=121 amount=-1 +kerning first=119 second=335 amount=-1 +kerning first=196 second=117 amount=-1 +kerning first=376 second=269 amount=-1 +kerning first=307 second=121 amount=-1 +kerning first=366 second=350 amount=-1 +kerning first=65 second=115 amount=-1 +kerning first=86 second=353 amount=-1 +kerning first=351 second=103 amount=-1 +kerning first=8217 second=83 amount=-1 +kerning first=87 second=253 amount=-1 +kerning first=193 second=374 amount=-2 +kerning first=45 second=350 amount=-1 +kerning first=228 second=253 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=121 second=277 amount=-1 +kerning first=258 second=350 amount=-1 +kerning first=272 second=196 amount=-1 +kerning first=258 second=266 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=193 second=85 amount=-1 +kerning first=364 second=289 amount=-1 +kerning first=298 second=228 amount=-1 +kerning first=85 second=228 amount=-1 +kerning first=121 second=228 amount=-1 +kerning first=379 second=361 amount=-1 +kerning first=279 second=121 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=107 second=263 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=344 second=8221 amount=-1 +kerning first=8220 second=257 amount=-1 +kerning first=376 second=103 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=218 second=171 amount=-1 +kerning first=304 second=103 amount=-1 +kerning first=196 second=103 amount=-1 +kerning first=290 second=171 amount=-1 +kerning first=87 second=381 amount=-1 +kerning first=232 second=103 amount=-1 +kerning first=120 second=249 amount=-1 +kerning first=362 second=171 amount=-1 +kerning first=236 second=119 amount=-1 +kerning first=313 second=362 amount=-1 +kerning first=326 second=171 amount=-1 +kerning first=344 second=119 amount=-1 +kerning first=266 second=256 amount=-1 +kerning first=252 second=118 amount=-1 +kerning first=103 second=380 amount=-1 +kerning first=324 second=118 amount=-1 +kerning first=268 second=313 amount=-1 +kerning first=121 second=233 amount=-1 +kerning first=192 second=218 amount=-1 +kerning first=258 second=288 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=255 second=248 amount=-1 +kerning first=258 second=217 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=262 second=67 amount=-1 +kerning first=296 second=230 amount=-1 +kerning first=87 second=267 amount=-1 +kerning first=376 second=264 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=268 second=264 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=120 second=363 amount=-1 +kerning first=252 second=8220 amount=-1 +kerning first=195 second=364 amount=-1 +kerning first=313 second=217 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=356 second=347 amount=-1 +kerning first=8216 second=339 amount=-1 +kerning first=1042 second=1059 amount=-1 +kerning first=260 second=249 amount=-1 +kerning first=264 second=209 amount=-1 +kerning first=258 second=8221 amount=-1 +kerning first=250 second=289 amount=-1 +kerning first=117 second=8221 amount=-1 +kerning first=304 second=229 amount=-1 +kerning first=291 second=257 amount=-1 +kerning first=375 second=232 amount=-1 +kerning first=327 second=257 amount=-1 +kerning first=219 second=257 amount=-1 +kerning first=303 second=232 amount=-1 +kerning first=255 second=257 amount=-1 +kerning first=241 second=118 amount=-1 +kerning first=89 second=83 amount=-1 +kerning first=277 second=118 amount=-1 +kerning first=364 second=192 amount=-1 +kerning first=313 second=118 amount=-1 +kerning first=194 second=83 amount=-1 +kerning first=1046 second=1108 amount=-1 +kerning first=220 second=197 amount=-1 +kerning first=1086 second=1076 amount=-1 +kerning first=266 second=83 amount=-1 +kerning first=266 second=78 amount=-1 +kerning first=87 second=262 amount=-1 +kerning first=220 second=192 amount=-1 +kerning first=284 second=8249 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=364 second=197 amount=-1 +kerning first=356 second=8249 amount=-1 +kerning first=264 second=262 amount=-1 +kerning first=196 second=370 amount=-1 +kerning first=327 second=230 amount=-1 +kerning first=83 second=194 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=350 second=315 amount=-1 +kerning first=8217 second=248 amount=-1 +kerning first=362 second=103 amount=-1 +kerning first=290 second=103 amount=-1 +kerning first=107 second=8249 amount=-1 +kerning first=332 second=256 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=264 second=317 amount=-1 +kerning first=368 second=256 amount=-1 +kerning first=1038 second=1096 amount=-1 +kerning first=321 second=291 amount=-1 +kerning first=86 second=65 amount=-2 +kerning first=354 second=198 amount=-2 +kerning first=352 second=217 amount=-1 +kerning first=249 second=291 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=72 second=291 amount=-1 +kerning first=83 second=256 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=82 second=107 amount=-1 +kerning first=344 second=279 amount=-1 +kerning first=356 second=67 amount=-1 +kerning first=1056 second=1040 amount=-1 +kerning first=304 second=259 amount=-1 +kerning first=375 second=227 amount=-1 +kerning first=262 second=72 amount=-1 +kerning first=8250 second=90 amount=-1 +kerning first=267 second=227 amount=-1 +kerning first=268 second=65 amount=-1 +kerning first=231 second=227 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=370 second=228 amount=-1 +kerning first=256 second=84 amount=-2 +kerning first=76 second=381 amount=-1 +kerning first=8217 second=113 amount=-1 +kerning first=199 second=212 amount=-1 +kerning first=311 second=171 amount=-1 +kerning first=232 second=108 amount=-1 +kerning first=366 second=226 amount=-1 +kerning first=330 second=226 amount=-1 +kerning first=266 second=323 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=302 second=367 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=253 second=115 amount=-1 +kerning first=289 second=115 amount=-1 +kerning first=291 second=122 amount=-1 +kerning first=1043 second=1083 amount=-1 +kerning first=255 second=122 amount=-1 +kerning first=327 second=365 amount=-1 +kerning first=219 second=122 amount=-1 +kerning first=8217 second=195 amount=-2 +kerning first=376 second=194 amount=-2 +kerning first=99 second=237 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=73 second=97 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=356 second=214 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=268 second=194 amount=-1 +kerning first=119 second=103 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=351 second=255 amount=-1 +kerning first=67 second=286 amount=-1 +kerning first=279 second=255 amount=-1 +kerning first=1059 second=1086 amount=-1 +kerning first=315 second=255 amount=-1 +kerning first=89 second=243 amount=-1 +kerning first=344 second=354 amount=-1 +kerning first=243 second=255 amount=-1 +kerning first=296 second=287 amount=-1 +kerning first=84 second=240 amount=-1 +kerning first=66 second=255 amount=-1 +kerning first=86 second=109 amount=-1 +kerning first=119 second=287 amount=-1 +kerning first=196 second=112 amount=-1 +kerning first=8218 second=364 amount=-1 +kerning first=374 second=243 amount=-1 +kerning first=83 second=287 amount=-1 +kerning first=284 second=171 amount=-1 +kerning first=117 second=8217 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=268 second=352 amount=-1 +kerning first=8250 second=274 amount=-1 +kerning first=368 second=287 amount=-1 +kerning first=258 second=8217 amount=-1 +kerning first=107 second=111 amount=-1 +kerning first=377 second=380 amount=-1 +kerning first=374 second=248 amount=-1 +kerning first=354 second=260 amount=-2 +kerning first=262 second=76 amount=-1 +kerning first=356 second=111 amount=-1 +kerning first=352 second=327 amount=-1 +kerning first=317 second=382 amount=-1 +kerning first=221 second=264 amount=-1 +kerning first=221 second=269 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=89 second=248 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=275 second=253 amount=-1 +kerning first=347 second=253 amount=-1 +kerning first=354 second=245 amount=-1 +kerning first=262 second=202 amount=-1 +kerning first=65 second=364 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=1059 second=1080 amount=-1 +kerning first=209 second=289 amount=-1 +kerning first=84 second=288 amount=-1 +kerning first=353 second=289 amount=-1 +kerning first=281 second=289 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=317 second=289 amount=-1 +kerning first=352 second=87 amount=-1 +kerning first=323 second=369 amount=-1 +kerning first=67 second=332 amount=-1 +kerning first=8222 second=366 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=77 second=251 amount=-1 +kerning first=374 second=122 amount=-1 +kerning first=196 second=266 amount=-1 +kerning first=266 second=122 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=196 second=352 amount=-1 +kerning first=356 second=259 amount=-1 +kerning first=89 second=122 amount=-1 +kerning first=224 second=375 amount=-1 +kerning first=84 second=119 amount=-1 +kerning first=260 second=375 amount=-1 +kerning first=256 second=89 amount=-2 +kerning first=225 second=119 amount=-1 +kerning first=356 second=210 amount=-1 +kerning first=261 second=119 amount=-1 +kerning first=350 second=75 amount=-1 +kerning first=274 second=291 amount=-1 +kerning first=120 second=119 amount=-1 +kerning first=202 second=291 amount=-1 +kerning first=197 second=217 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=84 second=337 amount=-1 +kerning first=199 second=256 amount=-1 +kerning first=321 second=379 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=277 second=314 amount=-1 +kerning first=8217 second=243 amount=-1 +kerning first=356 second=351 amount=-1 +kerning first=256 second=362 amount=-1 +kerning first=354 second=121 amount=-1 +kerning first=8220 second=261 amount=-1 +kerning first=246 second=121 amount=-1 +kerning first=87 second=275 amount=-1 +kerning first=277 second=318 amount=-1 +kerning first=371 second=8220 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=321 second=221 amount=-1 +kerning first=89 second=199 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=287 second=228 amount=-1 +kerning first=84 second=196 amount=-2 +kerning first=194 second=199 amount=-1 +kerning first=323 second=228 amount=-1 +kerning first=266 second=199 amount=-1 +kerning first=346 second=296 amount=-1 +kerning first=264 second=214 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=253 second=267 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=66 second=230 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=321 second=8221 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=83 second=86 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=344 second=235 amount=-1 +kerning first=219 second=83 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=315 second=103 amount=-1 +kerning first=344 second=284 amount=-1 +kerning first=1107 second=1083 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=1054 second=1051 amount=-1 +kerning first=279 second=103 amount=-1 +kerning first=194 second=362 amount=-1 +kerning first=193 second=220 amount=-1 +kerning first=207 second=103 amount=-1 +kerning first=298 second=365 amount=-1 +kerning first=381 second=382 amount=-1 +kerning first=86 second=100 amount=-1 +kerning first=193 second=103 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=121 second=246 amount=-1 +kerning first=303 second=106 amount=1 +kerning first=45 second=121 amount=-1 +kerning first=371 second=100 amount=-1 +kerning first=1045 second=1090 amount=-1 +kerning first=346 second=78 amount=-1 +kerning first=216 second=65 amount=-1 +kerning first=86 second=234 amount=-1 +kerning first=376 second=260 amount=-2 +kerning first=75 second=199 amount=-1 +kerning first=374 second=118 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=376 second=121 amount=-1 +kerning first=1036 second=1058 amount=-1 +kerning first=304 second=361 amount=-1 +kerning first=84 second=231 amount=-1 +kerning first=232 second=121 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=379 second=117 amount=-1 +kerning first=303 second=267 amount=-1 +kerning first=193 second=264 amount=-1 +kerning first=375 second=267 amount=-1 +kerning first=197 second=8221 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=374 second=380 amount=-1 +kerning first=230 second=118 amount=-1 +kerning first=287 second=44 amount=-1 +kerning first=248 second=316 amount=-1 +kerning first=260 second=216 amount=-1 +kerning first=89 second=118 amount=-1 +kerning first=194 second=118 amount=-1 +kerning first=371 second=234 amount=-1 +kerning first=84 second=212 amount=-1 +kerning first=326 second=8217 amount=-1 +kerning first=195 second=346 amount=-1 +kerning first=1050 second=1089 amount=-1 +kerning first=350 second=201 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=268 second=282 amount=-1 +kerning first=8250 second=296 amount=-1 +kerning first=344 second=266 amount=-1 +kerning first=288 second=87 amount=-1 +kerning first=89 second=380 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=1069 second=1040 amount=-1 +kerning first=344 second=231 amount=-1 +kerning first=266 second=380 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=1038 second=1083 amount=-1 +kerning first=1056 second=1103 amount=-1 +kerning first=298 second=224 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=8222 second=374 amount=-2 +kerning first=195 second=84 amount=-2 +kerning first=85 second=224 amount=-1 +kerning first=121 second=224 amount=-1 +kerning first=288 second=171 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=352 second=204 amount=-1 +kerning first=262 second=325 amount=-1 +kerning first=370 second=224 amount=-1 +kerning first=258 second=363 amount=-1 +kerning first=354 second=291 amount=-1 +kerning first=344 second=244 amount=-1 +kerning first=330 second=363 amount=-1 +kerning first=282 second=291 amount=-1 +kerning first=8217 second=230 amount=-1 +kerning first=105 second=291 amount=-1 +kerning first=69 second=291 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=253 second=337 amount=-1 +kerning first=275 second=44 amount=-1 +kerning first=72 second=287 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=98 second=44 amount=-1 +kerning first=356 second=338 amount=-1 +kerning first=86 second=256 amount=-2 +kerning first=221 second=198 amount=-2 +kerning first=80 second=198 amount=-1 +kerning first=260 second=366 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=66 second=112 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=75 second=117 amount=-1 +kerning first=90 second=361 amount=-1 +kerning first=321 second=287 amount=-1 +kerning first=327 second=367 amount=-1 +kerning first=249 second=287 amount=-1 +kerning first=221 second=326 amount=-1 +kerning first=264 second=66 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=331 second=8220 amount=-1 +kerning first=78 second=367 amount=-1 +kerning first=193 second=286 amount=-1 +kerning first=89 second=74 amount=-1 +kerning first=350 second=302 amount=-1 +kerning first=248 second=121 amount=-1 +kerning first=118 second=228 amount=-1 +kerning first=288 second=221 amount=-1 +kerning first=365 second=108 amount=-1 +kerning first=374 second=74 amount=-1 +kerning first=344 second=350 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=375 second=245 amount=-1 +kerning first=354 second=269 amount=-1 +kerning first=103 second=261 amount=-1 +kerning first=303 second=245 amount=-1 +kerning first=377 second=253 amount=-1 +kerning first=256 second=289 amount=-1 +kerning first=264 second=205 amount=-1 +kerning first=66 second=251 amount=-1 +kerning first=256 second=115 amount=-1 +kerning first=66 second=211 amount=-1 +kerning first=217 second=97 amount=-1 +kerning first=378 second=45 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=289 second=97 amount=-1 +kerning first=262 second=290 amount=-1 +kerning first=207 second=251 amount=-1 +kerning first=253 second=97 amount=-1 +kerning first=78 second=261 amount=-1 +kerning first=327 second=261 amount=-1 +kerning first=291 second=261 amount=-1 +kerning first=67 second=211 amount=-1 +kerning first=255 second=261 amount=-1 +kerning first=253 second=271 amount=-1 +kerning first=219 second=261 amount=-1 +kerning first=332 second=194 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=368 second=194 amount=-1 +kerning first=240 second=255 amount=-1 +kerning first=99 second=255 amount=-1 +kerning first=269 second=226 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=364 second=198 amount=-1 +kerning first=250 second=119 amount=-1 +kerning first=109 second=119 amount=-1 +kerning first=336 second=44 amount=-1 +kerning first=230 second=314 amount=-1 +kerning first=1036 second=1095 amount=-1 +kerning first=1062 second=1095 amount=-1 +kerning first=8250 second=362 amount=-1 +kerning first=266 second=274 amount=-1 +kerning first=362 second=46 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=317 second=366 amount=-1 +kerning first=220 second=289 amount=-1 +kerning first=97 second=8220 amount=-1 +kerning first=217 second=192 amount=-1 +kerning first=231 second=44 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=8250 second=256 amount=-1 +kerning first=376 second=234 amount=-1 +kerning first=366 second=8249 amount=-1 +kerning first=258 second=347 amount=-1 +kerning first=302 second=230 amount=-1 +kerning first=197 second=354 amount=-2 +kerning first=86 second=122 amount=-1 +kerning first=197 second=213 amount=-1 +kerning first=8218 second=84 amount=-2 +kerning first=344 second=288 amount=-1 +kerning first=317 second=364 amount=-1 +kerning first=76 second=377 amount=-1 +kerning first=290 second=46 amount=-1 +kerning first=284 second=374 amount=-1 +kerning first=374 second=230 amount=-1 +kerning first=1059 second=1077 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=203 second=291 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=249 second=375 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=321 second=375 amount=-1 +kerning first=65 second=346 amount=-1 +kerning first=8222 second=370 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=108 second=375 amount=-1 +kerning first=313 second=87 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=218 second=103 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=1058 second=1093 amount=-1 +kerning first=266 second=336 amount=-1 +kerning first=214 second=196 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=219 second=46 amount=-1 +kerning first=286 second=196 amount=-1 +kerning first=354 second=335 amount=-1 +kerning first=1059 second=1099 amount=-1 +kerning first=304 second=251 amount=-1 +kerning first=315 second=374 amount=-1 +kerning first=250 second=253 amount=-1 +kerning first=171 second=374 amount=-1 +kerning first=221 second=260 amount=-2 +kerning first=66 second=374 amount=-1 +kerning first=352 second=105 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=365 second=121 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=257 second=121 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=221 second=121 amount=-1 +kerning first=263 second=318 amount=-1 +kerning first=335 second=318 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=243 second=121 amount=-1 +kerning first=8216 second=233 amount=-1 +kerning first=66 second=121 amount=-1 +kerning first=83 second=203 amount=-1 +kerning first=356 second=228 amount=-1 +kerning first=223 second=316 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=367 second=316 amount=-1 +kerning first=264 second=75 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=74 second=171 amount=-1 +kerning first=354 second=326 amount=-1 +kerning first=263 second=375 amount=-1 +kerning first=350 second=77 amount=-1 +kerning first=335 second=375 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=86 second=375 amount=-1 +kerning first=78 second=228 amount=-1 +kerning first=234 second=253 amount=-1 +kerning first=221 second=99 amount=-1 +kerning first=227 second=375 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=1058 second=1040 amount=-1 +kerning first=194 second=217 amount=-1 +kerning first=323 second=365 amount=-1 +kerning first=352 second=270 amount=-1 +kerning first=120 second=230 amount=-1 +kerning first=258 second=250 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=84 second=110 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=248 second=120 amount=-1 +kerning first=314 second=106 amount=-1 +kerning first=82 second=263 amount=-1 +kerning first=262 second=334 amount=-1 +kerning first=264 second=315 amount=-1 +kerning first=196 second=220 amount=-1 +kerning first=236 second=253 amount=-1 +kerning first=344 second=253 amount=-1 +kerning first=287 second=224 amount=-1 +kerning first=323 second=224 amount=-1 +kerning first=258 second=354 amount=-2 +kerning first=287 second=171 amount=-1 +kerning first=121 second=281 amount=-1 +kerning first=255 second=283 amount=-1 +kerning first=363 second=118 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=376 second=339 amount=-1 +kerning first=204 second=365 amount=-1 +kerning first=86 second=119 amount=-1 +kerning first=356 second=382 amount=-1 +kerning first=296 second=117 amount=-1 +kerning first=351 second=121 amount=-1 +kerning first=303 second=333 amount=-1 +kerning first=315 second=121 amount=-1 +kerning first=260 second=117 amount=-1 +kerning first=375 second=333 amount=-1 +kerning first=88 second=255 amount=-1 +kerning first=346 second=287 amount=-1 +kerning first=199 second=216 amount=-1 +kerning first=118 second=275 amount=-1 +kerning first=274 second=287 amount=-1 +kerning first=202 second=287 amount=-1 +kerning first=84 second=79 amount=-1 +kerning first=267 second=230 amount=-1 +kerning first=8217 second=65 amount=-2 +kerning first=82 second=338 amount=-1 +kerning first=287 second=378 amount=-1 +kerning first=192 second=368 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=219 second=74 amount=-1 +kerning first=84 second=350 amount=-1 +kerning first=350 second=192 amount=-1 +kerning first=344 second=275 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=289 second=347 amount=-1 +kerning first=378 second=8249 amount=-1 +kerning first=354 second=379 amount=-1 +kerning first=217 second=227 amount=-1 +kerning first=371 second=113 amount=-1 +kerning first=376 second=198 amount=-2 +kerning first=8250 second=69 amount=-1 +kerning first=86 second=113 amount=-1 +kerning first=199 second=71 amount=-1 +kerning first=65 second=84 amount=-2 +kerning first=379 second=291 amount=-1 +kerning first=315 second=90 amount=-1 +kerning first=307 second=291 amount=-1 +kerning first=235 second=291 amount=-1 +kerning first=199 second=291 amount=-1 +kerning first=86 second=199 amount=-1 +kerning first=66 second=361 amount=-1 +kerning first=321 second=366 amount=-1 +kerning first=8222 second=86 amount=-2 +kerning first=199 second=73 amount=-1 +kerning first=84 second=377 amount=-1 +kerning first=214 second=44 amount=-1 +kerning first=87 second=337 amount=-1 +kerning first=325 second=227 amount=-1 +kerning first=258 second=332 amount=-1 +kerning first=346 second=256 amount=-1 +kerning first=268 second=198 amount=-1 +kerning first=45 second=221 amount=-1 +kerning first=84 second=275 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=199 second=194 amount=-1 +kerning first=311 second=240 amount=-1 +kerning first=275 second=119 amount=-1 +kerning first=8250 second=310 amount=-1 +kerning first=379 second=365 amount=-1 +kerning first=8216 second=103 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=268 second=103 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=1054 second=1038 amount=-1 +kerning first=347 second=119 amount=-1 +kerning first=290 second=374 amount=-1 +kerning first=310 second=212 amount=-1 +kerning first=221 second=281 amount=-1 +kerning first=363 second=314 amount=-1 +kerning first=291 second=314 amount=-1 +kerning first=246 second=108 amount=-1 +kerning first=195 second=115 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=195 second=289 amount=-1 +kerning first=249 second=8220 amount=-1 +kerning first=339 second=289 amount=-1 +kerning first=321 second=8220 amount=-1 +kerning first=231 second=289 amount=-1 +kerning first=377 second=367 amount=-1 +kerning first=267 second=289 amount=-1 +kerning first=255 second=314 amount=-1 +kerning first=8250 second=205 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=366 second=257 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=8250 second=287 amount=-1 +kerning first=330 second=257 amount=-1 +kerning first=344 second=101 amount=-1 +kerning first=221 second=229 amount=-1 +kerning first=86 second=243 amount=-1 +kerning first=256 second=220 amount=-1 +kerning first=375 second=115 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=1038 second=1102 amount=-1 +kerning first=302 second=261 amount=-1 +kerning first=374 second=109 amount=-1 +kerning first=46 second=45 amount=-1 +kerning first=1024 second=1059 amount=-1 +kerning first=374 second=261 amount=-1 +kerning first=197 second=83 amount=-1 +kerning first=229 second=255 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=103 second=226 amount=-1 +kerning first=331 second=45 amount=-1 +kerning first=217 second=289 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=119 second=225 amount=-1 +kerning first=291 second=380 amount=-1 +kerning first=255 second=380 amount=-1 +kerning first=8220 second=269 amount=-1 +kerning first=1027 second=1092 amount=-1 +kerning first=296 second=225 amount=-1 +kerning first=120 second=253 amount=-1 +kerning first=368 second=225 amount=-1 +kerning first=66 second=252 amount=-1 +kerning first=84 second=253 amount=-1 +kerning first=315 second=220 amount=-1 +kerning first=289 second=227 amount=-1 +kerning first=225 second=253 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=243 second=46 amount=-1 +kerning first=374 second=283 amount=-1 +kerning first=279 second=46 amount=-1 +kerning first=256 second=364 amount=-1 +kerning first=371 second=243 amount=-1 +kerning first=118 second=382 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=266 second=65 amount=-1 +kerning first=374 second=65 amount=-2 +kerning first=241 second=8217 amount=-1 +kerning first=315 second=381 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=89 second=283 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=1045 second=1059 amount=-1 +kerning first=252 second=318 amount=-1 +kerning first=264 second=264 amount=-1 +kerning first=375 second=289 amount=-1 +kerning first=370 second=259 amount=-1 +kerning first=268 second=317 amount=-1 +kerning first=298 second=259 amount=-1 +kerning first=339 second=311 amount=-1 +kerning first=8220 second=194 amount=-2 +kerning first=66 second=46 amount=-1 +kerning first=381 second=369 amount=-1 +kerning first=8216 second=277 amount=-1 +kerning first=344 second=8217 amount=-1 +kerning first=376 second=99 amount=-1 +kerning first=258 second=213 amount=-1 +kerning first=8250 second=325 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=362 second=352 amount=-1 +kerning first=97 second=375 amount=-1 +kerning first=121 second=259 amount=-1 +kerning first=85 second=259 amount=-1 +kerning first=218 second=352 amount=-1 +kerning first=194 second=87 amount=-2 +kerning first=1050 second=1063 amount=-1 +kerning first=1047 second=1093 amount=-1 +kerning first=368 second=259 amount=-1 +kerning first=289 second=230 amount=-1 +kerning first=325 second=230 amount=-1 +kerning first=106 second=253 amount=-1 +kerning first=217 second=230 amount=-1 +kerning first=253 second=230 amount=-1 +kerning first=283 second=253 amount=-1 +kerning first=346 second=87 amount=-1 +kerning first=298 second=363 amount=-1 +kerning first=366 second=122 amount=-1 +kerning first=376 second=110 amount=-1 +kerning first=82 second=101 amount=-1 +kerning first=84 second=81 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=8217 second=197 amount=-2 +kerning first=321 second=219 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=193 second=87 amount=-2 +kerning first=346 second=317 amount=-1 +kerning first=1043 second=1103 amount=-1 +kerning first=86 second=277 amount=-1 +kerning first=209 second=287 amount=-1 +kerning first=344 second=121 amount=-1 +kerning first=219 second=196 amount=-1 +kerning first=236 second=121 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=371 second=277 amount=-1 +kerning first=311 second=231 amount=-1 +kerning first=217 second=171 amount=-1 +kerning first=353 second=287 amount=-1 +kerning first=289 second=171 amount=-1 +kerning first=253 second=171 amount=-1 +kerning first=281 second=287 amount=-1 +kerning first=120 second=252 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=317 second=287 amount=-1 +kerning first=325 second=171 amount=-1 +kerning first=111 second=375 amount=-1 +kerning first=366 second=352 amount=-1 +kerning first=46 second=8217 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=264 second=270 amount=-1 +kerning first=87 second=99 amount=-1 +kerning first=8222 second=89 amount=-2 +kerning first=259 second=8217 amount=-1 +kerning first=258 second=352 amount=-1 +kerning first=331 second=8217 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=75 second=375 amount=-1 +kerning first=267 second=229 amount=-1 +kerning first=367 second=8217 amount=-1 +kerning first=231 second=229 amount=-1 +kerning first=370 second=74 amount=-1 +kerning first=344 second=213 amount=-1 +kerning first=356 second=381 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=287 second=382 amount=-1 +kerning first=371 second=106 amount=1 +kerning first=377 second=103 amount=-1 +kerning first=266 second=315 amount=-1 +kerning first=258 second=214 amount=-1 +kerning first=233 second=103 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=356 second=246 amount=-1 +kerning first=197 second=103 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=107 second=246 amount=-1 +kerning first=310 second=199 amount=-1 +kerning first=194 second=8217 amount=-1 +kerning first=8250 second=356 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=77 second=361 amount=-1 +kerning first=195 second=117 amount=-1 +kerning first=8217 second=335 amount=-1 +kerning first=117 second=255 amount=-1 +kerning first=90 second=117 amount=-1 +kerning first=361 second=8220 amount=-1 +kerning first=252 second=316 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=8216 second=224 amount=-1 +kerning first=87 second=119 amount=-1 +kerning first=192 second=8221 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=76 second=118 amount=-1 +kerning first=379 second=378 amount=-1 +kerning first=192 second=119 amount=-1 +kerning first=376 second=281 amount=-1 +kerning first=268 second=202 amount=-1 +kerning first=228 second=119 amount=-1 +kerning first=344 second=233 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=375 second=347 amount=-1 +kerning first=8216 second=242 amount=-1 +kerning first=244 second=314 amount=-1 +kerning first=315 second=380 amount=-1 +kerning first=194 second=85 amount=-1 +kerning first=103 second=314 amount=-1 +kerning first=195 second=347 amount=-1 +kerning first=288 second=86 amount=-1 +kerning first=8217 second=256 amount=-2 +kerning first=221 second=379 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=8249 second=221 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=354 second=378 amount=-1 +kerning first=84 second=101 amount=-1 +kerning first=374 second=216 amount=-1 +kerning first=325 second=250 amount=-1 +kerning first=314 second=8220 amount=-1 +kerning first=65 second=8220 amount=-1 +kerning first=326 second=119 amount=-1 +kerning first=84 second=331 amount=-1 +kerning first=272 second=193 amount=-1 +kerning first=352 second=274 amount=-1 +kerning first=310 second=216 amount=-1 +kerning first=219 second=197 amount=-1 +kerning first=8220 second=195 amount=-2 +kerning first=376 second=90 amount=-1 +kerning first=286 second=291 amount=-1 +kerning first=121 second=113 amount=-1 +kerning first=250 second=291 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=321 second=377 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=45 second=83 amount=-1 +kerning first=73 second=291 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=89 second=197 amount=-2 +kerning first=1059 second=1094 amount=-1 +kerning first=258 second=83 amount=-1 +kerning first=266 second=216 amount=-1 +kerning first=266 second=197 amount=-1 +kerning first=8217 second=257 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=366 second=83 amount=-1 +kerning first=374 second=197 amount=-2 +kerning first=317 second=85 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=8250 second=87 amount=-1 +kerning first=356 second=187 amount=-1 +kerning first=260 second=8249 amount=-1 +kerning first=354 second=240 amount=-1 +kerning first=368 second=8249 amount=-1 +kerning first=256 second=268 amount=-1 +kerning first=83 second=68 amount=-1 +kerning first=346 second=278 amount=-1 +kerning first=8220 second=333 amount=-1 +kerning first=86 second=198 amount=-2 +kerning first=83 second=45 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=235 second=108 amount=-1 +kerning first=249 second=318 amount=-1 +kerning first=222 second=46 amount=-1 +kerning first=209 second=228 amount=-1 +kerning first=219 second=65 amount=-1 +kerning first=199 second=260 amount=-1 +kerning first=195 second=367 amount=-1 +kerning first=268 second=193 amount=-1 +kerning first=351 second=120 amount=-1 +kerning first=8220 second=235 amount=-1 +kerning first=90 second=367 amount=-1 +kerning first=298 second=361 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=221 second=339 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=1061 second=1073 amount=-1 +kerning first=8222 second=220 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=262 second=304 amount=-1 +kerning first=354 second=109 amount=-1 +kerning first=311 second=271 amount=-1 +kerning first=89 second=45 amount=-1 +kerning first=70 second=352 amount=-1 +kerning first=255 second=275 amount=-1 +kerning first=8250 second=195 amount=-1 +kerning first=374 second=45 amount=-1 +kerning first=8216 second=263 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=8216 second=244 amount=-1 +kerning first=70 second=194 amount=-1 +kerning first=376 second=242 amount=-1 +kerning first=233 second=44 amount=-1 +kerning first=316 second=255 amount=-1 +kerning first=370 second=225 amount=-1 +kerning first=244 second=255 amount=-1 +kerning first=298 second=225 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=376 second=286 amount=-1 +kerning first=221 second=110 amount=-1 +kerning first=344 second=81 amount=-1 +kerning first=231 second=97 amount=-1 +kerning first=267 second=97 amount=-1 +kerning first=269 second=44 amount=-1 +kerning first=375 second=97 amount=-1 +kerning first=87 second=79 amount=-1 +kerning first=288 second=65 amount=-1 +kerning first=350 second=84 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=197 second=252 amount=-1 +kerning first=264 second=79 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=66 second=104 amount=-1 +kerning first=65 second=289 amount=-1 +kerning first=8222 second=378 amount=-1 +kerning first=278 second=289 amount=-1 +kerning first=314 second=289 amount=-1 +kerning first=206 second=289 amount=-1 +kerning first=1059 second=1088 amount=-1 +kerning first=221 second=241 amount=-1 +kerning first=85 second=225 amount=-1 +kerning first=350 second=289 amount=-1 +kerning first=65 second=368 amount=-1 +kerning first=303 second=248 amount=-1 +kerning first=354 second=241 amount=-1 +kerning first=263 second=230 amount=-1 +kerning first=8250 second=278 amount=-1 +kerning first=1059 second=1108 amount=-1 +kerning first=197 second=352 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=8250 second=198 amount=-1 +kerning first=198 second=287 amount=-1 +kerning first=262 second=206 amount=-1 +kerning first=234 second=287 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=195 second=374 amount=-2 +kerning first=313 second=86 amount=-1 +kerning first=8218 second=118 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=350 second=368 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=268 second=380 amount=-1 +kerning first=230 second=46 amount=-1 +kerning first=103 second=45 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=8216 second=273 amount=-1 +kerning first=65 second=347 amount=-1 +kerning first=98 second=253 amount=-1 +kerning first=268 second=70 amount=-1 +kerning first=376 second=380 amount=-1 +kerning first=303 second=269 amount=-1 +kerning first=375 second=269 amount=-1 +kerning first=255 second=353 amount=-1 +kerning first=354 second=229 amount=-1 +kerning first=344 second=311 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=313 second=375 amount=-1 +kerning first=364 second=346 amount=-1 +kerning first=87 second=289 amount=-1 +kerning first=256 second=346 amount=-1 +kerning first=220 second=346 amount=-1 +kerning first=277 second=375 amount=-1 +kerning first=264 second=289 amount=-1 +kerning first=346 second=219 amount=-1 +kerning first=192 second=289 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=375 second=248 amount=-1 +kerning first=73 second=369 amount=-1 +kerning first=1059 second=1087 amount=-1 +kerning first=344 second=370 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=356 second=289 amount=-1 +kerning first=67 second=196 amount=-1 +kerning first=8216 second=243 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=344 second=332 amount=-1 +kerning first=192 second=171 amount=-1 +kerning first=283 second=121 amount=-1 +kerning first=264 second=171 amount=-1 +kerning first=87 second=231 amount=-1 +kerning first=228 second=8220 amount=-1 +kerning first=106 second=121 amount=-1 +kerning first=352 second=196 amount=-1 +kerning first=208 second=196 amount=-1 +kerning first=76 second=119 amount=-1 +kerning first=311 second=100 amount=-1 +kerning first=84 second=233 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=196 second=221 amount=-2 +kerning first=8250 second=219 amount=-1 +kerning first=253 second=99 amount=-1 +kerning first=269 second=314 amount=-1 +kerning first=233 second=314 amount=-1 +kerning first=84 second=213 amount=-1 +kerning first=262 second=382 amount=-1 +kerning first=117 second=253 amount=-1 +kerning first=258 second=253 amount=-1 +kerning first=333 second=120 amount=-1 +kerning first=266 second=334 amount=-1 +kerning first=310 second=8249 amount=-1 +kerning first=382 second=8249 amount=-1 +kerning first=346 second=291 amount=-1 +kerning first=89 second=334 amount=-1 +kerning first=346 second=8249 amount=-1 +kerning first=262 second=344 amount=-1 +kerning first=1090 second=1083 amount=-1 +kerning first=323 second=363 amount=-1 +kerning first=316 second=103 amount=-1 +kerning first=352 second=103 amount=-1 +kerning first=374 second=334 amount=-1 +kerning first=90 second=249 amount=-1 +kerning first=101 second=118 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=193 second=362 amount=-1 +kerning first=209 second=365 amount=-1 +kerning first=65 second=118 amount=-1 +kerning first=346 second=68 amount=-1 +kerning first=8217 second=275 amount=-1 +kerning first=263 second=316 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=255 second=235 amount=-1 +kerning first=269 second=259 amount=-1 +kerning first=377 second=255 amount=-1 +kerning first=244 second=44 amount=-1 +kerning first=269 second=255 amount=-1 +kerning first=352 second=44 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=103 second=44 amount=-1 +kerning first=233 second=255 amount=-1 +kerning first=228 second=8221 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=315 second=85 amount=-1 +kerning first=8250 second=317 amount=-1 +kerning first=87 second=100 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=87 second=290 amount=-1 +kerning first=118 second=227 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=70 second=193 amount=-1 +kerning first=8250 second=122 amount=-1 +kerning first=313 second=85 amount=-1 +kerning first=67 second=65 amount=-1 +kerning first=8250 second=121 amount=-1 +kerning first=303 second=118 amount=-1 +kerning first=339 second=118 amount=-1 +kerning first=311 second=232 amount=-1 +kerning first=199 second=338 amount=-1 +kerning first=263 second=257 amount=-1 +kerning first=1027 second=1078 amount=-1 +kerning first=208 second=65 amount=-1 +kerning first=83 second=260 amount=-1 +kerning first=264 second=192 amount=-1 +kerning first=195 second=118 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=231 second=118 amount=-1 +kerning first=336 second=192 amount=-1 +kerning first=352 second=65 amount=-1 +kerning first=368 second=260 amount=-1 +kerning first=332 second=260 amount=-1 +kerning first=206 second=250 amount=-1 +kerning first=1105 second=1076 amount=-1 +kerning first=121 second=245 amount=-1 +kerning first=221 second=378 amount=-1 +kerning first=1036 second=1073 amount=-1 +kerning first=66 second=381 amount=-1 +kerning first=194 second=84 amount=-2 +kerning first=347 second=291 amount=-1 +kerning first=275 second=291 amount=-1 +kerning first=288 second=256 amount=-1 +kerning first=119 second=337 amount=-1 +kerning first=193 second=361 amount=-1 +kerning first=221 second=90 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=8218 second=354 amount=-2 +kerning first=377 second=102 amount=-1 +kerning first=216 second=256 amount=-1 +kerning first=221 second=242 amount=-1 +kerning first=310 second=67 amount=-1 +kerning first=310 second=338 amount=-1 +kerning first=89 second=335 amount=-1 +kerning first=327 second=45 amount=-1 +kerning first=352 second=280 amount=-1 +kerning first=313 second=374 amount=-1 +kerning first=66 second=261 amount=-1 +kerning first=374 second=335 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=354 second=110 amount=-1 +kerning first=256 second=367 amount=-1 +kerning first=362 second=224 amount=-1 +kerning first=76 second=289 amount=-1 +kerning first=325 second=289 amount=-1 +kerning first=8220 second=103 amount=-1 +kerning first=1027 second=1040 amount=-1 +kerning first=218 second=224 amount=-1 +kerning first=253 second=289 amount=-1 +kerning first=8250 second=377 amount=-1 +kerning first=87 second=328 amount=-1 +kerning first=354 second=279 amount=-1 +kerning first=1043 second=1104 amount=-1 +kerning first=354 second=381 amount=-1 +kerning first=356 second=286 amount=-1 +kerning first=253 second=229 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=217 second=229 amount=-1 +kerning first=353 second=115 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=8218 second=221 amount=-2 +kerning first=325 second=229 amount=-1 +kerning first=289 second=229 amount=-1 +kerning first=197 second=353 amount=-1 +kerning first=352 second=354 amount=-1 +kerning first=356 second=324 amount=-1 +kerning first=118 second=287 amount=-1 +kerning first=187 second=287 amount=-1 +kerning first=82 second=287 amount=-1 +kerning first=346 second=356 amount=-1 +kerning first=110 second=45 amount=-1 +kerning first=366 second=194 amount=-1 +kerning first=264 second=290 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=1050 second=1054 amount=-1 +kerning first=367 second=287 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=374 second=275 amount=-1 +kerning first=376 second=245 amount=-1 +kerning first=354 second=339 amount=-1 +kerning first=1027 second=1089 amount=-1 +kerning first=195 second=368 amount=-1 +kerning first=219 second=45 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=255 second=45 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=222 second=194 amount=-1 +kerning first=89 second=275 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=8220 second=234 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=268 second=78 amount=-1 +kerning first=192 second=350 amount=-1 +kerning first=194 second=353 amount=-1 +kerning first=305 second=45 amount=-1 +kerning first=264 second=350 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=313 second=356 amount=-1 +kerning first=374 second=353 amount=-1 +kerning first=246 second=318 amount=-1 +kerning first=8217 second=277 amount=-1 +kerning first=377 second=45 amount=-1 +kerning first=275 second=289 amount=-1 +kerning first=87 second=350 amount=-1 +kerning first=277 second=255 amount=-1 +kerning first=313 second=255 amount=-1 +kerning first=262 second=112 amount=-1 +kerning first=347 second=289 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=84 second=194 amount=-2 +kerning first=84 second=332 amount=-1 +kerning first=376 second=223 amount=-1 +kerning first=352 second=374 amount=-1 +kerning first=89 second=353 amount=-1 +kerning first=8249 second=354 amount=-1 +kerning first=84 second=290 amount=-1 +kerning first=325 second=251 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=374 second=257 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=1100 second=1091 amount=-1 +kerning first=272 second=192 amount=-1 +kerning first=70 second=44 amount=-1 +kerning first=101 second=119 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=65 second=119 amount=-1 +kerning first=302 second=257 amount=-1 +kerning first=264 second=78 amount=-1 +kerning first=314 second=119 amount=-1 +kerning first=315 second=221 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=350 second=119 amount=-1 +kerning first=356 second=225 amount=-1 +kerning first=291 second=46 amount=-1 +kerning first=117 second=314 amount=-1 +kerning first=255 second=46 amount=-1 +kerning first=8250 second=66 amount=-1 +kerning first=269 second=253 amount=-1 +kerning first=251 second=375 amount=-1 +kerning first=187 second=346 amount=-1 +kerning first=231 second=230 amount=-1 +kerning first=374 second=375 amount=-1 +kerning first=82 second=346 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=370 second=378 amount=-1 +kerning first=194 second=375 amount=-1 +kerning first=230 second=375 amount=-1 +kerning first=83 second=87 amount=-1 +kerning first=268 second=201 amount=-1 +kerning first=311 second=101 amount=-1 +kerning first=260 second=87 amount=-2 +kerning first=8220 second=273 amount=-1 +kerning first=89 second=375 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=8250 second=70 amount=-1 +kerning first=217 second=380 amount=-1 +kerning first=89 second=235 amount=-1 +kerning first=321 second=218 amount=-1 +kerning first=288 second=354 amount=-1 +kerning first=277 second=104 amount=-1 +kerning first=374 second=235 amount=-1 +kerning first=258 second=81 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=86 second=377 amount=-1 +kerning first=120 second=369 amount=-1 +kerning first=263 second=105 amount=-1 +kerning first=264 second=212 amount=-1 +kerning first=209 second=117 amount=-1 +kerning first=67 second=197 amount=-1 +kerning first=1059 second=1083 amount=-1 +kerning first=344 second=83 amount=-1 +kerning first=255 second=333 amount=-1 +kerning first=258 second=121 amount=-1 +kerning first=208 second=197 amount=-1 +kerning first=83 second=317 amount=-1 +kerning first=253 second=231 amount=-1 +kerning first=352 second=197 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=323 second=291 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=86 second=335 amount=-1 +kerning first=346 second=237 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=275 second=311 amount=-1 +kerning first=375 second=230 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=233 second=253 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=371 second=335 amount=-1 +kerning first=89 second=333 amount=-1 +kerning first=213 second=260 amount=-1 +kerning first=286 second=171 amount=-1 +kerning first=256 second=249 amount=-1 +kerning first=321 second=86 amount=-1 +kerning first=262 second=266 amount=-1 +kerning first=260 second=199 amount=-1 +kerning first=204 second=361 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=67 second=79 amount=-1 +kerning first=363 second=103 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=84 second=214 amount=-1 +kerning first=109 second=8221 amount=-1 +kerning first=327 second=103 amount=-1 +kerning first=219 second=103 amount=-1 +kerning first=8218 second=119 amount=-1 +kerning first=255 second=103 amount=-1 +kerning first=253 second=100 amount=-1 +kerning first=221 second=267 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=250 second=8221 amount=-1 +kerning first=354 second=71 amount=-1 +kerning first=264 second=330 amount=-1 +kerning first=381 second=365 amount=-1 +kerning first=45 second=103 amount=-1 +kerning first=321 second=220 amount=-1 +kerning first=221 second=8250 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=8216 second=192 amount=-2 +kerning first=263 second=261 amount=-1 +kerning first=220 second=97 amount=-1 +kerning first=328 second=118 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=207 second=224 amount=-1 +kerning first=199 second=298 amount=-1 +kerning first=118 second=248 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=296 second=259 amount=-1 +kerning first=66 second=224 amount=-1 +kerning first=66 second=379 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=256 second=118 amount=-1 +kerning first=260 second=218 amount=-1 +kerning first=82 second=267 amount=-1 +kerning first=315 second=379 amount=-1 +kerning first=255 second=234 amount=-1 +kerning first=83 second=218 amount=-1 +kerning first=115 second=118 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=90 second=250 amount=-1 +kerning first=1050 second=1090 amount=-1 +kerning first=83 second=221 amount=-1 +kerning first=260 second=221 amount=-2 +kerning first=376 second=378 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=71 second=287 amount=-1 +kerning first=84 second=192 amount=-2 +kerning first=214 second=193 amount=-1 +kerning first=1113 second=1118 amount=-1 +kerning first=213 second=198 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=118 second=226 amount=-1 +kerning first=313 second=84 amount=-1 +kerning first=356 second=287 amount=-1 +kerning first=352 second=102 amount=-1 +kerning first=284 second=287 amount=-1 +kerning first=1118 second=1083 amount=-1 +kerning first=220 second=227 amount=-1 +kerning first=267 second=307 amount=-1 +kerning first=231 second=307 amount=-1 +kerning first=268 second=378 amount=-1 +kerning first=344 second=291 amount=-1 +kerning first=286 second=221 amount=-1 +kerning first=107 second=113 amount=-1 +kerning first=256 second=368 amount=-1 +kerning first=254 second=121 amount=-1 +kerning first=264 second=210 amount=-1 +kerning first=236 second=291 amount=-1 +kerning first=352 second=45 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=321 second=89 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=88 second=262 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=217 second=350 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=371 second=337 amount=-1 +kerning first=354 second=8249 amount=-1 +kerning first=218 second=261 amount=-1 +kerning first=86 second=337 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=119 second=240 amount=-1 +kerning first=8218 second=87 amount=-2 +kerning first=209 second=367 amount=-1 +kerning first=118 second=245 amount=-1 +kerning first=350 second=327 amount=-1 +kerning first=82 second=245 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=194 second=370 amount=-1 +kerning first=221 second=279 amount=-1 +kerning first=121 second=263 amount=-1 +kerning first=267 second=228 amount=-1 +kerning first=346 second=66 amount=-1 +kerning first=375 second=228 amount=-1 +kerning first=121 second=244 amount=-1 +kerning first=249 second=108 amount=-1 +kerning first=347 second=120 amount=-1 +kerning first=231 second=228 amount=-1 +kerning first=268 second=302 amount=-1 +kerning first=263 second=108 amount=-1 +kerning first=335 second=108 amount=-1 +kerning first=66 second=303 amount=-1 +kerning first=362 second=8249 amount=-1 +kerning first=86 second=224 amount=-1 +kerning first=206 second=251 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=374 second=226 amount=-1 +kerning first=109 second=8220 amount=-1 +kerning first=364 second=229 amount=-1 +kerning first=250 second=8220 amount=-1 +kerning first=262 second=286 amount=-1 +kerning first=66 second=311 amount=-1 +kerning first=195 second=119 amount=-1 +kerning first=376 second=279 amount=-1 +kerning first=263 second=237 amount=-1 +kerning first=303 second=119 amount=-1 +kerning first=339 second=119 amount=-1 +kerning first=8217 second=333 amount=-1 +kerning first=231 second=119 amount=-1 +kerning first=267 second=119 amount=-1 +kerning first=356 second=115 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=381 second=363 amount=-1 +kerning first=291 second=353 amount=-1 +kerning first=8222 second=221 amount=-2 +kerning first=283 second=314 amount=-1 +kerning first=288 second=356 amount=-1 +kerning first=366 second=45 amount=-1 +kerning first=1046 second=1060 amount=-1 +kerning first=8217 second=246 amount=-1 +kerning first=230 second=255 amount=-1 +kerning first=330 second=45 amount=-1 +kerning first=87 second=101 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=107 second=244 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=89 second=255 amount=-1 +kerning first=272 second=194 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=356 second=244 amount=-1 +kerning first=350 second=280 amount=-1 +kerning first=264 second=80 amount=-1 +kerning first=352 second=296 amount=-1 +kerning first=1114 second=1091 amount=-1 +kerning first=121 second=243 amount=-1 +kerning first=8217 second=103 amount=-1 +kerning first=1061 second=1095 amount=-1 +kerning first=352 second=46 amount=-1 +kerning first=244 second=46 amount=-1 +kerning first=219 second=352 amount=-1 +kerning first=264 second=203 amount=-1 +kerning first=84 second=83 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=262 second=264 amount=-1 +kerning first=352 second=330 amount=-1 +kerning first=115 second=347 amount=-1 +kerning first=256 second=347 amount=-1 +kerning first=218 second=380 amount=-1 +kerning first=268 second=71 amount=-1 +kerning first=356 second=266 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=362 second=380 amount=-1 +kerning first=118 second=225 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=85 second=230 amount=-1 +kerning first=376 second=71 amount=-1 +kerning first=226 second=8217 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=316 second=253 amount=-1 +kerning first=222 second=65 amount=-1 +kerning first=363 second=375 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=321 second=87 amount=-1 +kerning first=366 second=65 amount=-1 +kerning first=303 second=99 amount=-1 +kerning first=73 second=289 amount=-1 +kerning first=89 second=65 amount=-2 +kerning first=263 second=259 amount=-1 +kerning first=197 second=351 amount=-1 +kerning first=1043 second=1076 amount=-1 +kerning first=258 second=370 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=235 second=318 amount=-1 +kerning first=346 second=260 amount=-1 +kerning first=286 second=289 amount=-1 +kerning first=377 second=122 amount=-1 +kerning first=264 second=288 amount=-1 +kerning first=346 second=218 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=366 second=196 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=87 second=288 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=222 second=196 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=230 second=104 amount=-1 +kerning first=264 second=81 amount=-1 +kerning first=374 second=277 amount=-1 +kerning first=260 second=219 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=260 second=89 amount=-2 +kerning first=374 second=286 amount=-1 +kerning first=268 second=203 amount=-1 +kerning first=1036 second=1054 amount=-1 +kerning first=377 second=121 amount=-1 +kerning first=374 second=256 amount=-2 +kerning first=346 second=217 amount=-1 +kerning first=233 second=121 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=311 second=283 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=364 second=228 amount=-1 +kerning first=70 second=196 amount=-1 +kerning first=376 second=224 amount=-1 +kerning first=83 second=89 amount=-1 +kerning first=220 second=228 amount=-1 +kerning first=82 second=111 amount=-1 +kerning first=255 second=277 amount=-1 +kerning first=194 second=354 amount=-2 +kerning first=275 second=103 amount=-1 +kerning first=346 second=86 amount=-1 +kerning first=377 second=252 amount=-1 +kerning first=83 second=220 amount=-1 +kerning first=353 second=347 amount=-1 +kerning first=221 second=71 amount=-1 +kerning first=225 second=8221 amount=-1 +kerning first=118 second=246 amount=-1 +kerning first=338 second=103 amount=-1 +kerning first=261 second=8221 amount=-1 +kerning first=374 second=103 amount=-1 +kerning first=86 second=336 amount=-1 +kerning first=192 second=8217 amount=-1 +kerning first=266 second=103 amount=-1 +kerning first=82 second=246 amount=-1 +kerning first=302 second=103 amount=-1 +kerning first=313 second=354 amount=-1 +kerning first=354 second=8250 amount=-1 +kerning first=194 second=103 amount=-1 +kerning first=230 second=103 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=120 second=171 amount=-1 +kerning first=260 second=220 amount=-1 +kerning first=249 second=316 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=381 second=287 amount=-1 +kerning first=264 second=211 amount=-1 +kerning first=353 second=118 amount=-1 +kerning first=8250 second=260 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=364 second=97 amount=-1 +kerning first=253 second=232 amount=-1 +kerning first=8250 second=86 amount=-1 +kerning first=346 second=315 amount=-1 +kerning first=65 second=350 amount=-1 +kerning first=218 second=74 amount=-1 +kerning first=260 second=67 amount=-1 +kerning first=317 second=118 amount=-1 +kerning first=363 second=255 amount=-1 +kerning first=362 second=74 amount=-1 +kerning first=366 second=44 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=379 second=8249 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=8216 second=283 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=222 second=44 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=45 second=120 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=84 second=193 amount=-2 +kerning first=356 second=267 amount=-1 +kerning first=89 second=234 amount=-1 +kerning first=350 second=209 amount=-1 +kerning first=268 second=72 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=374 second=234 amount=-1 +kerning first=107 second=267 amount=-1 +kerning first=350 second=78 amount=-1 +kerning first=286 second=192 amount=-1 +kerning first=83 second=198 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=90 second=251 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=356 second=245 amount=-1 +kerning first=268 second=315 amount=-1 +kerning first=323 second=361 amount=-1 +kerning first=231 second=318 amount=-1 +kerning first=214 second=192 amount=-1 +kerning first=256 second=250 amount=-1 +kerning first=368 second=198 amount=-1 +kerning first=107 second=245 amount=-1 +kerning first=332 second=198 amount=-1 +kerning first=1059 second=1074 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=1090 second=1113 amount=-1 +kerning first=1050 second=1073 amount=-1 +kerning first=209 second=227 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=369 second=291 amount=-1 +kerning first=87 second=233 amount=-1 +kerning first=115 second=119 amount=-1 +kerning first=78 second=287 amount=-1 +kerning first=328 second=119 amount=-1 +kerning first=315 second=378 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=84 second=291 amount=-1 +kerning first=222 second=256 amount=-1 +kerning first=67 second=198 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=344 second=314 amount=-1 +kerning first=89 second=337 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=208 second=198 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=377 second=291 amount=-1 +kerning first=321 second=90 amount=-1 +kerning first=352 second=198 amount=-1 +kerning first=269 second=291 amount=-1 +kerning first=233 second=291 amount=-1 +kerning first=354 second=67 amount=-1 +kerning first=197 second=291 amount=-1 +kerning first=82 second=244 amount=-1 +kerning first=216 second=44 amount=-1 +kerning first=118 second=244 amount=-1 +kerning first=288 second=44 amount=-1 +kerning first=84 second=210 amount=-1 +kerning first=346 second=354 amount=-1 +kerning first=86 second=378 amount=-1 +kerning first=111 second=44 amount=-1 +kerning first=253 second=101 amount=-1 +kerning first=344 second=84 amount=-1 +kerning first=289 second=318 amount=-1 +kerning first=374 second=337 amount=-1 +kerning first=323 second=227 amount=-1 +kerning first=366 second=256 amount=-1 +kerning first=287 second=227 amount=-1 +kerning first=86 second=8250 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=262 second=203 amount=-1 +kerning first=8222 second=356 amount=-2 +kerning first=199 second=336 amount=-1 +kerning first=87 second=198 amount=-2 +kerning first=187 second=73 amount=-1 +kerning first=290 second=89 amount=-1 +kerning first=252 second=108 amount=-1 +kerning first=381 second=361 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=221 second=263 amount=-1 +kerning first=266 second=278 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=222 second=197 amount=-1 +kerning first=1088 second=1076 amount=-1 +kerning first=73 second=367 amount=-1 +kerning first=316 second=106 amount=-1 +kerning first=8250 second=196 amount=-1 +kerning first=366 second=197 amount=-1 +kerning first=262 second=262 amount=-1 +kerning first=193 second=221 amount=-2 +kerning first=375 second=246 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=303 second=246 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=304 second=8249 amount=-1 +kerning first=268 second=8249 amount=-1 +kerning first=8220 second=230 amount=-1 +kerning first=70 second=65 amount=-1 +kerning first=84 second=289 amount=-1 +kerning first=266 second=194 amount=-1 +kerning first=374 second=194 amount=-2 +kerning first=211 second=65 amount=-1 +kerning first=83 second=237 amount=-1 +kerning first=313 second=8220 amount=-1 +kerning first=369 second=289 amount=-1 +kerning first=86 second=260 amount=-2 +kerning first=70 second=45 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=89 second=194 amount=-2 +kerning first=89 second=8249 amount=-1 +kerning first=356 second=97 amount=-1 +kerning first=256 second=211 amount=-1 +kerning first=45 second=287 amount=-1 +kerning first=84 second=353 amount=-1 +kerning first=120 second=353 amount=-1 +kerning first=335 second=255 amount=-1 +kerning first=321 second=374 amount=-1 +kerning first=263 second=255 amount=-1 +kerning first=86 second=240 amount=-1 +kerning first=227 second=255 amount=-1 +kerning first=86 second=255 amount=-1 +kerning first=71 second=374 amount=-1 +kerning first=104 second=8221 amount=-1 +kerning first=371 second=240 amount=-1 +kerning first=8220 second=198 amount=-2 +kerning first=350 second=76 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=121 second=225 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=332 second=46 amount=-1 +kerning first=368 second=46 amount=-1 +kerning first=209 second=363 amount=-1 +kerning first=8220 second=232 amount=-1 +kerning first=119 second=242 amount=-1 +kerning first=220 second=226 amount=-1 +kerning first=268 second=323 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=364 second=226 amount=-1 +kerning first=1046 second=1104 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=66 second=225 amount=-1 +kerning first=222 second=192 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=221 second=224 amount=-1 +kerning first=217 second=193 amount=-1 +kerning first=330 second=224 amount=-1 +kerning first=256 second=290 amount=-1 +kerning first=264 second=213 amount=-1 +kerning first=244 second=375 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=316 second=375 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=213 second=46 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=8217 second=337 amount=-1 +kerning first=266 second=317 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=90 second=369 amount=-1 +kerning first=262 second=282 amount=-1 +kerning first=346 second=221 amount=-1 +kerning first=354 second=111 amount=-1 +kerning first=85 second=287 amount=-1 +kerning first=1070 second=1051 amount=-1 +kerning first=121 second=287 amount=-1 +kerning first=233 second=311 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=362 second=225 amount=-1 +kerning first=1043 second=1086 amount=-1 +kerning first=370 second=287 amount=-1 +kerning first=262 second=287 amount=-1 +kerning first=298 second=287 amount=-1 +kerning first=376 second=259 amount=-1 +kerning first=86 second=275 amount=-1 +kerning first=192 second=351 amount=-1 +kerning first=219 second=194 amount=-1 +kerning first=374 second=352 amount=-1 +kerning first=87 second=351 amount=-1 +kerning first=89 second=352 amount=-1 +kerning first=314 second=8217 amount=-1 +kerning first=66 second=74 amount=-1 +kerning first=194 second=352 amount=-1 +kerning first=286 second=46 amount=-1 +kerning first=303 second=231 amount=-1 +kerning first=264 second=327 amount=-1 +kerning first=1050 second=1038 amount=-1 +kerning first=120 second=254 amount=-1 +kerning first=118 second=269 amount=-1 +kerning first=82 second=269 amount=-1 +kerning first=120 second=261 amount=-1 +kerning first=316 second=121 amount=-1 +kerning first=244 second=121 amount=-1 +kerning first=346 second=374 amount=-1 +kerning first=118 second=229 amount=-1 +kerning first=1059 second=1085 amount=-1 +kerning first=287 second=115 amount=-1 +kerning first=375 second=231 amount=-1 +kerning first=363 second=253 amount=-1 +kerning first=258 second=212 amount=-1 +kerning first=195 second=350 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=65 second=8217 amount=-1 +kerning first=253 second=228 amount=-1 +kerning first=217 second=228 amount=-1 +kerning first=232 second=318 amount=-1 +kerning first=325 second=228 amount=-1 +kerning first=374 second=214 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=289 second=228 amount=-1 +kerning first=354 second=199 amount=-1 +kerning first=219 second=287 amount=-1 +kerning first=266 second=214 amount=-1 +kerning first=264 second=332 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=256 second=251 amount=-1 +kerning first=313 second=103 amount=-1 +kerning first=104 second=171 amount=-1 +kerning first=350 second=330 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=196 second=362 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=277 second=103 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=317 second=8221 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=353 second=119 amount=-1 +kerning first=225 second=118 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=261 second=118 amount=-1 +kerning first=379 second=45 amount=-1 +kerning first=1040 second=1063 amount=-1 +kerning first=317 second=119 amount=-1 +kerning first=367 second=253 amount=-1 +kerning first=379 second=380 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=84 second=118 amount=-1 +kerning first=268 second=204 amount=-1 +kerning first=221 second=246 amount=-1 +kerning first=253 second=233 amount=-1 +kerning first=199 second=67 amount=-1 +kerning first=354 second=113 amount=-1 +kerning first=321 second=217 amount=-1 +kerning first=8250 second=354 amount=-1 +kerning first=369 second=118 amount=-1 +kerning first=369 second=314 amount=-1 +kerning first=333 second=314 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=369 second=8220 amount=-1 +kerning first=315 second=382 amount=-1 +kerning first=242 second=120 amount=-1 +kerning first=87 second=248 amount=-1 +kerning first=225 second=8220 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=376 second=283 amount=-1 +kerning first=261 second=8220 amount=-1 +kerning first=89 second=377 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=347 second=347 amount=-1 +kerning first=346 second=85 amount=-1 +kerning first=87 second=193 amount=-2 +kerning first=109 second=118 amount=-1 +kerning first=260 second=8217 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=264 second=193 amount=-1 +kerning first=1038 second=1117 amount=-1 +kerning first=260 second=85 amount=-1 +kerning first=1069 second=1059 amount=-1 +kerning first=195 second=8221 amount=-1 +kerning first=354 second=257 amount=-1 +kerning first=258 second=216 amount=-1 +kerning first=83 second=85 amount=-1 +kerning first=375 second=229 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=250 second=118 amount=-1 +kerning first=374 second=377 amount=-1 +kerning first=255 second=273 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=221 second=8249 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=70 second=197 amount=-1 +kerning first=279 second=287 amount=-1 +kerning first=120 second=250 amount=-1 +kerning first=70 second=192 amount=-1 +kerning first=321 second=289 amount=-1 +kerning first=1036 second=1077 amount=-1 +kerning first=336 second=193 amount=-1 +kerning first=44 second=8249 amount=-1 +kerning first=86 second=279 amount=-1 +kerning first=219 second=198 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=366 second=291 amount=-1 +kerning first=1024 second=1038 amount=-1 +kerning first=330 second=291 amount=-1 +kerning first=1060 second=1038 amount=-1 +kerning first=258 second=291 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=365 second=318 amount=-1 +kerning first=232 second=107 amount=-1 +kerning first=216 second=260 amount=-1 +kerning first=272 second=65 amount=-1 +kerning first=371 second=279 amount=-1 +kerning first=87 second=268 amount=-1 +kerning first=335 second=44 amount=-1 +kerning first=8220 second=271 amount=-1 +kerning first=221 second=67 amount=-1 +kerning first=288 second=260 amount=-1 +kerning first=263 second=44 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=376 second=113 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=268 second=199 amount=-1 +kerning first=264 second=268 amount=-1 +kerning first=8222 second=87 amount=-2 +kerning first=99 second=227 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=376 second=199 amount=-1 +kerning first=368 second=261 amount=-1 +kerning first=346 second=105 amount=-1 +kerning first=83 second=374 amount=-1 +kerning first=67 second=212 amount=-1 +kerning first=296 second=261 amount=-1 +kerning first=352 second=66 amount=-1 +kerning first=1043 second=1105 amount=-1 +kerning first=231 second=226 amount=-1 +kerning first=277 second=108 amount=-1 +kerning first=267 second=226 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=375 second=226 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=8216 second=271 amount=-1 +kerning first=344 second=98 amount=-1 +kerning first=356 second=44 amount=-1 +kerning first=205 second=229 amount=-1 +kerning first=264 second=122 amount=-1 +kerning first=8218 second=85 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=8250 second=220 amount=-1 +kerning first=87 second=122 amount=-1 +kerning first=119 second=261 amount=-1 +kerning first=121 second=115 amount=-1 +kerning first=8216 second=227 amount=-1 +kerning first=354 second=224 amount=-1 +kerning first=260 second=356 amount=-2 +kerning first=118 second=97 amount=-1 +kerning first=262 second=77 amount=-1 +kerning first=8250 second=378 amount=-1 +kerning first=350 second=310 amount=-1 +kerning first=371 second=339 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=380 second=45 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=236 second=45 amount=-1 +kerning first=252 second=255 amount=-1 +kerning first=221 second=243 amount=-1 +kerning first=82 second=368 amount=-1 +kerning first=350 second=325 amount=-1 +kerning first=187 second=89 amount=-1 +kerning first=344 second=45 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=75 second=255 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=323 second=287 amount=-1 +kerning first=111 second=255 amount=-1 +kerning first=8222 second=118 amount=-1 +kerning first=251 second=287 amount=-1 +kerning first=260 second=374 amount=-2 +kerning first=74 second=287 amount=-1 +kerning first=251 second=253 amount=-1 +kerning first=344 second=104 amount=-1 +kerning first=235 second=121 amount=-1 +kerning first=195 second=8217 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=284 second=46 amount=-1 +kerning first=66 second=109 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=368 second=380 amount=-1 +kerning first=381 second=251 amount=-1 +kerning first=221 second=111 amount=-1 +kerning first=311 second=248 amount=-1 +kerning first=356 second=264 amount=-1 +kerning first=311 second=233 amount=-1 +kerning first=89 second=253 amount=-1 +kerning first=220 second=350 amount=-1 +kerning first=362 second=382 amount=-1 +kerning first=256 second=350 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=268 second=69 amount=-1 +kerning first=376 second=74 amount=-1 +kerning first=364 second=350 amount=-1 +kerning first=316 second=8217 amount=-1 +kerning first=86 second=339 amount=-1 +kerning first=187 second=374 amount=-1 +kerning first=107 second=269 amount=-1 +kerning first=1036 second=1057 amount=-1 +kerning first=374 second=253 amount=-1 +kerning first=376 second=243 amount=-1 +kerning first=352 second=218 amount=-1 +kerning first=356 second=269 amount=-1 +kerning first=310 second=334 amount=-1 +kerning first=260 second=338 amount=-1 +kerning first=200 second=289 amount=-1 +kerning first=236 second=289 amount=-1 +kerning first=197 second=375 amount=-1 +kerning first=344 second=289 amount=-1 +kerning first=262 second=207 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=209 second=251 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=8220 second=65 amount=-2 +kerning first=263 second=289 amount=-1 +kerning first=206 second=369 amount=-1 +kerning first=8220 second=256 amount=-2 +kerning first=65 second=369 amount=-1 +kerning first=120 second=98 amount=-1 +kerning first=352 second=370 amount=-1 +kerning first=346 second=46 amount=-1 +kerning first=216 second=194 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=377 second=375 amount=-1 +kerning first=311 second=263 amount=-1 +kerning first=117 second=121 amount=-1 +kerning first=257 second=8220 amount=-1 +kerning first=363 second=119 amount=-1 +kerning first=233 second=375 amount=-1 +kerning first=356 second=346 amount=-1 +kerning first=269 second=375 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=221 second=259 amount=-1 +kerning first=234 second=119 amount=-1 +kerning first=193 second=89 amount=-2 +kerning first=83 second=217 amount=-1 +kerning first=283 second=291 amount=-1 +kerning first=352 second=256 amount=-1 +kerning first=269 second=261 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=1042 second=1093 amount=-1 +kerning first=70 second=291 amount=-1 +kerning first=268 second=298 amount=-1 +kerning first=208 second=256 amount=-1 +kerning first=354 second=187 amount=-1 +kerning first=250 second=314 amount=-1 +kerning first=347 second=351 amount=-1 +kerning first=67 second=256 amount=-1 +kerning first=363 second=121 amount=-1 +kerning first=1059 second=1082 amount=-1 +kerning first=344 second=8220 amount=-1 +kerning first=67 second=82 amount=-1 +kerning first=354 second=263 amount=-1 +kerning first=216 second=196 amount=-1 +kerning first=119 second=277 amount=-1 +kerning first=221 second=199 amount=-1 +kerning first=8217 second=352 amount=-1 +kerning first=303 second=101 amount=-1 +kerning first=288 second=84 amount=-1 +kerning first=206 second=228 amount=-1 +kerning first=321 second=85 amount=-1 +kerning first=344 second=333 amount=-1 +kerning first=197 second=86 amount=-2 +kerning first=86 second=235 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=84 second=234 amount=-1 +kerning first=218 second=382 amount=-1 +kerning first=371 second=235 amount=-1 +kerning first=87 second=83 amount=-1 +kerning first=346 second=220 amount=-1 +kerning first=235 second=316 amount=-1 +kerning first=192 second=83 amount=-1 +kerning first=71 second=354 amount=-1 +kerning first=266 second=68 amount=-1 +kerning first=264 second=83 amount=-1 +kerning first=256 second=171 amount=-1 +kerning first=220 second=171 amount=-1 +kerning first=328 second=171 amount=-1 +kerning first=256 second=8221 amount=-1 +kerning first=266 second=313 amount=-1 +kerning first=262 second=71 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=364 second=171 amount=-1 +kerning first=82 second=316 amount=-1 +kerning first=252 second=103 amount=-1 +kerning first=1061 second=1077 amount=-1 +kerning first=288 second=103 amount=-1 +kerning first=328 second=8221 amount=-1 +kerning first=325 second=365 amount=-1 +kerning first=88 second=71 amount=-1 +kerning first=346 second=103 amount=-1 +kerning first=67 second=214 amount=-1 +kerning first=274 second=103 amount=-1 +kerning first=253 second=246 amount=-1 +kerning first=344 second=100 amount=-1 +kerning first=202 second=103 amount=-1 +kerning first=8216 second=225 amount=-1 +kerning first=84 second=65 amount=-2 +kerning first=67 second=315 amount=-1 +kerning first=1036 second=1090 amount=-1 +kerning first=1102 second=1076 amount=-1 +kerning first=381 second=249 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=346 second=200 amount=-1 +kerning first=356 second=284 amount=-1 +kerning first=344 second=240 amount=-1 +kerning first=298 second=117 amount=-1 +kerning first=90 second=171 amount=-1 +kerning first=256 second=365 amount=-1 +kerning first=1036 second=1063 amount=-1 +kerning first=66 second=199 amount=-1 +kerning first=195 second=171 amount=-1 +kerning first=354 second=281 amount=-1 +kerning first=1059 second=1047 amount=-1 +kerning first=375 second=171 amount=-1 +kerning first=374 second=255 amount=-1 +kerning first=196 second=89 amount=-2 +kerning first=313 second=121 amount=-1 +kerning first=277 second=121 amount=-1 +kerning first=354 second=382 amount=-1 +kerning first=314 second=8221 amount=-1 +kerning first=313 second=218 amount=-1 +kerning first=275 second=118 amount=-1 +kerning first=315 second=364 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=347 second=118 amount=-1 +kerning first=269 second=228 amount=-1 +kerning first=65 second=8221 amount=-1 +kerning first=365 second=316 amount=-1 +kerning first=233 second=104 amount=-1 +kerning first=352 second=315 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=344 second=234 amount=-1 +kerning first=1059 second=1089 amount=-1 +kerning first=73 second=250 amount=-1 +kerning first=221 second=290 amount=-1 +kerning first=194 second=86 amount=-2 +kerning first=8220 second=335 amount=-1 +kerning first=315 second=87 amount=-1 +kerning first=82 second=248 amount=-1 +kerning first=253 second=347 amount=-1 +kerning first=8220 second=337 amount=-1 +kerning first=1060 second=1040 amount=-1 +kerning first=8217 second=240 amount=-1 +kerning first=284 second=65 amount=-1 +kerning first=221 second=380 amount=-1 +kerning first=86 second=90 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=66 second=305 amount=-1 +kerning first=266 second=198 amount=-1 +kerning first=67 second=192 amount=-1 +kerning first=374 second=44 amount=-1 +kerning first=8216 second=193 amount=-2 +kerning first=374 second=198 amount=-2 +kerning first=218 second=8249 amount=-1 +kerning first=90 second=363 amount=-1 +kerning first=195 second=363 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=376 second=67 amount=-1 +kerning first=363 second=291 amount=-1 +kerning first=327 second=291 amount=-1 +kerning first=268 second=67 amount=-1 +kerning first=302 second=250 amount=-1 +kerning first=255 second=291 amount=-1 +kerning first=219 second=291 amount=-1 +kerning first=8250 second=200 amount=-1 +kerning first=78 second=291 amount=-1 +kerning first=321 second=378 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=89 second=113 amount=-1 +kerning first=8222 second=217 amount=-1 +kerning first=230 second=44 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=204 second=287 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=89 second=198 amount=-2 +kerning first=192 second=367 amount=-1 +kerning first=8250 second=327 amount=-1 +kerning first=8250 second=103 amount=-1 +kerning first=230 second=108 amount=-1 +kerning first=8217 second=260 amount=-2 +kerning first=356 second=326 amount=-1 +kerning first=256 second=286 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=221 second=74 amount=-1 +kerning first=66 second=221 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=171 second=221 amount=-1 +kerning first=73 second=228 amount=-1 +kerning first=356 second=262 amount=-1 +kerning first=89 second=262 amount=-1 +kerning first=264 second=206 amount=-1 +kerning first=326 second=8249 amount=-1 +kerning first=290 second=8249 amount=-1 +kerning first=235 second=107 amount=-1 +kerning first=8250 second=68 amount=-1 +kerning first=108 second=8221 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=283 second=289 amount=-1 +kerning first=325 second=367 amount=-1 +kerning first=193 second=115 amount=-1 +kerning first=352 second=86 amount=-1 +kerning first=266 second=66 amount=-1 +kerning first=85 second=97 amount=-1 +kerning first=321 second=356 amount=-1 +kerning first=121 second=97 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=120 second=45 amount=-1 +kerning first=298 second=97 amount=-1 +kerning first=354 second=261 amount=-1 +kerning first=378 second=112 amount=-1 +kerning first=115 second=121 amount=-1 +kerning first=362 second=257 amount=-1 +kerning first=8250 second=202 amount=-1 +kerning first=8217 second=196 amount=-2 +kerning first=321 second=255 amount=-1 +kerning first=82 second=119 amount=-1 +kerning first=108 second=255 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=291 second=44 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=255 second=44 amount=-1 +kerning first=356 second=227 amount=-1 +kerning first=259 second=119 amount=-1 +kerning first=187 second=119 amount=-1 +kerning first=367 second=119 amount=-1 +kerning first=370 second=97 amount=-1 +kerning first=275 second=314 amount=-1 +kerning first=376 second=109 amount=-1 +kerning first=376 second=111 amount=-1 +kerning first=295 second=119 amount=-1 +kerning first=331 second=119 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=303 second=233 amount=-1 +kerning first=256 second=363 amount=-1 +kerning first=1025 second=1038 amount=-1 +kerning first=1061 second=1057 amount=-1 +kerning first=335 second=46 amount=-1 +kerning first=205 second=251 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=354 second=338 amount=-1 +kerning first=347 second=121 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=219 second=44 amount=-1 +kerning first=352 second=192 amount=-1 +kerning first=8216 second=287 amount=-1 +kerning first=70 second=289 amount=-1 +kerning first=208 second=192 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=83 second=354 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=283 second=311 amount=-1 +kerning first=260 second=354 amount=-2 +kerning first=325 second=369 amount=-1 +kerning first=354 second=283 amount=-1 +kerning first=375 second=46 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=246 second=316 amount=-1 +kerning first=1050 second=1077 amount=-1 +kerning first=99 second=291 amount=-1 +kerning first=84 second=197 amount=-2 +kerning first=8217 second=198 amount=-2 +kerning first=217 second=83 amount=-1 +kerning first=354 second=259 amount=-1 +kerning first=259 second=8220 amount=-1 +kerning first=258 second=375 amount=-1 +kerning first=225 second=8217 amount=-1 +kerning first=117 second=375 amount=-1 +kerning first=196 second=87 amount=-2 +kerning first=206 second=225 amount=-1 +kerning first=263 second=103 amount=-1 +kerning first=221 second=336 amount=-1 +kerning first=8220 second=192 amount=-2 +kerning first=86 second=103 amount=-1 +kerning first=350 second=270 amount=-1 +kerning first=1061 second=1092 amount=-1 +kerning first=255 second=335 amount=-1 +kerning first=256 second=8217 amount=-1 +kerning first=288 second=374 amount=-1 +kerning first=328 second=8217 amount=-1 +kerning first=214 second=65 amount=-1 +kerning first=315 second=219 amount=-1 +kerning first=286 second=65 amount=-1 +kerning first=66 second=219 amount=-1 +kerning first=266 second=260 amount=-1 +kerning first=313 second=253 amount=-1 +kerning first=258 second=353 amount=-1 +kerning first=277 second=253 amount=-1 +kerning first=67 second=284 amount=-1 +kerning first=344 second=212 amount=-1 +kerning first=374 second=121 amount=-1 +kerning first=89 second=260 amount=-2 +kerning first=1047 second=1059 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=356 second=328 amount=-1 +kerning first=254 second=318 amount=-1 +kerning first=374 second=260 amount=-2 +kerning first=266 second=196 amount=-1 +kerning first=119 second=235 amount=-1 +kerning first=286 second=84 amount=-1 +kerning first=111 second=121 amount=-1 +kerning first=89 second=196 amount=-2 +kerning first=232 second=316 amount=-1 +kerning first=315 second=89 amount=-1 +kerning first=86 second=242 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=107 second=99 amount=-1 +kerning first=89 second=382 amount=-1 +kerning first=171 second=89 amount=-1 +kerning first=374 second=196 amount=-2 +kerning first=66 second=89 amount=-1 +kerning first=206 second=171 amount=-1 +kerning first=262 second=302 amount=-1 +kerning first=356 second=99 amount=-1 +kerning first=376 second=263 amount=-1 +kerning first=256 second=213 amount=-1 +kerning first=344 second=375 amount=-1 +kerning first=317 second=375 amount=-1 +kerning first=290 second=221 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=371 second=242 amount=-1 +kerning first=8250 second=374 amount=-1 +kerning first=84 second=351 amount=-1 +kerning first=120 second=351 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=87 second=347 amount=-1 +kerning first=119 second=224 amount=-1 +kerning first=192 second=347 amount=-1 +kerning first=321 second=103 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=102 second=8249 amount=-1 +kerning first=256 second=266 amount=-1 +kerning first=86 second=253 amount=-1 +kerning first=66 second=8249 amount=-1 +kerning first=227 second=253 amount=-1 +kerning first=313 second=220 amount=-1 +kerning first=199 second=334 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=263 second=253 amount=-1 +kerning first=108 second=103 amount=-1 +kerning first=197 second=214 amount=-1 +kerning first=335 second=253 amount=-1 +kerning first=296 second=224 amount=-1 +kerning first=321 second=354 amount=-1 +kerning first=368 second=224 amount=-1 +kerning first=344 second=232 amount=-1 +kerning first=352 second=313 amount=-1 +kerning first=118 second=231 amount=-1 +kerning first=350 second=171 amount=-1 +kerning first=346 second=202 amount=-1 +kerning first=66 second=362 amount=-1 +kerning first=221 second=382 amount=-1 +kerning first=90 second=365 amount=-1 +kerning first=315 second=362 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=219 second=227 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=323 second=117 amount=-1 +kerning first=368 second=257 amount=-1 +kerning first=97 second=255 amount=-1 +kerning first=67 second=216 amount=-1 +kerning first=296 second=257 amount=-1 +kerning first=376 second=338 amount=-1 +kerning first=193 second=287 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=268 second=338 amount=-1 +kerning first=87 second=118 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=368 second=378 amount=-1 +kerning first=192 second=118 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=228 second=118 amount=-1 +kerning first=8217 second=339 amount=-1 +kerning first=245 second=108 amount=-1 +kerning first=354 second=74 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=371 second=275 amount=-1 +kerning first=377 second=382 amount=-1 +kerning first=350 second=193 amount=-1 +kerning first=121 second=269 amount=-1 +kerning first=364 second=380 amount=-1 +kerning first=249 second=253 amount=-1 +kerning first=121 second=227 amount=-1 +kerning first=85 second=227 amount=-1 +kerning first=197 second=84 amount=-2 +kerning first=1061 second=1090 amount=-1 +kerning first=1025 second=1090 amount=-1 +kerning first=121 second=273 amount=-1 +kerning first=352 second=291 amount=-1 +kerning first=344 second=210 amount=-1 +kerning first=316 second=291 amount=-1 +kerning first=280 second=291 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=221 second=81 amount=-1 +kerning first=1069 second=1051 amount=-1 +kerning first=262 second=280 amount=-1 +kerning first=8250 second=352 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=262 second=73 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=255 second=337 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=370 second=227 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=298 second=227 amount=-1 +kerning first=277 second=44 amount=-1 +kerning first=253 second=226 amount=-1 +kerning first=217 second=226 amount=-1 +kerning first=325 second=226 amount=-1 +kerning first=67 second=194 amount=-1 +kerning first=289 second=226 amount=-1 +kerning first=8217 second=350 amount=-1 +kerning first=352 second=84 amount=-1 +kerning first=208 second=194 amount=-1 +kerning first=374 second=240 amount=-1 +kerning first=344 second=254 amount=-1 +kerning first=356 second=119 amount=-1 +kerning first=339 second=103 amount=-1 +kerning first=196 second=219 amount=-1 +kerning first=291 second=108 amount=-1 +kerning first=363 second=108 amount=-1 +kerning first=8220 second=291 amount=-1 +kerning first=255 second=108 amount=-1 +kerning first=83 second=105 amount=-1 +kerning first=288 second=198 amount=-1 +kerning first=117 second=289 amount=-1 +kerning first=45 second=289 amount=-1 +kerning first=203 second=289 amount=-1 +kerning first=258 second=8220 amount=-1 +kerning first=330 second=289 amount=-1 +kerning first=119 second=279 amount=-1 +kerning first=258 second=289 amount=-1 +kerning first=117 second=8220 amount=-1 +kerning first=221 second=338 amount=-1 +kerning first=206 second=367 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=192 second=115 amount=-1 +kerning first=356 second=229 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=262 second=205 amount=-1 +kerning first=288 second=289 amount=-1 +kerning first=89 second=240 amount=-1 +kerning first=8222 second=85 amount=-1 +kerning first=65 second=83 amount=-1 +kerning first=221 second=261 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=1038 second=1060 amount=-1 +kerning first=310 second=255 amount=-1 +kerning first=352 second=194 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=286 second=45 amount=-1 +kerning first=214 second=197 amount=-1 +kerning first=353 second=112 amount=-1 +kerning first=83 second=356 amount=-1 +kerning first=74 second=225 amount=-1 +kerning first=354 second=380 amount=-1 +kerning first=256 second=81 amount=-1 +kerning first=1036 second=1092 amount=-1 +kerning first=287 second=225 amount=-1 +kerning first=231 second=121 amount=-1 +kerning first=194 second=218 amount=-1 +kerning first=267 second=105 amount=-1 +kerning first=84 second=244 amount=-1 +kerning first=221 second=109 amount=-1 +kerning first=354 second=336 amount=-1 +kerning first=323 second=225 amount=-1 +kerning first=111 second=253 amount=-1 +kerning first=104 second=8217 amount=-1 +kerning first=8216 second=267 amount=-1 +kerning first=75 second=253 amount=-1 +kerning first=253 second=248 amount=-1 +kerning first=317 second=8217 amount=-1 +kerning first=252 second=253 amount=-1 +kerning first=288 second=46 amount=-1 +kerning first=8217 second=245 amount=-1 +kerning first=216 second=46 amount=-1 +kerning first=193 second=364 amount=-1 +kerning first=221 second=283 amount=-1 +kerning first=268 second=382 amount=-1 +kerning first=376 second=382 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=376 second=241 amount=-1 +kerning first=66 second=318 amount=-1 +kerning first=102 second=318 amount=1 +kerning first=243 second=318 amount=-1 +kerning first=219 second=260 amount=-1 +kerning first=279 second=318 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=366 second=289 amount=-1 +kerning first=84 second=122 amount=-1 +kerning first=256 second=288 amount=-1 +kerning first=346 second=70 amount=-1 +kerning first=1038 second=1104 amount=-1 +kerning first=122 second=8249 amount=-1 +kerning first=1091 second=1076 amount=-1 +kerning first=111 second=46 amount=-1 +kerning first=118 second=99 amount=-1 +kerning first=82 second=99 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=86 second=352 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=283 second=375 amount=-1 +kerning first=370 second=346 amount=-1 +kerning first=255 second=271 amount=-1 +kerning first=106 second=375 amount=-1 +kerning first=262 second=346 amount=-1 +kerning first=8217 second=273 amount=-1 +kerning first=65 second=374 amount=-2 +kerning first=85 second=346 amount=-1 +kerning first=298 second=230 amount=-1 +kerning first=97 second=253 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=45 second=352 amount=-1 +kerning first=120 second=112 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=302 second=369 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=370 second=230 amount=-1 +kerning first=8250 second=72 amount=-1 +kerning first=362 second=346 amount=-1 +kerning first=310 second=253 amount=-1 +kerning first=379 second=363 amount=-1 +kerning first=375 second=122 amount=-1 +kerning first=121 second=230 amount=-1 +kerning first=218 second=346 amount=-1 +kerning first=333 second=375 amount=-1 +kerning first=369 second=375 amount=-1 +kerning first=264 second=334 amount=-1 +kerning first=8217 second=192 amount=-2 +kerning first=344 second=116 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=368 second=193 amount=-1 +kerning first=258 second=219 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=200 second=287 amount=-1 +kerning first=327 second=287 amount=-1 +kerning first=236 second=287 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=317 second=121 amount=-1 +kerning first=281 second=121 amount=-1 +kerning first=245 second=121 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=344 second=277 amount=-1 +kerning first=356 second=231 amount=-1 +kerning first=344 second=287 amount=-1 +kerning first=352 second=171 amount=-1 +kerning first=354 second=196 amount=-2 +kerning first=316 second=171 amount=-1 +kerning first=120 second=375 amount=-1 +kerning first=255 second=99 amount=-1 +kerning first=86 second=351 amount=-1 +kerning first=90 second=122 amount=-1 +kerning first=196 second=8217 amount=-1 +kerning first=366 second=224 amount=-1 +kerning first=195 second=352 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=217 second=74 amount=-1 +kerning first=376 second=115 amount=-1 +kerning first=366 second=229 amount=-1 +kerning first=330 second=229 amount=-1 +kerning first=346 second=197 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=1047 second=1063 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=352 second=220 amount=-1 +kerning first=356 second=379 amount=-1 +kerning first=264 second=344 amount=-1 +kerning first=368 second=382 amount=-1 +kerning first=82 second=350 amount=-1 +kerning first=314 second=103 amount=-1 +kerning first=303 second=234 amount=-1 +kerning first=350 second=103 amount=-1 +kerning first=187 second=350 amount=-1 +kerning first=118 second=100 amount=-1 +kerning first=8217 second=271 amount=-1 +kerning first=82 second=100 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=88 second=199 amount=-1 +kerning first=196 second=290 amount=-1 +kerning first=120 second=365 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=65 second=103 amount=-1 +kerning first=113 second=106 amount=1 +kerning first=268 second=76 amount=-1 +kerning first=381 second=117 amount=-1 +kerning first=287 second=318 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=107 second=231 amount=-1 +kerning first=350 second=313 amount=-1 +kerning first=199 second=284 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=226 second=118 amount=-1 +kerning first=120 second=257 amount=-1 +kerning first=330 second=117 amount=-1 +kerning first=258 second=117 amount=-1 +kerning first=256 second=332 amount=-1 +kerning first=302 second=251 amount=-1 +kerning first=346 second=102 amount=-1 +kerning first=375 second=283 amount=-1 +kerning first=323 second=257 amount=-1 +kerning first=354 second=81 amount=-1 +kerning first=264 second=216 amount=-1 +kerning first=67 second=378 amount=-1 +kerning first=8218 second=89 amount=-2 +kerning first=369 second=316 amount=-1 +kerning first=45 second=291 amount=-1 +kerning first=333 second=316 amount=-1 +kerning first=303 second=283 amount=-1 +kerning first=327 second=250 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=86 second=233 amount=-1 +kerning first=1059 second=1076 amount=-1 +kerning first=346 second=72 amount=-1 +kerning first=98 second=121 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=195 second=362 amount=-1 +kerning first=376 second=266 amount=-1 +kerning first=289 second=314 amount=-1 +kerning first=253 second=314 amount=-1 +kerning first=8220 second=289 amount=-1 +kerning first=363 second=8220 amount=-1 +kerning first=268 second=266 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=196 second=217 amount=-1 +kerning first=8216 second=337 amount=-1 +kerning first=263 second=227 amount=-1 +kerning first=78 second=250 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=266 second=192 amount=-1 +kerning first=251 second=8220 amount=-1 +kerning first=291 second=378 amount=-1 +kerning first=283 second=107 amount=-1 +kerning first=255 second=378 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=89 second=192 amount=-2 +kerning first=374 second=350 amount=-1 +kerning first=110 second=8220 amount=-1 +kerning first=70 second=256 amount=-1 +kerning first=374 second=187 amount=-1 +kerning first=1046 second=1077 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=286 second=256 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=350 second=354 amount=-1 +kerning first=66 second=227 amount=-1 +kerning first=313 second=90 amount=-1 +kerning first=344 second=67 amount=-1 +kerning first=367 second=291 amount=-1 +kerning first=214 second=256 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=187 second=291 amount=-1 +kerning first=118 second=291 amount=-1 +kerning first=195 second=83 amount=-1 +kerning first=82 second=291 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=221 second=187 amount=-1 +kerning first=377 second=8249 amount=-1 +kerning first=221 second=197 amount=-2 +kerning first=1036 second=1060 amount=-1 +kerning first=221 second=100 amount=-1 +kerning first=8250 second=253 amount=-1 +kerning first=256 second=112 amount=-1 +kerning first=260 second=284 amount=-1 +kerning first=115 second=112 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=118 second=261 amount=-1 +kerning first=218 second=378 amount=-1 +kerning first=73 second=365 amount=-1 +kerning first=305 second=8249 amount=-1 +kerning first=83 second=303 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=121 second=279 amount=-1 +kerning first=244 second=108 amount=-1 +kerning first=240 second=318 amount=-1 +kerning first=272 second=198 amount=-1 +kerning first=87 second=65 amount=-2 +kerning first=268 second=206 amount=-1 +kerning first=8218 second=122 amount=-1 +kerning first=8216 second=97 amount=-1 +kerning first=352 second=89 amount=-1 +kerning first=208 second=260 amount=-1 +kerning first=204 second=367 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=310 second=336 amount=-1 +kerning first=336 second=65 amount=-1 +kerning first=8250 second=218 amount=-1 +kerning first=67 second=260 amount=-1 +kerning first=1027 second=1104 amount=-1 +kerning first=89 second=339 amount=-1 +kerning first=269 second=229 amount=-1 +kerning first=352 second=260 amount=-1 +kerning first=351 second=115 amount=-1 +kerning first=8250 second=381 amount=-1 +kerning first=253 second=353 amount=-1 +kerning first=289 second=353 amount=-1 +kerning first=209 second=369 amount=-1 +kerning first=354 second=275 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=65 second=221 amount=-2 +kerning first=344 second=356 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=220 second=352 amount=-1 +kerning first=220 second=194 amount=-1 +kerning first=256 second=352 amount=-1 +kerning first=374 second=290 amount=-1 +kerning first=266 second=80 amount=-1 +kerning first=44 second=45 amount=-1 +kerning first=315 second=8217 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=364 second=194 amount=-1 +kerning first=121 second=267 amount=-1 +kerning first=234 second=375 amount=-1 +kerning first=354 second=287 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=256 second=366 amount=-1 +kerning first=369 second=119 amount=-1 +kerning first=263 second=118 amount=-1 +kerning first=374 second=339 amount=-1 +kerning first=364 second=352 amount=-1 +kerning first=221 second=45 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=217 second=225 amount=-1 +kerning first=354 second=226 amount=-1 +kerning first=374 second=211 amount=-1 +kerning first=371 second=111 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=8218 second=362 amount=-1 +kerning first=289 second=225 amount=-1 +kerning first=325 second=225 amount=-1 +kerning first=89 second=290 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=76 second=255 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=112 second=255 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=266 second=290 amount=-1 +kerning first=266 second=211 amount=-1 +kerning first=356 second=110 amount=-1 +kerning first=87 second=212 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=332 second=44 amount=-1 +kerning first=8222 second=84 amount=-2 +kerning first=375 second=273 amount=-1 +kerning first=195 second=89 amount=-2 +kerning first=197 second=338 amount=-1 +kerning first=354 second=324 amount=-1 +kerning first=214 second=46 amount=-1 +kerning first=86 second=193 amount=-2 +kerning first=87 second=324 amount=-1 +kerning first=66 second=257 amount=-1 +kerning first=102 second=8220 amount=1 +kerning first=269 second=289 amount=-1 +kerning first=86 second=111 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=377 second=289 amount=-1 +kerning first=89 second=241 amount=-1 +kerning first=223 second=255 amount=-1 +kerning first=84 second=287 amount=-1 +kerning first=369 second=287 amount=-1 +kerning first=1050 second=1108 amount=-1 +kerning first=89 second=281 amount=-1 +kerning first=315 second=218 amount=-1 +kerning first=376 second=232 amount=-1 +kerning first=1059 second=1092 amount=-1 +kerning first=206 second=365 amount=-1 +kerning first=193 second=346 amount=-1 +kerning first=44 second=8217 amount=-1 +kerning first=8217 second=232 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=98 second=46 amount=-1 +kerning first=286 second=86 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=275 second=46 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=257 second=8217 amount=-1 +kerning first=365 second=8217 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=104 second=8220 amount=-1 +kerning first=197 second=347 amount=-1 +kerning first=8220 second=260 amount=-2 +kerning first=187 second=70 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=364 second=122 amount=-1 +kerning first=290 second=87 amount=-1 +kerning first=356 second=226 amount=-1 +kerning first=220 second=122 amount=-1 +kerning first=78 second=289 amount=-1 +kerning first=366 second=259 amount=-1 +kerning first=330 second=259 amount=-1 +kerning first=250 second=375 amount=-1 +kerning first=255 second=289 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=66 second=218 amount=-1 +kerning first=268 second=75 amount=-1 +kerning first=317 second=370 amount=-1 +kerning first=219 second=289 amount=-1 +kerning first=8217 second=242 amount=-1 +kerning first=327 second=289 amount=-1 +kerning first=363 second=289 amount=-1 +kerning first=205 second=369 amount=-1 +kerning first=327 second=251 amount=-1 +kerning first=78 second=251 amount=-1 +kerning first=337 second=255 amount=-1 +kerning first=221 second=286 amount=-1 +kerning first=344 second=316 amount=-1 +kerning first=1027 second=1072 amount=-1 +kerning first=119 second=245 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=256 second=121 amount=-1 +kerning first=255 second=171 amount=-1 +kerning first=219 second=171 amount=-1 +kerning first=327 second=171 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=291 second=171 amount=-1 +kerning first=84 second=277 amount=-1 +kerning first=86 second=381 amount=-1 +kerning first=8220 second=229 amount=-1 +kerning first=352 second=323 amount=-1 +kerning first=8250 second=330 amount=-1 +kerning first=199 second=196 amount=-1 +kerning first=66 second=217 amount=-1 +kerning first=356 second=100 amount=-1 +kerning first=120 second=228 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=310 second=214 amount=-1 +kerning first=226 second=119 amount=-1 +kerning first=1059 second=1093 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=84 second=228 amount=-1 +kerning first=315 second=217 amount=-1 +kerning first=187 second=221 amount=-1 +kerning first=8220 second=259 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=8222 second=354 amount=-2 +kerning first=242 second=314 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=108 second=253 amount=-1 +kerning first=86 second=263 amount=-1 +kerning first=379 second=382 amount=-1 +kerning first=266 second=330 amount=-1 +kerning first=321 second=253 amount=-1 +kerning first=260 second=363 amount=-1 +kerning first=371 second=263 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=325 second=103 amount=-1 +kerning first=70 second=8249 amount=-1 +kerning first=217 second=103 amount=-1 +kerning first=107 second=100 amount=-1 +kerning first=253 second=103 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=374 second=281 amount=-1 +kerning first=251 second=118 amount=-1 +kerning first=76 second=103 amount=-1 +kerning first=354 second=284 amount=-1 +kerning first=8250 second=193 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=199 second=382 amount=-1 +kerning first=354 second=235 amount=-1 +kerning first=220 second=83 amount=-1 +kerning first=335 second=120 amount=-1 +kerning first=258 second=8249 amount=-1 +kerning first=304 second=261 amount=-1 +kerning first=376 second=336 amount=-1 +kerning first=253 second=234 amount=-1 +kerning first=256 second=83 amount=-1 +kerning first=330 second=8249 amount=-1 +kerning first=314 second=255 amount=-1 +kerning first=364 second=83 amount=-1 +kerning first=8217 second=281 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=235 second=44 amount=-1 +kerning first=101 second=255 amount=-1 +kerning first=374 second=232 amount=-1 +kerning first=86 second=262 amount=-1 +kerning first=287 second=97 amount=-1 +kerning first=376 second=227 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=304 second=227 amount=-1 +kerning first=354 second=197 amount=-2 +kerning first=323 second=97 amount=-1 +kerning first=344 second=366 amount=-1 +kerning first=356 second=79 amount=-1 +kerning first=99 second=118 amount=-1 +kerning first=346 second=193 amount=-1 +kerning first=337 second=318 amount=-1 +kerning first=218 second=257 amount=-1 +kerning first=217 second=65 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=67 second=338 amount=-1 +kerning first=119 second=244 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=374 second=378 amount=-1 +kerning first=219 second=192 amount=-1 +kerning first=376 second=350 amount=-1 +kerning first=346 second=302 amount=-1 +kerning first=266 second=378 amount=-1 +kerning first=89 second=90 amount=-1 +kerning first=8216 second=74 amount=-1 +kerning first=70 second=198 amount=-1 +kerning first=264 second=274 amount=-1 +kerning first=284 second=221 amount=-1 +kerning first=377 second=250 amount=-1 +kerning first=266 second=298 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=266 second=280 amount=-1 +kerning first=356 second=291 amount=-1 +kerning first=374 second=90 amount=-1 +kerning first=284 second=291 amount=-1 +kerning first=199 second=213 amount=-1 +kerning first=71 second=221 amount=-1 +kerning first=256 second=361 amount=-1 +kerning first=119 second=267 amount=-1 +kerning first=84 second=256 amount=-2 +kerning first=8217 second=194 amount=-2 +kerning first=84 second=326 amount=-1 +kerning first=89 second=378 amount=-1 +kerning first=258 second=210 amount=-1 +kerning first=374 second=242 amount=-1 +kerning first=375 second=233 amount=-1 +kerning first=335 second=316 amount=-1 +kerning first=311 second=335 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=171 second=87 amount=-1 +kerning first=354 second=45 amount=-1 +kerning first=66 second=87 amount=-1 +kerning first=286 second=374 amount=-1 +kerning first=344 second=268 amount=-1 +kerning first=195 second=112 amount=-1 +kerning first=121 second=240 amount=-1 +kerning first=286 second=103 amount=-1 +kerning first=344 second=219 amount=-1 +kerning first=67 second=289 amount=-1 +kerning first=280 second=289 amount=-1 +kerning first=316 second=289 amount=-1 +kerning first=1054 second=1040 amount=-1 +kerning first=352 second=289 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=269 second=108 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=233 second=108 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=103 second=229 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=375 second=243 amount=-1 +kerning first=250 second=287 amount=-1 +kerning first=65 second=353 amount=-1 +kerning first=303 second=243 amount=-1 +kerning first=221 second=324 amount=-1 +kerning first=73 second=287 amount=-1 +kerning first=221 second=275 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=350 second=304 amount=-1 +kerning first=236 second=375 amount=-1 +kerning first=221 second=226 amount=-1 +kerning first=255 second=339 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=268 second=336 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=314 second=253 amount=-1 +kerning first=260 second=45 amount=-1 +kerning first=66 second=97 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=286 second=356 amount=-1 +kerning first=354 second=242 amount=-1 +kerning first=352 second=80 amount=-1 +kerning first=347 second=353 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=119 second=275 amount=-1 +kerning first=89 second=289 amount=-1 +kerning first=230 second=289 amount=-1 +kerning first=368 second=45 amount=-1 +kerning first=266 second=289 amount=-1 +kerning first=376 second=324 amount=-1 +kerning first=374 second=289 amount=-1 +kerning first=302 second=289 amount=-1 +kerning first=275 second=316 amount=-1 +kerning first=250 second=255 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=8250 second=120 amount=-1 +kerning first=256 second=370 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=352 second=82 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=1036 second=1105 amount=-1 +kerning first=266 second=193 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=8216 second=230 amount=-1 +kerning first=225 second=255 amount=-1 +kerning first=1027 second=1095 amount=-1 +kerning first=87 second=228 amount=-1 +kerning first=374 second=193 amount=-2 +kerning first=253 second=273 amount=-1 +kerning first=89 second=193 amount=-2 +kerning first=66 second=226 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=110 second=119 amount=-1 +kerning first=8217 second=291 amount=-1 +kerning first=86 second=192 amount=-2 +kerning first=269 second=307 amount=-1 +kerning first=266 second=268 amount=-1 +kerning first=221 second=257 amount=-1 +kerning first=251 second=119 amount=-1 +kerning first=375 second=314 amount=-1 +kerning first=339 second=314 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=267 second=314 amount=-1 +kerning first=262 second=284 amount=-1 +kerning first=262 second=209 amount=-1 +kerning first=231 second=314 amount=-1 +kerning first=336 second=46 amount=-1 +kerning first=376 second=346 amount=-1 +kerning first=260 second=253 amount=-1 +kerning first=268 second=346 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=196 second=346 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=107 second=101 amount=-1 +kerning first=262 second=70 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=275 second=375 amount=-1 +kerning first=220 second=380 amount=-1 +kerning first=98 second=375 amount=-1 +kerning first=266 second=81 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=264 second=296 amount=-1 +kerning first=332 second=196 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=66 second=354 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=221 second=235 amount=-1 +kerning first=368 second=196 amount=-1 +kerning first=171 second=354 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=315 second=354 amount=-1 +kerning first=262 second=288 amount=-1 +kerning first=374 second=81 amount=-1 +kerning first=283 second=316 amount=-1 +kerning first=89 second=171 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=266 second=171 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=1060 second=1051 amount=-1 +kerning first=73 second=363 amount=-1 +kerning first=339 second=121 amount=-1 +kerning first=371 second=271 amount=-1 +kerning first=374 second=171 amount=-1 +kerning first=267 second=121 amount=-1 +kerning first=256 second=252 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=199 second=197 amount=-1 +kerning first=121 second=231 amount=-1 +kerning first=217 second=352 amount=-1 +kerning first=83 second=196 amount=-1 +kerning first=90 second=121 amount=-1 +kerning first=362 second=261 amount=-1 +kerning first=354 second=115 amount=-1 +kerning first=289 second=122 amount=-1 +kerning first=262 second=310 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=76 second=122 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=224 second=253 amount=-1 +kerning first=230 second=311 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=350 second=65 amount=-1 +kerning first=241 second=171 amount=-1 +kerning first=192 second=362 amount=-1 +kerning first=222 second=260 amount=-1 +kerning first=221 second=333 amount=-1 +kerning first=90 second=252 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=45 second=86 amount=-1 +kerning first=199 second=266 amount=-1 +kerning first=366 second=260 amount=-1 +kerning first=197 second=362 amount=-1 +kerning first=120 second=347 amount=-1 +kerning first=84 second=347 amount=-1 +kerning first=75 second=214 amount=-1 +kerning first=46 second=8221 amount=-1 +kerning first=264 second=103 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=295 second=8221 amount=-1 +kerning first=192 second=103 amount=-1 +kerning first=331 second=8221 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=260 second=351 amount=-1 +kerning first=361 second=8221 amount=-1 +kerning first=259 second=8221 amount=-1 +kerning first=121 second=100 amount=-1 +kerning first=259 second=118 amount=-1 +kerning first=255 second=242 amount=-1 +kerning first=89 second=8250 amount=-1 +kerning first=258 second=220 amount=-1 +kerning first=298 second=369 amount=-1 +kerning first=1038 second=1086 amount=-1 +kerning first=256 second=79 amount=-1 +kerning first=258 second=67 amount=-1 +kerning first=90 second=380 amount=-1 +kerning first=8220 second=339 amount=-1 +kerning first=8250 second=382 amount=-1 +kerning first=1046 second=1089 amount=-1 +kerning first=233 second=107 amount=-1 +kerning first=255 second=232 amount=-1 +kerning first=1038 second=1054 amount=-1 +kerning first=367 second=8221 amount=-1 +kerning first=1046 second=1058 amount=-1 +kerning first=8217 second=193 amount=-2 +kerning first=375 second=380 amount=-1 +kerning first=284 second=89 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=376 second=267 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=286 second=198 amount=-1 +kerning first=1043 second=1040 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=352 second=317 amount=-1 +kerning first=352 second=298 amount=-1 +kerning first=376 second=248 amount=-1 +kerning first=193 second=118 amount=-1 +kerning first=87 second=234 amount=-1 +kerning first=229 second=118 amount=-1 +kerning first=350 second=305 amount=-1 +kerning first=196 second=354 amount=-2 +kerning first=346 second=120 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=1040 second=1098 amount=-1 +kerning first=264 second=71 amount=-1 +kerning first=356 second=331 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=216 second=192 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=288 second=192 amount=-1 +kerning first=107 second=279 amount=-1 +kerning first=222 second=198 amount=-1 +kerning first=330 second=250 amount=-1 +kerning first=346 second=303 amount=-1 +kerning first=84 second=216 amount=-1 +kerning first=350 second=370 amount=-1 +kerning first=347 second=287 amount=-1 +kerning first=87 second=256 amount=-2 +kerning first=346 second=44 amount=-1 +kerning first=275 second=287 amount=-1 +kerning first=196 second=84 amount=-2 +kerning first=304 second=226 amount=-1 +kerning first=203 second=287 amount=-1 +kerning first=376 second=226 amount=-1 +kerning first=193 second=368 amount=-1 +kerning first=353 second=291 amount=-1 +kerning first=317 second=291 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=281 second=291 amount=-1 +kerning first=209 second=291 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=220 second=74 amount=-1 +kerning first=258 second=89 amount=-2 +kerning first=199 second=45 amount=-1 +kerning first=364 second=74 amount=-1 +kerning first=262 second=350 amount=-1 +kerning first=1047 second=1078 amount=-1 +kerning first=310 second=284 amount=-1 +kerning first=307 second=45 amount=-1 +kerning first=344 second=269 amount=-1 +kerning first=336 second=256 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=84 second=268 amount=-1 +kerning first=350 second=112 amount=-1 +kerning first=264 second=256 amount=-1 +kerning first=366 second=198 amount=-1 +kerning first=78 second=8249 amount=-1 +kerning first=264 second=286 amount=-1 +kerning first=356 second=279 amount=-1 +kerning first=346 second=205 amount=-1 +kerning first=255 second=8249 amount=-1 +kerning first=219 second=8249 amount=-1 +kerning first=269 second=257 amount=-1 +kerning first=8220 second=99 amount=-1 +kerning first=327 second=8249 amount=-1 +kerning first=291 second=8249 amount=-1 +kerning first=197 second=289 amount=-1 +kerning first=45 second=89 amount=-1 +kerning first=370 second=350 amount=-1 +kerning first=366 second=228 amount=-1 +kerning first=330 second=228 amount=-1 +kerning first=87 second=286 amount=-1 +kerning first=77 second=367 amount=-1 +kerning first=117 second=108 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=65 second=251 amount=-1 +kerning first=66 second=105 amount=-1 +kerning first=356 second=212 amount=-1 +kerning first=377 second=251 amount=-1 +kerning first=192 second=374 amount=-2 +kerning first=82 second=332 amount=-1 +kerning first=220 second=261 amount=-1 +kerning first=353 second=121 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=269 second=227 amount=-1 +kerning first=364 second=261 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=321 second=381 amount=-1 +kerning first=295 second=8220 amount=-1 +kerning first=344 second=108 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=218 second=226 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=362 second=226 amount=-1 +kerning first=262 second=192 amount=-1 +kerning first=207 second=367 amount=-1 +kerning first=46 second=8220 amount=-1 +kerning first=99 second=119 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=221 second=115 amount=-1 +kerning first=84 second=335 amount=-1 +kerning first=374 second=233 amount=-1 +kerning first=89 second=233 amount=-1 +kerning first=277 second=311 amount=-1 +kerning first=282 second=289 amount=-1 +kerning first=72 second=224 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=218 second=97 amount=-1 +kerning first=87 second=353 amount=-1 +kerning first=8222 second=364 amount=-1 +kerning first=362 second=97 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=347 second=255 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=275 second=255 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=264 second=112 amount=-1 +kerning first=98 second=255 amount=-1 +kerning first=221 second=244 amount=-1 +kerning first=192 second=112 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=66 second=324 amount=-1 +kerning first=253 second=243 amount=-1 +kerning first=8222 second=219 amount=-1 +kerning first=66 second=377 amount=-1 +kerning first=346 second=198 amount=-1 +kerning first=192 second=352 amount=-1 +kerning first=226 second=8220 amount=-1 +kerning first=266 second=202 amount=-1 +kerning first=253 second=46 amount=-1 +kerning first=264 second=352 amount=-1 +kerning first=289 second=46 amount=-1 +kerning first=65 second=362 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=87 second=352 amount=-1 +kerning first=370 second=382 amount=-1 +kerning first=83 second=197 amount=-1 +kerning first=332 second=197 amount=-1 +kerning first=350 second=362 amount=-1 +kerning first=1046 second=1059 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=221 second=266 amount=-1 +kerning first=119 second=111 amount=-1 +kerning first=368 second=197 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=317 second=380 amount=-1 +kerning first=84 second=334 amount=-1 +kerning first=1027 second=1076 amount=-1 +kerning first=235 second=253 amount=-1 +kerning first=262 second=200 amount=-1 +kerning first=307 second=253 amount=-1 +kerning first=108 second=8220 amount=-1 +kerning first=217 second=46 amount=-1 +kerning first=379 second=253 amount=-1 +kerning first=344 second=86 amount=-1 +kerning first=269 second=225 amount=-1 +kerning first=112 second=46 amount=-1 +kerning first=70 second=260 amount=-1 +kerning first=356 second=213 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=323 second=230 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=228 second=375 amount=-1 +kerning first=266 second=201 amount=-1 +kerning first=287 second=230 amount=-1 +kerning first=195 second=370 amount=-1 +kerning first=266 second=76 amount=-1 +kerning first=277 second=289 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=87 second=375 amount=-1 +kerning first=205 second=289 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=338 second=289 amount=-1 +kerning first=211 second=260 amount=-1 +kerning first=313 second=289 amount=-1 +kerning first=311 second=277 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=213 second=196 amount=-1 +kerning first=193 second=218 amount=-1 +kerning first=197 second=219 amount=-1 +kerning first=1075 second=1113 amount=-1 +kerning first=120 second=117 amount=-1 +kerning first=352 second=68 amount=-1 +kerning first=8217 second=289 amount=-1 +kerning first=120 second=259 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=193 second=217 amount=-1 +kerning first=314 second=121 amount=-1 +kerning first=242 second=121 amount=-1 +kerning first=118 second=263 amount=-1 +kerning first=101 second=121 amount=-1 +kerning first=87 second=277 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=310 second=369 amount=-1 +kerning first=317 second=379 amount=-1 +kerning first=356 second=288 amount=-1 +kerning first=197 second=89 amount=-2 +kerning first=119 second=263 amount=-1 +kerning first=346 second=196 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=86 second=281 amount=-1 +kerning first=324 second=171 amount=-1 +kerning first=66 second=106 amount=-1 +kerning first=197 second=220 amount=-1 +kerning first=371 second=281 amount=-1 +kerning first=354 second=266 amount=-1 +kerning first=376 second=333 amount=-1 +kerning first=352 second=302 amount=-1 +kerning first=8216 second=240 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=264 second=287 amount=-1 +kerning first=346 second=206 amount=-1 +kerning first=1091 second=1103 amount=-1 +kerning first=347 second=103 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=192 second=287 amount=-1 +kerning first=367 second=8220 amount=-1 +kerning first=87 second=287 amount=-1 +kerning first=203 second=103 amount=-1 +kerning first=117 second=316 amount=-1 +kerning first=376 second=235 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=1027 second=1086 amount=-1 +kerning first=374 second=71 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=266 second=71 amount=-1 +kerning first=1058 second=1078 amount=-1 +kerning first=326 second=118 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=304 second=224 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=1043 second=1093 amount=-1 +kerning first=352 second=8249 amount=-1 +kerning first=228 second=255 amount=-1 +kerning first=316 second=8249 amount=-1 +kerning first=192 second=255 amount=-1 +kerning first=84 second=269 amount=-1 +kerning first=362 second=227 amount=-1 +kerning first=87 second=255 amount=-1 +kerning first=213 second=44 amount=-1 +kerning first=258 second=338 amount=-1 +kerning first=304 second=257 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=67 second=8249 amount=-1 +kerning first=376 second=257 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=8220 second=242 amount=-1 +kerning first=344 second=85 amount=-1 +kerning first=113 second=118 amount=-1 +kerning first=354 second=244 amount=-1 +kerning first=311 second=234 amount=-1 +kerning first=258 second=251 amount=-1 +kerning first=303 second=273 amount=-1 +kerning first=263 second=303 amount=-1 +kerning first=346 second=118 amount=-1 +kerning first=350 second=274 amount=-1 +kerning first=262 second=199 amount=-1 +kerning first=283 second=108 amount=-1 +kerning first=118 second=279 amount=-1 +kerning first=216 second=193 amount=-1 +kerning first=262 second=79 amount=-1 +kerning first=356 second=332 amount=-1 +kerning first=197 second=8220 amount=-1 +kerning first=221 second=245 amount=-1 +kerning first=65 second=361 amount=-1 +kerning first=330 second=251 amount=-1 +kerning first=344 second=107 amount=-1 +kerning first=288 second=193 amount=-1 +kerning first=82 second=279 amount=-1 +kerning first=206 second=361 amount=-1 +kerning first=375 second=8249 amount=-1 +kerning first=8217 second=224 amount=-1 +kerning first=218 second=227 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=315 second=84 amount=-1 +kerning first=344 second=216 amount=-1 +kerning first=193 second=119 amount=-1 +kerning first=229 second=119 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=255 second=233 amount=-1 +kerning first=87 second=113 amount=-1 +kerning first=234 second=291 amount=-1 +kerning first=66 second=84 amount=-1 +kerning first=198 second=291 amount=-1 +kerning first=119 second=227 amount=-1 +kerning first=307 second=8249 amount=-1 +kerning first=281 second=314 amount=-1 +kerning first=245 second=314 amount=-1 +kerning first=217 second=198 amount=-1 +kerning first=192 second=366 amount=-1 +kerning first=350 second=291 amount=-1 +kerning first=314 second=291 amount=-1 +kerning first=278 second=291 amount=-1 +kerning first=8250 second=206 amount=-1 +kerning first=206 second=291 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=65 second=291 amount=-1 +kerning first=193 second=354 amount=-2 +kerning first=243 second=44 amount=-1 +kerning first=121 second=101 amount=-1 +kerning first=263 second=287 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=8250 second=201 amount=-1 +kerning first=376 second=244 amount=-1 +kerning first=350 second=296 amount=-1 +kerning first=368 second=227 amount=-1 +kerning first=296 second=227 amount=-1 +kerning first=374 second=268 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=221 second=337 amount=-1 +kerning first=85 second=257 amount=-1 +kerning first=8222 second=362 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=356 second=199 amount=-1 +kerning first=99 second=261 amount=-1 +kerning first=255 second=228 amount=-1 +kerning first=219 second=228 amount=-1 +kerning first=327 second=228 amount=-1 +kerning first=346 second=280 amount=-1 +kerning first=1061 second=1054 amount=-1 +kerning first=192 second=361 amount=-1 +kerning first=82 second=83 amount=-1 +kerning first=369 second=108 amount=-1 +kerning first=187 second=83 amount=-1 +kerning first=376 second=377 amount=-1 +kerning first=262 second=336 amount=-1 +kerning first=213 second=197 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=374 second=263 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=230 second=107 amount=-1 +kerning first=86 second=245 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=199 second=262 amount=-1 +kerning first=256 second=221 amount=-2 +kerning first=82 second=318 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=354 second=223 amount=-1 +kerning first=8216 second=231 amount=-1 +kerning first=269 second=237 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=65 second=370 amount=-1 +kerning first=220 second=65 amount=-1 +kerning first=252 second=289 amount=-1 +kerning first=364 second=65 amount=-1 +kerning first=272 second=260 amount=-1 +kerning first=310 second=45 amount=-1 +kerning first=346 second=45 amount=-1 +kerning first=264 second=77 amount=-1 +kerning first=365 second=289 amount=-1 +kerning first=347 second=112 amount=-1 +kerning first=382 second=45 amount=-1 +kerning first=344 second=255 amount=-1 +kerning first=236 second=255 amount=-1 +kerning first=258 second=374 amount=-2 +kerning first=86 second=324 amount=-1 +kerning first=45 second=374 amount=-1 +kerning first=221 second=97 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=269 second=46 amount=-1 +kerning first=121 second=257 amount=-1 +kerning first=221 second=288 amount=-1 +kerning first=370 second=257 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=298 second=257 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=311 second=273 amount=-1 +kerning first=213 second=192 amount=-1 +kerning first=1059 second=1105 amount=-1 +kerning first=208 second=193 amount=-1 +kerning first=302 second=224 amount=-1 +kerning first=352 second=193 amount=-1 +kerning first=89 second=224 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=8250 second=280 amount=-1 +kerning first=260 second=71 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=118 second=122 amount=-1 +kerning first=8250 second=84 amount=-1 +kerning first=1046 second=1090 amount=-1 +kerning first=1036 second=1038 amount=-1 +kerning first=374 second=224 amount=-1 +kerning first=112 second=375 amount=-1 +kerning first=366 second=46 amount=-1 +kerning first=268 second=288 amount=-1 +kerning first=46 second=8249 amount=-1 +kerning first=374 second=336 amount=-1 +kerning first=323 second=103 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=1059 second=1075 amount=-1 +kerning first=66 second=368 amount=-1 +kerning first=67 second=81 amount=-1 +kerning first=76 second=287 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=269 second=316 amount=-1 +kerning first=233 second=316 amount=-1 +kerning first=251 second=289 amount=-1 +kerning first=354 second=346 amount=-1 +kerning first=370 second=352 amount=-1 +kerning first=325 second=287 amount=-1 +kerning first=217 second=287 amount=-1 +kerning first=253 second=287 amount=-1 +kerning first=73 second=117 amount=-1 +kerning first=87 second=194 amount=-2 +kerning first=110 second=8217 amount=-1 +kerning first=251 second=8217 amount=-1 +kerning first=197 second=370 amount=-1 +kerning first=264 second=194 amount=-1 +kerning first=336 second=194 amount=-1 +kerning first=344 second=242 amount=-1 +kerning first=66 second=328 amount=-1 +kerning first=194 second=219 amount=-1 +kerning first=86 second=290 amount=-1 +kerning first=291 second=351 amount=-1 +kerning first=346 second=80 amount=-1 +kerning first=255 second=351 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=376 second=288 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=260 second=115 amount=-1 +kerning first=242 second=255 amount=-1 +kerning first=112 second=121 amount=-1 +kerning first=258 second=369 amount=-1 +kerning first=76 second=121 amount=-1 +kerning first=73 second=229 amount=-1 +kerning first=362 second=196 amount=-1 +kerning first=246 second=253 amount=-1 +kerning first=314 second=171 amount=-1 +kerning first=354 second=253 amount=-1 +kerning first=344 second=334 amount=-1 +kerning first=353 second=353 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=218 second=196 amount=-1 +kerning first=290 second=196 amount=-1 +kerning first=1059 second=1100 amount=-1 +kerning first=223 second=318 amount=-1 +kerning first=375 second=100 amount=-1 +kerning first=103 second=228 amount=-1 +kerning first=89 second=347 amount=-1 +kerning first=367 second=318 amount=-1 +kerning first=221 second=214 amount=-1 +kerning first=354 second=267 amount=-1 +kerning first=8250 second=344 amount=-1 +kerning first=89 second=263 amount=-1 +kerning first=326 second=8221 amount=-1 +kerning first=260 second=336 amount=-1 +kerning first=377 second=365 amount=-1 +kerning first=311 second=113 amount=-1 +kerning first=250 second=103 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=8250 second=291 amount=-1 +kerning first=236 second=171 amount=-1 +kerning first=272 second=46 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=344 second=171 amount=-1 +kerning first=303 second=100 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=380 second=171 amount=-1 +kerning first=113 second=119 amount=-1 +kerning first=8220 second=113 amount=-1 +kerning first=119 second=232 amount=-1 +kerning first=8218 second=370 amount=-1 +kerning first=234 second=118 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=370 second=380 amount=-1 +kerning first=262 second=380 amount=-1 +kerning first=315 second=377 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=256 second=216 amount=-1 +kerning first=67 second=67 amount=-1 +kerning first=82 second=234 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=66 second=363 amount=-1 +kerning first=321 second=364 amount=-1 +kerning first=207 second=363 amount=-1 +kerning first=118 second=234 amount=-1 +kerning first=268 second=304 amount=-1 +kerning first=1058 second=1033 amount=-1 +kerning first=374 second=347 amount=-1 +kerning first=82 second=283 amount=-1 +kerning first=8250 second=217 amount=-1 +kerning first=1060 second=1059 amount=-1 +kerning first=82 second=118 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=187 second=118 amount=-1 +kerning first=352 second=72 amount=-1 +kerning first=344 second=290 amount=-1 +kerning first=219 second=193 amount=-1 +kerning first=367 second=118 amount=-1 +kerning first=197 second=85 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=221 second=377 amount=-1 +kerning first=207 second=361 amount=-1 +kerning first=313 second=377 amount=-1 +kerning first=346 second=192 amount=-1 +kerning first=8218 second=86 amount=-2 +kerning first=1098 second=1091 amount=-1 +kerning first=295 second=118 amount=-1 +kerning first=331 second=118 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=1104 second=1076 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=356 second=83 amount=-1 +kerning first=1050 second=1060 amount=-1 +kerning first=266 second=8249 amount=-1 +kerning first=75 second=121 amount=-1 +kerning first=8217 second=269 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=354 second=262 amount=-1 +kerning first=1027 second=1077 amount=-1 +kerning first=264 second=278 amount=-1 +kerning first=344 second=103 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=350 second=256 amount=-1 +kerning first=82 second=113 amount=-1 +kerning first=375 second=291 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=336 second=198 amount=-1 +kerning first=339 second=291 amount=-1 +kerning first=1069 second=1038 amount=-1 +kerning first=248 second=318 amount=-1 +kerning first=264 second=198 amount=-1 +kerning first=267 second=291 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=231 second=291 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=84 second=260 amount=-2 +kerning first=1059 second=1119 amount=-1 +kerning first=90 second=291 amount=-1 +kerning first=266 second=67 amount=-1 +kerning first=374 second=67 amount=-1 +kerning first=317 second=219 amount=-1 +kerning first=362 second=44 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=84 second=71 amount=-1 +kerning first=8249 second=87 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=290 second=44 amount=-1 +kerning first=82 second=199 amount=-1 +kerning first=254 second=44 amount=-1 +kerning first=8217 second=259 amount=-1 +kerning first=8220 second=233 amount=-1 +kerning first=346 second=84 amount=-1 +kerning first=118 second=113 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=376 second=337 amount=-1 +kerning first=323 second=261 amount=-1 +kerning first=287 second=261 amount=-1 +kerning first=346 second=112 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=250 second=108 amount=-1 +kerning first=71 second=356 amount=-1 +kerning first=258 second=286 amount=-1 +kerning first=252 second=314 amount=-1 +kerning first=120 second=229 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=381 second=122 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=220 second=230 amount=-1 +kerning first=262 second=122 amount=-1 +kerning first=268 second=350 amount=-1 +kerning first=364 second=230 amount=-1 +kerning first=74 second=261 amount=-1 +kerning first=219 second=224 amount=-1 +kerning first=255 second=224 amount=-1 +kerning first=291 second=224 amount=-1 +kerning first=327 second=224 amount=-1 +kerning first=194 second=356 amount=-2 +kerning first=86 second=45 amount=-1 +kerning first=122 second=45 amount=-1 +kerning first=214 second=194 amount=-1 +kerning first=286 second=194 amount=-1 +kerning first=255 second=111 amount=-1 +kerning first=195 second=8249 amount=-1 +kerning first=333 second=255 amount=-1 +kerning first=375 second=234 amount=-1 +kerning first=369 second=255 amount=-1 +kerning first=8250 second=197 amount=-1 +kerning first=107 second=243 amount=-1 +kerning first=290 second=354 amount=-1 +kerning first=196 second=368 amount=-1 +kerning first=84 second=255 amount=-1 +kerning first=278 second=287 amount=-1 +kerning first=356 second=243 amount=-1 +kerning first=120 second=255 amount=-1 +kerning first=314 second=287 amount=-1 +kerning first=206 second=287 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=352 second=368 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=376 second=97 amount=-1 +kerning first=258 second=211 amount=-1 +kerning first=65 second=287 amount=-1 +kerning first=197 second=374 amount=-2 +kerning first=67 second=202 amount=-1 +kerning first=253 second=113 amount=-1 +kerning first=281 second=104 amount=-1 +kerning first=89 second=111 amount=-1 +kerning first=350 second=287 amount=-1 +kerning first=89 second=119 amount=-1 +kerning first=287 second=380 amount=-1 +kerning first=356 second=248 amount=-1 +kerning first=262 second=327 amount=-1 +kerning first=187 second=74 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=374 second=111 amount=-1 +kerning first=220 second=225 amount=-1 +kerning first=118 second=243 amount=-1 +kerning first=107 second=248 amount=-1 +kerning first=82 second=243 amount=-1 +kerning first=311 second=269 amount=-1 +kerning first=257 second=253 amount=-1 +kerning first=221 second=253 amount=-1 +kerning first=260 second=364 amount=-1 +kerning first=365 second=253 amount=-1 +kerning first=352 second=202 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=193 second=350 amount=-1 +kerning first=65 second=375 amount=-1 +kerning first=221 second=346 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=86 second=289 amount=-1 +kerning first=220 second=229 amount=-1 +kerning first=70 second=46 amount=-1 +kerning first=76 second=370 amount=-1 +kerning first=350 second=282 amount=-1 +kerning first=223 second=314 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=86 second=241 amount=-1 +kerning first=344 second=99 amount=-1 +kerning first=262 second=213 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=283 second=46 amount=-1 +kerning first=364 second=225 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=375 second=335 amount=-1 +kerning first=8250 second=192 amount=-1 +kerning first=235 second=311 amount=-1 +kerning first=303 second=335 amount=-1 +kerning first=286 second=44 amount=-1 +kerning first=356 second=122 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=119 second=271 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=242 second=375 amount=-1 +kerning first=302 second=259 amount=-1 +kerning first=66 second=119 amount=-1 +kerning first=314 second=375 amount=-1 +kerning first=364 second=291 amount=-1 +kerning first=82 second=314 amount=-1 +kerning first=194 second=351 amount=-1 +kerning first=266 second=70 amount=-1 +kerning first=256 second=291 amount=-1 +kerning first=89 second=351 amount=-1 +kerning first=220 second=291 amount=-1 +kerning first=351 second=119 amount=-1 +kerning first=1069 second=1033 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=279 second=119 amount=-1 +kerning first=315 second=119 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=8216 second=275 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=217 second=256 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=346 second=89 amount=-1 +kerning first=374 second=351 amount=-1 +kerning first=255 second=263 amount=-1 +kerning first=317 second=8220 amount=-1 +kerning first=377 second=369 amount=-1 +kerning first=228 second=121 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=1059 second=1114 amount=-1 +kerning first=195 second=221 amount=-2 +kerning first=104 second=8249 amount=-1 +kerning first=89 second=256 amount=-2 +kerning first=304 second=363 amount=-1 +kerning first=354 second=377 amount=-1 +kerning first=8216 second=226 amount=-1 +kerning first=371 second=333 amount=-1 +kerning first=258 second=85 amount=-1 +kerning first=268 second=200 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=86 second=382 amount=-1 +kerning first=65 second=86 amount=-2 +kerning first=103 second=316 amount=-1 +kerning first=244 second=120 amount=-1 +kerning first=115 second=351 amount=-1 +kerning first=70 second=171 amount=-1 +kerning first=45 second=330 amount=-1 +kerning first=244 second=316 amount=-1 +kerning first=253 second=235 amount=-1 +kerning first=344 second=246 amount=-1 +kerning first=86 second=197 amount=-2 +kerning first=369 second=103 amount=-1 +kerning first=193 second=8221 amount=-1 +kerning first=229 second=8221 amount=-1 +kerning first=381 second=252 amount=-1 +kerning first=196 second=249 amount=-1 +kerning first=86 second=333 amount=-1 +kerning first=199 second=214 amount=-1 +kerning first=8217 second=111 amount=-1 +kerning first=283 second=103 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=106 second=103 amount=-1 +kerning first=76 second=379 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=8216 second=257 amount=-1 +kerning first=310 second=71 amount=-1 +kerning first=286 second=260 amount=-1 +kerning first=325 second=117 amount=-1 +kerning first=258 second=171 amount=-1 +kerning first=255 second=281 amount=-1 +kerning first=121 second=283 amount=-1 +kerning first=313 second=89 amount=-1 +kerning first=330 second=171 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=354 second=256 amount=-2 +kerning first=214 second=260 amount=-1 +kerning first=366 second=171 amount=-1 +kerning first=264 second=313 amount=-1 +kerning first=219 second=382 amount=-1 +kerning first=250 second=121 amount=-1 +kerning first=221 second=284 amount=-1 +kerning first=255 second=382 amount=-1 +kerning first=291 second=382 amount=-1 +kerning first=1059 second=1079 amount=-1 +kerning first=73 second=361 amount=-1 +kerning first=8216 second=113 amount=-1 +kerning first=251 second=8221 amount=-1 +kerning first=110 second=8221 amount=-1 +kerning first=350 second=118 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=317 second=362 amount=-1 +kerning first=352 second=85 amount=-1 +kerning first=230 second=316 amount=-1 +kerning first=196 second=218 amount=-1 +kerning first=356 second=118 amount=-1 +kerning first=111 second=314 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=205 second=250 amount=-1 +kerning first=268 second=260 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=356 second=380 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=8216 second=235 amount=-1 +kerning first=321 second=84 amount=-1 +kerning first=354 second=227 amount=-1 +kerning first=86 second=8249 amount=-1 +kerning first=65 second=366 amount=-1 +kerning first=103 second=224 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=204 second=363 amount=-1 +kerning first=262 second=204 amount=-1 +kerning first=87 second=111 amount=-1 +kerning first=286 second=197 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=264 second=291 amount=-1 +kerning first=192 second=291 amount=-1 +kerning first=366 second=378 amount=-1 +kerning first=87 second=291 amount=-1 +kerning first=1046 second=1063 amount=-1 +kerning first=195 second=287 amount=-1 +kerning first=221 second=44 amount=-1 +kerning first=90 second=287 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=80 second=44 amount=-1 +kerning first=67 second=268 amount=-1 +kerning first=374 second=338 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=356 second=103 amount=-1 +kerning first=375 second=287 amount=-1 +kerning first=310 second=367 amount=-1 +kerning first=339 second=287 amount=-1 +kerning first=231 second=287 amount=-1 +kerning first=267 second=287 amount=-1 +kerning first=381 second=367 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=1059 second=1101 amount=-1 +kerning first=205 second=228 amount=-1 +kerning first=87 second=269 amount=-1 +kerning first=221 second=262 amount=-1 +kerning first=1061 second=1060 amount=-1 +kerning first=350 second=344 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=218 second=350 amount=-1 +kerning first=356 second=74 amount=-1 +kerning first=275 second=108 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=121 second=261 amount=-1 +kerning first=85 second=261 amount=-1 +kerning first=370 second=261 amount=-1 +kerning first=298 second=261 amount=-1 +kerning first=346 second=289 amount=-1 +kerning first=274 second=289 amount=-1 +kerning first=298 second=367 amount=-1 +kerning first=192 second=370 amount=-1 +kerning first=362 second=350 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=84 second=339 amount=-1 +kerning first=120 second=251 amount=-1 +kerning first=195 second=353 amount=-1 +kerning first=221 second=210 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=288 second=45 amount=-1 +kerning first=376 second=275 amount=-1 +kerning first=324 second=45 amount=-1 +kerning first=1061 second=1038 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=376 second=240 amount=-1 +kerning first=84 second=211 amount=-1 +kerning first=258 second=356 amount=-2 +kerning first=45 second=356 amount=-1 +kerning first=82 second=336 amount=-1 +kerning first=86 second=171 amount=-1 +kerning first=376 second=381 amount=-1 +kerning first=8220 second=224 amount=-1 +kerning first=84 second=352 amount=-1 +kerning first=350 second=194 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=258 second=255 amount=-1 +kerning first=232 second=119 amount=-1 +kerning first=287 second=226 amount=-1 +kerning first=45 second=255 amount=-1 +kerning first=375 second=113 amount=-1 +kerning first=246 second=44 amount=-1 +kerning first=354 second=44 amount=-1 +kerning first=196 second=119 amount=-1 +kerning first=323 second=226 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=376 second=119 amount=-1 +kerning first=221 second=227 amount=-1 +kerning first=248 second=314 amount=-1 +kerning first=303 second=113 amount=-1 +kerning first=231 second=225 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=67 second=290 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=375 second=225 amount=-1 +kerning first=251 second=318 amount=-1 +kerning first=376 second=79 amount=-1 +kerning first=196 second=86 amount=-2 +kerning first=366 second=193 amount=-1 +kerning first=66 second=103 amount=-1 +kerning first=120 second=226 amount=-1 +kerning first=256 second=8220 amount=-1 +kerning first=45 second=193 amount=-1 +kerning first=328 second=8220 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=222 second=193 amount=-1 +kerning first=268 second=79 amount=-1 +kerning first=202 second=289 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=199 second=192 amount=-1 +kerning first=218 second=259 amount=-1 +kerning first=264 second=207 amount=-1 +kerning first=84 second=99 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=317 second=122 amount=-1 +kerning first=1043 second=1089 amount=-1 +kerning first=87 second=377 amount=-1 +kerning first=291 second=316 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=255 second=316 amount=-1 +kerning first=356 second=230 amount=-1 +kerning first=368 second=346 amount=-1 +kerning first=363 second=316 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=260 second=346 amount=-1 +kerning first=85 second=83 amount=-1 +kerning first=231 second=375 amount=-1 +kerning first=327 second=259 amount=-1 +kerning first=267 second=375 amount=-1 +kerning first=187 second=87 amount=-1 +kerning first=262 second=83 amount=-1 +kerning first=255 second=259 amount=-1 +kerning first=370 second=83 amount=-1 +kerning first=339 second=375 amount=-1 +kerning first=219 second=259 amount=-1 +kerning first=1059 second=1107 amount=-1 +kerning first=90 second=375 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=8250 second=289 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=288 second=197 amount=-1 +kerning first=236 second=103 amount=-1 +kerning first=376 second=196 amount=-2 +kerning first=200 second=103 amount=-1 +kerning first=268 second=196 amount=-1 +kerning first=268 second=77 amount=-1 +kerning first=356 second=336 amount=-1 +kerning first=87 second=335 amount=-1 +kerning first=350 second=278 amount=-1 +kerning first=229 second=8217 amount=-1 +kerning first=8220 second=243 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=1118 second=1103 amount=-1 +kerning first=209 second=361 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=232 second=253 amount=-1 +kerning first=258 second=334 amount=-1 +kerning first=375 second=353 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=275 second=121 amount=-1 +kerning first=245 second=318 amount=-1 +kerning first=281 second=318 amount=-1 +kerning first=8216 second=281 amount=-1 +kerning first=255 second=97 amount=-1 +kerning first=221 second=328 amount=-1 +kerning first=225 second=121 amount=-1 +kerning first=8250 second=80 amount=-1 +kerning first=354 second=103 amount=-1 +kerning first=120 second=121 amount=-1 +kerning first=87 second=326 amount=-1 +kerning first=277 second=316 amount=-1 +kerning first=84 second=121 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=221 second=196 amount=-2 +kerning first=221 second=277 amount=-1 +kerning first=288 second=89 amount=-1 +kerning first=376 second=231 amount=-1 +kerning first=302 second=228 amount=-1 +kerning first=89 second=228 amount=-1 +kerning first=281 second=375 amount=-1 +kerning first=253 second=333 amount=-1 +kerning first=376 second=253 amount=-1 +kerning first=353 second=375 amount=-1 +kerning first=317 second=221 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=311 second=99 amount=-1 +kerning first=245 second=375 amount=-1 +kerning first=267 second=118 amount=-1 +kerning first=205 second=227 amount=-1 +kerning first=87 second=379 amount=-1 +kerning first=262 second=270 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=1027 second=1103 amount=-1 +kerning first=200 second=291 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=330 second=103 amount=-1 +kerning first=366 second=103 amount=-1 +kerning first=258 second=103 amount=-1 +kerning first=1042 second=1038 amount=-1 +kerning first=1058 second=1051 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=66 second=8217 amount=-1 +kerning first=269 second=224 amount=-1 +kerning first=67 second=334 amount=-1 +kerning first=232 second=44 amount=-1 +kerning first=379 second=249 amount=-1 +kerning first=102 second=8217 amount=1 +kerning first=371 second=232 amount=-1 +kerning first=305 second=171 amount=-1 +kerning first=206 second=117 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=376 second=284 amount=-1 +kerning first=258 second=365 amount=-1 +kerning first=330 second=365 amount=-1 +kerning first=196 second=284 amount=-1 +kerning first=344 second=264 amount=-1 +kerning first=266 second=382 amount=-1 +kerning first=1046 second=1054 amount=-1 +kerning first=374 second=382 amount=-1 +kerning first=350 second=203 amount=-1 +kerning first=369 second=121 amount=-1 +kerning first=268 second=284 amount=-1 +kerning first=333 second=121 amount=-1 +kerning first=256 second=71 amount=-1 +kerning first=106 second=255 amount=-1 +kerning first=364 second=287 amount=-1 +kerning first=256 second=287 amount=-1 +kerning first=287 second=257 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=266 second=206 amount=-1 +kerning first=220 second=287 amount=-1 +kerning first=268 second=209 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=377 second=378 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=45 second=87 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=226 second=8221 amount=-1 +kerning first=74 second=257 amount=-1 +kerning first=8220 second=281 amount=-1 +kerning first=376 second=262 amount=-1 +kerning first=268 second=262 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=332 second=192 amount=-1 +kerning first=368 second=192 amount=-1 +kerning first=352 second=356 amount=-1 +kerning first=253 second=269 amount=-1 +kerning first=288 second=8249 amount=-1 +kerning first=258 second=290 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=324 second=8249 amount=-1 +kerning first=1114 second=1118 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=83 second=192 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=346 second=298 amount=-1 +kerning first=260 second=84 amount=-2 +kerning first=197 second=268 amount=-1 +kerning first=115 second=115 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=83 second=84 amount=-1 +kerning first=231 second=108 amount=-1 +kerning first=325 second=291 amount=-1 +kerning first=1047 second=1038 amount=-1 +kerning first=253 second=291 amount=-1 +kerning first=84 second=90 amount=-1 +kerning first=217 second=291 amount=-1 +kerning first=76 second=291 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=73 second=251 amount=-1 +kerning first=218 second=46 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=364 second=256 amount=-1 +kerning first=354 second=337 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=220 second=256 amount=-1 +kerning first=214 second=198 amount=-1 +kerning first=269 second=103 amount=-1 +kerning first=258 second=268 amount=-1 +kerning first=350 second=73 amount=-1 +kerning first=298 second=226 amount=-1 +kerning first=89 second=279 amount=-1 +kerning first=370 second=226 amount=-1 +kerning first=217 second=194 amount=-1 +kerning first=257 second=119 amount=-1 +kerning first=313 second=219 amount=-1 +kerning first=221 second=119 amount=-1 +kerning first=325 second=361 amount=-1 +kerning first=253 second=335 amount=-1 +kerning first=344 second=374 amount=-1 +kerning first=77 second=363 amount=-1 +kerning first=365 second=119 amount=-1 +kerning first=268 second=66 amount=-1 +kerning first=256 second=353 amount=-1 +kerning first=115 second=353 amount=-1 +kerning first=352 second=303 amount=-1 +kerning first=323 second=367 amount=-1 +kerning first=72 second=289 amount=-1 +kerning first=376 second=328 amount=-1 +kerning first=249 second=289 amount=-1 +kerning first=256 second=212 amount=-1 +kerning first=1046 second=1098 amount=-1 +kerning first=194 second=338 amount=-1 +kerning first=204 second=257 amount=-1 +kerning first=84 second=286 amount=-1 +kerning first=266 second=338 amount=-1 +kerning first=99 second=257 amount=-1 +kerning first=352 second=237 amount=-1 +kerning first=195 second=8220 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=8222 second=368 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=241 second=45 amount=-1 +kerning first=344 second=211 amount=-1 +kerning first=354 second=97 amount=-1 +kerning first=221 second=240 amount=-1 +kerning first=8250 second=364 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=197 second=356 amount=-2 +kerning first=8250 second=298 amount=-1 +kerning first=356 second=261 amount=-1 +kerning first=85 second=226 amount=-1 +kerning first=283 second=255 amount=-1 +kerning first=264 second=304 amount=-1 +kerning first=324 second=8221 amount=-1 +kerning first=121 second=226 amount=-1 +kerning first=380 second=112 amount=-1 +kerning first=266 second=77 amount=-1 +kerning first=339 second=104 amount=-1 +kerning first=8220 second=193 amount=-2 +kerning first=381 second=380 amount=-1 +kerning first=66 second=253 amount=-1 +kerning first=317 second=377 amount=-1 +kerning first=121 second=248 amount=-1 +kerning first=113 second=8217 amount=-1 +kerning first=243 second=253 amount=-1 +kerning first=315 second=253 amount=-1 +kerning first=279 second=253 amount=-1 +kerning first=1059 second=1057 amount=-1 +kerning first=356 second=283 amount=-1 +kerning first=351 second=253 amount=-1 +kerning first=192 second=86 amount=-2 +kerning first=212 second=65 amount=-1 +kerning first=87 second=260 amount=-2 +kerning first=197 second=334 amount=-1 +kerning first=356 second=65 amount=-2 +kerning first=333 second=46 amount=-1 +kerning first=313 second=382 amount=-1 +kerning first=336 second=260 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=107 second=283 amount=-1 +kerning first=84 second=264 amount=-1 +kerning first=255 second=347 amount=-1 +kerning first=234 second=318 amount=-1 +kerning first=264 second=260 amount=-1 +kerning first=291 second=347 amount=-1 +kerning first=8218 second=366 amount=-1 +kerning first=253 second=45 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=78 second=369 amount=-1 +kerning first=1118 second=1076 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=327 second=369 amount=-1 +kerning first=346 second=364 amount=-1 +kerning first=264 second=282 amount=-1 +kerning first=284 second=87 amount=-1 +kerning first=346 second=201 amount=-1 +kerning first=262 second=268 amount=-1 +kerning first=376 second=100 amount=-1 +kerning first=115 second=375 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=221 second=381 amount=-1 +kerning first=258 second=351 amount=-1 +kerning first=344 second=352 amount=-1 +kerning first=71 second=87 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55551.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55551.png new file mode 100644 index 000000000..36232b22b Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55551.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55552.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55552.png new file mode 100644 index 000000000..d4911cfc7 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif16Ipad55552.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif32.fnt b/jme3-examples/src/main/resources/jme3test/font/FreeSerif32.fnt new file mode 100644 index 000000000..022adf6de --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/FreeSerif32.fnt @@ -0,0 +1,23475 @@ +info face="Free Serif" size=32 bold=0 italic=0 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=1,1,1,1 spacing=-2,-2 +common lineHeight=42 base=31 scaleW=512 scaleH=512 pages=2 packed=0 +page id=0 file="FreeSerif321.png" +page id=1 file="FreeSerif322.png" +chars count=821 +char id=0 x=195 y=465 width=20 height=24 xoffset=1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=13 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=33 x=503 y=285 width=6 height=25 xoffset=3 yoffset=8 xadvance=11 page=0 chnl=0 +char id=35 x=215 y=465 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=36 x=46 y=226 width=16 height=29 xoffset=0 yoffset=6 xadvance=16 page=0 chnl=0 +char id=37 x=206 y=314 width=26 height=25 xoffset=0 yoffset=8 xadvance=27 page=0 chnl=0 +char id=38 x=232 y=314 width=25 height=25 xoffset=0 yoffset=8 xadvance=25 page=0 chnl=0 +char id=39 x=505 y=440 width=6 height=11 xoffset=0 yoffset=8 xadvance=6 page=0 chnl=0 +char id=40 x=453 y=135 width=11 height=30 xoffset=0 yoffset=8 xadvance=11 page=0 chnl=0 +char id=41 x=464 y=135 width=11 height=30 xoffset=0 yoffset=8 xadvance=11 page=0 chnl=0 +char id=43 x=482 y=490 width=20 height=19 xoffset=-1 yoffset=13 xadvance=18 page=0 chnl=0 +char id=47 x=257 y=314 width=13 height=25 xoffset=-2 yoffset=8 xadvance=9 page=0 chnl=0 +char id=48 x=270 y=314 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=49 x=233 y=465 width=12 height=24 xoffset=2 yoffset=8 xadvance=16 page=0 chnl=0 +char id=50 x=245 y=465 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=51 x=288 y=314 width=15 height=25 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=52 x=263 y=465 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=53 x=303 y=314 width=15 height=25 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=54 x=318 y=314 width=16 height=25 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=55 x=334 y=314 width=17 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=56 x=351 y=314 width=16 height=25 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=57 x=367 y=314 width=17 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=58 x=505 y=365 width=6 height=18 xoffset=1 yoffset=15 xadvance=9 page=0 chnl=0 +char id=60 x=316 y=490 width=20 height=20 xoffset=-1 yoffset=13 xadvance=18 page=0 chnl=0 +char id=62 x=336 y=490 width=20 height=20 xoffset=-1 yoffset=13 xadvance=18 page=0 chnl=0 +char id=63 x=384 y=314 width=14 height=25 xoffset=1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=64 x=398 y=314 width=25 height=25 xoffset=2 yoffset=8 xadvance=29 page=0 chnl=0 +char id=65 x=281 y=465 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=66 x=306 y=465 width=21 height=24 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=67 x=423 y=314 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=68 x=327 y=465 width=24 height=24 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=69 x=351 y=465 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=70 x=373 y=465 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=0 chnl=0 +char id=71 x=446 y=314 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=72 x=393 y=465 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=73 x=418 y=465 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=0 chnl=0 +char id=74 x=470 y=314 width=14 height=25 xoffset=-1 yoffset=8 xadvance=12 page=0 chnl=0 +char id=75 x=431 y=465 width=25 height=24 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=76 x=456 y=465 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=77 x=478 y=465 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=0 chnl=0 +char id=78 x=484 y=314 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=79 x=0 y=340 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=81 x=475 y=135 width=24 height=30 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=83 x=24 y=340 width=17 height=25 xoffset=0 yoffset=8 xadvance=18 page=0 chnl=0 +char id=85 x=41 y=340 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=86 x=66 y=340 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=87 x=91 y=340 width=32 height=25 xoffset=-1 yoffset=8 xadvance=30 page=0 chnl=0 +char id=91 x=62 y=226 width=10 height=29 xoffset=1 yoffset=8 xadvance=11 page=0 chnl=0 +char id=92 x=123 y=340 width=12 height=25 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=0 +char id=93 x=72 y=226 width=10 height=29 xoffset=0 yoffset=9 xadvance=11 page=0 chnl=0 +char id=98 x=135 y=340 width=17 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=100 x=152 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=106 x=109 y=72 width=14 height=31 xoffset=-4 yoffset=8 xadvance=9 page=0 chnl=0 +char id=123 x=499 y=135 width=11 height=30 xoffset=2 yoffset=8 xadvance=15 page=0 chnl=0 +char id=124 x=506 y=226 width=5 height=25 xoffset=1 yoffset=8 xadvance=6 page=0 chnl=0 +char id=125 x=0 y=166 width=11 height=30 xoffset=2 yoffset=8 xadvance=15 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=161 x=504 y=72 width=6 height=25 xoffset=2 yoffset=14 xadvance=11 page=0 chnl=0 +char id=162 x=470 y=285 width=16 height=26 xoffset=0 yoffset=11 xadvance=16 page=0 chnl=0 +char id=163 x=170 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=164 x=0 y=490 width=20 height=21 xoffset=-2 yoffset=10 xadvance=16 page=0 chnl=0 +char id=166 x=504 y=0 width=5 height=25 xoffset=1 yoffset=8 xadvance=6 page=0 chnl=0 +char id=167 x=82 y=226 width=14 height=29 xoffset=1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=169 x=0 y=314 width=27 height=26 xoffset=-1 yoffset=7 xadvance=25 page=0 chnl=0 +char id=174 x=27 y=314 width=27 height=26 xoffset=-1 yoffset=7 xadvance=25 page=0 chnl=0 +char id=182 x=96 y=226 width=18 height=29 xoffset=-1 yoffset=8 xadvance=15 page=0 chnl=0 +char id=188 x=188 y=340 width=24 height=25 xoffset=0 yoffset=8 xadvance=24 page=0 chnl=0 +char id=189 x=212 y=340 width=26 height=25 xoffset=-1 yoffset=8 xadvance=24 page=0 chnl=0 +char id=190 x=238 y=340 width=25 height=25 xoffset=-1 yoffset=8 xadvance=24 page=0 chnl=0 +char id=191 x=263 y=340 width=14 height=25 xoffset=-1 yoffset=14 xadvance=14 page=0 chnl=0 +char id=192 x=123 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=193 x=148 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=194 x=173 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=195 x=114 y=226 width=25 height=29 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=196 x=139 y=226 width=25 height=29 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=197 x=198 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=199 x=223 y=72 width=23 height=31 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=200 x=246 y=72 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=201 x=268 y=72 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=202 x=290 y=72 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=203 x=164 y=226 width=22 height=29 xoffset=-1 yoffset=3 xadvance=20 page=0 chnl=0 +char id=204 x=312 y=72 width=13 height=31 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=205 x=325 y=72 width=13 height=31 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=206 x=338 y=72 width=13 height=31 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=207 x=186 y=226 width=13 height=29 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=209 x=11 y=166 width=25 height=30 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=210 x=417 y=0 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=211 x=441 y=0 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=212 x=465 y=0 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=213 x=36 y=166 width=24 height=30 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=214 x=60 y=166 width=24 height=30 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=216 x=199 y=226 width=24 height=29 xoffset=0 yoffset=6 xadvance=23 page=0 chnl=0 +char id=217 x=0 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=218 x=25 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=219 x=50 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=220 x=84 y=166 width=25 height=30 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=221 x=351 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=223 x=277 y=340 width=17 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=224 x=294 y=340 width=16 height=25 xoffset=0 yoffset=8 xadvance=14 page=0 chnl=0 +char id=225 x=310 y=340 width=16 height=25 xoffset=0 yoffset=8 xadvance=14 page=0 chnl=0 +char id=226 x=326 y=340 width=16 height=25 xoffset=0 yoffset=8 xadvance=14 page=0 chnl=0 +char id=229 x=308 y=285 width=16 height=27 xoffset=0 yoffset=6 xadvance=14 page=0 chnl=0 +char id=232 x=342 y=340 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=233 x=358 y=340 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=234 x=374 y=340 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=240 x=390 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=242 x=408 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=243 x=426 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=244 x=444 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=247 x=356 y=490 width=20 height=20 xoffset=-1 yoffset=13 xadvance=18 page=0 chnl=0 +char id=249 x=462 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=250 x=480 y=340 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=251 x=0 y=365 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=253 x=376 y=72 width=18 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=254 x=394 y=72 width=17 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=255 x=223 y=226 width=18 height=29 xoffset=-1 yoffset=10 xadvance=16 page=0 chnl=0 +char id=256 x=69 y=285 width=25 height=28 xoffset=-1 yoffset=4 xadvance=23 page=0 chnl=0 +char id=258 x=411 y=72 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=259 x=18 y=365 width=16 height=25 xoffset=0 yoffset=8 xadvance=14 page=0 chnl=0 +char id=260 x=109 y=166 width=30 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=262 x=75 y=40 width=23 height=32 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=263 x=34 y=365 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=264 x=98 y=40 width=23 height=32 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=265 x=50 y=365 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=266 x=139 y=166 width=23 height=30 xoffset=-1 yoffset=3 xadvance=21 page=0 chnl=0 +char id=268 x=121 y=40 width=23 height=32 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=269 x=66 y=365 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=270 x=436 y=72 width=24 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=271 x=82 y=365 width=22 height=25 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=273 x=104 y=365 width=19 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=274 x=94 y=285 width=22 height=28 xoffset=-1 yoffset=4 xadvance=20 page=0 chnl=0 +char id=276 x=460 y=72 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=277 x=123 y=365 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=278 x=241 y=226 width=22 height=29 xoffset=-1 yoffset=3 xadvance=20 page=0 chnl=0 +char id=280 x=162 y=166 width=22 height=30 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=282 x=482 y=72 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=283 x=139 y=365 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=284 x=144 y=40 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=285 x=0 y=104 width=18 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=286 x=168 y=40 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=287 x=18 y=104 width=18 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=288 x=184 y=166 width=24 height=30 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=289 x=263 y=226 width=18 height=29 xoffset=-1 yoffset=10 xadvance=16 page=0 chnl=0 +char id=290 x=137 y=0 width=24 height=34 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=291 x=161 y=0 width=18 height=34 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=0 +char id=292 x=36 y=104 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=293 x=61 y=104 width=18 height=31 xoffset=-1 yoffset=1 xadvance=16 page=0 chnl=0 +char id=296 x=281 y=226 width=13 height=29 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=298 x=116 y=285 width=13 height=28 xoffset=-1 yoffset=4 xadvance=11 page=0 chnl=0 +char id=299 x=20 y=490 width=13 height=21 xoffset=-2 yoffset=11 xadvance=9 page=0 chnl=0 +char id=300 x=79 y=104 width=13 height=31 xoffset=-1 yoffset=1 xadvance=11 page=0 chnl=0 +char id=302 x=208 y=166 width=16 height=30 xoffset=-1 yoffset=8 xadvance=11 page=0 chnl=0 +char id=303 x=224 y=166 width=11 height=30 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=0 +char id=304 x=294 y=226 width=13 height=29 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=306 x=155 y=365 width=24 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=307 x=92 y=104 width=17 height=31 xoffset=-1 yoffset=8 xadvance=17 page=0 chnl=0 +char id=308 x=489 y=0 width=15 height=32 xoffset=-1 yoffset=1 xadvance=12 page=0 chnl=0 +char id=309 x=109 y=104 width=17 height=31 xoffset=-4 yoffset=8 xadvance=9 page=0 chnl=0 +char id=310 x=179 y=0 width=25 height=34 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=311 x=204 y=0 width=19 height=34 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=313 x=126 y=104 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=314 x=148 y=104 width=12 height=31 xoffset=-1 yoffset=1 xadvance=9 page=0 chnl=0 +char id=315 x=223 y=0 width=22 height=34 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=316 x=245 y=0 width=11 height=34 xoffset=-1 yoffset=8 xadvance=9 page=0 chnl=0 +char id=323 x=192 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=325 x=256 y=0 width=25 height=34 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=326 x=324 y=285 width=18 height=27 xoffset=-1 yoffset=15 xadvance=16 page=0 chnl=0 +char id=327 x=217 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=330 x=179 y=365 width=24 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=332 x=307 y=226 width=24 height=29 xoffset=0 yoffset=4 xadvance=23 page=0 chnl=0 +char id=334 x=242 y=40 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=335 x=203 y=365 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=336 x=266 y=40 width=24 height=32 xoffset=0 yoffset=1 xadvance=23 page=0 chnl=0 +char id=337 x=221 y=365 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=338 x=239 y=365 width=31 height=25 xoffset=-1 yoffset=8 xadvance=28 page=0 chnl=0 +char id=340 x=160 y=104 width=24 height=31 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=342 x=281 y=0 width=24 height=34 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=343 x=342 y=285 width=13 height=27 xoffset=-1 yoffset=15 xadvance=11 page=0 chnl=0 +char id=344 x=184 y=104 width=24 height=31 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=346 x=290 y=40 width=17 height=32 xoffset=0 yoffset=1 xadvance=18 page=0 chnl=0 +char id=347 x=498 y=340 width=13 height=25 xoffset=0 yoffset=8 xadvance=12 page=0 chnl=0 +char id=348 x=307 y=40 width=17 height=32 xoffset=0 yoffset=1 xadvance=18 page=0 chnl=0 +char id=349 x=270 y=365 width=13 height=25 xoffset=0 yoffset=8 xadvance=12 page=0 chnl=0 +char id=350 x=208 y=104 width=17 height=31 xoffset=0 yoffset=8 xadvance=18 page=0 chnl=0 +char id=352 x=324 y=40 width=17 height=32 xoffset=0 yoffset=1 xadvance=18 page=0 chnl=0 +char id=353 x=283 y=365 width=13 height=25 xoffset=0 yoffset=8 xadvance=12 page=0 chnl=0 +char id=354 x=225 y=104 width=21 height=31 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=355 x=129 y=285 width=11 height=28 xoffset=-1 yoffset=11 xadvance=9 page=0 chnl=0 +char id=356 x=246 y=104 width=21 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=360 x=235 y=166 width=25 height=30 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=362 x=331 y=226 width=25 height=29 xoffset=-1 yoffset=4 xadvance=23 page=0 chnl=0 +char id=364 x=341 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=365 x=296 y=365 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=366 x=366 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=367 x=355 y=285 width=18 height=27 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=0 +char id=368 x=391 y=40 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=369 x=314 y=365 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=370 x=260 y=166 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=372 x=416 y=40 width=32 height=32 xoffset=-1 yoffset=1 xadvance=30 page=0 chnl=0 +char id=373 x=332 y=365 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=374 x=267 y=104 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=375 x=292 y=104 width=18 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=376 x=356 y=226 width=25 height=29 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=377 x=310 y=104 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=379 x=381 y=226 width=22 height=29 xoffset=-1 yoffset=3 xadvance=20 page=0 chnl=0 +char id=381 x=332 y=104 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=902 x=357 y=365 width=25 height=25 xoffset=-1 yoffset=7 xadvance=23 page=0 chnl=0 +char id=904 x=382 y=365 width=27 height=25 xoffset=-1 yoffset=7 xadvance=26 page=0 chnl=0 +char id=905 x=409 y=365 width=31 height=25 xoffset=-1 yoffset=7 xadvance=29 page=0 chnl=0 +char id=906 x=440 y=365 width=18 height=25 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=0 +char id=908 x=54 y=314 width=28 height=26 xoffset=-1 yoffset=7 xadvance=26 page=0 chnl=0 +char id=910 x=458 y=365 width=30 height=25 xoffset=-1 yoffset=7 xadvance=28 page=0 chnl=0 +char id=911 x=0 y=390 width=29 height=25 xoffset=-1 yoffset=7 xadvance=28 page=0 chnl=0 +char id=912 x=140 y=285 width=14 height=28 xoffset=-3 yoffset=5 xadvance=9 page=0 chnl=0 +char id=920 x=29 y=390 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=925 x=54 y=390 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=927 x=79 y=390 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=938 x=403 y=226 width=13 height=29 xoffset=-1 yoffset=3 xadvance=11 page=0 chnl=0 +char id=939 x=416 y=226 width=23 height=29 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=940 x=154 y=285 width=19 height=28 xoffset=0 yoffset=5 xadvance=19 page=0 chnl=0 +char id=941 x=173 y=285 width=14 height=28 xoffset=0 yoffset=5 xadvance=14 page=0 chnl=0 +char id=942 x=94 y=0 width=18 height=35 xoffset=-1 yoffset=5 xadvance=17 page=0 chnl=0 +char id=943 x=187 y=285 width=9 height=28 xoffset=1 yoffset=5 xadvance=9 page=0 chnl=0 +char id=944 x=373 y=285 width=17 height=27 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=0 +char id=946 x=354 y=104 width=16 height=31 xoffset=1 yoffset=8 xadvance=17 page=0 chnl=0 +char id=947 x=488 y=365 width=17 height=25 xoffset=-1 yoffset=15 xadvance=15 page=0 chnl=0 +char id=948 x=103 y=390 width=17 height=25 xoffset=0 yoffset=8 xadvance=17 page=0 chnl=0 +char id=950 x=448 y=40 width=16 height=32 xoffset=0 yoffset=7 xadvance=15 page=0 chnl=0 +char id=951 x=120 y=390 width=18 height=25 xoffset=-1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=952 x=138 y=390 width=17 height=25 xoffset=0 yoffset=8 xadvance=17 page=0 chnl=0 +char id=953 x=502 y=490 width=9 height=18 xoffset=1 yoffset=15 xadvance=9 page=0 chnl=0 +char id=955 x=155 y=390 width=17 height=25 xoffset=-1 yoffset=8 xadvance=15 page=0 chnl=0 +char id=956 x=172 y=390 width=17 height=25 xoffset=1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=958 x=464 y=40 width=18 height=32 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=0 +char id=961 x=189 y=390 width=17 height=25 xoffset=0 yoffset=15 xadvance=17 page=0 chnl=0 +char id=962 x=206 y=390 width=16 height=25 xoffset=0 yoffset=15 xadvance=14 page=0 chnl=0 +char id=966 x=222 y=390 width=21 height=25 xoffset=0 yoffset=15 xadvance=21 page=0 chnl=0 +char id=968 x=439 y=226 width=23 height=29 xoffset=-1 yoffset=11 xadvance=22 page=0 chnl=0 +char id=972 x=196 y=285 width=18 height=28 xoffset=-1 yoffset=5 xadvance=16 page=0 chnl=0 +char id=973 x=390 y=285 width=17 height=27 xoffset=-1 yoffset=6 xadvance=16 page=0 chnl=0 +char id=974 x=407 y=285 width=22 height=27 xoffset=0 yoffset=6 xadvance=22 page=0 chnl=0 +char id=976 x=486 y=285 width=17 height=26 xoffset=0 yoffset=7 xadvance=17 page=0 chnl=0 +char id=977 x=82 y=314 width=21 height=26 xoffset=-1 yoffset=7 xadvance=19 page=0 chnl=0 +char id=979 x=243 y=390 width=28 height=25 xoffset=-1 yoffset=7 xadvance=26 page=0 chnl=0 +char id=980 x=462 y=226 width=23 height=29 xoffset=-2 yoffset=3 xadvance=20 page=0 chnl=0 +char id=981 x=485 y=226 width=21 height=29 xoffset=0 yoffset=11 xadvance=20 page=0 chnl=0 +char id=982 x=376 y=490 width=23 height=20 xoffset=-1 yoffset=13 xadvance=22 page=0 chnl=0 +char id=985 x=271 y=390 width=18 height=25 xoffset=-1 yoffset=15 xadvance=16 page=0 chnl=0 +char id=990 x=289 y=390 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=991 x=370 y=104 width=13 height=31 xoffset=0 yoffset=7 xadvance=13 page=0 chnl=0 +char id=993 x=383 y=104 width=20 height=31 xoffset=-1 yoffset=7 xadvance=18 page=0 chnl=0 +char id=994 x=0 y=72 width=31 height=32 xoffset=0 yoffset=8 xadvance=31 page=0 chnl=0 +char id=995 x=312 y=390 width=23 height=25 xoffset=-1 yoffset=15 xadvance=22 page=0 chnl=0 +char id=996 x=285 y=166 width=18 height=30 xoffset=0 yoffset=8 xadvance=19 page=0 chnl=0 +char id=998 x=303 y=166 width=19 height=30 xoffset=0 yoffset=8 xadvance=19 page=0 chnl=0 +char id=999 x=399 y=490 width=16 height=20 xoffset=-1 yoffset=13 xadvance=15 page=0 chnl=0 +char id=1000 x=214 y=285 width=18 height=28 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=1001 x=415 y=490 width=13 height=20 xoffset=-1 yoffset=15 xadvance=11 page=0 chnl=0 +char id=1002 x=103 y=314 width=27 height=26 xoffset=0 yoffset=8 xadvance=27 page=0 chnl=0 +char id=1004 x=0 y=256 width=20 height=29 xoffset=0 yoffset=4 xadvance=18 page=0 chnl=0 +char id=1005 x=33 y=490 width=16 height=21 xoffset=-1 yoffset=12 xadvance=13 page=0 chnl=0 +char id=1006 x=305 y=0 width=21 height=34 xoffset=0 yoffset=4 xadvance=20 page=0 chnl=0 +char id=1007 x=20 y=256 width=16 height=29 xoffset=-1 yoffset=11 xadvance=14 page=0 chnl=0 +char id=1009 x=335 y=390 width=17 height=25 xoffset=0 yoffset=15 xadvance=17 page=0 chnl=0 +char id=1011 x=403 y=104 width=14 height=31 xoffset=-4 yoffset=8 xadvance=9 page=0 chnl=0 +char id=1012 x=352 y=390 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1016 x=322 y=166 width=19 height=30 xoffset=-1 yoffset=9 xadvance=17 page=0 chnl=0 +char id=1017 x=376 y=390 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1021 x=399 y=390 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1022 x=422 y=390 width=23 height=25 xoffset=-1 yoffset=8 xadvance=32 page=0 chnl=0 +char id=1023 x=445 y=390 width=23 height=25 xoffset=-1 yoffset=8 xadvance=32 page=0 chnl=0 +char id=1024 x=417 y=104 width=22 height=31 xoffset=-1 yoffset=1 xadvance=20 page=0 chnl=0 +char id=1025 x=36 y=256 width=22 height=29 xoffset=-1 yoffset=3 xadvance=20 page=0 chnl=0 +char id=1026 x=468 y=390 width=25 height=25 xoffset=-1 yoffset=8 xadvance=24 page=0 chnl=0 +char id=1027 x=439 y=104 width=20 height=31 xoffset=-1 yoffset=1 xadvance=18 page=0 chnl=0 +char id=1028 x=0 y=415 width=22 height=25 xoffset=0 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1029 x=493 y=390 width=17 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=1031 x=341 y=166 width=13 height=30 xoffset=-1 yoffset=2 xadvance=11 page=0 chnl=0 +char id=1032 x=22 y=415 width=14 height=25 xoffset=-1 yoffset=8 xadvance=12 page=0 chnl=0 +char id=1033 x=36 y=415 width=32 height=25 xoffset=-1 yoffset=8 xadvance=30 page=0 chnl=0 +char id=1035 x=68 y=415 width=28 height=25 xoffset=-1 yoffset=8 xadvance=26 page=0 chnl=0 +char id=1036 x=459 y=104 width=24 height=31 xoffset=-1 yoffset=1 xadvance=21 page=0 chnl=0 +char id=1037 x=483 y=104 width=25 height=31 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=1038 x=0 y=135 width=25 height=31 xoffset=-1 yoffset=2 xadvance=23 page=0 chnl=0 +char id=1039 x=354 y=166 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1044 x=379 y=166 width=23 height=30 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=1047 x=96 y=415 width=20 height=25 xoffset=-1 yoffset=8 xadvance=19 page=0 chnl=0 +char id=1049 x=402 y=166 width=25 height=30 xoffset=-1 yoffset=2 xadvance=23 page=0 chnl=0 +char id=1051 x=116 y=415 width=24 height=25 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1054 x=140 y=415 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1057 x=164 y=415 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1059 x=187 y=415 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1062 x=427 y=166 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1065 x=452 y=166 width=34 height=30 xoffset=-1 yoffset=8 xadvance=32 page=0 chnl=0 +char id=1069 x=212 y=415 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1070 x=235 y=415 width=32 height=25 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1073 x=130 y=314 width=18 height=26 xoffset=-1 yoffset=7 xadvance=16 page=0 chnl=0 +char id=1076 x=49 y=490 width=18 height=21 xoffset=-1 yoffset=15 xadvance=16 page=0 chnl=0 +char id=1092 x=25 y=135 width=24 height=31 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1094 x=67 y=490 width=19 height=21 xoffset=-1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=1097 x=86 y=490 width=26 height=21 xoffset=-1 yoffset=15 xadvance=24 page=0 chnl=0 +char id=1104 x=267 y=415 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=1106 x=49 y=135 width=17 height=31 xoffset=-1 yoffset=8 xadvance=15 page=0 chnl=0 +char id=1112 x=66 y=135 width=14 height=31 xoffset=-4 yoffset=8 xadvance=9 page=0 chnl=0 +char id=1118 x=80 y=135 width=18 height=31 xoffset=-1 yoffset=8 xadvance=15 page=0 chnl=0 +char id=1120 x=283 y=415 width=33 height=25 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1124 x=316 y=415 width=32 height=25 xoffset=-1 yoffset=8 xadvance=30 page=0 chnl=0 +char id=1134 x=76 y=0 width=18 height=37 xoffset=-1 yoffset=2 xadvance=17 page=0 chnl=0 +char id=1135 x=232 y=285 width=14 height=28 xoffset=-1 yoffset=10 xadvance=13 page=0 chnl=0 +char id=1137 x=98 y=135 width=24 height=31 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1138 x=348 y=415 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1140 x=372 y=415 width=27 height=25 xoffset=-1 yoffset=8 xadvance=25 page=0 chnl=0 +char id=1142 x=482 y=40 width=27 height=32 xoffset=-1 yoffset=1 xadvance=25 page=0 chnl=0 +char id=1143 x=399 y=415 width=21 height=25 xoffset=-2 yoffset=8 xadvance=18 page=0 chnl=0 +char id=1144 x=122 y=135 width=41 height=31 xoffset=-1 yoffset=8 xadvance=39 page=0 chnl=0 +char id=1146 x=58 y=256 width=28 height=29 xoffset=0 yoffset=6 xadvance=28 page=0 chnl=0 +char id=1147 x=428 y=490 width=21 height=20 xoffset=-1 yoffset=14 xadvance=20 page=0 chnl=0 +char id=1148 x=31 y=72 width=33 height=32 xoffset=-1 yoffset=1 xadvance=31 page=0 chnl=0 +char id=1149 x=148 y=314 width=24 height=26 xoffset=-1 yoffset=7 xadvance=21 page=0 chnl=0 +char id=1150 x=0 y=196 width=33 height=30 xoffset=-1 yoffset=3 xadvance=31 page=0 chnl=0 +char id=1160 x=326 y=0 width=68 height=34 xoffset=-26 yoffset=2 xadvance=0 page=0 chnl=0 +char id=1161 x=0 y=0 width=76 height=40 xoffset=-27 yoffset=1 xadvance=0 page=0 chnl=0 +char id=1162 x=112 y=0 width=25 height=35 xoffset=-1 yoffset=2 xadvance=23 page=0 chnl=0 +char id=1163 x=86 y=256 width=19 height=29 xoffset=-1 yoffset=8 xadvance=17 page=0 chnl=0 +char id=1168 x=429 y=285 width=20 height=27 xoffset=-1 yoffset=5 xadvance=18 page=0 chnl=0 +char id=1169 x=449 y=490 width=15 height=20 xoffset=-1 yoffset=12 xadvance=13 page=0 chnl=0 +char id=1172 x=163 y=135 width=21 height=31 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=1174 x=33 y=196 width=34 height=30 xoffset=-1 yoffset=8 xadvance=32 page=0 chnl=0 +char id=1175 x=112 y=490 width=24 height=21 xoffset=-1 yoffset=15 xadvance=22 page=0 chnl=0 +char id=1176 x=184 y=135 width=20 height=31 xoffset=-1 yoffset=8 xadvance=19 page=0 chnl=0 +char id=1178 x=486 y=166 width=24 height=30 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1179 x=136 y=490 width=19 height=21 xoffset=-1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=1186 x=67 y=196 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1187 x=155 y=490 width=19 height=21 xoffset=-1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=1190 x=204 y=135 width=34 height=31 xoffset=-1 yoffset=8 xadvance=33 page=0 chnl=0 +char id=1192 x=420 y=415 width=25 height=25 xoffset=0 yoffset=8 xadvance=24 page=0 chnl=0 +char id=1194 x=238 y=135 width=22 height=31 xoffset=0 yoffset=8 xadvance=21 page=0 chnl=0 +char id=1196 x=105 y=256 width=21 height=29 xoffset=-1 yoffset=8 xadvance=19 page=0 chnl=0 +char id=1197 x=174 y=490 width=17 height=21 xoffset=-1 yoffset=15 xadvance=14 page=0 chnl=0 +char id=1202 x=92 y=196 width=27 height=30 xoffset=-1 yoffset=8 xadvance=25 page=0 chnl=0 +char id=1203 x=191 y=490 width=19 height=21 xoffset=-1 yoffset=15 xadvance=17 page=0 chnl=0 +char id=1204 x=126 y=256 width=33 height=29 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1205 x=210 y=490 width=24 height=21 xoffset=-1 yoffset=15 xadvance=22 page=0 chnl=0 +char id=1206 x=119 y=196 width=24 height=30 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1207 x=234 y=490 width=18 height=21 xoffset=-1 yoffset=15 xadvance=16 page=0 chnl=0 +char id=1212 x=445 y=415 width=29 height=25 xoffset=-1 yoffset=8 xadvance=28 page=0 chnl=0 +char id=1214 x=159 y=256 width=29 height=29 xoffset=-1 yoffset=8 xadvance=28 page=0 chnl=0 +char id=1217 x=143 y=196 width=32 height=30 xoffset=-1 yoffset=2 xadvance=30 page=0 chnl=0 +char id=1219 x=260 y=135 width=22 height=31 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=1221 x=188 y=256 width=24 height=29 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1223 x=175 y=196 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1225 x=212 y=256 width=25 height=29 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1227 x=237 y=256 width=24 height=29 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1228 x=252 y=490 width=18 height=21 xoffset=-1 yoffset=15 xadvance=16 page=0 chnl=0 +char id=1229 x=261 y=256 width=30 height=29 xoffset=-1 yoffset=8 xadvance=29 page=0 chnl=0 +char id=1232 x=200 y=196 width=25 height=30 xoffset=-1 yoffset=2 xadvance=23 page=0 chnl=0 +char id=1233 x=474 y=415 width=16 height=25 xoffset=0 yoffset=8 xadvance=14 page=0 chnl=0 +char id=1234 x=225 y=196 width=25 height=30 xoffset=-1 yoffset=2 xadvance=23 page=0 chnl=0 +char id=1238 x=250 y=196 width=22 height=30 xoffset=-1 yoffset=2 xadvance=20 page=0 chnl=0 +char id=1239 x=490 y=415 width=16 height=25 xoffset=-1 yoffset=8 xadvance=14 page=0 chnl=0 +char id=1240 x=0 y=440 width=24 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1242 x=272 y=196 width=24 height=30 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1244 x=291 y=256 width=32 height=29 xoffset=-1 yoffset=3 xadvance=30 page=0 chnl=0 +char id=1246 x=296 y=196 width=20 height=30 xoffset=-1 yoffset=3 xadvance=19 page=0 chnl=0 +char id=1248 x=24 y=440 width=18 height=25 xoffset=-1 yoffset=8 xadvance=17 page=0 chnl=0 +char id=1250 x=246 y=285 width=25 height=28 xoffset=-1 yoffset=4 xadvance=23 page=0 chnl=0 +char id=1252 x=323 y=256 width=25 height=29 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1254 x=316 y=196 width=24 height=30 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1256 x=42 y=440 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1258 x=340 y=196 width=24 height=30 xoffset=0 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1260 x=364 y=196 width=23 height=30 xoffset=-1 yoffset=3 xadvance=21 page=0 chnl=0 +char id=1262 x=348 y=256 width=25 height=29 xoffset=-1 yoffset=4 xadvance=23 page=0 chnl=0 +char id=1263 x=373 y=256 width=18 height=29 xoffset=-1 yoffset=10 xadvance=15 page=0 chnl=0 +char id=1264 x=387 y=196 width=25 height=30 xoffset=-1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=1265 x=391 y=256 width=18 height=29 xoffset=-1 yoffset=10 xadvance=15 page=0 chnl=0 +char id=1266 x=64 y=72 width=25 height=32 xoffset=-1 yoffset=1 xadvance=23 page=0 chnl=0 +char id=1267 x=282 y=135 width=18 height=31 xoffset=-1 yoffset=8 xadvance=15 page=0 chnl=0 +char id=1268 x=409 y=256 width=24 height=29 xoffset=-1 yoffset=3 xadvance=22 page=0 chnl=0 +char id=1270 x=433 y=256 width=20 height=29 xoffset=-1 yoffset=8 xadvance=18 page=0 chnl=0 +char id=1271 x=270 y=490 width=14 height=21 xoffset=-1 yoffset=15 xadvance=12 page=0 chnl=0 +char id=1272 x=453 y=256 width=30 height=29 xoffset=-1 yoffset=3 xadvance=28 page=0 chnl=0 +char id=1274 x=89 y=72 width=20 height=32 xoffset=-1 yoffset=8 xadvance=18 page=0 chnl=0 +char id=1275 x=66 y=440 width=14 height=25 xoffset=-1 yoffset=15 xadvance=12 page=0 chnl=0 +char id=1276 x=412 y=196 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1281 x=80 y=440 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=1283 x=98 y=440 width=22 height=25 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=1284 x=120 y=440 width=28 height=25 xoffset=-1 yoffset=8 xadvance=26 page=0 chnl=0 +char id=1286 x=483 y=256 width=20 height=29 xoffset=-1 yoffset=8 xadvance=18 page=0 chnl=0 +char id=1288 x=148 y=440 width=32 height=25 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1290 x=180 y=440 width=33 height=25 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1292 x=213 y=440 width=24 height=25 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1294 x=237 y=440 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1296 x=262 y=440 width=17 height=25 xoffset=0 yoffset=8 xadvance=17 page=0 chnl=0 +char id=1298 x=437 y=196 width=24 height=30 xoffset=-1 yoffset=8 xadvance=22 page=0 chnl=0 +char id=1300 x=279 y=440 width=33 height=25 xoffset=-1 yoffset=8 xadvance=31 page=0 chnl=0 +char id=1306 x=461 y=196 width=24 height=30 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=1308 x=312 y=440 width=32 height=25 xoffset=-1 yoffset=8 xadvance=30 page=0 chnl=0 +char id=1312 x=300 y=135 width=33 height=31 xoffset=-1 yoffset=8 xadvance=32 page=0 chnl=0 +char id=1314 x=333 y=135 width=34 height=31 xoffset=-1 yoffset=8 xadvance=33 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=32 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=32 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8224 x=0 y=285 width=16 height=29 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=8225 x=16 y=285 width=16 height=29 xoffset=0 yoffset=8 xadvance=16 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8240 x=172 y=314 width=34 height=26 xoffset=-1 yoffset=7 xadvance=32 page=0 chnl=0 +char id=8252 x=344 y=440 width=17 height=25 xoffset=3 yoffset=8 xadvance=21 page=0 chnl=0 +char id=8260 x=361 y=440 width=29 height=25 xoffset=-7 yoffset=8 xadvance=5 page=0 chnl=0 +char id=8286 x=503 y=256 width=6 height=29 xoffset=0 yoffset=4 xadvance=6 page=0 chnl=0 +char id=8352 x=390 y=440 width=22 height=25 xoffset=0 yoffset=7 xadvance=22 page=0 chnl=0 +char id=8353 x=394 y=0 width=23 height=33 xoffset=-1 yoffset=4 xadvance=21 page=0 chnl=0 +char id=8354 x=412 y=440 width=23 height=25 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=8356 x=435 y=440 width=18 height=25 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=8357 x=453 y=440 width=27 height=25 xoffset=-1 yoffset=11 xadvance=25 page=0 chnl=0 +char id=8358 x=480 y=440 width=25 height=25 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=8359 x=0 y=465 width=32 height=25 xoffset=-1 yoffset=8 xadvance=30 page=0 chnl=0 +char id=8360 x=32 y=465 width=34 height=25 xoffset=-1 yoffset=8 xadvance=33 page=0 chnl=0 +char id=8361 x=66 y=465 width=28 height=25 xoffset=-1 yoffset=8 xadvance=26 page=0 chnl=0 +char id=8363 x=32 y=285 width=18 height=29 xoffset=-1 yoffset=4 xadvance=16 page=0 chnl=0 +char id=8364 x=94 y=465 width=24 height=25 xoffset=0 yoffset=8 xadvance=24 page=0 chnl=0 +char id=8367 x=367 y=135 width=44 height=31 xoffset=-1 yoffset=8 xadvance=43 page=0 chnl=0 +char id=8368 x=411 y=135 width=18 height=31 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=8370 x=449 y=285 width=21 height=27 xoffset=0 yoffset=7 xadvance=20 page=0 chnl=0 +char id=8372 x=118 y=465 width=17 height=25 xoffset=0 yoffset=8 xadvance=18 page=0 chnl=0 +char id=8373 x=50 y=285 width=19 height=29 xoffset=0 yoffset=6 xadvance=20 page=0 chnl=0 +char id=11364 x=429 y=135 width=24 height=31 xoffset=-1 yoffset=8 xadvance=21 page=0 chnl=0 +char id=11365 x=284 y=490 width=16 height=21 xoffset=0 yoffset=13 xadvance=14 page=0 chnl=0 +char id=11367 x=485 y=196 width=25 height=30 xoffset=-1 yoffset=8 xadvance=23 page=0 chnl=0 +char id=11368 x=271 y=285 width=18 height=28 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=11369 x=0 y=226 width=25 height=30 xoffset=0 yoffset=8 xadvance=23 page=0 chnl=0 +char id=11370 x=289 y=285 width=19 height=28 xoffset=-1 yoffset=8 xadvance=16 page=0 chnl=0 +char id=11371 x=25 y=226 width=21 height=30 xoffset=-1 yoffset=8 xadvance=20 page=0 chnl=0 +char id=11372 x=300 y=490 width=16 height=21 xoffset=-1 yoffset=15 xadvance=14 page=0 chnl=0 +char id=11373 x=135 y=465 width=23 height=25 xoffset=0 yoffset=8 xadvance=22 page=0 chnl=0 +char id=11378 x=158 y=465 width=37 height=25 xoffset=-1 yoffset=8 xadvance=34 page=0 chnl=0 +char id=11380 x=464 y=490 width=18 height=20 xoffset=-1 yoffset=13 xadvance=16 page=0 chnl=0 +char id=34 x=420 y=269 width=11 height=11 xoffset=1 yoffset=8 xadvance=13 page=1 chnl=0 +char id=42 x=180 y=269 width=14 height=16 xoffset=1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=44 x=431 y=269 width=8 height=11 xoffset=0 yoffset=26 xadvance=8 page=1 chnl=0 +char id=45 x=292 y=286 width=11 height=5 xoffset=0 yoffset=21 xadvance=11 page=1 chnl=0 +char id=46 x=505 y=24 width=6 height=7 xoffset=1 yoffset=26 xadvance=8 page=1 chnl=0 +char id=59 x=33 y=192 width=8 height=22 xoffset=1 yoffset=15 xadvance=9 page=1 chnl=0 +char id=61 x=297 y=269 width=20 height=12 xoffset=-1 yoffset=17 xadvance=18 page=1 chnl=0 +char id=80 x=0 y=0 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=82 x=20 y=0 width=24 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=84 x=44 y=0 width=21 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=88 x=65 y=0 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=89 x=90 y=0 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=90 x=115 y=0 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=94 x=218 y=269 width=17 height=15 xoffset=-1 yoffset=8 xadvance=15 page=1 chnl=0 +char id=95 x=400 y=286 width=19 height=4 xoffset=-1 yoffset=32 xadvance=16 page=1 chnl=0 +char id=96 x=100 y=286 width=10 height=8 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=97 x=18 y=215 width=16 height=18 xoffset=0 yoffset=15 xadvance=14 page=1 chnl=0 +char id=99 x=34 y=215 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=101 x=50 y=215 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=102 x=137 y=0 width=16 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=103 x=153 y=0 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=104 x=171 y=0 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=105 x=189 y=0 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=107 x=200 y=0 width=19 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=108 x=219 y=0 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=109 x=473 y=234 width=27 height=17 xoffset=-1 yoffset=15 xadvance=25 page=1 chnl=0 +char id=110 x=0 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=111 x=66 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=112 x=230 y=0 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=113 x=248 y=0 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=114 x=18 y=252 width=13 height=17 xoffset=-1 yoffset=15 xadvance=11 page=1 chnl=0 +char id=115 x=84 y=215 width=13 height=18 xoffset=0 yoffset=15 xadvance=12 page=1 chnl=0 +char id=116 x=41 y=192 width=11 height=22 xoffset=-1 yoffset=11 xadvance=9 page=1 chnl=0 +char id=117 x=97 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=118 x=115 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=119 x=133 y=215 width=25 height=18 xoffset=-1 yoffset=15 xadvance=23 page=1 chnl=0 +char id=120 x=31 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=121 x=266 y=0 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=122 x=49 y=252 width=16 height=17 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=126 x=110 y=286 width=17 height=8 xoffset=0 yoffset=19 xadvance=17 page=1 chnl=0 +char id=165 x=284 y=0 width=22 height=24 xoffset=-3 yoffset=8 xadvance=16 page=1 chnl=0 +char id=168 x=279 y=286 width=13 height=6 xoffset=-1 yoffset=10 xadvance=11 page=1 chnl=0 +char id=170 x=317 y=269 width=11 height=12 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=171 x=235 y=269 width=16 height=15 xoffset=-1 yoffset=16 xadvance=14 page=1 chnl=0 +char id=172 x=328 y=269 width=20 height=12 xoffset=-1 yoffset=17 xadvance=18 page=1 chnl=0 +char id=173 x=303 y=286 width=11 height=5 xoffset=0 yoffset=21 xadvance=11 page=1 chnl=0 +char id=175 x=314 y=286 width=13 height=5 xoffset=-1 yoffset=10 xadvance=11 page=1 chnl=0 +char id=176 x=348 y=269 width=12 height=12 xoffset=0 yoffset=8 xadvance=13 page=1 chnl=0 +char id=177 x=132 y=168 width=20 height=23 xoffset=-1 yoffset=9 xadvance=18 page=1 chnl=0 +char id=178 x=194 y=269 width=12 height=16 xoffset=-1 yoffset=8 xadvance=10 page=1 chnl=0 +char id=179 x=206 y=269 width=12 height=16 xoffset=-1 yoffset=8 xadvance=10 page=1 chnl=0 +char id=180 x=127 y=286 width=10 height=8 xoffset=2 yoffset=8 xadvance=11 page=1 chnl=0 +char id=181 x=306 y=0 width=18 height=24 xoffset=0 yoffset=15 xadvance=16 page=1 chnl=0 +char id=183 x=505 y=120 width=6 height=7 xoffset=1 yoffset=20 xadvance=8 page=1 chnl=0 +char id=184 x=39 y=286 width=10 height=10 xoffset=0 yoffset=29 xadvance=11 page=1 chnl=0 +char id=185 x=500 y=192 width=9 height=16 xoffset=1 yoffset=8 xadvance=10 page=1 chnl=0 +char id=186 x=360 y=269 width=12 height=12 xoffset=-1 yoffset=8 xadvance=10 page=1 chnl=0 +char id=187 x=251 y=269 width=16 height=15 xoffset=-1 yoffset=17 xadvance=14 page=1 chnl=0 +char id=198 x=324 y=0 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=1 chnl=0 +char id=208 x=354 y=0 width=24 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=215 x=158 y=215 width=18 height=18 xoffset=0 yoffset=14 xadvance=18 page=1 chnl=0 +char id=222 x=378 y=0 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=227 x=398 y=0 width=16 height=24 xoffset=0 yoffset=9 xadvance=14 page=1 chnl=0 +char id=228 x=152 y=168 width=16 height=23 xoffset=0 yoffset=10 xadvance=14 page=1 chnl=0 +char id=230 x=176 y=215 width=22 height=18 xoffset=0 yoffset=15 xadvance=21 page=1 chnl=0 +char id=231 x=414 y=0 width=16 height=24 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=235 x=168 y=168 width=16 height=23 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=236 x=430 y=0 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=237 x=441 y=0 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=238 x=452 y=0 width=13 height=24 xoffset=-2 yoffset=8 xadvance=9 page=1 chnl=0 +char id=239 x=52 y=192 width=12 height=22 xoffset=-2 yoffset=10 xadvance=9 page=1 chnl=0 +char id=241 x=184 y=168 width=18 height=23 xoffset=-1 yoffset=9 xadvance=16 page=1 chnl=0 +char id=245 x=465 y=0 width=18 height=24 xoffset=-1 yoffset=9 xadvance=16 page=1 chnl=0 +char id=246 x=202 y=168 width=18 height=23 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=248 x=483 y=0 width=18 height=24 xoffset=-1 yoffset=12 xadvance=16 page=1 chnl=0 +char id=252 x=220 y=168 width=18 height=23 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=257 x=64 y=192 width=16 height=22 xoffset=0 yoffset=11 xadvance=14 page=1 chnl=0 +char id=261 x=238 y=168 width=16 height=23 xoffset=0 yoffset=15 xadvance=14 page=1 chnl=0 +char id=267 x=254 y=168 width=16 height=23 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=272 x=0 y=24 width=24 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=275 x=80 y=192 width=16 height=22 xoffset=-1 yoffset=11 xadvance=14 page=1 chnl=0 +char id=279 x=270 y=168 width=16 height=23 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=281 x=286 y=168 width=16 height=23 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=294 x=24 y=24 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=295 x=49 y=24 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=297 x=96 y=192 width=13 height=22 xoffset=-2 yoffset=10 xadvance=9 page=1 chnl=0 +char id=301 x=67 y=24 width=12 height=24 xoffset=-2 yoffset=8 xadvance=9 page=1 chnl=0 +char id=305 x=500 y=234 width=11 height=17 xoffset=-1 yoffset=15 xadvance=9 page=1 chnl=0 +char id=312 x=65 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=317 x=79 y=24 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=318 x=101 y=24 width=15 height=24 xoffset=-1 yoffset=8 xadvance=13 page=1 chnl=0 +char id=319 x=116 y=24 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=320 x=138 y=24 width=15 height=24 xoffset=-1 yoffset=8 xadvance=14 page=1 chnl=0 +char id=321 x=153 y=24 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=322 x=175 y=24 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=324 x=186 y=24 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=328 x=204 y=24 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=329 x=222 y=24 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=331 x=242 y=24 width=16 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=333 x=109 y=192 width=18 height=22 xoffset=-1 yoffset=11 xadvance=16 page=1 chnl=0 +char id=339 x=198 y=215 width=24 height=18 xoffset=-1 yoffset=15 xadvance=23 page=1 chnl=0 +char id=341 x=258 y=24 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=345 x=271 y=24 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=351 x=284 y=24 width=13 height=24 xoffset=0 yoffset=15 xadvance=12 page=1 chnl=0 +char id=357 x=297 y=24 width=15 height=24 xoffset=-1 yoffset=9 xadvance=13 page=1 chnl=0 +char id=358 x=312 y=24 width=21 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=359 x=127 y=192 width=11 height=22 xoffset=-1 yoffset=11 xadvance=9 page=1 chnl=0 +char id=361 x=302 y=168 width=18 height=23 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=363 x=138 y=192 width=18 height=22 xoffset=-1 yoffset=11 xadvance=16 page=1 chnl=0 +char id=371 x=320 y=168 width=18 height=23 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=378 x=333 y=24 width=16 height=24 xoffset=-1 yoffset=8 xadvance=14 page=1 chnl=0 +char id=380 x=156 y=192 width=16 height=22 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=382 x=349 y=24 width=16 height=24 xoffset=-1 yoffset=8 xadvance=14 page=1 chnl=0 +char id=383 x=365 y=24 width=16 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=884 x=504 y=48 width=7 height=10 xoffset=-1 yoffset=5 xadvance=6 page=1 chnl=0 +char id=885 x=439 y=269 width=8 height=11 xoffset=0 yoffset=29 xadvance=6 page=1 chnl=0 +char id=890 x=137 y=286 width=8 height=8 xoffset=3 yoffset=31 xadvance=11 page=1 chnl=0 +char id=894 x=172 y=192 width=8 height=22 xoffset=1 yoffset=15 xadvance=9 page=1 chnl=0 +char id=900 x=504 y=144 width=7 height=10 xoffset=1 yoffset=5 xadvance=9 page=1 chnl=0 +char id=901 x=49 y=286 width=13 height=10 xoffset=-1 yoffset=6 xadvance=11 page=1 chnl=0 +char id=903 x=222 y=286 width=6 height=7 xoffset=1 yoffset=14 xadvance=8 page=1 chnl=0 +char id=913 x=381 y=24 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=914 x=406 y=24 width=21 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=915 x=427 y=24 width=20 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=916 x=447 y=24 width=23 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=917 x=470 y=24 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=918 x=0 y=48 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=919 x=22 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=921 x=492 y=24 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=922 x=47 y=48 width=25 height=24 xoffset=0 yoffset=8 xadvance=23 page=1 chnl=0 +char id=923 x=72 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=924 x=97 y=48 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=1 chnl=0 +char id=926 x=127 y=48 width=20 height=24 xoffset=0 yoffset=8 xadvance=20 page=1 chnl=0 +char id=928 x=147 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=929 x=172 y=48 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=931 x=192 y=48 width=20 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=932 x=212 y=48 width=21 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=933 x=233 y=48 width=23 height=24 xoffset=0 yoffset=8 xadvance=22 page=1 chnl=0 +char id=934 x=256 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=24 page=1 chnl=0 +char id=935 x=281 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=936 x=306 y=48 width=27 height=24 xoffset=-1 yoffset=8 xadvance=26 page=1 chnl=0 +char id=937 x=333 y=48 width=25 height=24 xoffset=-1 yoffset=8 xadvance=24 page=1 chnl=0 +char id=945 x=222 y=215 width=19 height=18 xoffset=0 yoffset=15 xadvance=19 page=1 chnl=0 +char id=949 x=241 y=215 width=14 height=18 xoffset=0 yoffset=15 xadvance=14 page=1 chnl=0 +char id=954 x=255 y=215 width=19 height=18 xoffset=-1 yoffset=14 xadvance=17 page=1 chnl=0 +char id=957 x=83 y=252 width=17 height=17 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=959 x=274 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=960 x=376 y=192 width=19 height=19 xoffset=0 yoffset=14 xadvance=19 page=1 chnl=0 +char id=963 x=395 y=192 width=18 height=19 xoffset=0 yoffset=14 xadvance=17 page=1 chnl=0 +char id=964 x=292 y=215 width=15 height=18 xoffset=-1 yoffset=15 xadvance=13 page=1 chnl=0 +char id=965 x=307 y=215 width=17 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=967 x=358 y=48 width=17 height=24 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=969 x=324 y=215 width=22 height=18 xoffset=0 yoffset=15 xadvance=22 page=1 chnl=0 +char id=970 x=375 y=48 width=14 height=24 xoffset=-3 yoffset=9 xadvance=9 page=1 chnl=0 +char id=971 x=389 y=48 width=17 height=24 xoffset=-1 yoffset=9 xadvance=16 page=1 chnl=0 +char id=978 x=406 y=48 width=23 height=24 xoffset=-2 yoffset=8 xadvance=20 page=1 chnl=0 +char id=983 x=338 y=168 width=18 height=23 xoffset=0 yoffset=15 xadvance=17 page=1 chnl=0 +char id=984 x=429 y=48 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=986 x=449 y=48 width=20 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=987 x=469 y=48 width=15 height=24 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=988 x=484 y=48 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=989 x=0 y=72 width=17 height=24 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=992 x=17 y=72 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=997 x=42 y=72 width=18 height=24 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1003 x=413 y=192 width=21 height=19 xoffset=-1 yoffset=15 xadvance=19 page=1 chnl=0 +char id=1008 x=346 y=215 width=18 height=18 xoffset=0 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1010 x=364 y=215 width=15 height=18 xoffset=0 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1013 x=379 y=215 width=12 height=18 xoffset=0 yoffset=15 xadvance=12 page=1 chnl=0 +char id=1014 x=391 y=215 width=12 height=18 xoffset=0 yoffset=15 xadvance=12 page=1 chnl=0 +char id=1015 x=60 y=72 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1018 x=80 y=72 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=1 chnl=0 +char id=1019 x=110 y=72 width=24 height=24 xoffset=0 yoffset=15 xadvance=23 page=1 chnl=0 +char id=1020 x=134 y=72 width=21 height=24 xoffset=-3 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1030 x=155 y=72 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=1034 x=168 y=72 width=33 height=24 xoffset=-1 yoffset=8 xadvance=32 page=1 chnl=0 +char id=1040 x=201 y=72 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1041 x=226 y=72 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1042 x=246 y=72 width=21 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=1043 x=267 y=72 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1045 x=287 y=72 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=1046 x=309 y=72 width=32 height=24 xoffset=-1 yoffset=8 xadvance=30 page=1 chnl=0 +char id=1048 x=341 y=72 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1050 x=366 y=72 width=24 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=1052 x=390 y=72 width=30 height=24 xoffset=-1 yoffset=8 xadvance=29 page=1 chnl=0 +char id=1053 x=420 y=72 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1055 x=445 y=72 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1056 x=470 y=72 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1058 x=490 y=72 width=21 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=1060 x=0 y=96 width=25 height=24 xoffset=-1 yoffset=8 xadvance=24 page=1 chnl=0 +char id=1061 x=25 y=96 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1063 x=50 y=96 width=24 height=24 xoffset=-1 yoffset=8 xadvance=22 page=1 chnl=0 +char id=1064 x=74 y=96 width=33 height=24 xoffset=-1 yoffset=8 xadvance=31 page=1 chnl=0 +char id=1066 x=107 y=96 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1067 x=132 y=96 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=1 chnl=0 +char id=1068 x=162 y=96 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1071 x=182 y=96 width=23 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=1072 x=403 y=215 width=16 height=18 xoffset=0 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1074 x=100 y=252 width=17 height=17 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=1075 x=117 y=252 width=14 height=17 xoffset=-1 yoffset=15 xadvance=12 page=1 chnl=0 +char id=1077 x=419 y=215 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1078 x=131 y=252 width=23 height=17 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1079 x=435 y=215 width=15 height=18 xoffset=-1 yoffset=15 xadvance=13 page=1 chnl=0 +char id=1080 x=154 y=252 width=19 height=17 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1081 x=205 y=96 width=19 height=24 xoffset=-1 yoffset=8 xadvance=17 page=1 chnl=0 +char id=1082 x=173 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1083 x=450 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1084 x=468 y=215 width=22 height=18 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1085 x=191 y=252 width=19 height=17 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1086 x=490 y=215 width=18 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1087 x=210 y=252 width=19 height=17 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1088 x=224 y=96 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1089 x=0 y=234 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1090 x=229 y=252 width=16 height=17 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1091 x=242 y=96 width=18 height=24 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=1093 x=245 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=1095 x=263 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1096 x=281 y=252 width=26 height=17 xoffset=-1 yoffset=15 xadvance=24 page=1 chnl=0 +char id=1098 x=307 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1099 x=325 y=252 width=22 height=17 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1100 x=347 y=252 width=15 height=17 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1101 x=16 y=234 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1102 x=32 y=234 width=23 height=18 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1103 x=362 y=252 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1105 x=260 y=96 width=16 height=24 xoffset=-1 yoffset=9 xadvance=14 page=1 chnl=0 +char id=1107 x=276 y=96 width=15 height=24 xoffset=-1 yoffset=8 xadvance=12 page=1 chnl=0 +char id=1108 x=55 y=234 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1109 x=71 y=234 width=13 height=18 xoffset=-1 yoffset=15 xadvance=11 page=1 chnl=0 +char id=1110 x=291 y=96 width=11 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=1111 x=302 y=96 width=13 height=24 xoffset=-2 yoffset=8 xadvance=9 page=1 chnl=0 +char id=1113 x=84 y=234 width=23 height=18 xoffset=-1 yoffset=15 xadvance=22 page=1 chnl=0 +char id=1114 x=380 y=252 width=24 height=17 xoffset=-1 yoffset=15 xadvance=23 page=1 chnl=0 +char id=1115 x=315 y=96 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=1116 x=333 y=96 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=1117 x=351 y=96 width=19 height=24 xoffset=-1 yoffset=8 xadvance=17 page=1 chnl=0 +char id=1119 x=180 y=192 width=19 height=22 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1121 x=107 y=234 width=23 height=18 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1122 x=370 y=96 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1123 x=395 y=96 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=1125 x=130 y=234 width=22 height=18 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1126 x=413 y=96 width=31 height=24 xoffset=-1 yoffset=8 xadvance=29 page=1 chnl=0 +char id=1127 x=404 y=252 width=23 height=17 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1128 x=444 y=96 width=42 height=24 xoffset=-1 yoffset=8 xadvance=40 page=1 chnl=0 +char id=1129 x=427 y=252 width=31 height=17 xoffset=-1 yoffset=15 xadvance=29 page=1 chnl=0 +char id=1130 x=0 y=120 width=32 height=24 xoffset=-1 yoffset=8 xadvance=30 page=1 chnl=0 +char id=1131 x=458 y=252 width=23 height=17 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1132 x=32 y=120 width=43 height=24 xoffset=-1 yoffset=8 xadvance=41 page=1 chnl=0 +char id=1133 x=0 y=269 width=31 height=17 xoffset=-1 yoffset=15 xadvance=29 page=1 chnl=0 +char id=1136 x=75 y=120 width=30 height=24 xoffset=-1 yoffset=8 xadvance=28 page=1 chnl=0 +char id=1139 x=152 y=234 width=17 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1141 x=169 y=234 width=20 height=18 xoffset=-1 yoffset=15 xadvance=18 page=1 chnl=0 +char id=1145 x=105 y=120 width=32 height=24 xoffset=-1 yoffset=15 xadvance=30 page=1 chnl=0 +char id=1151 x=356 y=168 width=23 height=23 xoffset=-1 yoffset=10 xadvance=21 page=1 chnl=0 +char id=1152 x=486 y=96 width=20 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=1153 x=379 y=168 width=15 height=23 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1154 x=287 y=269 width=10 height=13 xoffset=-1 yoffset=26 xadvance=7 page=1 chnl=0 +char id=1155 x=228 y=286 width=23 height=7 xoffset=-12 yoffset=9 xadvance=0 page=1 chnl=0 +char id=1156 x=145 y=286 width=30 height=8 xoffset=-15 yoffset=8 xadvance=0 page=1 chnl=0 +char id=1157 x=175 y=286 width=17 height=8 xoffset=-9 yoffset=8 xadvance=0 page=1 chnl=0 +char id=1158 x=192 y=286 width=17 height=8 xoffset=-9 yoffset=8 xadvance=0 page=1 chnl=0 +char id=1159 x=62 y=286 width=38 height=9 xoffset=-16 yoffset=3 xadvance=0 page=1 chnl=0 +char id=1164 x=137 y=120 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1165 x=481 y=252 width=15 height=17 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1166 x=157 y=120 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1167 x=177 y=120 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1170 x=195 y=120 width=20 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=1171 x=496 y=252 width=15 height=17 xoffset=-1 yoffset=15 xadvance=13 page=1 chnl=0 +char id=1173 x=215 y=120 width=17 height=24 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=1177 x=394 y=168 width=15 height=23 xoffset=-1 yoffset=15 xadvance=13 page=1 chnl=0 +char id=1180 x=232 y=120 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1181 x=31 y=269 width=19 height=17 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1182 x=257 y=120 width=24 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=1183 x=50 y=269 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1184 x=281 y=120 width=28 height=24 xoffset=-1 yoffset=8 xadvance=26 page=1 chnl=0 +char id=1185 x=68 y=269 width=20 height=17 xoffset=-1 yoffset=15 xadvance=18 page=1 chnl=0 +char id=1188 x=309 y=120 width=32 height=24 xoffset=-1 yoffset=8 xadvance=30 page=1 chnl=0 +char id=1189 x=88 y=269 width=23 height=17 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1191 x=341 y=120 width=25 height=24 xoffset=-1 yoffset=15 xadvance=23 page=1 chnl=0 +char id=1193 x=189 y=234 width=18 height=18 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1195 x=409 y=168 width=16 height=23 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1198 x=366 y=120 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1199 x=391 y=120 width=20 height=24 xoffset=-1 yoffset=15 xadvance=18 page=1 chnl=0 +char id=1200 x=411 y=120 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1201 x=436 y=120 width=20 height=24 xoffset=-1 yoffset=15 xadvance=18 page=1 chnl=0 +char id=1208 x=456 y=120 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1209 x=111 y=269 width=19 height=17 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1210 x=481 y=120 width=24 height=24 xoffset=-1 yoffset=8 xadvance=22 page=1 chnl=0 +char id=1211 x=0 y=144 width=18 height=24 xoffset=-1 yoffset=8 xadvance=16 page=1 chnl=0 +char id=1213 x=434 y=192 width=20 height=19 xoffset=-1 yoffset=14 xadvance=18 page=1 chnl=0 +char id=1215 x=425 y=168 width=20 height=23 xoffset=-1 yoffset=14 xadvance=18 page=1 chnl=0 +char id=1216 x=18 y=144 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=1218 x=31 y=144 width=23 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=1220 x=54 y=144 width=16 height=24 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1222 x=199 y=192 width=18 height=22 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1224 x=70 y=144 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1226 x=217 y=192 width=19 height=22 xoffset=-1 yoffset=15 xadvance=18 page=1 chnl=0 +char id=1230 x=236 y=192 width=22 height=22 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1231 x=88 y=144 width=13 height=24 xoffset=-1 yoffset=8 xadvance=11 page=1 chnl=0 +char id=1235 x=445 y=168 width=16 height=23 xoffset=0 yoffset=10 xadvance=14 page=1 chnl=0 +char id=1236 x=101 y=144 width=30 height=24 xoffset=-1 yoffset=8 xadvance=29 page=1 chnl=0 +char id=1237 x=207 y=234 width=22 height=18 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1241 x=229 y=234 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1243 x=461 y=168 width=16 height=23 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=1245 x=258 y=192 width=23 height=22 xoffset=-1 yoffset=10 xadvance=21 page=1 chnl=0 +char id=1247 x=477 y=168 width=15 height=23 xoffset=-1 yoffset=10 xadvance=13 page=1 chnl=0 +char id=1249 x=245 y=234 width=13 height=18 xoffset=-1 yoffset=15 xadvance=12 page=1 chnl=0 +char id=1251 x=281 y=192 width=19 height=22 xoffset=-1 yoffset=10 xadvance=17 page=1 chnl=0 +char id=1253 x=300 y=192 width=19 height=22 xoffset=-1 yoffset=10 xadvance=17 page=1 chnl=0 +char id=1255 x=492 y=168 width=18 height=23 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=1257 x=258 y=234 width=17 height=18 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1259 x=0 y=192 width=17 height=23 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=1261 x=17 y=192 width=16 height=23 xoffset=-1 yoffset=10 xadvance=14 page=1 chnl=0 +char id=1269 x=319 y=192 width=18 height=22 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=1273 x=337 y=192 width=22 height=22 xoffset=-1 yoffset=10 xadvance=20 page=1 chnl=0 +char id=1277 x=131 y=144 width=16 height=24 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1278 x=147 y=144 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=1279 x=130 y=269 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1280 x=172 y=144 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=1282 x=192 y=144 width=30 height=24 xoffset=-1 yoffset=8 xadvance=29 page=1 chnl=0 +char id=1285 x=275 y=234 width=19 height=18 xoffset=-1 yoffset=15 xadvance=17 page=1 chnl=0 +char id=1287 x=359 y=192 width=17 height=22 xoffset=-1 yoffset=15 xadvance=15 page=1 chnl=0 +char id=1289 x=454 y=192 width=22 height=19 xoffset=-1 yoffset=15 xadvance=20 page=1 chnl=0 +char id=1291 x=476 y=192 width=24 height=19 xoffset=-1 yoffset=15 xadvance=22 page=1 chnl=0 +char id=1293 x=294 y=234 width=16 height=18 xoffset=-1 yoffset=15 xadvance=14 page=1 chnl=0 +char id=1295 x=0 y=215 width=18 height=19 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1297 x=310 y=234 width=15 height=18 xoffset=-1 yoffset=15 xadvance=13 page=1 chnl=0 +char id=1299 x=222 y=144 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1301 x=325 y=234 width=23 height=18 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=1302 x=240 y=144 width=28 height=24 xoffset=-1 yoffset=8 xadvance=26 page=1 chnl=0 +char id=1303 x=268 y=144 width=25 height=24 xoffset=-1 yoffset=15 xadvance=22 page=1 chnl=0 +char id=1304 x=293 y=144 width=33 height=24 xoffset=-1 yoffset=8 xadvance=31 page=1 chnl=0 +char id=1305 x=348 y=234 width=26 height=18 xoffset=-1 yoffset=15 xadvance=24 page=1 chnl=0 +char id=1307 x=326 y=144 width=18 height=24 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1309 x=374 y=234 width=25 height=18 xoffset=-1 yoffset=15 xadvance=22 page=1 chnl=0 +char id=1310 x=344 y=144 width=24 height=24 xoffset=-1 yoffset=8 xadvance=21 page=1 chnl=0 +char id=1311 x=148 y=269 width=18 height=17 xoffset=-1 yoffset=15 xadvance=16 page=1 chnl=0 +char id=1313 x=368 y=144 width=24 height=24 xoffset=-1 yoffset=15 xadvance=23 page=1 chnl=0 +char id=1315 x=392 y=144 width=25 height=24 xoffset=-1 yoffset=15 xadvance=24 page=1 chnl=0 +char id=8210 x=327 y=286 width=19 height=5 xoffset=-1 yoffset=21 xadvance=16 page=1 chnl=0 +char id=8211 x=327 y=286 width=19 height=5 xoffset=-1 yoffset=21 xadvance=16 page=1 chnl=0 +char id=8212 x=346 y=286 width=35 height=5 xoffset=-1 yoffset=21 xadvance=32 page=1 chnl=0 +char id=8213 x=346 y=286 width=35 height=5 xoffset=-1 yoffset=21 xadvance=32 page=1 chnl=0 +char id=8214 x=501 y=0 width=8 height=23 xoffset=1 yoffset=12 xadvance=9 page=1 chnl=0 +char id=8215 x=209 y=286 width=13 height=8 xoffset=2 yoffset=31 xadvance=15 page=1 chnl=0 +char id=8216 x=447 y=269 width=8 height=11 xoffset=0 yoffset=8 xadvance=8 page=1 chnl=0 +char id=8217 x=455 y=269 width=8 height=11 xoffset=0 yoffset=8 xadvance=8 page=1 chnl=0 +char id=8218 x=463 y=269 width=8 height=11 xoffset=0 yoffset=26 xadvance=8 page=1 chnl=0 +char id=8219 x=471 y=269 width=8 height=11 xoffset=0 yoffset=8 xadvance=8 page=1 chnl=0 +char id=8220 x=479 y=269 width=14 height=11 xoffset=0 yoffset=8 xadvance=14 page=1 chnl=0 +char id=8221 x=493 y=269 width=14 height=11 xoffset=0 yoffset=8 xadvance=14 page=1 chnl=0 +char id=8222 x=0 y=286 width=14 height=11 xoffset=0 yoffset=26 xadvance=14 page=1 chnl=0 +char id=8223 x=14 y=286 width=14 height=11 xoffset=0 yoffset=8 xadvance=14 page=1 chnl=0 +char id=8226 x=28 y=286 width=11 height=11 xoffset=0 yoffset=15 xadvance=11 page=1 chnl=0 +char id=8230 x=251 y=286 width=28 height=7 xoffset=2 yoffset=26 xadvance=32 page=1 chnl=0 +char id=8242 x=372 y=269 width=10 height=12 xoffset=-1 yoffset=6 xadvance=8 page=1 chnl=0 +char id=8243 x=382 y=269 width=16 height=12 xoffset=-1 yoffset=6 xadvance=13 page=1 chnl=0 +char id=8244 x=398 y=269 width=22 height=12 xoffset=-1 yoffset=6 xadvance=20 page=1 chnl=0 +char id=8249 x=267 y=269 width=10 height=15 xoffset=-1 yoffset=16 xadvance=8 page=1 chnl=0 +char id=8250 x=277 y=269 width=10 height=15 xoffset=-1 yoffset=17 xadvance=8 page=1 chnl=0 +char id=8254 x=381 y=286 width=19 height=5 xoffset=-1 yoffset=10 xadvance=16 page=1 chnl=0 +char id=8355 x=417 y=144 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=8365 x=437 y=144 width=25 height=24 xoffset=0 yoffset=8 xadvance=23 page=1 chnl=0 +char id=8366 x=462 y=144 width=21 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=8369 x=483 y=144 width=21 height=24 xoffset=-1 yoffset=8 xadvance=19 page=1 chnl=0 +char id=8371 x=0 y=168 width=25 height=24 xoffset=-1 yoffset=8 xadvance=23 page=1 chnl=0 +char id=11360 x=25 y=168 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=11361 x=47 y=168 width=12 height=24 xoffset=-1 yoffset=8 xadvance=9 page=1 chnl=0 +char id=11362 x=59 y=168 width=22 height=24 xoffset=-1 yoffset=8 xadvance=20 page=1 chnl=0 +char id=11363 x=81 y=168 width=20 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=11366 x=101 y=168 width=12 height=24 xoffset=-1 yoffset=11 xadvance=10 page=1 chnl=0 +char id=11377 x=399 y=234 width=23 height=18 xoffset=-1 yoffset=15 xadvance=21 page=1 chnl=0 +char id=11379 x=422 y=234 width=30 height=18 xoffset=-1 yoffset=15 xadvance=28 page=1 chnl=0 +char id=11381 x=113 y=168 width=19 height=24 xoffset=-1 yoffset=8 xadvance=18 page=1 chnl=0 +char id=11382 x=166 y=269 width=14 height=17 xoffset=-1 yoffset=15 xadvance=12 page=1 chnl=0 +char id=11383 x=452 y=234 width=21 height=18 xoffset=0 yoffset=15 xadvance=21 page=1 chnl=0 +kernings count=22648 +kerning first=107 second=100 amount=-1 +kerning first=296 second=275 amount=-1 +kerning first=242 second=44 amount=-2 +kerning first=216 second=45 amount=-1 +kerning first=270 second=46 amount=-1 +kerning first=199 second=230 amount=-1 +kerning first=332 second=66 amount=-1 +kerning first=369 second=367 amount=-1 +kerning first=222 second=327 amount=-1 +kerning first=338 second=346 amount=-1 +kerning first=8220 second=380 amount=-1 +kerning first=67 second=65 amount=-2 +kerning first=210 second=66 amount=-1 +kerning first=200 second=67 amount=-1 +kerning first=208 second=68 amount=-1 +kerning first=274 second=69 amount=-1 +kerning first=332 second=70 amount=-1 +kerning first=204 second=71 amount=-1 +kerning first=216 second=72 amount=-1 +kerning first=198 second=73 amount=-1 +kerning first=216 second=74 amount=-1 +kerning first=210 second=75 amount=-1 +kerning first=198 second=76 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=338 second=78 amount=-1 +kerning first=304 second=79 amount=-1 +kerning first=262 second=80 amount=-1 +kerning first=67 second=81 amount=-2 +kerning first=202 second=82 amount=-1 +kerning first=258 second=83 amount=-2 +kerning first=8222 second=84 amount=-3 +kerning first=8222 second=85 amount=-2 +kerning first=8218 second=86 amount=-3 +kerning first=8250 second=87 amount=-2 +kerning first=208 second=89 amount=-1 +kerning first=286 second=90 amount=-1 +kerning first=274 second=97 amount=-1 +kerning first=103 second=99 amount=-1 +kerning first=374 second=100 amount=-2 +kerning first=264 second=101 amount=-1 +kerning first=198 second=102 amount=-1 +kerning first=246 second=103 amount=-1 +kerning first=380 second=104 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=266 second=109 amount=-1 +kerning first=8216 second=110 amount=-1 +kerning first=364 second=111 amount=-1 +kerning first=316 second=113 amount=-1 +kerning first=266 second=114 amount=-1 +kerning first=1052 second=1105 amount=-1 +kerning first=286 second=117 amount=-1 +kerning first=69 second=119 amount=-1 +kerning first=278 second=120 amount=-1 +kerning first=316 second=121 amount=-1 +kerning first=368 second=122 amount=-1 +kerning first=220 second=379 amount=-1 +kerning first=286 second=171 amount=-1 +kerning first=240 second=187 amount=-1 +kerning first=87 second=192 amount=-3 +kerning first=332 second=193 amount=-2 +kerning first=278 second=194 amount=-1 +kerning first=45 second=195 amount=-2 +kerning first=218 second=196 amount=-2 +kerning first=370 second=197 amount=-2 +kerning first=332 second=198 amount=-2 +kerning first=204 second=199 amount=-1 +kerning first=278 second=200 amount=-1 +kerning first=8250 second=201 amount=-3 +kerning first=216 second=202 amount=-1 +kerning first=212 second=203 amount=-1 +kerning first=290 second=204 amount=-1 +kerning first=8250 second=205 amount=-3 +kerning first=45 second=206 amount=-3 +kerning first=274 second=207 amount=-1 +kerning first=272 second=209 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=258 second=211 amount=-1 +kerning first=260 second=212 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=256 second=214 amount=-1 +kerning first=218 second=216 amount=-1 +kerning first=346 second=217 amount=-1 +kerning first=210 second=218 amount=-1 +kerning first=121 second=223 amount=-1 +kerning first=8216 second=220 amount=-1 +kerning first=71 second=221 amount=-1 +kerning first=338 second=223 amount=-1 +kerning first=218 second=224 amount=-1 +kerning first=250 second=225 amount=-1 +kerning first=364 second=226 amount=-2 +kerning first=344 second=227 amount=-1 +kerning first=218 second=228 amount=-1 +kerning first=107 second=229 amount=-1 +kerning first=316 second=230 amount=-1 +kerning first=113 second=231 amount=-1 +kerning first=364 second=232 amount=-1 +kerning first=206 second=233 amount=-1 +kerning first=268 second=234 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=119 second=237 amount=-1 +kerning first=194 second=240 amount=-1 +kerning first=380 second=241 amount=-1 +kerning first=268 second=242 amount=-1 +kerning first=382 second=243 amount=-1 +kerning first=298 second=245 amount=-1 +kerning first=344 second=246 amount=-1 +kerning first=87 second=248 amount=-2 +kerning first=196 second=249 amount=-1 +kerning first=268 second=250 amount=-1 +kerning first=250 second=251 amount=-1 +kerning first=103 second=252 amount=-1 +kerning first=364 second=253 amount=-1 +kerning first=113 second=254 amount=-1 +kerning first=374 second=255 amount=-1 +kerning first=8250 second=256 amount=-2 +kerning first=8216 second=257 amount=-1 +kerning first=356 second=259 amount=-2 +kerning first=71 second=260 amount=-1 +kerning first=202 second=261 amount=-1 +kerning first=298 second=262 amount=-1 +kerning first=89 second=263 amount=-2 +kerning first=85 second=264 amount=-1 +kerning first=206 second=266 amount=-1 +kerning first=258 second=267 amount=-1 +kerning first=220 second=268 amount=-1 +kerning first=380 second=269 amount=-1 +kerning first=89 second=270 amount=-1 +kerning first=99 second=271 amount=-1 +kerning first=107 second=273 amount=-1 +kerning first=332 second=274 amount=-1 +kerning first=75 second=275 amount=-1 +kerning first=380 second=277 amount=-1 +kerning first=79 second=278 amount=-1 +kerning first=280 second=280 amount=-1 +kerning first=364 second=281 amount=-1 +kerning first=198 second=282 amount=-1 +kerning first=65 second=283 amount=-1 +kerning first=73 second=284 amount=-1 +kerning first=262 second=286 amount=-2 +kerning first=226 second=287 amount=-1 +kerning first=280 second=288 amount=-1 +kerning first=334 second=289 amount=-1 +kerning first=366 second=290 amount=-1 +kerning first=302 second=291 amount=-1 +kerning first=207 second=249 amount=-1 +kerning first=45 second=296 amount=-3 +kerning first=336 second=298 amount=-1 +kerning first=85 second=223 amount=-1 +kerning first=332 second=302 amount=-1 +kerning first=111 second=303 amount=-1 +kerning first=214 second=304 amount=-1 +kerning first=370 second=305 amount=-1 +kerning first=266 second=311 amount=-1 +kerning first=8250 second=313 amount=-3 +kerning first=282 second=314 amount=-1 +kerning first=376 second=315 amount=-1 +kerning first=45 second=316 amount=-1 +kerning first=214 second=317 amount=-1 +kerning first=109 second=318 amount=-1 +kerning first=219 second=192 amount=-2 +kerning first=222 second=323 amount=-1 +kerning first=376 second=324 amount=-1 +kerning first=8250 second=325 amount=-3 +kerning first=8216 second=326 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=69 second=328 amount=-1 +kerning first=356 second=330 amount=-1 +kerning first=99 second=331 amount=-1 +kerning first=202 second=332 amount=-1 +kerning first=264 second=333 amount=-1 +kerning first=258 second=334 amount=-1 +kerning first=316 second=335 amount=-1 +kerning first=298 second=336 amount=-1 +kerning first=196 second=337 amount=-1 +kerning first=304 second=338 amount=-1 +kerning first=77 second=339 amount=-1 +kerning first=242 second=289 amount=-1 +kerning first=81 second=344 amount=-1 +kerning first=350 second=345 amount=-1 +kerning first=89 second=346 amount=-2 +kerning first=280 second=347 amount=-1 +kerning first=8220 second=350 amount=-1 +kerning first=262 second=352 amount=-1 +kerning first=224 second=353 amount=-1 +kerning first=8222 second=354 amount=-3 +kerning first=310 second=355 amount=-1 +kerning first=8220 second=356 amount=-1 +kerning first=45 second=357 amount=-1 +kerning first=278 second=289 amount=-1 +kerning first=8218 second=361 amount=-1 +kerning first=350 second=362 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=214 second=364 amount=-1 +kerning first=97 second=365 amount=-1 +kerning first=8250 second=366 amount=-2 +kerning first=356 second=367 amount=-1 +kerning first=290 second=368 amount=-1 +kerning first=83 second=369 amount=-1 +kerning first=346 second=370 amount=-1 +kerning first=224 second=371 amount=-1 +kerning first=74 second=268 amount=-1 +kerning first=310 second=374 amount=-1 +kerning first=220 second=375 amount=-1 +kerning first=71 second=377 amount=-1 +kerning first=8218 second=378 amount=-2 +kerning first=8222 second=379 amount=-1 +kerning first=77 second=380 amount=-1 +kerning first=8250 second=381 amount=-2 +kerning first=113 second=382 amount=-1 +kerning first=244 second=237 amount=-1 +kerning first=272 second=218 amount=-1 +kerning first=350 second=289 amount=-1 +kerning first=217 second=244 amount=-1 +kerning first=377 second=282 amount=-1 +kerning first=253 second=244 amount=-1 +kerning first=200 second=218 amount=-1 +kerning first=289 second=244 amount=-1 +kerning first=87 second=199 amount=-1 +kerning first=103 second=237 amount=-1 +kerning first=8217 second=245 amount=-2 +kerning first=67 second=237 amount=-1 +kerning first=1038 second=1117 amount=-2 +kerning first=75 second=8249 amount=-2 +kerning first=347 second=353 amount=-1 +kerning first=68 second=225 amount=-1 +kerning first=346 second=365 amount=-1 +kerning first=1027 second=1060 amount=-1 +kerning first=219 second=228 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=364 second=379 amount=-1 +kerning first=84 second=263 amount=-2 +kerning first=310 second=365 amount=-1 +kerning first=279 second=361 amount=-1 +kerning first=350 second=324 amount=-1 +kerning first=120 second=263 amount=-1 +kerning first=274 second=365 amount=-1 +kerning first=266 second=346 amount=-1 +kerning first=1043 second=1098 amount=-1 +kerning first=203 second=353 amount=-1 +kerning first=65 second=289 amount=-1 +kerning first=354 second=366 amount=-1 +kerning first=85 second=251 amount=-1 +kerning first=45 second=327 amount=-3 +kerning first=298 second=275 amount=-1 +kerning first=194 second=346 amount=-2 +kerning first=198 second=270 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=226 second=251 amount=-1 +kerning first=81 second=327 amount=-1 +kerning first=1063 second=1060 amount=-1 +kerning first=311 second=353 amount=-1 +kerning first=207 second=277 amount=-1 +kerning first=356 second=72 amount=-1 +kerning first=197 second=254 amount=-1 +kerning first=194 second=374 amount=-3 +kerning first=275 second=121 amount=-1 +kerning first=298 second=251 amount=-1 +kerning first=115 second=351 amount=-1 +kerning first=379 second=202 amount=-1 +kerning first=233 second=254 amount=-1 +kerning first=262 second=251 amount=-1 +kerning first=77 second=232 amount=-1 +kerning first=256 second=351 amount=-1 +kerning first=201 second=206 amount=-1 +kerning first=269 second=254 amount=-1 +kerning first=370 second=251 amount=-1 +kerning first=220 second=351 amount=-1 +kerning first=313 second=69 amount=-1 +kerning first=339 second=112 amount=-1 +kerning first=1105 second=1103 amount=-1 +kerning first=98 second=121 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=102 second=277 amount=-1 +kerning first=365 second=367 amount=-1 +kerning first=101 second=261 amount=-1 +kerning first=257 second=367 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=374 second=114 amount=-1 +kerning first=201 second=117 amount=-1 +kerning first=381 second=206 amount=-1 +kerning first=82 second=83 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=221 second=79 amount=-1 +kerning first=264 second=199 amount=-2 +kerning first=221 second=367 amount=-1 +kerning first=71 second=72 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=73 second=336 amount=-1 +kerning first=187 second=83 amount=-2 +kerning first=328 second=351 amount=-1 +kerning first=381 second=117 amount=-1 +kerning first=212 second=72 amount=-1 +kerning first=338 second=374 amount=-1 +kerning first=76 second=251 amount=-1 +kerning first=8222 second=356 amount=-3 +kerning first=87 second=67 amount=-1 +kerning first=214 second=76 amount=-1 +kerning first=339 second=255 amount=-1 +kerning first=284 second=72 amount=-1 +kerning first=266 second=374 amount=-1 +kerning first=347 second=121 amount=-1 +kerning first=364 second=351 amount=-1 +kerning first=211 second=344 amount=-1 +kerning first=317 second=318 amount=-1 +kerning first=287 second=240 amount=-1 +kerning first=266 second=86 amount=-1 +kerning first=365 second=107 amount=-1 +kerning first=87 second=171 amount=-3 +kerning first=1051 second=1089 amount=-1 +kerning first=323 second=240 amount=-1 +kerning first=8249 second=89 amount=-2 +kerning first=325 second=216 amount=-1 +kerning first=194 second=86 amount=-3 +kerning first=1027 second=1088 amount=-1 +kerning first=192 second=171 amount=-2 +kerning first=278 second=261 amount=-1 +kerning first=76 second=216 amount=-1 +kerning first=335 second=382 amount=-1 +kerning first=314 second=261 amount=-1 +kerning first=371 second=382 amount=-1 +kerning first=382 second=337 amount=-1 +kerning first=350 second=261 amount=-1 +kerning first=338 second=86 amount=-1 +kerning first=217 second=216 amount=-1 +kerning first=310 second=337 amount=-1 +kerning first=1036 second=1095 amount=-2 +kerning first=280 second=209 amount=-1 +kerning first=291 second=229 amount=-1 +kerning first=1006 second=995 amount=-1 +kerning first=1006 second=996 amount=-1 +kerning first=1006 second=1005 amount=-1 +kerning first=1006 second=1006 amount=-1 +kerning first=208 second=209 amount=-1 +kerning first=81 second=221 amount=-1 +kerning first=1056 second=1024 amount=-1 +kerning first=1024 second=1025 amount=-1 +kerning first=1054 second=1030 amount=-1 +kerning first=1060 second=1031 amount=-1 +kerning first=1070 second=1033 amount=-1 +kerning first=1054 second=1034 amount=-1 +kerning first=1060 second=1036 amount=-1 +kerning first=1056 second=1037 amount=-1 +kerning first=1036 second=1038 amount=-1 +kerning first=1056 second=1039 amount=-1 +kerning first=1070 second=1040 amount=-2 +kerning first=1054 second=1041 amount=-1 +kerning first=1060 second=1042 amount=-1 +kerning first=1054 second=1043 amount=-1 +kerning first=1054 second=1045 amount=-1 +kerning first=1036 second=1047 amount=-1 +kerning first=1060 second=1048 amount=-1 +kerning first=1054 second=1049 amount=-1 +kerning first=1070 second=1050 amount=-1 +kerning first=1058 second=1051 amount=-2 +kerning first=1024 second=1052 amount=-1 +kerning first=1070 second=1053 amount=-1 +kerning first=1064 second=1054 amount=-1 +kerning first=1060 second=1055 amount=-1 +kerning first=1056 second=1056 amount=-1 +kerning first=1046 second=1057 amount=-2 +kerning first=1050 second=1058 amount=-1 +kerning first=1040 second=1059 amount=-2 +kerning first=1058 second=1060 amount=-1 +kerning first=1054 second=1062 amount=-1 +kerning first=1036 second=1063 amount=-2 +kerning first=1042 second=1064 amount=-1 +kerning first=1054 second=1065 amount=-1 +kerning first=1070 second=1067 amount=-1 +kerning first=1056 second=1070 amount=-1 +kerning first=1050 second=1072 amount=-1 +kerning first=1036 second=1073 amount=-1 +kerning first=1058 second=1074 amount=-1 +kerning first=1114 second=1075 amount=-1 +kerning first=1098 second=1076 amount=-1 +kerning first=1036 second=1077 amount=-1 +kerning first=1024 second=1078 amount=-1 +kerning first=1040 second=1079 amount=-1 +kerning first=1058 second=1080 amount=-1 +kerning first=1038 second=1081 amount=-2 +kerning first=363 second=249 amount=-1 +kerning first=1118 second=1083 amount=-1 +kerning first=1058 second=1084 amount=-1 +kerning first=1038 second=1085 amount=-2 +kerning first=1036 second=1086 amount=-1 +kerning first=1058 second=1087 amount=-1 +kerning first=1038 second=1088 amount=-2 +kerning first=232 second=120 amount=-1 +kerning first=1040 second=1090 amount=-1 +kerning first=1046 second=1091 amount=-1 +kerning first=1056 second=1092 amount=-1 +kerning first=1038 second=1093 amount=-2 +kerning first=1058 second=1094 amount=-1 +kerning first=374 second=65 amount=-3 +kerning first=1038 second=1096 amount=-2 +kerning first=1038 second=1097 amount=-2 +kerning first=1036 second=1098 amount=-1 +kerning first=1058 second=1099 amount=-1 +kerning first=1038 second=1100 amount=-2 +kerning first=1040 second=1101 amount=-1 +kerning first=1058 second=1102 amount=-1 +kerning first=1058 second=1103 amount=-2 +kerning first=1036 second=1104 amount=-1 +kerning first=1118 second=1105 amount=-1 +kerning first=1058 second=1107 amount=-1 +kerning first=1040 second=1108 amount=-1 +kerning first=196 second=350 amount=-2 +kerning first=39 second=1111 amount=1 +kerning first=1118 second=1113 amount=-1 +kerning first=1038 second=1114 amount=-2 +kerning first=84 second=207 amount=-1 +kerning first=1038 second=1116 amount=-2 +kerning first=1114 second=1117 amount=-1 +kerning first=1116 second=1118 amount=-1 +kerning first=1038 second=1119 amount=-2 +kerning first=287 second=335 amount=-1 +kerning first=291 second=339 amount=-1 +kerning first=1025 second=1056 amount=-1 +kerning first=1047 second=1050 amount=-1 +kerning first=380 second=246 amount=-1 +kerning first=109 second=252 amount=-1 +kerning first=211 second=201 amount=-1 +kerning first=356 second=44 amount=-3 +kerning first=376 second=350 amount=-2 +kerning first=336 second=227 amount=-1 +kerning first=1108 second=1095 amount=-1 +kerning first=268 second=350 amount=-1 +kerning first=1050 second=1101 amount=-1 +kerning first=250 second=252 amount=-1 +kerning first=304 second=350 amount=-1 +kerning first=1100 second=1076 amount=-1 +kerning first=327 second=103 amount=-1 +kerning first=279 second=305 amount=-1 +kerning first=369 second=291 amount=-1 +kerning first=268 second=90 amount=-1 +kerning first=210 second=356 amount=-1 +kerning first=291 second=103 amount=-1 +kerning first=333 second=291 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=376 second=90 amount=-1 +kerning first=255 second=103 amount=-2 +kerning first=259 second=371 amount=-1 +kerning first=351 second=305 amount=-1 +kerning first=218 second=260 amount=-2 +kerning first=263 second=382 amount=-1 +kerning first=221 second=323 amount=-1 +kerning first=8250 second=253 amount=-2 +kerning first=8217 second=273 amount=-2 +kerning first=219 second=103 amount=-2 +kerning first=315 second=305 amount=-1 +kerning first=87 second=227 amount=-2 +kerning first=211 second=84 amount=-1 +kerning first=233 second=226 amount=-1 +kerning first=290 second=260 amount=-1 +kerning first=225 second=291 amount=-1 +kerning first=315 second=45 amount=-1 +kerning first=114 second=103 amount=-1 +kerning first=269 second=226 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=362 second=260 amount=-2 +kerning first=86 second=382 amount=-2 +kerning first=120 second=291 amount=-1 +kerning first=122 second=382 amount=-1 +kerning first=84 second=291 amount=-2 +kerning first=351 second=45 amount=-1 +kerning first=8218 second=116 amount=-1 +kerning first=354 second=213 amount=-1 +kerning first=77 second=115 amount=-1 +kerning first=201 second=89 amount=-1 +kerning first=99 second=109 amount=-1 +kerning first=323 second=212 amount=-1 +kerning first=218 second=115 amount=-1 +kerning first=254 second=115 amount=-1 +kerning first=377 second=78 amount=-1 +kerning first=113 second=115 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=337 second=187 amount=-1 +kerning first=315 second=193 amount=-1 +kerning first=248 second=44 amount=-2 +kerning first=362 second=115 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=381 second=89 amount=-1 +kerning first=364 second=268 amount=-1 +kerning first=362 second=232 amount=-1 +kerning first=69 second=213 amount=-1 +kerning first=284 second=44 amount=-1 +kerning first=326 second=115 amount=-1 +kerning first=69 second=353 amount=-1 +kerning first=368 second=303 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=113 second=232 amount=-1 +kerning first=8250 second=105 amount=-1 +kerning first=282 second=213 amount=-1 +kerning first=218 second=232 amount=-1 +kerning first=250 second=104 amount=-1 +kerning first=201 second=352 amount=-1 +kerning first=105 second=328 amount=-1 +kerning first=83 second=303 amount=-1 +kerning first=229 second=98 amount=-1 +kerning first=8250 second=77 amount=-3 +kerning first=376 second=118 amount=-1 +kerning first=119 second=303 amount=-1 +kerning first=324 second=8249 amount=-1 +kerning first=214 second=280 amount=-1 +kerning first=315 second=73 amount=-1 +kerning first=88 second=98 amount=-1 +kerning first=275 second=228 amount=-1 +kerning first=268 second=118 amount=-1 +kerning first=280 second=120 amount=-1 +kerning first=310 second=291 amount=-1 +kerning first=1054 second=1025 amount=-1 +kerning first=286 second=280 amount=-1 +kerning first=232 second=118 amount=-1 +kerning first=316 second=120 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=344 second=44 amount=-1 +kerning first=66 second=73 amount=-2 +kerning first=193 second=98 amount=-1 +kerning first=352 second=120 amount=-1 +kerning first=120 second=235 amount=-1 +kerning first=304 second=118 amount=-1 +kerning first=87 second=370 amount=-1 +kerning first=1050 second=1073 amount=-1 +kerning first=344 second=218 amount=-1 +kerning first=196 second=118 amount=-2 +kerning first=221 second=283 amount=-2 +kerning first=192 second=370 amount=-2 +kerning first=316 second=261 amount=-1 +kerning first=1064 second=1104 amount=-1 +kerning first=316 second=371 amount=-1 +kerning first=282 second=241 amount=-1 +kerning first=8220 second=352 amount=-1 +kerning first=264 second=370 amount=-1 +kerning first=66 second=193 amount=-3 +kerning first=80 second=196 amount=-2 +kerning first=262 second=284 amount=-2 +kerning first=354 second=241 amount=-1 +kerning first=336 second=370 amount=-1 +kerning first=203 second=325 amount=-1 +kerning first=195 second=362 amount=-2 +kerning first=196 second=266 amount=-1 +kerning first=105 second=241 amount=-1 +kerning first=106 second=112 amount=-1 +kerning first=379 second=286 amount=-1 +kerning first=69 second=241 amount=-1 +kerning first=199 second=314 amount=-1 +kerning first=1046 second=1090 amount=-1 +kerning first=111 second=8221 amount=-1 +kerning first=199 second=286 amount=-2 +kerning first=368 second=331 amount=-1 +kerning first=235 second=314 amount=-1 +kerning first=282 second=356 amount=-1 +kerning first=307 second=314 amount=-1 +kerning first=288 second=8221 amount=-1 +kerning first=204 second=81 amount=-1 +kerning first=203 second=210 amount=-1 +kerning first=324 second=8221 amount=-2 +kerning first=8220 second=324 amount=-1 +kerning first=258 second=67 amount=-1 +kerning first=216 second=8221 amount=-1 +kerning first=377 second=250 amount=-1 +kerning first=119 second=331 amount=-1 +kerning first=252 second=8221 amount=-2 +kerning first=73 second=252 amount=-1 +kerning first=228 second=255 amount=-1 +kerning first=171 second=221 amount=-2 +kerning first=221 second=224 amount=-2 +kerning first=192 second=255 amount=-1 +kerning first=354 second=269 amount=-2 +kerning first=283 second=112 amount=-1 +kerning first=376 second=266 amount=-1 +kerning first=83 second=331 amount=-1 +kerning first=364 second=196 amount=-2 +kerning first=66 second=221 amount=-2 +kerning first=268 second=266 amount=-2 +kerning first=87 second=255 amount=-1 +kerning first=304 second=266 amount=-1 +kerning first=263 second=326 amount=-1 +kerning first=274 second=250 amount=-1 +kerning first=76 second=289 amount=-1 +kerning first=261 second=347 amount=-1 +kerning first=261 second=318 amount=-1 +kerning first=346 second=250 amount=-1 +kerning first=120 second=378 amount=-1 +kerning first=371 second=326 amount=-1 +kerning first=310 second=250 amount=-1 +kerning first=84 second=378 amount=-2 +kerning first=207 second=101 amount=-1 +kerning first=267 second=273 amount=-1 +kerning first=324 second=371 amount=-1 +kerning first=84 second=347 amount=-2 +kerning first=76 second=328 amount=-1 +kerning first=89 second=231 amount=-2 +kerning first=255 second=307 amount=-1 +kerning first=211 second=257 amount=-1 +kerning first=369 second=378 amount=-1 +kerning first=1082 second=1118 amount=-1 +kerning first=87 second=283 amount=-2 +kerning first=289 second=328 amount=-1 +kerning first=333 second=378 amount=-1 +kerning first=1105 second=1076 amount=-1 +kerning first=1040 second=1047 amount=-1 +kerning first=253 second=328 amount=-1 +kerning first=197 second=366 amount=-2 +kerning first=106 second=257 amount=-1 +kerning first=365 second=8220 amount=-2 +kerning first=70 second=288 amount=-1 +kerning first=217 second=328 amount=-1 +kerning first=252 second=371 amount=-1 +kerning first=321 second=212 amount=-1 +kerning first=272 second=302 amount=-1 +kerning first=264 second=283 amount=-1 +kerning first=70 second=257 amount=-1 +kerning first=257 second=8220 amount=-1 +kerning first=200 second=302 amount=-1 +kerning first=369 second=347 amount=-1 +kerning first=192 second=283 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=333 second=347 amount=-1 +kerning first=218 second=338 amount=-1 +kerning first=290 second=87 amount=-1 +kerning first=305 second=106 amount=-1 +kerning first=44 second=8220 amount=-3 +kerning first=258 second=243 amount=-1 +kerning first=380 second=333 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=288 second=80 amount=-1 +kerning first=344 second=333 amount=-1 +kerning first=233 second=229 amount=-1 +kerning first=376 second=210 amount=-1 +kerning first=69 second=68 amount=-1 +kerning first=199 second=113 amount=-1 +kerning first=304 second=210 amount=-1 +kerning first=89 second=262 amount=-1 +kerning first=291 second=307 amount=-1 +kerning first=103 second=120 amount=-1 +kerning first=268 second=210 amount=-2 +kerning first=193 second=87 amount=-3 +kerning first=377 second=198 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=363 second=307 amount=-1 +kerning first=208 second=120 amount=-1 +kerning first=379 second=216 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=75 second=368 amount=-1 +kerning first=244 second=120 amount=-1 +kerning first=365 second=255 amount=-1 +kerning first=288 second=368 amount=-1 +kerning first=266 second=262 amount=-2 +kerning first=1092 second=1113 amount=-1 +kerning first=302 second=262 amount=-1 +kerning first=310 second=281 amount=-1 +kerning first=8250 second=225 amount=-1 +kerning first=330 second=243 amount=-1 +kerning first=1056 second=1113 amount=-1 +kerning first=216 second=368 amount=-1 +kerning first=338 second=262 amount=-1 +kerning first=257 second=255 amount=-1 +kerning first=366 second=243 amount=-1 +kerning first=374 second=262 amount=-1 +kerning first=86 second=323 amount=-1 +kerning first=221 second=255 amount=-1 +kerning first=219 second=279 amount=-1 +kerning first=106 second=229 amount=-1 +kerning first=119 second=99 amount=-1 +kerning first=365 second=227 amount=-1 +kerning first=352 second=324 amount=-1 +kerning first=272 second=274 amount=-1 +kerning first=89 second=234 amount=-2 +kerning first=291 second=279 amount=-1 +kerning first=1057 second=1101 amount=-1 +kerning first=255 second=279 amount=-1 +kerning first=70 second=229 amount=-1 +kerning first=200 second=274 amount=-1 +kerning first=1093 second=1101 amount=-1 +kerning first=283 second=229 amount=-1 +kerning first=291 second=44 amount=-2 +kerning first=296 second=99 amount=-1 +kerning first=377 second=369 amount=-1 +kerning first=202 second=278 amount=-1 +kerning first=255 second=44 amount=-3 +kerning first=260 second=99 amount=-1 +kerning first=211 second=229 amount=-1 +kerning first=108 second=233 amount=-1 +kerning first=363 second=44 amount=-1 +kerning first=368 second=99 amount=-1 +kerning first=78 second=279 amount=-1 +kerning first=280 second=324 amount=-1 +kerning first=72 second=233 amount=-1 +kerning first=327 second=44 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=254 second=382 amount=-1 +kerning first=371 second=267 amount=-1 +kerning first=374 second=234 amount=-2 +kerning first=346 second=278 amount=-1 +kerning first=370 second=223 amount=-1 +kerning first=212 second=330 amount=-1 +kerning first=194 second=234 amount=-1 +kerning first=233 second=106 amount=-1 +kerning first=221 second=227 amount=-2 +kerning first=327 second=279 amount=-1 +kerning first=269 second=106 amount=-1 +kerning first=266 second=234 amount=-1 +kerning first=81 second=97 amount=-1 +kerning first=379 second=317 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=217 second=81 amount=-1 +kerning first=302 second=234 amount=-1 +kerning first=70 second=281 amount=-1 +kerning first=86 second=66 amount=-1 +kerning first=106 second=316 amount=-1 +kerning first=321 second=264 amount=-1 +kerning first=366 second=212 amount=-1 +kerning first=344 second=361 amount=-1 +kerning first=199 second=110 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=86 second=267 amount=-2 +kerning first=235 second=110 amount=-1 +kerning first=330 second=212 amount=-1 +kerning first=8250 second=194 amount=-2 +kerning first=380 second=361 amount=-1 +kerning first=69 second=65 amount=-1 +kerning first=338 second=112 amount=-1 +kerning first=283 second=316 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=216 second=205 amount=-1 +kerning first=258 second=212 amount=-1 +kerning first=263 second=267 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=379 second=110 amount=-1 +kerning first=283 second=257 amount=-1 +kerning first=122 second=267 amount=-1 +kerning first=210 second=65 amount=-2 +kerning first=114 second=44 amount=-2 +kerning first=72 second=266 amount=-1 +kerning first=282 second=65 amount=-1 +kerning first=280 second=89 amount=-1 +kerning first=315 second=104 amount=-1 +kerning first=8216 second=109 amount=-1 +kerning first=286 second=364 amount=-1 +kerning first=354 second=65 amount=-3 +kerning first=352 second=89 amount=-1 +kerning first=243 second=104 amount=-1 +kerning first=335 second=8217 amount=-1 +kerning first=200 second=361 amount=-1 +kerning first=382 second=250 amount=-1 +kerning first=321 second=205 amount=-1 +kerning first=236 second=361 amount=-1 +kerning first=310 second=46 amount=-1 +kerning first=277 second=97 amount=-1 +kerning first=263 second=122 amount=-1 +kerning first=346 second=46 amount=-2 +kerning first=376 second=121 amount=-1 +kerning first=296 second=71 amount=-1 +kerning first=352 second=117 amount=-1 +kerning first=382 second=46 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=304 second=121 amount=-1 +kerning first=368 second=71 amount=-1 +kerning first=8216 second=84 amount=-1 +kerning first=66 second=76 amount=-2 +kerning first=346 second=225 amount=-1 +kerning first=202 second=46 amount=-1 +kerning first=232 second=121 amount=-1 +kerning first=382 second=225 amount=-1 +kerning first=371 second=122 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=260 second=71 amount=-1 +kerning first=83 second=102 amount=-1 +kerning first=335 second=122 amount=-1 +kerning first=274 second=46 amount=-1 +kerning first=67 second=377 amount=-1 +kerning first=280 second=377 amount=-1 +kerning first=1059 second=1108 amount=-2 +kerning first=67 second=117 amount=-1 +kerning first=90 second=90 amount=-1 +kerning first=366 second=240 amount=-1 +kerning first=208 second=377 amount=-1 +kerning first=97 second=46 amount=-1 +kerning first=78 second=332 amount=-1 +kerning first=332 second=219 amount=-1 +kerning first=103 second=117 amount=-1 +kerning first=374 second=290 amount=-1 +kerning first=122 second=122 amount=-1 +kerning first=87 second=267 amount=-2 +kerning first=219 second=332 amount=-1 +kerning first=1059 second=1077 amount=-2 +kerning first=288 second=200 amount=-1 +kerning first=86 second=122 amount=-2 +kerning first=78 second=363 amount=-1 +kerning first=260 second=219 amount=-2 +kerning first=368 second=102 amount=-1 +kerning first=315 second=76 amount=-1 +kerning first=352 second=377 amount=-1 +kerning first=89 second=287 amount=-2 +kerning first=316 second=117 amount=-1 +kerning first=216 second=200 amount=-1 +kerning first=350 second=381 amount=-1 +kerning first=280 second=117 amount=-1 +kerning first=231 second=44 amount=-1 +kerning first=377 second=310 amount=-1 +kerning first=194 second=287 amount=-1 +kerning first=302 second=83 amount=-1 +kerning first=205 second=214 amount=-1 +kerning first=374 second=259 amount=-2 +kerning first=327 second=332 amount=-1 +kerning first=313 second=214 amount=-1 +kerning first=266 second=287 amount=-1 +kerning first=230 second=287 amount=-1 +kerning first=266 second=259 amount=-1 +kerning first=205 second=242 amount=-1 +kerning first=338 second=287 amount=-1 +kerning first=330 second=240 amount=-1 +kerning first=230 second=259 amount=-1 +kerning first=302 second=287 amount=-1 +kerning first=86 second=298 amount=-1 +kerning first=338 second=259 amount=-1 +kerning first=258 second=240 amount=-1 +kerning first=302 second=259 amount=-1 +kerning first=374 second=287 amount=-2 +kerning first=344 second=8217 amount=-3 +kerning first=196 second=8220 amount=-3 +kerning first=109 second=8221 amount=-2 +kerning first=200 second=330 amount=-1 +kerning first=233 second=369 amount=-1 +kerning first=284 second=8249 amount=-1 +kerning first=248 second=8250 amount=-1 +kerning first=346 second=77 amount=-1 +kerning first=216 second=197 amount=-2 +kerning first=346 second=194 amount=-2 +kerning first=333 second=375 amount=-1 +kerning first=305 second=369 amount=-1 +kerning first=103 second=324 amount=-1 +kerning first=288 second=197 amount=-1 +kerning first=274 second=194 amount=-1 +kerning first=86 second=119 amount=-1 +kerning first=122 second=119 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=253 second=110 amount=-1 +kerning first=108 second=116 amount=-1 +kerning first=202 second=194 amount=-1 +kerning first=227 second=119 amount=-1 +kerning first=288 second=228 amount=-1 +kerning first=310 second=253 amount=-2 +kerning first=263 second=119 amount=-1 +kerning first=266 second=203 amount=-1 +kerning first=253 second=234 amount=-1 +kerning first=1098 second=1100 amount=-1 +kerning first=346 second=253 amount=-1 +kerning first=327 second=248 amount=-1 +kerning first=216 second=228 amount=-1 +kerning first=382 second=253 amount=-1 +kerning first=335 second=119 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=202 second=74 amount=-1 +kerning first=78 second=100 amount=-1 +kerning first=377 second=223 amount=-1 +kerning first=371 second=119 amount=-1 +kerning first=255 second=248 amount=-1 +kerning first=45 second=355 amount=-1 +kerning first=261 second=375 amount=-1 +kerning first=89 second=203 amount=-1 +kerning first=274 second=74 amount=-1 +kerning first=75 second=228 amount=-1 +kerning first=330 second=268 amount=-1 +kerning first=8250 second=250 amount=-1 +kerning first=1059 second=1080 amount=-2 +kerning first=225 second=375 amount=-1 +kerning first=219 second=248 amount=-1 +kerning first=346 second=74 amount=-1 +kerning first=282 second=68 amount=-1 +kerning first=210 second=68 amount=-1 +kerning first=379 second=113 amount=-1 +kerning first=375 second=103 amount=-2 +kerning first=216 second=80 amount=-1 +kerning first=258 second=268 amount=-1 +kerning first=374 second=203 amount=-1 +kerning first=354 second=68 amount=-1 +kerning first=211 second=313 amount=-1 +kerning first=338 second=203 amount=-1 +kerning first=252 second=108 amount=-1 +kerning first=219 second=363 amount=-1 +kerning first=86 second=270 amount=-1 +kerning first=288 second=315 amount=-1 +kerning first=8250 second=365 amount=-1 +kerning first=266 second=290 amount=-2 +kerning first=1051 second=1086 amount=-1 +kerning first=302 second=290 amount=-1 +kerning first=324 second=108 amount=-1 +kerning first=291 second=363 amount=-1 +kerning first=338 second=290 amount=-1 +kerning first=327 second=363 amount=-1 +kerning first=255 second=335 amount=-1 +kerning first=194 second=318 amount=-1 +kerning first=346 second=105 amount=-1 +kerning first=291 second=335 amount=-1 +kerning first=199 second=85 amount=-1 +kerning first=230 second=318 amount=-1 +kerning first=382 second=105 amount=-1 +kerning first=327 second=335 amount=-1 +kerning first=266 second=318 amount=-1 +kerning first=216 second=315 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=353 second=237 amount=-1 +kerning first=1070 second=1063 amount=-1 +kerning first=44 second=8217 amount=-3 +kerning first=78 second=335 amount=-1 +kerning first=280 second=380 amount=-1 +kerning first=338 second=318 amount=-1 +kerning first=202 second=225 amount=-1 +kerning first=316 second=380 amount=-1 +kerning first=99 second=45 amount=-1 +kerning first=374 second=231 amount=-2 +kerning first=81 second=296 amount=-1 +kerning first=282 second=198 amount=-1 +kerning first=377 second=338 amount=-1 +kerning first=266 second=231 amount=-1 +kerning first=274 second=225 amount=-1 +kerning first=219 second=335 amount=-1 +kerning first=302 second=231 amount=-1 +kerning first=310 second=225 amount=-1 +kerning first=362 second=192 amount=-2 +kerning first=103 second=380 amount=-1 +kerning first=75 second=108 amount=-1 +kerning first=257 second=8217 amount=-1 +kerning first=208 second=380 amount=-1 +kerning first=222 second=296 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=197 second=338 amount=-1 +kerning first=365 second=8217 amount=-2 +kerning first=8250 second=278 amount=-3 +kerning first=252 second=225 amount=-1 +kerning first=376 second=325 amount=-1 +kerning first=353 second=228 amount=-1 +kerning first=288 second=225 amount=-1 +kerning first=77 second=235 amount=-1 +kerning first=8250 second=80 amount=-3 +kerning first=233 second=251 amount=-1 +kerning first=278 second=104 amount=-1 +kerning first=113 second=235 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=281 second=228 amount=-1 +kerning first=315 second=280 amount=-1 +kerning first=305 second=251 amount=-1 +kerning first=75 second=225 amount=-1 +kerning first=218 second=235 amount=-1 +kerning first=90 second=303 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=269 second=251 amount=-1 +kerning first=378 second=273 amount=-1 +kerning first=209 second=228 amount=-1 +kerning first=208 second=206 amount=-1 +kerning first=377 second=251 amount=-1 +kerning first=263 second=103 amount=-1 +kerning first=313 second=270 amount=-1 +kerning first=69 second=171 amount=-1 +kerning first=216 second=225 amount=-1 +kerning first=1024 second=1093 amount=-1 +kerning first=258 second=98 amount=-1 +kerning first=280 second=206 amount=-1 +kerning first=88 second=355 amount=-1 +kerning first=202 second=102 amount=-1 +kerning first=100 second=45 amount=-1 +kerning first=352 second=206 amount=-1 +kerning first=274 second=102 amount=-1 +kerning first=332 second=46 amount=-1 +kerning first=368 second=46 amount=-3 +kerning first=8250 second=219 amount=-2 +kerning first=89 second=83 amount=-2 +kerning first=376 second=263 amount=-2 +kerning first=268 second=325 amount=-1 +kerning first=66 second=280 amount=-2 +kerning first=119 second=46 amount=-3 +kerning first=193 second=355 amount=-1 +kerning first=1114 second=1107 amount=-1 +kerning first=194 second=83 amount=-2 +kerning first=99 second=8249 amount=-1 +kerning first=224 second=46 amount=-1 +kerning first=8217 second=248 amount=-2 +kerning first=187 second=318 amount=-1 +kerning first=266 second=83 amount=-1 +kerning first=356 second=363 amount=-1 +kerning first=224 second=8221 amount=-1 +kerning first=75 second=289 amount=-1 +kerning first=240 second=112 amount=-1 +kerning first=74 second=67 amount=-1 +kerning first=223 second=318 amount=-1 +kerning first=200 second=221 amount=-1 +kerning first=281 second=8217 amount=-1 +kerning first=204 second=112 amount=-1 +kerning first=259 second=318 amount=-1 +kerning first=338 second=83 amount=-1 +kerning first=295 second=318 amount=-1 +kerning first=374 second=83 amount=-2 +kerning first=346 second=102 amount=-1 +kerning first=99 second=112 amount=-1 +kerning first=331 second=318 amount=-1 +kerning first=382 second=102 amount=-1 +kerning first=367 second=318 amount=-1 +kerning first=84 second=266 amount=-1 +kerning first=250 second=311 amount=-1 +kerning first=202 second=84 amount=-1 +kerning first=339 second=105 amount=-1 +kerning first=362 second=235 amount=-1 +kerning first=45 second=98 amount=-1 +kerning first=76 second=304 amount=-1 +kerning first=375 second=105 amount=-1 +kerning first=267 second=105 amount=-1 +kerning first=117 second=98 amount=-1 +kerning first=303 second=105 amount=-1 +kerning first=323 second=67 amount=-1 +kerning first=70 second=81 amount=-1 +kerning first=216 second=259 amount=-1 +kerning first=231 second=105 amount=-1 +kerning first=344 second=221 amount=-1 +kerning first=90 second=105 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=288 second=259 amount=-1 +kerning first=252 second=259 amount=-1 +kerning first=272 second=221 amount=-1 +kerning first=80 second=240 amount=-1 +kerning first=264 second=230 amount=-1 +kerning first=1050 second=1098 amount=-1 +kerning first=302 second=283 amount=-1 +kerning first=1054 second=1050 amount=-1 +kerning first=335 second=104 amount=-1 +kerning first=98 second=351 amount=-1 +kerning first=201 second=346 amount=-1 +kerning first=354 second=290 amount=-1 +kerning first=250 second=249 amount=-1 +kerning first=84 second=204 amount=-1 +kerning first=1043 second=1095 amount=-1 +kerning first=203 second=350 amount=-1 +kerning first=379 second=171 amount=-1 +kerning first=87 second=230 amount=-2 +kerning first=213 second=379 amount=-1 +kerning first=325 second=275 amount=-1 +kerning first=1025 second=1053 amount=-1 +kerning first=205 second=100 amount=-1 +kerning first=321 second=379 amount=-1 +kerning first=217 second=275 amount=-1 +kerning first=253 second=275 amount=-1 +kerning first=1113 second=1091 amount=-1 +kerning first=187 second=256 amount=-2 +kerning first=381 second=86 amount=-1 +kerning first=250 second=107 amount=-1 +kerning first=264 second=339 amount=-1 +kerning first=109 second=249 amount=-1 +kerning first=198 second=211 amount=-1 +kerning first=84 second=260 amount=-3 +kerning first=255 second=223 amount=-1 +kerning first=336 second=230 amount=-1 +kerning first=219 second=223 amount=-1 +kerning first=73 second=249 amount=-1 +kerning first=377 second=313 amount=-1 +kerning first=351 second=8217 amount=-1 +kerning first=356 second=192 amount=-3 +kerning first=196 second=263 amount=-1 +kerning first=231 second=365 amount=-1 +kerning first=118 second=114 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=187 second=114 amount=-1 +kerning first=280 second=268 amount=-1 +kerning first=284 second=192 amount=-1 +kerning first=268 second=263 amount=-1 +kerning first=304 second=263 amount=-1 +kerning first=90 second=365 amount=-1 +kerning first=212 second=192 amount=-2 +kerning first=354 second=353 amount=-2 +kerning first=381 second=237 amount=-1 +kerning first=243 second=8217 amount=-1 +kerning first=354 second=244 amount=-2 +kerning first=66 second=218 amount=-2 +kerning first=192 second=339 amount=-1 +kerning first=221 second=199 amount=-1 +kerning first=279 second=8217 amount=-1 +kerning first=67 second=268 amount=-2 +kerning first=204 second=118 amount=-1 +kerning first=315 second=8217 amount=-2 +kerning first=71 second=192 amount=-1 +kerning first=87 second=339 amount=-2 +kerning first=260 second=334 amount=-1 +kerning first=1059 second=1105 amount=-2 +kerning first=266 second=315 amount=-1 +kerning first=246 second=353 amount=-1 +kerning first=334 second=282 amount=-1 +kerning first=374 second=315 amount=-1 +kerning first=282 second=353 amount=-1 +kerning first=338 second=315 amount=-1 +kerning first=296 second=334 amount=-1 +kerning first=262 second=282 amount=-1 +kerning first=199 second=289 amount=-1 +kerning first=89 second=315 amount=-1 +kerning first=339 second=365 amount=-1 +kerning first=1055 second=1072 amount=-1 +kerning first=303 second=365 amount=-1 +kerning first=109 second=291 amount=-1 +kerning first=307 second=289 amount=-1 +kerning first=8250 second=74 amount=-2 +kerning first=1042 second=1051 amount=-1 +kerning first=230 second=371 amount=-1 +kerning first=233 second=257 amount=-1 +kerning first=86 second=351 amount=-2 +kerning first=118 second=345 amount=-1 +kerning first=344 second=277 amount=-1 +kerning first=353 second=8249 amount=-1 +kerning first=350 second=202 amount=-1 +kerning first=90 second=99 amount=-1 +kerning first=284 second=346 amount=-1 +kerning first=222 second=302 amount=-1 +kerning first=231 second=99 amount=-1 +kerning first=278 second=202 amount=-1 +kerning first=195 second=99 amount=-1 +kerning first=283 second=347 amount=-1 +kerning first=317 second=8249 amount=-1 +kerning first=268 second=381 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=335 second=351 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=376 second=381 amount=-1 +kerning first=207 second=336 amount=-1 +kerning first=87 second=79 amount=-1 +kerning first=280 second=212 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=371 second=351 amount=-1 +kerning first=378 second=267 amount=-1 +kerning first=377 second=269 amount=-1 +kerning first=198 second=69 amount=-1 +kerning first=286 second=367 amount=-1 +kerning first=314 second=371 amount=-1 +kerning first=315 second=336 amount=-1 +kerning first=307 second=110 amount=-1 +kerning first=122 second=351 amount=-1 +kerning first=313 second=80 amount=-1 +kerning first=67 second=212 amount=-2 +kerning first=269 second=257 amount=-1 +kerning first=1024 second=1059 amount=-1 +kerning first=263 second=351 amount=-1 +kerning first=264 second=79 amount=-2 +kerning first=227 second=351 amount=-1 +kerning first=73 second=367 amount=-1 +kerning first=218 second=291 amount=-2 +kerning first=109 second=367 amount=-1 +kerning first=378 second=382 amount=-1 +kerning first=1046 second=1059 amount=-1 +kerning first=77 second=291 amount=-1 +kerning first=1062 second=1047 amount=-1 +kerning first=198 second=382 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=85 second=226 amount=-2 +kerning first=287 second=271 amount=-1 +kerning first=199 second=99 amount=-1 +kerning first=234 second=382 amount=-1 +kerning first=334 second=209 amount=-1 +kerning first=65 second=314 amount=-1 +kerning first=1063 second=1057 amount=-1 +kerning first=86 second=229 amount=-2 +kerning first=121 second=226 amount=-2 +kerning first=213 second=261 amount=-1 +kerning first=209 second=337 amount=-1 +kerning first=1027 second=1057 amount=-1 +kerning first=249 second=261 amount=-1 +kerning first=1051 second=1092 amount=-1 +kerning first=1071 second=1104 amount=-1 +kerning first=313 second=326 amount=-1 +kerning first=278 second=314 amount=-1 +kerning first=8218 second=255 amount=-1 +kerning first=81 second=302 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=242 second=314 amount=-1 +kerning first=229 second=361 amount=-1 +kerning first=307 second=171 amount=-1 +kerning first=350 second=314 amount=-1 +kerning first=338 second=361 amount=-1 +kerning first=46 second=8221 amount=-3 +kerning first=193 second=361 amount=-1 +kerning first=106 second=347 amount=-1 +kerning first=314 second=314 amount=-1 +kerning first=82 second=8221 amount=-3 +kerning first=99 second=316 amount=-1 +kerning first=70 second=347 amount=-1 +kerning first=253 second=269 amount=-1 +kerning first=1057 second=1076 amount=-1 +kerning first=260 second=216 amount=-1 +kerning first=87 second=224 amount=-2 +kerning first=8216 second=198 amount=-4 +kerning first=217 second=269 amount=-1 +kerning first=1114 second=1103 amount=-1 +kerning first=1024 second=1037 amount=-1 +kerning first=296 second=216 amount=-1 +kerning first=325 second=269 amount=-1 +kerning first=1060 second=1037 amount=-1 +kerning first=223 second=8221 amount=-1 +kerning first=240 second=316 amount=-1 +kerning first=277 second=326 amount=-1 +kerning first=75 second=281 amount=-1 +kerning first=289 second=269 amount=-1 +kerning first=199 second=171 amount=-2 +kerning first=259 second=8221 amount=-1 +kerning first=1054 second=1056 amount=-1 +kerning first=264 second=224 amount=-1 +kerning first=107 second=103 amount=-1 +kerning first=286 second=45 amount=-1 +kerning first=272 second=70 amount=-1 +kerning first=71 second=103 amount=-1 +kerning first=221 second=252 amount=-1 +kerning first=367 second=8221 amount=-2 +kerning first=336 second=224 amount=-1 +kerning first=257 second=252 amount=-1 +kerning first=321 second=317 amount=-1 +kerning first=235 second=227 amount=-1 +kerning first=199 second=227 amount=-1 +kerning first=73 second=101 amount=-1 +kerning first=65 second=235 amount=-1 +kerning first=346 second=362 amount=-1 +kerning first=268 second=207 amount=-1 +kerning first=213 second=317 amount=-1 +kerning first=298 second=226 amount=-1 +kerning first=73 second=45 amount=-2 +kerning first=334 second=226 amount=-1 +kerning first=203 second=90 amount=-1 +kerning first=356 second=103 amount=-2 +kerning first=376 second=207 amount=-1 +kerning first=370 second=226 amount=-2 +kerning first=193 second=246 amount=-1 +kerning first=284 second=103 amount=-1 +kerning first=326 second=291 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=203 second=356 amount=-1 +kerning first=274 second=362 amount=-1 +kerning first=84 second=350 amount=-2 +kerning first=248 second=103 amount=-1 +kerning first=88 second=246 amount=-1 +kerning first=250 second=45 amount=-1 +kerning first=310 second=362 amount=-1 +kerning first=212 second=103 amount=-1 +kerning first=254 second=291 amount=-1 +kerning first=214 second=45 amount=-1 +kerning first=365 second=104 amount=-1 +kerning first=217 second=213 amount=-1 +kerning first=266 second=89 amount=-1 +kerning first=8249 second=86 amount=-2 +kerning first=377 second=109 amount=-1 +kerning first=220 second=338 amount=-1 +kerning first=338 second=89 amount=-1 +kerning first=269 second=109 amount=-1 +kerning first=286 second=193 amount=-1 +kerning first=325 second=213 amount=-1 +kerning first=84 second=115 amount=-2 +kerning first=200 second=219 amount=-1 +kerning first=194 second=89 amount=-3 +kerning first=290 second=84 amount=-1 +kerning first=221 second=370 amount=-1 +kerning first=214 second=193 amount=-2 +kerning first=197 second=234 amount=-1 +kerning first=209 second=8249 amount=-2 +kerning first=267 second=303 amount=-1 +kerning first=225 second=115 amount=-1 +kerning first=379 second=227 amount=-1 +kerning first=303 second=303 amount=-1 +kerning first=261 second=115 amount=-1 +kerning first=104 second=8249 amount=-1 +kerning first=334 second=78 amount=-1 +kerning first=120 second=115 amount=-1 +kerning first=307 second=227 amount=-1 +kerning first=376 second=103 amount=-2 +kerning first=231 second=303 amount=-1 +kerning first=241 second=44 amount=-1 +kerning first=200 second=70 amount=-1 +kerning first=262 second=78 amount=-1 +kerning first=1027 second=1113 amount=-2 +kerning first=187 second=368 amount=-2 +kerning first=68 second=8249 amount=-1 +kerning first=8217 second=97 amount=-3 +kerning first=339 second=303 amount=-1 +kerning first=277 second=44 amount=-2 +kerning first=82 second=368 amount=-1 +kerning first=76 second=213 amount=-1 +kerning first=375 second=303 amount=-1 +kerning first=333 second=115 amount=-1 +kerning first=287 second=120 amount=-1 +kerning first=304 second=115 amount=-1 +kerning first=198 second=323 amount=-1 +kerning first=68 second=278 amount=-1 +kerning first=200 second=73 amount=-1 +kerning first=369 second=118 amount=-1 +kerning first=377 second=201 amount=-1 +kerning first=225 second=361 amount=-1 +kerning first=272 second=73 amount=-1 +kerning first=315 second=70 amount=-1 +kerning first=356 second=248 amount=-2 +kerning first=251 second=120 amount=-1 +kerning first=192 second=85 amount=-2 +kerning first=261 second=118 amount=-1 +kerning first=314 second=113 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=225 second=118 amount=-1 +kerning first=334 second=75 amount=-1 +kerning first=317 second=278 amount=-1 +kerning first=87 second=85 amount=-1 +kerning first=231 second=253 amount=-1 +kerning first=333 second=118 amount=-1 +kerning first=76 second=68 amount=-1 +kerning first=267 second=253 amount=-1 +kerning first=317 second=80 amount=-1 +kerning first=366 second=246 amount=-1 +kerning first=262 second=75 amount=-1 +kerning first=220 second=233 amount=-1 +kerning first=303 second=253 amount=-1 +kerning first=330 second=246 amount=-1 +kerning first=84 second=118 amount=-1 +kerning first=108 second=257 amount=-1 +kerning first=214 second=196 amount=-2 +kerning first=339 second=253 amount=-1 +kerning first=68 second=80 amount=-1 +kerning first=256 second=233 amount=-1 +kerning first=286 second=196 amount=-1 +kerning first=120 second=118 amount=-1 +kerning first=364 second=233 amount=-1 +kerning first=298 second=338 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=262 second=335 amount=-1 +kerning first=262 second=338 amount=-2 +kerning first=82 second=108 amount=-1 +kerning first=298 second=335 amount=-1 +kerning first=223 second=108 amount=-1 +kerning first=368 second=234 amount=-1 +kerning first=368 second=328 amount=-1 +kerning first=101 second=110 amount=-1 +kerning first=201 second=290 amount=-1 +kerning first=199 second=283 amount=-1 +kerning first=187 second=108 amount=-1 +kerning first=1060 second=1040 amount=-2 +kerning first=80 second=193 amount=-2 +kerning first=287 second=380 amount=-1 +kerning first=336 second=85 amount=-1 +kerning first=295 second=108 amount=-1 +kerning first=85 second=335 amount=-1 +kerning first=85 second=338 amount=-1 +kerning first=323 second=380 amount=-1 +kerning first=259 second=108 amount=-1 +kerning first=121 second=335 amount=-1 +kerning first=379 second=283 amount=-1 +kerning first=264 second=85 amount=-1 +kerning first=264 second=286 amount=-2 +kerning first=367 second=108 amount=-1 +kerning first=203 second=241 amount=-1 +kerning first=76 second=65 amount=-1 +kerning first=278 second=110 amount=-1 +kerning first=331 second=108 amount=-1 +kerning first=314 second=110 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=350 second=110 amount=-1 +kerning first=217 second=65 amount=-2 +kerning first=87 second=286 amount=-1 +kerning first=289 second=331 amount=-1 +kerning first=221 second=193 amount=-3 +kerning first=251 second=380 amount=-1 +kerning first=232 second=115 amount=-1 +kerning first=217 second=331 amount=-1 +kerning first=268 second=115 amount=-1 +kerning first=107 second=248 amount=-1 +kerning first=381 second=231 amount=-1 +kerning first=253 second=331 amount=-1 +kerning first=370 second=338 amount=-1 +kerning first=196 second=115 amount=-1 +kerning first=74 second=380 amount=-1 +kerning first=260 second=356 amount=-3 +kerning first=283 second=8250 amount=-1 +kerning first=295 second=371 amount=-1 +kerning first=84 second=210 amount=-1 +kerning first=198 second=326 amount=-1 +kerning first=1064 second=1073 amount=-1 +kerning first=331 second=371 amount=-1 +kerning first=250 second=255 amount=-1 +kerning first=234 second=326 amount=-1 +kerning first=362 second=347 amount=-1 +kerning first=367 second=371 amount=-1 +kerning first=278 second=205 amount=-1 +kerning first=248 second=307 amount=-1 +kerning first=326 second=347 amount=-1 +kerning first=381 second=352 amount=-1 +kerning first=267 second=250 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=109 second=255 amount=-1 +kerning first=231 second=250 amount=-1 +kerning first=254 second=347 amount=-1 +kerning first=187 second=371 amount=-1 +kerning first=73 second=255 amount=-1 +kerning first=339 second=250 amount=-1 +kerning first=218 second=347 amount=-1 +kerning first=303 second=250 amount=-1 +kerning first=1047 second=1078 amount=-1 +kerning first=268 second=378 amount=-1 +kerning first=90 second=250 amount=-1 +kerning first=232 second=378 amount=-1 +kerning first=119 second=328 amount=-1 +kerning first=83 second=328 amount=-1 +kerning first=74 second=212 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=1113 second=1097 amount=-1 +kerning first=102 second=333 amount=-1 +kerning first=1030 second=1077 amount=-1 +kerning first=86 second=44 amount=-3 +kerning first=204 second=257 amount=-1 +kerning first=89 second=267 amount=-2 +kerning first=99 second=257 amount=-1 +kerning first=356 second=347 amount=-2 +kerning first=286 second=8220 amount=-1 +kerning first=1069 second=1047 amount=-1 +kerning first=331 second=119 amount=-1 +kerning first=218 second=288 amount=-1 +kerning first=250 second=8220 amount=-2 +kerning first=207 second=103 amount=-1 +kerning first=303 second=283 amount=-1 +kerning first=214 second=8220 amount=-1 +kerning first=87 second=345 amount=-1 +kerning first=97 second=351 amount=-1 +kerning first=88 second=243 amount=-1 +kerning first=8218 second=314 amount=-1 +kerning first=298 second=332 amount=-1 +kerning first=109 second=8220 amount=-2 +kerning first=240 second=106 amount=-1 +kerning first=262 second=332 amount=-2 +kerning first=206 second=113 amount=-1 +kerning first=370 second=332 amount=-1 +kerning first=207 second=333 amount=-1 +kerning first=264 second=345 amount=-1 +kerning first=107 second=242 amount=-1 +kerning first=77 second=288 amount=-1 +kerning first=211 second=87 amount=-1 +kerning first=65 second=113 amount=-1 +kerning first=1027 second=1116 amount=-1 +kerning first=303 second=99 amount=-1 +kerning first=1058 second=1033 amount=-2 +kerning first=381 second=287 amount=-2 +kerning first=113 second=347 amount=-1 +kerning first=267 second=99 amount=-1 +kerning first=345 second=287 amount=-1 +kerning first=77 second=347 amount=-1 +kerning first=375 second=99 amount=-1 +kerning first=198 second=217 amount=-1 +kerning first=219 second=232 amount=-1 +kerning first=362 second=288 amount=-1 +kerning first=193 second=243 amount=-1 +kerning first=8217 second=192 amount=-3 +kerning first=356 second=242 amount=-1 +kerning first=187 second=197 amount=-2 +kerning first=378 second=326 amount=-1 +kerning first=209 second=281 amount=-1 +kerning first=1105 second=1095 amount=-1 +kerning first=85 second=279 amount=-1 +kerning first=256 second=354 amount=-3 +kerning first=99 second=254 amount=-1 +kerning first=198 second=119 amount=-1 +kerning first=76 second=334 amount=-1 +kerning first=278 second=379 amount=-1 +kerning first=71 second=304 amount=-1 +kerning first=287 second=324 amount=-1 +kerning first=68 second=74 amount=-1 +kerning first=234 second=119 amount=-1 +kerning first=121 second=279 amount=-1 +kerning first=217 second=334 amount=-1 +kerning first=74 second=324 amount=-1 +kerning first=187 second=374 amount=-2 +kerning first=1093 second=1079 amount=-1 +kerning first=290 second=344 amount=-1 +kerning first=315 second=274 amount=-1 +kerning first=87 second=289 amount=-2 +kerning first=317 second=204 amount=-1 +kerning first=257 second=249 amount=-1 +kerning first=79 second=259 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=378 second=119 amount=-1 +kerning first=1057 second=1079 amount=-1 +kerning first=199 second=339 amount=-1 +kerning first=290 second=229 amount=-1 +kerning first=1038 second=1074 amount=-2 +kerning first=317 second=284 amount=-1 +kerning first=317 second=74 amount=-1 +kerning first=370 second=279 amount=-1 +kerning first=209 second=284 amount=-1 +kerning first=8216 second=366 amount=-1 +kerning first=258 second=246 amount=-1 +kerning first=218 second=229 amount=-2 +kerning first=210 second=201 amount=-1 +kerning first=366 second=114 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=1027 second=1119 amount=-1 +kerning first=262 second=279 amount=-1 +kerning first=379 second=339 amount=-1 +kerning first=8218 second=261 amount=-1 +kerning first=362 second=229 amount=-2 +kerning first=346 second=206 amount=-1 +kerning first=298 second=279 amount=-1 +kerning first=311 second=244 amount=-1 +kerning first=250 second=8217 amount=-2 +kerning first=286 second=8217 amount=-1 +kerning first=336 second=82 amount=-1 +kerning first=278 second=264 amount=-1 +kerning first=1058 second=1089 amount=-1 +kerning first=381 second=234 amount=-1 +kerning first=109 second=8217 amount=-2 +kerning first=201 second=86 amount=-1 +kerning first=206 second=264 amount=-1 +kerning first=82 second=111 amount=-1 +kerning first=118 second=111 amount=-1 +kerning first=192 second=289 amount=-1 +kerning first=261 second=121 amount=-1 +kerning first=221 second=364 amount=-1 +kerning first=225 second=121 amount=-1 +kerning first=1069 second=1041 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=264 second=289 amount=-1 +kerning first=264 second=82 amount=-1 +kerning first=198 second=66 amount=-1 +kerning first=120 second=121 amount=-1 +kerning first=8220 second=271 amount=-1 +kerning first=336 second=289 amount=-1 +kerning first=84 second=121 amount=-1 +kerning first=350 second=205 amount=-1 +kerning first=1058 second=1086 amount=-1 +kerning first=79 second=354 amount=-1 +kerning first=87 second=82 amount=-1 +kerning first=1038 second=1083 amount=-3 +kerning first=353 second=225 amount=-1 +kerning first=251 second=117 amount=-1 +kerning first=107 second=97 amount=-1 +kerning first=219 second=338 amount=-1 +kerning first=90 second=102 amount=-1 +kerning first=323 second=117 amount=-1 +kerning first=356 second=241 amount=-1 +kerning first=287 second=117 amount=-1 +kerning first=71 second=97 amount=-1 +kerning first=272 second=76 amount=-1 +kerning first=325 second=71 amount=-1 +kerning first=267 second=46 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=262 second=72 amount=-1 +kerning first=284 second=97 amount=-1 +kerning first=369 second=121 amount=-1 +kerning first=99 second=251 amount=-1 +kerning first=200 second=76 amount=-1 +kerning first=201 second=219 amount=-1 +kerning first=333 second=121 amount=-1 +kerning first=379 second=111 amount=-1 +kerning first=339 second=46 amount=-2 +kerning first=281 second=225 amount=-1 +kerning first=8217 second=103 amount=-2 +kerning first=334 second=72 amount=-1 +kerning first=212 second=97 amount=-1 +kerning first=68 second=77 amount=-1 +kerning first=204 second=251 amount=-1 +kerning first=198 second=122 amount=-1 +kerning first=375 second=46 amount=-3 +kerning first=381 second=290 amount=-1 +kerning first=339 second=102 amount=-1 +kerning first=107 second=245 amount=-1 +kerning first=71 second=363 amount=-1 +kerning first=356 second=97 amount=-2 +kerning first=231 second=46 amount=-1 +kerning first=315 second=84 amount=-1 +kerning first=356 second=245 amount=-2 +kerning first=1052 second=1108 amount=-1 +kerning first=187 second=200 amount=-3 +kerning first=231 second=102 amount=-1 +kerning first=267 second=102 amount=-1 +kerning first=82 second=318 amount=-1 +kerning first=284 second=363 amount=-1 +kerning first=303 second=102 amount=-1 +kerning first=110 second=117 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=352 second=90 amount=-1 +kerning first=101 second=116 amount=-1 +kerning first=65 second=116 amount=-1 +kerning first=201 second=83 amount=-1 +kerning first=315 second=330 amount=-1 +kerning first=79 second=298 amount=-1 +kerning first=193 second=240 amount=-1 +kerning first=367 second=259 amount=-1 +kerning first=198 second=214 amount=-1 +kerning first=90 second=194 amount=-1 +kerning first=1060 second=1043 amount=-1 +kerning first=88 second=240 amount=-1 +kerning first=110 second=371 amount=-1 +kerning first=90 second=253 amount=-2 +kerning first=1024 second=1043 amount=-1 +kerning first=350 second=116 amount=-1 +kerning first=381 second=83 amount=-1 +kerning first=317 second=77 amount=-1 +kerning first=314 second=116 amount=-1 +kerning first=66 second=330 amount=-2 +kerning first=232 second=375 amount=-1 +kerning first=187 second=259 amount=-1 +kerning first=356 second=304 amount=-1 +kerning first=378 second=122 amount=-1 +kerning first=196 second=375 amount=-1 +kerning first=204 second=369 amount=-1 +kerning first=217 second=71 amount=-1 +kerning first=122 second=311 amount=-1 +kerning first=284 second=304 amount=-1 +kerning first=376 second=375 amount=-1 +kerning first=334 second=220 amount=-1 +kerning first=76 second=71 amount=-1 +kerning first=212 second=304 amount=-1 +kerning first=118 second=259 amount=-2 +kerning first=304 second=375 amount=-1 +kerning first=262 second=220 amount=-1 +kerning first=82 second=259 amount=-1 +kerning first=354 second=90 amount=-1 +kerning first=264 second=233 amount=-1 +kerning first=71 second=298 amount=-1 +kerning first=347 second=291 amount=-1 +kerning first=332 second=77 amount=-1 +kerning first=311 second=291 amount=-1 +kerning first=288 second=194 amount=-1 +kerning first=275 second=291 amount=-1 +kerning first=101 second=227 amount=-1 +kerning first=212 second=298 amount=-1 +kerning first=69 second=350 amount=-1 +kerning first=284 second=82 amount=-1 +kerning first=216 second=194 amount=-2 +kerning first=203 second=291 amount=-1 +kerning first=354 second=233 amount=-2 +kerning first=198 second=304 amount=-1 +kerning first=284 second=298 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=67 second=235 amount=-1 +kerning first=210 second=350 amount=-1 +kerning first=291 second=97 amount=-1 +kerning first=98 second=291 amount=-1 +kerning first=260 second=337 amount=-1 +kerning first=351 second=311 amount=-1 +kerning first=1113 second=1088 amount=-1 +kerning first=368 second=213 amount=-1 +kerning first=327 second=97 amount=-1 +kerning first=315 second=311 amount=-1 +kerning first=222 second=66 amount=-1 +kerning first=279 second=311 amount=-1 +kerning first=79 second=317 amount=-1 +kerning first=346 second=200 amount=-1 +kerning first=75 second=318 amount=-1 +kerning first=255 second=97 amount=-2 +kerning first=119 second=337 amount=-1 +kerning first=243 second=311 amount=-1 +kerning first=69 second=90 amount=-1 +kerning first=197 second=84 amount=-3 +kerning first=354 second=350 amount=-2 +kerning first=210 second=90 amount=-1 +kerning first=8218 second=370 amount=-2 +kerning first=202 second=71 amount=-1 +kerning first=368 second=337 amount=-1 +kerning first=282 second=350 amount=-1 +kerning first=310 second=71 amount=-1 +kerning first=102 second=311 amount=2 +kerning first=282 second=90 amount=-1 +kerning first=377 second=84 amount=-1 +kerning first=252 second=318 amount=-1 +kerning first=274 second=71 amount=-1 +kerning first=296 second=337 amount=-1 +kerning first=66 second=311 amount=-1 +kerning first=1036 second=1101 amount=-1 +kerning first=264 second=104 amount=-1 +kerning first=217 second=381 amount=-1 +kerning first=198 second=44 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=382 second=303 amount=-1 +kerning first=279 second=187 amount=-1 +kerning first=287 second=234 amount=-1 +kerning first=192 second=104 amount=-1 +kerning first=243 second=187 amount=-1 +kerning first=323 second=234 amount=-1 +kerning first=270 second=44 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=8217 second=382 amount=-1 +kerning first=268 second=260 amount=-2 +kerning first=84 second=325 amount=-1 +kerning first=74 second=234 amount=-1 +kerning first=211 second=78 amount=-1 +kerning first=211 second=310 amount=-1 +kerning first=8220 second=86 amount=-1 +kerning first=376 second=260 amount=-3 +kerning first=8216 second=195 amount=-4 +kerning first=296 second=213 amount=-1 +kerning first=280 second=374 amount=-1 +kerning first=260 second=213 amount=-1 +kerning first=66 second=187 amount=-1 +kerning first=256 second=85 amount=-2 +kerning first=101 second=351 amount=-1 +kerning first=278 second=227 amount=-1 +kerning first=356 second=298 amount=-1 +kerning first=202 second=284 amount=-1 +kerning first=65 second=351 amount=-1 +kerning first=1038 second=1077 amount=-2 +kerning first=206 second=351 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=374 second=284 amount=-1 +kerning first=197 second=220 amount=-2 +kerning first=100 second=98 amount=-1 +kerning first=1059 second=1074 amount=-2 +kerning first=79 second=85 amount=-1 +kerning first=378 second=44 amount=-1 +kerning first=302 second=284 amount=-1 +kerning first=280 second=266 amount=-1 +kerning first=346 second=303 amount=-1 +kerning first=338 second=284 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=80 second=277 amount=-1 +kerning first=379 second=367 amount=-1 +kerning first=314 second=227 amount=-1 +kerning first=266 second=284 amount=-2 +kerning first=382 second=269 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=314 second=8220 amount=-2 +kerning first=115 second=345 amount=-1 +kerning first=8217 second=122 amount=-1 +kerning first=230 second=380 amount=-1 +kerning first=69 second=118 amount=-1 +kerning first=207 second=283 amount=-1 +kerning first=284 second=270 amount=-1 +kerning first=83 second=105 amount=-1 +kerning first=242 second=8220 amount=-1 +kerning first=8222 second=362 amount=-2 +kerning first=68 second=287 amount=-1 +kerning first=302 second=380 amount=-1 +kerning first=119 second=105 amount=-1 +kerning first=214 second=171 amount=-1 +kerning first=102 second=283 amount=-1 +kerning first=338 second=380 amount=-1 +kerning first=356 second=270 amount=-1 +kerning first=382 second=228 amount=-1 +kerning first=346 second=228 amount=-1 +kerning first=101 second=8220 amount=-1 +kerning first=8216 second=223 amount=-1 +kerning first=104 second=287 amount=-1 +kerning first=310 second=228 amount=-1 +kerning first=65 second=8220 amount=-3 +kerning first=364 second=345 amount=-1 +kerning first=274 second=228 amount=-1 +kerning first=368 second=241 amount=-1 +kerning first=209 second=287 amount=-1 +kerning first=212 second=270 amount=-1 +kerning first=317 second=287 amount=-1 +kerning first=202 second=228 amount=-1 +kerning first=119 second=241 amount=-1 +kerning first=281 second=287 amount=-1 +kerning first=338 second=8249 amount=-1 +kerning first=100 second=287 amount=-1 +kerning first=374 second=8249 amount=-3 +kerning first=353 second=287 amount=-1 +kerning first=377 second=248 amount=-1 +kerning first=266 second=8249 amount=-2 +kerning first=382 second=331 amount=-1 +kerning first=269 second=248 amount=-1 +kerning first=90 second=197 amount=-1 +kerning first=194 second=8249 amount=-2 +kerning first=83 second=241 amount=-1 +kerning first=197 second=248 amount=-1 +kerning first=311 second=263 amount=-1 +kerning first=346 second=331 amount=-1 +kerning first=356 second=366 amount=-1 +kerning first=324 second=318 amount=-1 +kerning first=350 second=255 amount=-1 +kerning first=274 second=331 amount=-1 +kerning first=377 second=112 amount=-1 +kerning first=374 second=256 amount=-3 +kerning first=284 second=366 amount=-1 +kerning first=74 second=262 amount=-1 +kerning first=338 second=256 amount=-1 +kerning first=202 second=331 amount=-1 +kerning first=305 second=112 amount=-1 +kerning first=242 second=255 amount=-1 +kerning first=8222 second=217 amount=-2 +kerning first=269 second=112 amount=-1 +kerning first=206 second=255 amount=-1 +kerning first=193 second=221 amount=-3 +kerning first=233 second=112 amount=-1 +kerning first=202 second=200 amount=-1 +kerning first=197 second=112 amount=-1 +kerning first=272 second=228 amount=-1 +kerning first=101 second=255 amount=-1 +kerning first=88 second=221 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=217 second=74 amount=-1 +kerning first=108 second=314 amount=-1 +kerning first=88 second=352 amount=-1 +kerning first=365 second=249 amount=-1 +kerning first=287 second=98 amount=-1 +kerning first=193 second=352 amount=-2 +kerning first=211 second=207 amount=-1 +kerning first=251 second=98 amount=-1 +kerning first=70 second=338 amount=-1 +kerning first=212 second=366 amount=-1 +kerning first=8217 second=279 amount=-2 +kerning first=8216 second=87 amount=-1 +kerning first=368 second=105 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=1058 second=1092 amount=-1 +kerning first=249 second=314 amount=-1 +kerning first=110 second=98 amount=-1 +kerning first=84 second=339 amount=-2 +kerning first=71 second=366 amount=-1 +kerning first=220 second=214 amount=-1 +kerning first=321 second=314 amount=-1 +kerning first=277 second=307 amount=-1 +kerning first=212 second=106 amount=-1 +kerning first=197 second=268 amount=-1 +kerning first=85 second=81 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=248 second=106 amount=-1 +kerning first=258 second=333 amount=-1 +kerning first=230 second=8221 amount=-1 +kerning first=199 second=224 amount=-1 +kerning first=90 second=68 amount=-1 +kerning first=298 second=81 amount=-1 +kerning first=90 second=80 amount=-1 +kerning first=280 second=346 amount=-1 +kerning first=86 second=217 amount=-1 +kerning first=262 second=81 amount=-2 +kerning first=235 second=224 amount=-1 +kerning first=370 second=81 amount=-1 +kerning first=208 second=346 amount=-1 +kerning first=284 second=106 amount=-1 +kerning first=307 second=224 amount=-1 +kerning first=103 second=243 amount=-1 +kerning first=8220 second=114 amount=-1 +kerning first=89 second=256 amount=-3 +kerning first=116 second=118 amount=-1 +kerning first=379 second=224 amount=-1 +kerning first=213 second=230 amount=-1 +kerning first=80 second=101 amount=-1 +kerning first=352 second=346 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=244 second=347 amount=-1 +kerning first=353 second=324 amount=-1 +kerning first=108 second=230 amount=-1 +kerning first=8250 second=315 amount=-3 +kerning first=330 second=333 amount=-1 +kerning first=266 second=256 amount=-2 +kerning first=362 second=253 amount=-1 +kerning first=67 second=326 amount=-1 +kerning first=221 second=101 amount=-2 +kerning first=366 second=333 amount=-1 +kerning first=344 second=67 amount=-1 +kerning first=67 second=243 amount=-1 +kerning first=86 second=69 amount=-1 +kerning first=89 second=120 amount=-1 +kerning first=1060 second=1034 amount=-1 +kerning first=8250 second=200 amount=-3 +kerning first=379 second=79 amount=-1 +kerning first=209 second=334 amount=-1 +kerning first=1048 second=1072 amount=-1 +kerning first=87 second=187 amount=-1 +kerning first=381 second=268 amount=-1 +kerning first=264 second=318 amount=-1 +kerning first=258 second=218 amount=-2 +kerning first=71 second=251 amount=-1 +kerning first=85 second=229 amount=-2 +kerning first=313 second=192 amount=-1 +kerning first=1113 second=1080 amount=-1 +kerning first=1024 second=1034 amount=-1 +kerning first=1065 second=1098 amount=-1 +kerning first=201 second=268 amount=-1 +kerning first=374 second=120 amount=-1 +kerning first=317 second=203 amount=-1 +kerning first=109 second=371 amount=-1 +kerning first=45 second=218 amount=-2 +kerning first=262 second=229 amount=-1 +kerning first=121 second=229 amount=-2 +kerning first=71 second=270 amount=-1 +kerning first=284 second=251 amount=-1 +kerning first=282 second=118 amount=-1 +kerning first=230 second=120 amount=-1 +kerning first=370 second=229 amount=-2 +kerning first=222 second=218 amount=-1 +kerning first=246 second=118 amount=-1 +kerning first=356 second=251 amount=-1 +kerning first=302 second=249 amount=-1 +kerning first=71 second=106 amount=-1 +kerning first=354 second=118 amount=-1 +kerning first=68 second=203 amount=-1 +kerning first=8222 second=102 amount=-1 +kerning first=298 second=229 amount=-1 +kerning first=350 second=366 amount=-1 +kerning first=338 second=120 amount=-1 +kerning first=334 second=229 amount=-1 +kerning first=81 second=218 amount=-1 +kerning first=375 second=244 amount=-1 +kerning first=334 second=257 amount=-1 +kerning first=194 second=368 amount=-2 +kerning first=370 second=257 amount=-2 +kerning first=317 second=219 amount=-1 +kerning first=45 second=361 amount=-1 +kerning first=262 second=257 amount=-1 +kerning first=241 second=45 amount=-1 +kerning first=89 second=368 amount=-1 +kerning first=298 second=257 amount=-1 +kerning first=117 second=361 amount=-1 +kerning first=99 second=232 amount=-1 +kerning first=213 second=202 amount=-1 +kerning first=338 second=368 amount=-1 +kerning first=363 second=254 amount=-1 +kerning first=374 second=368 amount=-1 +kerning first=85 second=257 amount=-2 +kerning first=204 second=232 amount=-1 +kerning first=266 second=368 amount=-1 +kerning first=84 second=8250 amount=-1 +kerning first=121 second=257 amount=-2 +kerning first=68 second=219 amount=-1 +kerning first=325 second=121 amount=-1 +kerning first=90 second=244 amount=-1 +kerning first=289 second=121 amount=-1 +kerning first=254 second=378 amount=-1 +kerning first=77 second=266 amount=-1 +kerning first=255 second=254 amount=-1 +kerning first=344 second=336 amount=-1 +kerning first=195 second=244 amount=-1 +kerning first=217 second=121 amount=-1 +kerning first=321 second=202 amount=-1 +kerning first=291 second=254 amount=-1 +kerning first=231 second=244 amount=-1 +kerning first=216 second=330 amount=-1 +kerning first=199 second=79 amount=-2 +kerning first=213 second=66 amount=-1 +kerning first=213 second=82 amount=-1 +kerning first=267 second=244 amount=-1 +kerning first=112 second=121 amount=-1 +kerning first=216 second=278 amount=-1 +kerning first=377 second=344 amount=-1 +kerning first=303 second=244 amount=-1 +kerning first=76 second=121 amount=-1 +kerning first=205 second=267 amount=-1 +kerning first=99 second=106 amount=-1 +kerning first=288 second=278 amount=-1 +kerning first=321 second=82 amount=-1 +kerning first=205 second=382 amount=-1 +kerning first=187 second=117 amount=-1 +kerning first=321 second=66 amount=-1 +kerning first=199 second=107 amount=-1 +kerning first=277 second=382 amount=-1 +kerning first=316 second=271 amount=-1 +kerning first=259 second=117 amount=-1 +kerning first=313 second=382 amount=-1 +kerning first=118 second=281 amount=-1 +kerning first=331 second=117 amount=-1 +kerning first=295 second=117 amount=-1 +kerning first=100 second=382 amount=-1 +kerning first=249 second=230 amount=-1 +kerning first=367 second=117 amount=-1 +kerning first=266 second=201 amount=-1 +kerning first=333 second=8250 amount=-1 +kerning first=258 second=361 amount=-1 +kerning first=86 second=205 amount=-1 +kerning first=366 second=361 amount=-1 +kerning first=82 second=281 amount=-1 +kerning first=330 second=361 amount=-1 +kerning first=212 second=315 amount=-1 +kerning first=240 second=347 amount=-1 +kerning first=90 second=216 amount=-1 +kerning first=204 second=347 amount=-1 +kerning first=235 second=107 amount=-1 +kerning first=103 second=271 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=82 second=117 amount=-1 +kerning first=99 second=347 amount=-1 +kerning first=307 second=107 amount=-1 +kerning first=381 second=240 amount=-1 +kerning first=1058 second=1095 amount=-1 +kerning first=106 second=226 amount=-1 +kerning first=281 second=259 amount=-1 +kerning first=332 second=65 amount=-2 +kerning first=327 second=245 amount=-1 +kerning first=325 second=266 amount=-1 +kerning first=368 second=65 amount=-2 +kerning first=291 second=245 amount=-1 +kerning first=1025 second=1062 amount=-1 +kerning first=1059 second=1083 amount=-3 +kerning first=75 second=46 amount=-1 +kerning first=211 second=226 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=69 second=362 amount=-1 +kerning first=263 second=111 amount=-1 +kerning first=255 second=245 amount=-1 +kerning first=111 second=46 amount=-2 +kerning first=87 second=252 amount=-1 +kerning first=79 second=202 amount=-1 +kerning first=310 second=219 amount=-1 +kerning first=282 second=102 amount=-1 +kerning first=205 second=122 amount=-1 +kerning first=283 second=226 amount=-1 +kerning first=274 second=219 amount=-1 +kerning first=8222 second=118 amount=-2 +kerning first=354 second=102 amount=-1 +kerning first=100 second=122 amount=-1 +kerning first=217 second=266 amount=-1 +kerning first=202 second=219 amount=-1 +kerning first=254 second=8250 amount=-1 +kerning first=1057 second=1042 amount=-1 +kerning first=8220 second=234 amount=-1 +kerning first=225 second=316 amount=-1 +kerning first=8217 second=267 amount=-2 +kerning first=261 second=316 amount=-1 +kerning first=219 second=245 amount=-1 +kerning first=269 second=335 amount=-1 +kerning first=280 second=259 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=263 second=261 amount=-1 +kerning first=333 second=316 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=352 second=259 amount=-1 +kerning first=369 second=316 amount=-1 +kerning first=228 second=252 amount=-1 +kerning first=78 second=245 amount=-1 +kerning first=377 second=335 amount=-1 +kerning first=316 second=259 amount=-1 +kerning first=70 second=226 amount=-1 +kerning first=264 second=252 amount=-1 +kerning first=323 second=246 amount=-1 +kerning first=1027 second=1082 amount=-1 +kerning first=88 second=45 amount=-2 +kerning first=219 second=369 amount=-1 +kerning first=103 second=259 amount=-1 +kerning first=71 second=382 amount=-1 +kerning first=287 second=246 amount=-1 +kerning first=76 second=202 amount=-1 +kerning first=67 second=259 amount=-1 +kerning first=90 second=356 amount=-1 +kerning first=352 second=86 amount=-1 +kerning first=347 second=375 amount=-1 +kerning first=99 second=351 amount=-1 +kerning first=291 second=369 amount=-1 +kerning first=208 second=259 amount=-1 +kerning first=235 second=116 amount=-1 +kerning first=233 second=103 amount=-1 +kerning first=1054 second=1103 amount=-1 +kerning first=212 second=382 amount=-1 +kerning first=83 second=253 amount=-1 +kerning first=8250 second=331 amount=-1 +kerning first=298 second=233 amount=-1 +kerning first=197 second=103 amount=-1 +kerning first=229 second=45 amount=-1 +kerning first=370 second=109 amount=-1 +kerning first=224 second=253 amount=-1 +kerning first=78 second=369 amount=-1 +kerning first=76 second=266 amount=-1 +kerning first=100 second=249 amount=-1 +kerning first=98 second=375 amount=-1 +kerning first=205 second=279 amount=-1 +kerning first=377 second=332 amount=-1 +kerning first=313 second=122 amount=-1 +kerning first=354 second=362 amount=-1 +kerning first=277 second=122 amount=-1 +kerning first=65 second=277 amount=-1 +kerning first=78 second=242 amount=-1 +kerning first=219 second=242 amount=-1 +kerning first=275 second=375 amount=-1 +kerning first=85 second=109 amount=-1 +kerning first=363 second=369 amount=-1 +kerning first=248 second=382 amount=-1 +kerning first=327 second=369 amount=-1 +kerning first=284 second=382 amount=-1 +kerning first=291 second=242 amount=-1 +kerning first=210 second=362 amount=-1 +kerning first=379 second=116 amount=-1 +kerning first=255 second=242 amount=-1 +kerning first=121 second=109 amount=-1 +kerning first=377 second=103 amount=-2 +kerning first=195 second=356 amount=-3 +kerning first=356 second=382 amount=-2 +kerning first=201 second=227 amount=-1 +kerning first=327 second=242 amount=-1 +kerning first=275 second=115 amount=-1 +kerning first=332 second=68 amount=-1 +kerning first=103 second=355 amount=-1 +kerning first=278 second=370 amount=-1 +kerning first=332 second=304 amount=-1 +kerning first=202 second=80 amount=-1 +kerning first=203 second=115 amount=-1 +kerning first=100 second=119 amount=-1 +kerning first=352 second=355 amount=-1 +kerning first=356 second=237 amount=-1 +kerning first=350 second=370 amount=-1 +kerning first=363 second=363 amount=-1 +kerning first=316 second=355 amount=-1 +kerning first=205 second=119 amount=-1 +kerning first=211 second=198 amount=-2 +kerning first=311 second=115 amount=-1 +kerning first=241 second=119 amount=-1 +kerning first=288 second=203 amount=-1 +kerning first=347 second=115 amount=-1 +kerning first=277 second=119 amount=-1 +kerning first=1061 second=1090 amount=-1 +kerning first=313 second=119 amount=-1 +kerning first=8222 second=90 amount=-1 +kerning first=8216 second=235 amount=-1 +kerning first=1025 second=1090 amount=-1 +kerning first=203 second=284 amount=-1 +kerning first=296 second=253 amount=-1 +kerning first=266 second=108 amount=-1 +kerning first=84 second=313 amount=-1 +kerning first=274 second=315 amount=-1 +kerning first=368 second=253 amount=-1 +kerning first=338 second=108 amount=-1 +kerning first=1061 second=1059 amount=-1 +kerning first=274 second=80 amount=-1 +kerning first=377 second=75 amount=-1 +kerning first=1031 second=1105 amount=-1 +kerning first=346 second=80 amount=-1 +kerning first=1067 second=1105 amount=-1 +kerning first=65 second=370 amount=-2 +kerning first=83 second=68 amount=-1 +kerning first=1104 second=1095 amount=-1 +kerning first=339 second=328 amount=-1 +kerning first=196 second=269 amount=-1 +kerning first=303 second=328 amount=-1 +kerning first=315 second=196 amount=-1 +kerning first=197 second=335 amount=-1 +kerning first=304 second=269 amount=-1 +kerning first=267 second=328 amount=-1 +kerning first=316 second=231 amount=-1 +kerning first=296 second=225 amount=-1 +kerning first=231 second=328 amount=-1 +kerning first=376 second=269 amount=-2 +kerning first=346 second=315 amount=-1 +kerning first=83 second=225 amount=-1 +kerning first=230 second=108 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=226 second=316 amount=-1 +kerning first=119 second=225 amount=-2 +kerning first=194 second=108 amount=-1 +kerning first=233 second=363 amount=-1 +kerning first=105 second=102 amount=-1 +kerning first=216 second=203 amount=-1 +kerning first=122 second=277 amount=-1 +kerning first=324 second=46 amount=-1 +kerning first=87 second=280 amount=-1 +kerning first=269 second=363 amount=-1 +kerning first=67 second=231 amount=-1 +kerning first=278 second=198 amount=-1 +kerning first=305 second=363 amount=-1 +kerning first=8250 second=303 amount=-1 +kerning first=235 second=8217 amount=-1 +kerning first=377 second=363 amount=-1 +kerning first=332 second=225 amount=-1 +kerning first=264 second=280 amount=-1 +kerning first=368 second=225 amount=-2 +kerning first=291 second=273 amount=-1 +kerning first=194 second=8221 amount=-3 +kerning first=216 second=46 amount=-1 +kerning first=103 second=231 amount=-1 +kerning first=1086 second=1076 amount=-1 +kerning first=255 second=273 amount=-1 +kerning first=252 second=46 amount=-1 +kerning first=336 second=280 amount=-1 +kerning first=69 second=102 amount=-1 +kerning first=288 second=46 amount=-1 +kerning first=362 second=245 amount=-1 +kerning first=221 second=261 amount=-2 +kerning first=206 second=367 amount=-1 +kerning first=1057 second=1067 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=218 second=210 amount=-1 +kerning first=101 second=367 amount=-1 +kerning first=211 second=379 amount=-1 +kerning first=72 second=211 amount=-1 +kerning first=45 second=352 amount=-2 +kerning first=307 second=8220 amount=-1 +kerning first=200 second=296 amount=-1 +kerning first=368 second=250 amount=-1 +kerning first=1043 second=1092 amount=-1 +kerning first=379 second=351 amount=-1 +kerning first=77 second=210 amount=-1 +kerning first=354 second=275 amount=-2 +kerning first=235 second=8220 amount=-1 +kerning first=272 second=296 amount=-1 +kerning first=81 second=352 amount=-1 +kerning first=280 second=86 amount=-1 +kerning first=260 second=250 amount=-1 +kerning first=98 second=378 amount=-1 +kerning first=200 second=327 amount=-1 +kerning first=224 second=250 amount=-1 +kerning first=208 second=86 amount=-1 +kerning first=321 second=326 amount=-1 +kerning first=203 second=378 amount=-1 +kerning first=272 second=327 amount=-1 +kerning first=120 second=122 amount=-1 +kerning first=81 second=206 amount=-1 +kerning first=121 second=112 amount=-1 +kerning first=99 second=235 amount=-1 +kerning first=296 second=250 amount=-1 +kerning first=85 second=112 amount=-1 +kerning first=83 second=250 amount=-1 +kerning first=365 second=261 amount=-1 +kerning first=8220 second=374 amount=-1 +kerning first=108 second=326 amount=-1 +kerning first=1024 second=1118 amount=-1 +kerning first=90 second=328 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=222 second=206 amount=-1 +kerning first=117 second=237 amount=-1 +kerning first=84 second=288 amount=-1 +kerning first=377 second=100 amount=-1 +kerning first=296 second=365 amount=-1 +kerning first=260 second=365 amount=-1 +kerning first=45 second=237 amount=-1 +kerning first=280 second=262 amount=-1 +kerning first=224 second=365 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=197 second=100 amount=-1 +kerning first=121 second=224 amount=-1 +kerning first=307 second=355 amount=-1 +kerning first=253 second=353 amount=-1 +kerning first=315 second=171 amount=-1 +kerning first=370 second=112 amount=-1 +kerning first=111 second=382 amount=-1 +kerning first=289 second=353 amount=-1 +kerning first=351 second=171 amount=-1 +kerning first=269 second=100 amount=-1 +kerning first=347 second=378 amount=-1 +kerning first=1042 second=1113 amount=-1 +kerning first=208 second=83 amount=-1 +kerning first=298 second=112 amount=-1 +kerning first=222 second=352 amount=-1 +kerning first=213 second=323 amount=-1 +kerning first=280 second=83 amount=-1 +kerning first=200 second=46 amount=-1 +kerning first=112 second=353 amount=-1 +kerning first=80 second=113 amount=-1 +kerning first=352 second=83 amount=-1 +kerning first=264 second=249 amount=-1 +kerning first=70 second=198 amount=-2 +kerning first=258 second=352 amount=-2 +kerning first=217 second=353 amount=-1 +kerning first=366 second=352 amount=-1 +kerning first=370 second=337 amount=-1 +kerning first=330 second=352 amount=-1 +kerning first=321 second=323 amount=-1 +kerning first=67 second=262 amount=-2 +kerning first=221 second=113 amount=-2 +kerning first=275 second=353 amount=-1 +kerning first=354 second=332 amount=-1 +kerning first=111 second=291 amount=-1 +kerning first=352 second=114 amount=-1 +kerning first=199 second=233 amount=-1 +kerning first=379 second=379 amount=-1 +kerning first=354 second=99 amount=-2 +kerning first=313 second=304 amount=-1 +kerning first=336 second=364 amount=-1 +kerning first=80 second=289 amount=-1 +kerning first=8220 second=346 amount=-1 +kerning first=8222 second=121 amount=-1 +kerning first=116 second=289 amount=-1 +kerning first=314 second=339 amount=-1 +kerning first=264 second=364 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=214 second=274 amount=-1 +kerning first=221 second=289 amount=-2 +kerning first=262 second=84 amount=-1 +kerning first=228 second=249 amount=-1 +kerning first=257 second=289 amount=-1 +kerning first=258 second=89 amount=-3 +kerning first=45 second=324 amount=-1 +kerning first=87 second=249 amount=-1 +kerning first=222 second=89 amount=-1 +kerning first=1057 second=1039 amount=-1 +kerning first=379 second=233 amount=-1 +kerning first=1050 second=1079 amount=-1 +kerning first=76 second=350 amount=-1 +kerning first=65 second=339 amount=-1 +kerning first=67 second=234 amount=-1 +kerning first=103 second=234 amount=-1 +kerning first=366 second=237 amount=-1 +kerning first=286 second=274 amount=-1 +kerning first=334 second=84 amount=-1 +kerning first=221 second=110 amount=-1 +kerning first=1114 second=1116 amount=-1 +kerning first=206 second=339 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=332 second=8217 amount=-1 +kerning first=199 second=379 amount=-1 +kerning first=76 second=381 amount=-1 +kerning first=366 second=324 amount=-1 +kerning first=217 second=350 amount=-1 +kerning first=88 second=362 amount=-1 +kerning first=315 second=199 amount=-1 +kerning first=89 second=111 amount=-2 +kerning first=325 second=350 amount=-1 +kerning first=222 second=209 amount=-1 +kerning first=275 second=8217 amount=-1 +kerning first=120 second=375 amount=-1 +kerning first=67 second=86 amount=-1 +kerning first=192 second=277 amount=-1 +kerning first=286 second=302 amount=-1 +kerning first=379 second=264 amount=-1 +kerning first=8220 second=259 amount=-1 +kerning first=203 second=260 amount=-1 +kerning first=316 second=234 amount=-1 +kerning first=264 second=277 amount=-1 +kerning first=214 second=302 amount=-1 +kerning first=365 second=289 amount=-1 +kerning first=374 second=111 amount=-2 +kerning first=235 second=351 amount=-1 +kerning first=81 second=89 amount=-1 +kerning first=272 second=330 amount=-1 +kerning first=8218 second=259 amount=-1 +kerning first=199 second=264 amount=-2 +kerning first=344 second=212 amount=-1 +kerning first=66 second=199 amount=-1 +kerning first=87 second=277 amount=-2 +kerning first=307 second=351 amount=-1 +kerning first=314 second=367 amount=-1 +kerning first=194 second=111 amount=-1 +kerning first=213 second=354 amount=-1 +kerning first=89 second=377 amount=-1 +kerning first=350 second=367 amount=-1 +kerning first=377 second=72 amount=-1 +kerning first=192 second=364 amount=-2 +kerning first=81 second=209 amount=-1 +kerning first=207 second=199 amount=-1 +kerning first=266 second=111 amount=-1 +kerning first=199 second=351 amount=-1 +kerning first=45 second=209 amount=-3 +kerning first=200 second=212 amount=-1 +kerning first=278 second=367 amount=-1 +kerning first=302 second=111 amount=-1 +kerning first=321 second=354 amount=-1 +kerning first=87 second=364 amount=-1 +kerning first=89 second=362 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=321 second=351 amount=-1 +kerning first=110 second=361 amount=-1 +kerning first=259 second=8249 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=266 second=377 amount=-1 +kerning first=8217 second=119 amount=-1 +kerning first=295 second=8249 amount=-1 +kerning first=199 second=364 amount=-1 +kerning first=363 second=257 amount=-1 +kerning first=73 second=277 amount=-1 +kerning first=230 second=97 amount=-1 +kerning first=374 second=377 amount=-1 +kerning first=287 second=361 amount=-1 +kerning first=291 second=257 amount=-1 +kerning first=264 second=367 amount=-1 +kerning first=117 second=311 amount=-1 +kerning first=108 second=351 amount=-1 +kerning first=251 second=361 amount=-1 +kerning first=226 second=254 amount=-1 +kerning first=327 second=257 amount=-1 +kerning first=118 second=8249 amount=-2 +kerning first=75 second=287 amount=-1 +kerning first=356 second=267 amount=-2 +kerning first=262 second=254 amount=-1 +kerning first=219 second=257 amount=-2 +kerning first=192 second=367 amount=-1 +kerning first=338 second=377 amount=-1 +kerning first=316 second=111 amount=-1 +kerning first=323 second=361 amount=-1 +kerning first=255 second=257 amount=-2 +kerning first=46 second=8249 amount=-1 +kerning first=221 second=274 amount=-1 +kerning first=381 second=374 amount=-1 +kerning first=374 second=117 amount=-1 +kerning first=235 second=261 amount=-1 +kerning first=87 second=367 amount=-1 +kerning first=111 second=287 amount=-1 +kerning first=338 second=117 amount=-1 +kerning first=260 second=244 amount=-1 +kerning first=69 second=381 amount=-1 +kerning first=252 second=287 amount=-1 +kerning first=122 second=44 amount=-1 +kerning first=8216 second=226 amount=-1 +kerning first=307 second=261 amount=-1 +kerning first=296 second=244 amount=-1 +kerning first=354 second=121 amount=-1 +kerning first=80 second=274 amount=-1 +kerning first=216 second=287 amount=-1 +kerning first=307 second=104 amount=-1 +kerning first=121 second=254 amount=-1 +kerning first=324 second=287 amount=-1 +kerning first=354 second=250 amount=-1 +kerning first=368 second=244 amount=-1 +kerning first=210 second=381 amount=-1 +kerning first=288 second=287 amount=-1 +kerning first=201 second=374 amount=-1 +kerning first=246 second=121 amount=-1 +kerning first=331 second=8249 amount=-1 +kerning first=282 second=381 amount=-1 +kerning first=287 second=237 amount=-1 +kerning first=199 second=261 amount=-1 +kerning first=367 second=8249 amount=-1 +kerning first=1049 second=1104 amount=-1 +kerning first=112 second=378 amount=-1 +kerning first=194 second=281 amount=-1 +kerning first=221 second=171 amount=-3 +kerning first=375 second=337 amount=-1 +kerning first=197 second=347 amount=-1 +kerning first=192 second=107 amount=-1 +kerning first=257 second=171 amount=-1 +kerning first=370 second=97 amount=-2 +kerning first=282 second=250 amount=-1 +kerning first=217 second=378 amount=-1 +kerning first=266 second=281 amount=-1 +kerning first=8220 second=89 amount=-1 +kerning first=303 second=337 amount=-1 +kerning first=1104 second=1078 amount=-1 +kerning first=89 second=117 amount=-1 +kerning first=302 second=281 amount=-1 +kerning first=264 second=107 amount=-1 +kerning first=230 second=117 amount=-1 +kerning first=379 second=261 amount=-1 +kerning first=44 second=171 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=65 second=354 amount=-3 +kerning first=302 second=117 amount=-1 +kerning first=89 second=281 amount=-2 +kerning first=116 second=171 amount=-1 +kerning first=266 second=117 amount=-1 +kerning first=69 second=250 amount=-1 +kerning first=346 second=197 amount=-2 +kerning first=291 second=100 amount=-1 +kerning first=103 second=240 amount=-1 +kerning first=327 second=100 amount=-1 +kerning first=83 second=74 amount=-1 +kerning first=203 second=288 amount=-1 +kerning first=8220 second=246 amount=-1 +kerning first=278 second=354 amount=-1 +kerning first=67 second=240 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=264 second=264 amount=-2 +kerning first=289 second=378 amount=-1 +kerning first=365 second=171 amount=-1 +kerning first=115 second=314 amount=-1 +kerning first=350 second=354 amount=-1 +kerning first=316 second=240 amount=-1 +kerning first=253 second=378 amount=-1 +kerning first=256 second=314 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=219 second=100 amount=-1 +kerning first=103 second=371 amount=-1 +kerning first=305 second=347 amount=-1 +kerning first=274 second=338 amount=-1 +kerning first=255 second=100 amount=-1 +kerning first=325 second=378 amount=-1 +kerning first=332 second=74 amount=-1 +kerning first=328 second=314 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=200 second=311 amount=-1 +kerning first=217 second=90 amount=-1 +kerning first=290 second=207 amount=-1 +kerning first=45 second=330 amount=-3 +kerning first=313 second=298 amount=-1 +kerning first=81 second=330 amount=-1 +kerning first=101 second=224 amount=-1 +kerning first=376 second=291 amount=-2 +kerning first=86 second=317 amount=-1 +kerning first=72 second=214 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=90 second=71 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=222 second=330 amount=-1 +kerning first=304 second=291 amount=-1 +kerning first=1038 second=1108 amount=-2 +kerning first=268 second=291 amount=-1 +kerning first=104 second=318 amount=-1 +kerning first=317 second=200 amount=-1 +kerning first=278 second=224 amount=-1 +kerning first=232 second=291 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=196 second=291 amount=-1 +kerning first=236 second=324 amount=-1 +kerning first=350 second=224 amount=-1 +kerning first=245 second=318 amount=-1 +kerning first=85 second=97 amount=-2 +kerning first=314 second=224 amount=-1 +kerning first=380 second=311 amount=-1 +kerning first=267 second=337 amount=-1 +kerning first=281 second=318 amount=-1 +kerning first=298 second=97 amount=-1 +kerning first=90 second=77 amount=-1 +kerning first=344 second=311 amount=-1 +kerning first=86 second=304 amount=-1 +kerning first=231 second=337 amount=-1 +kerning first=87 second=101 amount=-2 +kerning first=334 second=97 amount=-1 +kerning first=195 second=337 amount=-1 +kerning first=353 second=318 amount=-1 +kerning first=192 second=101 amount=-1 +kerning first=262 second=97 amount=-1 +kerning first=236 second=311 amount=-1 +kerning first=76 second=90 amount=-1 +kerning first=317 second=303 amount=-1 +kerning first=371 second=44 amount=-1 +kerning first=354 second=381 amount=-1 +kerning first=353 second=303 amount=-1 +kerning first=335 second=44 amount=-2 +kerning first=45 second=70 amount=-3 +kerning first=8220 second=83 amount=-1 +kerning first=272 second=193 amount=-2 +kerning first=1069 second=1025 amount=-1 +kerning first=235 second=104 amount=-1 +kerning first=222 second=70 amount=-1 +kerning first=290 second=325 amount=-1 +kerning first=380 second=324 amount=-1 +kerning first=199 second=104 amount=-1 +kerning first=81 second=70 amount=-1 +kerning first=263 second=44 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=90 second=213 amount=-1 +kerning first=108 second=227 amount=-1 +kerning first=67 second=111 amount=-1 +kerning first=78 second=251 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=317 second=194 amount=-1 +kerning first=103 second=111 amount=-1 +kerning first=72 second=351 amount=-1 +kerning first=219 second=251 amount=-1 +kerning first=321 second=85 amount=-1 +kerning first=258 second=234 amount=-1 +kerning first=291 second=251 amount=-1 +kerning first=213 second=85 amount=-1 +kerning first=249 second=227 amount=-1 +kerning first=330 second=234 amount=-1 +kerning first=290 second=201 amount=-1 +kerning first=363 second=251 amount=-1 +kerning first=213 second=227 amount=-1 +kerning first=366 second=234 amount=-1 +kerning first=1074 second=1093 amount=-1 +kerning first=327 second=251 amount=-1 +kerning first=290 second=310 amount=-1 +kerning first=68 second=194 amount=-2 +kerning first=275 second=118 amount=-1 +kerning first=289 second=105 amount=-1 +kerning first=73 second=283 amount=-1 +kerning first=258 second=231 amount=-1 +kerning first=347 second=118 amount=-1 +kerning first=217 second=105 amount=-1 +kerning first=311 second=118 amount=-1 +kerning first=253 second=105 amount=-1 +kerning first=80 second=280 amount=-1 +kerning first=98 second=118 amount=-1 +kerning first=201 second=368 amount=-1 +kerning first=112 second=105 amount=-1 +kerning first=259 second=103 amount=-1 +kerning first=197 second=245 amount=-1 +kerning first=203 second=118 amount=-1 +kerning first=221 second=280 amount=-1 +kerning first=356 second=8249 amount=-3 +kerning first=76 second=105 amount=-1 +kerning first=375 second=228 amount=-1 +kerning first=199 second=84 amount=-1 +kerning first=289 second=241 amount=-1 +kerning first=339 second=228 amount=-1 +kerning first=307 second=253 amount=-1 +kerning first=201 second=108 amount=-1 +kerning first=267 second=228 amount=-1 +kerning first=200 second=193 amount=-1 +kerning first=221 second=353 amount=-2 +kerning first=70 second=335 amount=-1 +kerning first=253 second=241 amount=-1 +kerning first=187 second=278 amount=-3 +kerning first=199 second=370 amount=-1 +kerning first=90 second=228 amount=-1 +kerning first=363 second=122 amount=-1 +kerning first=375 second=331 amount=-1 +kerning first=327 second=122 amount=-1 +kerning first=332 second=362 amount=-1 +kerning first=287 second=231 amount=-1 +kerning first=291 second=122 amount=-1 +kerning first=303 second=331 amount=-1 +kerning first=76 second=241 amount=-1 +kerning first=201 second=256 amount=-1 +kerning first=255 second=122 amount=-1 +kerning first=339 second=331 amount=-1 +kerning first=231 second=331 amount=-1 +kerning first=1050 second=1057 amount=-2 +kerning first=379 second=255 amount=-2 +kerning first=1027 second=1097 amount=-1 +kerning first=267 second=331 amount=-1 +kerning first=381 second=256 amount=-1 +kerning first=307 second=255 amount=-1 +kerning first=1043 second=1073 amount=-1 +kerning first=323 second=231 amount=-1 +kerning first=260 second=362 amount=-2 +kerning first=235 second=255 amount=-1 +kerning first=377 second=245 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=90 second=331 amount=-1 +kerning first=232 second=8250 amount=-1 +kerning first=377 second=81 amount=-1 +kerning first=1101 second=1095 amount=-1 +kerning first=378 second=261 amount=-1 +kerning first=1065 second=1095 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=269 second=245 amount=-1 +kerning first=321 second=214 amount=-1 +kerning first=219 second=122 amount=-1 +kerning first=203 second=266 amount=-1 +kerning first=74 second=231 amount=-1 +kerning first=90 second=65 amount=-1 +kerning first=78 second=122 amount=-1 +kerning first=356 second=282 amount=-1 +kerning first=377 second=229 amount=-1 +kerning first=378 second=307 amount=-1 +kerning first=79 second=217 amount=-1 +kerning first=1047 second=1053 amount=-1 +kerning first=284 second=282 amount=-1 +kerning first=88 second=333 amount=-1 +kerning first=1114 second=1084 amount=-1 +kerning first=202 second=68 amount=-1 +kerning first=310 second=216 amount=-1 +kerning first=212 second=282 amount=-1 +kerning first=256 second=217 amount=-2 +kerning first=76 second=74 amount=-1 +kerning first=236 second=305 amount=-1 +kerning first=74 second=346 amount=-1 +kerning first=255 second=106 amount=-1 +kerning first=332 second=80 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=71 second=282 amount=-1 +kerning first=314 second=230 amount=-1 +kerning first=363 second=106 amount=-1 +kerning first=8222 second=381 amount=-1 +kerning first=380 second=305 amount=-1 +kerning first=278 second=230 amount=-1 +kerning first=74 second=243 amount=-1 +kerning first=211 second=204 amount=-1 +kerning first=234 second=307 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=205 second=250 amount=-1 +kerning first=374 second=281 amount=-2 +kerning first=356 second=381 amount=-1 +kerning first=101 second=230 amount=-1 +kerning first=113 second=242 amount=-1 +kerning first=323 second=346 amount=-1 +kerning first=274 second=334 amount=-1 +kerning first=206 second=79 amount=-1 +kerning first=287 second=243 amount=-1 +kerning first=8250 second=197 amount=-2 +kerning first=202 second=203 amount=-1 +kerning first=317 second=193 amount=-1 +kerning first=323 second=243 amount=-1 +kerning first=193 second=218 amount=-2 +kerning first=275 second=104 amount=-1 +kerning first=8222 second=225 amount=-1 +kerning first=310 second=334 amount=-1 +kerning first=302 second=268 amount=-1 +kerning first=8222 second=250 amount=-1 +kerning first=79 second=69 amount=-1 +kerning first=8218 second=354 amount=-3 +kerning first=266 second=268 amount=-2 +kerning first=204 second=332 amount=-1 +kerning first=278 second=79 amount=-1 +kerning first=277 second=8221 amount=-1 +kerning first=374 second=268 amount=-1 +kerning first=1052 second=1072 amount=-1 +kerning first=119 second=244 amount=-1 +kerning first=338 second=268 amount=-1 +kerning first=346 second=68 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=274 second=68 amount=-1 +kerning first=366 second=268 amount=-1 +kerning first=1072 second=1098 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=88 second=218 amount=-1 +kerning first=198 second=192 amount=-1 +kerning first=346 second=203 amount=-1 +kerning first=354 second=328 amount=-1 +kerning first=321 second=201 amount=-1 +kerning first=371 second=46 amount=-1 +kerning first=269 second=229 amount=-1 +kerning first=202 second=334 amount=-1 +kerning first=121 second=242 amount=-1 +kerning first=201 second=120 amount=-1 +kerning first=274 second=203 amount=-1 +kerning first=85 second=242 amount=-1 +kerning first=356 second=279 amount=-2 +kerning first=289 second=99 amount=-1 +kerning first=86 second=192 amount=-3 +kerning first=1038 second=1099 amount=-2 +kerning first=253 second=99 amount=-1 +kerning first=377 second=232 amount=-1 +kerning first=298 second=242 amount=-1 +kerning first=8218 second=224 amount=-1 +kerning first=214 second=289 amount=-1 +kerning first=108 second=339 amount=-1 +kerning first=262 second=242 amount=-1 +kerning first=325 second=99 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=370 second=242 amount=-1 +kerning first=286 second=289 amount=-1 +kerning first=269 second=232 amount=-1 +kerning first=313 second=282 amount=-1 +kerning first=71 second=119 amount=-1 +kerning first=107 second=119 amount=-1 +kerning first=269 second=326 amount=-1 +kerning first=226 second=106 amount=-1 +kerning first=262 second=106 amount=-1 +kerning first=81 second=346 amount=-1 +kerning first=121 second=106 amount=-1 +kerning first=248 second=119 amount=-1 +kerning first=8222 second=378 amount=-2 +kerning first=197 second=232 amount=-1 +kerning first=45 second=346 amount=-2 +kerning first=284 second=119 amount=-1 +kerning first=264 second=379 amount=-1 +kerning first=330 second=346 amount=-1 +kerning first=1043 second=1079 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=350 second=82 amount=-1 +kerning first=356 second=119 amount=-1 +kerning first=336 second=379 amount=-1 +kerning first=258 second=346 amount=-2 +kerning first=362 second=249 amount=-1 +kerning first=274 second=289 amount=-1 +kerning first=222 second=346 amount=-1 +kerning first=334 second=106 amount=-1 +kerning first=73 second=289 amount=-1 +kerning first=1102 second=1095 amount=-1 +kerning first=72 second=79 amount=-1 +kerning first=321 second=69 amount=-1 +kerning first=278 second=82 amount=-1 +kerning first=79 second=66 amount=-1 +kerning first=113 second=316 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=45 second=196 amount=-2 +kerning first=311 second=269 amount=-1 +kerning first=213 second=69 amount=-1 +kerning first=315 second=302 amount=-1 +kerning first=254 second=316 amount=-1 +kerning first=346 second=350 amount=-1 +kerning first=68 second=228 amount=-1 +kerning first=202 second=216 amount=-1 +kerning first=336 second=8217 amount=-1 +kerning first=221 second=66 amount=-1 +kerning first=1036 second=1089 amount=-1 +kerning first=200 second=199 amount=-1 +kerning first=321 second=79 amount=-1 +kerning first=274 second=216 amount=-1 +kerning first=79 second=205 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=192 second=8217 amount=-3 +kerning first=81 second=76 amount=-1 +kerning first=344 second=199 amount=-1 +kerning first=228 second=8217 amount=-1 +kerning first=45 second=76 amount=-3 +kerning first=209 second=46 amount=-1 +kerning first=220 second=251 amount=-1 +kerning first=258 second=336 amount=-1 +kerning first=245 second=46 amount=-2 +kerning first=121 second=245 amount=-1 +kerning first=281 second=46 amount=-2 +kerning first=8250 second=318 amount=-1 +kerning first=85 second=245 amount=-1 +kerning first=366 second=336 amount=-1 +kerning first=370 second=245 amount=-1 +kerning first=354 second=266 amount=-1 +kerning first=335 second=8221 amount=-1 +kerning first=235 second=252 amount=-1 +kerning first=68 second=46 amount=-1 +kerning first=8218 second=227 amount=-1 +kerning first=282 second=266 amount=-1 +kerning first=104 second=46 amount=-1 +kerning first=1088 second=1083 amount=-1 +kerning first=262 second=245 amount=-1 +kerning first=198 second=87 amount=-1 +kerning first=272 second=45 amount=-1 +kerning first=86 second=202 amount=-1 +kerning first=236 second=45 amount=-1 +kerning first=326 second=316 amount=-1 +kerning first=121 second=103 amount=-2 +kerning first=344 second=45 amount=-2 +kerning first=315 second=296 amount=-1 +kerning first=85 second=103 amount=-2 +kerning first=195 second=219 amount=-2 +kerning first=307 second=252 amount=-1 +kerning first=208 second=364 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=380 second=45 amount=-2 +kerning first=204 second=335 amount=-1 +kerning first=381 second=259 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=76 second=253 amount=-1 +kerning first=85 second=369 amount=-1 +kerning first=112 second=253 amount=-1 +kerning first=246 second=375 amount=-1 +kerning first=66 second=85 amount=-2 +kerning first=1067 second=1073 amount=-1 +kerning first=217 second=253 amount=-1 +kerning first=370 second=103 amount=-2 +kerning first=187 second=287 amount=-1 +kerning first=316 second=246 amount=-1 +kerning first=317 second=103 amount=-1 +kerning first=334 second=103 amount=-1 +kerning first=8218 second=85 amount=-2 +kerning first=289 second=253 amount=-1 +kerning first=379 second=252 amount=-1 +kerning first=87 second=116 amount=-1 +kerning first=83 second=356 amount=-1 +kerning first=298 second=103 amount=-1 +kerning first=325 second=253 amount=-1 +kerning first=200 second=45 amount=-1 +kerning first=201 second=259 amount=-1 +kerning first=262 second=103 amount=-1 +kerning first=192 second=116 amount=-1 +kerning first=74 second=83 amount=-1 +kerning first=226 second=103 amount=-1 +kerning first=296 second=267 amount=-1 +kerning first=255 second=382 amount=-1 +kerning first=212 second=122 amount=-1 +kerning first=103 second=246 amount=-1 +kerning first=370 second=369 amount=-1 +kerning first=291 second=382 amount=-1 +kerning first=67 second=246 amount=-1 +kerning first=107 second=279 amount=-1 +kerning first=8250 second=280 amount=-3 +kerning first=8220 second=240 amount=-1 +kerning first=327 second=382 amount=-1 +kerning first=79 second=323 amount=-1 +kerning first=363 second=382 amount=-1 +kerning first=71 second=122 amount=-1 +kerning first=75 second=8221 amount=-1 +kerning first=262 second=369 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=78 second=382 amount=-1 +kerning first=255 second=109 amount=-1 +kerning first=356 second=122 amount=-2 +kerning first=226 second=369 amount=-1 +kerning first=323 second=83 amount=-1 +kerning first=69 second=266 amount=-1 +kerning first=284 second=122 amount=-1 +kerning first=298 second=369 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=332 second=356 amount=-1 +kerning first=219 second=382 amount=-1 +kerning first=291 second=109 amount=-1 +kerning first=248 second=122 amount=-1 +kerning first=105 second=115 amount=-1 +kerning first=262 second=248 amount=-1 +kerning first=8218 second=230 amount=-1 +kerning first=218 second=198 amount=-2 +kerning first=298 second=248 amount=-1 +kerning first=1038 second=1105 amount=-2 +kerning first=83 second=90 amount=-1 +kerning first=69 second=115 amount=-1 +kerning first=290 second=198 amount=-1 +kerning first=201 second=380 amount=-1 +kerning first=354 second=263 amount=-2 +kerning first=86 second=109 amount=-1 +kerning first=363 second=117 amount=-1 +kerning first=282 second=115 amount=-1 +kerning first=85 second=248 amount=-1 +kerning first=86 second=244 amount=-2 +kerning first=376 second=288 amount=-1 +kerning first=121 second=248 amount=-1 +kerning first=171 second=89 amount=-2 +kerning first=117 second=307 amount=-1 +kerning first=246 second=115 amount=-1 +kerning first=290 second=313 amount=-1 +kerning first=68 second=315 amount=-1 +kerning first=314 second=233 amount=-1 +kerning first=76 second=365 amount=-1 +kerning first=202 second=213 amount=-1 +kerning first=354 second=115 amount=-2 +kerning first=287 second=355 amount=-1 +kerning first=274 second=213 amount=-1 +kerning first=198 second=298 amount=-1 +kerning first=83 second=350 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=222 second=73 amount=-1 +kerning first=362 second=198 amount=-2 +kerning first=83 second=97 amount=-1 +kerning first=370 second=248 amount=-1 +kerning first=354 second=377 amount=-1 +kerning first=260 second=350 amount=-2 +kerning first=202 second=328 amount=-1 +kerning first=264 second=110 amount=-1 +kerning first=45 second=73 amount=-3 +kerning first=296 second=350 amount=-1 +kerning first=85 second=363 amount=-1 +kerning first=211 second=325 amount=-1 +kerning first=8250 second=203 amount=-3 +kerning first=90 second=225 amount=-1 +kerning first=81 second=73 amount=-1 +kerning first=103 second=98 amount=-1 +kerning first=268 second=269 amount=-1 +kerning first=67 second=98 amount=-1 +kerning first=65 second=85 amount=-2 +kerning first=258 second=221 amount=-3 +kerning first=346 second=328 amount=-1 +kerning first=226 second=363 amount=-1 +kerning first=262 second=363 amount=-1 +kerning first=200 second=196 amount=-1 +kerning first=317 second=315 amount=-1 +kerning first=332 second=350 amount=-1 +kerning first=274 second=328 amount=-1 +kerning first=298 second=363 amount=-1 +kerning first=252 second=303 amount=-1 +kerning first=222 second=221 amount=-1 +kerning first=368 second=350 amount=-1 +kerning first=69 second=260 amount=-1 +kerning first=272 second=196 amount=-2 +kerning first=339 second=225 amount=-1 +kerning first=352 second=98 amount=-1 +kerning first=366 second=264 amount=-1 +kerning first=210 second=260 amount=-2 +kerning first=370 second=363 amount=-1 +kerning first=381 second=380 amount=-1 +kerning first=375 second=225 amount=-2 +kerning first=316 second=98 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=282 second=260 amount=-1 +kerning first=382 second=328 amount=-1 +kerning first=1045 second=1093 amount=-1 +kerning first=354 second=260 amount=-3 +kerning first=204 second=338 amount=-1 +kerning first=350 second=85 amount=-1 +kerning first=353 second=46 amount=-1 +kerning first=231 second=225 amount=-1 +kerning first=267 second=225 amount=-1 +kerning first=1038 second=1102 amount=-2 +kerning first=280 second=98 amount=-1 +kerning first=278 second=85 amount=-1 +kerning first=303 second=225 amount=-1 +kerning first=78 second=112 amount=-1 +kerning first=8249 second=374 amount=-2 +kerning first=1052 second=1077 amount=-1 +kerning first=87 second=261 amount=-2 +kerning first=307 second=367 amount=-1 +kerning first=45 second=302 amount=-3 +kerning first=199 second=367 amount=-1 +kerning first=74 second=352 amount=-1 +kerning first=235 second=367 amount=-1 +kerning first=278 second=351 amount=-1 +kerning first=381 second=111 amount=-1 +kerning first=242 second=351 amount=-1 +kerning first=81 second=278 amount=-1 +kerning first=350 second=351 amount=-1 +kerning first=201 second=377 amount=-1 +kerning first=314 second=351 amount=-1 +kerning first=336 second=8220 amount=-1 +kerning first=364 second=326 amount=-1 +kerning first=1036 second=1092 amount=-1 +kerning first=363 second=112 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=73 second=171 amount=-2 +kerning first=197 second=235 amount=-1 +kerning first=115 second=326 amount=-1 +kerning first=325 second=250 amount=-1 +kerning first=327 second=112 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=220 second=211 amount=-1 +kerning first=82 second=287 amount=-1 +kerning first=291 second=113 amount=-1 +kerning first=192 second=8220 amount=-3 +kerning first=381 second=377 amount=-1 +kerning first=269 second=235 amount=-1 +kerning first=220 second=326 amount=-1 +kerning first=255 second=112 amount=-1 +kerning first=217 second=250 amount=-1 +kerning first=66 second=302 amount=-2 +kerning first=219 second=112 amount=-1 +kerning first=264 second=261 amount=-1 +kerning first=118 second=287 amount=-2 +kerning first=8220 second=243 amount=-1 +kerning first=377 second=235 amount=-1 +kerning first=364 second=211 amount=-1 +kerning first=104 second=121 amount=-1 +kerning first=336 second=261 amount=-1 +kerning first=223 second=287 amount=-1 +kerning first=260 second=353 amount=-1 +kerning first=251 second=237 amount=-1 +kerning first=282 second=378 amount=-1 +kerning first=331 second=287 amount=-1 +kerning first=264 second=113 amount=-1 +kerning first=296 second=353 amount=-1 +kerning first=8216 second=335 amount=-1 +kerning first=246 second=378 amount=-1 +kerning first=295 second=287 amount=-1 +kerning first=381 second=262 amount=-1 +kerning first=119 second=261 amount=-2 +kerning first=354 second=378 amount=-2 +kerning first=192 second=113 amount=-1 +kerning first=368 second=353 amount=-1 +kerning first=68 second=197 amount=-2 +kerning first=367 second=287 amount=-1 +kerning first=325 second=365 amount=-1 +kerning first=74 second=237 amount=-1 +kerning first=105 second=378 amount=-1 +kerning first=262 second=366 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=69 second=378 amount=-1 +kerning first=250 second=171 amount=-1 +kerning first=374 second=242 amount=-1 +kerning first=210 second=378 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=370 second=100 amount=-1 +kerning first=217 second=365 amount=-1 +kerning first=87 second=379 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=199 second=249 amount=-1 +kerning first=1058 second=1117 amount=-1 +kerning first=121 second=100 amount=-1 +kerning first=233 second=109 amount=-1 +kerning first=317 second=197 amount=-1 +kerning first=1025 second=1078 amount=-1 +kerning first=323 second=352 amount=-1 +kerning first=235 second=249 amount=-1 +kerning first=377 second=87 amount=-1 +kerning first=73 second=112 amount=-1 +kerning first=304 second=288 amount=-1 +kerning first=262 second=100 amount=-1 +kerning first=278 second=66 amount=-1 +kerning first=197 second=87 amount=-3 +kerning first=87 second=113 amount=-2 +kerning first=201 second=262 amount=-1 +kerning first=379 second=249 amount=-1 +kerning first=1056 second=1104 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=307 second=249 amount=-1 +kerning first=85 second=100 amount=-1 +kerning first=80 second=243 amount=-1 +kerning first=90 second=117 amount=-1 +kerning first=213 second=217 amount=-1 +kerning first=122 second=314 amount=-1 +kerning first=1059 second=1040 amount=-3 +kerning first=378 second=106 amount=-1 +kerning first=346 second=218 amount=-1 +kerning first=263 second=314 amount=-1 +kerning first=70 second=269 amount=-1 +kerning first=221 second=243 amount=-2 +kerning first=327 second=288 amount=-1 +kerning first=227 second=314 amount=-1 +kerning first=321 second=217 amount=-1 +kerning first=335 second=314 amount=-1 +kerning first=198 second=366 amount=-1 +kerning first=316 second=333 amount=-1 +kerning first=78 second=288 amount=-1 +kerning first=68 second=68 amount=-1 +kerning first=45 second=224 amount=-1 +kerning first=371 second=314 amount=-1 +kerning first=45 second=367 amount=-1 +kerning first=268 second=198 amount=-2 +kerning first=88 second=262 amount=-1 +kerning first=81 second=224 amount=-1 +kerning first=254 second=307 amount=-1 +kerning first=1059 second=1033 amount=-3 +kerning first=222 second=224 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=337 second=255 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=370 second=326 amount=-1 +kerning first=90 second=210 amount=-1 +kerning first=229 second=255 amount=-1 +kerning first=202 second=197 amount=-1 +kerning first=366 second=224 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=330 second=224 amount=-1 +kerning first=381 second=274 amount=-1 +kerning first=203 second=229 amount=-1 +kerning first=280 second=73 amount=-1 +kerning first=86 second=75 amount=-1 +kerning first=8220 second=256 amount=-4 +kerning first=352 second=73 amount=-1 +kerning first=199 second=101 amount=-1 +kerning first=122 second=375 amount=-1 +kerning first=376 second=198 amount=-3 +kerning first=347 second=229 amount=-1 +kerning first=216 second=120 amount=-1 +kerning first=8217 second=81 amount=-1 +kerning first=296 second=118 amount=-1 +kerning first=252 second=120 amount=-1 +kerning first=275 second=229 amount=-1 +kerning first=208 second=73 amount=-1 +kerning first=311 second=229 amount=-1 +kerning first=368 second=118 amount=-1 +kerning first=90 second=203 amount=-1 +kerning first=379 second=101 amount=-1 +kerning first=69 second=108 amount=-1 +kerning first=208 second=80 amount=-1 +kerning first=378 second=113 amount=-1 +kerning first=119 second=118 amount=-1 +kerning first=321 second=196 amount=-1 +kerning first=233 second=347 amount=-1 +kerning first=337 second=8220 amount=-1 +kerning first=260 second=118 amount=-2 +kerning first=352 second=226 amount=-1 +kerning first=280 second=80 amount=-1 +kerning first=224 second=118 amount=-1 +kerning first=67 second=73 amount=-1 +kerning first=334 second=87 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=213 second=196 amount=-2 +kerning first=288 second=198 amount=-1 +kerning first=229 second=8220 amount=-1 +kerning first=234 second=106 amount=-1 +kerning first=262 second=87 amount=-1 +kerning first=83 second=118 amount=-1 +kerning first=317 second=68 amount=-1 +kerning first=75 second=99 amount=-1 +kerning first=88 second=8220 amount=-1 +kerning first=356 second=249 amount=-1 +kerning first=1057 second=1113 amount=-1 +kerning first=280 second=361 amount=-1 +kerning first=260 second=111 amount=-1 +kerning first=65 second=364 amount=-2 +kerning first=221 second=264 amount=-1 +kerning first=296 second=111 amount=-1 +kerning first=352 second=361 amount=-1 +kerning first=316 second=361 amount=-1 +kerning first=78 second=267 amount=-1 +kerning first=278 second=364 amount=-1 +kerning first=291 second=267 amount=-1 +kerning first=255 second=316 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=327 second=267 amount=-1 +kerning first=119 second=111 amount=-1 +kerning first=291 second=316 amount=-1 +kerning first=66 second=104 amount=-1 +kerning first=268 second=356 amount=-1 +kerning first=347 second=257 amount=-1 +kerning first=219 second=267 amount=-1 +kerning first=1100 second=1116 amount=-1 +kerning first=255 second=267 amount=-1 +kerning first=8217 second=109 amount=-1 +kerning first=334 second=66 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=209 second=81 amount=-1 +kerning first=242 second=104 amount=-1 +kerning first=381 second=337 amount=-1 +kerning first=350 second=364 amount=-1 +kerning first=262 second=66 amount=-1 +kerning first=283 second=44 amount=-2 +kerning first=368 second=111 amount=-1 +kerning first=103 second=361 amount=-1 +kerning first=1078 second=1104 amount=-1 +kerning first=201 second=274 amount=-1 +kerning first=67 second=361 amount=-1 +kerning first=350 second=104 amount=-1 +kerning first=106 second=44 amount=-1 +kerning first=117 second=115 amount=-1 +kerning first=70 second=44 amount=-2 +kerning first=314 second=97 amount=-1 +kerning first=347 second=250 amount=-1 +kerning first=370 second=347 amount=-1 +kerning first=201 second=302 amount=-1 +kerning first=356 second=8250 amount=-1 +kerning first=89 second=278 amount=-1 +kerning first=350 second=97 amount=-1 +kerning first=262 second=326 amount=-1 +kerning first=376 second=226 amount=-2 +kerning first=83 second=378 amount=-1 +kerning first=346 second=346 amount=-1 +kerning first=298 second=347 amount=-1 +kerning first=214 second=205 amount=-1 +kerning first=278 second=97 amount=-1 +kerning first=262 second=347 amount=-1 +kerning first=203 second=250 amount=-1 +kerning first=226 second=347 amount=-1 +kerning first=266 second=278 amount=-1 +kerning first=85 second=326 amount=-1 +kerning first=73 second=233 amount=-1 +kerning first=8220 second=277 amount=-1 +kerning first=374 second=278 amount=-1 +kerning first=121 second=326 amount=-1 +kerning first=275 second=250 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=338 second=278 amount=-1 +kerning first=262 second=354 amount=-1 +kerning first=85 second=347 amount=-1 +kerning first=332 second=378 amount=-1 +kerning first=368 second=90 amount=-1 +kerning first=363 second=316 amount=-1 +kerning first=275 second=257 amount=-1 +kerning first=376 second=219 amount=-1 +kerning first=296 second=378 amount=-1 +kerning first=332 second=90 amount=-1 +kerning first=227 second=103 amount=-1 +kerning first=334 second=354 amount=-1 +kerning first=311 second=257 amount=-1 +kerning first=103 second=333 amount=-1 +kerning first=280 second=45 amount=-1 +kerning first=203 second=257 amount=-1 +kerning first=368 second=378 amount=-1 +kerning first=122 second=103 amount=-1 +kerning first=381 second=302 amount=-1 +kerning first=73 second=212 amount=-1 +kerning first=268 second=219 amount=-1 +kerning first=8222 second=253 amount=-1 +kerning first=86 second=103 amount=-2 +kerning first=1057 second=1092 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=316 second=45 amount=-1 +kerning first=1057 second=1085 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=232 second=226 amount=-1 +kerning first=196 second=219 amount=-2 +kerning first=1093 second=1092 amount=-1 +kerning first=122 second=110 amount=-1 +kerning first=268 second=226 amount=-1 +kerning first=67 second=333 amount=-1 +kerning first=304 second=226 amount=-1 +kerning first=232 second=328 amount=-1 +kerning first=122 second=363 amount=-1 +kerning first=278 second=214 amount=-1 +kerning first=203 second=194 amount=-1 +kerning first=227 second=363 amount=-1 +kerning first=1050 second=1089 amount=-1 +kerning first=1100 second=1088 amount=-1 +kerning first=263 second=363 amount=-1 +kerning first=330 second=259 amount=-1 +kerning first=88 second=318 amount=-1 +kerning first=371 second=110 amount=-1 +kerning first=211 second=220 amount=-1 +kerning first=202 second=65 amount=-1 +kerning first=379 second=353 amount=-1 +kerning first=193 second=318 amount=-1 +kerning first=1042 second=1063 amount=-1 +kerning first=371 second=363 amount=-1 +kerning first=274 second=65 amount=-1 +kerning first=366 second=259 amount=-2 +kerning first=229 second=318 amount=-1 +kerning first=206 second=214 amount=-1 +kerning first=205 second=369 amount=-1 +kerning first=277 second=116 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=381 second=77 amount=-1 +kerning first=117 second=259 amount=-1 +kerning first=201 second=330 amount=-1 +kerning first=277 second=369 amount=-1 +kerning first=337 second=318 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=241 second=369 amount=-1 +kerning first=222 second=259 amount=-1 +kerning first=211 second=304 amount=-1 +kerning first=73 second=240 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=100 second=369 amount=-1 +kerning first=81 second=259 amount=-1 +kerning first=381 second=330 amount=-1 +kerning first=45 second=259 amount=-1 +kerning first=101 second=97 amount=-1 +kerning first=246 second=253 amount=-1 +kerning first=68 second=377 amount=-1 +kerning first=113 second=279 amount=-1 +kerning first=112 second=375 amount=-1 +kerning first=119 second=228 amount=-1 +kerning first=195 second=374 amount=-3 +kerning first=76 second=375 amount=-1 +kerning first=232 second=254 amount=-1 +kerning first=83 second=228 amount=-1 +kerning first=218 second=279 amount=-1 +kerning first=354 second=253 amount=-1 +kerning first=66 second=209 amount=-2 +kerning first=118 second=355 amount=-1 +kerning first=90 second=374 amount=-1 +kerning first=325 second=375 amount=-1 +kerning first=313 second=369 amount=-1 +kerning first=268 second=337 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=289 second=375 amount=-1 +kerning first=99 second=273 amount=-1 +kerning first=77 second=279 amount=-1 +kerning first=69 second=361 amount=-1 +kerning first=346 second=8221 amount=-1 +kerning first=217 second=375 amount=-1 +kerning first=220 second=332 amount=-1 +kerning first=1067 second=1108 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=1104 second=1103 amount=-1 +kerning first=187 second=355 amount=-1 +kerning first=201 second=287 amount=-1 +kerning first=317 second=377 amount=-1 +kerning first=1031 second=1108 amount=-1 +kerning first=88 second=234 amount=-1 +kerning first=262 second=298 amount=-1 +kerning first=81 second=287 amount=-1 +kerning first=256 second=332 amount=-1 +kerning first=67 second=284 amount=-2 +kerning first=45 second=287 amount=-1 +kerning first=8250 second=356 amount=-2 +kerning first=193 second=234 amount=-1 +kerning first=364 second=332 amount=-1 +kerning first=334 second=298 amount=-1 +kerning first=198 second=310 amount=-1 +kerning first=267 second=119 amount=-1 +kerning first=86 second=363 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=362 second=279 amount=-1 +kerning first=258 second=287 amount=-1 +kerning first=212 second=313 amount=-1 +kerning first=371 second=335 amount=-1 +kerning first=289 second=108 amount=-1 +kerning first=198 second=338 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=66 second=375 amount=-1 +kerning first=222 second=8217 amount=-1 +kerning first=222 second=287 amount=-1 +kerning first=258 second=8217 amount=-3 +kerning first=197 second=242 amount=-1 +kerning first=330 second=287 amount=-1 +kerning first=381 second=105 amount=-1 +kerning first=99 second=245 amount=-1 +kerning first=269 second=242 amount=-1 +kerning first=76 second=197 amount=-1 +kerning first=366 second=287 amount=-2 +kerning first=71 second=313 amount=-1 +kerning first=263 second=335 amount=-1 +kerning first=81 second=8217 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=117 second=8217 amount=-2 +kerning first=217 second=197 amount=-2 +kerning first=216 second=380 amount=-1 +kerning first=334 second=270 amount=-1 +kerning first=1064 second=1060 amount=-1 +kerning first=105 second=225 amount=-1 +kerning first=252 second=380 amount=-1 +kerning first=377 second=242 amount=-1 +kerning first=86 second=335 amount=-2 +kerning first=76 second=108 amount=-1 +kerning first=87 second=119 amount=-1 +kerning first=330 second=231 amount=-1 +kerning first=210 second=225 amount=-1 +kerning first=122 second=335 amount=-1 +kerning first=221 second=277 amount=-2 +kerning first=84 second=90 amount=-1 +kerning first=366 second=231 amount=-1 +kerning first=192 second=119 amount=-2 +kerning first=1060 second=1049 amount=-1 +kerning first=368 second=228 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=228 second=119 amount=-1 +kerning first=1024 second=1049 amount=-1 +kerning first=332 second=228 amount=-1 +kerning first=1061 second=1118 amount=-1 +kerning first=253 second=108 amount=-1 +kerning first=264 second=119 amount=-1 +kerning first=262 second=270 amount=-1 +kerning first=296 second=228 amount=-1 +kerning first=89 second=74 amount=-2 +kerning first=69 second=225 amount=-1 +kerning first=235 second=122 amount=-1 +kerning first=374 second=46 amount=-3 +kerning first=199 second=122 amount=-1 +kerning first=67 second=256 amount=-2 +kerning first=75 second=352 amount=-1 +kerning first=332 second=200 amount=-1 +kerning first=187 second=102 amount=-1 +kerning first=216 second=352 amount=-1 +kerning first=376 second=201 amount=-1 +kerning first=266 second=74 amount=-1 +kerning first=8250 second=328 amount=-1 +kerning first=379 second=122 amount=-1 +kerning first=230 second=46 amount=-2 +kerning first=280 second=256 amount=-1 +kerning first=288 second=352 amount=-1 +kerning first=282 second=225 amount=-1 +kerning first=338 second=74 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=208 second=352 amount=-1 +kerning first=8218 second=104 amount=-1 +kerning first=208 second=256 amount=-2 +kerning first=113 second=307 amount=-1 +kerning first=354 second=225 amount=-2 +kerning first=338 second=46 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=89 second=46 amount=-3 +kerning first=264 second=211 amount=-2 +kerning first=204 second=245 amount=-1 +kerning first=352 second=256 amount=-2 +kerning first=192 second=211 amount=-1 +kerning first=367 second=102 amount=-1 +kerning first=115 second=171 amount=-1 +kerning first=8250 second=68 amount=-3 +kerning first=362 second=216 amount=-1 +kerning first=256 second=107 amount=-1 +kerning first=220 second=171 amount=-3 +kerning first=107 second=112 amount=-1 +kerning first=379 second=211 amount=-1 +kerning first=256 second=171 amount=-2 +kerning first=1043 second=1086 amount=-1 +kerning first=208 second=8221 amount=-1 +kerning first=115 second=107 amount=-1 +kerning first=244 second=8221 amount=-1 +kerning first=232 second=237 amount=-1 +kerning first=351 second=261 amount=-1 +kerning first=328 second=251 amount=-1 +kerning first=79 second=171 amount=-1 +kerning first=81 second=323 amount=-1 +kerning first=374 second=105 amount=-1 +kerning first=352 second=8221 amount=-1 +kerning first=1063 second=1072 amount=-1 +kerning first=364 second=100 amount=-1 +kerning first=266 second=105 amount=-1 +kerning first=8218 second=217 amount=-2 +kerning first=289 second=235 amount=-1 +kerning first=1027 second=1072 amount=-1 +kerning first=325 second=235 amount=-1 +kerning first=187 second=296 amount=-3 +kerning first=187 second=344 amount=-3 +kerning first=303 second=110 amount=-1 +kerning first=316 second=8221 amount=-2 +kerning first=230 second=105 amount=-1 +kerning first=220 second=100 amount=-1 +kerning first=356 second=112 amount=-1 +kerning first=89 second=105 amount=-1 +kerning first=195 second=86 amount=-3 +kerning first=328 second=171 amount=-1 +kerning first=256 second=100 amount=-1 +kerning first=120 second=251 amount=-1 +kerning first=364 second=171 amount=-3 +kerning first=211 second=85 amount=-1 +kerning first=356 second=81 amount=-1 +kerning first=90 second=86 amount=-1 +kerning first=84 second=251 amount=-1 +kerning first=187 second=327 amount=-3 +kerning first=83 second=305 amount=-1 +kerning first=248 second=112 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=225 second=251 amount=-1 +kerning first=282 second=171 amount=-1 +kerning first=66 second=230 amount=-1 +kerning first=90 second=353 amount=-1 +kerning first=102 second=230 amount=-1 +kerning first=76 second=204 amount=-1 +kerning first=274 second=346 amount=-1 +kerning first=84 second=233 amount=-2 +kerning first=287 second=249 amount=-1 +kerning first=261 second=251 amount=-1 +kerning first=323 second=249 amount=-1 +kerning first=71 second=379 amount=-1 +kerning first=196 second=275 amount=-1 +kerning first=231 second=353 amount=-1 +kerning first=200 second=206 amount=-1 +kerning first=369 second=251 amount=-1 +kerning first=212 second=379 amount=-1 +kerning first=1053 second=1105 amount=-1 +kerning first=74 second=256 amount=-3 +kerning first=272 second=206 amount=-1 +kerning first=381 second=365 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=284 second=379 amount=-1 +kerning first=84 second=223 amount=-1 +kerning first=364 second=339 amount=-1 +kerning first=1113 second=1114 amount=-1 +kerning first=351 second=230 amount=-1 +kerning first=90 second=83 amount=-1 +kerning first=376 second=275 amount=-2 +kerning first=356 second=313 amount=-1 +kerning first=279 second=230 amount=-1 +kerning first=251 second=249 amount=-1 +kerning first=73 second=268 amount=-1 +kerning first=195 second=83 amount=-2 +kerning first=199 second=211 amount=-2 +kerning first=110 second=249 amount=-1 +kerning first=304 second=275 amount=-1 +kerning first=284 second=313 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=77 second=244 amount=-1 +kerning first=279 second=289 amount=-1 +kerning first=269 second=103 amount=-1 +kerning first=113 second=244 amount=-1 +kerning first=69 second=194 amount=-1 +kerning first=315 second=289 amount=-1 +kerning first=8250 second=65 amount=-2 +kerning first=380 second=237 amount=-1 +kerning first=220 second=192 amount=-2 +kerning first=351 second=289 amount=-1 +kerning first=218 second=244 amount=-1 +kerning first=71 second=344 amount=-1 +kerning first=323 second=284 amount=-1 +kerning first=220 second=339 amount=-1 +kerning first=1078 second=1091 amount=-1 +kerning first=79 second=192 amount=-2 +kerning first=235 second=98 amount=-1 +kerning first=256 second=339 amount=-1 +kerning first=236 second=237 amount=-1 +kerning first=1114 second=1091 amount=-1 +kerning first=362 second=244 amount=-1 +kerning first=220 second=199 amount=-1 +kerning first=356 second=379 amount=-1 +kerning first=354 second=194 amount=-3 +kerning first=253 second=232 amount=-1 +kerning first=217 second=232 amount=-1 +kerning first=282 second=194 amount=-1 +kerning first=325 second=232 amount=-1 +kerning first=374 second=77 amount=-1 +kerning first=66 second=289 amount=-2 +kerning first=287 second=277 amount=-1 +kerning first=202 second=346 amount=-1 +kerning first=210 second=194 amount=-2 +kerning first=102 second=289 amount=-1 +kerning first=204 second=235 amount=-1 +kerning first=84 second=282 amount=-1 +kerning first=207 second=289 amount=-1 +kerning first=323 second=277 amount=-1 +kerning first=233 second=328 amount=-1 +kerning first=8218 second=221 amount=-3 +kerning first=243 second=289 amount=-1 +kerning first=217 second=111 amount=-1 +kerning first=248 second=351 amount=-1 +kerning first=90 second=350 amount=-1 +kerning first=261 second=254 amount=-1 +kerning first=339 second=121 amount=-1 +kerning first=74 second=277 amount=-1 +kerning first=315 second=202 amount=-1 +kerning first=303 second=121 amount=-1 +kerning first=267 second=121 amount=-1 +kerning first=214 second=379 amount=-1 +kerning first=369 second=254 amount=-1 +kerning first=231 second=121 amount=-1 +kerning first=377 second=69 amount=-1 +kerning first=200 second=209 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=328 second=367 amount=-1 +kerning first=1071 second=1095 amount=-1 +kerning first=120 second=254 amount=-1 +kerning first=364 second=367 amount=-1 +kerning first=195 second=350 amount=-2 +kerning first=90 second=121 amount=-2 +kerning first=256 second=367 amount=-1 +kerning first=107 second=351 amount=-1 +kerning first=74 second=305 amount=-1 +kerning first=284 second=344 amount=-1 +kerning first=375 second=114 amount=-1 +kerning first=256 second=79 amount=-1 +kerning first=104 second=117 amount=-1 +kerning first=74 second=284 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=220 second=367 amount=-1 +kerning first=77 second=216 amount=-1 +kerning first=287 second=305 amount=-1 +kerning first=346 second=374 amount=-1 +kerning first=1114 second=1119 amount=-1 +kerning first=351 second=117 amount=-1 +kerning first=85 second=260 amount=-2 +kerning first=364 second=199 amount=-1 +kerning first=279 second=261 amount=-1 +kerning first=115 second=367 amount=-1 +kerning first=220 second=79 amount=-1 +kerning first=317 second=117 amount=-1 +kerning first=274 second=374 amount=-1 +kerning first=356 second=351 amount=-2 +kerning first=281 second=117 amount=-1 +kerning first=79 second=72 amount=-1 +kerning first=364 second=192 amount=-2 +kerning first=202 second=374 amount=-1 +kerning first=66 second=261 amount=-1 +kerning first=353 second=117 amount=-1 +kerning first=1043 second=1089 amount=-1 +kerning first=1027 second=1051 amount=-3 +kerning first=262 second=260 amount=-2 +kerning first=102 second=261 amount=-1 +kerning first=364 second=79 amount=-1 +kerning first=381 second=361 amount=-1 +kerning first=121 second=291 amount=-2 +kerning first=370 second=260 amount=-2 +kerning first=337 second=311 amount=-1 +kerning first=248 second=316 amount=-1 +kerning first=315 second=286 amount=-1 +kerning first=85 second=291 amount=-2 +kerning first=334 second=260 amount=-2 +kerning first=207 second=352 amount=-1 +kerning first=8218 second=364 amount=-2 +kerning first=207 second=286 amount=-1 +kerning first=113 second=241 amount=-1 +kerning first=198 second=317 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=121 second=267 amount=-1 +kerning first=317 second=356 amount=-1 +kerning first=193 second=311 amount=-1 +kerning first=307 second=382 amount=-1 +kerning first=187 second=362 amount=-2 +kerning first=88 second=311 amount=-1 +kerning first=1064 second=1057 amount=-1 +kerning first=85 second=267 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=84 second=226 amount=-2 +kerning first=379 second=382 amount=-1 +kerning first=118 second=331 amount=-1 +kerning first=187 second=331 amount=-1 +kerning first=278 second=221 amount=-1 +kerning first=110 second=252 amount=-1 +kerning first=65 second=221 amount=-3 +kerning first=1024 second=1056 amount=-1 +kerning first=201 second=361 amount=-1 +kerning first=1060 second=1056 amount=-1 +kerning first=204 second=266 amount=-1 +kerning first=1053 second=1092 amount=-1 +kerning first=66 second=202 amount=-2 +kerning first=79 second=103 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=212 second=356 amount=-1 +kerning first=251 second=252 amount=-1 +kerning first=65 second=104 amount=-1 +kerning first=90 second=381 amount=-1 +kerning first=287 second=252 amount=-1 +kerning first=203 second=201 amount=-1 +kerning first=76 second=207 amount=-1 +kerning first=323 second=252 amount=-1 +kerning first=355 second=8249 amount=-1 +kerning first=120 second=226 amount=-1 +kerning first=74 second=45 amount=-2 +kerning first=71 second=84 amount=-1 +kerning first=264 second=246 amount=-1 +kerning first=364 second=103 amount=-2 +kerning first=74 second=336 amount=-1 +kerning first=68 second=356 amount=-1 +kerning first=328 second=103 amount=-1 +kerning first=370 second=291 amount=-2 +kerning first=199 second=382 amount=-1 +kerning first=192 second=246 amount=-1 +kerning first=334 second=291 amount=-1 +kerning first=235 second=382 amount=-1 +kerning first=110 second=45 amount=-1 +kerning first=284 second=84 amount=-1 +kerning first=356 second=109 amount=-1 +kerning first=256 second=103 amount=-1 +kerning first=298 second=291 amount=-1 +kerning first=251 second=45 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=220 second=103 amount=-2 +kerning first=262 second=291 amount=-1 +kerning first=88 second=227 amount=-1 +kerning first=212 second=84 amount=-1 +kerning first=369 second=226 amount=-1 +kerning first=226 second=291 amount=-1 +kerning first=334 second=259 amount=-1 +kerning first=323 second=45 amount=-2 +kerning first=87 second=78 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=323 second=336 amount=-1 +kerning first=287 second=45 amount=-1 +kerning first=370 second=263 amount=-1 +kerning first=264 second=352 amount=-1 +kerning first=192 second=218 amount=-2 +kerning first=362 second=213 amount=-1 +kerning first=87 second=218 amount=-1 +kerning first=336 second=218 amount=-1 +kerning first=198 second=314 amount=-1 +kerning first=112 second=115 amount=-1 +kerning first=262 second=263 amount=-1 +kerning first=350 second=193 amount=-2 +kerning first=73 second=243 amount=-1 +kerning first=298 second=263 amount=-1 +kerning first=77 second=269 amount=-1 +kerning first=264 second=218 amount=-1 +kerning first=356 second=288 amount=-1 +kerning first=229 second=8217 amount=-1 +kerning first=79 second=370 amount=-1 +kerning first=278 second=193 amount=-1 +kerning first=234 second=314 amount=-1 +kerning first=76 second=115 amount=-1 +kerning first=289 second=115 amount=-1 +kerning first=85 second=263 amount=-1 +kerning first=113 second=269 amount=-1 +kerning first=8218 second=97 amount=-1 +kerning first=208 second=8249 amount=-1 +kerning first=325 second=115 amount=-1 +kerning first=245 second=120 amount=-1 +kerning first=121 second=263 amount=-1 +kerning first=67 second=8249 amount=-2 +kerning first=217 second=115 amount=-1 +kerning first=281 second=120 amount=-1 +kerning first=1042 second=1038 amount=-1 +kerning first=218 second=269 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=378 second=314 amount=-1 +kerning first=253 second=115 amount=-1 +kerning first=317 second=120 amount=-1 +kerning first=198 second=78 amount=-1 +kerning first=267 second=353 amount=-1 +kerning first=77 second=213 amount=-1 +kerning first=88 second=224 amount=-1 +kerning first=79 second=75 amount=-1 +kerning first=303 second=353 amount=-1 +kerning first=68 second=120 amount=-1 +kerning first=218 second=213 amount=-1 +kerning first=201 second=70 amount=-1 +kerning first=339 second=353 amount=-1 +kerning first=362 second=269 amount=-1 +kerning first=375 second=353 amount=-1 +kerning first=350 second=317 amount=-1 +kerning first=201 second=98 amount=-1 +kerning first=339 second=118 amount=-1 +kerning first=88 second=255 amount=-2 +kerning first=374 second=197 amount=-3 +kerning first=303 second=118 amount=-1 +kerning first=286 second=89 amount=-1 +kerning first=375 second=118 amount=-1 +kerning first=195 second=118 amount=-2 +kerning first=316 second=8249 amount=-1 +kerning first=187 second=303 amount=-1 +kerning first=65 second=101 amount=-1 +kerning first=353 second=120 amount=-1 +kerning first=264 second=99 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=352 second=8249 amount=-1 +kerning first=223 second=303 amount=-1 +kerning first=267 second=118 amount=-1 +kerning first=225 second=171 amount=-1 +kerning first=217 second=235 amount=-1 +kerning first=1027 second=1076 amount=-1 +kerning first=350 second=221 amount=-1 +kerning first=280 second=8249 amount=-1 +kerning first=118 second=303 amount=-1 +kerning first=206 second=101 amount=-1 +kerning first=253 second=235 amount=-1 +kerning first=327 second=375 amount=-1 +kerning first=362 second=241 amount=-1 +kerning first=220 second=196 amount=-2 +kerning first=1025 second=1093 amount=-1 +kerning first=193 second=283 amount=-1 +kerning first=90 second=118 amount=-1 +kerning first=317 second=328 amount=-1 +kerning first=314 second=101 amount=-1 +kerning first=1049 second=1073 amount=-1 +kerning first=256 second=370 amount=-2 +kerning first=281 second=328 amount=-1 +kerning first=88 second=283 amount=-1 +kerning first=218 second=241 amount=-1 +kerning first=253 second=46 amount=-3 +kerning first=79 second=196 amount=-2 +kerning first=380 second=283 amount=-1 +kerning first=367 second=380 amount=-1 +kerning first=1038 second=1087 amount=-2 +kerning first=344 second=283 amount=-1 +kerning first=117 second=8220 amount=-2 +kerning first=119 second=108 amount=-1 +kerning first=81 second=8220 amount=-1 +kerning first=1042 second=1045 amount=-1 +kerning first=76 second=118 amount=-1 +kerning first=86 second=345 amount=-1 +kerning first=224 second=108 amount=-1 +kerning first=223 second=380 amount=-1 +kerning first=213 second=193 amount=-2 +kerning first=8220 second=281 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=321 second=193 amount=-1 +kerning first=217 second=361 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=99 second=241 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=353 second=331 amount=-1 +kerning first=193 second=286 amount=-1 +kerning first=83 second=115 amount=-1 +kerning first=187 second=380 amount=-3 +kerning first=83 second=203 amount=-1 +kerning first=296 second=115 amount=-1 +kerning first=281 second=331 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=325 second=119 amount=-1 +kerning first=204 second=248 amount=-1 +kerning first=260 second=368 amount=-2 +kerning first=317 second=331 amount=-1 +kerning first=224 second=115 amount=-1 +kerning first=83 second=108 amount=-1 +kerning first=304 second=290 amount=-1 +kerning first=260 second=115 amount=-1 +kerning first=99 second=248 amount=-1 +kerning first=90 second=78 amount=-1 +kerning first=258 second=255 amount=-1 +kerning first=327 second=269 amount=-1 +kerning first=262 second=323 amount=-1 +kerning first=106 second=307 amount=-1 +kerning first=117 second=255 amount=-1 +kerning first=8217 second=277 amount=-2 +kerning first=332 second=368 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=317 second=352 amount=-1 +kerning first=334 second=323 amount=-1 +kerning first=88 second=231 amount=-1 +kerning first=1060 second=1052 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=45 second=255 amount=-2 +kerning first=206 second=122 amount=-1 +kerning first=283 second=307 amount=-1 +kerning first=201 second=278 amount=-1 +kerning first=101 second=122 amount=-1 +kerning first=344 second=290 amount=-1 +kerning first=1038 second=1080 amount=-2 +kerning first=80 second=233 amount=-1 +kerning first=70 second=245 amount=-1 +kerning first=381 second=278 amount=-1 +kerning first=221 second=233 amount=-2 +kerning first=200 second=290 amount=-1 +kerning first=229 second=252 amount=-1 +kerning first=90 second=200 amount=-1 +kerning first=313 second=366 amount=-1 +kerning first=378 second=335 amount=-1 +kerning first=68 second=352 amount=-1 +kerning first=250 second=367 amount=-1 +kerning first=209 second=352 amount=-1 +kerning first=323 second=333 amount=-1 +kerning first=313 second=106 amount=-1 +kerning first=1050 second=1092 amount=-1 +kerning first=350 second=217 amount=-1 +kerning first=287 second=333 amount=-1 +kerning first=85 second=288 amount=-1 +kerning first=241 second=106 amount=-1 +kerning first=198 second=110 amount=-1 +kerning first=277 second=106 amount=-1 +kerning first=234 second=110 amount=-1 +kerning first=339 second=378 amount=-1 +kerning first=68 second=65 amount=-2 +kerning first=303 second=378 amount=-1 +kerning first=8218 second=367 amount=-1 +kerning first=375 second=378 amount=-1 +kerning first=1043 second=1080 amount=-1 +kerning first=268 second=262 amount=-2 +kerning first=378 second=110 amount=-1 +kerning first=368 second=210 amount=-1 +kerning first=264 second=243 amount=-1 +kerning first=65 second=217 amount=-2 +kerning first=78 second=347 amount=-1 +kerning first=296 second=210 amount=-1 +kerning first=258 second=262 amount=-1 +kerning first=317 second=65 amount=-1 +kerning first=316 second=281 amount=-1 +kerning first=260 second=210 amount=-1 +kerning first=1118 second=1078 amount=-1 +kerning first=203 second=198 amount=-1 +kerning first=298 second=288 amount=-1 +kerning first=233 second=326 amount=-1 +kerning first=87 second=243 amount=-2 +kerning first=330 second=262 amount=-1 +kerning first=262 second=288 amount=-2 +kerning first=366 second=255 amount=-1 +kerning first=67 second=281 amount=-1 +kerning first=366 second=262 amount=-1 +kerning first=370 second=288 amount=-1 +kerning first=330 second=255 amount=-1 +kerning first=103 second=281 amount=-1 +kerning first=192 second=243 amount=-1 +kerning first=278 second=217 amount=-1 +kerning first=223 second=120 amount=-1 +kerning first=87 second=74 amount=-2 +kerning first=208 second=274 amount=-1 +kerning first=259 second=120 amount=-1 +kerning first=69 second=229 amount=-1 +kerning first=362 second=291 amount=-2 +kerning first=118 second=99 amount=-1 +kerning first=78 second=44 amount=-1 +kerning first=8218 second=107 amount=-1 +kerning first=1024 second=1031 amount=-1 +kerning first=288 second=68 amount=-1 +kerning first=82 second=99 amount=-1 +kerning first=210 second=229 amount=-1 +kerning first=352 second=274 amount=-1 +kerning first=332 second=203 amount=-1 +kerning first=220 second=365 amount=-1 +kerning first=118 second=120 amount=-1 +kerning first=105 second=229 amount=-1 +kerning first=350 second=78 amount=-1 +kerning first=280 second=274 amount=-1 +kerning first=187 second=120 amount=-2 +kerning first=381 second=73 amount=-1 +kerning first=87 second=240 amount=-2 +kerning first=298 second=267 amount=-1 +kerning first=354 second=229 amount=-2 +kerning first=216 second=377 amount=-1 +kerning first=67 second=108 amount=-1 +kerning first=325 second=118 amount=-1 +kerning first=289 second=118 amount=-1 +kerning first=282 second=229 amount=-1 +kerning first=1067 second=1077 amount=-1 +kerning first=205 second=113 amount=-1 +kerning first=262 second=267 amount=-1 +kerning first=381 second=80 amount=-1 +kerning first=198 second=75 amount=-1 +kerning first=367 second=120 amount=-1 +kerning first=201 second=80 amount=-1 +kerning first=278 second=196 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=1031 second=1077 amount=-1 +kerning first=112 second=118 amount=-1 +kerning first=370 second=267 amount=-1 +kerning first=258 second=8220 amount=-3 +kerning first=288 second=377 amount=-1 +kerning first=253 second=118 amount=-1 +kerning first=222 second=8220 amount=-1 +kerning first=350 second=196 amount=-2 +kerning first=217 second=118 amount=-1 +kerning first=90 second=111 amount=-1 +kerning first=72 second=199 amount=-1 +kerning first=88 second=287 amount=-1 +kerning first=229 second=287 amount=-1 +kerning first=195 second=111 amount=-1 +kerning first=286 second=209 amount=-1 +kerning first=193 second=287 amount=-1 +kerning first=84 second=219 amount=-1 +kerning first=231 second=111 amount=-1 +kerning first=86 second=339 amount=-2 +kerning first=110 second=8217 amount=-2 +kerning first=99 second=242 amount=-1 +kerning first=122 second=339 amount=-1 +kerning first=344 second=234 amount=-1 +kerning first=8217 second=113 amount=-2 +kerning first=204 second=242 amount=-1 +kerning first=321 second=199 amount=-1 +kerning first=337 second=287 amount=-1 +kerning first=380 second=234 amount=-1 +kerning first=73 second=264 amount=-1 +kerning first=83 second=374 amount=-1 +kerning first=311 second=254 amount=-1 +kerning first=367 second=303 amount=-1 +kerning first=83 second=197 amount=-2 +kerning first=347 second=254 amount=-1 +kerning first=200 second=289 amount=-1 +kerning first=83 second=121 amount=-1 +kerning first=213 second=364 amount=-1 +kerning first=236 second=289 amount=-1 +kerning first=1114 second=1094 amount=-1 +kerning first=331 second=361 amount=-1 +kerning first=70 second=244 amount=-1 +kerning first=79 second=82 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=267 second=111 amount=-1 +kerning first=258 second=216 amount=-1 +kerning first=303 second=111 amount=-1 +kerning first=203 second=254 amount=-1 +kerning first=344 second=289 amount=-1 +kerning first=380 second=289 amount=-1 +kerning first=8250 second=346 amount=-2 +kerning first=332 second=197 amount=-2 +kerning first=321 second=364 amount=-1 +kerning first=375 second=111 amount=-1 +kerning first=275 second=254 amount=-1 +kerning first=368 second=197 amount=-2 +kerning first=213 second=97 amount=-1 +kerning first=315 second=205 amount=-1 +kerning first=324 second=117 amount=-1 +kerning first=86 second=72 amount=-1 +kerning first=249 second=97 amount=-1 +kerning first=280 second=76 amount=-1 +kerning first=288 second=117 amount=-1 +kerning first=380 second=228 amount=-1 +kerning first=108 second=97 amount=-1 +kerning first=274 second=380 amount=-1 +kerning first=368 second=121 amount=-1 +kerning first=377 second=66 amount=-1 +kerning first=208 second=76 amount=-1 +kerning first=307 second=119 amount=-1 +kerning first=362 second=275 amount=-1 +kerning first=201 second=74 amount=-1 +kerning first=192 second=366 amount=-2 +kerning first=304 second=250 amount=-1 +kerning first=296 second=121 amount=-1 +kerning first=379 second=119 amount=-1 +kerning first=260 second=121 amount=-1 +kerning first=88 second=230 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=1069 second=1036 amount=-1 +kerning first=376 second=250 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=278 second=107 amount=-1 +kerning first=317 second=86 amount=-1 +kerning first=242 second=107 amount=-1 +kerning first=74 second=333 amount=-1 +kerning first=267 second=378 amount=-1 +kerning first=350 second=107 amount=-1 +kerning first=66 second=205 amount=-2 +kerning first=75 second=117 amount=-1 +kerning first=232 second=250 amount=-1 +kerning first=231 second=378 amount=-1 +kerning first=103 second=367 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=65 second=107 amount=-1 +kerning first=90 second=378 amount=-1 +kerning first=252 second=117 amount=-1 +kerning first=352 second=76 amount=-1 +kerning first=256 second=363 amount=-1 +kerning first=313 second=310 amount=-1 +kerning first=117 second=318 amount=-1 +kerning first=379 second=214 amount=-1 +kerning first=328 second=363 amount=-1 +kerning first=352 second=330 amount=-1 +kerning first=336 second=171 amount=-1 +kerning first=374 second=355 amount=-1 +kerning first=268 second=194 amount=-2 +kerning first=364 second=363 amount=-1 +kerning first=323 second=227 amount=-1 +kerning first=258 second=318 amount=-1 +kerning first=1043 second=1114 amount=-1 +kerning first=120 second=333 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=290 second=74 amount=-1 +kerning first=1057 second=1088 amount=-1 +kerning first=1093 second=1089 amount=-1 +kerning first=1057 second=1089 amount=-1 +kerning first=221 second=240 amount=-2 +kerning first=8216 second=241 amount=-1 +kerning first=287 second=259 amount=-1 +kerning first=209 second=71 amount=-1 +kerning first=378 second=116 amount=-1 +kerning first=350 second=122 amount=-1 +kerning first=208 second=77 amount=-1 +kerning first=296 second=375 amount=-1 +kerning first=317 second=71 amount=-1 +kerning first=88 second=346 amount=-1 +kerning first=199 second=214 amount=-2 +kerning first=260 second=375 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=278 second=122 amount=-1 +kerning first=224 second=375 amount=-1 +kerning first=1070 second=1041 amount=-1 +kerning first=71 second=369 amount=-1 +kerning first=323 second=259 amount=-1 +kerning first=89 second=296 amount=-1 +kerning first=280 second=330 amount=-1 +kerning first=234 second=116 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=352 second=77 amount=-1 +kerning first=264 second=220 amount=-1 +kerning first=209 second=246 amount=-1 +kerning first=376 second=194 amount=-3 +kerning first=208 second=330 amount=-1 +kerning first=290 second=220 amount=-1 +kerning first=1050 second=1086 amount=-1 +kerning first=280 second=77 amount=-1 +kerning first=368 second=375 amount=-1 +kerning first=334 second=344 amount=-1 +kerning first=266 second=296 amount=-1 +kerning first=325 second=228 amount=-1 +kerning first=187 second=324 amount=-1 +kerning first=356 second=369 amount=-1 +kerning first=289 second=228 amount=-1 +kerning first=118 second=324 amount=-1 +kerning first=332 second=374 amount=-1 +kerning first=338 second=296 amount=-1 +kerning first=253 second=228 amount=-1 +kerning first=84 second=279 amount=-2 +kerning first=217 second=228 amount=-1 +kerning first=228 second=289 amount=-1 +kerning first=260 second=374 amount=-3 +kerning first=232 second=251 amount=-1 +kerning first=66 second=206 amount=-2 +kerning first=374 second=296 amount=-1 +kerning first=1045 second=1055 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=262 second=344 amount=-1 +kerning first=304 second=251 amount=-1 +kerning first=83 second=375 amount=-1 +kerning first=284 second=369 amount=-1 +kerning first=268 second=251 amount=-1 +kerning first=376 second=251 amount=-1 +kerning first=8217 second=112 amount=-1 +kerning first=381 second=284 amount=-1 +kerning first=98 second=253 amount=-1 +kerning first=89 second=355 amount=-1 +kerning first=315 second=206 amount=-1 +kerning first=201 second=284 amount=-1 +kerning first=1100 second=1119 amount=-1 +kerning first=115 second=363 amount=-1 +kerning first=120 second=279 amount=-1 +kerning first=275 second=253 amount=-1 +kerning first=230 second=355 amount=-1 +kerning first=220 second=363 amount=-1 +kerning first=45 second=318 amount=-1 +kerning first=347 second=253 amount=-1 +kerning first=194 second=355 amount=-1 +kerning first=232 second=331 amount=-1 +kerning first=313 second=313 amount=-1 +kerning first=45 second=315 amount=-3 +kerning first=251 second=318 amount=-1 +kerning first=202 second=83 amount=-1 +kerning first=8220 second=337 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=287 second=318 amount=-1 +kerning first=89 second=365 amount=-1 +kerning first=71 second=310 amount=-1 +kerning first=207 second=268 amount=-1 +kerning first=274 second=83 amount=-1 +kerning first=81 second=315 amount=-1 +kerning first=377 second=263 amount=-1 +kerning first=310 second=83 amount=-1 +kerning first=199 second=218 amount=-1 +kerning first=213 second=370 amount=-1 +kerning first=346 second=83 amount=-1 +kerning first=284 second=310 amount=-1 +kerning first=8216 second=245 amount=-1 +kerning first=1045 second=1065 amount=-1 +kerning first=197 second=263 amount=-1 +kerning first=381 second=355 amount=-1 +kerning first=212 second=310 amount=-1 +kerning first=84 second=220 amount=-1 +kerning first=230 second=303 amount=-1 +kerning first=274 second=353 amount=-1 +kerning first=266 second=303 amount=-1 +kerning first=84 second=275 amount=-2 +kerning first=310 second=353 amount=-1 +kerning first=346 second=353 amount=-1 +kerning first=374 second=365 amount=-1 +kerning first=356 second=310 amount=-1 +kerning first=382 second=353 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=338 second=365 amount=-1 +kerning first=222 second=315 amount=-1 +kerning first=374 second=303 amount=-1 +kerning first=380 second=224 amount=-1 +kerning first=302 second=365 amount=-1 +kerning first=1071 second=1060 amount=-1 +kerning first=266 second=365 amount=-1 +kerning first=202 second=353 amount=-1 +kerning first=253 second=303 amount=-1 +kerning first=230 second=365 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=1070 second=1048 amount=-1 +kerning first=289 second=225 amount=-1 +kerning first=1114 second=1098 amount=-1 +kerning first=118 second=105 amount=-1 +kerning first=325 second=225 amount=-1 +kerning first=266 second=98 amount=-1 +kerning first=1114 second=1095 amount=-1 +kerning first=354 second=228 amount=-2 +kerning first=1104 second=1093 amount=-1 +kerning first=338 second=98 amount=-1 +kerning first=1042 second=1095 amount=-1 +kerning first=331 second=46 amount=-1 +kerning first=282 second=228 amount=-1 +kerning first=89 second=303 amount=-1 +kerning first=367 second=46 amount=-1 +kerning first=354 second=235 amount=-1 +kerning first=217 second=225 amount=-2 +kerning first=230 second=98 amount=-1 +kerning first=210 second=228 amount=-1 +kerning first=253 second=225 amount=-2 +kerning first=194 second=98 amount=-1 +kerning first=274 second=350 amount=-1 +kerning first=8250 second=352 amount=-2 +kerning first=266 second=102 amount=-1 +kerning first=108 second=363 amount=-1 +kerning first=105 second=228 amount=-1 +kerning first=45 second=305 amount=-1 +kerning first=223 second=46 amount=-2 +kerning first=321 second=370 amount=-1 +kerning first=202 second=350 amount=-1 +kerning first=69 second=228 amount=-1 +kerning first=338 second=102 amount=-1 +kerning first=8218 second=382 amount=-2 +kerning first=259 second=46 amount=-1 +kerning first=374 second=102 amount=-1 +kerning first=295 second=46 amount=-1 +kerning first=249 second=363 amount=-1 +kerning first=89 second=102 amount=-1 +kerning first=90 second=245 amount=-1 +kerning first=83 second=86 amount=-1 +kerning first=369 second=46 amount=-1 +kerning first=121 second=273 amount=-1 +kerning first=1053 second=1108 amount=-1 +kerning first=110 second=318 amount=-1 +kerning first=321 second=363 amount=-1 +kerning first=377 second=325 amount=-1 +kerning first=82 second=46 amount=-1 +kerning first=208 second=280 amount=-1 +kerning first=230 second=102 amount=-1 +kerning first=118 second=46 amount=-3 +kerning first=278 second=211 amount=-1 +kerning first=202 second=86 amount=-1 +kerning first=366 second=305 amount=-1 +kerning first=313 second=112 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=206 second=211 amount=-1 +kerning first=122 second=261 amount=-1 +kerning first=277 second=112 amount=-1 +kerning first=86 second=171 amount=-3 +kerning first=241 second=112 amount=-1 +kerning first=327 second=81 amount=-1 +kerning first=366 second=256 amount=-2 +kerning first=214 second=261 amount=-1 +kerning first=346 second=86 amount=-1 +kerning first=205 second=112 amount=-1 +kerning first=250 second=261 amount=-1 +kerning first=310 second=86 amount=-1 +kerning first=249 second=107 amount=-1 +kerning first=286 second=261 amount=-1 +kerning first=84 second=216 amount=-1 +kerning first=1043 second=1076 amount=-1 +kerning first=274 second=86 amount=-1 +kerning first=206 second=99 amount=-1 +kerning first=100 second=112 amount=-1 +kerning first=8250 second=89 amount=-2 +kerning first=321 second=107 amount=-1 +kerning first=332 second=204 amount=-1 +kerning first=371 second=171 amount=-1 +kerning first=256 second=211 amount=-1 +kerning first=367 second=105 amount=-1 +kerning first=268 second=254 amount=-1 +kerning first=216 second=327 amount=-1 +kerning first=122 second=171 amount=-2 +kerning first=78 second=81 amount=-1 +kerning first=315 second=209 amount=-1 +kerning first=288 second=327 amount=-1 +kerning first=219 second=81 amount=-1 +kerning first=223 second=105 amount=-1 +kerning first=263 second=171 amount=-1 +kerning first=209 second=346 amount=-1 +kerning first=1025 second=1103 amount=-1 +kerning first=258 second=249 amount=-1 +kerning first=236 second=230 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=106 second=303 amount=-1 +kerning first=117 second=249 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=199 second=318 amount=-1 +kerning first=68 second=346 amount=-1 +kerning first=366 second=249 amount=-1 +kerning first=313 second=379 amount=-1 +kerning first=72 second=100 amount=-1 +kerning first=317 second=346 amount=-1 +kerning first=378 second=242 amount=-1 +kerning first=202 second=196 amount=-1 +kerning first=362 second=223 amount=-1 +kerning first=108 second=100 amount=-1 +kerning first=120 second=275 amount=-1 +kerning first=330 second=249 amount=-1 +kerning first=263 second=339 amount=-1 +kerning first=325 second=334 amount=-1 +kerning first=218 second=223 amount=-1 +kerning first=81 second=256 amount=-2 +kerning first=45 second=256 amount=-2 +kerning first=45 second=249 amount=-1 +kerning first=344 second=230 amount=-1 +kerning first=380 second=230 amount=-1 +kerning first=1042 second=1039 amount=-1 +kerning first=272 second=230 amount=-1 +kerning first=288 second=202 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=113 second=223 amount=-1 +kerning first=222 second=256 amount=-2 +kerning first=1045 second=1059 amount=-1 +kerning first=313 second=109 amount=-1 +kerning first=274 second=89 amount=-1 +kerning first=119 second=114 amount=-1 +kerning first=321 second=104 amount=-1 +kerning first=8250 second=86 amount=-2 +kerning first=321 second=192 amount=-1 +kerning first=83 second=114 amount=-1 +kerning first=277 second=109 amount=-1 +kerning first=315 second=212 amount=-1 +kerning first=1043 second=1104 amount=-1 +kerning first=100 second=314 amount=-1 +kerning first=337 second=237 amount=-1 +kerning first=221 second=187 amount=-1 +kerning first=323 second=262 amount=-1 +kerning first=199 second=217 amount=-1 +kerning first=194 second=99 amount=-1 +kerning first=302 second=99 amount=-1 +kerning first=201 second=8249 amount=-1 +kerning first=84 second=269 amount=-2 +kerning first=277 second=314 amount=-1 +kerning first=380 second=227 amount=-1 +kerning first=266 second=99 amount=-1 +kerning first=244 second=378 amount=-1 +kerning first=241 second=314 amount=-1 +kerning first=374 second=99 amount=-2 +kerning first=346 second=89 amount=-1 +kerning first=249 second=104 amount=-1 +kerning first=290 second=282 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=120 second=269 amount=-1 +kerning first=310 second=89 amount=-1 +kerning first=313 second=314 amount=-1 +kerning first=240 second=44 amount=-2 +kerning first=1102 second=1083 amount=-1 +kerning first=8222 second=229 amount=-1 +kerning first=78 second=351 amount=-1 +kerning first=231 second=371 amount=-1 +kerning first=200 second=224 amount=-1 +kerning first=267 second=371 amount=-1 +kerning first=377 second=267 amount=-1 +kerning first=316 second=277 amount=-1 +kerning first=266 second=302 amount=-1 +kerning first=303 second=371 amount=-1 +kerning first=272 second=224 amount=-1 +kerning first=363 second=347 amount=-1 +kerning first=8250 second=353 amount=-1 +kerning first=1070 second=1051 amount=-1 +kerning first=339 second=371 amount=-1 +kerning first=236 second=224 amount=-1 +kerning first=79 second=70 amount=-1 +kerning first=327 second=347 amount=-1 +kerning first=286 second=202 amount=-1 +kerning first=67 second=277 amount=-1 +kerning first=356 second=344 amount=-1 +kerning first=344 second=224 amount=-1 +kerning first=291 second=347 amount=-1 +kerning first=255 second=347 amount=-1 +kerning first=345 second=8249 amount=-1 +kerning first=214 second=202 amount=-1 +kerning first=89 second=302 amount=-1 +kerning first=89 second=361 amount=-1 +kerning first=381 second=8249 amount=-1 +kerning first=103 second=277 amount=-1 +kerning first=321 second=367 amount=-1 +kerning first=72 second=101 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=197 second=267 amount=-1 +kerning first=8217 second=106 amount=-1 +kerning first=108 second=101 amount=-1 +kerning first=363 second=351 amount=-1 +kerning first=249 second=367 amount=-1 +kerning first=334 second=69 amount=-1 +kerning first=207 second=212 amount=-1 +kerning first=376 second=257 amount=-2 +kerning first=66 second=212 amount=-1 +kerning first=368 second=114 amount=-1 +kerning first=255 second=351 amount=-1 +kerning first=233 second=97 amount=-1 +kerning first=268 second=257 amount=-1 +kerning first=262 second=69 amount=-1 +kerning first=1070 second=1047 amount=-1 +kerning first=304 second=257 amount=-1 +kerning first=8250 second=83 amount=-2 +kerning first=327 second=351 amount=-1 +kerning first=108 second=367 amount=-1 +kerning first=269 second=267 amount=-1 +kerning first=291 second=351 amount=-1 +kerning first=232 second=257 amount=-1 +kerning first=291 second=291 amount=-1 +kerning first=67 second=337 amount=-1 +kerning first=278 second=382 amount=-1 +kerning first=80 second=246 amount=-1 +kerning first=313 second=316 amount=-1 +kerning first=255 second=291 amount=-2 +kerning first=314 second=382 amount=-1 +kerning first=1045 second=1062 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=194 second=362 amount=-2 +kerning first=350 second=382 amount=-1 +kerning first=344 second=286 amount=-1 +kerning first=79 second=206 amount=-1 +kerning first=283 second=241 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=1071 second=1057 amount=-1 +kerning first=113 second=226 amount=-1 +kerning first=114 second=291 amount=-1 +kerning first=101 second=382 amount=-1 +kerning first=282 second=205 amount=-1 +kerning first=258 second=311 amount=-1 +kerning first=255 second=287 amount=-2 +kerning first=78 second=291 amount=-1 +kerning first=196 second=279 amount=-1 +kerning first=282 second=67 amount=-1 +kerning first=218 second=226 amount=-2 +kerning first=206 second=382 amount=-1 +kerning first=200 second=286 amount=-1 +kerning first=1042 second=1042 amount=-1 +kerning first=106 second=241 amount=-1 +kerning first=346 second=356 amount=-1 +kerning first=103 second=337 amount=-1 +kerning first=242 second=382 amount=-1 +kerning first=379 second=221 amount=-1 +kerning first=230 second=361 amount=-1 +kerning first=1107 second=1113 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=251 second=8221 amount=-2 +kerning first=99 second=382 amount=-1 +kerning first=302 second=361 amount=-1 +kerning first=316 second=337 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=110 second=8221 amount=-2 +kerning first=266 second=361 amount=-1 +kerning first=1100 second=1075 amount=-1 +kerning first=100 second=316 amount=-1 +kerning first=8217 second=369 amount=-1 +kerning first=374 second=361 amount=-1 +kerning first=1057 second=1082 amount=-1 +kerning first=284 second=289 amount=-1 +kerning first=241 second=316 amount=-1 +kerning first=216 second=274 amount=-1 +kerning first=199 second=221 amount=-1 +kerning first=377 second=266 amount=-1 +kerning first=200 second=227 amount=-1 +kerning first=280 second=70 amount=-1 +kerning first=213 second=103 amount=-1 +kerning first=258 second=252 amount=-1 +kerning first=83 second=381 amount=-1 +kerning first=222 second=45 amount=-1 +kerning first=368 second=115 amount=-1 +kerning first=208 second=70 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=108 second=103 amount=-1 +kerning first=86 second=78 amount=-1 +kerning first=195 second=368 amount=-2 +kerning first=330 second=252 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=45 second=252 amount=-1 +kerning first=1042 second=1101 amount=-1 +kerning first=366 second=45 amount=-3 +kerning first=67 second=336 amount=-2 +kerning first=272 second=227 amount=-1 +kerning first=352 second=70 amount=-1 +kerning first=1078 second=1101 amount=-1 +kerning first=117 second=252 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=8250 second=350 amount=-2 +kerning first=332 second=381 amount=-1 +kerning first=290 second=226 amount=-1 +kerning first=332 second=207 amount=-1 +kerning first=268 second=201 amount=-1 +kerning first=274 second=356 amount=-1 +kerning first=45 second=311 amount=-1 +kerning first=313 second=317 amount=-1 +kerning first=1043 second=1107 amount=-1 +kerning first=202 second=90 amount=-1 +kerning first=280 second=336 amount=-1 +kerning first=202 second=356 amount=-1 +kerning first=377 second=323 amount=-1 +kerning first=208 second=278 amount=-1 +kerning first=266 second=362 amount=-1 +kerning first=366 second=252 amount=-1 +kerning first=274 second=90 amount=-1 +kerning first=81 second=45 amount=-1 +kerning first=87 second=233 amount=-2 +kerning first=221 second=246 amount=-1 +kerning first=321 second=103 amount=-1 +kerning first=280 second=278 amount=-1 +kerning first=338 second=362 amount=-1 +kerning first=346 second=90 amount=-1 +kerning first=192 second=233 amount=-1 +kerning first=327 second=291 amount=-1 +kerning first=200 second=216 amount=-1 +kerning first=117 second=45 amount=-1 +kerning first=352 second=278 amount=-1 +kerning first=108 second=382 amount=-1 +kerning first=122 second=369 amount=-1 +kerning first=277 second=103 amount=-1 +kerning first=1086 second=1095 amount=-1 +kerning first=86 second=369 amount=-1 +kerning first=241 second=103 amount=-1 +kerning first=218 second=259 amount=-2 +kerning first=187 second=356 amount=-2 +kerning first=1050 second=1095 amount=-2 +kerning first=213 second=382 amount=-1 +kerning first=227 second=369 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=249 second=382 amount=-1 +kerning first=236 second=259 amount=-1 +kerning first=263 second=116 amount=-1 +kerning first=82 second=356 amount=-1 +kerning first=100 second=103 amount=-1 +kerning first=73 second=246 amount=-1 +kerning first=380 second=252 amount=-1 +kerning first=356 second=263 amount=-2 +kerning first=122 second=116 amount=-1 +kerning first=100 second=363 amount=-1 +kerning first=72 second=382 amount=-1 +kerning first=374 second=45 amount=-3 +kerning first=86 second=116 amount=-1 +kerning first=354 second=226 amount=-2 +kerning first=99 second=279 amount=-1 +kerning first=1071 second=1054 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=205 second=363 amount=-1 +kerning first=1042 second=1076 amount=-1 +kerning first=249 second=122 amount=-1 +kerning first=1057 second=1100 amount=-1 +kerning first=89 second=305 amount=-1 +kerning first=204 second=279 amount=-1 +kerning first=90 second=375 amount=-2 +kerning first=213 second=122 amount=-1 +kerning first=277 second=363 amount=-1 +kerning first=317 second=362 amount=-1 +kerning first=1064 second=1089 amount=-1 +kerning first=371 second=109 amount=-1 +kerning first=313 second=363 amount=-1 +kerning first=216 second=65 amount=-2 +kerning first=339 second=375 amount=-1 +kerning first=371 second=116 amount=-1 +kerning first=321 second=382 amount=-1 +kerning first=303 second=375 amount=-1 +kerning first=68 second=362 amount=-1 +kerning first=263 second=369 amount=-1 +kerning first=122 second=109 amount=-1 +kerning first=266 second=305 amount=-1 +kerning first=288 second=65 amount=-1 +kerning first=267 second=375 amount=-1 +kerning first=371 second=369 amount=-1 +kerning first=89 second=45 amount=-3 +kerning first=263 second=109 amount=-1 +kerning first=69 second=122 amount=-1 +kerning first=230 second=305 amount=-1 +kerning first=1114 second=1076 amount=-1 +kerning first=231 second=375 amount=-1 +kerning first=321 second=122 amount=-1 +kerning first=313 second=103 amount=-1 +kerning first=1056 second=1063 amount=-1 +kerning first=281 second=355 amount=-1 +kerning first=303 second=115 amount=-1 +kerning first=339 second=115 amount=-1 +kerning first=304 second=232 amount=-1 +kerning first=231 second=115 amount=-1 +kerning first=374 second=305 amount=-1 +kerning first=84 second=202 amount=-1 +kerning first=1060 second=1062 amount=-1 +kerning first=196 second=232 amount=-1 +kerning first=219 second=44 amount=-3 +kerning first=201 second=336 amount=-1 +kerning first=1024 second=1062 amount=-1 +kerning first=353 second=355 amount=-1 +kerning first=375 second=115 amount=-1 +kerning first=268 second=232 amount=-1 +kerning first=8250 second=371 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=375 second=108 amount=-1 +kerning first=382 second=251 amount=-1 +kerning first=232 second=253 amount=-1 +kerning first=8250 second=90 amount=-2 +kerning first=339 second=108 amount=-1 +kerning first=1024 second=1055 amount=-1 +kerning first=381 second=336 amount=-1 +kerning first=304 second=253 amount=-1 +kerning first=8250 second=378 amount=-3 +kerning first=376 second=253 amount=-1 +kerning first=262 second=325 amount=-1 +kerning first=71 second=66 amount=-1 +kerning first=1042 second=1048 amount=-1 +kerning first=65 second=251 amount=-1 +kerning first=264 second=227 amount=-1 +kerning first=379 second=196 amount=-1 +kerning first=344 second=231 amount=-1 +kerning first=380 second=231 amount=-1 +kerning first=232 second=225 amount=-1 +kerning first=198 second=332 amount=-1 +kerning first=231 second=108 amount=-1 +kerning first=73 second=380 amount=-1 +kerning first=195 second=108 amount=-1 +kerning first=381 second=315 amount=-1 +kerning first=303 second=108 amount=-1 +kerning first=199 second=196 amount=-2 +kerning first=267 second=108 amount=-1 +kerning first=366 second=286 amount=-1 +kerning first=236 second=8217 amount=-1 +kerning first=264 second=84 amount=-1 +kerning first=272 second=8217 amount=-1 +kerning first=330 second=286 amount=-1 +kerning first=76 second=203 amount=-1 +kerning first=88 second=8221 amount=-1 +kerning first=268 second=225 amount=-1 +kerning first=286 second=218 amount=-1 +kerning first=244 second=46 amount=-2 +kerning first=200 second=280 amount=-1 +kerning first=258 second=286 amount=-1 +kerning first=195 second=115 amount=-1 +kerning first=304 second=225 amount=-1 +kerning first=280 second=46 amount=-1 +kerning first=214 second=218 amount=-1 +kerning first=272 second=280 amount=-1 +kerning first=113 second=273 amount=-1 +kerning first=90 second=115 amount=-1 +kerning first=376 second=225 amount=-2 +kerning first=352 second=46 amount=-2 +kerning first=353 second=102 amount=-1 +kerning first=217 second=210 amount=-1 +kerning first=1060 second=1083 amount=-1 +kerning first=67 second=46 amount=-1 +kerning first=1042 second=1053 amount=-1 +kerning first=240 second=307 amount=-1 +kerning first=65 second=119 amount=-2 +kerning first=103 second=46 amount=-2 +kerning first=193 second=8221 amount=-3 +kerning first=218 second=245 amount=-1 +kerning first=362 second=266 amount=-1 +kerning first=76 second=210 amount=-1 +kerning first=229 second=8221 amount=-1 +kerning first=207 second=337 amount=-1 +kerning first=67 second=67 amount=-2 +kerning first=108 second=122 amount=-1 +kerning first=206 second=119 amount=-1 +kerning first=72 second=122 amount=-1 +kerning first=242 second=119 amount=-1 +kerning first=281 second=102 amount=-1 +kerning first=337 second=8221 amount=-1 +kerning first=278 second=119 amount=-1 +kerning first=218 second=266 amount=-1 +kerning first=8250 second=118 amount=-2 +kerning first=314 second=119 amount=-1 +kerning first=268 second=204 amount=-1 +kerning first=350 second=119 amount=-1 +kerning first=236 second=252 amount=-1 +kerning first=1024 second=1090 amount=-1 +kerning first=344 second=252 amount=-1 +kerning first=267 second=115 amount=-1 +kerning first=205 second=335 amount=-1 +kerning first=344 second=259 amount=-1 +kerning first=1114 second=1097 amount=-1 +kerning first=376 second=204 amount=-1 +kerning first=77 second=245 amount=-1 +kerning first=1056 second=1042 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=197 second=269 amount=-1 +kerning first=187 second=328 amount=-1 +kerning first=368 second=196 amount=-2 +kerning first=280 second=67 amount=-1 +kerning first=380 second=259 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=118 second=328 amount=-1 +kerning first=200 second=252 amount=-1 +kerning first=364 second=113 amount=-1 +kerning first=324 second=353 amount=-1 +kerning first=269 second=269 amount=-1 +kerning first=8217 second=335 amount=-2 +kerning first=378 second=100 amount=-1 +kerning first=70 second=275 amount=-1 +kerning first=256 second=366 amount=-2 +kerning first=363 second=291 amount=-1 +kerning first=324 second=365 amount=-1 +kerning first=256 second=113 amount=-1 +kerning first=70 second=263 amount=-1 +kerning first=288 second=365 amount=-1 +kerning first=382 second=378 amount=-1 +kerning first=65 second=99 amount=-1 +kerning first=8217 second=347 amount=-1 +kerning first=252 second=365 amount=-1 +kerning first=202 second=378 amount=-1 +kerning first=278 second=171 amount=-1 +kerning first=71 second=259 amount=-1 +kerning first=314 second=171 amount=-1 +kerning first=252 second=353 amount=-1 +kerning first=274 second=378 amount=-1 +kerning first=350 second=171 amount=-1 +kerning first=315 second=262 amount=-1 +kerning first=379 second=8250 amount=-1 +kerning first=234 second=112 amount=-1 +kerning first=317 second=212 amount=-1 +kerning first=89 second=352 amount=-2 +kerning first=75 second=353 amount=-1 +kerning first=1027 second=1054 amount=-1 +kerning first=111 second=353 amount=-1 +kerning first=194 second=352 amount=-2 +kerning first=1057 second=1086 amount=-1 +kerning first=1093 second=1091 amount=-1 +kerning first=71 second=87 amount=-1 +kerning first=377 second=288 amount=-1 +kerning first=71 second=354 amount=-1 +kerning first=220 second=113 amount=-1 +kerning first=302 second=352 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=352 second=105 amount=-1 +kerning first=266 second=352 amount=-1 +kerning first=73 second=211 amount=-1 +kerning first=374 second=352 amount=-2 +kerning first=1045 second=1052 amount=-1 +kerning first=212 second=354 amount=-1 +kerning first=347 second=223 amount=-1 +kerning first=8220 second=283 amount=-1 +kerning first=338 second=352 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=1100 second=1117 amount=-1 +kerning first=351 second=8220 amount=-1 +kerning first=112 second=303 amount=-1 +kerning first=202 second=380 amount=-1 +kerning first=315 second=8220 amount=-2 +kerning first=84 second=248 amount=-2 +kerning first=201 second=296 amount=-1 +kerning first=203 second=223 amount=-1 +kerning first=1088 second=1113 amount=-1 +kerning first=378 second=339 amount=-1 +kerning first=279 second=8220 amount=-1 +kerning first=120 second=248 amount=-1 +kerning first=354 second=198 amount=-3 +kerning first=229 second=249 amount=-1 +kerning first=88 second=289 amount=-1 +kerning first=243 second=8220 amount=-1 +kerning first=69 second=198 amount=-1 +kerning first=221 second=282 amount=-1 +kerning first=193 second=289 amount=-1 +kerning first=356 second=338 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=102 second=8220 amount=1 +kerning first=210 second=198 amount=-2 +kerning first=266 second=73 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=66 second=8220 amount=-2 +kerning first=1043 second=1113 amount=-2 +kerning first=365 second=237 amount=-1 +kerning first=8222 second=219 amount=-2 +kerning first=262 second=313 amount=-1 +kerning first=381 second=296 amount=-1 +kerning first=338 second=73 amount=-1 +kerning first=346 second=324 amount=-1 +kerning first=208 second=327 amount=-1 +kerning first=374 second=73 amount=-1 +kerning first=201 second=315 amount=-1 +kerning first=1039 second=1105 amount=-1 +kerning first=89 second=73 amount=-1 +kerning first=310 second=99 amount=-1 +kerning first=193 second=8249 amount=-2 +kerning first=280 second=327 amount=-1 +kerning first=221 second=237 amount=-1 +kerning first=313 second=75 amount=-1 +kerning first=229 second=8249 amount=-1 +kerning first=214 second=206 amount=-1 +kerning first=382 second=99 amount=-1 +kerning first=88 second=8249 amount=-2 +kerning first=352 second=327 amount=-1 +kerning first=198 second=379 amount=-1 +kerning first=286 second=206 amount=-1 +kerning first=200 second=310 amount=-1 +kerning first=206 second=199 amount=-1 +kerning first=101 second=187 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=221 second=209 amount=-1 +kerning first=278 second=199 amount=-1 +kerning first=68 second=83 amount=-1 +kerning first=216 second=381 amount=-1 +kerning first=87 second=212 amount=-1 +kerning first=241 second=363 amount=-1 +kerning first=1118 second=1103 amount=-2 +kerning first=288 second=381 amount=-1 +kerning first=102 second=234 amount=-1 +kerning first=8217 second=363 amount=-1 +kerning first=209 second=83 amount=-1 +kerning first=206 second=234 amount=-1 +kerning first=315 second=264 amount=-1 +kerning first=207 second=234 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=317 second=83 amount=-1 +kerning first=198 second=351 amount=-1 +kerning first=207 second=264 amount=-1 +kerning first=88 second=277 amount=-1 +kerning first=310 second=111 amount=-1 +kerning first=79 second=364 amount=-1 +kerning first=187 second=89 amount=-2 +kerning first=337 second=289 amount=-1 +kerning first=193 second=277 amount=-1 +kerning first=234 second=351 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=378 second=367 amount=-1 +kerning first=327 second=119 amount=-1 +kerning first=80 second=209 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=256 second=364 amount=-2 +kerning first=264 second=212 amount=-2 +kerning first=355 second=291 amount=-1 +kerning first=234 second=367 amount=-1 +kerning first=284 second=354 amount=-1 +kerning first=69 second=226 amount=-1 +kerning first=79 second=97 amount=-1 +kerning first=105 second=226 amount=-1 +kerning first=283 second=291 amount=-1 +kerning first=269 second=108 amount=-1 +kerning first=381 second=76 amount=-1 +kerning first=353 second=97 amount=-1 +kerning first=198 second=367 amount=-1 +kerning first=380 second=233 amount=-1 +kerning first=210 second=226 amount=-1 +kerning first=211 second=291 amount=-1 +kerning first=1071 second=1092 amount=-1 +kerning first=198 second=72 amount=-1 +kerning first=220 second=97 amount=-2 +kerning first=344 second=233 amount=-1 +kerning first=350 second=346 amount=-1 +kerning first=1063 second=1054 amount=-1 +kerning first=356 second=326 amount=-1 +kerning first=282 second=226 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=75 second=337 amount=-1 +kerning first=115 second=97 amount=-1 +kerning first=70 second=291 amount=-1 +kerning first=378 second=351 amount=-1 +kerning first=201 second=76 amount=-1 +kerning first=108 second=110 amount=-1 +kerning first=1045 second=1040 amount=-1 +kerning first=364 second=97 amount=-2 +kerning first=209 second=350 amount=-1 +kerning first=261 second=250 amount=-1 +kerning first=1024 second=1050 amount=-1 +kerning first=206 second=171 amount=-2 +kerning first=68 second=350 amount=-1 +kerning first=369 second=250 amount=-1 +kerning first=75 second=86 amount=-1 +kerning first=202 second=77 amount=-1 +kerning first=1060 second=1050 amount=-1 +kerning first=197 second=316 amount=-1 +kerning first=1113 second=1100 amount=-1 +kerning first=317 second=350 amount=-1 +kerning first=233 second=316 amount=-1 +kerning first=120 second=250 amount=-1 +kerning first=84 second=250 amount=-1 +kerning first=288 second=86 amount=-1 +kerning first=305 second=316 amount=-1 +kerning first=225 second=250 amount=-1 +kerning first=65 second=171 amount=-2 +kerning first=377 second=234 amount=-1 +kerning first=201 second=331 amount=-1 +kerning first=203 second=200 amount=-1 +kerning first=264 second=221 amount=-1 +kerning first=317 second=381 amount=-1 +kerning first=380 second=271 amount=-1 +kerning first=192 second=221 amount=-3 +kerning first=267 second=117 amount=-1 +kerning first=231 second=117 amount=-1 +kerning first=339 second=117 amount=-1 +kerning first=303 second=117 amount=-1 +kerning first=344 second=264 amount=-1 +kerning first=280 second=290 amount=-1 +kerning first=264 second=214 amount=-2 +kerning first=203 second=207 amount=-1 +kerning first=82 second=98 amount=-1 +kerning first=78 second=338 amount=-1 +kerning first=187 second=98 amount=-1 +kerning first=194 second=291 amount=-1 +kerning first=200 second=264 amount=-1 +kerning first=344 second=240 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=380 second=240 amount=-1 +kerning first=86 second=364 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=90 second=377 amount=-1 +kerning first=336 second=221 amount=-1 +kerning first=1079 second=1093 amount=-1 +kerning first=368 second=194 amount=-2 +kerning first=268 second=220 amount=-1 +kerning first=1045 second=1024 amount=-1 +kerning first=8218 second=119 amount=-2 +kerning first=76 second=201 amount=-1 +kerning first=353 second=249 amount=-1 +kerning first=377 second=304 amount=-1 +kerning first=196 second=220 amount=-2 +kerning first=99 second=275 amount=-1 +kerning first=332 second=194 amount=-2 +kerning first=187 second=330 amount=-3 +kerning first=89 second=324 amount=-1 +kerning first=317 second=90 amount=-1 +kerning first=67 second=287 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=1082 second=1077 amount=-1 +kerning first=86 second=97 amount=-2 +kerning first=284 second=317 amount=-1 +kerning first=198 second=84 amount=-1 +kerning first=1118 second=1077 amount=-1 +kerning first=102 second=227 amount=-1 +kerning first=240 second=291 amount=-1 +kerning first=103 second=287 amount=-1 +kerning first=376 second=220 amount=-1 +kerning first=66 second=227 amount=-1 +kerning first=356 second=317 amount=-1 +kerning first=1046 second=1077 amount=-1 +kerning first=204 second=291 amount=-1 +kerning first=244 second=287 amount=-1 +kerning first=287 second=311 amount=-1 +kerning first=71 second=317 amount=-1 +kerning first=304 second=213 amount=-1 +kerning first=374 second=324 amount=-1 +kerning first=118 second=337 amount=-1 +kerning first=251 second=311 amount=-1 +kerning first=268 second=213 amount=-2 +kerning first=338 second=324 amount=-1 +kerning first=381 second=71 amount=-1 +kerning first=82 second=337 amount=-1 +kerning first=316 second=287 amount=-1 +kerning first=327 second=243 amount=-1 +kerning first=376 second=213 amount=-1 +kerning first=1114 second=1088 amount=-1 +kerning first=280 second=287 amount=-1 +kerning first=241 second=253 amount=-1 +kerning first=200 second=207 amount=-1 +kerning first=212 second=317 amount=-1 +kerning first=371 second=97 amount=-1 +kerning first=351 second=347 amount=-1 +kerning first=68 second=381 amount=-1 +kerning first=230 second=324 amount=-1 +kerning first=352 second=287 amount=-1 +kerning first=288 second=77 amount=-1 +kerning first=327 second=261 amount=-1 +kerning first=68 second=90 amount=-1 +kerning first=242 second=187 amount=-1 +kerning first=315 second=303 amount=-1 +kerning first=350 second=187 amount=-1 +kerning first=201 second=71 amount=-1 +kerning first=216 second=77 amount=-1 +kerning first=266 second=324 amount=-1 +kerning first=352 second=318 amount=-1 +kerning first=225 second=8217 amount=-1 +kerning first=381 second=303 amount=-1 +kerning first=99 second=263 amount=-1 +kerning first=295 second=365 amount=-1 +kerning first=259 second=365 amount=-1 +kerning first=203 second=197 amount=-1 +kerning first=344 second=268 amount=-1 +kerning first=377 second=326 amount=-1 +kerning first=231 second=120 amount=-1 +kerning first=1050 second=1104 amount=-1 +kerning first=204 second=263 amount=-1 +kerning first=336 second=193 amount=-2 +kerning first=356 second=78 amount=-1 +kerning first=363 second=45 amount=-1 +kerning first=267 second=120 amount=-1 +kerning first=187 second=365 amount=-1 +kerning first=317 second=353 amount=-1 +kerning first=344 second=243 amount=-1 +kerning first=284 second=78 amount=-1 +kerning first=353 second=353 amount=-1 +kerning first=380 second=243 amount=-1 +kerning first=251 second=291 amount=-1 +kerning first=200 second=268 amount=-1 +kerning first=187 second=70 amount=-3 +kerning first=212 second=78 amount=-1 +kerning first=267 second=232 amount=-1 +kerning first=71 second=78 amount=-1 +kerning first=218 second=275 amount=-1 +kerning first=69 second=356 amount=-1 +kerning first=209 second=353 amount=-1 +kerning first=284 second=85 amount=-1 +kerning first=353 second=118 amount=-1 +kerning first=113 second=275 amount=-1 +kerning first=245 second=353 amount=-1 +kerning first=108 second=113 amount=-1 +kerning first=281 second=353 amount=-1 +kerning first=212 second=85 amount=-1 +kerning first=248 second=314 amount=-1 +kerning first=303 second=120 amount=-1 +kerning first=288 second=74 amount=-1 +kerning first=77 second=275 amount=-1 +kerning first=8250 second=102 amount=-1 +kerning first=339 second=120 amount=-1 +kerning first=209 second=118 amount=-1 +kerning first=375 second=120 amount=-1 +kerning first=71 second=85 amount=-1 +kerning first=367 second=365 amount=-1 +kerning first=317 second=118 amount=-1 +kerning first=104 second=353 amount=-1 +kerning first=331 second=365 amount=-1 +kerning first=281 second=118 amount=-1 +kerning first=1082 second=1108 amount=-1 +kerning first=252 second=105 amount=-1 +kerning first=303 second=380 amount=-1 +kerning first=1046 second=1108 amount=-1 +kerning first=376 second=241 amount=-1 +kerning first=8250 second=362 amount=-2 +kerning first=8218 second=122 amount=-2 +kerning first=339 second=380 amount=-1 +kerning first=81 second=8249 amount=-1 +kerning first=311 second=235 amount=-1 +kerning first=74 second=283 amount=-1 +kerning first=375 second=380 amount=-1 +kerning first=117 second=8249 amount=-1 +kerning first=325 second=353 amount=-1 +kerning first=66 second=224 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=327 second=338 amount=-1 +kerning first=268 second=241 amount=-1 +kerning first=323 second=283 amount=-1 +kerning first=295 second=98 amount=-1 +kerning first=207 second=224 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=287 second=283 amount=-1 +kerning first=259 second=98 amount=-1 +kerning first=231 second=380 amount=-1 +kerning first=367 second=98 amount=-1 +kerning first=279 second=224 amount=-1 +kerning first=1060 second=1053 amount=-1 +kerning first=344 second=8221 amount=-3 +kerning first=267 second=380 amount=-1 +kerning first=356 second=85 amount=-1 +kerning first=1024 second=1053 amount=-1 +kerning first=198 second=112 amount=-1 +kerning first=376 second=248 amount=-2 +kerning first=103 second=45 amount=-1 +kerning first=351 second=224 amount=-1 +kerning first=87 second=193 amount=-3 +kerning first=67 second=318 amount=-1 +kerning first=286 second=74 amount=-1 +kerning first=334 second=325 amount=-1 +kerning first=236 second=226 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=304 second=248 amount=-1 +kerning first=90 second=380 amount=-1 +kerning first=203 second=228 amount=-1 +kerning first=330 second=8249 amount=-2 +kerning first=264 second=193 amount=-2 +kerning first=244 second=318 amount=-1 +kerning first=366 second=8249 amount=-3 +kerning first=268 second=248 amount=-1 +kerning first=381 second=331 amount=-1 +kerning first=280 second=318 amount=-1 +kerning first=258 second=8249 amount=-2 +kerning first=220 second=101 amount=-1 +kerning first=316 second=318 amount=-1 +kerning first=256 second=101 amount=-1 +kerning first=1070 second=1038 amount=-1 +kerning first=1049 second=1072 amount=-1 +kerning first=379 second=205 amount=-1 +kerning first=1027 second=1047 amount=-1 +kerning first=71 second=82 amount=-1 +kerning first=364 second=101 amount=-1 +kerning first=313 second=66 amount=-1 +kerning first=365 second=230 amount=-1 +kerning first=315 second=255 amount=-1 +kerning first=279 second=255 amount=-1 +kerning first=1071 second=1073 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=287 second=281 amount=-1 +kerning first=243 second=255 amount=-1 +kerning first=8216 second=263 amount=-1 +kerning first=106 second=251 amount=-1 +kerning first=323 second=281 amount=-1 +kerning first=207 second=255 amount=-1 +kerning first=70 second=251 amount=-1 +kerning first=221 second=230 amount=-2 +kerning first=97 second=108 amount=-1 +kerning first=74 second=281 amount=-1 +kerning first=66 second=8217 amount=-2 +kerning first=81 second=8221 amount=-1 +kerning first=376 second=216 amount=-1 +kerning first=248 second=347 amount=-1 +kerning first=102 second=8217 amount=1 +kerning first=66 second=255 amount=-1 +kerning first=283 second=251 amount=-1 +kerning first=381 second=99 amount=-1 +kerning first=378 second=107 amount=-1 +kerning first=198 second=107 amount=-1 +kerning first=222 second=8221 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=107 second=347 amount=-1 +kerning first=258 second=8221 amount=-3 +kerning first=207 second=231 amount=-1 +kerning first=117 second=8221 amount=-2 +kerning first=268 second=216 amount=-2 +kerning first=382 second=371 amount=-1 +kerning first=234 second=107 amount=-1 +kerning first=304 second=216 amount=-1 +kerning first=102 second=231 amount=-1 +kerning first=381 second=67 amount=-1 +kerning first=115 second=106 amount=-1 +kerning first=369 second=229 amount=-1 +kerning first=211 second=282 amount=-1 +kerning first=266 second=80 amount=-1 +kerning first=87 second=217 amount=-1 +kerning first=79 second=106 amount=-1 +kerning first=82 second=333 amount=-1 +kerning first=356 second=345 amount=-1 +kerning first=216 second=346 amount=-1 +kerning first=274 second=368 amount=-1 +kerning first=201 second=67 amount=-1 +kerning first=380 second=107 amount=-1 +kerning first=302 second=257 amount=-1 +kerning first=328 second=106 amount=-1 +kerning first=310 second=368 amount=-1 +kerning first=89 second=80 amount=-1 +kerning first=118 second=333 amount=-1 +kerning first=264 second=217 amount=-1 +kerning first=75 second=346 amount=-1 +kerning first=203 second=204 amount=-1 +kerning first=288 second=346 amount=-1 +kerning first=1045 second=1049 amount=-1 +kerning first=346 second=368 amount=-1 +kerning first=207 second=338 amount=-1 +kerning first=338 second=80 amount=-1 +kerning first=233 second=307 amount=-1 +kerning first=269 second=307 amount=-1 +kerning first=1038 second=1033 amount=-3 +kerning first=374 second=80 amount=-1 +kerning first=201 second=334 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=8216 second=260 amount=-4 +kerning first=8217 second=326 amount=-1 +kerning first=256 second=369 amount=-1 +kerning first=233 second=44 amount=-2 +kerning first=198 second=79 amount=-1 +kerning first=256 second=104 amount=-1 +kerning first=364 second=369 amount=-1 +kerning first=102 second=259 amount=-1 +kerning first=66 second=259 amount=-1 +kerning first=201 second=77 amount=-1 +kerning first=115 second=369 amount=-1 +kerning first=288 second=374 amount=-1 +kerning first=198 second=344 amount=-1 +kerning first=220 second=369 amount=-1 +kerning first=350 second=192 amount=-2 +kerning first=381 second=334 amount=-1 +kerning first=216 second=374 amount=-1 +kerning first=378 second=109 amount=-1 +kerning first=351 second=227 amount=-1 +kerning first=269 second=279 amount=-1 +kerning first=120 second=229 amount=-1 +kerning first=278 second=192 amount=-1 +kerning first=1114 second=1085 amount=-1 +kerning first=83 second=194 amount=-2 +kerning first=336 second=217 amount=-1 +kerning first=1069 second=1059 amount=-1 +kerning first=279 second=227 amount=-1 +kerning first=234 second=109 amount=-1 +kerning first=84 second=229 amount=-2 +kerning first=305 second=44 amount=-1 +kerning first=1093 second=1095 amount=-1 +kerning first=269 second=44 amount=-1 +kerning first=1057 second=1095 amount=-1 +kerning first=115 second=104 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=197 second=279 amount=-1 +kerning first=187 second=65 amount=-2 +kerning first=339 second=289 amount=-1 +kerning first=97 second=371 amount=-1 +kerning first=354 second=219 amount=-1 +kerning first=218 second=379 amount=-1 +kerning first=311 second=232 amount=-1 +kerning first=282 second=219 amount=-1 +kerning first=82 second=361 amount=-1 +kerning first=84 second=257 amount=-2 +kerning first=326 second=118 amount=-1 +kerning first=120 second=257 amount=-1 +kerning first=210 second=219 amount=-1 +kerning first=187 second=361 amount=-1 +kerning first=377 second=279 amount=-1 +kerning first=295 second=361 amount=-1 +kerning first=381 second=305 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=259 second=361 amount=-1 +kerning first=80 second=202 amount=-1 +kerning first=69 second=219 amount=-1 +kerning first=353 second=121 amount=-1 +kerning first=356 second=82 amount=-1 +kerning first=196 second=244 amount=-1 +kerning first=283 second=254 amount=-1 +kerning first=75 second=374 amount=-1 +kerning first=317 second=121 amount=-1 +kerning first=221 second=202 amount=-1 +kerning first=281 second=121 amount=-1 +kerning first=268 second=244 amount=-1 +kerning first=8216 second=291 amount=-2 +kerning first=245 second=121 amount=-1 +kerning first=204 second=267 amount=-1 +kerning first=304 second=244 amount=-1 +kerning first=209 second=121 amount=-1 +kerning first=212 second=82 amount=-1 +kerning first=106 second=254 amount=-1 +kerning first=99 second=267 amount=-1 +kerning first=376 second=244 amount=-2 +kerning first=296 second=249 amount=-1 +kerning first=369 second=257 amount=-1 +kerning first=1057 second=1116 amount=-1 +kerning first=87 second=209 amount=-1 +kerning first=379 second=199 amount=-1 +kerning first=356 second=69 amount=-1 +kerning first=88 second=8217 amount=-1 +kerning first=221 second=212 amount=-1 +kerning first=284 second=69 amount=-1 +kerning first=205 second=332 amount=-1 +kerning first=264 second=209 amount=-1 +kerning first=313 second=79 amount=-1 +kerning first=212 second=69 amount=-1 +kerning first=205 second=79 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=198 second=82 amount=-1 +kerning first=71 second=69 amount=-1 +kerning first=371 second=303 amount=-1 +kerning first=379 second=192 amount=-1 +kerning first=69 second=216 amount=-1 +kerning first=266 second=76 amount=-1 +kerning first=366 second=289 amount=-2 +kerning first=337 second=8217 amount=-1 +kerning first=216 second=89 amount=-1 +kerning first=313 second=332 amount=-1 +kerning first=288 second=89 amount=-1 +kerning first=356 second=113 amount=-2 +kerning first=206 second=333 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=199 second=199 amount=-2 +kerning first=193 second=8217 amount=-3 +kerning first=199 second=192 amount=-2 +kerning first=77 second=242 amount=-1 +kerning first=313 second=72 amount=-1 +kerning first=218 second=242 amount=-1 +kerning first=86 second=82 amount=-1 +kerning first=221 second=205 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=75 second=89 amount=-1 +kerning first=203 second=226 amount=-1 +kerning first=8250 second=374 amount=-2 +kerning first=80 second=205 amount=-1 +kerning first=362 second=242 amount=-1 +kerning first=275 second=226 amount=-1 +kerning first=84 second=75 amount=-1 +kerning first=272 second=8221 amount=-1 +kerning first=72 second=119 amount=-1 +kerning first=347 second=226 amount=-1 +kerning first=307 second=45 amount=-1 +kerning first=282 second=216 amount=-1 +kerning first=374 second=76 amount=-1 +kerning first=108 second=119 amount=-1 +kerning first=219 second=326 amount=-1 +kerning first=338 second=76 amount=-1 +kerning first=255 second=326 amount=-1 +kerning first=97 second=253 amount=-1 +kerning first=236 second=8221 amount=-1 +kerning first=354 second=216 amount=-1 +kerning first=291 second=326 amount=-1 +kerning first=1064 second=1092 amount=-1 +kerning first=352 second=302 amount=-1 +kerning first=249 second=119 amount=-1 +kerning first=8216 second=267 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=203 second=219 amount=-1 +kerning first=262 second=316 amount=-1 +kerning first=87 second=202 amount=-1 +kerning first=280 second=302 amount=-1 +kerning first=321 second=119 amount=-1 +kerning first=381 second=333 amount=-1 +kerning first=336 second=209 amount=-1 +kerning first=280 second=282 amount=-1 +kerning first=350 second=230 amount=-1 +kerning first=381 second=45 amount=-1 +kerning first=336 second=202 amount=-1 +kerning first=208 second=302 amount=-1 +kerning first=1060 second=1059 amount=-1 +kerning first=264 second=202 amount=-1 +kerning first=187 second=86 amount=-2 +kerning first=67 second=302 amount=-1 +kerning first=346 second=375 amount=-1 +kerning first=310 second=375 amount=-2 +kerning first=8217 second=338 amount=-1 +kerning first=1100 second=1085 amount=-1 +kerning first=99 second=269 amount=-1 +kerning first=378 second=103 amount=-1 +kerning first=84 second=253 amount=-1 +kerning first=288 second=356 amount=-1 +kerning first=364 second=122 amount=-1 +kerning first=79 second=382 amount=-1 +kerning first=120 second=253 amount=-1 +kerning first=204 second=269 amount=-1 +kerning first=115 second=382 amount=-1 +kerning first=279 second=252 amount=-1 +kerning first=201 second=45 amount=-1 +kerning first=216 second=356 amount=-1 +kerning first=216 second=362 amount=-1 +kerning first=207 second=246 amount=-1 +kerning first=225 second=253 amount=-1 +kerning first=198 second=363 amount=-1 +kerning first=234 second=103 amount=-1 +kerning first=261 second=253 amount=-1 +kerning first=351 second=252 amount=-1 +kerning first=288 second=362 amount=-1 +kerning first=198 second=103 amount=-1 +kerning first=382 second=375 amount=-1 +kerning first=256 second=116 amount=-1 +kerning first=75 second=356 amount=-1 +kerning first=1045 second=1043 amount=-1 +kerning first=8217 second=345 amount=-1 +kerning first=115 second=122 amount=-1 +kerning first=84 second=213 amount=-1 +kerning first=75 second=362 amount=-1 +kerning first=79 second=122 amount=-1 +kerning first=364 second=382 amount=-1 +kerning first=88 second=259 amount=-1 +kerning first=378 second=363 amount=-1 +kerning first=378 second=369 amount=-1 +kerning first=1071 second=1089 amount=-1 +kerning first=198 second=369 amount=-1 +kerning first=314 second=307 amount=-1 +kerning first=220 second=382 amount=-1 +kerning first=364 second=109 amount=-1 +kerning first=97 second=375 amount=-1 +kerning first=220 second=122 amount=-1 +kerning first=234 second=369 amount=-1 +kerning first=70 second=266 amount=-1 +kerning first=115 second=109 amount=-1 +kerning first=202 second=115 amount=-1 +kerning first=75 second=355 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=220 second=109 amount=-1 +kerning first=97 second=115 amount=-1 +kerning first=356 second=256 amount=-3 +kerning first=335 second=380 amount=-1 +kerning first=302 second=336 amount=-1 +kerning first=346 second=115 amount=-1 +kerning first=338 second=336 amount=-1 +kerning first=382 second=115 amount=-1 +kerning first=1045 second=1036 amount=-1 +kerning first=374 second=336 amount=-1 +kerning first=274 second=115 amount=-1 +kerning first=208 second=296 amount=-1 +kerning first=1064 second=1086 amount=-1 +kerning first=310 second=115 amount=-1 +kerning first=333 second=253 amount=-1 +kerning first=280 second=296 amount=-1 +kerning first=369 second=253 amount=-1 +kerning first=120 second=232 amount=-1 +kerning first=202 second=108 amount=-1 +kerning first=115 second=116 amount=-1 +kerning first=352 second=296 amount=-1 +kerning first=310 second=108 amount=-1 +kerning first=274 second=108 amount=-1 +kerning first=80 second=206 amount=-1 +kerning first=382 second=108 amount=-1 +kerning first=346 second=108 amount=-1 +kerning first=198 second=370 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=67 second=251 amount=-1 +kerning first=104 second=98 amount=-1 +kerning first=356 second=75 amount=-1 +kerning first=266 second=328 amount=-1 +kerning first=352 second=315 amount=-1 +kerning first=244 second=303 amount=-1 +kerning first=330 second=290 amount=-1 +kerning first=221 second=206 amount=-1 +kerning first=230 second=328 amount=-1 +kerning first=354 second=245 amount=-2 +kerning first=284 second=75 amount=-1 +kerning first=1086 second=1113 amount=-1 +kerning first=187 second=73 amount=-3 +kerning first=76 second=200 amount=-1 +kerning first=1050 second=1113 amount=-1 +kerning first=208 second=315 amount=-1 +kerning first=75 second=83 amount=-1 +kerning first=374 second=328 amount=-1 +kerning first=264 second=196 amount=-2 +kerning first=1100 second=1107 amount=-1 +kerning first=338 second=328 amount=-1 +kerning first=280 second=315 amount=-1 +kerning first=316 second=303 amount=-1 +kerning first=258 second=290 amount=-1 +kerning first=286 second=221 amount=-1 +kerning first=1056 second=1038 amount=-1 +kerning first=336 second=196 amount=-2 +kerning first=352 second=303 amount=-1 +kerning first=317 second=211 amount=-1 +kerning first=275 second=225 amount=-1 +kerning first=216 second=83 amount=-1 +kerning first=317 second=380 amount=-1 +kerning first=311 second=225 amount=-1 +kerning first=71 second=323 amount=-1 +kerning first=87 second=196 amount=-3 +kerning first=353 second=380 amount=-1 +kerning first=347 second=225 amount=-1 +kerning first=313 second=338 amount=-1 +kerning first=203 second=80 amount=-1 +kerning first=1057 second=1117 amount=-1 +kerning first=281 second=98 amount=-1 +kerning first=1118 second=1093 amount=-1 +kerning first=284 second=323 amount=-1 +kerning first=313 second=85 amount=-1 +kerning first=67 second=303 amount=-1 +kerning first=209 second=380 amount=-1 +kerning first=353 second=98 amount=-1 +kerning first=203 second=225 amount=-1 +kerning first=356 second=323 amount=-1 +kerning first=245 second=380 amount=-1 +kerning first=317 second=98 amount=-1 +kerning first=8250 second=375 amount=-2 +kerning first=323 second=286 amount=-1 +kerning first=281 second=380 amount=-1 +kerning first=376 second=235 amount=-1 +kerning first=102 second=233 amount=-1 +kerning first=252 second=102 amount=-1 +kerning first=354 second=210 amount=-1 +kerning first=288 second=102 amount=-1 +kerning first=89 second=77 amount=-1 +kerning first=207 second=233 amount=-1 +kerning first=282 second=210 amount=-1 +kerning first=345 second=46 amount=-2 +kerning first=338 second=77 amount=-1 +kerning first=1038 second=1040 amount=-3 +kerning first=82 second=71 amount=-1 +kerning first=221 second=211 amount=-1 +kerning first=74 second=286 amount=-1 +kerning first=323 second=103 amount=-1 +kerning first=82 second=352 amount=-1 +kerning first=266 second=77 amount=-1 +kerning first=268 second=345 amount=-1 +kerning first=193 second=45 amount=-2 +kerning first=201 second=46 amount=-1 +kerning first=69 second=210 amount=-1 +kerning first=335 second=112 amount=-1 +kerning first=214 second=221 amount=-1 +kerning first=207 second=252 amount=-1 +kerning first=263 second=112 amount=-1 +kerning first=196 second=235 amount=-1 +kerning first=115 second=110 amount=-1 +kerning first=89 second=328 amount=-1 +kerning first=268 second=235 amount=-1 +kerning first=122 second=112 amount=-1 +kerning first=216 second=350 amount=-1 +kerning first=220 second=110 amount=-1 +kerning first=304 second=235 amount=-1 +kerning first=86 second=112 amount=-1 +kerning first=80 second=194 amount=-2 +kerning first=66 second=252 amount=-1 +kerning first=8217 second=332 amount=-1 +kerning first=113 second=250 amount=-1 +kerning first=209 second=378 amount=-1 +kerning first=187 second=353 amount=-1 +kerning first=364 second=110 amount=-1 +kerning first=204 second=275 amount=-1 +kerning first=223 second=353 amount=-1 +kerning first=321 second=171 amount=-1 +kerning first=8250 second=120 amount=-2 +kerning first=122 second=113 amount=-1 +kerning first=218 second=250 amount=-1 +kerning first=281 second=378 amount=-1 +kerning first=259 second=353 amount=-1 +kerning first=86 second=366 amount=-1 +kerning first=344 second=262 amount=-1 +kerning first=86 second=113 amount=-2 +kerning first=288 second=350 amount=-1 +kerning first=245 second=378 amount=-1 +kerning first=327 second=352 amount=-1 +kerning first=371 second=113 amount=-1 +kerning first=70 second=260 amount=-2 +kerning first=371 second=100 amount=-1 +kerning first=201 second=73 amount=-1 +kerning first=8250 second=108 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=353 second=365 amount=-1 +kerning first=203 second=315 amount=-1 +kerning first=317 second=365 amount=-1 +kerning first=82 second=353 amount=-1 +kerning first=213 second=171 amount=-1 +kerning first=281 second=365 amount=-1 +kerning first=263 second=113 amount=-1 +kerning first=352 second=237 amount=-1 +kerning first=68 second=378 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=249 second=171 amount=-1 +kerning first=204 second=288 amount=-1 +kerning first=211 second=260 amount=-2 +kerning first=263 second=100 amount=-1 +kerning first=313 second=87 amount=-1 +kerning first=200 second=249 amount=-1 +kerning first=1107 second=1076 amount=-1 +kerning first=356 second=114 amount=-1 +kerning first=298 second=350 amount=-1 +kerning first=236 second=249 amount=-1 +kerning first=1060 second=1065 amount=-1 +kerning first=353 second=378 amount=-1 +kerning first=303 second=271 amount=-1 +kerning first=86 second=100 amount=-2 +kerning first=313 second=354 amount=-1 +kerning first=317 second=378 amount=-1 +kerning first=122 second=100 amount=-1 +kerning first=344 second=249 amount=-1 +kerning first=200 second=262 amount=-1 +kerning first=1100 second=1091 amount=-1 +kerning first=45 second=289 amount=-1 +kerning first=1046 second=1105 amount=-1 +kerning first=202 second=377 amount=-1 +kerning first=268 second=223 amount=-1 +kerning first=81 second=289 amount=-1 +kerning first=362 second=248 amount=-1 +kerning first=1082 second=1105 amount=-1 +kerning first=1053 second=1077 amount=-1 +kerning first=353 second=114 amount=-1 +kerning first=376 second=223 amount=-1 +kerning first=217 second=198 amount=-2 +kerning first=117 second=289 amount=-1 +kerning first=205 second=339 amount=-1 +kerning first=68 second=380 amount=-1 +kerning first=1024 second=1065 amount=-1 +kerning first=8250 second=121 amount=-2 +kerning first=222 second=289 amount=-1 +kerning first=346 second=377 amount=-1 +kerning first=258 second=289 amount=-1 +kerning first=344 second=8220 amount=-3 +kerning first=218 second=248 amount=-1 +kerning first=81 second=274 amount=-1 +kerning first=362 second=263 amount=-1 +kerning first=201 second=327 amount=-1 +kerning first=77 second=248 amount=-1 +kerning first=45 second=274 amount=-3 +kerning first=274 second=377 amount=-1 +kerning first=76 second=198 amount=-1 +kerning first=330 second=289 amount=-1 +kerning first=272 second=8220 amount=-1 +kerning first=113 second=248 amount=-1 +kerning first=113 second=263 amount=-1 +kerning first=1075 second=1103 amount=-1 +kerning first=236 second=8220 amount=-1 +kerning first=74 second=287 amount=-1 +kerning first=209 second=365 amount=-1 +kerning first=353 second=110 amount=-1 +kerning first=86 second=379 amount=-1 +kerning first=218 second=263 amount=-1 +kerning first=1042 second=1079 amount=-1 +kerning first=222 second=274 amount=-1 +kerning first=104 second=365 amount=-1 +kerning first=1078 second=1079 amount=-1 +kerning first=381 second=327 amount=-1 +kerning first=67 second=315 amount=-1 +kerning first=110 second=287 amount=-1 +kerning first=212 second=75 amount=-1 +kerning first=209 second=99 amount=-1 +kerning first=331 second=353 amount=-1 +kerning first=251 second=287 amount=-1 +kerning first=367 second=353 amount=-1 +kerning first=8250 second=204 amount=-3 +kerning first=323 second=287 amount=-1 +kerning first=77 second=263 amount=-1 +kerning first=71 second=75 amount=-1 +kerning first=250 second=237 amount=-1 +kerning first=287 second=287 amount=-1 +kerning first=338 second=334 amount=-1 +kerning first=315 second=237 amount=-1 +kerning first=302 second=334 amount=-1 +kerning first=279 second=237 amount=-1 +kerning first=122 second=104 amount=-1 +kerning first=235 second=187 amount=-1 +kerning first=262 second=44 amount=-1 +kerning first=258 second=284 amount=-1 +kerning first=243 second=237 amount=-1 +kerning first=262 second=223 amount=-1 +kerning first=69 second=197 amount=-1 +kerning first=374 second=334 amount=-1 +kerning first=84 second=244 amount=-2 +kerning first=198 second=193 amount=-1 +kerning first=334 second=44 amount=-1 +kerning first=120 second=244 amount=-1 +kerning first=121 second=44 amount=-3 +kerning first=381 second=324 amount=-1 +kerning first=85 second=44 amount=-3 +kerning first=210 second=197 amount=-2 +kerning first=73 second=234 amount=-1 +kerning first=66 second=237 amount=-1 +kerning first=263 second=104 amount=-1 +kerning first=226 second=44 amount=-1 +kerning first=198 second=354 amount=-1 +kerning first=282 second=197 amount=-1 +kerning first=217 second=194 amount=-2 +kerning first=258 second=277 amount=-1 +kerning first=354 second=197 amount=-3 +kerning first=366 second=277 amount=-1 +kerning first=209 second=111 amount=-1 +kerning first=1045 second=1034 amount=-1 +kerning first=330 second=277 amount=-1 +kerning first=100 second=351 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=194 second=334 amount=-1 +kerning first=366 second=284 amount=-1 +kerning first=187 second=74 amount=-2 +kerning first=1093 second=1104 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=1049 second=1054 amount=-1 +kerning first=76 second=194 amount=-1 +kerning first=1057 second=1104 amount=-1 +kerning first=266 second=334 amount=-2 +kerning first=286 second=227 amount=-1 +kerning first=250 second=227 amount=-1 +kerning first=330 second=284 amount=-1 +kerning first=198 second=364 amount=-1 +kerning first=255 second=314 amount=-1 +kerning first=193 second=264 amount=-1 +kerning first=323 second=8249 amount=-2 +kerning first=89 second=327 amount=-1 +kerning first=382 second=111 amount=-1 +kerning first=354 second=248 amount=-2 +kerning first=371 second=367 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=263 second=367 amount=-1 +kerning first=288 second=361 amount=-1 +kerning first=251 second=8249 amount=-1 +kerning first=97 second=121 amount=-1 +kerning first=291 second=314 amount=-1 +kerning first=362 second=257 amount=-2 +kerning first=252 second=361 amount=-1 +kerning first=287 second=8249 amount=-1 +kerning first=352 second=102 amount=-1 +kerning first=241 second=351 amount=-1 +kerning first=304 second=378 amount=-1 +kerning first=266 second=327 amount=-1 +kerning first=205 second=351 amount=-1 +kerning first=363 second=314 amount=-1 +kerning first=290 second=257 amount=-1 +kerning first=227 second=367 amount=-1 +kerning first=324 second=361 amount=-1 +kerning first=202 second=315 amount=-1 +kerning first=346 second=114 amount=-1 +kerning first=313 second=351 amount=-1 +kerning first=86 second=367 amount=-1 +kerning first=326 second=254 amount=-1 +kerning first=74 second=8249 amount=-2 +kerning first=338 second=327 amount=-1 +kerning first=277 second=351 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=122 second=367 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=374 second=327 amount=-1 +kerning first=1056 second=1051 amount=-1 +kerning first=317 second=374 amount=-1 +kerning first=214 second=224 amount=-1 +kerning first=274 second=117 amount=-1 +kerning first=344 second=261 amount=-1 +kerning first=382 second=117 amount=-1 +kerning first=380 second=261 amount=-1 +kerning first=346 second=117 amount=-1 +kerning first=371 second=104 amount=-1 +kerning first=72 second=171 amount=-2 +kerning first=1058 second=1114 amount=-1 +kerning first=290 second=250 amount=-1 +kerning first=346 second=121 amount=-1 +kerning first=1049 second=1057 amount=-1 +kerning first=200 second=261 amount=-1 +kerning first=313 second=344 amount=-1 +kerning first=310 second=121 amount=-2 +kerning first=236 second=261 amount=-1 +kerning first=8217 second=339 amount=-2 +kerning first=362 second=250 amount=-1 +kerning first=86 second=101 amount=-2 +kerning first=351 second=237 amount=-1 +kerning first=272 second=261 amount=-1 +kerning first=326 second=250 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=1045 second=1031 amount=-1 +kerning first=122 second=101 amount=-1 +kerning first=378 second=97 amount=-1 +kerning first=338 second=331 amount=-1 +kerning first=302 second=337 amount=-1 +kerning first=8217 second=79 amount=-1 +kerning first=230 second=331 amount=-1 +kerning first=266 second=337 amount=-1 +kerning first=1057 second=1107 amount=-1 +kerning first=263 second=101 amount=-1 +kerning first=1056 second=1041 amount=-1 +kerning first=266 second=331 amount=-1 +kerning first=210 second=200 amount=-1 +kerning first=97 second=117 amount=-1 +kerning first=323 second=290 amount=-1 +kerning first=371 second=101 amount=-1 +kerning first=202 second=117 amount=-1 +kerning first=69 second=200 amount=-1 +kerning first=374 second=337 amount=-2 +kerning first=374 second=330 amount=-1 +kerning first=1042 second=1067 amount=-1 +kerning first=252 second=98 amount=-1 +kerning first=69 second=207 amount=-1 +kerning first=113 second=251 amount=-1 +kerning first=324 second=98 amount=-1 +kerning first=290 second=323 amount=-1 +kerning first=77 second=251 amount=-1 +kerning first=207 second=240 amount=-1 +kerning first=218 second=251 amount=-1 +kerning first=221 second=214 amount=-1 +kerning first=75 second=98 amount=-1 +kerning first=89 second=8249 amount=-3 +kerning first=8216 second=279 amount=-1 +kerning first=102 second=240 amount=-1 +kerning first=382 second=380 amount=-1 +kerning first=79 second=194 amount=-2 +kerning first=290 second=251 amount=-1 +kerning first=282 second=201 amount=-1 +kerning first=103 second=311 amount=-1 +kerning first=362 second=251 amount=-1 +kerning first=354 second=207 amount=-1 +kerning first=1045 second=1030 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=67 second=311 amount=-1 +kerning first=326 second=251 amount=-1 +kerning first=216 second=90 amount=-1 +kerning first=224 second=289 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=377 second=298 amount=-1 +kerning first=288 second=90 amount=-1 +kerning first=334 second=304 amount=-1 +kerning first=210 second=207 amount=-1 +kerning first=69 second=201 amount=-1 +kerning first=266 second=330 amount=-1 +kerning first=203 second=220 amount=-1 +kerning first=377 second=291 amount=-2 +kerning first=282 second=207 amount=-1 +kerning first=68 second=368 amount=-1 +kerning first=354 second=200 amount=-1 +kerning first=8216 second=273 amount=-1 +kerning first=305 second=291 amount=-1 +kerning first=80 second=221 amount=-1 +kerning first=317 second=368 amount=-1 +kerning first=269 second=291 amount=-1 +kerning first=201 second=324 amount=-1 +kerning first=282 second=200 amount=-1 +kerning first=352 second=311 amount=-1 +kerning first=356 second=116 amount=-1 +kerning first=233 second=291 amount=-1 +kerning first=102 second=382 amount=-1 +kerning first=202 second=381 amount=-1 +kerning first=272 second=364 amount=-1 +kerning first=197 second=291 amount=-1 +kerning first=203 second=213 amount=-1 +kerning first=45 second=278 amount=-3 +kerning first=234 second=97 amount=-1 +kerning first=1043 second=1060 amount=-1 +kerning first=280 second=311 amount=-1 +kerning first=194 second=337 amount=-1 +kerning first=274 second=381 amount=-1 +kerning first=266 second=71 amount=-2 +kerning first=202 second=212 amount=-1 +kerning first=244 second=311 amount=-1 +kerning first=379 second=187 amount=-1 +kerning first=374 second=71 amount=-1 +kerning first=313 second=84 amount=-1 +kerning first=89 second=337 amount=-2 +kerning first=346 second=381 amount=-1 +kerning first=338 second=71 amount=-1 +kerning first=198 second=97 amount=-1 +kerning first=69 second=203 amount=-1 +kerning first=222 second=278 amount=-1 +kerning first=245 second=375 amount=-1 +kerning first=218 second=253 amount=-1 +kerning first=209 second=375 amount=-1 +kerning first=8250 second=117 amount=-1 +kerning first=199 second=193 amount=-2 +kerning first=254 second=253 amount=-1 +kerning first=221 second=218 amount=-1 +kerning first=97 second=120 amount=-1 +kerning first=104 second=375 amount=-1 +kerning first=207 second=243 amount=-1 +kerning first=89 second=70 amount=-1 +kerning first=326 second=253 amount=-1 +kerning first=371 second=103 amount=-1 +kerning first=8216 second=275 amount=-1 +kerning first=193 second=268 amount=-1 +kerning first=353 second=375 amount=-1 +kerning first=335 second=103 amount=-1 +kerning first=313 second=78 amount=-1 +kerning first=317 second=375 amount=-1 +kerning first=67 second=45 amount=-2 +kerning first=267 second=103 amount=-1 +kerning first=1049 second=1060 amount=-1 +kerning first=379 second=193 amount=-1 +kerning first=201 second=311 amount=-1 +kerning first=281 second=375 amount=-1 +kerning first=1100 second=1095 amount=-1 +kerning first=266 second=70 amount=-1 +kerning first=346 second=120 amount=-1 +kerning first=1064 second=1095 amount=-1 +kerning first=382 second=120 amount=-1 +kerning first=338 second=68 amount=-1 +kerning first=1056 second=1045 amount=-1 +kerning first=354 second=203 amount=-1 +kerning first=374 second=68 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=346 second=118 amount=-1 +kerning first=334 second=310 amount=-1 +kerning first=282 second=203 amount=-1 +kerning first=310 second=118 amount=-1 +kerning first=202 second=120 amount=-1 +kerning first=354 second=201 amount=-1 +kerning first=262 second=310 amount=-1 +kerning first=338 second=70 amount=-1 +kerning first=77 second=253 amount=-1 +kerning first=210 second=203 amount=-1 +kerning first=382 second=118 amount=-1 +kerning first=274 second=120 amount=-1 +kerning first=374 second=70 amount=-1 +kerning first=113 second=253 amount=-1 +kerning first=72 second=375 amount=-1 +kerning first=202 second=118 amount=-1 +kerning first=353 second=105 amount=-1 +kerning first=120 second=245 amount=-1 +kerning first=353 second=108 amount=-1 +kerning first=45 second=280 amount=-3 +kerning first=211 second=270 amount=-1 +kerning first=84 second=245 amount=-2 +kerning first=8250 second=377 amount=-2 +kerning first=274 second=118 amount=-1 +kerning first=81 second=280 amount=-1 +kerning first=103 second=305 amount=-1 +kerning first=281 second=105 amount=-1 +kerning first=67 second=305 amount=-1 +kerning first=317 second=105 amount=-1 +kerning first=202 second=73 amount=-1 +kerning first=266 second=65 amount=-2 +kerning first=222 second=280 amount=-1 +kerning first=1039 second=1108 amount=-1 +kerning first=245 second=105 amount=-1 +kerning first=97 second=118 amount=-1 +kerning first=338 second=65 amount=-1 +kerning first=65 second=108 amount=-1 +kerning first=1056 second=1048 amount=-1 +kerning first=200 second=204 amount=-1 +kerning first=201 second=318 amount=-1 +kerning first=366 second=283 amount=-1 +kerning first=352 second=305 amount=-1 +kerning first=330 second=283 amount=-1 +kerning first=316 second=305 amount=-1 +kerning first=376 second=228 amount=-2 +kerning first=264 second=334 amount=-2 +kerning first=104 second=108 amount=-1 +kerning first=356 second=335 amount=-2 +kerning first=258 second=283 amount=-1 +kerning first=1042 second=1070 amount=-1 +kerning first=245 second=108 amount=-1 +kerning first=84 second=241 amount=-1 +kerning first=304 second=228 amount=-1 +kerning first=107 second=335 amount=-1 +kerning first=268 second=228 amount=-1 +kerning first=317 second=108 amount=-1 +kerning first=374 second=331 amount=-1 +kerning first=232 second=228 amount=-1 +kerning first=281 second=108 amount=-1 +kerning first=200 second=256 amount=-1 +kerning first=258 second=281 amount=-1 +kerning first=284 second=66 amount=-1 +kerning first=122 second=107 amount=-1 +kerning first=236 second=8249 amount=-1 +kerning first=100 second=347 amount=-1 +kerning first=263 second=107 amount=-1 +kerning first=73 second=231 amount=-1 +kerning first=330 second=281 amount=-1 +kerning first=212 second=66 amount=-1 +kerning first=366 second=281 amount=-1 +kerning first=336 second=205 amount=-1 +kerning first=380 second=255 amount=-1 +kerning first=272 second=256 amount=-2 +kerning first=344 second=255 amount=-1 +kerning first=356 second=66 amount=-1 +kerning first=233 second=8250 amount=-1 +kerning first=1100 second=1098 amount=-1 +kerning first=281 second=371 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=203 second=216 amount=-1 +kerning first=194 second=45 amount=-2 +kerning first=205 second=81 amount=-1 +kerning first=113 second=257 amount=-1 +kerning first=236 second=255 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=313 second=81 amount=-1 +kerning first=353 second=371 amount=-1 +kerning first=264 second=205 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=335 second=107 amount=-1 +kerning first=377 second=8250 amount=-1 +kerning first=356 second=332 amount=-1 +kerning first=104 second=371 amount=-1 +kerning first=313 second=347 amount=-1 +kerning first=8250 second=115 amount=-1 +kerning first=277 second=347 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=241 second=347 amount=-1 +kerning first=290 second=221 amount=-1 +kerning first=371 second=107 amount=-1 +kerning first=272 second=259 amount=-1 +kerning first=87 second=205 amount=-1 +kerning first=205 second=347 amount=-1 +kerning first=89 second=68 amount=-1 +kerning first=89 second=333 amount=-2 +kerning first=282 second=204 amount=-1 +kerning first=304 second=229 amount=-1 +kerning first=120 second=242 amount=-1 +kerning first=194 second=333 amount=-1 +kerning first=221 second=217 amount=-1 +kerning first=232 second=229 amount=-1 +kerning first=313 second=201 amount=-1 +kerning first=122 second=246 amount=-1 +kerning first=268 second=229 amount=-1 +kerning first=187 second=80 amount=-3 +kerning first=374 second=67 amount=-1 +kerning first=122 second=106 amount=-1 +kerning first=338 second=67 amount=-1 +kerning first=8250 second=380 amount=-3 +kerning first=376 second=229 amount=-2 +kerning first=266 second=67 amount=-2 +kerning first=250 second=230 amount=-1 +kerning first=121 second=307 amount=-1 +kerning first=286 second=230 amount=-1 +kerning first=115 second=119 amount=-1 +kerning first=374 second=333 amount=-2 +kerning first=321 second=334 amount=-1 +kerning first=187 second=346 amount=-2 +kerning first=335 second=106 amount=-1 +kerning first=102 second=243 amount=-1 +kerning first=227 second=106 amount=-1 +kerning first=214 second=230 amount=-1 +kerning first=220 second=119 amount=-1 +kerning first=82 second=346 amount=-1 +kerning first=263 second=106 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=256 second=119 amount=-2 +kerning first=266 second=333 amount=-1 +kerning first=69 second=204 amount=-1 +kerning first=202 second=314 amount=-1 +kerning first=328 second=119 amount=-1 +kerning first=266 second=100 amount=-1 +kerning first=210 second=204 amount=-1 +kerning first=291 second=328 amount=-1 +kerning first=371 second=106 amount=1 +kerning first=8250 second=114 amount=-1 +kerning first=364 second=119 amount=-1 +kerning first=302 second=333 amount=-1 +kerning first=288 second=317 amount=-1 +kerning first=323 second=275 amount=-1 +kerning first=121 second=230 amount=-2 +kerning first=222 second=74 amount=-1 +kerning first=1045 second=1053 amount=-1 +kerning first=221 second=100 amount=-2 +kerning first=107 second=353 amount=-1 +kerning first=8216 second=324 amount=-1 +kerning first=287 second=275 amount=-1 +kerning first=85 second=230 amount=-2 +kerning first=86 second=121 amount=-1 +kerning first=366 second=74 amount=-1 +kerning first=74 second=275 amount=-1 +kerning first=90 second=81 amount=-1 +kerning first=80 second=100 amount=-1 +kerning first=66 second=256 amount=-3 +kerning first=315 second=256 amount=-1 +kerning first=259 second=45 amount=-1 +kerning first=200 second=211 amount=-1 +kerning first=370 second=230 amount=-2 +kerning first=253 second=223 amount=-1 +kerning first=356 second=339 amount=-2 +kerning first=282 second=328 amount=-1 +kerning first=217 second=223 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=298 second=230 amount=-1 +kerning first=206 second=268 amount=-1 +kerning first=334 second=230 amount=-1 +kerning first=324 second=249 amount=-1 +kerning first=344 second=211 amount=-1 +kerning first=8216 second=269 amount=-1 +kerning first=76 second=223 amount=-1 +kerning first=278 second=268 amount=-1 +kerning first=262 second=230 amount=-1 +kerning first=86 second=204 amount=-1 +kerning first=252 second=249 amount=-1 +kerning first=86 second=218 amount=-1 +kerning first=70 second=365 amount=-1 +kerning first=107 second=339 amount=-1 +kerning first=366 second=334 amount=-1 +kerning first=251 second=289 amount=-1 +kerning first=210 second=192 amount=-2 +kerning first=85 second=244 amount=-1 +kerning first=1045 second=1039 amount=-1 +kerning first=287 second=289 amount=-1 +kerning first=1079 second=1091 amount=-1 +kerning first=121 second=244 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=323 second=289 amount=-1 +kerning first=289 second=237 amount=-1 +kerning first=90 second=313 amount=-1 +kerning first=1071 second=1086 amount=-1 +kerning first=253 second=237 amount=-1 +kerning first=69 second=192 amount=-1 +kerning first=8220 second=366 amount=-1 +kerning first=217 second=237 amount=-1 +kerning first=350 second=282 amount=-1 +kerning first=262 second=244 amount=-1 +kerning first=8218 second=226 amount=-1 +kerning first=298 second=244 amount=-1 +kerning first=112 second=237 amount=-1 +kerning first=71 second=65 amount=-1 +kerning first=278 second=282 amount=-1 +kerning first=76 second=237 amount=-1 +kerning first=75 second=107 amount=-1 +kerning first=84 second=8249 amount=-3 +kerning first=75 second=263 amount=-1 +kerning first=8217 second=252 amount=-1 +kerning first=99 second=244 amount=-1 +kerning first=200 second=225 amount=-1 +kerning first=283 second=365 amount=-1 +kerning first=315 second=270 amount=-1 +kerning first=1053 second=1072 amount=-1 +kerning first=1116 second=1079 amount=-1 +kerning first=248 second=353 amount=-1 +kerning first=278 second=296 amount=-1 +kerning first=221 second=346 amount=-2 +kerning first=66 second=270 amount=-2 +kerning first=268 second=315 amount=-1 +kerning first=74 second=289 amount=-1 +kerning first=217 second=251 amount=-1 +kerning first=330 second=334 amount=-1 +kerning first=110 second=289 amount=-1 +kerning first=90 second=327 amount=-1 +kerning first=350 second=296 amount=-1 +kerning first=106 second=365 amount=-1 +kerning first=87 second=206 amount=-1 +kerning first=289 second=251 amount=-1 +kerning first=334 second=202 amount=-1 +kerning first=248 second=121 amount=-1 +kerning first=106 second=351 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=262 second=202 amount=-1 +kerning first=278 second=254 amount=-1 +kerning first=376 second=69 amount=-1 +kerning first=325 second=251 amount=-1 +kerning first=80 second=374 amount=-1 +kerning first=314 second=254 amount=-1 +kerning first=264 second=206 amount=-1 +kerning first=65 second=254 amount=-1 +kerning first=76 second=209 amount=-1 +kerning first=336 second=206 amount=-1 +kerning first=1060 second=1103 amount=-1 +kerning first=71 second=381 amount=-1 +kerning first=101 second=254 amount=-1 +kerning first=75 second=277 amount=-1 +kerning first=70 second=351 amount=-1 +kerning first=1078 second=1077 amount=-1 +kerning first=1024 second=1103 amount=-1 +kerning first=268 second=69 amount=-1 +kerning first=364 second=214 amount=-1 +kerning first=1043 second=1119 amount=-1 +kerning first=201 second=199 amount=-1 +kerning first=370 second=244 amount=-1 +kerning first=212 second=381 amount=-1 +kerning first=284 second=367 amount=-1 +kerning first=356 second=79 amount=-1 +kerning first=282 second=117 amount=-1 +kerning first=284 second=381 amount=-1 +kerning first=313 second=76 amount=-1 +kerning first=8249 second=356 amount=-2 +kerning first=221 second=72 amount=-1 +kerning first=8222 second=363 amount=-1 +kerning first=71 second=367 amount=-1 +kerning first=221 second=114 amount=-1 +kerning first=354 second=117 amount=-1 +kerning first=268 second=83 amount=-1 +kerning first=283 second=351 amount=-1 +kerning first=381 second=199 amount=-1 +kerning first=205 second=336 amount=-1 +kerning first=356 second=121 amount=-1 +kerning first=304 second=83 amount=-1 +kerning first=8222 second=103 amount=-1 +kerning first=75 second=291 amount=-1 +kerning first=262 second=216 amount=-2 +kerning first=376 second=83 amount=-2 +kerning first=314 second=240 amount=-1 +kerning first=298 second=216 amount=-1 +kerning first=206 second=240 amount=-1 +kerning first=370 second=216 amount=-1 +kerning first=201 second=171 amount=-1 +kerning first=85 second=216 amount=-1 +kerning first=69 second=117 amount=-1 +kerning first=251 second=261 amount=-1 +kerning first=287 second=261 amount=-1 +kerning first=380 second=382 amount=-1 +kerning first=8222 second=89 amount=-3 +kerning first=323 second=261 amount=-1 +kerning first=248 second=107 amount=-1 +kerning first=1045 second=1095 amount=-1 +kerning first=381 second=171 amount=-1 +kerning first=74 second=267 amount=-1 +kerning first=220 second=229 amount=-2 +kerning first=80 second=86 amount=-1 +kerning first=252 second=307 amount=-1 +kerning first=350 second=254 amount=-1 +kerning first=65 second=240 amount=-1 +kerning first=345 second=171 amount=-1 +kerning first=187 second=350 amount=-2 +kerning first=346 second=201 amount=-1 +kerning first=277 second=252 amount=-1 +kerning first=313 second=252 amount=-1 +kerning first=82 second=350 amount=-1 +kerning first=213 second=221 amount=-1 +kerning first=274 second=201 amount=-1 +kerning first=1056 second=1050 amount=-1 +kerning first=8222 second=377 amount=-1 +kerning first=216 second=207 amount=-1 +kerning first=371 second=246 amount=-1 +kerning first=202 second=201 amount=-1 +kerning first=8218 second=254 amount=-1 +kerning first=100 second=252 amount=-1 +kerning first=381 second=227 amount=-1 +kerning first=365 second=44 amount=-1 +kerning first=236 second=378 amount=-1 +kerning first=205 second=252 amount=-1 +kerning first=263 second=246 amount=-1 +kerning first=1059 second=1101 amount=-1 +kerning first=1091 second=1076 amount=-2 +kerning first=241 second=252 amount=-1 +kerning first=267 second=271 amount=-1 +kerning first=86 second=260 amount=-3 +kerning first=200 second=382 amount=-1 +kerning first=101 second=226 amount=-1 +kerning first=75 second=45 amount=-2 +kerning first=201 second=356 amount=-1 +kerning first=236 second=382 amount=-1 +kerning first=290 second=192 amount=-1 +kerning first=377 second=317 amount=-1 +kerning first=272 second=382 amount=-1 +kerning first=288 second=291 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=375 second=271 amount=-1 +kerning first=210 second=103 amount=-1 +kerning first=252 second=291 amount=-1 +kerning first=288 second=45 amount=-1 +kerning first=216 second=291 amount=-1 +kerning first=70 second=337 amount=-1 +kerning first=278 second=226 amount=-1 +kerning first=252 second=45 amount=-1 +kerning first=288 second=207 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=314 second=226 amount=-1 +kerning first=69 second=103 amount=-1 +kerning first=79 second=84 amount=-1 +kerning first=350 second=226 amount=-1 +kerning first=324 second=45 amount=-1 +kerning first=382 second=365 amount=-1 +kerning first=216 second=193 amount=-2 +kerning first=313 second=336 amount=-1 +kerning first=245 second=118 amount=-1 +kerning first=1098 second=1103 amount=-1 +kerning first=267 second=109 amount=-1 +kerning first=210 second=89 amount=-1 +kerning first=375 second=109 amount=-1 +kerning first=256 second=84 amount=-3 +kerning first=381 second=213 amount=-1 +kerning first=339 second=109 amount=-1 +kerning first=227 second=115 amount=-1 +kerning first=8222 second=117 amount=-1 +kerning first=101 second=8250 amount=-1 +kerning first=90 second=109 amount=-1 +kerning first=86 second=115 amount=-2 +kerning first=278 second=212 amount=-1 +kerning first=8216 second=194 amount=-4 +kerning first=122 second=115 amount=-1 +kerning first=187 second=90 amount=-2 +kerning first=346 second=187 amount=-1 +kerning first=257 second=44 amount=-1 +kerning first=335 second=115 amount=-1 +kerning first=223 second=104 amount=-1 +kerning first=278 second=78 amount=-1 +kerning first=221 second=44 amount=-3 +kerning first=282 second=364 amount=-1 +kerning first=371 second=115 amount=-1 +kerning first=187 second=104 amount=-1 +kerning first=338 second=199 amount=-1 +kerning first=263 second=115 amount=-1 +kerning first=118 second=104 amount=-1 +kerning first=377 second=303 amount=-1 +kerning first=371 second=232 amount=-1 +kerning first=80 second=44 amount=-2 +kerning first=201 second=213 amount=-1 +kerning first=282 second=89 amount=-1 +kerning first=367 second=104 amount=-1 +kerning first=122 second=232 amount=-1 +kerning first=263 second=232 amount=-1 +kerning first=1027 second=1085 amount=-1 +kerning first=266 second=325 amount=-1 +kerning first=256 second=98 amount=-1 +kerning first=369 second=8249 amount=-1 +kerning first=216 second=73 amount=-1 +kerning first=367 second=118 amount=-1 +kerning first=338 second=325 amount=-1 +kerning first=328 second=98 amount=-1 +kerning first=288 second=73 amount=-1 +kerning first=8222 second=307 amount=-1 +kerning first=374 second=325 amount=-1 +kerning first=69 second=75 amount=-1 +kerning first=269 second=303 amount=-1 +kerning first=259 second=118 amount=-1 +kerning first=365 second=252 amount=-1 +kerning first=354 second=75 amount=-1 +kerning first=75 second=235 amount=-1 +kerning first=223 second=118 amount=-1 +kerning first=307 second=120 amount=-1 +kerning first=219 second=67 amount=-1 +kerning first=89 second=283 amount=-2 +kerning first=366 second=216 amount=-1 +kerning first=363 second=250 amount=-1 +kerning first=313 second=280 amount=-1 +kerning first=120 second=8249 amount=-2 +kerning first=282 second=75 amount=-1 +kerning first=233 second=303 amount=-1 +kerning first=115 second=98 amount=-1 +kerning first=295 second=118 amount=-1 +kerning first=201 second=328 amount=-1 +kerning first=368 second=347 amount=-1 +kerning first=82 second=118 amount=-1 +kerning first=284 second=196 amount=-1 +kerning first=266 second=283 amount=-1 +kerning first=187 second=118 amount=-2 +kerning first=381 second=328 amount=-1 +kerning first=1059 second=1073 amount=-2 +kerning first=1091 second=1104 amount=-1 +kerning first=1070 second=1070 amount=-1 +kerning first=356 second=196 amount=-3 +kerning first=202 second=45 amount=-1 +kerning first=118 second=118 amount=-1 +kerning first=194 second=283 amount=-1 +kerning first=1055 second=1104 amount=-1 +kerning first=201 second=370 amount=-1 +kerning first=89 second=325 amount=-1 +kerning first=369 second=311 amount=-1 +kerning first=71 second=196 amount=-1 +kerning first=381 second=241 amount=-1 +kerning first=374 second=283 amount=-2 +kerning first=103 second=314 amount=-1 +kerning first=205 second=266 amount=-1 +kerning first=115 second=112 amount=-1 +kerning first=75 second=87 amount=-1 +kerning first=370 second=286 amount=-1 +kerning first=338 second=311 amount=-1 +kerning first=222 second=362 amount=-1 +kerning first=1070 second=1042 amount=-1 +kerning first=258 second=362 amount=-2 +kerning first=298 second=286 amount=-1 +kerning first=1092 second=1095 amount=-1 +kerning first=356 second=210 amount=-1 +kerning first=1036 second=1059 amount=-1 +kerning first=280 second=314 amount=-1 +kerning first=120 second=8221 amount=-1 +kerning first=381 second=356 amount=-1 +kerning first=377 second=331 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=194 second=311 amount=-1 +kerning first=45 second=362 amount=-2 +kerning first=86 second=85 amount=-1 +kerning first=85 second=286 amount=-1 +kerning first=352 second=314 amount=-1 +kerning first=81 second=362 amount=-1 +kerning first=316 second=314 amount=-1 +kerning first=67 second=314 amount=-1 +kerning first=381 second=255 amount=-2 +kerning first=65 second=112 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=71 second=224 amount=-1 +kerning first=333 second=8221 amount=-1 +kerning first=269 second=331 amount=-1 +kerning first=328 second=369 amount=-1 +kerning first=225 second=8221 amount=-1 +kerning first=364 second=112 amount=-1 +kerning first=261 second=8221 amount=-1 +kerning first=328 second=112 amount=-1 +kerning first=195 second=67 amount=-1 +kerning first=288 second=221 amount=-1 +kerning first=1070 second=1056 amount=-1 +kerning first=1059 second=1087 amount=-2 +kerning first=381 second=269 amount=-1 +kerning first=266 second=363 amount=-1 +kerning first=90 second=67 amount=-1 +kerning first=216 second=221 amount=-1 +kerning first=212 second=224 amount=-1 +kerning first=369 second=8221 amount=-2 +kerning first=220 second=112 amount=-1 +kerning first=75 second=221 amount=-1 +kerning first=313 second=266 amount=-1 +kerning first=284 second=224 amount=-1 +kerning first=81 second=205 amount=-1 +kerning first=86 second=302 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=283 second=250 amount=-1 +kerning first=252 second=347 amount=-1 +kerning first=356 second=224 amount=-2 +kerning first=89 second=255 amount=-1 +kerning first=111 second=378 amount=-1 +kerning first=380 second=326 amount=-1 +kerning first=111 second=347 amount=-1 +kerning first=1042 second=1033 amount=-1 +kerning first=8217 second=353 amount=-1 +kerning first=106 second=250 amount=-1 +kerning first=105 second=307 amount=-1 +kerning first=75 second=347 amount=-1 +kerning first=187 second=204 amount=-3 +kerning first=70 second=250 amount=-1 +kerning first=67 second=328 amount=-1 +kerning first=369 second=371 amount=-1 +kerning first=200 second=326 amount=-1 +kerning first=379 second=352 amount=-1 +kerning first=246 second=307 amount=-1 +kerning first=236 second=326 amount=-1 +kerning first=316 second=328 amount=-1 +kerning first=120 second=371 amount=-1 +kerning first=1057 second=1097 amount=-1 +kerning first=344 second=117 amount=-1 +kerning first=280 second=328 amount=-1 +kerning first=274 second=257 amount=-1 +kerning first=209 second=333 amount=-1 +kerning first=72 second=212 amount=-1 +kerning first=209 second=361 amount=-1 +kerning first=378 second=101 amount=-1 +kerning first=326 second=8221 amount=-2 +kerning first=261 second=371 amount=-1 +kerning first=202 second=257 amount=-1 +kerning first=252 second=378 amount=-1 +kerning first=1030 second=1073 amount=-1 +kerning first=284 second=8220 amount=-1 +kerning first=216 second=378 amount=-1 +kerning first=248 second=8220 amount=-1 +kerning first=354 second=202 amount=-1 +kerning first=212 second=8220 amount=-1 +kerning first=288 second=378 amount=-1 +kerning first=352 second=328 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=364 second=288 amount=-1 +kerning first=107 second=8220 amount=-1 +kerning first=286 second=217 amount=-1 +kerning first=121 second=113 amount=-1 +kerning first=71 second=8220 amount=-1 +kerning first=314 second=106 amount=-1 +kerning first=85 second=113 amount=-1 +kerning first=231 second=243 amount=-1 +kerning first=350 second=106 amount=-1 +kerning first=267 second=243 amount=-1 +kerning first=315 second=80 amount=-1 +kerning first=220 second=288 amount=-1 +kerning first=68 second=87 amount=-1 +kerning first=298 second=113 amount=-1 +kerning first=65 second=366 amount=-2 +kerning first=121 second=345 amount=-1 +kerning first=262 second=113 amount=-1 +kerning first=256 second=288 amount=-1 +kerning first=90 second=243 amount=-1 +kerning first=8220 second=289 amount=-2 +kerning first=313 second=210 amount=-1 +kerning first=262 second=345 amount=-1 +kerning first=260 second=45 amount=-2 +kerning first=8217 second=121 amount=-1 +kerning first=221 second=262 amount=-1 +kerning first=350 second=198 amount=-2 +kerning first=205 second=210 amount=-1 +kerning first=66 second=368 amount=-2 +kerning first=235 second=120 amount=-1 +kerning first=370 second=345 amount=-1 +kerning first=303 second=243 amount=-1 +kerning first=260 second=100 amount=-1 +kerning first=302 second=255 amount=-1 +kerning first=315 second=368 amount=-1 +kerning first=1101 second=1113 amount=-1 +kerning first=8222 second=237 amount=-1 +kerning first=375 second=243 amount=-1 +kerning first=214 second=217 amount=-1 +kerning first=230 second=255 amount=-1 +kerning first=8250 second=296 amount=-3 +kerning first=379 second=324 amount=-1 +kerning first=374 second=227 amount=-2 +kerning first=79 second=366 amount=-1 +kerning first=338 second=227 amount=-1 +kerning first=80 second=234 amount=-1 +kerning first=302 second=227 amount=-1 +kerning first=213 second=219 amount=-1 +kerning first=8220 second=261 amount=-1 +kerning first=266 second=227 amount=-1 +kerning first=200 second=354 amount=-1 +kerning first=264 second=44 amount=-1 +kerning first=235 second=324 amount=-1 +kerning first=228 second=44 amount=-1 +kerning first=199 second=324 amount=-1 +kerning first=269 second=99 amount=-1 +kerning first=272 second=354 amount=-1 +kerning first=336 second=44 amount=-1 +kerning first=307 second=324 amount=-1 +kerning first=377 second=99 amount=-1 +kerning first=75 second=104 amount=-1 +kerning first=344 second=354 amount=-1 +kerning first=362 second=267 amount=-1 +kerning first=338 second=197 amount=-1 +kerning first=99 second=335 amount=-1 +kerning first=101 second=106 amount=-1 +kerning first=67 second=356 amount=-1 +kerning first=346 second=229 amount=-1 +kerning first=84 second=111 amount=-2 +kerning first=382 second=229 amount=-1 +kerning first=258 second=233 amount=-1 +kerning first=242 second=106 amount=-1 +kerning first=366 second=233 amount=-1 +kerning first=230 second=227 amount=-1 +kerning first=338 second=109 amount=-1 +kerning first=330 second=233 amount=-1 +kerning first=354 second=279 amount=-2 +kerning first=334 second=317 amount=-1 +kerning first=1052 second=1060 amount=-1 +kerning first=317 second=87 amount=-1 +kerning first=261 second=171 amount=-1 +kerning first=89 second=227 amount=-2 +kerning first=67 second=110 amount=-1 +kerning first=317 second=361 amount=-1 +kerning first=115 second=316 amount=-1 +kerning first=352 second=82 amount=-1 +kerning first=103 second=110 amount=-1 +kerning first=281 second=361 amount=-1 +kerning first=77 second=267 amount=-1 +kerning first=1056 second=1064 amount=-1 +kerning first=353 second=361 amount=-1 +kerning first=256 second=316 amount=-1 +kerning first=204 second=264 amount=-1 +kerning first=354 second=291 amount=-2 +kerning first=208 second=82 amount=-1 +kerning first=382 second=257 amount=-1 +kerning first=280 second=110 amount=-1 +kerning first=328 second=316 amount=-1 +kerning first=316 second=110 amount=-1 +kerning first=235 second=378 amount=-1 +kerning first=113 second=267 amount=-1 +kerning first=280 second=82 amount=-1 +kerning first=310 second=257 amount=-1 +kerning first=219 second=65 amount=-2 +kerning first=352 second=110 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=231 second=271 amount=-1 +kerning first=346 second=257 amount=-1 +kerning first=317 second=45 amount=-1 +kerning first=87 second=44 amount=-3 +kerning first=67 second=82 amount=-1 +kerning first=1065 second=1057 amount=-1 +kerning first=352 second=72 amount=-1 +kerning first=267 second=365 amount=-1 +kerning first=252 second=104 amount=-1 +kerning first=272 second=66 amount=-1 +kerning first=219 second=105 amount=-1 +kerning first=222 second=205 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=86 second=274 amount=-1 +kerning first=268 second=97 amount=-1 +kerning first=337 second=46 amount=-2 +kerning first=208 second=304 amount=-1 +kerning first=304 second=97 amount=-1 +kerning first=272 second=122 amount=-1 +kerning first=79 second=77 amount=-1 +kerning first=236 second=122 amount=-1 +kerning first=377 second=71 amount=-1 +kerning first=313 second=121 amount=-1 +kerning first=264 second=72 amount=-1 +kerning first=232 second=97 amount=-1 +kerning first=200 second=122 amount=-1 +kerning first=197 second=71 amount=-1 +kerning first=277 second=121 amount=-1 +kerning first=241 second=121 amount=-1 +kerning first=336 second=72 amount=-1 +kerning first=229 second=46 amount=-1 +kerning first=205 second=121 amount=-1 +kerning first=211 second=77 amount=-1 +kerning first=74 second=102 amount=-1 +kerning first=380 second=122 amount=-1 +kerning first=76 second=377 amount=-1 +kerning first=376 second=97 amount=-2 +kerning first=302 second=199 amount=-1 +kerning first=304 second=245 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=374 second=199 amount=-1 +kerning first=84 second=200 amount=-1 +kerning first=217 second=377 amount=-1 +kerning first=88 second=46 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=282 second=199 amount=-1 +kerning first=376 second=214 amount=-1 +kerning first=1050 second=1077 amount=-1 +kerning first=240 second=382 amount=-1 +kerning first=69 second=363 amount=-1 +kerning first=325 second=117 amount=-1 +kerning first=105 second=363 amount=-1 +kerning first=98 second=287 amount=-1 +kerning first=376 second=245 amount=-2 +kerning first=87 second=72 amount=-1 +kerning first=264 second=332 amount=-2 +kerning first=1024 second=1058 amount=-1 +kerning first=70 second=194 amount=-2 +kerning first=1100 second=1114 amount=-1 +kerning first=350 second=310 amount=-1 +kerning first=203 second=287 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=347 second=259 amount=-1 +kerning first=73 second=242 amount=-1 +kerning first=278 second=310 amount=-1 +kerning first=304 second=214 amount=-1 +kerning first=72 second=240 amount=-1 +kerning first=275 second=287 amount=-1 +kerning first=108 second=240 amount=-1 +kerning first=8217 second=266 amount=-1 +kerning first=347 second=287 amount=-1 +kerning first=192 second=220 amount=-2 +kerning first=315 second=284 amount=-1 +kerning first=311 second=287 amount=-1 +kerning first=207 second=284 amount=-1 +kerning first=311 second=259 amount=-1 +kerning first=87 second=220 amount=-1 +kerning first=66 second=197 amount=-3 +kerning first=275 second=259 amount=-1 +kerning first=378 second=375 amount=-1 +kerning first=260 second=369 amount=-1 +kerning first=336 second=304 amount=-1 +kerning first=224 second=369 amount=-1 +kerning first=86 second=330 amount=-1 +kerning first=258 second=116 amount=-1 +kerning first=264 second=304 amount=-1 +kerning first=296 second=369 amount=-1 +kerning first=1060 second=1030 amount=-1 +kerning first=45 second=116 amount=-1 +kerning first=77 second=119 amount=-1 +kerning first=1024 second=1030 amount=-1 +kerning first=113 second=45 amount=-1 +kerning first=315 second=197 amount=-1 +kerning first=113 second=119 amount=-2 +kerning first=87 second=304 amount=-1 +kerning first=211 second=194 amount=-2 +kerning first=374 second=209 amount=-1 +kerning first=218 second=119 amount=-1 +kerning first=221 second=203 amount=-1 +kerning first=368 second=223 amount=-1 +kerning first=254 second=119 amount=-1 +kerning first=337 second=253 amount=-1 +kerning first=1036 second=1105 amount=-1 +kerning first=290 second=119 amount=-1 +kerning first=326 second=119 amount=-1 +kerning first=120 second=228 amount=-1 +kerning first=313 second=311 amount=-1 +kerning first=362 second=119 amount=-1 +kerning first=234 second=375 amount=-1 +kerning first=264 second=248 amount=-1 +kerning first=84 second=228 amount=-2 +kerning first=80 second=203 amount=-1 +kerning first=321 second=268 amount=-1 +kerning first=192 second=248 amount=-1 +kerning first=291 second=8249 amount=-1 +kerning first=231 second=355 amount=-1 +kerning first=195 second=355 amount=-1 +kerning first=200 second=298 amount=-1 +kerning first=119 second=223 amount=-1 +kerning first=346 second=313 amount=-1 +kerning first=201 second=68 amount=-1 +kerning first=338 second=364 amount=-1 +kerning first=83 second=223 amount=-1 +kerning first=370 second=113 amount=-1 +kerning first=90 second=355 amount=-1 +kerning first=272 second=298 amount=-1 +kerning first=274 second=313 amount=-1 +kerning first=375 second=355 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=339 second=355 amount=-1 +kerning first=229 second=253 amount=-1 +kerning first=66 second=80 amount=-2 +kerning first=202 second=313 amount=-1 +kerning first=303 second=355 amount=-1 +kerning first=381 second=68 amount=-1 +kerning first=267 second=355 amount=-1 +kerning first=72 second=268 amount=-1 +kerning first=221 second=290 amount=-1 +kerning first=1078 second=1086 amount=-1 +kerning first=279 second=108 amount=-1 +kerning first=334 second=85 amount=-1 +kerning first=243 second=108 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=194 second=8217 amount=-3 +kerning first=351 second=108 amount=-1 +kerning first=282 second=363 amount=-1 +kerning first=200 second=270 amount=-1 +kerning first=262 second=85 amount=-1 +kerning first=288 second=83 amount=-1 +kerning first=230 second=8217 amount=-1 +kerning first=315 second=108 amount=-1 +kerning first=221 second=286 amount=-1 +kerning first=84 second=315 amount=-1 +kerning first=269 second=8221 amount=-1 +kerning first=354 second=363 amount=-1 +kerning first=257 second=318 amount=-1 +kerning first=283 second=105 amount=-1 +kerning first=200 second=313 amount=-1 +kerning first=354 second=335 amount=-2 +kerning first=365 second=318 amount=-1 +kerning first=317 second=209 amount=-1 +kerning first=307 second=380 amount=-1 +kerning first=106 second=105 amount=-1 +kerning first=379 second=380 amount=-1 +kerning first=311 second=231 amount=-1 +kerning first=102 second=108 amount=1 +kerning first=272 second=270 amount=-1 +kerning first=278 second=338 amount=-1 +kerning first=66 second=108 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=88 second=225 amount=-1 +kerning first=8217 second=210 amount=-1 +kerning first=206 second=338 amount=-1 +kerning first=1105 second=1113 amount=-1 +kerning first=235 second=380 amount=-1 +kerning first=213 second=296 amount=-1 +kerning first=321 second=296 amount=-1 +kerning first=362 second=228 amount=-1 +kerning first=279 second=225 amount=-1 +kerning first=83 second=251 amount=-1 +kerning first=224 second=251 amount=-1 +kerning first=290 second=228 amount=-1 +kerning first=351 second=225 amount=-1 +kerning first=249 second=98 amount=-1 +kerning first=66 second=225 amount=-1 +kerning first=296 second=251 amount=-1 +kerning first=78 second=113 amount=-1 +kerning first=209 second=235 amount=-1 +kerning first=99 second=303 amount=-1 +kerning first=102 second=225 amount=-1 +kerning first=260 second=251 amount=-1 +kerning first=1046 second=1058 amount=-1 +kerning first=1114 second=1100 amount=-1 +kerning first=321 second=98 amount=-1 +kerning first=368 second=251 amount=-1 +kerning first=113 second=228 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=66 second=314 amount=-1 +kerning first=77 second=228 amount=-1 +kerning first=1056 second=1025 amount=-1 +kerning first=251 second=46 amount=-1 +kerning first=287 second=46 amount=-2 +kerning first=266 second=370 amount=-1 +kerning first=323 second=46 amount=-1 +kerning first=374 second=370 amount=-1 +kerning first=198 second=218 amount=-1 +kerning first=338 second=370 amount=-1 +kerning first=187 second=325 amount=-3 +kerning first=120 second=273 amount=-1 +kerning first=74 second=46 amount=-1 +kerning first=8250 second=73 amount=-3 +kerning first=110 second=46 amount=-1 +kerning first=109 second=98 amount=-1 +kerning first=8220 second=110 amount=-1 +kerning first=198 second=280 amount=-1 +kerning first=203 second=83 amount=-1 +kerning first=347 second=363 amount=-1 +kerning first=249 second=112 amount=-1 +kerning first=250 second=318 amount=-1 +kerning first=68 second=221 amount=-1 +kerning first=315 second=211 amount=-1 +kerning first=288 second=8249 amount=-1 +kerning first=362 second=214 amount=-1 +kerning first=367 second=311 amount=-1 +kerning first=108 second=112 amount=-1 +kerning first=72 second=112 amount=-1 +kerning first=198 second=266 amount=-1 +kerning first=218 second=214 amount=-1 +kerning first=369 second=259 amount=-1 +kerning first=368 second=67 amount=-1 +kerning first=313 second=260 amount=-1 +kerning first=108 second=98 amount=-1 +kerning first=296 second=67 amount=-1 +kerning first=202 second=81 amount=-1 +kerning first=365 second=254 amount=-1 +kerning first=260 second=67 amount=-1 +kerning first=317 second=221 amount=-1 +kerning first=240 second=105 amount=-1 +kerning first=274 second=81 amount=-1 +kerning first=99 second=105 amount=-1 +kerning first=77 second=214 amount=-1 +kerning first=321 second=112 amount=-1 +kerning first=291 second=230 amount=-1 +kerning first=295 second=249 amount=-1 +kerning first=264 second=346 amount=-1 +kerning first=327 second=230 amount=-1 +kerning first=332 second=327 amount=-1 +kerning first=331 second=249 amount=-1 +kerning first=219 second=230 amount=-2 +kerning first=192 second=346 amount=-2 +kerning first=1113 second=1098 amount=-1 +kerning first=255 second=230 amount=-2 +kerning first=73 second=286 amount=-1 +kerning first=259 second=249 amount=-1 +kerning first=194 second=350 amount=-2 +kerning first=1052 second=1095 amount=-1 +kerning first=119 second=106 amount=-1 +kerning first=73 second=100 amount=-1 +kerning first=198 second=204 amount=-1 +kerning first=316 second=275 amount=-1 +kerning first=89 second=350 amount=-2 +kerning first=8250 second=361 amount=-1 +kerning first=367 second=249 amount=-1 +kerning first=336 second=346 amount=-1 +kerning first=8220 second=328 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=338 second=350 amount=-1 +kerning first=327 second=339 amount=-1 +kerning first=282 second=362 amount=-1 +kerning first=118 second=305 amount=-1 +kerning first=374 second=350 amount=-2 +kerning first=66 second=211 amount=-1 +kerning first=282 second=223 amount=-1 +kerning first=214 second=256 amount=-2 +kerning first=336 second=86 amount=-1 +kerning first=277 second=107 amount=-1 +kerning first=302 second=350 amount=-1 +kerning first=187 second=305 amount=-1 +kerning first=354 second=223 amount=-1 +kerning first=207 second=211 amount=-1 +kerning first=310 second=311 amount=-1 +kerning first=187 second=249 amount=-1 +kerning first=363 second=230 amount=-1 +kerning first=105 second=250 amount=-1 +kerning first=100 second=107 amount=-1 +kerning first=379 second=268 amount=-1 +kerning first=82 second=249 amount=-1 +kerning first=198 second=260 amount=-1 +kerning first=286 second=256 amount=-1 +kerning first=352 second=289 amount=-1 +kerning first=204 second=365 amount=-1 +kerning first=199 second=268 amount=-2 +kerning first=219 second=244 amount=-1 +kerning first=1113 second=1084 amount=-1 +kerning first=255 second=244 amount=-1 +kerning first=99 second=365 amount=-1 +kerning first=1061 second=1060 amount=-2 +kerning first=69 second=223 amount=-1 +kerning first=332 second=313 amount=-1 +kerning first=291 second=244 amount=-1 +kerning first=89 second=199 amount=-1 +kerning first=376 second=232 amount=-1 +kerning first=216 second=8217 amount=-1 +kerning first=327 second=244 amount=-1 +kerning first=203 second=192 amount=-1 +kerning first=363 second=353 amount=-1 +kerning first=252 second=8217 amount=-2 +kerning first=219 second=339 amount=-1 +kerning first=194 second=199 amount=-1 +kerning first=354 second=237 amount=-1 +kerning first=288 second=8217 amount=-1 +kerning first=78 second=339 amount=-1 +kerning first=82 second=263 amount=-1 +kerning first=1050 second=1091 amount=-1 +kerning first=8218 second=366 amount=-2 +kerning first=8220 second=219 amount=-1 +kerning first=324 second=8217 amount=-2 +kerning first=266 second=199 amount=-2 +kerning first=118 second=263 amount=-1 +kerning first=100 second=121 amount=-1 +kerning first=374 second=302 amount=-1 +kerning first=246 second=237 amount=-1 +kerning first=103 second=275 amount=-1 +kerning first=219 second=353 amount=-1 +kerning first=379 second=282 amount=-1 +kerning first=67 second=289 amount=-1 +kerning first=269 second=369 amount=-1 +kerning first=255 second=353 amount=-1 +kerning first=1050 second=1105 amount=-1 +kerning first=1118 second=1072 amount=-1 +kerning first=103 second=289 amount=-1 +kerning first=214 second=270 amount=-1 +kerning first=323 second=334 amount=-1 +kerning first=291 second=353 amount=-1 +kerning first=105 second=237 amount=-1 +kerning first=67 second=275 amount=-1 +kerning first=327 second=353 amount=-1 +kerning first=376 second=264 amount=-1 +kerning first=208 second=289 amount=-1 +kerning first=87 second=346 amount=-2 +kerning first=325 second=363 amount=-1 +kerning first=244 second=289 amount=-1 +kerning first=1025 second=1060 amount=-1 +kerning first=8250 second=347 amount=-1 +kerning first=344 second=332 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=280 second=289 amount=-1 +kerning first=78 second=244 amount=-1 +kerning first=8218 second=380 amount=-2 +kerning first=316 second=289 amount=-1 +kerning first=1046 second=1072 amount=-1 +kerning first=303 second=122 amount=-1 +kerning first=352 second=255 amount=-1 +kerning first=220 second=232 amount=-1 +kerning first=321 second=302 amount=-1 +kerning first=83 second=257 amount=-1 +kerning first=8250 second=229 amount=-1 +kerning first=275 second=371 amount=-1 +kerning first=119 second=257 amount=-2 +kerning first=362 second=8249 amount=-3 +kerning first=382 second=347 amount=-1 +kerning first=213 second=302 amount=-1 +kerning first=99 second=99 amount=-1 +kerning first=377 second=202 amount=-1 +kerning first=290 second=8249 amount=-1 +kerning first=346 second=347 amount=-1 +kerning first=326 second=8249 amount=-1 +kerning first=209 second=277 amount=-1 +kerning first=352 second=380 amount=-1 +kerning first=204 second=99 amount=-1 +kerning first=326 second=351 amount=-1 +kerning first=313 second=381 amount=-1 +kerning first=219 second=79 amount=-1 +kerning first=45 second=261 amount=-1 +kerning first=313 second=367 amount=-1 +kerning first=120 second=267 amount=-1 +kerning first=198 second=336 amount=-1 +kerning first=78 second=79 amount=-1 +kerning first=81 second=261 amount=-1 +kerning first=220 second=71 amount=-1 +kerning first=362 second=351 amount=-1 +kerning first=241 second=367 amount=-1 +kerning first=327 second=79 amount=-1 +kerning first=332 second=257 amount=-1 +kerning first=277 second=367 amount=-1 +kerning first=199 second=212 amount=-2 +kerning first=113 second=351 amount=-1 +kerning first=368 second=257 amount=-2 +kerning first=254 second=351 amount=-1 +kerning first=84 second=69 amount=-1 +kerning first=218 second=351 amount=-1 +kerning first=296 second=257 amount=-1 +kerning first=351 second=382 amount=-1 +kerning first=209 second=291 amount=-1 +kerning first=113 second=337 amount=-1 +kerning first=330 second=261 amount=-1 +kerning first=119 second=271 amount=-1 +kerning first=77 second=337 amount=-1 +kerning first=366 second=261 amount=-2 +kerning first=197 second=216 amount=-1 +kerning first=104 second=291 amount=-1 +kerning first=68 second=291 amount=-1 +kerning first=117 second=261 amount=-1 +kerning first=110 second=314 amount=-1 +kerning first=207 second=382 amount=-1 +kerning first=84 second=267 amount=-2 +kerning first=243 second=382 amount=-1 +kerning first=222 second=261 amount=-1 +kerning first=279 second=382 amount=-1 +kerning first=218 second=337 amount=-1 +kerning first=377 second=270 amount=-1 +kerning first=1078 second=1092 amount=-1 +kerning first=315 second=382 amount=-1 +kerning first=199 second=226 amount=-1 +kerning first=287 second=314 amount=-1 +kerning first=274 second=347 amount=-1 +kerning first=120 second=281 amount=-1 +kerning first=103 second=269 amount=-1 +kerning first=196 second=8221 amount=-3 +kerning first=280 second=171 amount=-1 +kerning first=97 second=361 amount=-1 +kerning first=251 second=314 amount=-1 +kerning first=67 second=269 amount=-1 +kerning first=316 second=171 amount=-1 +kerning first=202 second=347 amount=-1 +kerning first=362 second=337 amount=-1 +kerning first=352 second=171 amount=-1 +kerning first=202 second=361 amount=-1 +kerning first=70 second=352 amount=-1 +kerning first=267 second=361 amount=-1 +kerning first=67 second=171 amount=-2 +kerning first=310 second=361 amount=-1 +kerning first=97 second=347 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=274 second=361 amount=-1 +kerning first=108 second=316 amount=-1 +kerning first=347 second=371 amount=-1 +kerning first=232 second=8221 amount=-1 +kerning first=382 second=361 amount=-1 +kerning first=377 second=216 amount=-1 +kerning first=208 second=171 amount=-1 +kerning first=346 second=361 amount=-1 +kerning first=84 second=281 amount=-2 +kerning first=316 second=269 amount=-1 +kerning first=103 second=227 amount=-1 +kerning first=255 second=224 amount=-1 +kerning first=331 second=45 amount=-1 +kerning first=67 second=227 amount=-1 +kerning first=98 second=103 amount=-1 +kerning first=321 second=110 amount=-1 +kerning first=219 second=224 amount=-1 +kerning first=295 second=45 amount=-1 +kerning first=327 second=224 amount=-1 +kerning first=85 second=8249 amount=-3 +kerning first=291 second=224 amount=-1 +kerning first=367 second=45 amount=-1 +kerning first=280 second=227 amount=-1 +kerning first=208 second=227 amount=-1 +kerning first=364 second=246 amount=-1 +kerning first=223 second=311 amount=-1 +kerning first=235 second=226 amount=-1 +kerning first=338 second=356 amount=-1 +kerning first=187 second=311 amount=-1 +kerning first=205 second=101 amount=-1 +kerning first=66 second=382 amount=-2 +kerning first=118 second=311 amount=-1 +kerning first=266 second=90 amount=-1 +kerning first=90 second=201 amount=-1 +kerning first=307 second=226 amount=-1 +kerning first=82 second=45 amount=-2 +kerning first=266 second=356 amount=-1 +kerning first=347 second=103 amount=-1 +kerning first=256 second=246 amount=-1 +kerning first=82 second=311 amount=-1 +kerning first=46 second=45 amount=-1 +kerning first=311 second=103 amount=-1 +kerning first=220 second=246 amount=-1 +kerning first=193 second=362 amount=-2 +kerning first=338 second=90 amount=-1 +kerning first=353 second=291 amount=-1 +kerning first=379 second=226 amount=-1 +kerning first=194 second=356 amount=-3 +kerning first=275 second=103 amount=-1 +kerning first=187 second=207 amount=-3 +kerning first=317 second=291 amount=-1 +kerning first=118 second=45 amount=-2 +kerning first=262 second=102 amount=-1 +kerning first=281 second=291 amount=-1 +kerning first=356 second=252 amount=-1 +kerning first=203 second=103 amount=-1 +kerning first=332 second=261 amount=-1 +kerning first=374 second=90 amount=-1 +kerning first=245 second=291 amount=-1 +kerning first=73 second=44 amount=-1 +kerning first=368 second=109 amount=-1 +kerning first=338 second=104 amount=-1 +kerning first=246 second=8250 amount=-1 +kerning first=280 second=213 amount=-1 +kerning first=266 second=104 amount=-1 +kerning first=109 second=44 amount=-1 +kerning first=89 second=370 amount=-1 +kerning first=203 second=89 amount=-1 +kerning first=379 second=212 amount=-1 +kerning first=89 second=90 amount=-1 +kerning first=187 second=193 amount=-2 +kerning first=194 second=370 amount=-2 +kerning first=83 second=109 amount=-1 +kerning first=234 second=115 amount=-1 +kerning first=113 second=8249 amount=-1 +kerning first=352 second=227 amount=-1 +kerning first=1036 second=1113 amount=-1 +kerning first=119 second=109 amount=-1 +kerning first=316 second=227 amount=-1 +kerning first=198 second=115 amount=-1 +kerning first=339 second=187 amount=-1 +kerning first=379 second=78 amount=-1 +kerning first=240 second=303 amount=-1 +kerning first=230 second=104 amount=-1 +kerning first=378 second=115 amount=-1 +kerning first=250 second=44 amount=-1 +kerning first=77 second=8249 amount=-2 +kerning first=194 second=104 amount=-1 +kerning first=256 second=232 amount=-1 +kerning first=214 second=44 amount=-1 +kerning first=214 second=368 amount=-1 +kerning first=86 second=70 amount=-1 +kerning first=67 second=213 amount=-2 +kerning first=286 second=44 amount=-1 +kerning first=264 second=78 amount=-1 +kerning first=76 second=75 amount=-1 +kerning first=84 second=323 amount=-1 +kerning first=314 second=120 amount=-1 +kerning first=235 second=289 amount=-1 +kerning first=286 second=203 amount=-1 +kerning first=350 second=120 amount=-1 +kerning first=1101 second=1103 amount=-1 +kerning first=99 second=116 amount=-1 +kerning first=313 second=115 amount=-1 +kerning first=198 second=70 amount=-1 +kerning first=286 second=368 amount=-1 +kerning first=214 second=203 amount=-1 +kerning first=101 second=120 amount=-1 +kerning first=321 second=198 amount=-1 +kerning first=100 second=375 amount=-1 +kerning first=362 second=210 amount=-1 +kerning first=8216 second=111 amount=-1 +kerning first=242 second=120 amount=-1 +kerning first=317 second=73 amount=-1 +kerning first=252 second=118 amount=-1 +kerning first=117 second=253 amount=-1 +kerning first=332 second=201 amount=-1 +kerning first=68 second=73 amount=-1 +kerning first=71 second=356 amount=-1 +kerning first=200 second=278 amount=-1 +kerning first=324 second=118 amount=-1 +kerning first=269 second=113 amount=-1 +kerning first=289 second=117 amount=-1 +kerning first=88 second=233 amount=-1 +kerning first=288 second=118 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=272 second=278 amount=-1 +kerning first=258 second=253 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=280 second=68 amount=-1 +kerning first=193 second=233 amount=-1 +kerning first=374 second=241 amount=-1 +kerning first=330 second=253 amount=-1 +kerning first=113 second=353 amount=-1 +kerning first=366 second=253 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=1058 second=1085 amount=-1 +kerning first=200 second=80 amount=-1 +kerning first=382 second=291 amount=-1 +kerning first=111 second=118 amount=-1 +kerning first=313 second=196 amount=-1 +kerning first=377 second=113 amount=-1 +kerning first=316 second=283 amount=-1 +kerning first=253 second=335 amount=-1 +kerning first=266 second=241 amount=-1 +kerning first=109 second=108 amount=-1 +kerning first=106 second=305 amount=-1 +kerning first=289 second=335 amount=-1 +kerning first=230 second=241 amount=-1 +kerning first=1069 second=1040 amount=-2 +kerning first=90 second=323 amount=-1 +kerning first=74 second=110 amount=-1 +kerning first=325 second=335 amount=-1 +kerning first=338 second=241 amount=-1 +kerning first=89 second=193 amount=-3 +kerning first=89 second=241 amount=-1 +kerning first=278 second=380 amount=-1 +kerning first=205 second=232 amount=-1 +kerning first=314 second=380 amount=-1 +kerning first=84 second=85 amount=-1 +kerning first=250 second=108 amount=-1 +kerning first=350 second=380 amount=-1 +kerning first=287 second=110 amount=-1 +kerning first=217 second=335 amount=-1 +kerning first=85 second=65 amount=-2 +kerning first=266 second=193 amount=-2 +kerning first=221 second=248 amount=-2 +kerning first=101 second=380 amount=-1 +kerning first=219 second=286 amount=-1 +kerning first=370 second=331 amount=-1 +kerning first=290 second=70 amount=-1 +kerning first=100 second=115 amount=-1 +kerning first=78 second=286 amount=-1 +kerning first=262 second=331 amount=-1 +kerning first=206 second=380 amount=-1 +kerning first=8220 second=275 amount=-1 +kerning first=250 second=375 amount=-1 +kerning first=242 second=380 amount=-1 +kerning first=262 second=65 amount=-2 +kerning first=316 second=224 amount=-1 +kerning first=354 second=231 amount=-2 +kerning first=241 second=115 amount=-1 +kerning first=80 second=248 amount=-1 +kerning first=277 second=115 amount=-1 +kerning first=334 second=65 amount=-2 +kerning first=336 second=78 amount=-1 +kerning first=338 second=193 amount=-1 +kerning first=85 second=331 amount=-1 +kerning first=370 second=65 amount=-2 +kerning first=379 second=338 amount=-1 +kerning first=374 second=193 amount=-3 +kerning first=121 second=331 amount=-1 +kerning first=205 second=115 amount=-1 +kerning first=1037 second=1073 amount=-1 +kerning first=331 second=255 amount=-1 +kerning first=98 second=307 amount=-1 +kerning first=336 second=352 amount=-1 +kerning first=295 second=255 amount=-1 +kerning first=259 second=255 amount=-1 +kerning first=353 second=347 amount=-1 +kerning first=223 second=255 amount=-1 +kerning first=321 second=366 amount=-1 +kerning first=317 second=347 amount=-1 +kerning first=77 second=281 amount=-1 +kerning first=1092 second=1078 amount=-1 +kerning first=79 second=302 amount=-1 +kerning first=187 second=255 amount=-2 +kerning first=73 second=262 amount=-1 +kerning first=275 second=307 amount=-1 +kerning first=281 second=347 amount=-1 +kerning first=245 second=347 amount=-1 +kerning first=82 second=255 amount=-1 +kerning first=347 second=307 amount=-1 +kerning first=232 second=371 amount=-1 +kerning first=209 second=347 amount=-1 +kerning first=1056 second=1078 amount=-1 +kerning first=66 second=326 amount=-1 +kerning first=1093 second=1077 amount=-1 +kerning first=99 second=250 amount=-1 +kerning first=206 second=212 amount=-1 +kerning first=339 second=257 amount=-1 +kerning first=75 second=333 amount=-1 +kerning first=8250 second=355 amount=-1 +kerning first=223 second=378 amount=-1 +kerning first=274 second=280 amount=-1 +kerning first=382 second=97 amount=-1 +kerning first=375 second=257 amount=-2 +kerning first=338 second=330 amount=-1 +kerning first=204 second=250 amount=-1 +kerning first=87 second=352 amount=-2 +kerning first=74 second=328 amount=-1 +kerning first=1057 second=1077 amount=-1 +kerning first=1025 second=1052 amount=-1 +kerning first=83 second=377 amount=-1 +kerning first=303 second=257 amount=-1 +kerning first=350 second=325 amount=-1 +kerning first=274 second=229 amount=-1 +kerning first=192 second=352 amount=-2 +kerning first=1098 second=1118 amount=-1 +kerning first=103 second=283 amount=-1 +kerning first=332 second=377 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=231 second=257 amount=-1 +kerning first=287 second=328 amount=-1 +kerning first=67 second=283 amount=-1 +kerning first=187 second=378 amount=-3 +kerning first=213 second=366 amount=-1 +kerning first=1042 second=1047 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=313 second=8220 amount=-2 +kerning first=249 second=106 amount=-1 +kerning first=277 second=8220 amount=-1 +kerning first=199 second=332 amount=-2 +kerning first=241 second=8220 amount=-2 +kerning first=278 second=103 amount=-1 +kerning first=310 second=87 amount=-1 +kerning first=368 second=377 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=1049 second=1092 amount=-1 +kerning first=8217 second=367 amount=-1 +kerning first=346 second=87 amount=-1 +kerning first=213 second=106 amount=-1 +kerning first=69 second=287 amount=-1 +kerning first=219 second=345 amount=-1 +kerning first=379 second=332 amount=-1 +kerning first=210 second=287 amount=-1 +kerning first=197 second=113 amount=-1 +kerning first=100 second=8220 amount=-1 +kerning first=255 second=345 amount=-1 +kerning first=367 second=378 amount=-1 +kerning first=377 second=268 amount=-1 +kerning first=321 second=106 amount=-1 +kerning first=8220 second=269 amount=-1 +kerning first=282 second=287 amount=-1 +kerning first=67 second=316 amount=-1 +kerning first=1113 second=1090 amount=-1 +kerning first=202 second=87 amount=-1 +kerning first=86 second=288 amount=-1 +kerning first=80 second=242 amount=-1 +kerning first=246 second=287 amount=-1 +kerning first=66 second=217 amount=-2 +kerning first=221 second=242 amount=-1 +kerning first=354 second=287 amount=-2 +kerning first=104 second=347 amount=-1 +kerning first=310 second=243 amount=-1 +kerning first=213 second=198 amount=-2 +kerning first=377 second=102 amount=-1 +kerning first=362 second=281 amount=-1 +kerning first=327 second=367 amount=-1 +kerning first=279 second=326 amount=-1 +kerning first=113 second=281 amount=-1 +kerning first=315 second=326 amount=-1 +kerning first=187 second=82 amount=-3 +kerning first=315 second=217 amount=-1 +kerning first=351 second=326 amount=-1 +kerning first=218 second=281 amount=-1 +kerning first=214 second=197 amount=-2 +kerning first=367 second=255 amount=-1 +kerning first=84 second=119 amount=-1 +kerning first=198 second=210 amount=-1 +kerning first=120 second=119 amount=-1 +kerning first=278 second=324 amount=-1 +kerning first=67 second=334 amount=-2 +kerning first=198 second=274 amount=-1 +kerning first=286 second=197 amount=-1 +kerning first=321 second=270 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=122 second=97 amount=-1 +kerning first=108 second=254 amount=-1 +kerning first=225 second=119 amount=-1 +kerning first=86 second=283 amount=-2 +kerning first=89 second=249 amount=-1 +kerning first=261 second=119 amount=-1 +kerning first=80 second=304 amount=-1 +kerning first=214 second=374 amount=-1 +kerning first=314 second=324 amount=-1 +kerning first=81 second=75 amount=-1 +kerning first=377 second=379 amount=-1 +kerning first=267 second=369 amount=-1 +kerning first=101 second=324 amount=-1 +kerning first=338 second=249 amount=-1 +kerning first=333 second=119 amount=-1 +kerning first=8217 second=101 amount=-2 +kerning first=231 second=369 amount=-1 +kerning first=369 second=119 amount=-1 +kerning first=339 second=369 amount=-1 +kerning first=200 second=74 amount=-1 +kerning first=1062 second=1054 amount=-1 +kerning first=266 second=249 amount=-1 +kerning first=8218 second=316 amount=-1 +kerning first=303 second=369 amount=-1 +kerning first=68 second=229 amount=-1 +kerning first=280 second=334 amount=-1 +kerning first=86 second=344 amount=-1 +kerning first=192 second=234 amount=-1 +kerning first=281 second=229 amount=-1 +kerning first=272 second=74 amount=-1 +kerning first=85 second=339 amount=-1 +kerning first=200 second=284 amount=-1 +kerning first=264 second=234 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=121 second=339 amount=-1 +kerning first=253 second=279 amount=-1 +kerning first=1091 second=1093 amount=-1 +kerning first=370 second=339 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=217 second=279 amount=-1 +kerning first=262 second=339 amount=-1 +kerning first=87 second=234 amount=-2 +kerning first=325 second=279 amount=-1 +kerning first=353 second=229 amount=-1 +kerning first=298 second=339 amount=-1 +kerning first=289 second=279 amount=-1 +kerning first=223 second=8217 amount=-1 +kerning first=280 second=219 amount=-1 +kerning first=196 second=111 amount=-1 +kerning first=259 second=8217 amount=-1 +kerning first=356 second=244 amount=-2 +kerning first=295 second=8217 amount=-2 +kerning first=377 second=264 amount=-1 +kerning first=286 second=374 amount=-1 +kerning first=208 second=219 amount=-1 +kerning first=268 second=111 amount=-1 +kerning first=331 second=8217 amount=-2 +kerning first=332 second=209 amount=-1 +kerning first=264 second=86 amount=-1 +kerning first=85 second=332 amount=-1 +kerning first=66 second=66 amount=-2 +kerning first=82 second=8217 amount=-3 +kerning first=1067 second=1089 amount=-1 +kerning first=313 second=107 amount=-1 +kerning first=67 second=219 amount=-1 +kerning first=192 second=86 amount=-3 +kerning first=197 second=264 amount=-1 +kerning first=8250 second=291 amount=-1 +kerning first=379 second=72 amount=-1 +kerning first=201 second=289 amount=-1 +kerning first=1042 second=1041 amount=-1 +kerning first=234 second=121 amount=-1 +kerning first=194 second=364 amount=-2 +kerning first=83 second=209 amount=-1 +kerning first=315 second=298 amount=-1 +kerning first=196 second=254 amount=-1 +kerning first=201 second=82 amount=-1 +kerning first=280 second=326 amount=-1 +kerning first=89 second=364 amount=-1 +kerning first=107 second=244 amount=-1 +kerning first=304 second=111 amount=-1 +kerning first=345 second=289 amount=-1 +kerning first=286 second=83 amount=-1 +kerning first=366 second=90 amount=-1 +kerning first=284 second=368 amount=-1 +kerning first=381 second=289 amount=-2 +kerning first=249 second=254 amount=-1 +kerning first=88 second=354 amount=-1 +kerning first=376 second=111 amount=-2 +kerning first=274 second=278 amount=-1 +kerning first=79 second=296 amount=-1 +kerning first=315 second=66 amount=-1 +kerning first=266 second=364 amount=-1 +kerning first=321 second=254 amount=-1 +kerning first=82 second=199 amount=-1 +kerning first=193 second=354 amount=-3 +kerning first=380 second=225 amount=-1 +kerning first=260 second=117 amount=-1 +kerning first=102 second=122 amount=-1 +kerning first=45 second=102 amount=-1 +kerning first=224 second=117 amount=-1 +kerning first=268 second=200 amount=-1 +kerning first=66 second=122 amount=-2 +kerning first=90 second=251 amount=-1 +kerning first=117 second=102 amount=-1 +kerning first=8216 second=99 amount=-1 +kerning first=296 second=117 amount=-1 +kerning first=275 second=97 amount=-1 +kerning first=315 second=122 amount=-1 +kerning first=236 second=225 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=378 second=121 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=311 second=97 amount=-1 +kerning first=279 second=122 amount=-1 +kerning first=298 second=71 amount=-1 +kerning first=330 second=46 amount=-1 +kerning first=272 second=225 amount=-1 +kerning first=368 second=117 amount=-1 +kerning first=203 second=97 amount=-1 +kerning first=243 second=122 amount=-1 +kerning first=366 second=46 amount=-3 +kerning first=267 second=251 amount=-1 +kerning first=376 second=200 amount=-1 +kerning first=207 second=122 amount=-1 +kerning first=370 second=71 amount=-1 +kerning first=344 second=225 amount=-1 +kerning first=231 second=251 amount=-1 +kerning first=117 second=46 amount=-1 +kerning first=339 second=251 amount=-1 +kerning first=366 second=102 amount=-1 +kerning first=303 second=251 amount=-1 +kerning first=364 second=240 amount=-1 +kerning first=347 second=97 amount=-1 +kerning first=222 second=46 amount=-1 +kerning first=256 second=240 amount=-1 +kerning first=203 second=363 amount=-1 +kerning first=83 second=117 amount=-1 +kerning first=311 second=245 amount=-1 +kerning first=278 second=206 amount=-1 +kerning first=275 second=363 amount=-1 +kerning first=352 second=219 amount=-1 +kerning first=1061 second=1108 amount=-1 +kerning first=350 second=206 amount=-1 +kerning first=69 second=83 amount=-1 +kerning first=382 second=355 amount=-1 +kerning first=213 second=310 amount=-1 +kerning first=72 second=284 amount=-1 +kerning first=351 second=249 amount=-1 +kerning first=346 second=355 amount=-1 +kerning first=1045 second=1056 amount=-1 +kerning first=291 second=289 amount=-1 +kerning first=376 second=259 amount=-2 +kerning first=282 second=83 amount=-1 +kerning first=221 second=267 amount=-2 +kerning first=220 second=240 amount=-1 +kerning first=344 second=284 amount=-1 +kerning first=8217 second=196 amount=-3 +kerning first=45 second=253 amount=-2 +kerning first=354 second=83 amount=-2 +kerning first=332 second=69 amount=-1 +kerning first=290 second=77 amount=-1 +kerning first=90 second=369 amount=-1 +kerning first=232 second=259 amount=-1 +kerning first=277 second=375 amount=-1 +kerning first=199 second=220 amount=-1 +kerning first=287 second=116 amount=-1 +kerning first=241 second=375 amount=-1 +kerning first=262 second=71 amount=-2 +kerning first=75 second=269 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=304 second=259 amount=-1 +kerning first=205 second=375 amount=-1 +kerning first=351 second=122 amount=-1 +kerning first=268 second=259 amount=-1 +kerning first=1038 second=1075 amount=-2 +kerning first=115 second=45 amount=-1 +kerning first=85 second=71 amount=-1 +kerning first=8216 second=271 amount=-1 +kerning first=221 second=304 amount=-1 +kerning first=266 second=87 amount=-1 +kerning first=313 second=375 amount=-1 +kerning first=266 second=266 amount=-2 +kerning first=204 second=351 amount=-1 +kerning first=278 second=330 amount=-1 +kerning first=374 second=291 amount=-2 +kerning first=80 second=298 amount=-1 +kerning first=350 second=220 amount=-1 +kerning first=377 second=77 amount=-1 +kerning first=315 second=304 amount=-1 +kerning first=381 second=233 amount=-1 +kerning first=338 second=291 amount=-1 +kerning first=70 second=214 amount=-1 +kerning first=70 second=71 amount=-1 +kerning first=278 second=220 amount=-1 +kerning first=381 second=90 amount=-1 +kerning first=105 second=97 amount=-1 +kerning first=266 second=291 amount=-1 +kerning first=221 second=298 amount=-1 +kerning first=211 second=317 amount=-1 +kerning first=98 second=8250 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=118 second=110 amount=-1 +kerning first=230 second=291 amount=-1 +kerning first=8217 second=286 amount=-1 +kerning first=187 second=110 amount=-1 +kerning first=65 second=84 amount=-3 +kerning first=350 second=330 amount=-1 +kerning first=346 second=207 amount=-1 +kerning first=86 second=287 amount=-2 +kerning first=69 second=97 amount=-1 +kerning first=278 second=65 amount=-1 +kerning first=66 second=304 amount=-2 +kerning first=282 second=97 amount=-1 +kerning first=89 second=291 amount=-2 +kerning first=193 second=8220 amount=-3 +kerning first=278 second=84 amount=-1 +kerning first=197 second=337 amount=-1 +kerning first=323 second=213 amount=-1 +kerning first=364 second=324 amount=-1 +kerning first=210 second=97 amount=-1 +kerning first=66 second=318 amount=-1 +kerning first=252 second=311 amount=-1 +kerning first=201 second=350 amount=-1 +kerning first=115 second=324 amount=-1 +kerning first=377 second=337 amount=-1 +kerning first=381 second=350 amount=-1 +kerning first=201 second=90 amount=-1 +kerning first=220 second=324 amount=-1 +kerning first=354 second=97 amount=-2 +kerning first=111 second=311 amount=-1 +kerning first=243 second=318 amount=-1 +kerning first=350 second=84 amount=-1 +kerning first=269 second=337 amount=-1 +kerning first=75 second=311 amount=-1 +kerning first=279 second=318 amount=-1 +kerning first=79 second=310 amount=-1 +kerning first=243 second=44 amount=-2 +kerning first=234 second=289 amount=-1 +kerning first=201 second=104 amount=-1 +kerning first=221 second=284 amount=-1 +kerning first=111 second=187 amount=-1 +kerning first=314 second=234 amount=-1 +kerning first=278 second=344 amount=-1 +kerning first=1070 second=1025 amount=-1 +kerning first=279 second=44 amount=-2 +kerning first=74 second=213 amount=-1 +kerning first=65 second=234 amount=-1 +kerning first=334 second=381 amount=-1 +kerning first=374 second=277 amount=-2 +kerning first=66 second=44 amount=-2 +kerning first=379 second=374 amount=-1 +kerning first=370 second=381 amount=-1 +kerning first=8218 second=368 amount=-2 +kerning first=350 second=70 amount=-1 +kerning first=79 second=78 amount=-1 +kerning first=102 second=44 amount=-1 +kerning first=1059 second=1081 amount=-2 +kerning first=278 second=70 amount=-1 +kerning first=287 second=227 amount=-1 +kerning first=194 second=277 amount=-1 +kerning first=251 second=227 amount=-1 +kerning first=8222 second=259 amount=-1 +kerning first=302 second=277 amount=-1 +kerning first=233 second=351 amount=-1 +kerning first=266 second=277 amount=-1 +kerning first=197 second=351 amount=-1 +kerning first=84 second=194 amount=-3 +kerning first=283 second=303 amount=-1 +kerning first=268 second=377 amount=-1 +kerning first=351 second=44 amount=-1 +kerning first=216 second=201 amount=-1 +kerning first=370 second=367 amount=-1 +kerning first=65 second=220 amount=-2 +kerning first=89 second=277 amount=-2 +kerning first=376 second=377 amount=-1 +kerning first=221 second=380 amount=-2 +kerning first=209 second=266 amount=-1 +kerning first=269 second=8220 amount=-1 +kerning first=1058 second=1093 amount=-1 +kerning first=310 second=235 amount=-1 +kerning first=65 second=248 amount=-1 +kerning first=201 second=118 amount=-1 +kerning first=233 second=8220 amount=-1 +kerning first=364 second=338 amount=-1 +kerning first=350 second=98 amount=-1 +kerning first=197 second=8220 amount=-3 +kerning first=80 second=270 amount=-1 +kerning first=382 second=235 amount=-1 +kerning first=314 second=98 amount=-1 +kerning first=287 second=241 amount=-1 +kerning first=221 second=270 amount=-1 +kerning first=218 second=287 amount=-2 +kerning first=116 second=380 amount=-1 +kerning first=209 second=211 amount=-1 +kerning first=256 second=338 amount=-1 +kerning first=283 second=228 amount=-1 +kerning first=101 second=112 amount=-1 +kerning first=202 second=193 amount=-1 +kerning first=216 second=325 amount=-1 +kerning first=290 second=287 amount=-1 +kerning first=374 second=263 amount=-2 +kerning first=254 second=287 amount=-1 +kerning first=211 second=228 amount=-1 +kerning first=69 second=274 amount=-1 +kerning first=206 second=363 amount=-1 +kerning first=220 second=197 amount=-2 +kerning first=362 second=287 amount=-2 +kerning first=347 second=8249 amount=-1 +kerning first=326 second=287 amount=-1 +kerning first=106 second=228 amount=-1 +kerning first=194 second=263 amount=-1 +kerning first=346 second=193 amount=-2 +kerning first=70 second=228 amount=-1 +kerning first=45 second=197 amount=-2 +kerning first=8216 second=230 amount=-1 +kerning first=314 second=248 amount=-1 +kerning first=311 second=8249 amount=-2 +kerning first=81 second=197 amount=-2 +kerning first=266 second=263 amount=-1 +kerning first=274 second=193 amount=-1 +kerning first=206 second=248 amount=-1 +kerning first=203 second=8249 amount=-1 +kerning first=74 second=241 amount=-1 +kerning first=302 second=263 amount=-1 +kerning first=274 second=221 amount=-1 +kerning first=263 second=110 amount=-1 +kerning first=222 second=197 amount=-2 +kerning first=112 second=104 amount=-1 +kerning first=283 second=331 amount=-1 +kerning first=310 second=221 amount=-1 +kerning first=364 second=352 amount=-1 +kerning first=351 second=318 amount=-1 +kerning first=350 second=112 amount=-1 +kerning first=202 second=221 amount=-1 +kerning first=323 second=255 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=314 second=112 amount=-1 +kerning first=287 second=255 amount=-1 +kerning first=278 second=112 amount=-1 +kerning first=251 second=255 amount=-1 +kerning first=366 second=197 amount=-2 +kerning first=242 second=112 amount=-1 +kerning first=106 second=331 amount=-1 +kerning first=8222 second=369 amount=-1 +kerning first=206 second=262 amount=-1 +kerning first=1064 second=1072 amount=-1 +kerning first=67 second=74 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=206 second=112 amount=-1 +kerning first=278 second=318 amount=-1 +kerning first=45 second=314 amount=-1 +kerning first=211 second=200 amount=-1 +kerning first=110 second=255 amount=-1 +kerning first=278 second=262 amount=-1 +kerning first=8216 second=244 amount=-1 +kerning first=117 second=314 amount=-1 +kerning first=79 second=352 amount=-1 +kerning first=207 second=290 amount=-1 +kerning first=208 second=74 amount=-1 +kerning first=88 second=253 amount=-2 +kerning first=374 second=249 amount=-1 +kerning first=75 second=111 amount=-1 +kerning first=278 second=98 amount=-1 +kerning first=280 second=74 amount=-1 +kerning first=377 second=105 amount=-1 +kerning first=202 second=207 amount=-1 +kerning first=315 second=290 amount=-1 +kerning first=75 second=283 amount=-1 +kerning first=221 second=366 amount=-1 +kerning first=256 second=352 amount=-2 +kerning first=352 second=74 amount=-1 +kerning first=365 second=380 amount=-1 +kerning first=258 second=314 amount=-1 +kerning first=220 second=352 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=378 second=112 amount=-1 +kerning first=346 second=221 amount=-1 +kerning first=101 second=98 amount=-1 +kerning first=233 second=105 amount=-1 +kerning first=65 second=98 amount=-1 +kerning first=8222 second=355 amount=-1 +kerning first=195 second=333 amount=-1 +kerning first=317 second=67 amount=-1 +kerning first=85 second=224 amount=-1 +kerning first=311 second=8221 amount=-1 +kerning first=222 second=68 amount=-1 +kerning first=76 second=81 amount=-1 +kerning first=347 second=8221 amount=-1 +kerning first=222 second=80 amount=-1 +kerning first=267 second=333 amount=-1 +kerning first=81 second=68 amount=-1 +kerning first=231 second=333 amount=-1 +kerning first=209 second=67 amount=-1 +kerning first=220 second=261 amount=-2 +kerning first=87 second=282 amount=-1 +kerning first=275 second=8221 amount=-1 +kerning first=262 second=224 amount=-1 +kerning first=81 second=80 amount=-1 +kerning first=365 second=106 amount=-1 +kerning first=377 second=355 amount=-1 +kerning first=45 second=80 amount=-3 +kerning first=90 second=333 amount=-1 +kerning first=255 second=45 amount=-2 +kerning first=257 second=106 amount=-1 +kerning first=334 second=224 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=200 second=217 amount=-1 +kerning first=325 second=81 amount=-1 +kerning first=298 second=224 amount=-1 +kerning first=80 second=256 amount=-2 +kerning first=370 second=102 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=379 second=346 amount=-1 +kerning first=217 second=243 amount=-1 +kerning first=107 second=101 amount=-1 +kerning first=253 second=243 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=213 second=204 amount=-1 +kerning first=321 second=204 amount=-1 +kerning first=303 second=333 amount=-1 +kerning first=45 second=68 amount=-3 +kerning first=282 second=332 amount=-1 +kerning first=221 second=256 amount=-3 +kerning first=1043 second=1099 amount=-1 +kerning first=68 second=103 amount=-1 +kerning first=375 second=333 amount=-1 +kerning first=232 second=307 amount=-1 +kerning first=362 second=118 amount=-1 +kerning first=356 second=101 amount=-2 +kerning first=370 second=79 amount=-1 +kerning first=116 second=120 amount=-1 +kerning first=321 second=218 amount=-1 +kerning first=1039 second=1072 amount=-1 +kerning first=262 second=79 amount=-2 +kerning first=90 second=335 amount=-1 +kerning first=298 second=79 amount=-1 +kerning first=376 second=192 amount=-3 +kerning first=200 second=334 amount=-1 +kerning first=221 second=120 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=289 second=243 amount=-1 +kerning first=325 second=243 amount=-1 +kerning first=315 second=347 amount=-1 +kerning first=264 second=268 amount=-2 +kerning first=268 second=192 amount=-2 +kerning first=203 second=251 amount=-1 +kerning first=198 second=315 amount=-1 +kerning first=344 second=334 amount=-1 +kerning first=275 second=251 amount=-1 +kerning first=217 second=229 amount=-2 +kerning first=272 second=217 amount=-1 +kerning first=253 second=229 amount=-2 +kerning first=87 second=268 amount=-1 +kerning first=272 second=203 amount=-1 +kerning first=347 second=251 amount=-1 +kerning first=344 second=217 amount=-1 +kerning first=200 second=203 amount=-1 +kerning first=257 second=120 amount=-1 +kerning first=213 second=218 amount=-1 +kerning first=336 second=282 amount=-1 +kerning first=289 second=229 amount=-1 +kerning first=381 second=118 amount=-1 +kerning first=264 second=282 amount=-1 +kerning first=325 second=229 amount=-1 +kerning first=325 second=257 amount=-1 +kerning first=344 second=219 amount=-1 +kerning first=221 second=368 amount=-1 +kerning first=105 second=371 amount=-1 +kerning first=253 second=257 amount=-2 +kerning first=272 second=219 amount=-1 +kerning first=289 second=257 amount=-1 +kerning first=1024 second=1036 amount=-1 +kerning first=376 second=267 amount=-2 +kerning first=86 second=336 amount=-1 +kerning first=108 second=232 amount=-1 +kerning first=217 second=257 amount=-2 +kerning first=304 second=279 amount=-1 +kerning first=90 second=361 amount=-1 +kerning first=72 second=232 amount=-1 +kerning first=231 second=361 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=376 second=279 amount=-2 +kerning first=195 second=361 amount=-1 +kerning first=45 second=66 amount=-3 +kerning first=66 second=278 amount=-2 +kerning first=298 second=121 amount=-1 +kerning first=192 second=254 amount=-1 +kerning first=199 second=374 amount=-1 +kerning first=228 second=254 amount=-1 +kerning first=226 second=121 amount=-1 +kerning first=264 second=254 amount=-1 +kerning first=204 second=244 amount=-1 +kerning first=350 second=344 amount=-1 +kerning first=290 second=69 amount=-1 +kerning first=269 second=316 amount=-1 +kerning first=268 second=267 amount=-1 +kerning first=222 second=82 amount=-1 +kerning first=304 second=267 amount=-1 +kerning first=85 second=121 amount=-1 +kerning first=85 second=79 amount=-1 +kerning first=315 second=278 amount=-1 +kerning first=196 second=267 amount=-1 +kerning first=81 second=66 amount=-1 +kerning first=8217 second=260 amount=-3 +kerning first=304 second=281 amount=-1 +kerning first=214 second=382 amount=-1 +kerning first=45 second=82 amount=-3 +kerning first=196 second=117 amount=-1 +kerning first=250 second=382 amount=-1 +kerning first=108 second=246 amount=-1 +kerning first=81 second=82 amount=-1 +kerning first=376 second=281 amount=-2 +kerning first=286 second=382 amount=-1 +kerning first=72 second=246 amount=-1 +kerning first=289 second=271 amount=-1 +kerning first=1043 second=1057 amount=-1 +kerning first=268 second=117 amount=-1 +kerning first=121 second=107 amount=-1 +kerning first=232 second=117 amount=-1 +kerning first=196 second=281 amount=-1 +kerning first=73 second=382 amount=-1 +kerning first=272 second=205 amount=-1 +kerning first=1043 second=1085 amount=-1 +kerning first=304 second=117 amount=-1 +kerning first=370 second=121 amount=-1 +kerning first=268 second=281 amount=-1 +kerning first=203 second=230 amount=-1 +kerning first=376 second=117 amount=-1 +kerning first=375 second=347 amount=-1 +kerning first=72 second=352 amount=-1 +kerning first=264 second=240 amount=-1 +kerning first=339 second=347 amount=-1 +kerning first=303 second=347 amount=-1 +kerning first=234 second=8250 amount=-1 +kerning first=267 second=347 amount=-1 +kerning first=339 second=361 amount=-1 +kerning first=368 second=379 amount=-1 +kerning first=231 second=347 amount=-1 +kerning first=262 second=107 amount=-1 +kerning first=302 second=339 amount=-1 +kerning first=195 second=347 amount=-1 +kerning first=1067 second=1095 amount=-1 +kerning first=204 second=216 amount=-1 +kerning first=1031 second=1095 amount=-1 +kerning first=90 second=347 amount=-1 +kerning first=115 second=226 amount=-1 +kerning first=207 second=262 amount=-1 +kerning first=370 second=266 amount=-1 +kerning first=111 second=104 amount=-1 +kerning first=1050 second=1083 amount=-1 +kerning first=377 second=65 amount=-1 +kerning first=78 second=252 amount=-1 +kerning first=346 second=305 amount=-1 +kerning first=346 second=249 amount=-1 +kerning first=66 second=46 amount=-2 +kerning first=220 second=226 amount=-2 +kerning first=298 second=266 amount=-1 +kerning first=1086 second=1083 amount=-1 +kerning first=102 second=46 amount=-1 +kerning first=86 second=8250 amount=-1 +kerning first=220 second=336 amount=-1 +kerning first=256 second=336 amount=-1 +kerning first=382 second=305 amount=-1 +kerning first=335 second=8250 amount=-1 +kerning first=1070 second=1062 amount=-1 +kerning first=262 second=266 amount=-2 +kerning first=73 second=122 amount=-1 +kerning first=1116 second=1104 amount=-1 +kerning first=381 second=102 amount=-1 +kerning first=364 second=336 amount=-1 +kerning first=327 second=252 amount=-1 +kerning first=193 second=219 amount=-2 +kerning first=363 second=252 amount=-1 +kerning first=198 second=316 amount=-1 +kerning first=382 second=45 amount=-2 +kerning first=117 second=365 amount=-1 +kerning first=88 second=219 amount=-1 +kerning first=234 second=316 amount=-1 +kerning first=80 second=269 amount=-1 +kerning first=211 second=202 amount=-1 +kerning first=296 second=335 amount=-1 +kerning first=289 second=259 amount=-1 +kerning first=219 second=252 amount=-1 +kerning first=253 second=259 amount=-2 +kerning first=201 second=102 amount=-1 +kerning first=378 second=316 amount=-1 +kerning first=291 second=252 amount=-1 +kerning first=325 second=259 amount=-1 +kerning first=79 second=226 amount=-1 +kerning first=368 second=103 amount=-2 +kerning first=97 second=45 amount=-1 +kerning first=314 second=246 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=81 second=356 amount=-1 +kerning first=332 second=103 amount=-1 +kerning first=8216 second=85 amount=-1 +kerning first=103 second=116 amount=-1 +kerning first=45 second=356 amount=-2 +kerning first=116 second=382 amount=-1 +kerning first=217 second=259 amount=-2 +kerning first=356 second=375 amount=-1 +kerning first=282 second=369 amount=-1 +kerning first=260 second=103 amount=-1 +kerning first=1045 second=1103 amount=-1 +kerning first=206 second=246 amount=-1 +kerning first=69 second=369 amount=-1 +kerning first=224 second=103 amount=-1 +kerning first=110 second=253 amount=-1 +kerning first=274 second=45 amount=-1 +kerning first=8220 second=74 amount=-1 +kerning first=206 second=332 amount=-1 +kerning first=119 second=103 amount=-2 +kerning first=346 second=45 amount=-1 +kerning first=65 second=246 amount=-1 +kerning first=8250 second=221 amount=-2 +kerning first=105 second=369 amount=-1 +kerning first=83 second=103 amount=-1 +kerning first=251 second=253 amount=-1 +kerning first=310 second=45 amount=-2 +kerning first=278 second=332 amount=-1 +kerning first=102 second=120 amount=-1 +kerning first=365 second=382 amount=-1 +kerning first=253 second=109 amount=-1 +kerning first=194 second=8220 amount=-3 +kerning first=286 second=122 amount=-1 +kerning first=85 second=266 amount=-1 +kerning first=268 second=279 amount=-1 +kerning first=250 second=122 amount=-1 +kerning first=289 second=109 amount=-1 +kerning first=214 second=122 amount=-1 +kerning first=352 second=68 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=221 second=382 amount=-2 +kerning first=76 second=109 amount=-1 +kerning first=70 second=97 amount=-1 +kerning first=316 second=116 amount=-1 +kerning first=8218 second=98 amount=-1 +kerning first=258 second=356 amount=-3 +kerning first=354 second=369 amount=-1 +kerning first=248 second=375 amount=-1 +kerning first=192 second=242 amount=-1 +kerning first=222 second=356 amount=-1 +kerning first=201 second=362 amount=-1 +kerning first=352 second=116 amount=-1 +kerning first=264 second=242 amount=-1 +kerning first=248 second=115 amount=-1 +kerning first=352 second=378 amount=-1 +kerning first=364 second=198 amount=-2 +kerning first=346 second=251 amount=-1 +kerning first=346 second=73 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=316 second=8217 amount=-2 +kerning first=220 second=198 amount=-2 +kerning first=196 second=119 amount=-2 +kerning first=364 second=210 amount=-1 +kerning first=352 second=8217 amount=-1 +kerning first=289 second=355 amount=-1 +kerning first=232 second=119 amount=-1 +kerning first=8222 second=97 amount=-1 +kerning first=356 second=115 amount=-2 +kerning first=253 second=355 amount=-1 +kerning first=268 second=119 amount=-1 +kerning first=315 second=203 amount=-1 +kerning first=288 second=313 amount=-1 +kerning first=304 second=119 amount=-1 +kerning first=287 second=253 amount=-1 +kerning first=350 second=74 amount=-1 +kerning first=257 second=108 amount=-1 +kerning first=70 second=230 amount=-1 +kerning first=323 second=253 amount=-1 +kerning first=216 second=313 amount=-1 +kerning first=211 second=315 amount=-1 +kerning first=365 second=108 amount=-1 +kerning first=274 second=73 amount=-1 +kerning first=368 second=381 amount=-1 +kerning first=332 second=75 amount=-1 +kerning first=118 second=269 amount=-1 +kerning first=82 second=269 amount=-1 +kerning first=119 second=335 amount=-1 +kerning first=198 second=196 amount=-1 +kerning first=251 second=225 amount=-1 +kerning first=289 second=231 amount=-1 +kerning first=287 second=225 amount=-1 +kerning first=260 second=335 amount=-1 +kerning first=325 second=231 amount=-1 +kerning first=83 second=363 amount=-1 +kerning first=74 second=225 amount=-1 +kerning first=366 second=328 amount=-1 +kerning first=224 second=363 amount=-1 +kerning first=1056 second=1086 amount=-1 +kerning first=260 second=363 amount=-1 +kerning first=356 second=286 amount=-1 +kerning first=8218 second=220 amount=-2 +kerning first=208 second=8217 amount=-1 +kerning first=296 second=363 amount=-1 +kerning first=8216 second=345 amount=-1 +kerning first=244 second=8217 amount=-1 +kerning first=65 second=218 amount=-2 +kerning first=323 second=225 amount=-1 +kerning first=368 second=363 amount=-1 +kerning first=217 second=231 amount=-1 +kerning first=8220 second=255 amount=-1 +kerning first=350 second=218 amount=-1 +kerning first=107 second=115 amount=-1 +kerning first=253 second=231 amount=-1 +kerning first=66 second=203 amount=-2 +kerning first=243 second=46 amount=-2 +kerning first=1113 second=1076 amount=-1 +kerning first=278 second=218 amount=-1 +kerning first=279 second=46 amount=-2 +kerning first=98 second=8221 amount=-1 +kerning first=230 second=261 amount=-1 +kerning first=79 second=368 amount=-1 +kerning first=266 second=261 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=366 second=122 amount=-1 +kerning first=302 second=261 amount=-1 +kerning first=375 second=235 amount=-1 +kerning first=338 second=261 amount=-1 +kerning first=334 second=8220 amount=-1 +kerning first=86 second=296 amount=-1 +kerning first=8218 second=218 amount=-2 +kerning first=89 second=261 amount=-2 +kerning first=8250 second=193 amount=-2 +kerning first=330 second=211 amount=-1 +kerning first=370 second=351 amount=-1 +kerning first=68 second=327 amount=-1 +kerning first=226 second=8220 amount=-1 +kerning first=259 second=347 amount=-1 +kerning first=381 second=275 amount=-1 +kerning first=89 second=378 amount=-2 +kerning first=233 second=250 amount=-1 +kerning first=102 second=244 amount=-1 +kerning first=216 second=171 amount=-1 +kerning first=235 second=112 amount=-1 +kerning first=252 second=171 amount=-1 +kerning first=199 second=112 amount=-1 +kerning first=366 second=211 amount=-1 +kerning first=288 second=171 amount=-1 +kerning first=90 second=235 amount=-1 +kerning first=366 second=326 amount=-1 +kerning first=317 second=327 amount=-1 +kerning first=199 second=86 amount=-1 +kerning first=269 second=250 amount=-1 +kerning first=374 second=261 amount=-2 +kerning first=195 second=235 amount=-1 +kerning first=75 second=171 amount=-2 +kerning first=231 second=235 amount=-1 +kerning first=379 second=86 amount=-1 +kerning first=213 second=206 amount=-1 +kerning first=267 second=235 amount=-1 +kerning first=45 second=328 amount=-1 +kerning first=321 second=206 amount=-1 +kerning first=370 second=353 amount=-1 +kerning first=87 second=117 amount=-1 +kerning first=314 second=100 amount=-1 +kerning first=305 second=365 amount=-1 +kerning first=374 second=378 amount=-2 +kerning first=199 second=262 amount=-2 +kerning first=269 second=365 amount=-1 +kerning first=233 second=365 amount=-1 +kerning first=87 second=366 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=324 second=171 amount=-1 +kerning first=76 second=83 amount=-1 +kerning first=266 second=378 amount=-1 +kerning first=226 second=353 amount=-1 +kerning first=336 second=366 amount=-1 +kerning first=379 second=112 amount=-1 +kerning first=230 second=378 amount=-1 +kerning first=262 second=353 amount=-1 +kerning first=206 second=100 amount=-1 +kerning first=256 second=45 amount=-2 +kerning first=298 second=353 amount=-1 +kerning first=379 second=262 amount=-1 +kerning first=264 second=366 amount=-1 +kerning first=307 second=112 amount=-1 +kerning first=217 second=83 amount=-1 +kerning first=302 second=378 amount=-1 +kerning first=107 second=113 amount=-1 +kerning first=274 second=286 amount=-1 +kerning first=85 second=353 amount=-1 +kerning first=346 second=223 amount=-1 +kerning first=213 second=352 amount=-1 +kerning first=79 second=198 amount=-2 +kerning first=325 second=83 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=65 second=100 amount=-1 +kerning first=321 second=352 amount=-1 +kerning first=195 second=87 amount=-3 +kerning first=198 second=288 amount=-1 +kerning first=8250 second=305 amount=-1 +kerning first=90 second=87 amount=-1 +kerning first=202 second=223 amount=-1 +kerning first=67 second=233 amount=-1 +kerning first=377 second=365 amount=-1 +kerning first=274 second=223 amount=-1 +kerning first=370 second=379 amount=-1 +kerning first=286 second=304 amount=-1 +kerning first=108 second=324 amount=-1 +kerning first=103 second=233 amount=-1 +kerning first=334 second=379 amount=-1 +kerning first=377 second=339 amount=-1 +kerning first=269 second=339 amount=-1 +kerning first=89 second=289 amount=-2 +kerning first=101 second=305 amount=-1 +kerning first=316 second=233 amount=-1 +kerning first=195 second=89 amount=-3 +kerning first=199 second=114 amount=-1 +kerning first=201 second=249 amount=-1 +kerning first=194 second=289 amount=-1 +kerning first=230 second=289 amount=-1 +kerning first=266 second=289 amount=-1 +kerning first=78 second=99 amount=-1 +kerning first=1070 second=1064 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=1059 second=1079 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=313 second=274 amount=-1 +kerning first=375 second=237 amount=-1 +kerning first=379 second=84 amount=-1 +kerning first=339 second=237 amount=-1 +kerning first=1114 second=1114 amount=-1 +kerning first=85 second=379 amount=-1 +kerning first=230 second=110 amount=-1 +kerning first=303 second=237 amount=-1 +kerning first=255 second=99 amount=-1 +kerning first=266 second=110 amount=-1 +kerning first=267 second=237 amount=-1 +kerning first=197 second=339 amount=-1 +kerning first=223 second=187 amount=-1 +kerning first=219 second=99 amount=-1 +kerning first=231 second=237 amount=-1 +kerning first=280 second=350 amount=-1 +kerning first=327 second=99 amount=-1 +kerning first=85 second=381 amount=-1 +kerning first=338 second=110 amount=-1 +kerning first=291 second=99 amount=-1 +kerning first=262 second=379 amount=-1 +kerning first=1048 second=1060 amount=-1 +kerning first=374 second=110 amount=-1 +kerning first=208 second=350 amount=-1 +kerning first=321 second=324 amount=-1 +kerning first=381 second=277 amount=-1 +kerning first=107 second=224 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=379 second=234 amount=-1 +kerning first=45 second=326 amount=-1 +kerning first=352 second=350 amount=-1 +kerning first=313 second=302 amount=-1 +kerning first=199 second=234 amount=-1 +kerning first=370 second=264 amount=-1 +kerning first=1038 second=1089 amount=-2 +kerning first=347 second=241 amount=-1 +kerning first=212 second=260 amount=-2 +kerning first=336 second=356 amount=-1 +kerning first=298 second=264 amount=-1 +kerning first=302 second=289 amount=-1 +kerning first=262 second=351 amount=-1 +kerning first=262 second=264 amount=-2 +kerning first=278 second=72 amount=-1 +kerning first=284 second=260 amount=-1 +kerning first=45 second=354 amount=-2 +kerning first=338 second=289 amount=-1 +kerning first=226 second=351 amount=-1 +kerning first=377 second=367 amount=-1 +kerning first=90 second=89 amount=-1 +kerning first=81 second=354 amount=-1 +kerning first=374 second=289 amount=-2 +kerning first=350 second=72 amount=-1 +kerning first=356 second=260 amount=-3 +kerning first=1055 second=1054 amount=-1 +kerning first=298 second=351 amount=-1 +kerning first=75 second=199 amount=-1 +kerning first=79 second=76 amount=-1 +kerning first=305 second=367 amount=-1 +kerning first=85 second=351 amount=-1 +kerning first=222 second=354 amount=-1 +kerning first=201 second=364 amount=-1 +kerning first=233 second=367 amount=-1 +kerning first=90 second=209 amount=-1 +kerning first=258 second=354 amount=-3 +kerning first=269 second=367 amount=-1 +kerning first=377 second=110 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=311 second=111 amount=-1 +kerning first=268 second=8249 amount=-2 +kerning first=78 second=264 amount=-1 +kerning first=304 second=8249 amount=-2 +kerning first=78 second=121 amount=-1 +kerning first=83 second=361 amount=-1 +kerning first=311 second=267 amount=-1 +kerning first=118 second=277 amount=-1 +kerning first=196 second=8249 amount=-2 +kerning first=1030 second=1095 amount=-1 +kerning first=224 second=361 amount=-1 +kerning first=82 second=277 amount=-1 +kerning first=203 second=377 amount=-1 +kerning first=363 second=367 amount=-1 +kerning first=296 second=361 amount=-1 +kerning first=199 second=254 amount=-1 +kerning first=354 second=327 amount=-1 +kerning first=253 second=111 amount=-1 +kerning first=354 second=257 amount=-2 +kerning first=291 second=367 amount=-1 +kerning first=260 second=361 amount=-1 +kerning first=235 second=254 amount=-1 +kerning first=240 second=351 amount=-1 +kerning first=289 second=111 amount=-1 +kerning first=84 second=287 amount=-2 +kerning first=264 second=114 amount=-1 +kerning first=368 second=361 amount=-1 +kerning first=325 second=111 amount=-1 +kerning first=282 second=257 amount=-1 +kerning first=219 second=367 amount=-1 +kerning first=280 second=364 amount=-1 +kerning first=307 second=254 amount=-1 +kerning first=212 second=274 amount=-1 +kerning first=78 second=367 amount=-1 +kerning first=347 second=117 amount=-1 +kerning first=336 second=374 amount=-1 +kerning first=120 second=287 amount=-1 +kerning first=280 second=261 amount=-1 +kerning first=269 second=244 amount=-1 +kerning first=218 second=197 amount=-2 +kerning first=87 second=114 amount=-1 +kerning first=363 second=121 amount=-1 +kerning first=352 second=104 amount=-1 +kerning first=264 second=374 amount=-1 +kerning first=71 second=274 amount=-1 +kerning first=225 second=287 amount=-1 +kerning first=352 second=261 amount=-1 +kerning first=327 second=121 amount=-1 +kerning first=356 second=274 amount=-1 +kerning first=333 second=287 amount=-1 +kerning first=67 second=261 amount=-1 +kerning first=377 second=244 amount=-1 +kerning first=291 second=121 amount=-1 +kerning first=213 second=344 amount=-1 +kerning first=192 second=374 amount=-3 +kerning first=327 second=250 amount=-1 +kerning first=103 second=261 amount=-1 +kerning first=219 second=381 amount=-1 +kerning first=284 second=274 amount=-1 +kerning first=219 second=121 amount=-1 +kerning first=369 second=287 amount=-1 +kerning first=208 second=261 amount=-1 +kerning first=321 second=344 amount=-1 +kerning first=224 second=347 amount=-1 +kerning first=255 second=107 amount=-1 +kerning first=219 second=250 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=266 second=171 amount=-2 +kerning first=1040 second=1104 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=291 second=250 amount=-1 +kerning first=289 second=289 amount=-1 +kerning first=83 second=347 amount=-1 +kerning first=291 second=107 amount=-1 +kerning first=379 second=240 amount=-1 +kerning first=338 second=171 amount=-1 +kerning first=1057 second=1047 amount=-1 +kerning first=305 second=250 amount=-1 +kerning first=89 second=171 amount=-3 +kerning first=67 second=378 amount=-1 +kerning first=275 second=117 amount=-1 +kerning first=377 second=230 amount=-1 +kerning first=78 second=250 amount=-1 +kerning first=73 second=199 amount=-1 +kerning first=194 second=171 amount=-2 +kerning first=1118 second=1108 amount=-1 +kerning first=74 second=74 amount=-1 +kerning first=210 second=257 amount=-1 +kerning first=289 second=371 amount=-1 +kerning first=69 second=257 amount=-1 +kerning first=327 second=264 amount=-1 +kerning first=105 second=257 amount=-1 +kerning first=316 second=378 amount=-1 +kerning first=374 second=171 amount=-3 +kerning first=67 second=364 amount=-1 +kerning first=280 second=378 amount=-1 +kerning first=363 second=107 amount=-1 +kerning first=192 second=100 amount=-1 +kerning first=88 second=314 amount=-1 +kerning first=296 second=347 amount=-1 +kerning first=199 second=240 amount=-1 +kerning first=229 second=314 amount=-1 +kerning first=260 second=347 amount=-1 +kerning first=264 second=100 amount=-1 +kerning first=8220 second=253 amount=-1 +kerning first=1048 second=1054 amount=-1 +kerning first=193 second=314 amount=-1 +kerning first=213 second=220 amount=-1 +kerning first=208 second=90 amount=-1 +kerning first=214 second=298 amount=-1 +kerning first=213 second=330 amount=-1 +kerning first=280 second=90 amount=-1 +kerning first=286 second=298 amount=-1 +kerning first=317 second=207 amount=-1 +kerning first=290 second=317 amount=-1 +kerning first=68 second=201 amount=-1 +kerning first=204 second=214 amount=-1 +kerning first=337 second=314 amount=-1 +kerning first=321 second=330 amount=-1 +kerning first=68 second=207 amount=-1 +kerning first=1024 second=1024 amount=-1 +kerning first=367 second=291 amount=-1 +kerning first=331 second=291 amount=-1 +kerning first=362 second=194 amount=-2 +kerning first=321 second=220 amount=-1 +kerning first=295 second=291 amount=-1 +kerning first=90 second=221 amount=-1 +kerning first=258 second=213 amount=-1 +kerning first=269 second=224 amount=-1 +kerning first=259 second=291 amount=-1 +kerning first=99 second=337 amount=-1 +kerning first=122 second=324 amount=-1 +kerning first=290 second=200 amount=-1 +kerning first=233 second=224 amount=-1 +kerning first=272 second=304 amount=-1 +kerning first=86 second=324 amount=-1 +kerning first=217 second=97 amount=-2 +kerning first=200 second=318 amount=-1 +kerning first=187 second=291 amount=-1 +kerning first=8220 second=370 amount=-1 +kerning first=118 second=291 amount=-2 +kerning first=82 second=291 amount=-1 +kerning first=1038 second=1101 amount=-1 +kerning first=325 second=97 amount=-1 +kerning first=321 second=84 amount=-1 +kerning first=353 second=311 amount=-1 +kerning first=78 second=101 amount=-1 +kerning first=366 second=213 amount=-1 +kerning first=377 second=224 amount=-1 +kerning first=235 second=251 amount=-1 +kerning first=8250 second=195 amount=-2 +kerning first=317 second=311 amount=-1 +kerning first=344 second=318 amount=-1 +kerning first=204 second=337 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=253 second=97 amount=-2 +kerning first=281 second=311 amount=-1 +kerning first=380 second=318 amount=-1 +kerning first=67 second=90 amount=-1 +kerning first=289 second=97 amount=-1 +kerning first=213 second=84 amount=-1 +kerning first=245 second=311 amount=-1 +kerning first=219 second=101 amount=-1 +kerning first=72 second=234 amount=-1 +kerning first=1036 second=1057 amount=-2 +kerning first=103 second=104 amount=-1 +kerning first=255 second=101 amount=-1 +kerning first=281 second=187 amount=-1 +kerning first=108 second=234 amount=-1 +kerning first=68 second=325 amount=-1 +kerning first=362 second=303 amount=-1 +kerning first=67 second=104 amount=-1 +kerning first=291 second=101 amount=-1 +kerning first=254 second=303 amount=-1 +kerning first=1057 second=1041 amount=-1 +kerning first=366 second=227 amount=-2 +kerning first=347 second=249 amount=-1 +kerning first=327 second=101 amount=-1 +kerning first=8250 second=209 amount=-3 +kerning first=380 second=44 amount=-1 +kerning first=330 second=227 amount=-1 +kerning first=200 second=44 amount=-1 +kerning first=321 second=78 amount=-1 +kerning first=280 second=104 amount=-1 +kerning first=86 second=310 amount=-1 +kerning first=263 second=324 amount=-1 +kerning first=213 second=70 amount=-1 +kerning first=381 second=266 amount=-1 +kerning first=244 second=104 amount=-1 +kerning first=245 second=187 amount=-1 +kerning first=272 second=44 amount=-1 +kerning first=371 second=324 amount=-1 +kerning first=236 second=44 amount=-1 +kerning first=317 second=325 amount=-1 +kerning first=381 second=211 amount=-1 +kerning first=117 second=227 amount=-1 +kerning first=290 second=194 amount=-1 +kerning first=105 second=251 amount=-1 +kerning first=213 second=78 amount=-1 +kerning first=81 second=227 amount=-1 +kerning first=69 second=251 amount=-1 +kerning first=1060 second=1024 amount=-1 +kerning first=45 second=227 amount=-1 +kerning first=218 second=194 amount=-2 +kerning first=282 second=251 amount=-1 +kerning first=317 second=201 amount=-1 +kerning first=218 second=303 amount=-1 +kerning first=1101 second=1093 amount=-1 +kerning first=222 second=227 amount=-1 +kerning first=354 second=251 amount=-1 +kerning first=8220 second=233 amount=-1 +kerning first=113 second=303 amount=-1 +kerning first=85 second=237 amount=-1 +kerning first=266 second=118 amount=-1 +kerning first=82 second=283 amount=-1 +kerning first=230 second=118 amount=-1 +kerning first=280 second=370 amount=-1 +kerning first=8250 second=327 amount=-3 +kerning first=255 second=226 amount=-2 +kerning first=264 second=270 amount=-1 +kerning first=302 second=118 amount=-1 +kerning first=352 second=370 amount=-1 +kerning first=262 second=105 amount=-1 +kerning first=89 second=118 amount=-1 +kerning first=260 second=245 amount=-1 +kerning first=192 second=368 amount=-2 +kerning first=121 second=105 amount=-1 +kerning first=310 second=335 amount=-1 +kerning first=71 second=280 amount=-1 +kerning first=194 second=118 amount=-2 +kerning first=87 second=368 amount=-1 +kerning first=382 second=335 amount=-1 +kerning first=87 second=270 amount=-1 +kerning first=323 second=268 amount=-1 +kerning first=118 second=283 amount=-1 +kerning first=85 second=105 amount=-1 +kerning first=212 second=280 amount=-1 +kerning first=316 second=241 amount=-1 +kerning first=336 second=368 amount=-1 +kerning first=218 second=193 amount=-2 +kerning first=68 second=193 amount=-2 +kerning first=280 second=241 amount=-1 +kerning first=368 second=216 amount=-1 +kerning first=67 second=370 amount=-1 +kerning first=67 second=223 amount=-1 +kerning first=228 second=108 amount=-1 +kerning first=264 second=368 amount=-1 +kerning first=1036 second=1083 amount=-1 +kerning first=352 second=241 amount=-1 +kerning first=192 second=108 amount=-1 +kerning first=212 second=87 amount=-1 +kerning first=336 second=270 amount=-1 +kerning first=305 second=254 amount=-1 +kerning first=264 second=108 amount=-1 +kerning first=204 second=228 amount=-1 +kerning first=214 second=278 amount=-1 +kerning first=208 second=370 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=117 second=353 amount=-1 +kerning first=286 second=278 amount=-1 +kerning first=66 second=89 amount=-2 +kerning first=260 second=231 amount=-1 +kerning first=336 second=122 amount=-1 +kerning first=67 second=241 amount=-1 +kerning first=119 second=231 amount=-1 +kerning first=352 second=356 amount=-1 +kerning first=333 second=107 amount=-1 +kerning first=262 second=304 amount=-1 +kerning first=264 second=122 amount=-1 +kerning first=368 second=231 amount=-1 +kerning first=280 second=356 amount=-1 +kerning first=336 second=73 amount=-1 +kerning first=316 second=255 amount=-1 +kerning first=374 second=116 amount=-1 +kerning first=296 second=231 amount=-1 +kerning first=336 second=256 amount=-2 +kerning first=208 second=356 amount=-1 +kerning first=1052 second=1073 amount=-1 +kerning first=244 second=255 amount=-1 +kerning first=356 second=266 amount=-1 +kerning first=368 second=245 amount=-1 +kerning first=296 second=81 amount=-1 +kerning first=284 second=280 amount=-1 +kerning first=103 second=255 amount=-1 +kerning first=296 second=245 amount=-1 +kerning first=356 second=280 amount=-1 +kerning first=1038 second=1095 amount=-2 +kerning first=370 second=105 amount=-1 +kerning first=277 second=8250 amount=-1 +kerning first=87 second=122 amount=-2 +kerning first=260 second=108 amount=-1 +kerning first=368 second=229 amount=-2 +kerning first=88 second=217 amount=-1 +kerning first=296 second=229 amount=-1 +kerning first=103 second=303 amount=-1 +kerning first=193 second=217 amount=-2 +kerning first=332 second=229 amount=-1 +kerning first=281 second=305 amount=-1 +kerning first=228 second=106 amount=-1 +kerning first=310 second=67 amount=-1 +kerning first=305 second=8220 amount=-1 +kerning first=264 second=106 amount=-1 +kerning first=274 second=67 amount=-1 +kerning first=353 second=305 amount=-1 +kerning first=65 second=346 amount=-2 +kerning first=260 second=81 amount=-1 +kerning first=317 second=305 amount=-1 +kerning first=80 second=282 amount=-1 +kerning first=278 second=346 amount=-1 +kerning first=310 second=333 amount=-1 +kerning first=233 second=230 amount=-1 +kerning first=79 second=204 amount=-1 +kerning first=206 second=346 amount=-1 +kerning first=382 second=333 amount=-1 +kerning first=336 second=106 amount=-1 +kerning first=269 second=230 amount=-1 +kerning first=311 second=281 amount=-1 +kerning first=87 second=256 amount=-3 +kerning first=370 second=224 amount=-1 +kerning first=324 second=316 amount=-1 +kerning first=369 second=307 amount=-1 +kerning first=197 second=79 amount=-1 +kerning first=256 second=218 amount=-2 +kerning first=296 second=243 amount=-1 +kerning first=334 second=352 amount=-1 +kerning first=217 second=99 amount=-1 +kerning first=368 second=243 amount=-1 +kerning first=211 second=69 amount=-1 +kerning first=119 second=243 amount=-1 +kerning first=1039 second=1060 amount=-1 +kerning first=72 second=332 amount=-1 +kerning first=377 second=79 amount=-1 +kerning first=200 second=381 amount=-1 +kerning first=352 second=80 amount=-1 +kerning first=260 second=243 amount=-1 +kerning first=1027 second=1098 amount=-1 +kerning first=311 second=171 amount=-2 +kerning first=83 second=229 amount=-1 +kerning first=336 second=120 amount=-1 +kerning first=221 second=268 amount=-1 +kerning first=321 second=332 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=79 second=218 amount=-1 +kerning first=87 second=120 amount=-1 +kerning first=374 second=118 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=84 second=192 amount=-3 +kerning first=119 second=229 amount=-2 +kerning first=228 second=120 amount=-1 +kerning first=8222 second=371 amount=-1 +kerning first=267 second=229 amount=-1 +kerning first=262 second=99 amount=-1 +kerning first=69 second=109 amount=-1 +kerning first=204 second=339 amount=-1 +kerning first=311 second=279 amount=-1 +kerning first=199 second=242 amount=-1 +kerning first=303 second=229 amount=-1 +kerning first=187 second=289 amount=-1 +kerning first=223 second=289 amount=-1 +kerning first=99 second=339 amount=-1 +kerning first=231 second=229 amount=-1 +kerning first=262 second=112 amount=-1 +kerning first=105 second=109 amount=-1 +kerning first=259 second=289 amount=-1 +kerning first=307 second=122 amount=-1 +kerning first=379 second=242 amount=-1 +kerning first=295 second=289 amount=-1 +kerning first=370 second=99 amount=-1 +kerning first=331 second=289 amount=-1 +kerning first=260 second=89 amount=-3 +kerning first=286 second=282 amount=-1 +kerning first=339 second=229 amount=-1 +kerning first=367 second=289 amount=-1 +kerning first=200 second=230 amount=-1 +kerning first=314 second=232 amount=-1 +kerning first=375 second=229 amount=-2 +kerning first=332 second=89 amount=-1 +kerning first=214 second=282 amount=-1 +kerning first=219 second=379 amount=-1 +kerning first=235 second=106 amount=-1 +kerning first=65 second=232 amount=-1 +kerning first=203 second=119 amount=-1 +kerning first=206 second=232 amount=-1 +kerning first=72 second=346 amount=-1 +kerning first=8216 second=261 amount=-1 +kerning first=338 second=75 amount=-1 +kerning first=72 second=111 amount=-1 +kerning first=275 second=119 amount=-1 +kerning first=85 second=99 amount=-1 +kerning first=321 second=346 amount=-1 +kerning first=311 second=119 amount=-1 +kerning first=249 second=307 amount=-1 +kerning first=347 second=119 amount=-1 +kerning first=222 second=364 amount=-1 +kerning first=307 second=106 amount=-1 +kerning first=121 second=99 amount=-1 +kerning first=213 second=346 amount=-1 +kerning first=82 second=289 amount=-1 +kerning first=202 second=209 amount=-1 +kerning first=220 second=212 amount=-1 +kerning first=256 second=212 amount=-1 +kerning first=66 second=87 amount=-2 +kerning first=8220 second=354 amount=-1 +kerning first=8217 second=288 amount=-1 +kerning first=89 second=269 amount=-2 +kerning first=82 second=8249 amount=-2 +kerning first=346 second=209 amount=-1 +kerning first=122 second=316 amount=-1 +kerning first=194 second=269 amount=-1 +kerning first=1058 second=1119 amount=-1 +kerning first=1061 second=1072 amount=-1 +kerning first=274 second=209 amount=-1 +kerning first=302 second=269 amount=-1 +kerning first=227 second=316 amount=-1 +kerning first=8222 second=251 amount=-1 +kerning first=249 second=8220 amount=-2 +kerning first=266 second=269 amount=-1 +kerning first=263 second=316 amount=-1 +kerning first=204 second=79 amount=-1 +kerning first=374 second=269 amount=-2 +kerning first=99 second=291 amount=-1 +kerning first=330 second=288 amount=-1 +kerning first=67 second=229 amount=-1 +kerning first=321 second=76 amount=-1 +kerning first=83 second=89 amount=-1 +kerning first=213 second=72 amount=-1 +kerning first=209 second=199 amount=-1 +kerning first=66 second=274 amount=-2 +kerning first=364 second=212 amount=-1 +kerning first=90 second=229 amount=-1 +kerning first=213 second=76 amount=-1 +kerning first=317 second=199 amount=-1 +kerning first=280 second=368 amount=-1 +kerning first=379 second=365 amount=-1 +kerning first=219 second=109 amount=-1 +kerning first=321 second=72 amount=-1 +kerning first=70 second=216 amount=-1 +kerning first=218 second=192 amount=-2 +kerning first=249 second=226 amount=-1 +kerning first=316 second=102 amount=-1 +kerning first=217 second=245 amount=-1 +kerning first=210 second=8221 amount=-1 +kerning first=205 second=286 amount=-1 +kerning first=236 second=46 amount=-1 +kerning first=321 second=336 amount=-1 +kerning first=105 second=8221 amount=-1 +kerning first=272 second=46 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=325 second=245 amount=-1 +kerning first=246 second=8221 amount=-1 +kerning first=1043 second=1083 amount=-2 +kerning first=289 second=245 amount=-1 +kerning first=8218 second=84 amount=-3 +kerning first=327 second=266 amount=-1 +kerning first=1027 second=1086 amount=-1 +kerning first=280 second=102 amount=-1 +kerning first=253 second=245 amount=-1 +kerning first=303 second=335 amount=-1 +kerning first=90 second=257 amount=-1 +kerning first=198 second=296 amount=-1 +kerning first=258 second=219 amount=-2 +kerning first=226 second=252 amount=-1 +kerning first=112 second=103 amount=-1 +kerning first=375 second=335 amount=-1 +kerning first=222 second=219 amount=-1 +kerning first=371 second=316 amount=-1 +kerning first=262 second=252 amount=-1 +kerning first=76 second=103 amount=-1 +kerning first=298 second=252 amount=-1 +kerning first=78 second=269 amount=-1 +kerning first=1088 second=1095 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=195 second=335 amount=-1 +kerning first=81 second=219 amount=-1 +kerning first=108 second=226 amount=-1 +kerning first=290 second=202 amount=-1 +kerning first=231 second=335 amount=-1 +kerning first=45 second=219 amount=-2 +kerning first=85 second=252 amount=-1 +kerning first=267 second=335 amount=-1 +kerning first=213 second=226 amount=-1 +kerning first=76 second=369 amount=-1 +kerning first=282 second=259 amount=-1 +kerning first=291 second=375 amount=-1 +kerning first=103 second=253 amount=-1 +kerning first=379 second=246 amount=-1 +kerning first=354 second=259 amount=-2 +kerning first=381 second=116 amount=-1 +kerning first=219 second=375 amount=-1 +kerning first=1058 second=1113 amount=-1 +kerning first=8220 second=241 amount=-1 +kerning first=105 second=259 amount=-1 +kerning first=244 second=253 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=325 second=103 amount=-1 +kerning first=280 second=362 amount=-1 +kerning first=69 second=259 amount=-1 +kerning first=370 second=252 amount=-1 +kerning first=289 second=103 amount=-1 +kerning first=210 second=259 amount=-1 +kerning first=363 second=375 amount=-1 +kerning first=253 second=103 amount=-2 +kerning first=352 second=362 amount=-1 +kerning first=199 second=246 amount=-1 +kerning first=352 second=253 amount=-1 +kerning first=83 second=83 amount=-1 +kerning first=217 second=103 amount=-2 +kerning first=221 second=122 amount=-2 +kerning first=219 second=266 amount=-1 +kerning first=264 second=382 amount=-1 +kerning first=354 second=109 amount=-1 +kerning first=116 second=122 amount=-1 +kerning first=208 second=362 amount=-1 +kerning first=336 second=382 amount=-1 +kerning first=67 second=225 amount=-1 +kerning first=260 second=83 amount=-2 +kerning first=8216 second=331 amount=-1 +kerning first=296 second=83 amount=-1 +kerning first=365 second=122 amount=-1 +kerning first=211 second=323 amount=-1 +kerning first=364 second=256 amount=-2 +kerning first=87 second=382 amount=-2 +kerning first=217 second=369 amount=-1 +kerning first=72 second=336 amount=-1 +kerning first=8216 second=65 amount=-4 +kerning first=78 second=375 amount=-1 +kerning first=332 second=83 amount=-1 +kerning first=78 second=266 amount=-1 +kerning first=8220 second=364 amount=-1 +kerning first=325 second=369 amount=-1 +kerning first=368 second=83 amount=-1 +kerning first=289 second=369 amount=-1 +kerning first=282 second=109 amount=-1 +kerning first=67 second=362 amount=-1 +kerning first=67 second=89 amount=-1 +kerning first=231 second=289 amount=-1 +kerning first=1057 second=1055 amount=-1 +kerning first=311 second=273 amount=-1 +kerning first=203 second=104 amount=-1 +kerning first=232 second=241 amount=-1 +kerning first=74 second=233 amount=-1 +kerning first=255 second=115 amount=-1 +kerning first=381 second=263 amount=-1 +kerning first=291 second=115 amount=-1 +kerning first=79 second=330 amount=-1 +kerning first=119 second=355 amount=-1 +kerning first=287 second=233 amount=-1 +kerning first=86 second=198 amount=-3 +kerning first=90 second=223 amount=-1 +kerning first=219 second=115 amount=-1 +kerning first=83 second=355 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=317 second=313 amount=-1 +kerning first=323 second=233 amount=-1 +kerning first=327 second=115 amount=-1 +kerning first=8216 second=337 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=85 second=365 amount=-1 +kerning first=363 second=115 amount=-1 +kerning first=260 second=355 amount=-1 +kerning first=74 second=350 amount=-1 +kerning first=214 second=227 amount=-1 +kerning first=1027 second=1090 amount=-1 +kerning first=201 second=110 amount=-1 +kerning first=379 second=248 amount=-1 +kerning first=68 second=313 amount=-1 +kerning first=202 second=325 amount=-1 +kerning first=1050 second=1063 amount=-2 +kerning first=76 second=363 amount=-1 +kerning first=1046 second=1038 amount=-1 +kerning first=197 second=85 amount=-2 +kerning first=45 second=225 amount=-1 +kerning first=274 second=325 amount=-1 +kerning first=84 second=303 amount=-1 +kerning first=81 second=225 amount=-1 +kerning first=363 second=8220 amount=-2 +kerning first=117 second=225 amount=-1 +kerning first=381 second=110 amount=-1 +kerning first=217 second=363 amount=-1 +kerning first=346 second=325 amount=-1 +kerning first=333 second=303 amount=-1 +kerning first=369 second=303 amount=-1 +kerning first=289 second=363 amount=-1 +kerning first=195 second=221 amount=-3 +kerning first=323 second=350 amount=-1 +kerning first=376 second=302 amount=-1 +kerning first=290 second=315 amount=-1 +kerning first=8250 second=207 amount=-3 +kerning first=321 second=338 amount=-1 +kerning first=330 second=225 amount=-1 +kerning first=73 second=290 amount=-1 +kerning first=307 second=98 amount=-1 +kerning first=366 second=225 amount=-2 +kerning first=67 second=102 amount=-1 +kerning first=86 second=196 amount=-3 +kerning first=219 second=260 amount=-2 +kerning first=264 second=380 amount=-1 +kerning first=199 second=98 amount=-1 +kerning first=313 second=286 amount=-1 +kerning first=344 second=46 amount=-1 +kerning first=222 second=225 amount=-1 +kerning first=336 second=380 amount=-1 +kerning first=72 second=338 amount=-1 +kerning first=8220 second=362 amount=-1 +kerning first=380 second=46 amount=-1 +kerning first=69 second=377 amount=-1 +kerning first=298 second=367 amount=-1 +kerning first=1043 second=1077 amount=-1 +kerning first=103 second=307 amount=-1 +kerning first=226 second=367 amount=-1 +kerning first=65 second=352 amount=-2 +kerning first=201 second=261 amount=-1 +kerning first=262 second=367 amount=-1 +kerning first=350 second=86 amount=-1 +kerning first=206 second=352 amount=-1 +kerning first=305 second=351 amount=-1 +kerning first=256 second=210 amount=-1 +kerning first=354 second=111 amount=-2 +kerning first=354 second=325 amount=-1 +kerning first=202 second=327 amount=-1 +kerning first=282 second=377 amount=-1 +kerning first=269 second=351 amount=-1 +kerning first=220 second=210 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=278 second=352 amount=-1 +kerning first=377 second=351 amount=-1 +kerning first=274 second=327 amount=-1 +kerning first=210 second=377 amount=-1 +kerning first=85 second=367 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=119 second=235 amount=-1 +kerning first=381 second=261 amount=-1 +kerning first=370 second=250 amount=-1 +kerning first=346 second=327 amount=-1 +kerning first=46 second=171 amount=-1 +kerning first=1072 second=1090 amount=-1 +kerning first=1063 second=1092 amount=-1 +kerning first=82 second=171 amount=-2 +kerning first=65 second=86 amount=-3 +kerning first=260 second=235 amount=-1 +kerning first=118 second=171 amount=-2 +kerning first=264 second=112 amount=-1 +kerning first=198 second=302 amount=-1 +kerning first=296 second=235 amount=-1 +kerning first=196 second=287 amount=-1 +kerning first=226 second=250 amount=-1 +kerning first=278 second=86 amount=-1 +kerning first=368 second=235 amount=-1 +kerning first=268 second=287 amount=-1 +kerning first=298 second=250 amount=-1 +kerning first=1074 second=1103 amount=-1 +kerning first=232 second=287 amount=-1 +kerning first=87 second=112 amount=-1 +kerning first=262 second=250 amount=-1 +kerning first=1038 second=1103 amount=-3 +kerning first=303 second=242 amount=-1 +kerning first=89 second=275 amount=-2 +kerning first=269 second=353 amount=-1 +kerning first=331 second=171 amount=-1 +kerning first=1072 second=1091 amount=-1 +kerning first=304 second=287 amount=-1 +kerning first=255 second=113 amount=-1 +kerning first=305 second=353 amount=-1 +kerning first=367 second=171 amount=-1 +kerning first=219 second=113 amount=-1 +kerning first=376 second=287 amount=-2 +kerning first=377 second=353 amount=-1 +kerning first=85 second=250 amount=-1 +kerning first=370 second=365 amount=-1 +kerning first=83 second=237 amount=-1 +kerning first=298 second=365 amount=-1 +kerning first=197 second=353 amount=-1 +kerning first=200 second=197 amount=-1 +kerning first=259 second=171 amount=-1 +kerning first=379 second=100 amount=-1 +kerning first=201 second=378 amount=-1 +kerning first=262 second=365 amount=-1 +kerning first=199 second=366 amount=-1 +kerning first=327 second=113 amount=-1 +kerning first=233 second=353 amount=-1 +kerning first=295 second=171 amount=-1 +kerning first=226 second=365 amount=-1 +kerning first=350 second=352 amount=-1 +kerning first=272 second=197 amount=-2 +kerning first=332 second=87 amount=-1 +kerning first=258 second=45 amount=-2 +kerning first=199 second=100 amount=-1 +kerning first=260 second=87 amount=-3 +kerning first=103 second=249 amount=-1 +kerning first=87 second=262 amount=-1 +kerning first=374 second=275 amount=-2 +kerning first=313 second=288 amount=-1 +kerning first=375 second=223 amount=-1 +kerning first=266 second=275 amount=-1 +kerning first=45 second=74 amount=-2 +kerning first=352 second=249 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=302 second=275 amount=-1 +kerning first=81 second=74 amount=-1 +kerning first=8222 second=257 amount=-1 +kerning first=381 second=378 amount=-1 +kerning first=194 second=275 amount=-1 +kerning first=83 second=87 amount=-1 +kerning first=280 second=249 amount=-1 +kerning first=205 second=288 amount=-1 +kerning first=264 second=262 amount=-2 +kerning first=316 second=249 amount=-1 +kerning first=1036 second=1091 amount=-1 +kerning first=364 second=262 amount=-1 +kerning first=200 second=314 amount=-1 +kerning first=222 second=217 amount=-1 +kerning first=264 second=288 amount=-2 +kerning first=258 second=217 amount=-2 +kerning first=89 second=243 amount=-2 +kerning first=236 second=314 amount=-1 +kerning first=194 second=243 amount=-1 +kerning first=344 second=314 amount=-1 +kerning first=379 second=80 amount=-1 +kerning first=325 second=333 amount=-1 +kerning first=289 second=333 amount=-1 +kerning first=87 second=288 amount=-1 +kerning first=380 second=314 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=120 second=113 amount=-1 +kerning first=66 second=366 amount=-2 +kerning first=245 second=307 amount=-1 +kerning first=310 second=269 amount=-1 +kerning first=108 second=224 amount=-1 +kerning first=8216 second=121 amount=-1 +kerning first=354 second=281 amount=-2 +kerning first=281 second=307 amount=-1 +kerning first=382 second=255 amount=-1 +kerning first=72 second=224 amount=-1 +kerning first=66 second=120 amount=-2 +kerning first=346 second=255 amount=-1 +kerning first=313 second=198 amount=-1 +kerning first=353 second=307 amount=-1 +kerning first=310 second=255 amount=-2 +kerning first=220 second=262 amount=-1 +kerning first=45 second=217 amount=-2 +kerning first=256 second=262 amount=-1 +kerning first=379 second=326 amount=-1 +kerning first=81 second=217 amount=-1 +kerning first=266 second=243 amount=-1 +kerning first=351 second=120 amount=-1 +kerning first=105 second=353 amount=-1 +kerning first=336 second=274 amount=-1 +kerning first=230 second=229 amount=-1 +kerning first=85 second=101 amount=-1 +kerning first=222 second=203 amount=-1 +kerning first=89 second=229 amount=-2 +kerning first=121 second=101 amount=-1 +kerning first=264 second=274 amount=-1 +kerning first=323 second=118 amount=-1 +kerning first=338 second=229 amount=-1 +kerning first=290 second=75 amount=-1 +kerning first=1056 second=1076 amount=-1 +kerning first=364 second=248 amount=-1 +kerning first=287 second=118 amount=-1 +kerning first=243 second=120 amount=-1 +kerning first=374 second=229 amount=-2 +kerning first=262 second=101 amount=-1 +kerning first=45 second=203 amount=-3 +kerning first=256 second=248 amount=-1 +kerning first=279 second=120 amount=-1 +kerning first=266 second=229 amount=-1 +kerning first=298 second=101 amount=-1 +kerning first=81 second=203 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=315 second=120 amount=-1 +kerning first=302 second=229 amount=-1 +kerning first=200 second=68 amount=-1 +kerning first=370 second=101 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=328 second=8220 amount=-2 +kerning first=280 second=316 amount=-1 +kerning first=354 second=267 amount=-2 +kerning first=251 second=118 amount=-1 +kerning first=8220 second=85 amount=-1 +kerning first=66 second=106 amount=-1 +kerning first=194 second=242 amount=-1 +kerning first=76 second=73 amount=-1 +kerning first=256 second=8220 amount=-3 +kerning first=346 second=241 amount=-1 +kerning first=315 second=106 amount=-1 +kerning first=351 second=106 amount=-1 +kerning first=74 second=118 amount=-1 +kerning first=120 second=99 amount=-1 +kerning first=115 second=8220 amount=-1 +kerning first=243 second=106 amount=-1 +kerning first=307 second=116 amount=-1 +kerning first=84 second=99 amount=-2 +kerning first=382 second=241 amount=-1 +kerning first=79 second=8220 amount=-1 +kerning first=279 second=106 amount=-1 +kerning first=316 second=363 amount=-1 +kerning first=269 second=111 amount=-1 +kerning first=325 second=361 amount=-1 +kerning first=289 second=361 amount=-1 +kerning first=192 second=316 amount=-1 +kerning first=228 second=316 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=264 second=316 amount=-1 +kerning first=67 second=368 amount=-1 +kerning first=313 second=212 amount=-1 +kerning first=246 second=8220 amount=-1 +kerning first=374 second=257 amount=-2 +kerning first=278 second=350 amount=-1 +kerning first=205 second=212 amount=-1 +kerning first=197 second=111 amount=-1 +kerning first=208 second=368 amount=-1 +kerning first=287 second=104 amount=-1 +kerning first=115 second=44 amount=-1 +kerning first=251 second=104 amount=-1 +kerning first=69 second=323 amount=-1 +kerning first=200 second=82 amount=-1 +kerning first=220 second=44 amount=-3 +kerning first=1030 second=1057 amount=-1 +kerning first=291 second=275 amount=-1 +kerning first=76 second=361 amount=-1 +kerning first=377 second=111 amount=-1 +kerning first=352 second=368 amount=-1 +kerning first=8216 second=339 amount=-1 +kerning first=311 second=228 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=290 second=89 amount=-1 +kerning first=210 second=323 amount=-1 +kerning first=379 second=66 amount=-1 +kerning first=87 second=274 amount=-1 +kerning first=266 second=280 amount=-1 +kerning first=1102 second=1113 amount=-1 +kerning first=356 second=250 amount=-1 +kerning first=199 second=326 amount=-1 +kerning first=187 second=205 amount=-3 +kerning first=80 second=278 amount=-1 +kerning first=282 second=323 amount=-1 +kerning first=377 second=97 amount=-1 +kerning first=235 second=326 amount=-1 +kerning first=325 second=347 amount=-1 +kerning first=221 second=278 amount=-1 +kerning first=74 second=378 amount=-1 +kerning first=87 second=302 amount=-1 +kerning first=269 second=97 amount=-1 +kerning first=289 second=347 amount=-1 +kerning first=354 second=323 amount=-1 +kerning first=84 second=362 amount=-1 +kerning first=307 second=326 amount=-1 +kerning first=253 second=347 amount=-1 +kerning first=233 second=371 amount=-1 +kerning first=118 second=233 amount=-1 +kerning first=199 second=354 amount=-1 +kerning first=269 second=371 amount=-1 +kerning first=82 second=233 amount=-1 +kerning first=8216 second=353 amount=-1 +kerning first=284 second=250 amount=-1 +kerning first=305 second=371 amount=-1 +kerning first=112 second=347 amount=-1 +kerning first=76 second=347 amount=-1 +kerning first=68 second=89 amount=-1 +kerning first=323 second=378 amount=-1 +kerning first=217 second=45 amount=-3 +kerning first=254 second=103 amount=-1 +kerning first=287 second=378 amount=-1 +kerning first=338 second=257 amount=-1 +kerning first=218 second=103 amount=-2 +kerning first=289 second=45 amount=-1 +kerning first=253 second=333 amount=-1 +kerning first=71 second=250 amount=-1 +kerning first=253 second=45 amount=-2 +kerning first=217 second=333 amount=-1 +kerning first=1048 second=1092 amount=-1 +kerning first=336 second=302 amount=-1 +kerning first=361 second=45 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=187 second=219 amount=-2 +kerning first=356 second=264 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=325 second=45 amount=-2 +kerning first=251 second=378 amount=-1 +kerning first=264 second=302 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=277 second=226 amount=-1 +kerning first=89 second=257 amount=-2 +kerning first=200 second=110 amount=-1 +kerning first=113 second=363 amount=-1 +kerning first=8216 second=196 amount=-4 +kerning first=212 second=194 amount=-2 +kerning first=79 second=220 amount=-1 +kerning first=70 second=65 amount=-2 +kerning first=236 second=110 amount=-1 +kerning first=377 second=214 amount=-1 +kerning first=71 second=194 amount=-1 +kerning first=218 second=363 amount=-1 +kerning first=1059 second=1089 amount=-2 +kerning first=8220 second=221 amount=-1 +kerning first=205 second=240 amount=-1 +kerning first=315 second=310 amount=-1 +kerning first=1114 second=1078 amount=-1 +kerning first=211 second=65 amount=-2 +kerning first=290 second=363 amount=-1 +kerning first=303 second=259 amount=-1 +kerning first=115 second=318 amount=-1 +kerning first=256 second=220 amount=-2 +kerning first=379 second=284 amount=-1 +kerning first=380 second=110 amount=-1 +kerning first=326 second=363 amount=-1 +kerning first=267 second=259 amount=-1 +kerning first=77 second=117 amount=-1 +kerning first=362 second=363 amount=-1 +kerning first=375 second=259 amount=-2 +kerning first=197 second=214 amount=-1 +kerning first=8250 second=241 amount=-1 +kerning first=339 second=259 amount=-1 +kerning first=256 second=318 amount=-1 +kerning first=354 second=77 amount=-1 +kerning first=264 second=330 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=90 second=259 amount=-1 +kerning first=328 second=318 amount=-1 +kerning first=282 second=77 amount=-1 +kerning first=370 second=375 amount=-1 +kerning first=268 second=369 amount=-1 +kerning first=231 second=259 amount=-1 +kerning first=232 second=369 amount=-1 +kerning first=356 second=194 amount=-3 +kerning first=1025 second=1030 amount=-1 +kerning first=336 second=330 amount=-1 +kerning first=284 second=194 amount=-1 +kerning first=100 second=254 amount=-1 +kerning first=315 second=324 amount=-1 +kerning first=258 second=374 amount=-3 +kerning first=8250 second=255 amount=-2 +kerning first=85 second=375 amount=-1 +kerning first=79 second=304 amount=-1 +kerning first=279 second=324 amount=-1 +kerning first=222 second=374 amount=-1 +kerning first=332 second=346 amount=-1 +kerning first=8220 second=235 amount=-1 +kerning first=303 second=273 amount=-1 +kerning first=241 second=254 amount=-1 +kerning first=351 second=324 amount=-1 +kerning first=209 second=279 amount=-1 +kerning first=1059 second=1103 amount=-3 +kerning first=381 second=253 amount=-2 +kerning first=298 second=375 amount=-1 +kerning first=87 second=330 amount=-1 +kerning first=231 second=273 amount=-1 +kerning first=81 second=374 amount=-1 +kerning first=218 second=377 amount=-1 +kerning first=45 second=374 amount=-2 +kerning first=304 second=369 amount=-1 +kerning first=226 second=375 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=376 second=369 amount=-1 +kerning first=256 second=234 amount=-1 +kerning first=199 second=284 amount=-2 +kerning first=1061 second=1058 amount=-1 +kerning first=362 second=377 amount=-1 +kerning first=88 second=332 amount=-1 +kerning first=1025 second=1058 amount=-1 +kerning first=66 second=310 amount=-2 +kerning first=199 second=298 amount=-1 +kerning first=232 second=355 amount=-1 +kerning first=209 second=45 amount=-2 +kerning first=290 second=377 amount=-1 +kerning first=193 second=332 amount=-1 +kerning first=196 second=355 amount=-1 +kerning first=364 second=234 amount=-1 +kerning first=264 second=344 amount=-1 +kerning first=248 second=311 amount=-1 +kerning first=90 second=287 amount=-2 +kerning first=1057 second=1043 amount=-1 +kerning first=376 second=355 amount=-1 +kerning first=1051 second=1077 amount=-1 +kerning first=195 second=287 amount=-1 +kerning first=379 second=298 amount=-1 +kerning first=220 second=234 amount=-1 +kerning first=87 second=344 amount=-1 +kerning first=77 second=363 amount=-1 +kerning first=65 second=242 amount=-1 +kerning first=203 second=313 amount=-1 +kerning first=267 second=287 amount=-1 +kerning first=195 second=8217 amount=-3 +kerning first=280 second=108 amount=-1 +kerning first=220 second=290 amount=-1 +kerning first=362 second=335 amount=-1 +kerning first=231 second=287 amount=-1 +kerning first=231 second=8217 amount=-1 +kerning first=256 second=290 amount=-1 +kerning first=354 second=105 amount=-1 +kerning first=339 second=287 amount=-1 +kerning first=267 second=8217 amount=-1 +kerning first=352 second=108 amount=-1 +kerning first=303 second=287 amount=-1 +kerning first=351 second=380 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=251 second=353 amount=-1 +kerning first=206 second=242 amount=-1 +kerning first=218 second=335 amount=-1 +kerning first=375 second=287 amount=-2 +kerning first=314 second=242 amount=-1 +kerning first=246 second=105 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=208 second=197 amount=-2 +kerning first=8218 second=252 amount=-1 +kerning first=105 second=105 amount=-1 +kerning first=1055 second=1060 amount=-1 +kerning first=1101 second=1083 amount=-1 +kerning first=1059 second=1117 amount=-2 +kerning first=243 second=380 amount=-1 +kerning first=89 second=259 amount=-2 +kerning first=280 second=197 amount=-1 +kerning first=279 second=380 amount=-1 +kerning first=201 second=225 amount=-1 +kerning first=77 second=335 amount=-1 +kerning first=78 second=119 amount=-1 +kerning first=377 second=228 amount=-1 +kerning first=315 second=380 amount=-1 +kerning first=379 second=270 amount=-1 +kerning first=113 second=335 amount=-1 +kerning first=1040 second=1038 amount=-2 +kerning first=375 second=231 amount=-1 +kerning first=352 second=197 amount=-2 +kerning first=199 second=270 amount=-1 +kerning first=339 second=8217 amount=-1 +kerning first=66 second=380 amount=-2 +kerning first=332 second=315 amount=-1 +kerning first=219 second=119 amount=-1 +kerning first=269 second=228 amount=-1 +kerning first=244 second=108 amount=-1 +kerning first=102 second=380 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=255 second=119 amount=-1 +kerning first=233 second=228 amount=-1 +kerning first=291 second=119 amount=-1 +kerning first=365 second=46 amount=-1 +kerning first=244 second=122 amount=-1 +kerning first=90 second=231 amount=-1 +kerning first=377 second=200 amount=-1 +kerning first=66 second=352 amount=-2 +kerning first=221 second=74 amount=-2 +kerning first=208 second=122 amount=-1 +kerning first=363 second=119 amount=-1 +kerning first=1006 second=1007 amount=-1 +kerning first=366 second=346 amount=-1 +kerning first=282 second=103 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=221 second=46 amount=-3 +kerning first=210 second=77 amount=-1 +kerning first=267 second=231 amount=-1 +kerning first=257 second=46 amount=-1 +kerning first=107 second=337 amount=-1 +kerning first=352 second=122 amount=-1 +kerning first=199 second=256 amount=-2 +kerning first=316 second=122 amount=-1 +kerning first=195 second=231 amount=-1 +kerning first=69 second=77 amount=-1 +kerning first=315 second=352 amount=-1 +kerning first=381 second=225 amount=-1 +kerning first=280 second=122 amount=-1 +kerning first=84 second=344 amount=-1 +kerning first=75 second=350 amount=-1 +kerning first=267 second=245 amount=-1 +kerning first=80 second=46 amount=-2 +kerning first=379 second=256 amount=-1 +kerning first=231 second=245 amount=-1 +kerning first=315 second=366 amount=-1 +kerning first=354 second=192 amount=-3 +kerning first=195 second=245 amount=-1 +kerning first=205 second=367 amount=-1 +kerning first=266 second=45 amount=-2 +kerning first=201 second=211 amount=-1 +kerning first=250 second=102 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=264 second=278 amount=-1 +kerning first=286 second=102 amount=-1 +kerning first=375 second=245 amount=-1 +kerning first=364 second=290 amount=-1 +kerning first=1063 second=1086 amount=-1 +kerning first=8250 second=227 amount=-1 +kerning first=8220 second=193 amount=-4 +kerning first=303 second=245 amount=-1 +kerning first=199 second=248 amount=-1 +kerning first=221 second=112 amount=-1 +kerning first=283 second=107 amount=-1 +kerning first=76 second=8221 amount=-2 +kerning first=193 second=171 amount=-2 +kerning first=258 second=86 amount=-3 +kerning first=229 second=171 amount=-1 +kerning first=222 second=86 amount=-1 +kerning first=8220 second=368 amount=-1 +kerning first=106 second=107 amount=-1 +kerning first=112 second=8221 amount=-1 +kerning first=347 second=105 amount=-1 +kerning first=88 second=171 amount=-2 +kerning first=275 second=105 amount=-1 +kerning first=316 second=235 amount=-1 +kerning first=8222 second=87 amount=-3 +kerning first=304 second=67 amount=-1 +kerning first=268 second=67 amount=-2 +kerning first=203 second=81 amount=-1 +kerning first=267 second=45 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=98 second=105 amount=-1 +kerning first=365 second=112 amount=-1 +kerning first=214 second=296 amount=-1 +kerning first=1062 second=1098 amount=-1 +kerning first=369 second=375 amount=-1 +kerning first=81 second=86 amount=-1 +kerning first=370 second=228 amount=-1 +kerning first=286 second=296 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=45 second=86 amount=-2 +kerning first=99 second=353 amount=-1 +kerning first=1100 second=1097 amount=-1 +kerning first=369 second=122 amount=-1 +kerning first=1036 second=1079 amount=-1 +kerning first=368 second=249 amount=-1 +kerning first=88 second=100 amount=-1 +kerning first=204 second=353 amount=-1 +kerning first=288 second=251 amount=-1 +kerning first=193 second=100 amount=-1 +kerning first=86 second=206 amount=-1 +kerning first=82 second=275 amount=-1 +kerning first=220 second=350 amount=-1 +kerning first=235 second=257 amount=-1 +kerning first=203 second=379 amount=-1 +kerning first=118 second=275 amount=-1 +kerning first=1116 second=1105 amount=-1 +kerning first=262 second=204 amount=-1 +kerning first=73 second=334 amount=-1 +kerning first=376 second=67 amount=-1 +kerning first=334 second=204 amount=-1 +kerning first=354 second=365 amount=-1 +kerning first=378 second=230 amount=-1 +kerning first=274 second=197 amount=-1 +kerning first=67 second=211 amount=-2 +kerning first=218 second=237 amount=-1 +kerning first=83 second=249 amount=-1 +kerning first=278 second=256 amount=-1 +kerning first=8217 second=212 amount=-1 +kerning first=68 second=304 amount=-1 +kerning first=313 second=268 amount=-1 +kerning first=234 second=230 amount=-1 +kerning first=224 second=249 amount=-1 +kerning first=204 second=83 amount=-1 +kerning first=260 second=249 amount=-1 +kerning first=280 second=211 amount=-1 +kerning first=205 second=268 amount=-1 +kerning first=198 second=230 amount=-1 +kerning first=1025 second=1055 amount=-1 +kerning first=350 second=256 amount=-2 +kerning first=288 second=289 amount=-1 +kerning first=70 second=339 amount=-1 +kerning first=381 second=187 amount=-1 +kerning first=199 second=106 amount=-1 +kerning first=324 second=289 amount=-1 +kerning first=122 second=244 amount=-1 +kerning first=203 second=109 amount=-1 +kerning first=352 second=374 amount=-1 +kerning first=211 second=192 amount=-2 +kerning first=278 second=284 amount=-1 +kerning first=45 second=114 amount=-1 +kerning first=275 second=109 amount=-1 +kerning first=290 second=291 amount=-1 +kerning first=263 second=244 amount=-1 +kerning first=317 second=237 amount=-1 +kerning first=206 second=284 amount=-1 +kerning first=88 second=199 amount=-1 +kerning first=370 second=232 amount=-1 +kerning first=70 second=192 amount=-2 +kerning first=281 second=237 amount=-1 +kerning first=8250 second=311 amount=-1 +kerning first=245 second=237 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=371 second=244 amount=-1 +kerning first=69 second=89 amount=-1 +kerning first=249 second=351 amount=-1 +kerning first=262 second=232 amount=-1 +kerning first=66 second=69 amount=-2 +kerning first=8222 second=361 amount=-1 +kerning first=8217 second=264 amount=-1 +kerning first=368 second=277 amount=-1 +kerning first=221 second=116 amount=-1 +kerning first=298 second=232 amount=-1 +kerning first=85 second=232 amount=-1 +kerning first=193 second=346 amount=-2 +kerning first=260 second=277 amount=-1 +kerning first=219 second=194 amount=-2 +kerning first=216 second=289 amount=-1 +kerning first=317 second=110 amount=-1 +kerning first=328 second=8217 amount=-2 +kerning first=1047 second=1034 amount=-1 +kerning first=121 second=232 amount=-1 +kerning first=296 second=277 amount=-1 +kerning first=81 second=350 amount=-1 +kerning first=268 second=327 amount=-1 +kerning first=203 second=351 amount=-1 +kerning first=198 second=202 amount=-1 +kerning first=311 second=351 amount=-1 +kerning first=45 second=350 amount=-2 +kerning first=240 second=121 amount=-1 +kerning first=378 second=254 amount=-1 +kerning first=119 second=277 amount=-1 +kerning first=275 second=351 amount=-1 +kerning first=258 second=350 amount=-2 +kerning first=376 second=327 amount=-1 +kerning first=70 second=79 amount=-1 +kerning first=1098 second=1102 amount=-1 +kerning first=99 second=121 amount=-1 +kerning first=1044 second=1095 amount=-1 +kerning first=198 second=254 amount=-1 +kerning first=119 second=305 amount=-1 +kerning first=222 second=350 amount=-1 +kerning first=283 second=367 amount=-1 +kerning first=234 second=254 amount=-1 +kerning first=70 second=233 amount=-1 +kerning first=68 second=209 amount=-1 +kerning first=315 second=252 amount=-1 +kerning first=113 second=117 amount=-1 +kerning first=216 second=261 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=330 second=350 amount=-1 +kerning first=252 second=261 amount=-1 +kerning first=70 second=367 amount=-1 +kerning first=327 second=286 amount=-1 +kerning first=366 second=350 amount=-1 +kerning first=350 second=76 amount=-1 +kerning first=288 second=261 amount=-1 +kerning first=106 second=367 amount=-1 +kerning first=199 second=260 amount=-2 +kerning first=326 second=117 amount=-1 +kerning first=368 second=305 amount=-1 +kerning first=278 second=76 amount=-1 +kerning first=290 second=117 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=347 second=351 amount=-1 +kerning first=75 second=261 amount=-1 +kerning first=1052 second=1089 amount=-1 +kerning first=221 second=344 amount=-1 +kerning first=193 second=374 amount=-3 +kerning first=362 second=117 amount=-1 +kerning first=295 second=44 amount=-1 +kerning first=8216 second=115 amount=-1 +kerning first=112 second=291 amount=-1 +kerning first=274 second=311 amount=-1 +kerning first=84 second=317 amount=-1 +kerning first=286 second=362 amount=-1 +kerning first=76 second=291 amount=-1 +kerning first=198 second=286 amount=-1 +kerning first=257 second=316 amount=-1 +kerning first=8217 second=268 amount=-1 +kerning first=376 second=331 amount=-1 +kerning first=202 second=311 amount=-1 +kerning first=118 second=271 amount=-1 +kerning first=379 second=260 amount=-1 +kerning first=8220 second=197 amount=-4 +kerning first=344 second=356 amount=-1 +kerning first=354 second=337 amount=-2 +kerning first=280 second=382 amount=-1 +kerning first=365 second=316 amount=-1 +kerning first=316 second=382 amount=-1 +kerning first=272 second=356 amount=-1 +kerning first=352 second=382 amount=-1 +kerning first=214 second=362 amount=-1 +kerning first=268 second=331 amount=-1 +kerning first=1037 second=1057 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=253 second=337 amount=-1 +kerning first=101 second=252 amount=-1 +kerning first=105 second=361 amount=-1 +kerning first=321 second=266 amount=-1 +kerning first=8218 second=121 amount=-1 +kerning first=1069 second=1056 amount=-1 +kerning first=382 second=311 amount=-1 +kerning first=346 second=311 amount=-1 +kerning first=282 second=361 amount=-1 +kerning first=368 second=45 amount=-3 +kerning first=350 second=252 amount=-1 +kerning first=310 second=227 amount=-1 +kerning first=332 second=45 amount=-1 +kerning first=1058 second=1101 amount=-1 +kerning first=374 second=201 amount=-1 +kerning first=208 second=207 amount=-1 +kerning first=274 second=227 amount=-1 +kerning first=66 second=78 amount=-2 +kerning first=336 second=70 amount=-1 +kerning first=338 second=201 amount=-1 +kerning first=280 second=207 amount=-1 +kerning first=202 second=227 amount=-1 +kerning first=328 second=44 amount=-1 +kerning first=206 second=252 amount=-1 +kerning first=1113 second=1078 amount=-1 +kerning first=224 second=121 amount=-1 +kerning first=278 second=252 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=382 second=227 amount=-1 +kerning first=327 second=246 amount=-1 +kerning first=364 second=44 amount=-3 +kerning first=314 second=252 amount=-1 +kerning first=346 second=227 amount=-1 +kerning first=291 second=246 amount=-1 +kerning first=231 second=109 amount=-1 +kerning first=89 second=201 amount=-1 +kerning first=200 second=356 amount=-1 +kerning first=80 second=84 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=255 second=246 amount=-1 +kerning first=198 second=226 amount=-1 +kerning first=355 second=103 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=222 second=90 amount=-1 +kerning first=1063 second=1104 amount=-1 +kerning first=219 second=246 amount=-1 +kerning first=234 second=226 amount=-1 +kerning first=80 second=267 amount=-1 +kerning first=208 second=382 amount=-1 +kerning first=283 second=103 amount=-1 +kerning first=325 second=291 amount=-1 +kerning first=244 second=382 amount=-1 +kerning first=224 second=45 amount=-1 +kerning first=206 second=336 amount=-1 +kerning first=289 second=291 amount=-1 +kerning first=78 second=246 amount=-1 +kerning first=1047 second=1062 amount=-1 +kerning first=211 second=103 amount=-1 +kerning first=352 second=207 amount=-1 +kerning first=253 second=291 amount=-2 +kerning first=347 second=109 amount=-1 +kerning first=378 second=226 amount=-1 +kerning first=278 second=336 amount=-1 +kerning first=217 second=291 amount=-2 +kerning first=106 second=103 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=102 second=314 amount=1 +kerning first=317 second=213 amount=-1 +kerning first=74 second=193 amount=-3 +kerning first=121 second=115 amount=-1 +kerning first=81 second=90 amount=-1 +kerning first=253 second=263 amount=-1 +kerning first=45 second=90 amount=-2 +kerning first=82 second=243 amount=-1 +kerning first=289 second=263 amount=-1 +kerning first=279 second=314 amount=-1 +kerning first=118 second=243 amount=-1 +kerning first=325 second=263 amount=-1 +kerning first=243 second=314 amount=-1 +kerning first=85 second=115 amount=-1 +kerning first=88 second=370 amount=-1 +kerning first=76 second=117 amount=-1 +kerning first=87 second=70 amount=-1 +kerning first=351 second=314 amount=-1 +kerning first=298 second=115 amount=-1 +kerning first=200 second=120 amount=-1 +kerning first=315 second=314 amount=-1 +kerning first=236 second=120 amount=-1 +kerning first=282 second=365 amount=-1 +kerning first=376 second=303 amount=-1 +kerning first=226 second=115 amount=-1 +kerning first=272 second=120 amount=-1 +kerning first=268 second=303 amount=-1 +kerning first=76 second=8249 amount=-1 +kerning first=209 second=269 amount=-1 +kerning first=262 second=115 amount=-1 +kerning first=217 second=263 amount=-1 +kerning first=315 second=78 amount=-1 +kerning first=264 second=70 amount=-1 +kerning first=198 second=198 amount=-1 +kerning first=332 second=73 amount=-1 +kerning first=105 second=365 amount=-1 +kerning first=115 second=224 amount=-1 +kerning first=209 second=213 amount=-1 +kerning first=370 second=115 amount=-1 +kerning first=316 second=108 amount=-1 +kerning first=69 second=365 amount=-1 +kerning first=338 second=338 amount=-1 +kerning first=8217 second=240 amount=-2 +kerning first=220 second=224 amount=-1 +kerning first=330 second=118 amount=-1 +kerning first=97 second=255 amount=-1 +kerning first=192 second=98 amount=-1 +kerning first=8250 second=307 amount=-1 +kerning first=194 second=116 amount=-1 +kerning first=264 second=98 amount=-1 +kerning first=361 second=8249 amount=-1 +kerning first=211 second=75 amount=-1 +kerning first=228 second=98 amount=-1 +kerning first=8220 second=227 amount=-1 +kerning first=278 second=280 amount=-1 +kerning first=364 second=224 amount=-1 +kerning first=103 second=235 amount=-1 +kerning first=236 second=328 amount=-1 +kerning first=289 second=8249 amount=-1 +kerning first=1054 second=1048 amount=-1 +kerning first=117 second=118 amount=-1 +kerning first=200 second=328 amount=-1 +kerning first=325 second=8249 amount=-2 +kerning first=1090 second=1076 amount=-1 +kerning first=350 second=280 amount=-1 +kerning first=380 second=120 amount=-1 +kerning first=232 second=303 amount=-1 +kerning first=258 second=118 amount=-2 +kerning first=199 second=232 amount=-1 +kerning first=212 second=65 amount=-2 +kerning first=253 second=8249 amount=-2 +kerning first=197 second=101 amount=-1 +kerning first=1088 second=1093 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=380 second=328 amount=-1 +kerning first=353 second=241 amount=-1 +kerning first=269 second=101 amount=-1 +kerning first=8216 second=83 amount=-1 +kerning first=256 second=375 amount=-1 +kerning first=193 second=370 amount=-2 +kerning first=196 second=84 amount=-3 +kerning first=45 second=118 amount=-2 +kerning first=1058 second=1073 amount=-1 +kerning first=90 second=325 amount=-1 +kerning first=311 second=226 amount=-1 +kerning first=377 second=101 amount=-1 +kerning first=382 second=283 amount=-1 +kerning first=67 second=324 amount=-1 +kerning first=317 second=241 amount=-1 +kerning first=310 second=283 amount=-1 +kerning first=70 second=196 amount=-2 +kerning first=281 second=241 amount=-1 +kerning first=8250 second=223 amount=-1 +kerning first=339 second=241 amount=-1 +kerning first=213 second=8220 amount=-1 +kerning first=45 second=193 amount=-2 +kerning first=344 second=338 amount=-1 +kerning first=303 second=241 amount=-1 +kerning first=67 second=118 amount=-1 +kerning first=287 second=108 amount=-1 +kerning first=86 second=290 amount=-1 +kerning first=108 second=8220 amount=-2 +kerning first=251 second=108 amount=-1 +kerning first=375 second=241 amount=-1 +kerning first=113 second=345 amount=-1 +kerning first=290 second=85 amount=-1 +kerning first=214 second=380 amount=-1 +kerning first=222 second=193 amount=-2 +kerning first=200 second=338 amount=-1 +kerning first=218 second=345 amount=-1 +kerning first=327 second=71 amount=-1 +kerning first=81 second=193 amount=-2 +kerning first=84 second=335 amount=-2 +kerning first=286 second=380 amount=-1 +kerning first=267 second=241 amount=-1 +kerning first=120 second=335 amount=-1 +kerning first=364 second=286 amount=-1 +kerning first=231 second=241 amount=-1 +kerning first=256 second=286 amount=-1 +kerning first=1069 second=1038 amount=-1 +kerning first=366 second=193 amount=-2 +kerning first=310 second=231 amount=-1 +kerning first=197 second=115 amount=-1 +kerning first=362 second=345 amount=-1 +kerning first=113 second=361 amount=-1 +kerning first=90 second=241 amount=-1 +kerning first=69 second=304 amount=-1 +kerning first=362 second=331 amount=-1 +kerning first=220 second=286 amount=-1 +kerning first=1058 second=1083 amount=-1 +kerning first=1073 second=1113 amount=-1 +kerning first=108 second=248 amount=-1 +kerning first=305 second=115 amount=-1 +kerning first=8216 second=97 amount=-1 +kerning first=272 second=78 amount=-1 +kerning first=76 second=323 amount=-1 +kerning first=110 second=108 amount=-1 +kerning first=233 second=115 amount=-1 +kerning first=218 second=331 amount=-1 +kerning first=72 second=248 amount=-1 +kerning first=278 second=81 amount=-1 +kerning first=382 second=231 amount=-1 +kerning first=269 second=115 amount=-1 +kerning first=74 second=122 amount=-1 +kerning first=267 second=255 amount=-1 +kerning first=272 second=352 amount=-1 +kerning first=231 second=255 amount=-1 +kerning first=113 second=331 amount=-1 +kerning first=105 second=355 amount=-1 +kerning first=382 second=245 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=344 second=352 amount=-1 +kerning first=115 second=252 amount=-1 +kerning first=310 second=245 amount=-1 +kerning first=251 second=122 amount=-1 +kerning first=1069 second=1052 amount=-1 +kerning first=90 second=255 amount=-2 +kerning first=264 second=298 amount=-1 +kerning first=76 second=77 amount=-1 +kerning first=72 second=262 amount=-1 +kerning first=87 second=278 amount=-1 +kerning first=222 second=207 amount=-1 +kerning first=214 second=366 amount=-1 +kerning first=364 second=252 amount=-1 +kerning first=89 second=233 amount=-2 +kerning first=1059 second=1085 amount=-2 +kerning first=1006 second=997 amount=-1 +kerning first=1058 second=1097 amount=-1 +kerning first=194 second=233 amount=-1 +kerning first=336 second=278 amount=-1 +kerning first=335 second=316 amount=-1 +kerning first=45 second=207 amount=-3 +kerning first=302 second=233 amount=-1 +kerning first=220 second=252 amount=-1 +kerning first=1025 second=1040 amount=-1 +kerning first=81 second=207 amount=-1 +kerning first=266 second=233 amount=-1 +kerning first=351 second=328 amount=-1 +kerning first=256 second=252 amount=-1 +kerning first=202 second=250 amount=-1 +kerning first=374 second=233 amount=-2 +kerning first=200 second=352 amount=-1 +kerning first=315 second=328 amount=-1 +kerning first=279 second=328 amount=-1 +kerning first=328 second=252 amount=-1 +kerning first=66 second=110 amount=-1 +kerning first=296 second=333 amount=-1 +kerning first=250 second=106 amount=-1 +kerning first=286 second=106 amount=-1 +kerning first=282 second=87 amount=-1 +kerning first=199 second=288 amount=-2 +kerning first=368 second=333 amount=-1 +kerning first=227 second=121 amount=-1 +kerning first=330 second=378 amount=-1 +kerning first=210 second=87 amount=-1 +kerning first=279 second=110 amount=-1 +kerning first=119 second=333 amount=-1 +kerning first=69 second=87 amount=-1 +kerning first=315 second=110 amount=-1 +kerning first=260 second=333 amount=-1 +kerning first=351 second=110 amount=-1 +kerning first=366 second=378 amount=-1 +kerning first=377 second=210 amount=-1 +kerning first=217 second=281 amount=-1 +kerning first=376 second=99 amount=-2 +kerning first=218 second=65 amount=-2 +kerning first=8220 second=225 amount=-1 +kerning first=253 second=281 amount=-1 +kerning first=382 second=307 amount=-1 +kerning first=1059 second=1099 amount=-2 +kerning first=8216 second=192 amount=-4 +kerning first=105 second=347 amount=-1 +kerning first=289 second=281 amount=-1 +kerning first=290 second=65 amount=-1 +kerning first=212 second=198 amount=-2 +kerning first=381 second=243 amount=-1 +kerning first=321 second=262 amount=-1 +kerning first=69 second=347 amount=-1 +kerning first=325 second=281 amount=-1 +kerning first=362 second=65 amount=-2 +kerning first=278 second=326 amount=-1 +kerning first=379 second=288 amount=-1 +kerning first=314 second=326 amount=-1 +kerning first=8250 second=237 amount=-1 +kerning first=350 second=326 amount=-1 +kerning first=230 second=249 amount=-1 +kerning first=105 second=351 amount=-1 +kerning first=214 second=120 amount=-1 +kerning first=250 second=120 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=282 second=261 amount=-1 +kerning first=87 second=80 amount=-1 +kerning first=315 second=68 amount=-1 +kerning first=282 second=73 amount=-1 +kerning first=201 second=229 amount=-1 +kerning first=284 second=198 amount=-1 +kerning first=379 second=274 amount=-1 +kerning first=220 second=346 amount=-1 +kerning first=84 second=377 amount=-1 +kerning first=354 second=73 amount=-1 +kerning first=304 second=99 amount=-1 +kerning first=356 second=198 amount=-3 +kerning first=268 second=99 amount=-1 +kerning first=268 second=113 amount=-1 +kerning first=289 second=267 amount=-1 +kerning first=316 second=118 amount=-1 +kerning first=325 second=267 amount=-1 +kerning first=336 second=80 amount=-1 +kerning first=280 second=118 amount=-1 +kerning first=80 second=263 amount=-1 +kerning first=66 second=68 amount=-2 +kerning first=196 second=113 amount=-1 +kerning first=210 second=73 amount=-1 +kerning first=217 second=267 amount=-1 +kerning first=1058 second=1077 amount=-1 +kerning first=253 second=267 amount=-1 +kerning first=352 second=118 amount=-1 +kerning first=376 second=113 amount=-2 +kerning first=303 second=234 amount=-1 +kerning first=103 second=118 amount=-1 +kerning first=321 second=8220 amount=-2 +kerning first=287 second=107 amount=-1 +kerning first=244 second=118 amount=-1 +kerning first=304 second=113 amount=-1 +kerning first=109 second=106 amount=-1 +kerning first=69 second=73 amount=-1 +kerning first=200 second=332 amount=-1 +kerning first=264 second=80 amount=-1 +kerning first=377 second=196 amount=-1 +kerning first=97 second=287 amount=-1 +kerning first=216 second=219 amount=-1 +kerning first=256 second=244 amount=-1 +kerning first=99 second=111 amount=-1 +kerning first=313 second=264 amount=-1 +kerning first=202 second=287 amount=-1 +kerning first=204 second=111 amount=-1 +kerning first=75 second=219 amount=-1 +kerning first=364 second=244 amount=-1 +kerning first=200 second=86 amount=-1 +kerning first=108 second=242 amount=-1 +kerning first=274 second=287 amount=-1 +kerning first=263 second=234 amount=-1 +kerning first=258 second=199 amount=-1 +kerning first=81 second=364 amount=-1 +kerning first=113 second=339 amount=-1 +kerning first=205 second=264 amount=-1 +kerning first=224 second=8217 amount=-1 +kerning first=45 second=364 amount=-2 +kerning first=8222 second=291 amount=-1 +kerning first=346 second=287 amount=-1 +kerning first=260 second=8217 amount=-3 +kerning first=330 second=199 amount=-1 +kerning first=310 second=287 amount=-1 +kerning first=371 second=234 amount=-1 +kerning first=197 second=121 amount=-1 +kerning first=104 second=289 amount=-1 +kerning first=315 second=334 amount=-1 +kerning first=368 second=262 amount=-1 +kerning first=258 second=364 amount=-2 +kerning first=74 second=197 amount=-3 +kerning first=382 second=287 amount=-1 +kerning first=209 second=289 amount=-1 +kerning first=245 second=289 amount=-1 +kerning first=107 second=254 amount=-1 +kerning first=281 second=289 amount=-1 +kerning first=350 second=66 amount=-1 +kerning first=317 second=289 amount=-1 +kerning first=353 second=289 amount=-1 +kerning first=187 second=209 amount=-3 +kerning first=8250 second=270 amount=-3 +kerning first=85 second=119 amount=-1 +kerning first=121 second=119 amount=-1 +kerning first=220 second=244 amount=-1 +kerning first=8220 second=231 amount=-1 +kerning first=78 second=8249 amount=-2 +kerning first=71 second=330 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=288 second=205 amount=-1 +kerning first=364 second=230 amount=-2 +kerning first=226 second=119 amount=-1 +kerning first=192 second=354 amount=-3 +kerning first=262 second=119 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=377 second=121 amount=-2 +kerning first=369 second=117 amount=-1 +kerning first=200 second=72 amount=-1 +kerning first=298 second=119 amount=-1 +kerning first=264 second=354 amount=-1 +kerning first=313 second=250 amount=-1 +kerning first=305 second=121 amount=-1 +kerning first=272 second=72 amount=-1 +kerning first=8216 second=103 amount=-2 +kerning first=220 second=230 amount=-2 +kerning first=370 second=119 amount=-1 +kerning first=336 second=354 amount=-1 +kerning first=277 second=250 amount=-1 +kerning first=269 second=121 amount=-1 +kerning first=79 second=230 amount=-1 +kerning first=1061 second=1054 amount=-2 +kerning first=264 second=74 amount=-1 +kerning first=233 second=121 amount=-1 +kerning first=115 second=230 amount=-1 +kerning first=1025 second=1054 amount=-1 +kerning first=344 second=86 amount=-1 +kerning first=366 second=199 amount=-1 +kerning first=187 second=195 amount=-2 +kerning first=336 second=74 amount=-1 +kerning first=311 second=100 amount=-1 +kerning first=117 second=378 amount=-1 +kerning first=233 second=107 amount=-1 +kerning first=100 second=250 amount=-1 +kerning first=272 second=86 amount=-1 +kerning first=84 second=117 amount=-1 +kerning first=241 second=250 amount=-1 +kerning first=83 second=8217 amount=-1 +kerning first=222 second=378 amount=-1 +kerning first=356 second=240 amount=-2 +kerning first=8216 second=89 amount=-1 +kerning first=8217 second=350 amount=-1 +kerning first=120 second=117 amount=-1 +kerning first=379 second=76 amount=-1 +kerning first=261 second=117 amount=-1 +kerning first=81 second=378 amount=-1 +kerning first=197 second=107 amount=-1 +kerning first=288 second=219 amount=-1 +kerning first=225 second=117 amount=-1 +kerning first=45 second=378 amount=-3 +kerning first=283 second=363 amount=-1 +kerning first=66 second=116 amount=-1 +kerning first=313 second=194 amount=-1 +kerning first=108 second=318 amount=-1 +kerning first=107 second=240 amount=-1 +kerning first=214 second=310 amount=-1 +kerning first=379 second=330 amount=-1 +kerning first=347 second=355 amount=-1 +kerning first=1030 second=1089 amount=-1 +kerning first=249 second=318 amount=-1 +kerning first=298 second=214 amount=-1 +kerning first=8249 second=221 amount=-2 +kerning first=262 second=214 amount=-2 +kerning first=86 second=220 amount=-1 +kerning first=87 second=298 amount=-1 +kerning first=321 second=318 amount=-1 +kerning first=370 second=214 amount=-1 +kerning first=277 second=241 amount=-1 +kerning first=296 second=259 amount=-1 +kerning first=218 second=71 amount=-1 +kerning first=85 second=214 amount=-1 +kerning first=351 second=116 amount=-1 +kerning first=305 second=375 amount=-1 +kerning first=323 second=122 amount=-1 +kerning first=368 second=259 amount=-2 +kerning first=269 second=375 amount=-1 +kerning first=287 second=122 amount=-1 +kerning first=332 second=259 amount=-1 +kerning first=233 second=375 amount=-1 +kerning first=77 second=71 amount=-1 +kerning first=119 second=259 amount=-2 +kerning first=80 second=296 amount=-1 +kerning first=83 second=259 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=321 second=304 amount=-1 +kerning first=279 second=116 amount=-1 +kerning first=377 second=375 amount=-2 +kerning first=334 second=228 amount=-1 +kerning first=213 second=304 amount=-1 +kerning first=82 second=251 amount=-1 +kerning first=347 second=369 amount=-1 +kerning first=374 second=253 amount=-1 +kerning first=8217 second=115 amount=-1 +kerning first=379 second=344 amount=-1 +kerning first=221 second=296 amount=-1 +kerning first=262 second=228 amount=-1 +kerning first=75 second=279 amount=-1 +kerning first=187 second=251 amount=-1 +kerning first=1039 second=1089 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=259 second=251 amount=-1 +kerning first=203 second=369 amount=-1 +kerning first=197 second=375 amount=-1 +kerning first=121 second=228 amount=-1 +kerning first=85 second=228 amount=-1 +kerning first=331 second=251 amount=-1 +kerning first=275 second=369 amount=-1 +kerning first=1043 second=1097 amount=-1 +kerning first=295 second=251 amount=-1 +kerning first=368 second=100 amount=-1 +kerning first=86 second=234 amount=-2 +kerning first=198 second=206 amount=-1 +kerning first=367 second=251 amount=-1 +kerning first=119 second=273 amount=-1 +kerning first=122 second=234 amount=-1 +kerning first=89 second=253 amount=-1 +kerning first=264 second=284 amount=-2 +kerning first=70 second=363 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=106 second=363 amount=-1 +kerning first=230 second=253 amount=-1 +kerning first=211 second=45 amount=-1 +kerning first=263 second=365 amount=-1 +kerning first=275 second=355 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=302 second=253 amount=-1 +kerning first=8220 second=382 amount=-1 +kerning first=242 second=318 amount=-1 +kerning first=45 second=370 amount=-2 +kerning first=296 second=263 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=211 second=83 amount=-1 +kerning first=376 second=313 amount=-1 +kerning first=80 second=310 amount=-1 +kerning first=314 second=318 amount=-1 +kerning first=198 second=268 amount=-1 +kerning first=268 second=313 amount=-1 +kerning first=368 second=263 amount=-1 +kerning first=81 second=370 amount=-1 +kerning first=90 second=315 amount=-1 +kerning first=356 second=216 amount=-1 +kerning first=222 second=370 amount=-1 +kerning first=119 second=263 amount=-1 +kerning first=8222 second=105 amount=-1 +kerning first=1114 second=1074 amount=-1 +kerning first=221 second=310 amount=-1 +kerning first=258 second=370 amount=-2 +kerning first=354 second=355 amount=-1 +kerning first=283 second=353 amount=-1 +kerning first=278 second=270 amount=-1 +kerning first=98 second=303 amount=-1 +kerning first=1051 second=1105 amount=-1 +kerning first=103 second=225 amount=-1 +kerning first=347 second=365 amount=-1 +kerning first=1062 second=1060 amount=-1 +kerning first=347 second=303 amount=-1 +kerning first=106 second=353 amount=-1 +kerning first=275 second=365 amount=-1 +kerning first=366 second=118 amount=-1 +kerning first=203 second=365 amount=-1 +kerning first=198 second=220 amount=-1 +kerning first=316 second=225 amount=-1 +kerning first=1025 second=1048 amount=-1 +kerning first=352 second=225 amount=-1 +kerning first=1051 second=1095 amount=-1 +kerning first=365 second=98 amount=-1 +kerning first=1037 second=1105 amount=-1 +kerning first=379 second=280 amount=-1 +kerning first=290 second=259 amount=-1 +kerning first=225 second=8249 amount=-1 +kerning first=362 second=74 amount=-1 +kerning first=350 second=270 amount=-1 +kerning first=327 second=228 amount=-1 +kerning first=8220 second=217 amount=-1 +kerning first=208 second=225 amount=-1 +kerning first=193 second=350 amount=-2 +kerning first=291 second=228 amount=-1 +kerning first=257 second=98 amount=-1 +kerning first=255 second=228 amount=-1 +kerning first=280 second=225 amount=-1 +kerning first=353 second=44 amount=-1 +kerning first=88 second=350 amount=-1 +kerning first=381 second=235 amount=-1 +kerning first=214 second=46 amount=-1 +kerning first=334 second=218 amount=-1 +kerning first=99 second=363 amount=-1 +kerning first=250 second=46 amount=-1 +kerning first=289 second=273 amount=-1 +kerning first=286 second=46 amount=-1 +kerning first=262 second=218 amount=-1 +kerning first=78 second=228 amount=-1 +kerning first=253 second=273 amount=-1 +kerning first=365 second=102 amount=-1 +kerning first=204 second=363 amount=-1 +kerning first=90 second=305 amount=-1 +kerning first=65 second=318 amount=-1 +kerning first=203 second=252 amount=-1 +kerning first=73 second=46 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=332 second=325 amount=-1 +kerning first=8220 second=122 amount=-1 +kerning first=109 second=46 amount=-1 +kerning first=303 second=305 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=1057 second=1025 amount=-1 +kerning first=221 second=102 amount=-1 +kerning first=267 second=305 amount=-1 +kerning first=282 second=81 amount=-1 +kerning first=193 second=86 amount=-3 +kerning first=198 second=216 amount=-1 +kerning first=375 second=305 amount=-1 +kerning first=323 second=211 amount=-1 +kerning first=339 second=305 amount=-1 +kerning first=235 second=291 amount=-1 +kerning first=8250 second=287 amount=-1 +kerning first=367 second=261 amount=-1 +kerning first=84 second=67 amount=-1 +kerning first=88 second=86 amount=-1 +kerning first=250 second=112 amount=-1 +kerning first=253 second=230 amount=-2 +kerning first=8217 second=198 amount=-3 +kerning first=278 second=260 amount=-1 +kerning first=203 second=381 amount=-1 +kerning first=187 second=261 amount=-1 +kerning first=350 second=260 amount=-2 +kerning first=192 second=240 amount=-1 +kerning first=216 second=209 amount=-1 +kerning first=344 second=171 amount=-2 +kerning first=84 second=327 amount=-1 +kerning first=380 second=171 amount=-2 +kerning first=283 second=121 amount=-1 +kerning first=377 second=204 amount=-1 +kerning first=376 second=105 amount=-1 +kerning first=268 second=105 amount=-1 +kerning first=277 second=254 amount=-1 +kerning first=330 second=100 amount=-1 +kerning first=69 second=81 amount=-1 +kerning first=200 second=171 amount=-1 +kerning first=313 second=254 amount=-1 +kerning first=368 second=335 amount=-1 +kerning first=366 second=100 amount=-1 +kerning first=236 second=171 amount=-1 +kerning first=288 second=209 amount=-1 +kerning first=232 second=105 amount=-1 +kerning first=272 second=171 amount=-1 +kerning first=231 second=249 amount=-1 +kerning first=200 second=346 amount=-1 +kerning first=263 second=230 amount=-1 +kerning first=267 second=249 amount=-1 +kerning first=86 second=282 amount=-1 +kerning first=122 second=230 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=268 second=379 amount=-1 +kerning first=258 second=100 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=70 second=353 amount=-1 +kerning first=344 second=346 amount=-1 +kerning first=86 second=230 amount=-2 +kerning first=353 second=223 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=303 second=249 amount=-1 +kerning first=272 second=346 amount=-1 +kerning first=68 second=289 amount=-1 +kerning first=1088 second=1103 amount=-1 +kerning first=207 second=334 amount=-1 +kerning first=376 second=379 amount=-1 +kerning first=288 second=380 amount=-1 +kerning first=99 second=107 amount=-1 +kerning first=231 second=113 amount=-1 +kerning first=317 second=223 amount=-1 +kerning first=218 second=339 amount=-1 +kerning first=193 second=244 amount=-1 +kerning first=371 second=230 amount=-1 +kerning first=321 second=256 amount=-1 +kerning first=90 second=249 amount=-1 +kerning first=1052 second=1054 amount=-1 +kerning first=260 second=252 amount=-1 +kerning first=74 second=211 amount=-1 +kerning first=362 second=339 amount=-1 +kerning first=213 second=256 amount=-2 +kerning first=8217 second=250 amount=-1 +kerning first=211 second=89 amount=-1 +kerning first=76 second=69 amount=-1 +kerning first=289 second=255 amount=-1 +kerning first=72 second=44 amount=-1 +kerning first=350 second=374 amount=-1 +kerning first=192 second=84 amount=-3 +kerning first=376 second=109 amount=-1 +kerning first=362 second=79 amount=-1 +kerning first=374 second=187 amount=-1 +kerning first=268 second=109 amount=-1 +kerning first=382 second=237 amount=-1 +kerning first=109 second=314 amount=-1 +kerning first=336 second=84 amount=-1 +kerning first=232 second=109 amount=-1 +kerning first=346 second=237 amount=-1 +kerning first=282 second=8249 amount=-1 +kerning first=1098 second=1116 amount=-1 +kerning first=117 second=104 amount=-1 +kerning first=230 second=187 amount=-1 +kerning first=208 second=217 amount=-1 +kerning first=311 second=99 amount=-1 +kerning first=210 second=8249 amount=-1 +kerning first=45 second=104 amount=-1 +kerning first=280 second=217 amount=-1 +kerning first=250 second=314 amount=-1 +kerning first=353 second=227 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=255 second=232 amount=-1 +kerning first=352 second=217 amount=-1 +kerning first=258 second=104 amount=-1 +kerning first=249 second=44 amount=-1 +kerning first=86 second=224 amount=-2 +kerning first=213 second=44 amount=-1 +kerning first=291 second=232 amount=-1 +kerning first=89 second=187 amount=-1 +kerning first=78 second=232 amount=-1 +kerning first=253 second=277 amount=-1 +kerning first=69 second=351 amount=-1 +kerning first=71 second=203 amount=-1 +kerning first=82 second=257 amount=-1 +kerning first=101 second=326 amount=-1 +kerning first=217 second=277 amount=-1 +kerning first=122 second=224 amount=-1 +kerning first=381 second=280 amount=-1 +kerning first=325 second=277 amount=-1 +kerning first=263 second=224 amount=-1 +kerning first=1043 second=1051 amount=-3 +kerning first=289 second=277 amount=-1 +kerning first=221 second=302 amount=-1 +kerning first=354 second=347 amount=-2 +kerning first=99 second=371 amount=-1 +kerning first=313 second=202 amount=-1 +kerning first=354 second=8249 amount=-3 +kerning first=282 second=347 amount=-1 +kerning first=80 second=302 amount=-1 +kerning first=246 second=347 amount=-1 +kerning first=371 second=224 amount=-1 +kerning first=99 second=101 amount=-1 +kerning first=77 second=79 amount=-1 +kerning first=354 second=351 amount=-2 +kerning first=8217 second=194 amount=-3 +kerning first=204 second=101 amount=-1 +kerning first=198 second=212 amount=-1 +kerning first=82 second=261 amount=-1 +kerning first=119 second=267 amount=-1 +kerning first=367 second=257 amount=-1 +kerning first=118 second=261 amount=-2 +kerning first=1113 second=1096 amount=-1 +kerning first=246 second=351 amount=-1 +kerning first=1043 second=1047 amount=-1 +kerning first=368 second=267 amount=-1 +kerning first=204 second=367 amount=-1 +kerning first=260 second=267 amount=-1 +kerning first=228 second=103 amount=-1 +kerning first=187 second=257 amount=-1 +kerning first=350 second=8220 amount=-1 +kerning first=218 second=79 amount=-1 +kerning first=282 second=351 amount=-1 +kerning first=99 second=367 amount=-1 +kerning first=107 second=246 amount=-1 +kerning first=202 second=241 amount=-1 +kerning first=287 second=382 amount=-1 +kerning first=67 second=221 amount=-1 +kerning first=246 second=291 amount=-1 +kerning first=323 second=382 amount=-1 +kerning first=278 second=266 amount=-1 +kerning first=375 second=311 amount=-1 +kerning first=210 second=291 amount=-1 +kerning first=274 second=241 amount=-1 +kerning first=339 second=311 amount=-1 +kerning first=221 second=362 amount=-1 +kerning first=1044 second=1057 amount=-1 +kerning first=331 second=8221 amount=-2 +kerning first=280 second=352 amount=-1 +kerning first=303 second=311 amount=-1 +kerning first=105 second=291 amount=-1 +kerning first=217 second=337 amount=-1 +kerning first=122 second=226 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=83 second=8221 amount=-1 +kerning first=267 second=311 amount=-1 +kerning first=69 second=291 amount=-1 +kerning first=231 second=311 amount=-1 +kerning first=1069 second=1042 amount=-1 +kerning first=195 second=311 amount=-1 +kerning first=251 second=382 amount=-1 +kerning first=84 second=113 amount=-2 +kerning first=260 second=8221 amount=-3 +kerning first=203 second=361 amount=-1 +kerning first=325 second=337 amount=-1 +kerning first=277 second=316 amount=-1 +kerning first=289 second=337 amount=-1 +kerning first=275 second=361 amount=-1 +kerning first=109 second=316 amount=-1 +kerning first=352 second=221 amount=-1 +kerning first=81 second=368 amount=-1 +kerning first=347 second=361 amount=-1 +kerning first=280 second=221 amount=-1 +kerning first=250 second=316 amount=-1 +kerning first=332 second=8221 amount=-1 +kerning first=122 second=45 amount=-2 +kerning first=336 second=83 amount=-1 +kerning first=84 second=331 amount=-1 +kerning first=208 second=221 amount=-1 +kerning first=45 second=368 amount=-2 +kerning first=200 second=78 amount=-1 +kerning first=258 second=368 amount=-2 +kerning first=219 second=97 amount=-2 +kerning first=204 second=103 amount=-1 +kerning first=249 second=252 amount=-1 +kerning first=231 second=45 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=377 second=115 amount=-1 +kerning first=68 second=227 amount=-1 +kerning first=195 second=353 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=222 second=368 amount=-1 +kerning first=376 second=317 amount=-1 +kerning first=72 second=252 amount=-1 +kerning first=281 second=227 amount=-1 +kerning first=375 second=45 amount=-2 +kerning first=108 second=252 amount=-1 +kerning first=379 second=70 amount=-1 +kerning first=86 second=257 amount=-2 +kerning first=209 second=227 amount=-1 +kerning first=332 second=323 amount=-1 +kerning first=303 second=307 amount=-1 +kerning first=199 second=336 amount=-2 +kerning first=377 second=381 amount=-1 +kerning first=268 second=317 amount=-1 +kerning first=356 second=246 amount=-1 +kerning first=187 second=201 amount=-3 +kerning first=371 second=226 amount=-1 +kerning first=255 second=339 amount=-1 +kerning first=193 second=356 amount=-3 +kerning first=8218 second=318 amount=-1 +kerning first=74 second=382 amount=-1 +kerning first=90 second=45 amount=-1 +kerning first=88 second=356 amount=-1 +kerning first=379 second=336 amount=-1 +kerning first=379 second=278 amount=-1 +kerning first=195 second=45 amount=-2 +kerning first=280 second=223 amount=-1 +kerning first=214 second=356 amount=-1 +kerning first=1059 second=1095 amount=-2 +kerning first=117 second=382 amount=-1 +kerning first=236 second=116 amount=-1 +kerning first=203 second=45 amount=-1 +kerning first=113 second=369 amount=-1 +kerning first=268 second=103 amount=-1 +kerning first=205 second=246 amount=-1 +kerning first=279 second=103 amount=-1 +kerning first=222 second=382 amount=-1 +kerning first=218 second=369 amount=-1 +kerning first=196 second=103 amount=-1 +kerning first=344 second=362 amount=-1 +kerning first=347 second=45 amount=-1 +kerning first=82 second=253 amount=-1 +kerning first=311 second=45 amount=-2 +kerning first=77 second=369 amount=-1 +kerning first=45 second=382 amount=-3 +kerning first=81 second=382 amount=-1 +kerning first=187 second=253 amount=-2 +kerning first=90 second=279 amount=-1 +kerning first=245 second=303 amount=-1 +kerning first=204 second=375 amount=-1 +kerning first=200 second=362 amount=-1 +kerning first=69 second=67 amount=-1 +kerning first=363 second=226 amount=-1 +kerning first=84 second=65 amount=-3 +kerning first=222 second=122 amount=-1 +kerning first=195 second=279 amount=-1 +kerning first=232 second=363 amount=-1 +kerning first=99 second=375 amount=-1 +kerning first=272 second=362 amount=-1 +kerning first=1113 second=1102 amount=-1 +kerning first=268 second=363 amount=-1 +kerning first=117 second=122 amount=-1 +kerning first=362 second=109 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=304 second=363 amount=-1 +kerning first=326 second=369 amount=-1 +kerning first=380 second=116 amount=-1 +kerning first=290 second=369 amount=-1 +kerning first=330 second=382 amount=-1 +kerning first=344 second=116 amount=-1 +kerning first=286 second=356 amount=-1 +kerning first=376 second=363 amount=-1 +kerning first=330 second=122 amount=-1 +kerning first=366 second=382 amount=-1 +kerning first=362 second=369 amount=-1 +kerning first=218 second=109 amount=-1 +kerning first=240 second=375 amount=-1 +kerning first=66 second=298 amount=-2 +kerning first=8222 second=287 amount=-1 +kerning first=1039 second=1095 amount=-1 +kerning first=375 second=279 amount=-1 +kerning first=275 second=305 amount=-1 +kerning first=240 second=115 amount=-1 +kerning first=214 second=370 amount=-1 +kerning first=87 second=336 amount=-1 +kerning first=1047 second=1070 amount=-1 +kerning first=347 second=305 amount=-1 +kerning first=113 second=355 amount=-1 +kerning first=267 second=279 amount=-1 +kerning first=286 second=370 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=231 second=279 amount=-1 +kerning first=196 second=89 amount=-3 +kerning first=8250 second=261 amount=-1 +kerning first=264 second=336 amount=-2 +kerning first=303 second=279 amount=-1 +kerning first=1069 second=1062 amount=-1 +kerning first=268 second=89 amount=-1 +kerning first=223 second=253 amount=-1 +kerning first=259 second=253 amount=-1 +kerning first=87 second=380 amount=-2 +kerning first=295 second=253 amount=-1 +kerning first=331 second=253 amount=-1 +kerning first=1073 second=1103 amount=-1 +kerning first=367 second=253 amount=-1 +kerning first=286 second=82 amount=-1 +kerning first=80 second=66 amount=-1 +kerning first=1069 second=1048 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=366 second=230 amount=-2 +kerning first=82 second=225 amount=-1 +kerning first=45 second=108 amount=-1 +kerning first=118 second=225 amount=-2 +kerning first=262 second=196 amount=-2 +kerning first=187 second=225 amount=-1 +kerning first=370 second=196 amount=-2 +kerning first=117 second=108 amount=-1 +kerning first=196 second=335 amount=-1 +kerning first=334 second=196 amount=-2 +kerning first=376 second=75 amount=-1 +kerning first=207 second=332 amount=-1 +kerning first=282 second=315 amount=-1 +kerning first=85 second=196 amount=-2 +kerning first=197 second=116 amount=-1 +kerning first=354 second=315 amount=-1 +kerning first=78 second=115 amount=-1 +kerning first=258 second=108 amount=-1 +kerning first=280 second=203 amount=-1 +kerning first=245 second=8217 amount=-1 +kerning first=208 second=203 amount=-1 +kerning first=321 second=286 amount=-1 +kerning first=220 second=242 amount=-1 +kerning first=317 second=8217 amount=-2 +kerning first=200 second=102 amount=-1 +kerning first=313 second=218 amount=-1 +kerning first=235 second=46 amount=-2 +kerning first=204 second=115 amount=-1 +kerning first=97 second=8221 amount=-1 +kerning first=86 second=269 amount=-2 +kerning first=68 second=8217 amount=-1 +kerning first=256 second=242 amount=-1 +kerning first=209 second=231 amount=-1 +kerning first=307 second=46 amount=-1 +kerning first=364 second=242 amount=-1 +kerning first=99 second=115 amount=-1 +kerning first=367 second=225 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=218 second=81 amount=-1 +kerning first=72 second=286 amount=-1 +kerning first=217 second=67 amount=-1 +kerning first=231 second=307 amount=-1 +kerning first=267 second=307 amount=-1 +kerning first=209 second=245 amount=-1 +kerning first=197 second=119 amount=-2 +kerning first=199 second=46 amount=-1 +kerning first=85 second=210 amount=-1 +kerning first=76 second=67 amount=-1 +kerning first=81 second=122 amount=-1 +kerning first=233 second=119 amount=-1 +kerning first=8250 second=289 amount=-1 +kerning first=339 second=307 amount=-1 +kerning first=236 second=102 amount=-1 +kerning first=45 second=122 amount=-3 +kerning first=269 second=119 amount=-1 +kerning first=375 second=307 amount=-1 +kerning first=67 second=217 amount=-1 +kerning first=305 second=119 amount=-1 +kerning first=310 second=8221 amount=-1 +kerning first=356 second=74 amount=-2 +kerning first=65 second=8217 amount=-3 +kerning first=263 second=252 amount=-1 +kerning first=376 second=335 amount=-2 +kerning first=377 second=119 amount=-1 +kerning first=1056 second=1062 amount=-1 +kerning first=80 second=344 amount=-1 +kerning first=1047 second=1042 amount=-1 +kerning first=313 second=204 amount=-1 +kerning first=371 second=252 amount=-1 +kerning first=86 second=252 amount=-1 +kerning first=353 second=259 amount=-1 +kerning first=119 second=269 amount=-1 +kerning first=122 second=252 amount=-1 +kerning first=268 second=335 amount=-1 +kerning first=1067 second=1086 amount=-1 +kerning first=325 second=67 amount=-1 +kerning first=304 second=335 amount=-1 +kerning first=77 second=81 amount=-1 +kerning first=227 second=252 amount=-1 +kerning first=105 second=104 amount=-1 +kerning first=333 second=353 amount=-1 +kerning first=296 second=269 amount=-1 +kerning first=337 second=378 amount=-1 +kerning first=369 second=365 amount=-1 +kerning first=369 second=353 amount=-1 +kerning first=260 second=269 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=346 second=378 amount=-1 +kerning first=368 second=269 amount=-1 +kerning first=198 second=262 amount=-1 +kerning first=261 second=365 amount=-1 +kerning first=351 second=112 amount=-1 +kerning first=251 second=171 amount=-1 +kerning first=225 second=365 amount=-1 +kerning first=315 second=112 amount=-1 +kerning first=225 second=353 amount=-1 +kerning first=287 second=171 amount=-1 +kerning first=8217 second=244 amount=-2 +kerning first=279 second=112 amount=-1 +kerning first=261 second=353 amount=-1 +kerning first=323 second=171 amount=-2 +kerning first=120 second=365 amount=-1 +kerning first=243 second=112 amount=-1 +kerning first=382 second=249 amount=-1 +kerning first=278 second=288 amount=-1 +kerning first=382 second=275 amount=-1 +kerning first=203 second=87 amount=-1 +kerning first=102 second=100 amount=-1 +kerning first=310 second=249 amount=-1 +kerning first=84 second=353 amount=-2 +kerning first=1048 second=1086 amount=-1 +kerning first=310 second=275 amount=-1 +kerning first=120 second=353 amount=-1 +kerning first=207 second=100 amount=-1 +kerning first=80 second=354 amount=-1 +kerning first=221 second=352 amount=-2 +kerning first=370 second=210 amount=-1 +kerning first=201 second=365 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=88 second=366 amount=-1 +kerning first=266 second=223 amount=-1 +kerning first=1054 second=1052 amount=-1 +kerning first=1098 second=1078 amount=-1 +kerning first=374 second=223 amount=-1 +kerning first=298 second=210 amount=-1 +kerning first=206 second=288 amount=-1 +kerning first=70 second=113 amount=-1 +kerning first=262 second=210 amount=-2 +kerning first=87 second=296 amount=-1 +kerning first=97 second=249 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=85 second=277 amount=-1 +kerning first=270 second=8220 amount=-1 +kerning first=234 second=8220 amount=-1 +kerning first=264 second=296 amount=-1 +kerning first=278 second=274 amount=-1 +kerning first=274 second=249 amount=-1 +kerning first=97 second=289 amount=-1 +kerning first=1058 second=1079 amount=-1 +kerning first=336 second=296 amount=-1 +kerning first=86 second=370 amount=-1 +kerning first=202 second=249 amount=-1 +kerning first=202 second=289 amount=-1 +kerning first=76 second=327 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=219 second=198 amount=-2 +kerning first=346 second=8249 amount=-1 +kerning first=374 second=237 amount=-1 +kerning first=310 second=263 amount=-1 +kerning first=382 second=8249 amount=-2 +kerning first=120 second=339 amount=-1 +kerning first=274 second=8249 amount=-1 +kerning first=109 second=363 amount=-1 +kerning first=350 second=274 amount=-1 +kerning first=382 second=263 amount=-1 +kerning first=310 second=8249 amount=-2 +kerning first=210 second=315 amount=-1 +kerning first=266 second=237 amount=-1 +kerning first=202 second=8249 amount=-1 +kerning first=230 second=237 amount=-1 +kerning first=1030 second=1105 amount=-1 +kerning first=84 second=379 amount=-1 +kerning first=97 second=8249 amount=-1 +kerning first=69 second=315 amount=-1 +kerning first=313 second=206 amount=-1 +kerning first=268 second=75 amount=-1 +kerning first=89 second=237 amount=-1 +kerning first=203 second=73 amount=-1 +kerning first=266 second=209 amount=-1 +kerning first=84 second=381 amount=-1 +kerning first=234 second=44 amount=-2 +kerning first=1058 second=1081 amount=-1 +kerning first=378 second=234 amount=-1 +kerning first=77 second=83 amount=-1 +kerning first=78 second=212 amount=-1 +kerning first=323 second=199 amount=-1 +kerning first=230 second=257 amount=-1 +kerning first=70 second=111 amount=-1 +kerning first=310 second=277 amount=-1 +kerning first=66 second=86 amount=-2 +kerning first=218 second=83 amount=-1 +kerning first=8217 second=246 amount=-2 +kerning first=262 second=381 amount=-1 +kerning first=350 second=302 amount=-1 +kerning first=70 second=99 amount=-1 +kerning first=338 second=209 amount=-1 +kerning first=382 second=277 amount=-1 +kerning first=290 second=83 amount=-1 +kerning first=278 second=302 amount=-1 +kerning first=315 second=72 amount=-1 +kerning first=225 second=351 amount=-1 +kerning first=268 second=323 amount=-1 +kerning first=198 second=264 amount=-1 +kerning first=362 second=83 amount=-1 +kerning first=88 second=364 amount=-1 +kerning first=87 second=76 amount=-1 +kerning first=310 second=289 amount=-1 +kerning first=261 second=351 amount=-1 +kerning first=346 second=289 amount=-1 +kerning first=89 second=209 amount=-1 +kerning first=382 second=289 amount=-1 +kerning first=327 second=212 amount=-1 +kerning first=74 second=199 amount=-1 +kerning first=376 second=323 amount=-1 +kerning first=120 second=351 amount=-1 +kerning first=219 second=212 amount=-1 +kerning first=351 second=114 amount=-1 +kerning first=84 second=351 amount=-2 +kerning first=193 second=364 amount=-2 +kerning first=225 second=367 amount=-1 +kerning first=346 second=291 amount=-1 +kerning first=1098 second=1097 amount=-1 +kerning first=261 second=367 amount=-1 +kerning first=209 second=233 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=66 second=72 amount=-2 +kerning first=120 second=367 amount=-1 +kerning first=274 second=291 amount=-1 +kerning first=274 second=261 amount=-1 +kerning first=212 second=8217 amount=-1 +kerning first=336 second=76 amount=-1 +kerning first=211 second=97 amount=-1 +kerning first=369 second=351 amount=-1 +kerning first=202 second=291 amount=-1 +kerning first=120 second=337 amount=-1 +kerning first=219 second=226 amount=-2 +kerning first=84 second=367 amount=-1 +kerning first=45 second=110 amount=-1 +kerning first=333 second=351 amount=-1 +kerning first=84 second=337 amount=-2 +kerning first=264 second=76 amount=-1 +kerning first=106 second=97 amount=-1 +kerning first=97 second=291 amount=-1 +kerning first=291 second=226 amount=-1 +kerning first=199 second=345 amount=-1 +kerning first=327 second=226 amount=-1 +kerning first=1054 second=1040 amount=-2 +kerning first=74 second=171 amount=-2 +kerning first=65 second=316 amount=-1 +kerning first=8217 second=232 amount=-2 +kerning first=221 second=326 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=200 second=350 amount=-1 +kerning first=101 second=316 amount=-1 +kerning first=283 second=97 amount=-1 +kerning first=378 second=250 amount=-1 +kerning first=171 second=86 amount=-2 +kerning first=1069 second=1050 amount=-1 +kerning first=1057 second=1064 amount=-1 +kerning first=310 second=261 amount=-1 +kerning first=242 second=316 amount=-1 +kerning first=346 second=261 amount=-1 +kerning first=274 second=87 amount=-1 +kerning first=366 second=110 amount=-1 +kerning first=344 second=350 amount=-1 +kerning first=278 second=316 amount=-1 +kerning first=382 second=261 amount=-1 +kerning first=1113 second=1116 amount=-1 +kerning first=314 second=316 amount=-1 +kerning first=234 second=250 amount=-1 +kerning first=315 second=86 amount=-1 +kerning first=272 second=350 amount=-1 +kerning first=350 second=316 amount=-1 +kerning first=198 second=250 amount=-1 +kerning first=212 second=200 amount=-1 +kerning first=1051 second=1057 amount=-1 +kerning first=99 second=117 amount=-1 +kerning first=290 second=381 amount=-1 +kerning first=69 second=331 amount=-1 +kerning first=204 second=117 amount=-1 +kerning first=362 second=381 amount=-1 +kerning first=376 second=337 amount=-2 +kerning first=105 second=331 amount=-1 +kerning first=201 second=221 amount=-1 +kerning first=356 second=200 amount=-1 +kerning first=282 second=352 amount=-1 +kerning first=213 second=260 amount=-2 +kerning first=284 second=200 amount=-1 +kerning first=321 second=260 amount=-1 +kerning first=75 second=85 amount=-1 +kerning first=376 second=361 amount=-1 +kerning first=268 second=288 amount=-2 +kerning first=97 second=8220 amount=-1 +kerning first=219 second=214 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=86 second=240 amount=-2 +kerning first=327 second=214 amount=-1 +kerning first=266 second=207 amount=-1 +kerning first=122 second=240 amount=-1 +kerning first=379 second=290 amount=-1 +kerning first=381 second=221 amount=-1 +kerning first=371 second=240 amount=-1 +kerning first=263 second=240 amount=-1 +kerning first=199 second=290 amount=-2 +kerning first=89 second=207 amount=-1 +kerning first=272 second=90 amount=-1 +kerning first=66 second=84 amount=-2 +kerning first=1054 second=1024 amount=-1 +kerning first=350 second=304 amount=-1 +kerning first=214 second=330 amount=-1 +kerning first=377 second=194 amount=-1 +kerning first=313 second=220 amount=-1 +kerning first=330 second=67 amount=-1 +kerning first=69 second=71 amount=-1 +kerning first=213 second=298 amount=-1 +kerning first=278 second=304 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=375 second=291 amount=-2 +kerning first=216 second=227 amount=-1 +kerning first=339 second=291 amount=-1 +kerning first=76 second=287 amount=-1 +kerning first=67 second=197 amount=-2 +kerning first=1047 second=1030 amount=-1 +kerning first=338 second=207 amount=-1 +kerning first=303 second=291 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=321 second=298 amount=-1 +kerning first=374 second=207 amount=-1 +kerning first=1037 second=1077 amount=-1 +kerning first=267 second=291 amount=-1 +kerning first=286 second=330 amount=-1 +kerning first=75 second=227 amount=-1 +kerning first=231 second=291 amount=-1 +kerning first=112 second=287 amount=-1 +kerning first=195 second=291 amount=-1 +kerning first=218 second=97 amount=-2 +kerning first=253 second=287 amount=-2 +kerning first=264 second=290 amount=-2 +kerning first=282 second=71 amount=-1 +kerning first=217 second=287 amount=-2 +kerning first=260 second=311 amount=-1 +kerning first=90 second=291 amount=-2 +kerning first=113 second=97 amount=-1 +kerning first=325 second=287 amount=-1 +kerning first=203 second=317 amount=-1 +kerning first=84 second=77 amount=-1 +kerning first=354 second=71 amount=-1 +kerning first=289 second=287 amount=-1 +kerning first=110 second=365 amount=-1 +kerning first=1116 second=1101 amount=-1 +kerning first=362 second=97 amount=-2 +kerning first=119 second=311 amount=-1 +kerning first=221 second=324 amount=-1 +kerning first=304 second=337 amount=-1 +kerning first=83 second=311 amount=-1 +kerning first=200 second=90 amount=-1 +kerning first=290 second=97 amount=-1 +kerning first=1059 second=1107 amount=-2 +kerning first=218 second=381 amount=-1 +kerning first=354 second=204 amount=-1 +kerning first=89 second=197 amount=-3 +kerning first=117 second=120 amount=-1 +kerning first=90 second=263 amount=-1 +kerning first=268 second=365 amount=-1 +kerning first=232 second=365 amount=-1 +kerning first=222 second=120 amount=-1 +kerning first=195 second=263 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=381 second=193 amount=-1 +kerning first=231 second=263 amount=-1 +kerning first=76 second=325 amount=-1 +kerning first=354 second=303 amount=-1 +kerning first=266 second=197 amount=-2 +kerning first=86 second=268 amount=-1 +kerning first=326 second=353 amount=-1 +kerning first=286 second=70 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=45 second=120 amount=-2 +kerning first=87 second=310 amount=-1 +kerning first=362 second=353 amount=-1 +kerning first=66 second=74 amount=-2 +kerning first=81 second=120 amount=-1 +kerning first=221 second=78 amount=-1 +kerning first=214 second=70 amount=-1 +kerning first=204 second=113 amount=-1 +kerning first=336 second=310 amount=-1 +kerning first=80 second=78 amount=-1 +kerning first=370 second=262 amount=-1 +kerning first=209 second=275 amount=-1 +kerning first=380 second=118 amount=-1 +kerning first=196 second=248 amount=-1 +kerning first=1007 second=1003 amount=-1 +kerning first=76 second=346 amount=-1 +kerning first=105 second=303 amount=-1 +kerning first=344 second=118 amount=-1 +kerning first=99 second=113 amount=-1 +kerning first=264 second=310 amount=-1 +kerning first=218 second=353 amount=-1 +kerning first=201 second=254 amount=-1 +kerning first=254 second=353 amount=-1 +kerning first=352 second=201 amount=-1 +kerning first=203 second=85 amount=-1 +kerning first=246 second=303 amount=-1 +kerning first=236 second=118 amount=-1 +kerning first=315 second=74 amount=-1 +kerning first=376 second=365 amount=-1 +kerning first=200 second=118 amount=-1 +kerning first=280 second=201 amount=-1 +kerning first=366 second=120 amount=-1 +kerning first=286 second=366 amount=-1 +kerning first=304 second=365 amount=-1 +kerning first=77 second=353 amount=-1 +kerning first=257 second=314 amount=-1 +kerning first=208 second=201 amount=-1 +kerning first=1102 second=1093 amount=-1 +kerning first=266 second=235 amount=-1 +kerning first=195 second=8249 amount=-2 +kerning first=365 second=314 amount=-1 +kerning first=119 second=283 amount=-1 +kerning first=302 second=235 amount=-1 +kerning first=330 second=380 amount=-1 +kerning first=231 second=8249 amount=-1 +kerning first=8216 second=227 amount=-1 +kerning first=366 second=380 amount=-1 +kerning first=90 second=8249 amount=-1 +kerning first=258 second=355 amount=-1 +kerning first=374 second=235 amount=-1 +kerning first=213 second=270 amount=-1 +kerning first=198 second=224 amount=-1 +kerning first=117 second=380 amount=-1 +kerning first=339 second=249 amount=-1 +kerning first=296 second=283 amount=-1 +kerning first=264 second=338 amount=-2 +kerning first=250 second=98 amount=-1 +kerning first=84 second=105 amount=-1 +kerning first=260 second=283 amount=-1 +kerning first=222 second=380 amount=-1 +kerning first=234 second=224 amount=-1 +kerning first=356 second=228 amount=-2 +kerning first=192 second=338 amount=-1 +kerning first=284 second=228 amount=-1 +kerning first=45 second=380 amount=-3 +kerning first=187 second=241 amount=-1 +kerning first=70 second=101 amount=-1 +kerning first=368 second=283 amount=-1 +kerning first=66 second=112 amount=-2 +kerning first=378 second=224 amount=-1 +kerning first=212 second=228 amount=-1 +kerning first=81 second=380 amount=-1 +kerning first=251 second=102 amount=-1 +kerning first=118 second=241 amount=-1 +kerning first=267 second=263 amount=-1 +kerning first=205 second=248 amount=-1 +kerning first=89 second=235 amount=-1 +kerning first=235 second=318 amount=-1 +kerning first=303 second=263 amount=-1 +kerning first=354 second=331 amount=-1 +kerning first=107 second=228 amount=-1 +kerning first=375 second=8249 amount=-2 +kerning first=1025 second=1038 amount=-1 +kerning first=71 second=228 amount=-1 +kerning first=307 second=318 amount=-1 +kerning first=267 second=8249 amount=-1 +kerning first=1061 second=1038 amount=-1 +kerning first=375 second=263 amount=-1 +kerning first=282 second=331 amount=-1 +kerning first=368 second=281 amount=-1 +kerning first=1040 second=1072 amount=-1 +kerning first=352 second=205 amount=-1 +kerning first=220 second=256 amount=-2 +kerning first=356 second=230 amount=-2 +kerning first=80 second=82 amount=-1 +kerning first=213 second=205 amount=-1 +kerning first=1044 second=1073 amount=-1 +kerning first=260 second=281 amount=-1 +kerning first=208 second=205 amount=-1 +kerning first=284 second=230 amount=-1 +kerning first=252 second=255 amount=-1 +kerning first=296 second=281 amount=-1 +kerning first=97 second=251 amount=-1 +kerning first=88 second=108 amount=-1 +kerning first=280 second=205 amount=-1 +kerning first=212 second=230 amount=-1 +kerning first=311 second=347 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=111 second=255 amount=-1 +kerning first=202 second=251 amount=-1 +kerning first=75 second=8217 amount=-1 +kerning first=275 second=347 amount=-1 +kerning first=75 second=255 amount=-2 +kerning first=307 second=102 amount=-1 +kerning first=111 second=8217 amount=-1 +kerning first=119 second=281 amount=-1 +kerning first=274 second=251 amount=-1 +kerning first=85 second=378 amount=-1 +kerning first=203 second=347 amount=-1 +kerning first=8222 second=303 amount=-1 +kerning first=369 second=107 amount=-1 +kerning first=205 second=216 amount=-1 +kerning first=231 second=8221 amount=-1 +kerning first=369 second=105 amount=-1 +kerning first=98 second=347 amount=-1 +kerning first=267 second=8221 amount=-1 +kerning first=283 second=371 amount=-1 +kerning first=313 second=216 amount=-1 +kerning first=75 second=231 amount=-1 +kerning first=195 second=8221 amount=-3 +kerning first=333 second=105 amount=-1 +kerning first=88 second=106 amount=-1 +kerning first=88 second=368 amount=-1 +kerning first=268 second=333 amount=-1 +kerning first=286 second=68 amount=-1 +kerning first=354 second=67 amount=-1 +kerning first=214 second=68 amount=-1 +kerning first=221 second=80 amount=-1 +kerning first=304 second=333 amount=-1 +kerning first=339 second=8221 amount=-1 +kerning first=347 second=345 amount=-1 +kerning first=88 second=374 amount=-1 +kerning first=207 second=346 amount=-1 +kerning first=201 second=217 amount=-1 +kerning first=79 second=282 amount=-1 +kerning first=352 second=203 amount=-1 +kerning first=193 second=368 amount=-2 +kerning first=196 second=333 amount=-1 +kerning first=229 second=106 amount=-1 +kerning first=66 second=346 amount=-2 +kerning first=209 second=243 amount=-1 +kerning first=71 second=230 amount=-1 +kerning first=71 second=204 amount=-1 +kerning first=107 second=230 amount=-1 +kerning first=315 second=346 amount=-1 +kerning first=212 second=204 amount=-1 +kerning first=337 second=106 amount=-1 +kerning first=119 second=307 amount=-1 +kerning first=8216 second=101 amount=-1 +kerning first=275 second=314 amount=-1 +kerning first=284 second=204 amount=-1 +kerning first=376 second=333 amount=-2 +kerning first=356 second=204 amount=-1 +kerning first=278 second=278 amount=-1 +kerning first=79 second=256 amount=-2 +kerning first=210 second=69 amount=-1 +kerning first=283 second=369 amount=-1 +kerning first=346 second=380 amount=-1 +kerning first=315 second=344 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=101 second=44 amount=-2 +kerning first=193 second=104 amount=-1 +kerning first=75 second=259 amount=-1 +kerning first=206 second=44 amount=-1 +kerning first=1025 second=1034 amount=-1 +kerning first=106 second=369 amount=-1 +kerning first=315 second=374 amount=-1 +kerning first=69 second=69 amount=-1 +kerning first=70 second=369 amount=-1 +kerning first=377 second=192 amount=-1 +kerning first=337 second=104 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=288 second=227 amount=-1 +kerning first=252 second=227 amount=-1 +kerning first=296 second=279 amount=-1 +kerning first=364 second=284 amount=-1 +kerning first=75 second=229 amount=-1 +kerning first=256 second=284 amount=-1 +kerning first=356 second=232 amount=-1 +kerning first=1057 second=1054 amount=-1 +kerning first=288 second=229 amount=-1 +kerning first=88 second=104 amount=-1 +kerning first=278 second=44 amount=-1 +kerning first=105 second=305 amount=-1 +kerning first=84 second=109 amount=-1 +kerning first=216 second=229 amount=-1 +kerning first=119 second=279 amount=-1 +kerning first=220 second=284 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=350 second=44 amount=-2 +kerning first=252 second=229 amount=-1 +kerning first=8250 second=249 amount=-1 +kerning first=252 second=257 amount=-1 +kerning first=225 second=249 amount=-1 +kerning first=268 second=65 amount=-2 +kerning first=106 second=371 amount=-1 +kerning first=288 second=257 amount=-1 +kerning first=267 second=267 amount=-1 +kerning first=303 second=267 amount=-1 +kerning first=216 second=257 amount=-1 +kerning first=8216 second=113 amount=-1 +kerning first=354 second=305 amount=-1 +kerning first=376 second=65 amount=-3 +kerning first=235 second=8250 amount=-1 +kerning first=232 second=361 amount=-1 +kerning first=75 second=257 amount=-1 +kerning first=212 second=202 amount=-1 +kerning first=368 second=279 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=71 second=202 amount=-1 +kerning first=107 second=232 amount=-1 +kerning first=304 second=361 amount=-1 +kerning first=347 second=347 amount=-1 +kerning first=214 second=209 amount=-1 +kerning first=268 second=361 amount=-1 +kerning first=171 second=374 amount=-2 +kerning first=362 second=121 amount=-1 +kerning first=356 second=202 amount=-1 +kerning first=256 second=254 amount=-1 +kerning first=205 second=244 amount=-1 +kerning first=326 second=121 amount=-1 +kerning first=66 second=374 amount=-2 +kerning first=284 second=202 amount=-1 +kerning first=328 second=254 amount=-1 +kerning first=254 second=121 amount=-1 +kerning first=84 second=79 amount=-1 +kerning first=354 second=69 amount=-1 +kerning first=286 second=66 amount=-1 +kerning first=264 second=171 amount=-2 +kerning first=195 second=267 amount=-1 +kerning first=231 second=267 amount=-1 +kerning first=115 second=254 amount=-1 +kerning first=282 second=69 amount=-1 +kerning first=214 second=66 amount=-1 +kerning first=90 second=267 amount=-1 +kerning first=113 second=121 amount=-1 +kerning first=221 second=82 amount=-1 +kerning first=77 second=121 amount=-1 +kerning first=315 second=82 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=87 second=66 amount=-1 +kerning first=97 second=8217 amount=-1 +kerning first=73 second=332 amount=-1 +kerning first=1059 second=1119 amount=-2 +kerning first=203 second=69 amount=-1 +kerning first=264 second=66 amount=-1 +kerning first=201 second=209 amount=-1 +kerning first=379 second=302 amount=-1 +kerning first=199 second=316 amount=-1 +kerning first=338 second=205 amount=-1 +kerning first=214 second=72 amount=-1 +kerning first=78 second=216 amount=-1 +kerning first=67 second=199 amount=-2 +kerning first=370 second=192 amount=-2 +kerning first=1098 second=1096 amount=-1 +kerning first=221 second=76 amount=-1 +kerning first=286 second=72 amount=-1 +kerning first=376 second=79 amount=-1 +kerning first=334 second=192 amount=-2 +kerning first=374 second=205 amount=-1 +kerning first=66 second=82 amount=-2 +kerning first=336 second=66 amount=-1 +kerning first=122 second=242 amount=-1 +kerning first=187 second=229 amount=-1 +kerning first=262 second=192 amount=-2 +kerning first=86 second=242 amount=-1 +kerning first=80 second=76 amount=-1 +kerning first=266 second=205 amount=-1 +kerning first=356 second=212 amount=-1 +kerning first=82 second=229 amount=-1 +kerning first=280 second=199 amount=-1 +kerning first=118 second=229 amount=-2 +kerning first=310 second=8217 amount=-1 +kerning first=104 second=8221 amount=-2 +kerning first=212 second=226 amount=-1 +kerning first=263 second=242 amount=-1 +kerning first=202 second=268 amount=-1 +kerning first=290 second=382 amount=-1 +kerning first=89 second=205 amount=-1 +kerning first=371 second=242 amount=-1 +kerning first=284 second=226 amount=-1 +kerning first=68 second=8221 amount=-1 +kerning first=286 second=86 amount=-1 +kerning first=374 second=219 amount=-1 +kerning first=281 second=8221 amount=-1 +kerning first=219 second=216 amount=-1 +kerning first=356 second=226 amount=-2 +kerning first=99 second=119 amount=-1 +kerning first=338 second=219 amount=-1 +kerning first=317 second=8221 amount=-2 +kerning first=1043 second=1033 amount=-3 +kerning first=264 second=326 amount=-1 +kerning first=204 second=119 amount=-1 +kerning first=266 second=219 amount=-1 +kerning first=245 second=8221 amount=-1 +kerning first=327 second=216 amount=-1 +kerning first=240 second=119 amount=-1 +kerning first=235 second=316 amount=-1 +kerning first=1055 second=1092 amount=-1 +kerning first=84 second=103 amount=-2 +kerning first=194 second=219 amount=-2 +kerning first=1091 second=1092 amount=-1 +kerning first=381 second=209 amount=-1 +kerning first=354 second=333 amount=-2 +kerning first=353 second=8221 amount=-1 +kerning first=87 second=326 amount=-1 +kerning first=89 second=219 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=214 second=86 amount=-1 +kerning first=71 second=226 amount=-1 +kerning first=221 second=334 amount=-1 +kerning first=107 second=226 amount=-1 +kerning first=346 second=259 amount=-1 +kerning first=296 second=289 amount=-1 +kerning first=8217 second=231 amount=-2 +kerning first=378 second=246 amount=-1 +kerning first=310 second=259 amount=-1 +kerning first=369 second=103 amount=-1 +kerning first=90 second=269 amount=-1 +kerning first=84 second=369 amount=-1 +kerning first=75 second=253 amount=-2 +kerning first=333 second=103 amount=-1 +kerning first=231 second=269 amount=-1 +kerning first=84 second=363 amount=-1 +kerning first=382 second=259 amount=-1 +kerning first=111 second=253 amount=-1 +kerning first=337 second=122 amount=-1 +kerning first=69 second=45 amount=-1 +kerning first=195 second=269 amount=-1 +kerning first=120 second=363 amount=-1 +kerning first=287 second=263 amount=-1 +kerning first=1098 second=1082 amount=-1 +kerning first=210 second=45 amount=-1 +kerning first=303 second=269 amount=-1 +kerning first=109 second=112 amount=-1 +kerning first=193 second=116 amount=-1 +kerning first=225 second=103 amount=-1 +kerning first=267 second=269 amount=-1 +kerning first=315 second=362 amount=-1 +kerning first=274 second=259 amount=-1 +kerning first=252 second=253 amount=-1 +kerning first=282 second=45 amount=-1 +kerning first=375 second=269 amount=-1 +kerning first=261 second=363 amount=-1 +kerning first=378 second=252 amount=-1 +kerning first=120 second=103 amount=-1 +kerning first=8250 second=251 amount=-1 +kerning first=66 second=356 amount=-2 +kerning first=66 second=362 amount=-2 +kerning first=1055 second=1086 amount=-1 +kerning first=337 second=382 amount=-1 +kerning first=369 second=363 amount=-1 +kerning first=220 second=266 amount=-1 +kerning first=369 second=369 amount=-1 +kerning first=256 second=266 amount=-1 +kerning first=120 second=369 amount=-1 +kerning first=261 second=369 amount=-1 +kerning first=106 second=375 amount=-1 +kerning first=1116 second=1089 amount=-1 +kerning first=225 second=369 amount=-1 +kerning first=321 second=284 amount=-1 +kerning first=120 second=355 amount=-1 +kerning first=313 second=361 amount=-1 +kerning first=310 second=279 amount=-1 +kerning first=84 second=355 amount=-1 +kerning first=106 second=109 amount=-1 +kerning first=221 second=336 amount=-1 +kerning first=70 second=115 amount=-1 +kerning first=315 second=370 amount=-1 +kerning first=382 second=279 amount=-1 +kerning first=106 second=115 amount=-1 +kerning first=330 second=213 amount=-1 +kerning first=8217 second=214 amount=-1 +kerning first=8222 second=311 amount=-1 +kerning first=79 second=280 amount=-1 +kerning first=378 second=232 amount=-1 +kerning first=283 second=115 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=1091 second=1086 amount=-1 +kerning first=1054 second=1036 amount=-1 +kerning first=229 second=108 amount=-1 +kerning first=324 second=253 amount=-1 +kerning first=193 second=108 amount=-1 +kerning first=89 second=380 amount=-2 +kerning first=379 second=296 amount=-1 +kerning first=88 second=116 amount=-1 +kerning first=71 second=206 amount=-1 +kerning first=66 second=370 amount=-2 +kerning first=337 second=108 amount=-1 +kerning first=66 second=296 amount=-2 +kerning first=45 second=323 amount=-3 +kerning first=73 second=338 amount=-1 +kerning first=212 second=206 amount=-1 +kerning first=289 second=303 amount=-1 +kerning first=321 second=290 amount=-1 +kerning first=69 second=313 amount=-1 +kerning first=73 second=83 amount=-1 +kerning first=200 second=98 amount=-1 +kerning first=221 second=328 amount=-1 +kerning first=284 second=206 amount=-1 +kerning first=217 second=303 amount=-1 +kerning first=74 second=334 amount=-1 +kerning first=282 second=325 amount=-1 +kerning first=1059 second=1113 amount=-3 +kerning first=356 second=206 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=84 second=83 amount=-2 +kerning first=266 second=225 amount=-1 +kerning first=380 second=380 amount=-1 +kerning first=380 second=98 amount=-1 +kerning first=344 second=364 amount=-1 +kerning first=79 second=344 amount=-1 +kerning first=302 second=225 amount=-1 +kerning first=219 second=196 amount=-2 +kerning first=376 second=85 amount=-1 +kerning first=203 second=323 amount=-1 +kerning first=338 second=225 amount=-1 +kerning first=1091 second=1077 amount=-1 +kerning first=72 second=290 amount=-1 +kerning first=374 second=225 amount=-2 +kerning first=382 second=273 amount=-1 +kerning first=8222 second=305 amount=-1 +kerning first=89 second=225 amount=-2 +kerning first=236 second=380 amount=-1 +kerning first=236 second=98 amount=-1 +kerning first=1073 second=1093 amount=-1 +kerning first=268 second=85 amount=-1 +kerning first=278 second=286 amount=-1 +kerning first=272 second=380 amount=-1 +kerning first=344 second=98 amount=-1 +kerning first=69 second=325 amount=-1 +kerning first=196 second=85 amount=-2 +kerning first=230 second=225 amount=-1 +kerning first=75 second=233 amount=-1 +kerning first=206 second=286 amount=-1 +kerning first=246 second=311 amount=-1 +kerning first=203 second=77 amount=-1 +kerning first=268 second=71 amount=-2 +kerning first=228 second=46 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=279 second=102 amount=-1 +kerning first=327 second=210 amount=-1 +kerning first=1113 second=1118 amount=-1 +kerning first=214 second=8217 amount=-1 +kerning first=105 second=311 amount=-1 +kerning first=351 second=102 amount=-1 +kerning first=304 second=71 amount=-1 +kerning first=336 second=46 amount=-1 +kerning first=69 second=311 amount=-1 +kerning first=302 second=210 amount=-1 +kerning first=1047 second=1040 amount=-1 +kerning first=66 second=102 amount=-2 +kerning first=219 second=210 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=73 second=352 amount=-1 +kerning first=266 second=211 amount=-2 +kerning first=102 second=102 amount=-1 +kerning first=87 second=46 amount=-3 +kerning first=214 second=352 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=76 second=317 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=78 second=210 amount=-1 +kerning first=187 second=221 amount=-2 +kerning first=374 second=211 amount=-1 +kerning first=82 second=235 amount=-1 +kerning first=1098 second=1090 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=118 second=235 amount=-1 +kerning first=302 second=211 amount=-1 +kerning first=198 second=252 amount=-1 +kerning first=236 second=112 amount=-1 +kerning first=344 second=366 amount=-1 +kerning first=338 second=211 amount=-1 +kerning first=234 second=252 amount=-1 +kerning first=200 second=112 amount=-1 +kerning first=207 second=350 amount=-1 +kerning first=334 second=200 amount=-1 +kerning first=1054 second=1042 amount=-1 +kerning first=66 second=350 amount=-2 +kerning first=1062 second=1090 amount=-1 +kerning first=282 second=311 amount=-1 +kerning first=262 second=200 amount=-1 +kerning first=195 second=275 amount=-1 +kerning first=196 second=353 amount=-1 +kerning first=315 second=350 amount=-1 +kerning first=187 second=237 amount=-1 +kerning first=122 second=250 amount=-1 +kerning first=231 second=275 amount=-1 +kerning first=232 second=353 amount=-1 +kerning first=118 second=237 amount=-1 +kerning first=86 second=250 amount=-1 +kerning first=218 second=113 amount=-1 +kerning first=330 second=171 amount=-2 +kerning first=256 second=112 amount=-1 +kerning first=90 second=275 amount=-1 +kerning first=268 second=353 amount=-1 +kerning first=227 second=250 amount=-1 +kerning first=366 second=171 amount=-3 +kerning first=272 second=378 amount=-1 +kerning first=304 second=353 amount=-1 +kerning first=113 second=113 amount=-1 +kerning first=79 second=260 amount=-2 +kerning first=380 second=100 amount=-1 +kerning first=117 second=171 amount=-1 +kerning first=362 second=113 amount=-1 +kerning first=362 second=365 amount=-1 +kerning first=1031 second=1073 amount=-1 +kerning first=380 second=112 amount=-1 +kerning first=222 second=171 amount=-1 +kerning first=326 second=365 amount=-1 +kerning first=200 second=366 amount=-1 +kerning first=344 second=112 amount=-1 +kerning first=258 second=171 amount=-2 +kerning first=213 second=65 amount=-2 +kerning first=286 second=352 amount=-1 +kerning first=268 second=87 amount=-1 +kerning first=281 second=249 amount=-1 +kerning first=8217 second=336 amount=-1 +kerning first=196 second=87 amount=-3 +kerning first=209 second=249 amount=-1 +kerning first=344 second=100 amount=-1 +kerning first=214 second=354 amount=-1 +kerning first=380 second=378 amount=-1 +kerning first=194 second=100 amount=-1 +kerning first=8250 second=257 amount=-1 +kerning first=77 second=113 amount=-1 +kerning first=375 second=275 amount=-1 +kerning first=364 second=260 amount=-2 +kerning first=286 second=354 amount=-1 +kerning first=86 second=262 amount=-1 +kerning first=1047 second=1052 amount=-1 +kerning first=267 second=275 amount=-1 +kerning first=1073 second=1091 amount=-1 +kerning first=303 second=275 amount=-1 +kerning first=72 second=288 amount=-1 +kerning first=1116 second=1077 amount=-1 +kerning first=85 second=198 amount=-2 +kerning first=268 second=339 amount=-1 +kerning first=371 second=248 amount=-1 +kerning first=211 second=377 amount=-1 +kerning first=90 second=289 amount=-2 +kerning first=304 second=339 amount=-1 +kerning first=263 second=248 amount=-1 +kerning first=8216 second=229 amount=-1 +kerning first=196 second=339 amount=-1 +kerning first=362 second=99 amount=-1 +kerning first=195 second=289 amount=-1 +kerning first=69 second=327 amount=-1 +kerning first=118 second=223 amount=-1 +kerning first=371 second=8220 amount=-2 +kerning first=104 second=249 amount=-1 +kerning first=335 second=8220 amount=-1 +kerning first=267 second=289 amount=-1 +kerning first=321 second=288 amount=-1 +kerning first=86 second=248 amount=-2 +kerning first=303 second=289 amount=-1 +kerning first=210 second=327 amount=-1 +kerning first=122 second=248 amount=-1 +kerning first=187 second=223 amount=-1 +kerning first=263 second=8220 amount=-1 +kerning first=376 second=339 amount=-2 +kerning first=74 second=223 amount=-1 +kerning first=83 second=287 amount=-1 +kerning first=354 second=313 amount=-1 +kerning first=376 second=73 amount=-1 +kerning first=282 second=327 amount=-1 +kerning first=209 second=263 amount=-1 +kerning first=218 second=365 amount=-1 +kerning first=213 second=274 amount=-1 +kerning first=77 second=99 amount=-1 +kerning first=282 second=313 amount=-1 +kerning first=76 second=315 amount=-1 +kerning first=1069 second=1064 amount=-1 +kerning first=119 second=287 amount=-2 +kerning first=367 second=237 amount=-1 +kerning first=113 second=365 amount=-1 +kerning first=290 second=379 amount=-1 +kerning first=260 second=287 amount=-1 +kerning first=210 second=313 amount=-1 +kerning first=262 second=198 amount=-2 +kerning first=203 second=75 amount=-1 +kerning first=77 second=365 amount=-1 +kerning first=376 second=353 amount=-2 +kerning first=224 second=287 amount=-1 +kerning first=113 second=99 amount=-1 +kerning first=89 second=44 amount=-3 +kerning first=268 second=73 amount=-1 +kerning first=362 second=379 amount=-1 +kerning first=332 second=287 amount=-1 +kerning first=334 second=198 amount=-2 +kerning first=321 second=274 amount=-1 +kerning first=296 second=287 amount=-1 +kerning first=218 second=99 amount=-1 +kerning first=223 second=237 amount=-1 +kerning first=370 second=198 amount=-2 +kerning first=1102 second=1103 amount=-1 +kerning first=244 second=187 amount=-1 +kerning first=307 second=44 amount=-1 +kerning first=200 second=104 amount=-1 +kerning first=368 second=287 amount=-2 +kerning first=205 second=234 amount=-1 +kerning first=252 second=237 amount=-1 +kerning first=1116 second=1091 amount=-1 +kerning first=66 second=354 amount=-2 +kerning first=344 second=104 amount=-1 +kerning first=111 second=237 amount=-1 +kerning first=171 second=354 amount=-2 +kerning first=235 second=44 amount=-2 +kerning first=344 second=374 amount=-1 +kerning first=1098 second=1084 amount=-1 +kerning first=199 second=44 amount=-1 +kerning first=236 second=104 amount=-1 +kerning first=303 second=277 amount=-1 +kerning first=113 second=111 amount=-1 +kerning first=267 second=277 amount=-1 +kerning first=274 second=77 amount=-1 +kerning first=381 second=197 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=187 second=227 amount=-1 +kerning first=262 second=194 amount=-2 +kerning first=375 second=277 amount=-1 +kerning first=315 second=354 amount=-1 +kerning first=118 second=227 amount=-2 +kerning first=218 second=111 amount=-1 +kerning first=8250 second=259 amount=-1 +kerning first=82 second=227 amount=-1 +kerning first=367 second=227 amount=-1 +kerning first=90 second=277 amount=-1 +kerning first=1040 second=1054 amount=-2 +kerning first=85 second=194 amount=-2 +kerning first=231 second=277 amount=-1 +kerning first=192 second=314 amount=-1 +kerning first=214 second=74 amount=-1 +kerning first=195 second=277 amount=-1 +kerning first=77 second=111 amount=-1 +kerning first=1048 second=1104 amount=-1 +kerning first=376 second=351 amount=-2 +kerning first=264 second=314 amount=-1 +kerning first=362 second=367 amount=-1 +kerning first=332 second=8249 amount=-1 +kerning first=227 second=249 amount=-1 +kerning first=120 second=361 amount=-1 +kerning first=228 second=314 amount=-1 +kerning first=368 second=8249 amount=-3 +kerning first=261 second=361 amount=-1 +kerning first=314 second=122 amount=-1 +kerning first=68 second=261 amount=-1 +kerning first=290 second=367 amount=-1 +kerning first=260 second=8249 amount=-2 +kerning first=106 second=121 amount=-1 +kerning first=66 second=364 amount=-2 +kerning first=203 second=327 amount=-1 +kerning first=353 second=257 amount=-1 +kerning first=326 second=367 amount=-1 +kerning first=1037 second=1089 amount=-1 +kerning first=232 second=351 amount=-1 +kerning first=263 second=254 amount=-1 +kerning first=196 second=351 amount=-1 +kerning first=281 second=257 amount=-1 +kerning first=224 second=8249 amount=-1 +kerning first=304 second=351 amount=-1 +kerning first=113 second=367 amount=-1 +kerning first=202 second=260 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=369 second=361 amount=-1 +kerning first=268 second=351 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=119 second=8249 amount=-2 +kerning first=371 second=254 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=283 second=117 amount=-1 +kerning first=272 second=374 amount=-1 +kerning first=353 second=261 amount=-1 +kerning first=79 second=274 amount=-1 +kerning first=8217 second=226 amount=-3 +kerning first=122 second=254 amount=-1 +kerning first=277 second=224 amount=-1 +kerning first=203 second=367 amount=-1 +kerning first=200 second=374 amount=-1 +kerning first=378 second=244 amount=-1 +kerning first=81 second=171 amount=-1 +kerning first=227 second=254 amount=-1 +kerning first=286 second=344 amount=-1 +kerning first=1058 second=1057 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=263 second=250 amount=-1 +kerning first=84 second=361 amount=-1 +kerning first=371 second=250 amount=-1 +kerning first=281 second=261 amount=-1 +kerning first=77 second=101 amount=-1 +kerning first=338 second=221 amount=-1 +kerning first=113 second=101 amount=-1 +kerning first=311 second=337 amount=-1 +kerning first=378 second=240 amount=-1 +kerning first=347 second=331 amount=-1 +kerning first=266 second=221 amount=-1 +kerning first=218 second=101 amount=-1 +kerning first=275 second=331 amount=-1 +kerning first=1054 second=1038 amount=-1 +kerning first=369 second=97 amount=-1 +kerning first=278 second=290 amount=-1 +kerning first=194 second=221 amount=-3 +kerning first=106 second=117 amount=-1 +kerning first=70 second=117 amount=-1 +kerning first=362 second=101 amount=-1 +kerning first=279 second=98 amount=-1 +kerning first=208 second=282 amount=-1 +kerning first=221 second=338 amount=-1 +kerning first=356 second=214 amount=-1 +kerning first=206 second=290 amount=-1 +kerning first=104 second=251 amount=-1 +kerning first=351 second=98 amount=-1 +kerning first=364 second=264 amount=-1 +kerning first=328 second=8221 amount=-2 +kerning first=315 second=98 amount=-1 +kerning first=209 second=251 amount=-1 +kerning first=102 second=98 amount=2 +kerning first=66 second=98 amount=-1 +kerning first=337 second=380 amount=-1 +kerning first=281 second=251 amount=-1 +kerning first=256 second=264 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=220 second=264 amount=-1 +kerning first=283 second=109 amount=-1 +kerning first=382 second=271 amount=-1 +kerning first=80 second=330 amount=-1 +kerning first=290 second=378 amount=-1 +kerning first=278 second=298 amount=-1 +kerning first=112 second=311 amount=-1 +kerning first=282 second=317 amount=-1 +kerning first=317 second=251 amount=-1 +kerning first=66 second=90 amount=-2 +kerning first=1098 second=1080 amount=-1 +kerning first=76 second=311 amount=-1 +kerning first=379 second=304 amount=-1 +kerning first=201 second=201 amount=-1 +kerning first=350 second=298 amount=-1 +kerning first=203 second=71 amount=-1 +kerning first=268 second=77 amount=-1 +kerning first=381 second=207 amount=-1 +kerning first=354 second=317 amount=-1 +kerning first=71 second=220 amount=-1 +kerning first=379 second=310 amount=-1 +kerning first=284 second=220 amount=-1 +kerning first=370 second=194 amount=-2 +kerning first=201 second=207 amount=-1 +kerning first=368 second=248 amount=-1 +kerning first=212 second=220 amount=-1 +kerning first=351 second=46 amount=-1 +kerning first=210 second=317 amount=-1 +kerning first=368 second=291 amount=-2 +kerning first=221 second=330 amount=-1 +kerning first=1025 second=1024 amount=-1 +kerning first=376 second=77 amount=-1 +kerning first=334 second=194 amount=-2 +kerning first=332 second=291 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=272 second=368 amount=-1 +kerning first=84 second=97 amount=-2 +kerning first=296 second=291 amount=-1 +kerning first=362 second=226 amount=-2 +kerning first=214 second=84 amount=-1 +kerning first=120 second=97 amount=-1 +kerning first=260 second=291 amount=-1 +kerning first=266 second=213 amount=-2 +kerning first=356 second=220 amount=-1 +kerning first=200 second=368 amount=-1 +kerning first=310 second=347 amount=-1 +kerning first=224 second=291 amount=-1 +kerning first=264 second=324 amount=-1 +kerning first=211 second=381 amount=-1 +kerning first=69 second=317 amount=-1 +kerning first=338 second=213 amount=-1 +kerning first=119 second=45 amount=-2 +kerning first=289 second=311 amount=-1 +kerning first=119 second=291 amount=-2 +kerning first=302 second=213 amount=-1 +kerning first=352 second=187 amount=-1 +kerning first=253 second=311 amount=-1 +kerning first=83 second=291 amount=-1 +kerning first=344 second=368 amount=-1 +kerning first=1098 second=1088 amount=-1 +kerning first=374 second=213 amount=-1 +kerning first=87 second=324 amount=-1 +kerning first=286 second=84 amount=-1 +kerning first=213 second=278 amount=-1 +kerning first=218 second=375 amount=-1 +kerning first=280 second=193 amount=-1 +kerning first=209 second=253 amount=-1 +kerning first=284 second=218 amount=-1 +kerning first=245 second=253 amount=-1 +kerning first=113 second=375 amount=-1 +kerning first=344 second=263 amount=-1 +kerning first=208 second=193 amount=-2 +kerning first=281 second=253 amount=-1 +kerning first=77 second=375 amount=-1 +kerning first=212 second=218 amount=-1 +kerning first=256 second=268 amount=-1 +kerning first=362 second=375 amount=-1 +kerning first=80 second=70 amount=-1 +kerning first=222 second=8249 amount=-1 +kerning first=321 second=278 amount=-1 +kerning first=353 second=253 amount=-1 +kerning first=326 second=375 amount=-1 +kerning first=362 second=103 amount=-2 +kerning first=286 second=78 amount=-1 +kerning first=1040 second=1060 amount=-2 +kerning first=352 second=193 amount=-2 +kerning first=326 second=103 amount=-1 +kerning first=254 second=375 amount=-1 +kerning first=356 second=218 amount=-1 +kerning first=76 second=45 amount=-1 +kerning first=290 second=103 amount=-1 +kerning first=381 second=203 amount=-1 +kerning first=214 second=78 amount=-1 +kerning first=337 second=120 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=1073 second=1095 amount=-1 +kerning first=208 second=45 amount=-1 +kerning first=1037 second=1095 amount=-1 +kerning first=221 second=70 amount=-1 +kerning first=381 second=201 amount=-1 +kerning first=70 second=213 amount=-1 +kerning first=229 second=120 amount=-1 +kerning first=71 second=218 amount=-1 +kerning first=228 second=253 amount=-1 +kerning first=196 second=104 amount=-1 +kerning first=171 second=356 amount=-2 +kerning first=104 second=253 amount=-1 +kerning first=201 second=203 amount=-1 +kerning first=8216 second=233 amount=-1 +kerning first=377 second=278 amount=-1 +kerning first=380 second=108 amount=-1 +kerning first=362 second=105 amount=-1 +kerning first=229 second=118 amount=-1 +kerning first=344 second=370 amount=-1 +kerning first=344 second=108 amount=-1 +kerning first=193 second=118 amount=-2 +kerning first=75 second=245 amount=-1 +kerning first=203 second=65 amount=-1 +kerning first=76 second=305 amount=-1 +kerning first=217 second=305 amount=-1 +kerning first=195 second=283 amount=-1 +kerning first=218 second=105 amount=-1 +kerning first=79 second=270 amount=-1 +kerning first=213 second=280 amount=-1 +kerning first=1048 second=1108 amount=-1 +kerning first=254 second=105 amount=-1 +kerning first=289 second=305 amount=-1 +kerning first=90 second=283 amount=-1 +kerning first=364 second=266 amount=-1 +kerning first=113 second=105 amount=-1 +kerning first=253 second=305 amount=-1 +kerning first=1047 second=1048 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=192 second=318 amount=-1 +kerning first=1069 second=1070 amount=-1 +kerning first=1051 second=1073 amount=-1 +kerning first=228 second=318 amount=-1 +kerning first=311 second=335 amount=-1 +kerning first=267 second=283 amount=-1 +kerning first=202 second=365 amount=-1 +kerning first=231 second=283 amount=-1 +kerning first=277 second=228 amount=-1 +kerning first=236 second=108 amount=-1 +kerning first=200 second=370 amount=-1 +kerning first=351 second=287 amount=-1 +kerning first=200 second=108 amount=-1 +kerning first=307 second=230 amount=-1 +kerning first=199 second=252 amount=-1 +kerning first=205 second=228 amount=-1 +kerning first=272 second=370 amount=-1 +kerning first=375 second=283 amount=-1 +kerning first=67 second=193 amount=-2 +kerning first=231 second=281 amount=-1 +kerning first=267 second=281 amount=-1 +kerning first=113 second=107 amount=-1 +kerning first=303 second=281 amount=-1 +kerning first=86 second=256 amount=-3 +kerning first=254 second=107 amount=-1 +kerning first=214 second=82 amount=-1 +kerning first=82 second=231 amount=-1 +kerning first=281 second=103 amount=-1 +kerning first=90 second=281 amount=-1 +kerning first=272 second=207 amount=-1 +kerning first=1065 second=1047 amount=-1 +kerning first=317 second=268 amount=-1 +kerning first=353 second=255 amount=-1 +kerning first=112 second=307 amount=-1 +kerning first=381 second=205 amount=-1 +kerning first=260 second=266 amount=-1 +kerning first=221 second=332 amount=-1 +kerning first=321 second=280 amount=-1 +kerning first=201 second=205 amount=-1 +kerning first=242 second=8250 amount=-1 +kerning first=268 second=81 amount=-2 +kerning first=281 second=255 amount=-1 +kerning first=326 second=371 amount=-1 +kerning first=203 second=67 amount=-1 +kerning first=245 second=255 amount=-1 +kerning first=376 second=347 amount=-2 +kerning first=209 second=255 amount=-1 +kerning first=304 second=81 amount=-1 +kerning first=304 second=347 amount=-1 +kerning first=113 second=371 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=104 second=255 amount=-1 +kerning first=268 second=347 amount=-1 +kerning first=376 second=81 amount=-1 +kerning first=232 second=347 amount=-1 +kerning first=196 second=347 amount=-1 +kerning first=350 second=8250 amount=-1 +kerning first=80 second=68 amount=-1 +kerning first=85 second=192 amount=-2 +kerning first=367 second=229 amount=-1 +kerning first=376 second=345 amount=-1 +kerning first=194 second=217 amount=-2 +kerning first=286 second=80 amount=-1 +kerning first=321 second=282 amount=-1 +kerning first=266 second=217 amount=-1 +kerning first=1040 second=1058 amount=-1 +kerning first=73 second=346 amount=-1 +kerning first=8217 second=224 amount=-3 +kerning first=274 second=318 amount=-1 +kerning first=338 second=217 amount=-1 +kerning first=209 second=288 amount=-1 +kerning first=213 second=282 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=374 second=217 amount=-1 +kerning first=214 second=8221 amount=-1 +kerning first=221 second=68 amount=-1 +kerning first=214 second=80 amount=-1 +kerning first=70 second=119 amount=-1 +kerning first=214 second=346 amount=-1 +kerning first=75 second=243 amount=-1 +kerning first=344 second=106 amount=-1 +kerning first=277 second=230 amount=-1 +kerning first=106 second=119 amount=-1 +kerning first=253 second=307 amount=-1 +kerning first=197 second=244 amount=-1 +kerning first=289 second=307 amount=-1 +kerning first=272 second=106 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=375 second=281 amount=-1 +kerning first=283 second=119 amount=-1 +kerning first=380 second=106 amount=-1 +kerning first=311 second=333 amount=-1 +kerning first=286 second=346 amount=-1 +kerning first=89 second=217 amount=-1 +kerning first=355 second=119 amount=-1 +kerning first=314 second=275 amount=-1 +kerning first=382 second=119 amount=-1 +kerning first=89 second=100 amount=-2 +kerning first=379 second=45 amount=-1 +kerning first=289 second=46 amount=-2 +kerning first=80 second=353 amount=-1 +kerning first=356 second=346 amount=-2 +kerning first=74 second=65 amount=-3 +kerning first=205 second=67 amount=-1 +kerning first=187 second=68 amount=-3 +kerning first=90 second=69 amount=-1 +kerning first=321 second=70 amount=-1 +kerning first=84 second=71 amount=-1 +kerning first=68 second=72 amount=-1 +kerning first=84 second=73 amount=-1 +kerning first=90 second=75 amount=-1 +kerning first=98 second=353 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=84 second=81 amount=-1 +kerning first=313 second=82 amount=-1 +kerning first=86 second=83 amount=-2 +kerning first=193 second=84 amount=-3 +kerning first=68 second=86 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=317 second=89 amount=-1 +kerning first=363 second=97 amount=-1 +kerning first=311 second=98 amount=-1 +kerning first=371 second=99 amount=-1 +kerning first=287 second=100 amount=-1 +kerning first=102 second=101 amount=-1 +kerning first=305 second=103 amount=-1 +kerning first=317 second=104 amount=-1 +kerning first=269 second=107 amount=-1 +kerning first=235 second=108 amount=-1 +kerning first=108 second=109 amount=-1 +kerning first=231 second=110 amount=-1 +kerning first=120 second=111 amount=-1 +kerning first=207 second=112 amount=-1 +kerning first=72 second=113 amount=-1 +kerning first=253 second=114 amount=-1 +kerning first=120 second=116 amount=-1 +kerning first=277 second=117 amount=-1 +kerning first=337 second=118 amount=-1 +kerning first=235 second=119 amount=-1 +kerning first=365 second=120 amount=-1 +kerning first=66 second=121 amount=-1 +kerning first=377 second=122 amount=-1 +kerning first=198 second=256 amount=-1 +kerning first=202 second=379 amount=-1 +kerning first=65 second=275 amount=-1 +kerning first=90 second=171 amount=-1 +kerning first=90 second=187 amount=-1 +kerning first=84 second=249 amount=-1 +kerning first=201 second=192 amount=-1 +kerning first=201 second=193 amount=-1 +kerning first=379 second=194 amount=-1 +kerning first=8217 second=195 amount=-3 +kerning first=201 second=197 amount=-1 +kerning first=84 second=198 amount=-3 +kerning first=197 second=199 amount=-1 +kerning first=68 second=200 amount=-1 +kerning first=84 second=201 amount=-1 +kerning first=68 second=202 amount=-1 +kerning first=187 second=203 amount=-3 +kerning first=379 second=206 amount=-1 +kerning first=90 second=207 amount=-1 +kerning first=313 second=209 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=321 second=211 amount=-1 +kerning first=193 second=212 amount=-1 +kerning first=313 second=213 amount=-1 +kerning first=84 second=214 amount=-1 +kerning first=251 second=8217 amount=-2 +kerning first=317 second=216 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=315 second=221 amount=-1 +kerning first=213 second=224 amount=-1 +kerning first=303 second=228 amount=-1 +kerning first=255 second=229 amount=-2 +kerning first=82 second=230 amount=-1 +kerning first=118 second=231 amount=-1 +kerning first=327 second=232 amount=-1 +kerning first=377 second=233 amount=-1 +kerning first=303 second=235 amount=-1 +kerning first=90 second=237 amount=-1 +kerning first=330 second=45 amount=-2 +kerning first=231 second=240 amount=-1 +kerning first=8217 second=242 amount=-2 +kerning first=323 second=244 amount=-1 +kerning first=205 second=245 amount=-1 +kerning first=74 second=246 amount=-1 +kerning first=291 second=248 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=76 second=250 amount=-1 +kerning first=225 second=254 amount=-1 +kerning first=351 second=255 amount=-1 +kerning first=122 second=257 amount=-1 +kerning first=307 second=259 amount=-1 +kerning first=377 second=260 amount=-1 +kerning first=74 second=261 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=379 second=263 amount=-1 +kerning first=321 second=305 amount=-1 +kerning first=379 second=266 amount=-1 +kerning first=375 second=267 amount=-1 +kerning first=315 second=268 amount=-1 +kerning first=207 second=269 amount=-1 +kerning first=84 second=270 amount=-1 +kerning first=102 second=271 amount=-1 +kerning first=269 second=273 amount=-1 +kerning first=76 second=274 amount=-1 +kerning first=289 second=275 amount=-1 +kerning first=263 second=277 amount=-1 +kerning first=313 second=278 amount=-1 +kerning first=199 second=279 amount=-1 +kerning first=86 second=280 amount=-1 +kerning first=197 second=281 amount=-1 +kerning first=66 second=282 amount=-2 +kerning first=8217 second=284 amount=-1 +kerning first=86 second=286 amount=-1 +kerning first=245 second=287 amount=-1 +kerning first=219 second=288 amount=-1 +kerning first=229 second=289 amount=-1 +kerning first=74 second=290 amount=-1 +kerning first=1078 second=1095 amount=-1 +kerning first=217 second=230 amount=-2 +kerning first=76 second=302 amount=-1 +kerning first=281 second=303 amount=-1 +kerning first=231 second=305 amount=-1 +kerning first=337 second=307 amount=-1 +kerning first=321 second=310 amount=-1 +kerning first=365 second=311 amount=-1 +kerning first=76 second=313 amount=-1 +kerning first=197 second=314 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=315 second=317 amount=-1 +kerning first=315 second=318 amount=-1 +kerning first=313 second=323 amount=-1 +kerning first=66 second=324 amount=-1 +kerning first=122 second=326 amount=-1 +kerning first=313 second=327 amount=-1 +kerning first=353 second=328 amount=-1 +kerning first=350 second=379 amount=-1 +kerning first=90 second=330 amount=-1 +kerning first=233 second=331 amount=-1 +kerning first=315 second=332 amount=-1 +kerning first=193 second=333 amount=-1 +kerning first=317 second=334 amount=-1 +kerning first=323 second=335 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=8217 second=337 amount=-2 +kerning first=84 second=338 amount=-1 +kerning first=311 second=339 amount=-1 +kerning first=370 second=237 amount=-1 +kerning first=253 second=345 amount=-1 +kerning first=8217 second=346 amount=-1 +kerning first=74 second=347 amount=-1 +kerning first=221 second=350 amount=-2 +kerning first=219 second=351 amount=-1 +kerning first=187 second=352 amount=-2 +kerning first=78 second=353 amount=-1 +kerning first=379 second=354 amount=-1 +kerning first=371 second=355 amount=-1 +kerning first=187 second=357 amount=-1 +kerning first=305 second=361 amount=-1 +kerning first=379 second=363 amount=-1 +kerning first=187 second=364 amount=-2 +kerning first=235 second=365 amount=-1 +kerning first=332 second=289 amount=-1 +kerning first=100 second=367 amount=-1 +kerning first=281 second=369 amount=-1 +kerning first=249 second=371 amount=-1 +kerning first=222 second=313 amount=-1 +kerning first=197 second=374 amount=-3 +kerning first=187 second=377 amount=-2 +kerning first=335 second=378 amount=-1 +kerning first=76 second=379 amount=-1 +kerning first=8217 second=380 amount=-1 +kerning first=120 second=382 amount=-1 +kerning first=199 second=244 amount=-1 +kerning first=81 second=313 amount=-1 +kerning first=262 second=237 amount=-1 +kerning first=207 second=263 amount=-1 +kerning first=1054 second=1067 amount=-1 +kerning first=69 second=199 amount=-1 +kerning first=1043 second=1084 amount=-1 +kerning first=45 second=313 amount=-3 +kerning first=72 second=334 amount=-1 +kerning first=274 second=379 amount=-1 +kerning first=365 second=353 amount=-1 +kerning first=71 second=346 amount=-1 +kerning first=288 second=270 amount=-1 +kerning first=86 second=225 amount=-2 +kerning first=328 second=365 amount=-1 +kerning first=346 second=379 amount=-1 +kerning first=122 second=225 amount=-1 +kerning first=102 second=263 amount=-1 +kerning first=256 second=365 amount=-1 +kerning first=1061 second=1098 amount=-1 +kerning first=103 second=251 amount=-1 +kerning first=104 second=361 amount=-1 +kerning first=83 second=289 amount=-1 +kerning first=257 second=353 amount=-1 +kerning first=212 second=346 amount=-1 +kerning first=219 second=283 amount=-1 +kerning first=282 second=291 amount=-1 +kerning first=119 second=289 amount=-2 +kerning first=115 second=365 amount=-1 +kerning first=1045 second=1060 amount=-1 +kerning first=216 second=270 amount=-1 +kerning first=377 second=296 amount=-1 +kerning first=313 second=315 amount=-1 +kerning first=212 second=374 amount=-1 +kerning first=280 second=251 amount=-1 +kerning first=374 second=72 amount=-1 +kerning first=257 second=121 amount=-1 +kerning first=120 second=277 amount=-1 +kerning first=338 second=72 amount=-1 +kerning first=251 second=254 amount=-1 +kerning first=221 second=121 amount=-1 +kerning first=352 second=251 amount=-1 +kerning first=287 second=254 amount=-1 +kerning first=71 second=374 amount=-1 +kerning first=316 second=251 amount=-1 +kerning first=202 second=351 amount=-1 +kerning first=280 second=344 amount=-1 +kerning first=1027 second=1074 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=266 second=381 amount=-1 +kerning first=203 second=79 amount=-1 +kerning first=84 second=277 amount=-2 +kerning first=110 second=254 amount=-1 +kerning first=1025 second=1118 amount=-1 +kerning first=199 second=331 amount=-1 +kerning first=83 second=261 amount=-1 +kerning first=219 second=117 amount=-1 +kerning first=379 second=244 amount=-1 +kerning first=187 second=69 amount=-3 +kerning first=275 second=367 amount=-1 +kerning first=376 second=76 amount=-1 +kerning first=221 second=381 amount=-1 +kerning first=291 second=117 amount=-1 +kerning first=121 second=328 amount=-1 +kerning first=1047 second=1036 amount=-1 +kerning first=89 second=72 amount=-1 +kerning first=205 second=83 amount=-1 +kerning first=310 second=351 amount=-1 +kerning first=381 second=192 amount=-1 +kerning first=268 second=76 amount=-1 +kerning first=354 second=199 amount=-1 +kerning first=274 second=351 amount=-1 +kerning first=327 second=117 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=284 second=374 amount=-1 +kerning first=365 second=121 amount=-1 +kerning first=1114 second=1096 amount=-1 +kerning first=382 second=351 amount=-1 +kerning first=313 second=83 amount=-1 +kerning first=346 second=351 amount=-1 +kerning first=266 second=72 amount=-1 +kerning first=268 second=336 amount=-2 +kerning first=66 second=291 amount=-2 +kerning first=212 second=86 amount=-1 +kerning first=347 second=107 amount=-1 +kerning first=256 second=337 amount=-1 +kerning first=8217 second=234 amount=-2 +kerning first=221 second=249 amount=-1 +kerning first=220 second=337 amount=-1 +kerning first=210 second=171 amount=-1 +kerning first=269 second=240 amount=-1 +kerning first=317 second=382 amount=-1 +kerning first=203 second=107 amount=-1 +kerning first=353 second=382 amount=-1 +kerning first=8216 second=243 amount=-1 +kerning first=296 second=261 amount=-1 +kerning first=364 second=337 amount=-1 +kerning first=377 second=240 amount=-1 +kerning first=284 second=86 amount=-1 +kerning first=275 second=107 amount=-1 +kerning first=368 second=261 amount=-2 +kerning first=199 second=216 amount=-2 +kerning first=8222 second=370 amount=-2 +kerning first=78 second=117 amount=-1 +kerning first=262 second=209 amount=-1 +kerning first=1047 second=1024 amount=-1 +kerning first=1047 second=1025 amount=-1 +kerning first=1057 second=1030 amount=-1 +kerning first=1057 second=1031 amount=-1 +kerning first=1057 second=1033 amount=-1 +kerning first=1069 second=1034 amount=-1 +kerning first=1025 second=1036 amount=-1 +kerning first=1045 second=1037 amount=-1 +kerning first=1047 second=1038 amount=-1 +kerning first=1047 second=1039 amount=-1 +kerning first=1043 second=1040 amount=-2 +kerning first=1045 second=1041 amount=-1 +kerning first=1025 second=1042 amount=-1 +kerning first=1025 second=1043 amount=-1 +kerning first=1057 second=1045 amount=-1 +kerning first=1047 second=1047 amount=-1 +kerning first=1057 second=1048 amount=-1 +kerning first=1057 second=1049 amount=-1 +kerning first=1025 second=1050 amount=-1 +kerning first=1059 second=1051 amount=-3 +kerning first=1057 second=1052 amount=-1 +kerning first=1057 second=1053 amount=-1 +kerning first=1067 second=1054 amount=-1 +kerning first=1069 second=1055 amount=-1 +kerning first=1047 second=1056 amount=-1 +kerning first=1057 second=1057 amount=-1 +kerning first=1045 second=1058 amount=-1 +kerning first=1025 second=1059 amount=-1 +kerning first=1051 second=1060 amount=-1 +kerning first=1057 second=1062 amount=-1 +kerning first=1057 second=1063 amount=-1 +kerning first=1045 second=1064 amount=-1 +kerning first=1057 second=1065 amount=-1 +kerning first=302 second=100 amount=-1 +kerning first=1045 second=1067 amount=-1 +kerning first=197 second=240 amount=-1 +kerning first=1057 second=1070 amount=-1 +kerning first=1091 second=1072 amount=-1 +kerning first=1065 second=1073 amount=-1 +kerning first=1043 second=1074 amount=-1 +kerning first=1059 second=1075 amount=-2 +kerning first=1047 second=1076 amount=-1 +kerning first=1061 second=1077 amount=-1 +kerning first=1027 second=1078 amount=-2 +kerning first=1027 second=1079 amount=-1 +kerning first=1027 second=1080 amount=-1 +kerning first=1043 second=1081 amount=-1 +kerning first=1113 second=1082 amount=-1 +kerning first=1057 second=1083 amount=-1 +kerning first=1027 second=1084 amount=-1 +kerning first=1031 second=1086 amount=-1 +kerning first=1043 second=1087 amount=-1 +kerning first=1043 second=1088 amount=-1 +kerning first=1031 second=1089 amount=-1 +kerning first=1059 second=1090 amount=-1 +kerning first=1045 second=1091 amount=-1 +kerning first=1027 second=1092 amount=-1 +kerning first=1059 second=1093 amount=-2 +kerning first=1027 second=1094 amount=-1 +kerning first=1063 second=1095 amount=-1 +kerning first=1043 second=1096 amount=-1 +kerning first=1059 second=1097 amount=-2 +kerning first=1025 second=1098 amount=-1 +kerning first=1027 second=1100 amount=-1 +kerning first=1043 second=1101 amount=-1 +kerning first=1057 second=1102 amount=-1 +kerning first=1047 second=1103 amount=-1 +kerning first=1027 second=1104 amount=-1 +kerning first=1043 second=1105 amount=-1 +kerning first=1027 second=1107 amount=-1 +kerning first=1027 second=1108 amount=-1 +kerning first=1069 second=1113 amount=-1 +kerning first=1057 second=1114 amount=-1 +kerning first=1043 second=1116 amount=-1 +kerning first=1043 second=1117 amount=-1 +kerning first=214 second=350 amount=-1 +kerning first=1057 second=1119 amount=-1 +kerning first=210 second=227 amount=-1 +kerning first=304 second=252 amount=-1 +kerning first=73 second=350 amount=-1 +kerning first=105 second=227 amount=-1 +kerning first=376 second=252 amount=-1 +kerning first=107 second=8221 amount=-1 +kerning first=362 second=246 amount=-1 +kerning first=84 second=305 amount=-1 +kerning first=354 second=227 amount=-2 +kerning first=374 second=44 amount=-3 +kerning first=1118 second=1076 amount=-2 +kerning first=196 second=252 amount=-1 +kerning first=286 second=350 amount=-1 +kerning first=66 second=207 amount=-2 +kerning first=282 second=227 amount=-1 +kerning first=232 second=252 amount=-1 +kerning first=120 second=45 amount=-2 +kerning first=264 second=356 amount=-1 +kerning first=218 second=246 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=209 second=382 amount=-1 +kerning first=351 second=291 amount=-1 +kerning first=332 second=317 amount=-1 +kerning first=200 second=260 amount=-1 +kerning first=245 second=382 amount=-1 +kerning first=315 second=291 amount=-1 +kerning first=225 second=45 amount=-1 +kerning first=192 second=356 amount=-3 +kerning first=218 second=121 amount=-1 +kerning first=113 second=246 amount=-1 +kerning first=281 second=382 amount=-1 +kerning first=279 second=291 amount=-1 +kerning first=201 second=103 amount=-1 +kerning first=77 second=246 amount=-1 +kerning first=272 second=260 amount=-2 +kerning first=243 second=291 amount=-1 +kerning first=321 second=362 amount=-1 +kerning first=69 second=227 amount=-1 +kerning first=251 second=226 amount=-1 +kerning first=207 second=291 amount=-1 +kerning first=315 second=207 amount=-1 +kerning first=261 second=45 amount=-1 +kerning first=287 second=226 amount=-1 +kerning first=68 second=382 amount=-1 +kerning first=369 second=45 amount=-1 +kerning first=88 second=84 amount=-1 +kerning first=323 second=226 amount=-1 +kerning first=102 second=291 amount=-1 +kerning first=304 second=336 amount=-1 +kerning first=8220 second=195 amount=-4 +kerning first=193 second=232 amount=-1 +kerning first=366 second=109 amount=-1 +kerning first=376 second=336 amount=-1 +kerning first=368 second=365 amount=-1 +kerning first=200 second=115 amount=-1 +kerning first=236 second=115 amount=-1 +kerning first=283 second=187 amount=-1 +kerning first=377 second=212 amount=-1 +kerning first=381 second=103 amount=-2 +kerning first=214 second=90 amount=-1 +kerning first=345 second=103 amount=-1 +kerning first=344 second=115 amount=-1 +kerning first=266 second=44 amount=-1 +kerning first=380 second=115 amount=-1 +kerning first=230 second=44 amount=-2 +kerning first=350 second=303 amount=-1 +kerning first=380 second=232 amount=-1 +kerning first=45 second=109 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=338 second=44 amount=-1 +kerning first=344 second=232 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=200 second=259 amount=-1 +kerning first=8217 second=259 amount=-3 +kerning first=264 second=213 amount=-2 +kerning first=268 second=104 amount=-1 +kerning first=378 second=8249 amount=-2 +kerning first=101 second=303 amount=-1 +kerning first=87 second=328 amount=-1 +kerning first=201 second=75 amount=-1 +kerning first=187 second=315 amount=-3 +kerning first=283 second=98 amount=-1 +kerning first=250 second=118 amount=-1 +kerning first=381 second=75 amount=-1 +kerning first=8216 second=287 amount=-2 +kerning first=270 second=8249 amount=-1 +kerning first=264 second=328 amount=-1 +kerning first=8218 second=102 amount=-1 +kerning first=314 second=303 amount=-1 +kerning first=268 second=280 amount=-1 +kerning first=334 second=120 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=286 second=118 amount=-1 +kerning first=370 second=120 amount=-1 +kerning first=263 second=105 amount=-1 +kerning first=242 second=303 amount=-1 +kerning first=106 second=98 amount=-1 +kerning first=73 second=118 amount=-1 +kerning first=1118 second=1104 amount=-1 +kerning first=1082 second=1104 amount=-1 +kerning first=109 second=118 amount=-1 +kerning first=1046 second=1104 amount=-1 +kerning first=210 second=370 amount=-1 +kerning first=290 second=218 amount=-1 +kerning first=8220 second=223 amount=-1 +kerning first=80 second=325 amount=-1 +kerning first=84 second=193 amount=-3 +kerning first=264 second=241 amount=-1 +kerning first=260 second=263 amount=-1 +kerning first=1025 second=1070 amount=-1 +kerning first=282 second=370 amount=-1 +kerning first=203 second=196 amount=-1 +kerning first=234 second=122 amount=-1 +kerning first=378 second=305 amount=-1 +kerning first=311 second=283 amount=-1 +kerning first=102 second=104 amount=2 +kerning first=354 second=370 amount=-1 +kerning first=76 second=314 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=347 second=311 amount=-1 +kerning first=171 second=87 amount=-2 +kerning first=213 second=362 amount=-1 +kerning first=88 second=112 amount=-1 +kerning first=73 second=266 amount=-1 +kerning first=275 second=311 amount=-1 +kerning first=83 second=317 amount=-1 +kerning first=325 second=286 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=350 second=331 amount=-1 +kerning first=346 second=65 amount=-2 +kerning first=87 second=269 amount=-2 +kerning first=217 second=286 amount=-1 +kerning first=253 second=314 amount=-1 +kerning first=203 second=311 amount=-1 +kerning first=219 second=8249 amount=-3 +kerning first=231 second=261 amount=-1 +kerning first=87 second=8250 amount=-1 +kerning first=278 second=331 amount=-1 +kerning first=192 second=269 amount=-1 +kerning first=98 second=311 amount=-1 +kerning first=314 second=331 amount=-1 +kerning first=1093 second=1118 amount=-1 +kerning first=1057 second=1059 amount=-1 +kerning first=289 second=314 amount=-1 +kerning first=354 second=255 amount=-1 +kerning first=207 second=235 amount=-1 +kerning first=83 second=345 amount=-1 +kerning first=270 second=8221 amount=-1 +kerning first=264 second=269 amount=-1 +kerning first=376 second=280 amount=-1 +kerning first=119 second=345 amount=-1 +kerning first=76 second=286 amount=-1 +kerning first=258 second=81 amount=-1 +kerning first=101 second=331 amount=-1 +kerning first=222 second=196 amount=-2 +kerning first=246 second=255 amount=-1 +kerning first=234 second=8221 amount=-1 +kerning first=337 second=112 amount=-1 +kerning first=330 second=81 amount=-1 +kerning first=1100 second=1090 amount=-1 +kerning first=231 second=118 amount=-1 +kerning first=203 second=224 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=311 second=224 amount=-1 +kerning first=366 second=81 amount=-1 +kerning first=368 second=345 amount=-1 +kerning first=275 second=224 amount=-1 +kerning first=193 second=112 amount=-1 +kerning first=281 second=326 amount=-1 +kerning first=66 second=378 amount=-2 +kerning first=1058 second=1078 amount=-1 +kerning first=90 second=205 amount=-1 +kerning first=317 second=326 amount=-1 +kerning first=256 second=250 amount=-1 +kerning first=243 second=347 amount=-1 +kerning first=347 second=224 amount=-1 +kerning first=353 second=326 amount=-1 +kerning first=364 second=250 amount=-1 +kerning first=207 second=347 amount=-1 +kerning first=98 second=255 amount=-1 +kerning first=8218 second=303 amount=-1 +kerning first=328 second=250 amount=-1 +kerning first=102 second=378 amount=-1 +kerning first=220 second=281 amount=-1 +kerning first=84 second=101 amount=-2 +kerning first=115 second=250 amount=-1 +kerning first=102 second=347 amount=-1 +kerning first=120 second=101 amount=-1 +kerning first=1069 second=1033 amount=-1 +kerning first=298 second=352 amount=-1 +kerning first=66 second=347 amount=-1 +kerning first=76 second=344 amount=-1 +kerning first=378 second=371 amount=-1 +kerning first=220 second=250 amount=-1 +kerning first=264 second=71 amount=-2 +kerning first=107 second=231 amount=-1 +kerning first=218 second=333 amount=-1 +kerning first=8217 second=83 amount=-1 +kerning first=307 second=328 amount=-1 +kerning first=121 second=237 amount=-1 +kerning first=351 second=378 amount=-1 +kerning first=282 second=76 amount=-1 +kerning first=268 second=366 amount=-1 +kerning first=347 second=8220 amount=-1 +kerning first=1058 second=1047 amount=-1 +kerning first=235 second=328 amount=-1 +kerning first=311 second=8220 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=199 second=328 amount=-1 +kerning first=243 second=378 amount=-1 +kerning first=275 second=8220 amount=-1 +kerning first=290 second=302 amount=-1 +kerning first=351 second=345 amount=-1 +kerning first=88 second=257 amount=-1 +kerning first=207 second=378 amount=-1 +kerning first=1039 second=1073 amount=-1 +kerning first=204 second=210 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=113 second=333 amount=-1 +kerning first=379 second=328 amount=-1 +kerning first=77 second=333 amount=-1 +kerning first=98 second=8220 amount=-1 +kerning first=204 second=243 amount=-1 +kerning first=272 second=87 amount=-1 +kerning first=336 second=344 amount=-1 +kerning first=97 second=353 amount=-1 +kerning first=200 second=87 amount=-1 +kerning first=74 second=198 amount=-3 +kerning first=362 second=333 amount=-1 +kerning first=87 second=68 amount=-1 +kerning first=325 second=113 amount=-1 +kerning first=8217 second=114 amount=-1 +kerning first=289 second=113 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=45 second=194 amount=-2 +kerning first=253 second=113 amount=-1 +kerning first=99 second=243 amount=-1 +kerning first=217 second=345 amount=-1 +kerning first=217 second=113 amount=-1 +kerning first=85 second=120 amount=-1 +kerning first=121 second=120 amount=-1 +kerning first=198 second=368 amount=-1 +kerning first=226 second=120 amount=-1 +kerning first=68 second=323 amount=-1 +kerning first=347 second=255 amount=-1 +kerning first=356 second=262 amount=-1 +kerning first=209 second=214 amount=-1 +kerning first=275 second=255 amount=-1 +kerning first=73 second=210 amount=-1 +kerning first=1079 second=1095 amount=-1 +kerning first=1038 second=1113 amount=-3 +kerning first=68 second=354 amount=-1 +kerning first=88 second=229 amount=-1 +kerning first=269 second=347 amount=-1 +kerning first=347 second=227 amount=-1 +kerning first=1024 second=1054 amount=-1 +kerning first=370 second=324 amount=-1 +kerning first=290 second=274 amount=-1 +kerning first=317 second=323 amount=-1 +kerning first=311 second=227 amount=-1 +kerning first=275 second=227 amount=-1 +kerning first=107 second=234 amount=-1 +kerning first=262 second=324 amount=-1 +kerning first=345 second=44 amount=-2 +kerning first=317 second=354 amount=-1 +kerning first=314 second=99 amount=-1 +kerning first=90 second=233 amount=-1 +kerning first=231 second=233 amount=-1 +kerning first=374 second=101 amount=-2 +kerning first=356 second=234 amount=-2 +kerning first=195 second=233 amount=-1 +kerning first=110 second=106 amount=-1 +kerning first=303 second=233 amount=-1 +kerning first=267 second=233 amount=-1 +kerning first=381 second=279 amount=-1 +kerning first=219 second=264 amount=-1 +kerning first=375 second=233 amount=-1 +kerning first=251 second=106 amount=-1 +kerning first=203 second=227 amount=-1 +kerning first=344 second=87 amount=-1 +kerning first=76 second=110 amount=-1 +kerning first=326 second=361 amount=-1 +kerning first=1047 second=1064 amount=-1 +kerning first=68 second=66 amount=-1 +kerning first=302 second=243 amount=-1 +kerning first=88 second=316 amount=-1 +kerning first=65 second=219 amount=-2 +kerning first=378 second=111 amount=-1 +kerning first=193 second=316 amount=-1 +kerning first=217 second=110 amount=-1 +kerning first=362 second=361 amount=-1 +kerning first=229 second=316 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=204 second=212 amount=-1 +kerning first=209 second=267 amount=-1 +kerning first=87 second=65 amount=-3 +kerning first=196 second=364 amount=-2 +kerning first=289 second=110 amount=-1 +kerning first=90 second=264 amount=-1 +kerning first=337 second=316 amount=-1 +kerning first=333 second=104 amount=-1 +kerning first=264 second=65 amount=-2 +kerning first=1038 second=1057 amount=-1 +kerning first=201 second=44 amount=-1 +kerning first=77 second=361 amount=-1 +kerning first=330 second=336 amount=-1 +kerning first=336 second=65 amount=-2 +kerning first=317 second=66 amount=-1 +kerning first=268 second=364 amount=-1 +kerning first=76 second=82 amount=-1 +kerning first=334 second=89 amount=-1 +kerning first=369 second=104 amount=-1 +kerning first=218 second=361 amount=-1 +kerning first=376 second=364 amount=-1 +kerning first=317 second=122 amount=-1 +kerning first=370 second=117 amount=-1 +kerning first=201 second=72 amount=-1 +kerning first=281 second=122 amount=-1 +kerning first=328 second=46 amount=-1 +kerning first=187 second=97 amount=-1 +kerning first=69 second=370 amount=-1 +kerning first=245 second=122 amount=-1 +kerning first=364 second=46 amount=-3 +kerning first=278 second=102 amount=-1 +kerning first=209 second=122 amount=-1 +kerning first=85 second=377 amount=-1 +kerning first=206 second=71 amount=-1 +kerning first=364 second=225 amount=-2 +kerning first=381 second=72 amount=-1 +kerning first=84 second=76 amount=-1 +kerning first=115 second=46 amount=-1 +kerning first=250 second=121 amount=-1 +kerning first=303 second=116 amount=-1 +kerning first=278 second=71 amount=-1 +kerning first=220 second=46 amount=-3 +kerning first=367 second=97 amount=-1 +kerning first=101 second=102 amount=-1 +kerning first=353 second=122 amount=-1 +kerning first=375 second=116 amount=-1 +kerning first=109 second=121 amount=-1 +kerning first=262 second=377 amount=-1 +kerning first=85 second=117 amount=-1 +kerning first=350 second=219 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=278 second=219 amount=-1 +kerning first=314 second=102 amount=-1 +kerning first=262 second=117 amount=-1 +kerning first=201 second=332 amount=-1 +kerning first=350 second=102 amount=-1 +kerning first=226 second=117 amount=-1 +kerning first=334 second=377 amount=-1 +kerning first=104 second=8217 amount=-2 +kerning first=107 second=287 amount=-1 +kerning first=68 second=122 amount=-1 +kerning first=370 second=377 amount=-1 +kerning first=71 second=287 amount=-1 +kerning first=298 second=117 amount=-1 +kerning first=198 second=200 amount=-1 +kerning first=352 second=364 amount=-1 +kerning first=381 second=332 amount=-1 +kerning first=212 second=287 amount=-1 +kerning first=204 second=240 amount=-1 +kerning first=82 second=242 amount=-1 +kerning first=284 second=287 amount=-1 +kerning first=248 second=287 amount=-1 +kerning first=278 second=249 amount=-1 +kerning first=99 second=240 amount=-1 +kerning first=356 second=287 amount=-2 +kerning first=108 second=8221 amount=-2 +kerning first=201 second=220 amount=-1 +kerning first=118 second=242 amount=-1 +kerning first=212 second=259 amount=-1 +kerning first=381 second=304 amount=-1 +kerning first=68 second=298 amount=-1 +kerning first=198 second=284 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=284 second=259 amount=-1 +kerning first=361 second=8217 amount=-2 +kerning first=261 second=8220 amount=-1 +kerning first=361 second=8221 amount=-2 +kerning first=251 second=369 amount=-1 +kerning first=85 second=324 amount=-1 +kerning first=195 second=116 amount=-1 +kerning first=250 second=380 amount=-1 +kerning first=351 second=375 amount=-1 +kerning first=261 second=8249 amount=-1 +kerning first=381 second=8250 amount=-1 +kerning first=315 second=375 amount=-1 +kerning first=323 second=369 amount=-1 +kerning first=267 second=116 amount=-1 +kerning first=198 second=197 amount=-1 +kerning first=1069 second=1030 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=279 second=375 amount=-1 +kerning first=287 second=369 amount=-1 +kerning first=121 second=324 amount=-1 +kerning first=231 second=116 amount=-1 +kerning first=82 second=97 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=118 second=97 amount=-2 +kerning first=201 second=304 amount=-1 +kerning first=209 second=119 amount=-1 +kerning first=90 second=116 amount=-1 +kerning first=220 second=194 amount=-2 +kerning first=245 second=119 amount=-1 +kerning first=110 second=369 amount=-1 +kerning first=1058 second=1075 amount=-1 +kerning first=281 second=119 amount=-1 +kerning first=381 second=248 amount=-1 +kerning first=79 second=74 amount=-1 +kerning first=234 second=228 amount=-1 +kerning first=1027 second=1105 amount=-1 +kerning first=328 second=253 amount=-1 +kerning first=317 second=119 amount=-1 +kerning first=284 second=203 amount=-1 +kerning first=198 second=228 amount=-1 +kerning first=353 second=119 amount=-1 +kerning first=220 second=74 amount=-1 +kerning first=243 second=375 amount=-1 +kerning first=195 second=217 amount=-2 +kerning first=207 second=375 amount=-1 +kerning first=364 second=74 amount=-1 +kerning first=118 second=273 amount=-1 +kerning first=264 second=68 amount=-1 +kerning first=204 second=268 amount=-1 +kerning first=221 second=196 amount=-3 +kerning first=99 second=355 amount=-1 +kerning first=198 second=80 amount=-1 +kerning first=115 second=253 amount=-1 +kerning first=317 second=298 amount=-1 +kerning first=220 second=253 amount=-1 +kerning first=336 second=68 amount=-1 +kerning first=72 second=264 amount=-1 +kerning first=256 second=253 amount=-1 +kerning first=356 second=203 amount=-1 +kerning first=201 second=363 amount=-1 +kerning first=68 second=270 amount=-1 +kerning first=381 second=335 amount=-1 +kerning first=98 second=8217 amount=-1 +kerning first=234 second=108 amount=-1 +kerning first=74 second=338 amount=-1 +kerning first=208 second=381 amount=-1 +kerning first=356 second=290 amount=-1 +kerning first=364 second=105 amount=-1 +kerning first=381 second=363 amount=-1 +kerning first=118 second=245 amount=-1 +kerning first=378 second=108 amount=-1 +kerning first=248 second=318 amount=-1 +kerning first=82 second=245 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=220 second=105 amount=-1 +kerning first=220 second=225 amount=-2 +kerning first=262 second=380 amount=-1 +kerning first=356 second=231 amount=-2 +kerning first=8218 second=362 amount=-2 +kerning first=298 second=380 amount=-1 +kerning first=115 second=105 amount=-1 +kerning first=1038 second=1060 amount=-1 +kerning first=334 second=380 amount=-1 +kerning first=1091 second=1083 amount=-1 +kerning first=108 second=331 amount=-1 +kerning first=307 second=8217 amount=-1 +kerning first=370 second=380 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=323 second=338 amount=-1 +kerning first=378 second=228 amount=-1 +kerning first=364 second=251 amount=-1 +kerning first=79 second=225 amount=-1 +kerning first=98 second=119 amount=-1 +kerning first=207 second=248 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=317 second=270 amount=-1 +kerning first=311 second=8217 amount=-1 +kerning first=115 second=225 amount=-1 +kerning first=198 second=108 amount=-1 +kerning first=347 second=8217 amount=-1 +kerning first=313 second=350 amount=-1 +kerning first=330 second=351 amount=-1 +kerning first=234 second=225 amount=-1 +kerning first=110 second=251 amount=-1 +kerning first=371 second=228 amount=-1 +kerning first=8217 second=262 amount=-1 +kerning first=251 second=251 amount=-1 +kerning first=376 second=282 amount=-1 +kerning first=108 second=303 amount=-1 +kerning first=323 second=251 amount=-1 +kerning first=263 second=228 amount=-1 +kerning first=1114 second=1093 amount=-1 +kerning first=287 second=251 amount=-1 +kerning first=1042 second=1093 amount=-1 +kerning first=122 second=228 amount=-1 +kerning first=198 second=225 amount=-1 +kerning first=278 second=46 amount=-1 +kerning first=86 second=228 amount=-2 +kerning first=262 second=206 amount=-1 +kerning first=350 second=46 amount=-2 +kerning first=214 second=325 amount=-1 +kerning first=334 second=206 amount=-1 +kerning first=88 second=103 amount=-1 +kerning first=101 second=46 amount=-2 +kerning first=71 second=83 amount=-1 +kerning first=45 second=310 amount=-3 +kerning first=378 second=225 amount=-1 +kerning first=286 second=325 amount=-1 +kerning first=84 second=280 amount=-1 +kerning first=206 second=46 amount=-1 +kerning first=277 second=287 amount=-1 +kerning first=1054 second=1070 amount=-1 +kerning first=115 second=102 amount=-1 +kerning first=242 second=46 amount=-2 +kerning first=212 second=83 amount=-1 +kerning first=106 second=355 amount=-1 +kerning first=315 second=266 amount=-1 +kerning first=338 second=363 amount=-1 +kerning first=258 second=112 amount=-1 +kerning first=290 second=46 amount=-1 +kerning first=284 second=83 amount=-1 +kerning first=374 second=363 amount=-1 +kerning first=241 second=318 amount=-1 +kerning first=79 second=362 amount=-1 +kerning first=277 second=318 amount=-1 +kerning first=356 second=83 amount=-2 +kerning first=117 second=112 amount=-1 +kerning first=313 second=318 amount=-1 +kerning first=364 second=102 amount=-1 +kerning first=250 second=289 amount=-1 +kerning first=317 second=214 amount=-1 +kerning first=207 second=266 amount=-1 +kerning first=45 second=112 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=268 second=311 amount=-1 +kerning first=344 second=235 amount=-1 +kerning first=378 second=259 amount=-1 +kerning first=321 second=105 amount=-1 +kerning first=380 second=235 amount=-1 +kerning first=88 second=81 amount=-1 +kerning first=249 second=105 amount=-1 +kerning first=99 second=98 amount=-1 +kerning first=378 second=248 amount=-1 +kerning first=234 second=259 amount=-1 +kerning first=76 second=382 amount=-1 +kerning first=198 second=259 amount=-1 +kerning first=366 second=112 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=330 second=112 amount=-1 +kerning first=108 second=105 amount=-1 +kerning first=282 second=230 amount=-1 +kerning first=1082 second=1079 amount=-1 +kerning first=66 second=204 amount=-2 +kerning first=67 second=282 amount=-1 +kerning first=304 second=249 amount=-1 +kerning first=90 second=379 amount=-1 +kerning first=219 second=346 amount=-1 +kerning first=379 second=275 amount=-1 +kerning first=210 second=230 amount=-1 +kerning first=377 second=327 amount=-1 +kerning first=232 second=249 amount=-1 +kerning first=1046 second=1079 amount=-1 +kerning first=268 second=249 amount=-1 +kerning first=105 second=230 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=82 second=100 amount=-1 +kerning first=1061 second=1095 amount=-2 +kerning first=118 second=100 amount=-1 +kerning first=255 second=240 amount=-1 +kerning first=1025 second=1095 amount=-1 +kerning first=315 second=204 amount=-1 +kerning first=376 second=249 amount=-1 +kerning first=327 second=346 amount=-1 +kerning first=69 second=230 amount=-1 +kerning first=196 second=107 amount=-1 +kerning first=354 second=339 amount=-2 +kerning first=217 second=8249 amount=-3 +kerning first=220 second=121 amount=-1 +kerning first=381 second=223 amount=-1 +kerning first=232 second=305 amount=-1 +kerning first=268 second=107 amount=-1 +kerning first=232 second=107 amount=-1 +kerning first=84 second=333 amount=-2 +kerning first=66 second=260 amount=-3 +kerning first=298 second=268 amount=-1 +kerning first=8218 second=250 amount=-1 +kerning first=268 second=305 amount=-1 +kerning first=354 second=230 amount=-2 +kerning first=313 second=256 amount=-1 +kerning first=376 second=305 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=201 second=223 amount=-1 +kerning first=370 second=268 amount=-1 +kerning first=1025 second=1039 amount=-1 +kerning first=369 second=8217 amount=-2 +kerning first=192 second=244 amount=-1 +kerning first=374 second=192 amount=-3 +kerning first=338 second=192 amount=-1 +kerning first=108 second=365 amount=-1 +kerning first=1098 second=1117 amount=-1 +kerning first=262 second=268 amount=-2 +kerning first=71 second=315 amount=-1 +kerning first=264 second=244 amount=-1 +kerning first=220 second=102 amount=-1 +kerning first=72 second=365 amount=-1 +kerning first=315 second=260 amount=-1 +kerning first=8220 second=226 amount=-1 +kerning first=266 second=192 amount=-2 +kerning first=363 second=237 amount=-1 +kerning first=84 second=218 amount=-1 +kerning first=203 second=199 amount=-1 +kerning first=261 second=8217 amount=-1 +kerning first=73 second=263 amount=-1 +kerning first=291 second=237 amount=-1 +kerning first=85 second=268 amount=-1 +kerning first=255 second=237 amount=-1 +kerning first=333 second=8217 amount=-1 +kerning first=89 second=192 amount=-3 +kerning first=228 second=353 amount=-1 +kerning first=219 second=237 amount=-1 +kerning first=73 second=121 amount=-1 +kerning first=217 second=117 amount=-1 +kerning first=199 second=275 amount=-1 +kerning first=264 second=353 amount=-1 +kerning first=206 second=334 amount=-1 +kerning first=375 second=101 amount=-1 +kerning first=352 second=282 amount=-1 +kerning first=284 second=315 amount=-1 +kerning first=8220 second=335 amount=-1 +kerning first=278 second=334 amount=-1 +kerning first=187 second=270 amount=-3 +kerning first=356 second=315 amount=-1 +kerning first=1057 second=1034 amount=-1 +kerning first=217 second=289 amount=-2 +kerning first=78 second=346 amount=-1 +kerning first=268 second=252 amount=-1 +kerning first=321 second=365 amount=-1 +kerning first=8250 second=354 amount=-2 +kerning first=87 second=244 amount=-2 +kerning first=1060 second=1051 amount=-1 +kerning first=88 second=232 amount=-1 +kerning first=104 second=351 amount=-1 +kerning first=72 second=99 amount=-1 +kerning first=74 second=257 amount=-1 +kerning first=1025 second=1065 amount=-1 +kerning first=362 second=277 amount=-1 +kerning first=279 second=249 amount=-1 +kerning first=371 second=8249 amount=-1 +kerning first=113 second=277 amount=-1 +kerning first=108 second=99 amount=-1 +kerning first=214 second=381 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=70 second=361 amount=-1 +kerning first=337 second=347 amount=-1 +kerning first=332 second=202 amount=-1 +kerning first=218 second=277 amount=-1 +kerning first=286 second=381 amount=-1 +kerning first=84 second=336 amount=-1 +kerning first=353 second=351 amount=-1 +kerning first=288 second=69 amount=-1 +kerning first=376 second=367 amount=-1 +kerning first=317 second=351 amount=-1 +kerning first=370 second=212 amount=-1 +kerning first=77 second=277 amount=-1 +kerning first=69 second=79 amount=-1 +kerning first=262 second=212 amount=-2 +kerning first=216 second=69 amount=-1 +kerning first=304 second=367 amount=-1 +kerning first=298 second=212 amount=-1 +kerning first=209 second=351 amount=-1 +kerning first=323 second=257 amount=-1 +kerning first=232 second=367 amount=-1 +kerning first=354 second=79 amount=-1 +kerning first=268 second=367 amount=-1 +kerning first=281 second=351 amount=-1 +kerning first=85 second=212 amount=-1 +kerning first=251 second=257 amount=-1 +kerning first=245 second=351 amount=-1 +kerning first=282 second=79 amount=-1 +kerning first=287 second=257 amount=-1 +kerning first=236 second=291 amount=-1 +kerning first=122 second=337 amount=-1 +kerning first=258 second=316 amount=-1 +kerning first=267 second=261 amount=-1 +kerning first=200 second=291 amount=-1 +kerning first=86 second=337 amount=-2 +kerning first=303 second=261 amount=-1 +kerning first=206 second=216 amount=-1 +kerning first=8250 second=298 amount=-3 +kerning first=339 second=261 amount=-1 +kerning first=1044 second=1047 amount=-1 +kerning first=375 second=261 amount=-2 +kerning first=119 second=314 amount=-1 +kerning first=75 second=267 amount=-1 +kerning first=67 second=226 amount=-1 +kerning first=90 second=261 amount=-1 +kerning first=216 second=382 amount=-1 +kerning first=263 second=337 amount=-1 +kerning first=83 second=314 amount=-1 +kerning first=103 second=226 amount=-1 +kerning first=269 second=271 amount=-1 +kerning first=252 second=382 amount=-1 +kerning first=224 second=314 amount=-1 +kerning first=1045 second=1057 amount=-1 +kerning first=378 second=281 amount=-1 +kerning first=288 second=382 amount=-1 +kerning first=1053 second=1104 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=208 second=226 amount=-1 +kerning first=253 second=171 amount=-2 +kerning first=260 second=314 amount=-1 +kerning first=106 second=361 amount=-1 +kerning first=229 second=347 amount=-1 +kerning first=289 second=171 amount=-1 +kerning first=371 second=337 amount=-1 +kerning first=193 second=347 amount=-1 +kerning first=199 second=269 amount=-1 +kerning first=325 second=171 amount=-2 +kerning first=361 second=171 amount=-1 +kerning first=106 second=255 amount=-1 +kerning first=278 second=216 amount=-1 +kerning first=69 second=224 amount=-1 +kerning first=118 second=326 amount=-1 +kerning first=88 second=347 amount=-1 +kerning first=76 second=171 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=283 second=361 amount=-1 +kerning first=117 second=316 amount=-1 +kerning first=187 second=326 amount=-1 +kerning first=1042 second=1037 amount=-1 +kerning first=241 second=8221 amount=-2 +kerning first=105 second=224 amount=-1 +kerning first=217 second=171 amount=-3 +kerning first=304 second=45 amount=-2 +kerning first=268 second=45 amount=-2 +kerning first=8220 second=279 amount=-1 +kerning first=210 second=224 amount=-1 +kerning first=379 second=269 amount=-1 +kerning first=89 second=103 amount=-2 +kerning first=376 second=71 amount=-1 +kerning first=98 second=115 amount=-1 +kerning first=229 second=371 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=275 second=252 amount=-1 +kerning first=282 second=224 amount=-1 +kerning first=253 second=227 amount=-2 +kerning first=354 second=224 amount=-2 +kerning first=217 second=227 amount=-2 +kerning first=317 second=206 amount=-1 +kerning first=222 second=201 amount=-1 +kerning first=225 second=363 amount=-1 +kerning first=286 second=207 amount=-1 +kerning first=196 second=311 amount=-1 +kerning first=291 second=318 amount=-1 +kerning first=268 second=101 amount=-1 +kerning first=81 second=201 amount=-1 +kerning first=316 second=226 amount=-1 +kerning first=310 second=251 amount=-1 +kerning first=374 second=103 amount=-2 +kerning first=304 second=101 amount=-1 +kerning first=45 second=201 amount=-3 +kerning first=1061 second=1101 amount=-1 +kerning first=221 second=90 amount=-1 +kerning first=338 second=103 amount=-1 +kerning first=110 second=316 amount=-1 +kerning first=302 second=103 amount=-1 +kerning first=344 second=291 amount=-1 +kerning first=347 second=252 amount=-1 +kerning first=376 second=101 amount=-2 +kerning first=266 second=103 amount=-1 +kerning first=214 second=207 amount=-1 +kerning first=90 second=317 amount=-1 +kerning first=256 second=362 amount=-2 +kerning first=230 second=103 amount=-1 +kerning first=196 second=45 amount=-2 +kerning first=80 second=356 amount=-1 +kerning first=194 second=103 amount=-1 +kerning first=82 second=44 amount=-1 +kerning first=199 second=213 amount=-2 +kerning first=200 second=84 amount=-1 +kerning first=347 second=104 amount=-1 +kerning first=1047 second=1067 amount=-1 +kerning first=212 second=89 amount=-1 +kerning first=368 second=74 amount=-1 +kerning first=118 second=44 amount=-3 +kerning first=354 second=283 amount=-2 +kerning first=284 second=89 amount=-1 +kerning first=228 second=367 amount=-1 +kerning first=287 second=109 amount=-1 +kerning first=71 second=89 amount=-1 +kerning first=344 second=84 amount=-1 +kerning first=362 second=338 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=8217 second=111 amount=-2 +kerning first=268 second=193 amount=-2 +kerning first=203 second=370 amount=-1 +kerning first=272 second=84 amount=-1 +kerning first=379 second=213 amount=-1 +kerning first=207 second=115 amount=-1 +kerning first=376 second=193 amount=-3 +kerning first=321 second=303 amount=-1 +kerning first=243 second=115 amount=-1 +kerning first=367 second=44 amount=-1 +kerning first=74 second=109 amount=-1 +kerning first=352 second=78 amount=-1 +kerning first=102 second=115 amount=-1 +kerning first=122 second=8249 amount=-2 +kerning first=325 second=227 amount=-1 +kerning first=249 second=303 amount=-1 +kerning first=289 second=227 amount=-1 +kerning first=280 second=78 amount=-1 +kerning first=351 second=115 amount=-1 +kerning first=259 second=44 amount=-1 +kerning first=256 second=346 amount=-2 +kerning first=223 second=44 amount=-2 +kerning first=8216 second=240 amount=-1 +kerning first=86 second=8249 amount=-3 +kerning first=208 second=78 amount=-1 +kerning first=279 second=115 amount=-1 +kerning first=331 second=44 amount=-1 +kerning first=315 second=115 amount=-1 +kerning first=98 second=104 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=69 second=374 amount=-1 +kerning first=313 second=368 amount=-1 +kerning first=201 second=78 amount=-1 +kerning first=279 second=378 amount=-1 +kerning first=313 second=203 amount=-1 +kerning first=379 second=68 amount=-1 +kerning first=73 second=375 amount=-1 +kerning first=374 second=248 amount=-2 +kerning first=367 second=361 amount=-1 +kerning first=351 second=118 amount=-1 +kerning first=208 second=75 amount=-1 +kerning first=216 second=323 amount=-1 +kerning first=8218 second=105 amount=-1 +kerning first=218 second=8249 amount=-3 +kerning first=8222 second=230 amount=-1 +kerning first=366 second=198 amount=-2 +kerning first=302 second=248 amount=-1 +kerning first=233 second=120 amount=-1 +kerning first=86 second=278 amount=-1 +kerning first=288 second=323 amount=-1 +kerning first=269 second=120 amount=-1 +kerning first=210 second=85 amount=-1 +kerning first=108 second=253 amount=-1 +kerning first=218 second=117 amount=-1 +kerning first=243 second=118 amount=-1 +kerning first=296 second=113 amount=-1 +kerning first=207 second=118 amount=-1 +kerning first=346 second=298 amount=-1 +kerning first=352 second=75 amount=-1 +kerning first=376 second=196 amount=-3 +kerning first=8220 second=257 amount=-1 +kerning first=315 second=118 amount=-1 +kerning first=69 second=85 amount=-1 +kerning first=249 second=253 amount=-1 +kerning first=279 second=118 amount=-1 +kerning first=280 second=75 amount=-1 +kerning first=211 second=203 amount=-1 +kerning first=113 second=229 amount=-1 +kerning first=66 second=118 amount=-2 +kerning first=77 second=382 amount=-1 +kerning first=268 second=196 amount=-2 +kerning first=321 second=253 amount=-1 +kerning first=86 second=80 amount=-1 +kerning first=310 second=233 amount=-1 +kerning first=83 second=84 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=368 second=113 amount=-1 +kerning first=100 second=108 amount=-1 +kerning first=382 second=233 amount=-1 +kerning first=78 second=290 amount=-1 +kerning first=1057 second=1087 amount=-1 +kerning first=325 second=283 amount=-1 +kerning first=280 second=338 amount=-1 +kerning first=289 second=283 amount=-1 +kerning first=253 second=283 amount=-1 +kerning first=1042 second=1040 amount=-1 +kerning first=350 second=328 amount=-1 +kerning first=83 second=110 amount=-1 +kerning first=219 second=290 amount=-1 +kerning first=217 second=283 amount=-1 +kerning first=354 second=85 amount=-1 +kerning first=277 second=108 amount=-1 +kerning first=103 second=335 amount=-1 +kerning first=119 second=110 amount=-1 +kerning first=354 second=286 amount=-1 +kerning first=241 second=108 amount=-1 +kerning first=8220 second=220 amount=-1 +kerning first=282 second=85 amount=-1 +kerning first=204 second=67 amount=-1 +kerning first=221 second=241 amount=-1 +kerning first=67 second=338 amount=-2 +kerning first=282 second=286 amount=-1 +kerning first=313 second=108 amount=-1 +kerning first=377 second=380 amount=-1 +kerning first=73 second=115 amount=-1 +kerning first=219 second=231 amount=-1 +kerning first=379 second=331 amount=-1 +kerning first=109 second=115 amount=-1 +kerning first=199 second=65 amount=-2 +kerning first=266 second=248 amount=-1 +kerning first=255 second=231 amount=-1 +kerning first=69 second=286 amount=-1 +kerning first=368 second=110 amount=-1 +kerning first=307 second=331 amount=-1 +kerning first=67 second=335 amount=-1 +kerning first=203 second=193 amount=-1 +kerning first=194 second=248 amount=-1 +kerning first=233 second=380 amount=-1 +kerning first=70 second=279 amount=-1 +kerning first=250 second=115 amount=-1 +kerning first=235 second=331 amount=-1 +kerning first=84 second=70 amount=-1 +kerning first=89 second=248 amount=-2 +kerning first=379 second=65 amount=-1 +kerning first=291 second=231 amount=-1 +kerning first=381 second=78 amount=-1 +kerning first=327 second=231 amount=-1 +kerning first=1046 second=1073 amount=-1 +kerning first=45 second=257 amount=-1 +kerning first=304 second=255 amount=-1 +kerning first=380 second=347 amount=-1 +kerning first=211 second=302 amount=-1 +kerning first=81 second=257 amount=-1 +kerning first=344 second=347 amount=-1 +kerning first=332 second=205 amount=-1 +kerning first=232 second=255 amount=-1 +kerning first=1075 second=1076 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=230 second=307 amount=-1 +kerning first=1101 second=1078 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=249 second=289 amount=-1 +kerning first=249 second=250 amount=-1 +kerning first=236 second=347 amount=-1 +kerning first=8222 second=289 amount=-1 +kerning first=78 second=231 amount=-1 +kerning first=200 second=347 amount=-1 +kerning first=337 second=8250 amount=-1 +kerning first=205 second=262 amount=-1 +kerning first=241 second=371 amount=-1 +kerning first=321 second=250 amount=-1 +kerning first=277 second=371 amount=-1 +kerning first=8250 second=316 amount=-1 +kerning first=366 second=257 amount=-2 +kerning first=250 second=378 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=72 second=250 amount=-1 +kerning first=214 second=378 amount=-1 +kerning first=268 second=203 amount=-1 +kerning first=81 second=366 amount=-1 +kerning first=302 second=353 amount=-1 +kerning first=1070 second=1052 amount=-1 +kerning first=78 second=352 amount=-1 +kerning first=45 second=366 amount=-2 +kerning first=100 second=371 amount=-1 +kerning first=330 second=257 amount=-1 +kerning first=286 second=378 amount=-1 +kerning first=108 second=250 amount=-1 +kerning first=67 second=332 amount=-2 +kerning first=222 second=257 amount=-1 +kerning first=73 second=378 amount=-1 +kerning first=314 second=328 amount=-1 +kerning first=278 second=328 amount=-1 +kerning first=258 second=366 amount=-2 +kerning first=364 second=194 amount=-2 +kerning first=222 second=366 amount=-1 +kerning first=219 second=352 amount=-1 +kerning first=246 second=119 amount=-1 +kerning first=1025 second=1045 amount=-1 +kerning first=352 second=254 amount=-1 +kerning first=200 second=288 amount=-1 +kerning first=232 second=8220 amount=-1 +kerning first=122 second=98 amount=-1 +kerning first=1040 second=1092 amount=-1 +kerning first=70 second=243 amount=-1 +kerning first=377 second=377 amount=-1 +kerning first=114 second=287 amount=-1 +kerning first=222 second=106 amount=-1 +kerning first=280 second=332 amount=-1 +kerning first=78 second=287 amount=-1 +kerning first=219 second=287 amount=-2 +kerning first=119 second=113 amount=-1 +kerning first=76 second=378 amount=-1 +kerning first=1050 second=1090 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=291 second=287 amount=-1 +kerning first=354 second=345 amount=-1 +kerning first=263 second=281 amount=-1 +kerning first=75 second=217 amount=-1 +kerning first=1058 second=1105 amount=-1 +kerning first=363 second=287 amount=-1 +kerning first=313 second=262 amount=-1 +kerning first=88 second=87 amount=-1 +kerning first=266 second=242 amount=-1 +kerning first=222 second=198 amount=-2 +kerning first=371 second=281 amount=-1 +kerning first=216 second=217 amount=-1 +kerning first=86 second=281 amount=-2 +kerning first=315 second=210 amount=-1 +kerning first=122 second=281 amount=-1 +kerning first=288 second=217 amount=-1 +kerning first=302 second=242 amount=-1 +kerning first=8222 second=224 amount=-1 +kerning first=344 second=288 amount=-1 +kerning first=376 second=255 amount=-1 +kerning first=81 second=198 amount=-2 +kerning first=313 second=197 amount=-1 +kerning first=111 second=119 amount=-1 +kerning first=67 second=279 amount=-1 +kerning first=202 second=354 amount=-1 +kerning first=45 second=254 amount=-1 +kerning first=72 second=45 amount=-2 +kerning first=269 second=324 amount=-1 +kerning first=313 second=374 amount=-1 +kerning first=203 second=249 amount=-1 +kerning first=233 second=324 amount=-1 +kerning first=84 second=274 amount=-1 +kerning first=274 second=354 amount=-1 +kerning first=332 second=379 amount=-1 +kerning first=117 second=254 amount=-1 +kerning first=252 second=119 amount=-1 +kerning first=103 second=279 amount=-1 +kerning first=310 second=354 amount=-1 +kerning first=89 second=304 amount=-1 +kerning first=86 second=74 amount=-2 +kerning first=288 second=119 amount=-1 +kerning first=346 second=354 amount=-1 +kerning first=1053 second=1054 amount=-1 +kerning first=324 second=119 amount=-1 +kerning first=258 second=369 amount=-1 +kerning first=199 second=334 amount=-2 +kerning first=272 second=344 amount=-1 +kerning first=8217 second=256 amount=-3 +kerning first=366 second=369 amount=-1 +kerning first=65 second=233 amount=-1 +kerning first=8250 second=351 amount=-1 +kerning first=330 second=369 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=74 second=264 amount=-1 +kerning first=272 second=229 amount=-1 +kerning first=8217 second=371 amount=-1 +kerning first=217 second=339 amount=-1 +kerning first=219 second=234 amount=-1 +kerning first=255 second=234 amount=-1 +kerning first=200 second=229 amount=-1 +kerning first=200 second=344 amount=-1 +kerning first=291 second=234 amount=-1 +kerning first=236 second=229 amount=-1 +kerning first=81 second=106 amount=-1 +kerning first=325 second=339 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=117 second=106 amount=-1 +kerning first=377 second=324 amount=-1 +kerning first=368 second=97 amount=-2 +kerning first=316 second=279 amount=-1 +kerning first=253 second=339 amount=-1 +kerning first=78 second=234 amount=-1 +kerning first=344 second=229 amount=-1 +kerning first=45 second=106 amount=-1 +kerning first=289 second=339 amount=-1 +kerning first=1057 second=1084 amount=-1 +kerning first=380 second=229 amount=-1 +kerning first=232 second=8217 amount=-1 +kerning first=205 second=111 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=199 second=219 amount=-1 +kerning first=368 second=264 amount=-1 +kerning first=377 second=209 amount=-1 +kerning first=268 second=199 amount=-2 +kerning first=1054 second=1064 amount=-1 +kerning first=296 second=264 amount=-1 +kerning first=8216 second=246 amount=-1 +kerning first=304 second=199 amount=-1 +kerning first=327 second=234 amount=-1 +kerning first=260 second=264 amount=-1 +kerning first=1040 second=1089 amount=-1 +kerning first=354 second=82 amount=-1 +kerning first=376 second=199 amount=-1 +kerning first=196 second=8217 amount=-3 +kerning first=264 second=105 amount=-1 +kerning first=379 second=334 amount=-1 +kerning first=243 second=121 amount=-1 +kerning first=203 second=364 amount=-1 +kerning first=252 second=251 amount=-1 +kerning first=210 second=289 amount=-1 +kerning first=207 second=121 amount=-1 +kerning first=210 second=82 amount=-1 +kerning first=216 second=66 amount=-1 +kerning first=1114 second=1099 amount=-1 +kerning first=246 second=289 amount=-1 +kerning first=80 second=244 amount=-1 +kerning first=282 second=289 amount=-1 +kerning first=282 second=82 amount=-1 +kerning first=1040 second=1086 amount=-1 +kerning first=354 second=289 amount=-2 +kerning first=221 second=244 amount=-2 +kerning first=258 second=254 amount=-1 +kerning first=69 second=82 amount=-1 +kerning first=288 second=66 amount=-1 +kerning first=371 second=225 amount=-1 +kerning first=269 second=117 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=89 second=97 amount=-2 +kerning first=211 second=296 amount=-1 +kerning first=233 second=117 amount=-1 +kerning first=313 second=200 amount=-1 +kerning first=111 second=122 amount=-1 +kerning first=290 second=76 amount=-1 +kerning first=108 second=102 amount=-1 +kerning first=305 second=117 amount=-1 +kerning first=374 second=245 amount=-2 +kerning first=45 second=251 amount=-1 +kerning first=266 second=97 amount=-1 +kerning first=85 second=227 amount=-2 +kerning first=263 second=225 amount=-1 +kerning first=377 second=117 amount=-1 +kerning first=208 second=72 amount=-1 +kerning first=302 second=97 amount=-1 +kerning first=86 second=77 amount=-1 +kerning first=351 second=121 amount=-1 +kerning first=117 second=251 amount=-1 +kerning first=288 second=122 amount=-1 +kerning first=379 second=71 amount=-1 +kerning first=315 second=121 amount=-1 +kerning first=258 second=251 amount=-1 +kerning first=252 second=122 amount=-1 +kerning first=280 second=72 amount=-1 +kerning first=279 second=121 amount=-1 +kerning first=216 second=122 amount=-1 +kerning first=194 second=245 amount=-1 +kerning first=330 second=251 amount=-1 +kerning first=213 second=46 amount=-1 +kerning first=338 second=97 amount=-1 +kerning first=89 second=245 amount=-2 +kerning first=89 second=363 amount=-1 +kerning first=249 second=46 amount=-1 +kerning first=1045 second=1063 amount=-1 +kerning first=374 second=97 amount=-2 +kerning first=366 second=251 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=8222 second=227 amount=-1 +kerning first=302 second=245 amount=-1 +kerning first=230 second=363 amount=-1 +kerning first=249 second=102 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=377 second=206 amount=-1 +kerning first=266 second=245 amount=-1 +kerning first=327 second=290 amount=-1 +kerning first=72 second=46 amount=-1 +kerning first=100 second=318 amount=-1 +kerning first=302 second=363 amount=-1 +kerning first=222 second=310 amount=-1 +kerning first=78 second=83 amount=-1 +kerning first=83 second=116 amount=-1 +kerning first=283 second=355 amount=-1 +kerning first=81 second=310 amount=-1 +kerning first=219 second=83 amount=-1 +kerning first=213 second=194 amount=-2 +kerning first=202 second=298 amount=-1 +kerning first=70 second=240 amount=-1 +kerning first=327 second=83 amount=-1 +kerning first=1098 second=1114 amount=-1 +kerning first=72 second=253 amount=-1 +kerning first=1042 second=1043 amount=-1 +kerning first=274 second=298 amount=-1 +kerning first=117 second=369 amount=-1 +kerning first=84 second=330 amount=-1 +kerning first=208 second=220 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=67 second=220 amount=-1 +kerning first=218 second=230 amount=-2 +kerning first=1059 second=1094 amount=-2 +kerning first=374 second=304 amount=-1 +kerning first=109 second=375 amount=-1 +kerning first=277 second=259 amount=-1 +kerning first=199 second=71 amount=-2 +kerning first=75 second=214 amount=-1 +kerning first=352 second=220 amount=-1 +kerning first=119 second=116 amount=-1 +kerning first=338 second=304 amount=-1 +kerning first=45 second=369 amount=-1 +kerning first=260 second=116 amount=-1 +kerning first=1070 second=1049 amount=-1 +kerning first=321 second=194 amount=-1 +kerning first=280 second=220 amount=-1 +kerning first=1077 second=1095 amount=-1 +kerning first=266 second=304 amount=-1 +kerning first=336 second=90 amount=-1 +kerning first=66 second=201 amount=-2 +kerning first=346 second=317 amount=-1 +kerning first=350 second=77 amount=-1 +kerning first=89 second=298 amount=-1 +kerning first=365 second=291 amount=-1 +kerning first=76 second=76 amount=-1 +kerning first=1114 second=1082 amount=-1 +kerning first=278 second=77 amount=-1 +kerning first=67 second=290 amount=-2 +kerning first=1063 second=1108 amount=-1 +kerning first=119 second=227 amount=-2 +kerning first=78 second=240 amount=-1 +kerning first=1057 second=1037 amount=-1 +kerning first=257 second=291 amount=-1 +kerning first=65 second=337 amount=-1 +kerning first=202 second=317 amount=-1 +kerning first=83 second=227 amount=-1 +kerning first=288 second=304 amount=-1 +kerning first=266 second=298 amount=-1 +kerning first=87 second=350 amount=-2 +kerning first=201 second=97 amount=-1 +kerning first=221 second=291 amount=-2 +kerning first=377 second=330 amount=-1 +kerning first=298 second=100 amount=-1 +kerning first=274 second=317 amount=-1 +kerning first=216 second=304 amount=-1 +kerning first=338 second=298 amount=-1 +kerning first=283 second=324 amount=-1 +kerning first=232 second=110 amount=-1 +kerning first=80 second=291 amount=-1 +kerning first=264 second=350 amount=-1 +kerning first=268 second=110 amount=-1 +kerning first=206 second=337 amount=-1 +kerning first=333 second=311 amount=-1 +kerning first=87 second=90 amount=-1 +kerning first=1059 second=1088 amount=-2 +kerning first=192 second=350 amount=-2 +kerning first=333 second=187 amount=-1 +kerning first=106 second=324 amount=-1 +kerning first=376 second=110 amount=-1 +kerning first=198 second=318 amount=-1 +kerning first=264 second=90 amount=-1 +kerning first=107 second=259 amount=-1 +kerning first=234 second=318 amount=-1 +kerning first=381 second=97 amount=-1 +kerning first=314 second=337 amount=-1 +kerning first=336 second=350 amount=-1 +kerning first=256 second=71 amount=-1 +kerning first=216 second=44 amount=-1 +kerning first=289 second=250 amount=-1 +kerning first=199 second=381 amount=-1 +kerning first=269 second=234 amount=-1 +kerning first=68 second=374 amount=-1 +kerning first=354 second=334 amount=-1 +kerning first=364 second=365 amount=-1 +kerning first=288 second=44 amount=-1 +kerning first=364 second=303 amount=-1 +kerning first=252 second=44 amount=-1 +kerning first=212 second=90 amount=-1 +kerning first=214 second=260 amount=-2 +kerning first=206 second=213 amount=-1 +kerning first=286 second=260 amount=-1 +kerning first=379 second=381 amount=-1 +kerning first=66 second=325 amount=-2 +kerning first=8218 second=356 amount=-3 +kerning first=84 second=187 amount=-1 +kerning first=111 second=44 amount=-2 +kerning first=278 second=213 amount=-1 +kerning first=75 second=44 amount=-1 +kerning first=262 second=374 amount=-1 +kerning first=274 second=85 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=296 second=227 amount=-1 +kerning first=374 second=298 amount=-1 +kerning first=275 second=241 amount=-1 +kerning first=219 second=111 amount=-1 +kerning first=115 second=303 amount=-1 +kerning first=83 second=351 amount=-1 +kerning first=1056 second=1077 amount=-1 +kerning first=198 second=194 amount=-1 +kerning first=255 second=111 amount=-1 +kerning first=311 second=277 amount=-1 +kerning first=224 second=351 amount=-1 +kerning first=377 second=70 amount=-1 +kerning first=315 second=201 amount=-1 +kerning first=334 second=207 amount=-1 +kerning first=327 second=111 amount=-1 +kerning first=69 second=104 amount=-1 +kerning first=324 second=44 amount=-1 +kerning first=356 second=284 amount=-1 +kerning first=346 second=204 amount=-1 +kerning first=78 second=111 amount=-1 +kerning first=1113 second=1074 amount=-1 +kerning first=202 second=229 amount=-1 +kerning first=368 second=227 amount=-2 +kerning first=220 second=303 amount=-1 +kerning first=332 second=227 amount=-1 +kerning first=248 second=380 amount=-1 +kerning first=107 second=8249 amount=-2 +kerning first=376 second=362 amount=-1 +kerning first=332 second=8220 amount=-1 +kerning first=193 second=235 amount=-1 +kerning first=284 second=380 amount=-1 +kerning first=266 second=270 amount=-1 +kerning first=8222 second=252 amount=-1 +kerning first=87 second=118 amount=-1 +kerning first=374 second=270 amount=-1 +kerning first=228 second=118 amount=-1 +kerning first=260 second=8220 amount=-3 +kerning first=313 second=377 amount=-1 +kerning first=74 second=248 amount=-1 +kerning first=356 second=380 amount=-2 +kerning first=338 second=270 amount=-1 +kerning first=192 second=118 amount=-2 +kerning first=101 second=105 amount=-1 +kerning first=224 second=8220 amount=-1 +kerning first=120 second=283 amount=-1 +kerning first=71 second=380 amount=-1 +kerning first=314 second=241 amount=-1 +kerning first=376 second=206 amount=-1 +kerning first=122 second=287 amount=-1 +kerning first=364 second=228 amount=-1 +kerning first=278 second=241 amount=-1 +kerning first=346 second=345 amount=-1 +kerning first=346 second=85 amount=-1 +kerning first=83 second=8220 amount=-1 +kerning first=227 second=287 amount=-1 +kerning first=310 second=85 amount=-1 +kerning first=212 second=380 amount=-1 +kerning first=350 second=241 amount=-1 +kerning first=1058 second=1100 amount=-1 +kerning first=110 second=112 amount=-1 +kerning first=74 second=112 amount=-1 +kerning first=211 second=193 amount=-2 +kerning first=101 second=241 amount=-1 +kerning first=263 second=287 amount=-1 +kerning first=70 second=193 amount=-2 +kerning first=371 second=287 amount=-1 +kerning first=115 second=228 amount=-1 +kerning first=315 second=325 amount=-1 +kerning first=335 second=287 amount=-1 +kerning first=287 second=248 amount=-1 +kerning first=79 second=228 amount=-1 +kerning first=221 second=263 amount=-2 +kerning first=323 second=248 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=212 second=8249 amount=-1 +kerning first=88 second=235 amount=-1 +kerning first=213 second=197 amount=-2 +kerning first=364 second=331 amount=-1 +kerning first=307 second=365 amount=-1 +kerning first=368 second=255 amount=-1 +kerning first=374 second=366 amount=-1 +kerning first=79 second=200 amount=-1 +kerning first=338 second=366 amount=-1 +kerning first=211 second=221 amount=-1 +kerning first=321 second=197 amount=-1 +kerning first=378 second=318 amount=-1 +kerning first=296 second=255 amount=-1 +kerning first=323 second=112 amount=-1 +kerning first=284 second=256 amount=-1 +kerning first=260 second=255 amount=-1 +kerning first=266 second=366 amount=-1 +kerning first=220 second=331 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=248 second=289 amount=-1 +kerning first=224 second=255 amount=-1 +kerning first=251 second=112 amount=-1 +kerning first=83 second=255 amount=-1 +kerning first=198 second=290 amount=-1 +kerning first=199 second=74 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=197 second=98 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=310 second=214 amount=-1 +kerning first=305 second=98 amount=-1 +kerning first=231 second=314 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=290 second=352 amount=-1 +kerning first=269 second=98 amount=-1 +kerning first=195 second=314 amount=-1 +kerning first=202 second=214 amount=-1 +kerning first=303 second=314 amount=-1 +kerning first=89 second=65 amount=-3 +kerning first=314 second=105 amount=-1 +kerning first=84 second=283 amount=-2 +kerning first=325 second=214 amount=-1 +kerning first=267 second=314 amount=-1 +kerning first=211 second=352 amount=-1 +kerning first=350 second=105 amount=-1 +kerning first=194 second=366 amount=-2 +kerning first=274 second=214 amount=-1 +kerning first=375 second=314 amount=-1 +kerning first=242 second=105 amount=-1 +kerning first=339 second=314 amount=-1 +kerning first=89 second=366 amount=-1 +kerning first=204 second=333 amount=-1 +kerning first=85 second=346 amount=-1 +kerning first=230 second=106 amount=-1 +kerning first=213 second=68 amount=-1 +kerning first=213 second=80 amount=-1 +kerning first=248 second=8221 amount=-1 +kerning first=321 second=80 amount=-1 +kerning first=284 second=8221 amount=-1 +kerning first=367 second=307 amount=-1 +kerning first=218 second=67 amount=-1 +kerning first=298 second=346 amount=-1 +kerning first=253 second=224 amount=-1 +kerning first=321 second=68 amount=-1 +kerning first=68 second=217 amount=-1 +kerning first=1047 second=1059 amount=-1 +kerning first=262 second=346 amount=-1 +kerning first=217 second=224 amount=-1 +kerning first=280 second=81 amount=-1 +kerning first=266 second=106 amount=-1 +kerning first=325 second=224 amount=-1 +kerning first=99 second=333 amount=-1 +kerning first=77 second=67 amount=-1 +kerning first=326 second=45 amount=-1 +kerning first=71 second=256 amount=-1 +kerning first=85 second=243 amount=-1 +kerning first=231 second=230 amount=-1 +kerning first=121 second=243 amount=-1 +kerning first=370 second=346 amount=-1 +kerning first=90 second=230 amount=-1 +kerning first=334 second=346 amount=-1 +kerning first=222 second=204 amount=-1 +kerning first=212 second=256 amount=-2 +kerning first=118 second=307 amount=-1 +kerning first=187 second=307 amount=-1 +kerning first=311 second=101 amount=-1 +kerning first=1074 second=1095 amount=-1 +kerning first=101 second=361 amount=-1 +kerning first=362 second=67 amount=-1 +kerning first=262 second=109 amount=-1 +kerning first=327 second=268 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=1042 second=1034 amount=-1 +kerning first=1059 second=1060 amount=-1 +kerning first=316 second=229 amount=-1 +kerning first=68 second=69 amount=-1 +kerning first=212 second=120 amount=-1 +kerning first=1030 second=1072 amount=-1 +kerning first=89 second=251 amount=-1 +kerning first=262 second=243 amount=-1 +kerning first=255 second=225 amount=-2 +kerning first=8218 second=225 amount=-1 +kerning first=298 second=243 amount=-1 +kerning first=81 second=204 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=219 second=268 amount=-1 +kerning first=45 second=204 amount=-3 +kerning first=370 second=243 amount=-1 +kerning first=187 second=192 amount=-2 +kerning first=266 second=251 amount=-1 +kerning first=230 second=251 amount=-1 +kerning first=268 second=79 amount=-2 +kerning first=78 second=268 amount=-1 +kerning first=317 second=217 amount=-1 +kerning first=338 second=251 amount=-1 +kerning first=103 second=229 amount=-1 +kerning first=368 second=380 amount=-1 +kerning first=302 second=251 amount=-1 +kerning first=381 second=282 amount=-1 +kerning first=248 second=120 amount=-1 +kerning first=352 second=229 amount=-1 +kerning first=8220 second=100 amount=-1 +kerning first=264 second=118 amount=-1 +kerning first=374 second=251 amount=-1 +kerning first=86 second=203 amount=-1 +kerning first=280 second=229 amount=-1 +kerning first=207 second=244 amount=-1 +kerning first=356 second=120 amount=-1 +kerning first=268 second=214 amount=-2 +kerning first=316 second=257 amount=-1 +kerning first=258 second=232 amount=-1 +kerning first=90 second=202 amount=-1 +kerning first=212 second=368 amount=-1 +kerning first=352 second=257 amount=-1 +kerning first=366 second=232 amount=-1 +kerning first=71 second=368 amount=-1 +kerning first=85 second=231 amount=-1 +kerning first=330 second=232 amount=-1 +kerning first=280 second=257 amount=-1 +kerning first=77 second=336 amount=-1 +kerning first=325 second=79 amount=-1 +kerning first=356 second=368 amount=-1 +kerning first=208 second=257 amount=-1 +kerning first=86 second=219 amount=-1 +kerning first=66 second=8250 amount=-1 +kerning first=69 second=8249 amount=-1 +kerning first=67 second=257 amount=-1 +kerning first=218 second=336 amount=-1 +kerning first=204 second=361 amount=-1 +kerning first=103 second=257 amount=-1 +kerning first=72 second=244 amount=-1 +kerning first=307 second=121 amount=-1 +kerning first=82 second=267 amount=-1 +kerning first=310 second=213 amount=-1 +kerning first=82 second=103 amount=-1 +kerning first=108 second=244 amount=-1 +kerning first=118 second=267 amount=-1 +kerning first=198 second=278 amount=-1 +kerning first=235 second=121 amount=-1 +kerning first=8222 second=116 amount=-1 +kerning first=362 second=336 amount=-1 +kerning first=236 second=318 amount=-1 +kerning first=317 second=69 amount=-1 +kerning first=217 second=79 amount=-1 +kerning first=76 second=79 amount=-1 +kerning first=90 second=66 amount=-1 +kerning first=205 second=117 amount=-1 +kerning first=204 second=246 amount=-1 +kerning first=76 second=107 amount=-1 +kerning first=223 second=382 amount=-1 +kerning first=90 second=82 amount=-1 +kerning first=45 second=347 amount=-1 +kerning first=1052 second=1057 amount=-1 +kerning first=99 second=246 amount=-1 +kerning first=8218 second=253 amount=-1 +kerning first=72 second=216 amount=-1 +kerning first=241 second=117 amount=-1 +kerning first=112 second=107 amount=-1 +kerning first=339 second=230 amount=-1 +kerning first=313 second=117 amount=-1 +kerning first=375 second=230 amount=-2 +kerning first=205 second=281 amount=-1 +kerning first=332 second=196 amount=-2 +kerning first=267 second=230 amount=-1 +kerning first=379 second=121 amount=-2 +kerning first=118 second=382 amount=-1 +kerning first=317 second=205 amount=-1 +kerning first=303 second=230 amount=-1 +kerning first=187 second=382 amount=-3 +kerning first=321 second=216 amount=-1 +kerning first=68 second=205 amount=-1 +kerning first=291 second=240 amount=-1 +kerning first=366 second=347 amount=-1 +kerning first=363 second=371 amount=-1 +kerning first=330 second=347 amount=-1 +kerning first=243 second=8250 amount=-1 +kerning first=313 second=217 amount=-1 +kerning first=219 second=240 amount=-1 +kerning first=279 second=8250 amount=-1 +kerning first=258 second=347 amount=-1 +kerning first=354 second=81 amount=-1 +kerning first=253 second=107 amount=-1 +kerning first=367 second=382 amount=-1 +kerning first=8250 second=217 amount=-2 +kerning first=100 second=117 amount=-1 +kerning first=327 second=240 amount=-1 +kerning first=121 second=271 amount=-1 +kerning first=1040 second=1095 amount=-1 +kerning first=117 second=347 amount=-1 +kerning first=289 second=107 amount=-1 +kerning first=291 second=371 amount=-1 +kerning first=80 second=80 amount=-1 +kerning first=88 second=226 amount=-1 +kerning first=70 second=336 amount=-1 +kerning first=350 second=65 amount=-2 +kerning first=69 second=252 amount=-1 +kerning first=363 second=365 amount=-1 +kerning first=8220 second=84 amount=-1 +kerning first=105 second=252 amount=-1 +kerning first=283 second=305 amount=-1 +kerning first=187 second=122 amount=-3 +kerning first=275 second=249 amount=-1 +kerning first=118 second=122 amount=-1 +kerning first=256 second=219 amount=-2 +kerning first=115 second=305 amount=-1 +kerning first=199 second=266 amount=-2 +kerning first=381 second=245 amount=-1 +kerning first=8218 second=365 amount=-1 +kerning first=354 second=252 amount=-1 +kerning first=274 second=202 amount=-1 +kerning first=88 second=261 amount=-1 +kerning first=243 second=316 amount=-1 +kerning first=79 second=219 amount=-1 +kerning first=279 second=316 amount=-1 +kerning first=202 second=202 amount=-1 +kerning first=370 second=335 amount=-1 +kerning first=298 second=259 amount=-1 +kerning first=315 second=316 amount=-1 +kerning first=262 second=259 amount=-1 +kerning first=351 second=316 amount=-1 +kerning first=331 second=98 amount=-1 +kerning first=370 second=259 amount=-2 +kerning first=346 second=69 amount=-1 +kerning first=118 second=113 amount=-1 +kerning first=282 second=252 amount=-1 +kerning first=346 second=202 amount=-1 +kerning first=171 second=84 amount=-2 +kerning first=121 second=259 amount=-2 +kerning first=74 second=332 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=201 second=369 amount=-1 +kerning first=85 second=259 amount=-2 +kerning first=89 second=382 amount=-2 +kerning first=269 second=246 amount=-1 +kerning first=70 second=45 amount=-2 +kerning first=287 second=103 amount=-1 +kerning first=253 second=116 amount=-1 +kerning first=365 second=375 amount=-1 +kerning first=251 second=103 amount=-1 +kerning first=197 second=246 amount=-1 +kerning first=101 second=253 amount=-1 +kerning first=352 second=109 amount=-1 +kerning first=231 second=231 amount=-1 +kerning first=110 second=103 amount=-1 +kerning first=323 second=332 amount=-1 +kerning first=355 second=45 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=242 second=253 amount=-1 +kerning first=374 second=382 amount=-2 +kerning first=264 second=362 amount=-1 +kerning first=118 second=279 amount=-1 +kerning first=8222 second=364 amount=-2 +kerning first=316 second=109 amount=-1 +kerning first=336 second=362 amount=-1 +kerning first=280 second=109 amount=-1 +kerning first=223 second=122 amount=-1 +kerning first=321 second=356 amount=-1 +kerning first=67 second=109 amount=-1 +kerning first=381 second=369 amount=-1 +kerning first=8217 second=117 amount=-1 +kerning first=230 second=382 amount=-1 +kerning first=87 second=362 amount=-1 +kerning first=289 second=116 amount=-1 +kerning first=266 second=382 amount=-1 +kerning first=257 second=375 amount=-1 +kerning first=82 second=279 amount=-1 +kerning first=1100 second=1081 amount=-1 +kerning first=213 second=356 amount=-1 +kerning first=302 second=382 amount=-1 +kerning first=192 second=362 amount=-2 +kerning first=221 second=375 amount=-1 +kerning first=367 second=122 amount=-1 +kerning first=338 second=382 amount=-1 +kerning first=381 second=242 amount=-1 +kerning first=257 second=115 amount=-1 +kerning first=67 second=374 amount=-1 +kerning first=350 second=68 amount=-1 +kerning first=79 second=80 amount=-1 +kerning first=1116 second=1086 amount=-1 +kerning first=260 second=370 amount=-2 +kerning first=278 second=68 amount=-1 +kerning first=221 second=115 amount=-2 +kerning first=82 second=119 amount=-1 +kerning first=332 second=370 amount=-1 +kerning first=315 second=313 amount=-1 +kerning first=118 second=119 amount=-1 +kerning first=8216 second=352 amount=-1 +kerning first=187 second=119 amount=-2 +kerning first=221 second=363 amount=-1 +kerning first=223 second=119 amount=-1 +kerning first=69 second=280 amount=-1 +kerning first=365 second=115 amount=-1 +kerning first=259 second=119 amount=-1 +kerning first=350 second=318 amount=-1 +kerning first=295 second=119 amount=-1 +kerning first=248 second=108 amount=-1 +kerning first=8218 second=257 amount=-1 +kerning first=1043 second=1090 amount=-1 +kerning first=211 second=73 amount=-1 +kerning first=66 second=313 amount=-2 +kerning first=350 second=253 amount=-1 +kerning first=367 second=119 amount=-1 +kerning first=101 second=119 amount=-1 +kerning first=79 second=315 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=377 second=246 amount=-1 +kerning first=73 second=269 amount=-1 +kerning first=8220 second=333 amount=-1 +kerning first=1049 second=1105 amount=-1 +kerning first=370 second=231 amount=-1 +kerning first=1060 second=1041 amount=-1 +kerning first=321 second=328 amount=-1 +kerning first=206 second=225 amount=-1 +kerning first=298 second=231 amount=-1 +kerning first=1040 second=1098 amount=-1 +kerning first=226 second=371 amount=-1 +kerning first=278 second=225 amount=-1 +kerning first=73 second=117 amount=-1 +kerning first=84 second=196 amount=-3 +kerning first=356 second=100 amount=-2 +kerning first=110 second=363 amount=-1 +kerning first=74 second=335 amount=-1 +kerning first=101 second=225 amount=-1 +kerning first=198 second=203 amount=-1 +kerning first=251 second=363 amount=-1 +kerning first=112 second=8217 amount=-1 +kerning first=197 second=218 amount=-2 +kerning first=378 second=46 amount=-1 +kerning first=287 second=363 amount=-1 +kerning first=216 second=8249 amount=-1 +kerning first=210 second=280 amount=-1 +kerning first=323 second=363 amount=-1 +kerning first=1042 second=1024 amount=-1 +kerning first=338 second=378 amount=-1 +kerning first=198 second=46 amount=-1 +kerning first=282 second=280 amount=-1 +kerning first=80 second=115 amount=-1 +kerning first=314 second=225 amount=-1 +kerning first=212 second=8221 amount=-1 +kerning first=234 second=46 amount=-2 +kerning first=262 second=231 amount=-1 +kerning first=350 second=225 amount=-1 +kerning first=71 second=8221 amount=-1 +kerning first=354 second=280 amount=-1 +kerning first=121 second=231 amount=-1 +kerning first=1104 second=1076 amount=-1 +kerning first=76 second=8217 amount=-2 +kerning first=87 second=102 amount=-1 +kerning first=330 second=235 amount=-1 +kerning first=203 second=261 amount=-1 +kerning first=1114 second=1118 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=366 second=235 amount=-1 +kerning first=1078 second=1118 amount=-1 +kerning first=200 second=210 amount=-1 +kerning first=275 second=261 amount=-1 +kerning first=90 second=211 amount=-1 +kerning first=311 second=261 amount=-1 +kerning first=83 second=367 amount=-1 +kerning first=361 second=8220 amount=-2 +kerning first=375 second=326 amount=-1 +kerning first=350 second=250 amount=-1 +kerning first=1061 second=1092 amount=-1 +kerning first=290 second=296 amount=-1 +kerning first=356 second=235 amount=-1 +kerning first=244 second=112 amount=-1 +kerning first=231 second=326 amount=-1 +kerning first=262 second=86 amount=-1 +kerning first=267 second=326 amount=-1 +kerning first=206 second=250 amount=-1 +kerning first=112 second=8220 amount=-1 +kerning first=303 second=326 amount=-1 +kerning first=314 second=250 amount=-1 +kerning first=290 second=327 amount=-1 +kerning first=76 second=8220 amount=-2 +kerning first=339 second=326 amount=-1 +kerning first=278 second=250 amount=-1 +kerning first=116 second=378 amount=-1 +kerning first=8217 second=120 amount=-1 +kerning first=67 second=112 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=347 second=261 amount=-1 +kerning first=90 second=326 amount=-1 +kerning first=108 second=328 amount=-1 +kerning first=258 second=235 amount=-1 +kerning first=84 second=171 amount=-3 +kerning first=206 second=244 amount=-1 +kerning first=334 second=86 amount=-1 +kerning first=101 second=250 amount=-1 +kerning first=120 second=171 amount=-2 +kerning first=99 second=237 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=323 second=100 amount=-1 +kerning first=350 second=365 amount=-1 +kerning first=1043 second=1093 amount=-2 +kerning first=201 second=366 amount=-1 +kerning first=365 second=378 amount=-1 +kerning first=314 second=365 amount=-1 +kerning first=278 second=365 amount=-1 +kerning first=311 second=113 amount=-1 +kerning first=262 second=262 amount=-2 +kerning first=85 second=83 amount=-1 +kerning first=216 second=106 amount=-1 +kerning first=206 second=365 amount=-1 +kerning first=1060 second=1113 amount=-1 +kerning first=352 second=112 amount=-1 +kerning first=221 second=378 amount=-2 +kerning first=369 second=171 amount=-1 +kerning first=222 second=76 amount=-1 +kerning first=316 second=112 amount=-1 +kerning first=307 second=353 amount=-1 +kerning first=8250 second=69 amount=-3 +kerning first=280 second=112 amount=-1 +kerning first=262 second=83 amount=-1 +kerning first=222 second=87 amount=-1 +kerning first=264 second=275 amount=-1 +kerning first=298 second=83 amount=-1 +kerning first=258 second=87 amount=-3 +kerning first=354 second=249 amount=-1 +kerning first=204 second=352 amount=-1 +kerning first=334 second=83 amount=-1 +kerning first=288 second=193 amount=-1 +kerning first=74 second=100 amount=-1 +kerning first=192 second=275 amount=-1 +kerning first=370 second=83 amount=-1 +kerning first=282 second=249 amount=-1 +kerning first=203 second=286 amount=-1 +kerning first=199 second=353 amount=-1 +kerning first=207 second=210 amount=-1 +kerning first=45 second=87 amount=-2 +kerning first=1074 second=1091 amount=-1 +kerning first=87 second=275 amount=-2 +kerning first=81 second=87 amount=-1 +kerning first=207 second=288 amount=-1 +kerning first=379 second=203 amount=-1 +kerning first=315 second=288 amount=-1 +kerning first=344 second=210 amount=-1 +kerning first=85 second=262 amount=-1 +kerning first=370 second=114 amount=-1 +kerning first=99 second=324 amount=-1 +kerning first=354 second=364 amount=-1 +kerning first=368 second=339 amount=-1 +kerning first=67 second=84 amount=-1 +kerning first=253 second=233 amount=-1 +kerning first=260 second=339 amount=-1 +kerning first=217 second=233 amount=-1 +kerning first=298 second=334 amount=-1 +kerning first=98 second=289 amount=-1 +kerning first=296 second=339 amount=-1 +kerning first=325 second=233 amount=-1 +kerning first=262 second=114 amount=-1 +kerning first=289 second=233 amount=-1 +kerning first=203 second=289 amount=-1 +kerning first=121 second=114 amount=-1 +kerning first=69 second=249 amount=-1 +kerning first=208 second=84 amount=-1 +kerning first=105 second=249 amount=-1 +kerning first=275 second=289 amount=-1 +kerning first=87 second=99 amount=-2 +kerning first=85 second=234 amount=-1 +kerning first=121 second=234 amount=-1 +kerning first=45 second=205 amount=-3 +kerning first=268 second=274 amount=-1 +kerning first=203 second=110 amount=-1 +kerning first=352 second=84 amount=-1 +kerning first=217 second=379 amount=-1 +kerning first=275 second=110 amount=-1 +kerning first=240 second=237 amount=-1 +kerning first=347 second=110 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=376 second=274 amount=-1 +kerning first=232 second=187 amount=-1 +kerning first=119 second=339 amount=-1 +kerning first=370 second=234 amount=-1 +kerning first=368 second=369 amount=-1 +kerning first=77 second=212 amount=-1 +kerning first=354 second=277 amount=-2 +kerning first=80 second=260 amount=-2 +kerning first=107 second=111 amount=-1 +kerning first=8220 second=229 amount=-1 +kerning first=262 second=234 amount=-1 +kerning first=268 second=302 amount=-1 +kerning first=298 second=234 amount=-1 +kerning first=66 second=316 amount=-1 +kerning first=102 second=316 amount=1 +kerning first=325 second=264 amount=-1 +kerning first=221 second=260 amount=-3 +kerning first=1025 second=1064 amount=-1 +kerning first=211 second=76 amount=-1 +kerning first=69 second=364 amount=-1 +kerning first=289 second=351 amount=-1 +kerning first=311 second=289 amount=-1 +kerning first=356 second=111 amount=-2 +kerning first=253 second=351 amount=-1 +kerning first=347 second=289 amount=-1 +kerning first=90 second=354 amount=-1 +kerning first=217 second=264 amount=-1 +kerning first=368 second=367 amount=-1 +kerning first=1046 second=1054 amount=-2 +kerning first=325 second=351 amount=-1 +kerning first=362 second=212 amount=-1 +kerning first=84 second=199 amount=-1 +kerning first=195 second=354 amount=-3 +kerning first=112 second=351 amount=-1 +kerning first=296 second=367 amount=-1 +kerning first=8220 second=109 amount=-1 +kerning first=210 second=364 amount=-1 +kerning first=76 second=351 amount=-1 +kerning first=76 second=264 amount=-1 +kerning first=106 second=259 amount=-1 +kerning first=379 second=267 amount=-1 +kerning first=217 second=351 amount=-1 +kerning first=224 second=367 amount=-1 +kerning first=218 second=212 amount=-1 +kerning first=260 second=367 amount=-1 +kerning first=266 second=267 amount=-1 +kerning first=316 second=254 amount=-1 +kerning first=241 second=8249 amount=-1 +kerning first=370 second=111 amount=-1 +kerning first=69 second=264 amount=-1 +kerning first=303 second=351 amount=-1 +kerning first=302 second=267 amount=-1 +kerning first=8222 second=249 amount=-1 +kerning first=87 second=121 amount=-1 +kerning first=284 second=377 amount=-1 +kerning first=68 second=45 amount=-1 +kerning first=267 second=351 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=194 second=267 amount=-1 +kerning first=381 second=257 amount=-1 +kerning first=354 second=367 amount=-1 +kerning first=375 second=351 amount=-1 +kerning first=370 second=44 amount=-3 +kerning first=212 second=377 amount=-1 +kerning first=339 second=351 amount=-1 +kerning first=269 second=361 amount=-1 +kerning first=282 second=367 amount=-1 +kerning first=1027 second=1077 amount=-1 +kerning first=233 second=361 amount=-1 +kerning first=100 second=8249 amount=-1 +kerning first=262 second=111 amount=-1 +kerning first=1063 second=1077 amount=-1 +kerning first=90 second=351 amount=-1 +kerning first=354 second=171 amount=-3 +kerning first=298 second=111 amount=-1 +kerning first=255 second=114 amount=-1 +kerning first=231 second=351 amount=-1 +kerning first=374 second=267 amount=-2 +kerning first=280 second=254 amount=-1 +kerning first=356 second=377 amount=-1 +kerning first=195 second=351 amount=-1 +kerning first=253 second=261 amount=-2 +kerning first=105 second=367 amount=-1 +kerning first=356 second=117 amount=-1 +kerning first=289 second=261 amount=-1 +kerning first=203 second=274 amount=-1 +kerning first=219 second=114 amount=-1 +kerning first=104 second=44 amount=-1 +kerning first=67 second=254 amount=-1 +kerning first=325 second=261 amount=-1 +kerning first=87 second=381 amount=-1 +kerning first=234 second=287 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=103 second=254 amount=-1 +kerning first=119 second=120 amount=-1 +kerning first=314 second=244 amount=-1 +kerning first=198 second=287 amount=-1 +kerning first=222 second=344 amount=-1 +kerning first=8220 second=103 amount=-2 +kerning first=8220 second=232 amount=-1 +kerning first=377 second=237 amount=-1 +kerning first=83 second=46 amount=-2 +kerning first=313 second=8249 amount=-1 +kerning first=228 second=121 amount=-1 +kerning first=264 second=381 amount=-1 +kerning first=378 second=287 amount=-1 +kerning first=1059 second=1057 amount=-1 +kerning first=217 second=261 amount=-2 +kerning first=228 second=250 amount=-1 +kerning first=246 second=107 amount=-1 +kerning first=203 second=171 amount=-1 +kerning first=1067 second=1104 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=1031 second=1104 amount=-1 +kerning first=110 second=347 amount=-1 +kerning first=370 second=240 amount=-1 +kerning first=264 second=250 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=282 second=107 amount=-1 +kerning first=1086 second=1078 amount=-1 +kerning first=71 second=117 amount=-1 +kerning first=69 second=107 amount=-1 +kerning first=8218 second=219 amount=-2 +kerning first=368 second=230 amount=-2 +kerning first=83 second=354 amount=-1 +kerning first=284 second=117 amount=-1 +kerning first=87 second=250 amount=-1 +kerning first=107 second=281 amount=-1 +kerning first=105 second=107 amount=-1 +kerning first=85 second=240 amount=-1 +kerning first=377 second=361 amount=-1 +kerning first=121 second=240 amount=-1 +kerning first=201 second=257 amount=-1 +kerning first=354 second=264 amount=-1 +kerning first=381 second=100 amount=-1 +kerning first=246 second=104 amount=-1 +kerning first=221 second=288 amount=-1 +kerning first=260 second=354 amount=-3 +kerning first=282 second=264 amount=-1 +kerning first=262 second=240 amount=-1 +kerning first=307 second=378 amount=-1 +kerning first=347 second=171 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=332 second=354 amount=-1 +kerning first=377 second=67 amount=-1 +kerning first=298 second=240 amount=-1 +kerning first=255 second=271 amount=-1 +kerning first=323 second=347 amount=-1 +kerning first=97 second=314 amount=-1 +kerning first=217 second=347 amount=-1 +kerning first=291 second=271 amount=-1 +kerning first=379 second=378 amount=-1 +kerning first=278 second=74 amount=-1 +kerning first=251 second=347 amount=-1 +kerning first=321 second=252 amount=-1 +kerning first=287 second=337 amount=-1 +kerning first=199 second=90 amount=-1 +kerning first=310 second=314 amount=-1 +kerning first=113 second=311 amount=-1 +kerning first=90 second=214 amount=-1 +kerning first=274 second=314 amount=-1 +kerning first=222 second=220 amount=-1 +kerning first=200 second=201 amount=-1 +kerning first=382 second=314 amount=-1 +kerning first=81 second=220 amount=-1 +kerning first=213 second=77 amount=-1 +kerning first=317 second=317 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=346 second=314 amount=-1 +kerning first=225 second=371 amount=-1 +kerning first=302 second=338 amount=-1 +kerning first=8250 second=202 amount=-3 +kerning first=119 second=224 amount=-1 +kerning first=1057 second=1040 amount=-1 +kerning first=68 second=317 amount=-1 +kerning first=83 second=224 amount=-1 +kerning first=317 second=304 amount=-1 +kerning first=258 second=220 amount=-2 +kerning first=72 second=71 amount=-1 +kerning first=379 second=90 amount=-1 +kerning first=286 second=291 amount=-1 +kerning first=1056 second=1108 amount=-1 +kerning first=321 second=77 amount=-1 +kerning first=250 second=291 amount=-1 +kerning first=72 second=337 amount=-1 +kerning first=122 second=318 amount=-1 +kerning first=296 second=224 amount=-1 +kerning first=214 second=291 amount=-1 +kerning first=113 second=324 amount=-1 +kerning first=208 second=97 amount=-1 +kerning first=110 second=44 amount=-1 +kerning first=321 second=213 amount=-1 +kerning first=81 second=84 amount=-1 +kerning first=227 second=318 amount=-1 +kerning first=67 second=97 amount=-1 +kerning first=368 second=224 amount=-1 +kerning first=45 second=84 amount=-2 +kerning first=218 second=324 amount=-1 +kerning first=263 second=318 amount=-1 +kerning first=332 second=224 amount=-1 +kerning first=1047 second=1101 amount=-1 +kerning first=8250 second=66 amount=-3 +kerning first=73 second=291 amount=-1 +kerning first=316 second=97 amount=-1 +kerning first=321 second=71 amount=-1 +kerning first=200 second=380 amount=-1 +kerning first=335 second=318 amount=-1 +kerning first=352 second=97 amount=-1 +kerning first=254 second=311 amount=-1 +kerning first=74 second=196 amount=-3 +kerning first=258 second=84 amount=-3 +kerning first=66 second=328 amount=-1 +kerning first=371 second=318 amount=-1 +kerning first=382 second=267 amount=-1 +kerning first=187 second=298 amount=-3 +kerning first=222 second=84 amount=-1 +kerning first=108 second=337 amount=-1 +kerning first=280 second=97 amount=-1 +kerning first=45 second=344 amount=-3 +kerning first=313 second=284 amount=-1 +kerning first=362 second=193 amount=-2 +kerning first=336 second=381 amount=-1 +kerning first=99 second=234 amount=-1 +kerning first=290 second=193 amount=-1 +kerning first=375 second=227 amount=-2 +kerning first=339 second=227 amount=-1 +kerning first=204 second=234 amount=-1 +kerning first=263 second=303 amount=-1 +kerning first=253 second=104 amount=-1 +kerning first=72 second=213 amount=-1 +kerning first=268 second=275 amount=-1 +kerning first=200 second=325 amount=-1 +kerning first=354 second=101 amount=-2 +kerning first=205 second=284 amount=-1 +kerning first=1038 second=1107 amount=-2 +kerning first=281 second=44 amount=-2 +kerning first=222 second=78 amount=-1 +kerning first=254 second=187 amount=-1 +kerning first=245 second=44 amount=-2 +kerning first=362 second=324 amount=-1 +kerning first=272 second=310 amount=-1 +kerning first=90 second=227 amount=-1 +kerning first=85 second=111 amount=-1 +kerning first=304 second=277 amount=-1 +kerning first=201 second=251 amount=-1 +kerning first=1025 second=1067 amount=-1 +kerning first=1069 second=1024 amount=-1 +kerning first=121 second=111 amount=-1 +kerning first=45 second=78 amount=-3 +kerning first=81 second=78 amount=-1 +kerning first=376 second=277 amount=-2 +kerning first=303 second=227 amount=-1 +kerning first=86 second=194 amount=-3 +kerning first=122 second=303 amount=-1 +kerning first=196 second=277 amount=-1 +kerning first=267 second=227 amount=-1 +kerning first=45 second=220 amount=-2 +kerning first=195 second=85 amount=-2 +kerning first=231 second=227 amount=-1 +kerning first=1092 second=1093 amount=-1 +kerning first=268 second=277 amount=-1 +kerning first=1056 second=1093 amount=-1 +kerning first=86 second=303 amount=-1 +kerning first=272 second=201 amount=-1 +kerning first=307 second=105 amount=-1 +kerning first=74 second=245 amount=-1 +kerning first=381 second=251 amount=-1 +kerning first=257 second=118 amount=-1 +kerning first=235 second=105 amount=-1 +kerning first=365 second=118 amount=-1 +kerning first=201 second=270 amount=-1 +kerning first=375 second=345 amount=-1 +kerning first=268 second=283 amount=-1 +kerning first=199 second=105 amount=-1 +kerning first=196 second=283 amount=-1 +kerning first=221 second=118 amount=-1 +kerning first=203 second=280 amount=-1 +kerning first=307 second=241 amount=-1 +kerning first=376 second=283 amount=-2 +kerning first=193 second=335 amount=-1 +kerning first=8220 second=87 amount=-1 +kerning first=1063 second=1105 amount=-1 +kerning first=255 second=108 amount=-1 +kerning first=1027 second=1083 amount=-2 +kerning first=76 second=370 amount=-1 +kerning first=304 second=283 amount=-1 +kerning first=213 second=228 amount=-1 +kerning first=291 second=108 amount=-1 +kerning first=381 second=270 amount=-1 +kerning first=108 second=228 amount=-1 +kerning first=235 second=241 amount=-1 +kerning first=72 second=228 amount=-1 +kerning first=88 second=335 amount=-1 +kerning first=363 second=108 amount=-1 +kerning first=199 second=241 amount=-1 +kerning first=90 second=73 amount=-1 +kerning first=381 second=122 amount=-1 +kerning first=219 second=256 amount=-2 +kerning first=331 second=347 amount=-1 +kerning first=269 second=231 amount=-1 +kerning first=379 second=356 amount=-1 +kerning first=321 second=331 amount=-1 +kerning first=197 second=231 amount=-1 +kerning first=377 second=231 amount=-1 +kerning first=275 second=116 amount=-1 +kerning first=325 second=255 amount=-1 +kerning first=1061 second=1073 amount=-1 +kerning first=347 second=116 amount=-1 +kerning first=199 second=356 amount=-1 +kerning first=278 second=362 amount=-1 +kerning first=291 second=111 amount=-1 +kerning first=323 second=81 amount=-1 +kerning first=217 second=255 amount=-1 +kerning first=65 second=362 amount=-2 +kerning first=323 second=245 amount=-1 +kerning first=70 second=67 amount=-1 +kerning first=214 second=8249 amount=-1 +kerning first=112 second=255 amount=-1 +kerning first=1047 second=1095 amount=-1 +kerning first=287 second=245 amount=-1 +kerning first=76 second=255 amount=-1 +kerning first=221 second=266 amount=-1 +kerning first=78 second=211 amount=-1 +kerning first=201 second=122 amount=-1 +kerning first=371 second=339 amount=-1 +kerning first=379 second=105 amount=-1 +kerning first=374 second=282 amount=-1 +kerning first=113 second=305 amount=-1 +kerning first=253 second=316 amount=-1 +kerning first=338 second=282 amount=-1 +kerning first=350 second=80 amount=-1 +kerning first=1027 second=1099 amount=-1 +kerning first=323 second=229 amount=-1 +kerning first=218 second=305 amount=-1 +kerning first=74 second=81 amount=-1 +kerning first=70 second=333 amount=-1 +kerning first=266 second=282 amount=-1 +kerning first=1031 second=1092 amount=-1 +kerning first=202 second=217 amount=-1 +kerning first=321 second=65 amount=-1 +kerning first=274 second=217 amount=-1 +kerning first=362 second=305 amount=-1 +kerning first=79 second=68 amount=-1 +kerning first=310 second=217 amount=-1 +kerning first=364 second=216 amount=-1 +kerning first=89 second=282 amount=-1 +kerning first=278 second=80 amount=-1 +kerning first=296 second=230 amount=-1 +kerning first=111 second=307 amount=-1 +kerning first=332 second=230 amount=-1 +kerning first=8222 second=367 amount=-1 +kerning first=197 second=346 amount=-2 +kerning first=119 second=230 amount=-2 +kerning first=356 second=281 amount=-2 +kerning first=377 second=346 amount=-1 +kerning first=83 second=230 amount=-1 +kerning first=1059 second=1072 amount=-2 +kerning first=211 second=218 amount=-1 +kerning first=192 second=112 amount=-1 +kerning first=260 second=79 amount=-1 +kerning first=377 second=243 amount=-1 +kerning first=202 second=69 amount=-1 +kerning first=79 second=203 amount=-1 +kerning first=364 second=334 amount=-1 +kerning first=1030 second=1060 amount=-1 +kerning first=368 second=79 amount=-1 +kerning first=197 second=243 amount=-1 +kerning first=65 second=244 amount=-1 +kerning first=296 second=79 amount=-1 +kerning first=356 second=268 amount=-1 +kerning first=269 second=243 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=8217 second=290 amount=-1 +kerning first=255 second=120 amount=-1 +kerning first=258 second=332 amount=-1 +kerning first=291 second=120 amount=-1 +kerning first=288 second=192 amount=-1 +kerning first=8250 second=314 amount=-1 +kerning first=330 second=332 amount=-1 +kerning first=363 second=120 amount=-1 +kerning first=216 second=192 amount=-2 +kerning first=251 second=229 amount=-1 +kerning first=46 second=8217 amount=-3 +kerning first=67 second=242 amount=-1 +kerning first=287 second=229 amount=-1 +kerning first=366 second=332 amount=-1 +kerning first=220 second=334 amount=-1 +kerning first=219 second=120 amount=-1 +kerning first=103 second=242 amount=-1 +kerning first=231 second=339 amount=-1 +kerning first=1114 second=1090 amount=-1 +kerning first=374 second=279 amount=-2 +kerning first=196 second=289 amount=-1 +kerning first=267 second=339 amount=-1 +kerning first=232 second=289 amount=-1 +kerning first=217 second=102 amount=-1 +kerning first=68 second=192 amount=-2 +kerning first=316 second=242 amount=-1 +kerning first=268 second=289 amount=-1 +kerning first=195 second=339 amount=-1 +kerning first=222 second=229 amount=-1 +kerning first=304 second=289 amount=-1 +kerning first=375 second=339 amount=-1 +kerning first=287 second=232 amount=-1 +kerning first=67 second=106 amount=-1 +kerning first=379 second=99 amount=-1 +kerning first=194 second=279 amount=-1 +kerning first=376 second=289 amount=-2 +kerning first=303 second=339 amount=-1 +kerning first=330 second=229 amount=-1 +kerning first=377 second=89 amount=-1 +kerning first=302 second=279 amount=-1 +kerning first=8222 second=261 amount=-1 +kerning first=323 second=232 amount=-1 +kerning first=366 second=229 amount=-2 +kerning first=1027 second=1096 amount=-1 +kerning first=89 second=119 amount=-1 +kerning first=266 second=279 amount=-1 +kerning first=210 second=379 amount=-1 +kerning first=244 second=106 amount=-1 +kerning first=187 second=282 amount=-3 +kerning first=74 second=232 amount=-1 +kerning first=194 second=119 amount=-2 +kerning first=282 second=379 amount=-1 +kerning first=230 second=119 amount=-1 +kerning first=8216 second=221 amount=-1 +kerning first=1050 second=1059 amount=-1 +kerning first=208 second=106 amount=-1 +kerning first=266 second=119 amount=-1 +kerning first=354 second=379 amount=-1 +kerning first=302 second=119 amount=-1 +kerning first=1061 second=1079 amount=-1 +kerning first=90 second=339 amount=-1 +kerning first=338 second=119 amount=-1 +kerning first=316 second=106 amount=-1 +kerning first=374 second=119 amount=-1 +kerning first=204 second=346 amount=-1 +kerning first=352 second=106 amount=-1 +kerning first=211 second=209 amount=-1 +kerning first=202 second=66 amount=-1 +kerning first=90 second=79 amount=-1 +kerning first=317 second=202 amount=-1 +kerning first=221 second=269 amount=-2 +kerning first=1025 second=1076 amount=-1 +kerning first=200 second=316 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=346 second=66 amount=-1 +kerning first=236 second=316 amount=-1 +kerning first=274 second=66 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=274 second=205 amount=-1 +kerning first=77 second=199 amount=-1 +kerning first=251 second=259 amount=-1 +kerning first=8217 second=281 amount=-2 +kerning first=81 second=72 amount=-1 +kerning first=346 second=205 amount=-1 +kerning first=222 second=72 amount=-1 +kerning first=220 second=216 amount=-1 +kerning first=218 second=199 amount=-1 +kerning first=197 second=89 amount=-3 +kerning first=256 second=216 amount=-1 +kerning first=81 second=229 amount=-1 +kerning first=105 second=8217 amount=-1 +kerning first=317 second=192 amount=-1 +kerning first=117 second=229 amount=-1 +kerning first=202 second=205 amount=-1 +kerning first=210 second=8217 amount=-1 +kerning first=201 second=282 amount=-1 +kerning first=362 second=199 amount=-1 +kerning first=45 second=229 amount=-1 +kerning first=246 second=8217 amount=-1 +kerning first=232 second=103 amount=-1 +kerning first=122 second=46 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=330 second=226 amount=-1 +kerning first=192 second=353 amount=-1 +kerning first=379 second=102 amount=-1 +kerning first=366 second=226 amount=-2 +kerning first=103 second=245 amount=-1 +kerning first=263 second=46 amount=-1 +kerning first=381 second=382 amount=-1 +kerning first=199 second=102 amount=-1 +kerning first=363 second=8221 amount=-2 +kerning first=316 second=245 amount=-1 +kerning first=8220 second=248 amount=-1 +kerning first=235 second=102 amount=-1 +kerning first=45 second=72 amount=-3 +kerning first=1070 second=1083 amount=-1 +kerning first=86 second=46 amount=-3 +kerning first=84 second=296 amount=-1 +kerning first=208 second=103 amount=-1 +kerning first=321 second=219 amount=-1 +kerning first=290 second=45 amount=-1 +kerning first=344 second=316 amount=-1 +kerning first=217 second=252 amount=-1 +kerning first=330 second=335 amount=-1 +kerning first=8250 second=317 amount=-3 +kerning first=380 second=316 amount=-1 +kerning first=103 second=103 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=362 second=45 amount=-3 +kerning first=366 second=335 amount=-1 +kerning first=45 second=226 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=289 second=252 amount=-1 +kerning first=81 second=226 amount=-1 +kerning first=67 second=245 amount=-1 +kerning first=221 second=200 amount=-1 +kerning first=117 second=226 amount=-1 +kerning first=363 second=259 amount=-1 +kerning first=67 second=381 amount=-1 +kerning first=76 second=252 amount=-1 +kerning first=222 second=226 amount=-1 +kerning first=258 second=335 amount=-1 +kerning first=278 second=356 amount=-1 +kerning first=211 second=206 amount=-1 +kerning first=67 second=369 amount=-1 +kerning first=255 second=259 amount=-2 +kerning first=219 second=259 amount=-2 +kerning first=228 second=375 amount=-1 +kerning first=370 second=246 amount=-1 +kerning first=327 second=259 amount=-1 +kerning first=354 second=116 amount=-1 +kerning first=374 second=122 amount=-2 +kerning first=235 second=253 amount=-1 +kerning first=103 second=369 amount=-1 +kerning first=291 second=259 amount=-1 +kerning first=352 second=103 amount=-1 +kerning first=325 second=252 amount=-1 +kerning first=298 second=246 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=105 second=116 amount=-1 +kerning first=65 second=356 amount=-3 +kerning first=316 second=103 amount=-1 +kerning first=1043 second=1075 amount=-1 +kerning first=77 second=45 amount=-2 +kerning first=262 second=246 amount=-1 +kerning first=217 second=241 amount=-1 +kerning first=280 second=103 amount=-1 +kerning first=218 second=45 amount=-3 +kerning first=244 second=103 amount=-1 +kerning first=381 second=109 amount=-1 +kerning first=8220 second=378 amount=-1 +kerning first=121 second=246 amount=-1 +kerning first=199 second=362 amount=-1 +kerning first=264 second=266 amount=-2 +kerning first=85 second=246 amount=-1 +kerning first=197 second=83 amount=-2 +kerning first=89 second=122 amount=-2 +kerning first=1057 second=1056 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=89 second=279 amount=-2 +kerning first=338 second=122 amount=-1 +kerning first=45 second=115 amount=-1 +kerning first=202 second=323 amount=-1 +kerning first=201 second=109 amount=-1 +kerning first=302 second=122 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=87 second=375 amount=-1 +kerning first=350 second=356 amount=-1 +kerning first=266 second=122 amount=-1 +kerning first=316 second=369 amount=-1 +kerning first=274 second=323 amount=-1 +kerning first=201 second=382 amount=-1 +kerning first=377 second=83 amount=-1 +kerning first=230 second=122 amount=-1 +kerning first=260 second=346 amount=-2 +kerning first=280 second=369 amount=-1 +kerning first=204 second=336 amount=-1 +kerning first=87 second=115 amount=-2 +kerning first=8222 second=255 amount=-1 +kerning first=78 second=380 amount=-1 +kerning first=346 second=323 amount=-1 +kerning first=316 second=248 amount=-1 +kerning first=364 second=213 amount=-1 +kerning first=272 second=198 amount=-2 +kerning first=1056 second=1105 amount=-1 +kerning first=192 second=115 amount=-1 +kerning first=219 second=380 amount=-1 +kerning first=264 second=115 amount=-1 +kerning first=233 second=355 amount=-1 +kerning first=103 second=248 amount=-1 +kerning first=45 second=223 amount=-1 +kerning first=119 second=233 amount=-1 +kerning first=197 second=355 amount=-1 +kerning first=211 second=330 amount=-1 +kerning first=8220 second=97 amount=-1 +kerning first=260 second=233 amount=-1 +kerning first=364 second=259 amount=-2 +kerning first=70 second=102 amount=-1 +kerning first=228 second=115 amount=-1 +kerning first=366 second=338 amount=-1 +kerning first=67 second=248 amount=-1 +kerning first=278 second=90 amount=-1 +kerning first=199 second=365 amount=-1 +kerning first=86 second=315 amount=-1 +kerning first=296 second=233 amount=-1 +kerning first=264 second=263 amount=-1 +kerning first=45 second=75 amount=-3 +kerning first=368 second=233 amount=-1 +kerning first=269 second=355 amount=-1 +kerning first=69 second=110 amount=-1 +kerning first=272 second=313 amount=-1 +kerning first=65 second=350 amount=-2 +kerning first=105 second=110 amount=-1 +kerning first=1036 second=1090 amount=-1 +kerning first=256 second=213 amount=-1 +kerning first=8220 second=245 amount=-1 +kerning first=87 second=263 amount=-2 +kerning first=220 second=213 amount=-1 +kerning first=216 second=298 amount=-1 +kerning first=222 second=75 amount=-1 +kerning first=288 second=298 amount=-1 +kerning first=220 second=328 amount=-1 +kerning first=282 second=110 amount=-1 +kerning first=362 second=196 amount=-2 +kerning first=252 second=316 amount=-1 +kerning first=67 second=363 amount=-1 +kerning first=234 second=303 amount=-1 +kerning first=115 second=328 amount=-1 +kerning first=354 second=110 amount=-1 +kerning first=103 second=363 amount=-1 +kerning first=284 second=87 amount=-1 +kerning first=206 second=350 amount=-1 +kerning first=83 second=85 amount=-1 +kerning first=108 second=225 amount=-1 +kerning first=364 second=328 amount=-1 +kerning first=205 second=290 amount=-1 +kerning first=1057 second=1050 amount=-1 +kerning first=378 second=303 amount=-1 +kerning first=86 second=200 amount=-1 +kerning first=87 second=260 amount=-3 +kerning first=280 second=363 amount=-1 +kerning first=290 second=196 amount=-1 +kerning first=350 second=350 amount=-1 +kerning first=313 second=290 amount=-1 +kerning first=74 second=235 amount=-1 +kerning first=1090 second=1103 amount=-1 +kerning first=330 second=338 amount=-1 +kerning first=352 second=363 amount=-1 +kerning first=264 second=260 amount=-2 +kerning first=258 second=338 amount=-1 +kerning first=376 second=286 amount=-1 +kerning first=85 second=345 amount=-1 +kerning first=264 second=256 amount=-2 +kerning first=336 second=260 amount=-2 +kerning first=255 second=380 amount=-1 +kerning first=304 second=286 amount=-1 +kerning first=1027 second=1093 amount=-2 +kerning first=291 second=380 amount=-1 +kerning first=332 second=85 amount=-1 +kerning first=335 second=46 amount=-2 +kerning first=213 second=225 amount=-1 +kerning first=121 second=98 amount=-1 +kerning first=8220 second=242 amount=-1 +kerning first=327 second=380 amount=-1 +kerning first=249 second=225 amount=-1 +kerning first=262 second=98 amount=-1 +kerning first=363 second=380 amount=-1 +kerning first=260 second=85 amount=-2 +kerning first=268 second=286 amount=-2 +kerning first=226 second=98 amount=-1 +kerning first=69 second=261 amount=-1 +kerning first=289 second=367 amount=-1 +kerning first=105 second=261 amount=-1 +kerning first=325 second=367 amount=-1 +kerning first=217 second=367 amount=-1 +kerning first=377 second=86 amount=-1 +kerning first=210 second=261 amount=-1 +kerning first=321 second=67 amount=-1 +kerning first=296 second=351 amount=-1 +kerning first=274 second=326 amount=-1 +kerning first=8216 second=333 amount=-1 +kerning first=260 second=351 amount=-1 +kerning first=211 second=327 amount=-1 +kerning first=202 second=211 amount=-1 +kerning first=197 second=352 amount=-2 +kerning first=368 second=351 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=346 second=326 amount=-1 +kerning first=76 second=367 amount=-1 +kerning first=219 second=377 amount=-1 +kerning first=382 second=326 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=310 second=211 amount=-1 +kerning first=379 second=250 amount=-1 +kerning first=381 second=112 amount=-1 +kerning first=352 second=366 amount=-1 +kerning first=210 second=8220 amount=-1 +kerning first=202 second=326 amount=-1 +kerning first=280 second=366 amount=-1 +kerning first=274 second=211 amount=-1 +kerning first=105 second=8220 amount=-1 +kerning first=287 second=235 amount=-1 +kerning first=235 second=250 amount=-1 +kerning first=323 second=263 amount=-1 +kerning first=323 second=235 amount=-1 +kerning first=199 second=250 amount=-1 +kerning first=84 second=302 amount=-1 +kerning first=201 second=112 amount=-1 +kerning first=307 second=250 amount=-1 +kerning first=354 second=261 amount=-2 +kerning first=197 second=86 amount=-3 +kerning first=241 second=287 amount=-1 +kerning first=67 second=366 amount=-1 +kerning first=72 second=245 amount=-1 +kerning first=80 second=275 amount=-1 +kerning first=242 second=353 amount=-1 +kerning first=269 second=237 amount=-1 +kerning first=77 second=367 amount=-1 +kerning first=313 second=287 amount=-1 +kerning first=278 second=353 amount=-1 +kerning first=327 second=262 amount=-1 +kerning first=233 second=237 amount=-1 +kerning first=314 second=353 amount=-1 +kerning first=336 second=378 amount=-1 +kerning first=350 second=353 amount=-1 +kerning first=196 second=171 amount=-2 +kerning first=316 second=100 amount=-1 +kerning first=65 second=353 amount=-1 +kerning first=86 second=197 amount=-3 +kerning first=87 second=378 amount=-2 +kerning first=208 second=366 amount=-1 +kerning first=8222 second=107 amount=-1 +kerning first=101 second=353 amount=-1 +kerning first=268 second=171 amount=-2 +kerning first=69 second=379 amount=-1 +kerning first=304 second=171 amount=-2 +kerning first=45 second=198 amount=-2 +kerning first=354 second=113 amount=-2 +kerning first=206 second=353 amount=-1 +kerning first=377 second=352 amount=-1 +kerning first=217 second=249 amount=-1 +kerning first=8216 second=218 amount=-1 +kerning first=76 second=249 amount=-1 +kerning first=374 second=346 amount=-2 +kerning first=78 second=262 amount=-1 +kerning first=325 second=249 amount=-1 +kerning first=73 second=288 amount=-1 +kerning first=366 second=223 amount=-1 +kerning first=1038 second=1104 amount=-2 +kerning first=67 second=100 amount=-1 +kerning first=219 second=262 amount=-1 +kerning first=1043 second=1078 amount=-2 +kerning first=289 second=249 amount=-1 +kerning first=103 second=100 amount=-1 +kerning first=221 second=275 amount=-2 +kerning first=213 second=74 amount=-1 +kerning first=1079 second=1078 amount=-1 +kerning first=75 second=113 amount=-1 +kerning first=208 second=87 amount=-1 +kerning first=104 second=314 amount=-1 +kerning first=67 second=87 amount=-1 +kerning first=381 second=288 amount=-1 +kerning first=245 second=314 amount=-1 +kerning first=8222 second=218 amount=-2 +kerning first=260 second=217 amount=-2 +kerning first=298 second=333 amount=-1 +kerning first=317 second=314 amount=-1 +kerning first=262 second=333 amount=-1 +kerning first=88 second=269 amount=-1 +kerning first=281 second=314 amount=-1 +kerning first=334 second=80 amount=-1 +kerning first=321 second=210 amount=-1 +kerning first=75 second=366 amount=-1 +kerning first=370 second=333 amount=-1 +kerning first=8250 second=192 amount=-2 +kerning first=193 second=269 amount=-1 +kerning first=201 second=288 amount=-1 +kerning first=353 second=314 amount=-1 +kerning first=327 second=281 amount=-1 +kerning first=236 second=307 amount=-1 +kerning first=214 second=198 amount=-2 +kerning first=378 second=98 amount=-1 +kerning first=70 second=262 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=286 second=198 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=72 second=210 amount=-1 +kerning first=380 second=307 amount=-1 +kerning first=283 second=255 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=352 second=326 amount=-1 +kerning first=219 second=281 amount=-1 +kerning first=255 second=281 amount=-1 +kerning first=311 second=243 amount=-1 +kerning first=291 second=281 amount=-1 +kerning first=8220 second=263 amount=-1 +kerning first=1039 second=1054 amount=-1 +kerning first=378 second=120 amount=-1 +kerning first=334 second=73 amount=-1 +kerning first=321 second=203 amount=-1 +kerning first=221 second=229 amount=-2 +kerning first=68 second=75 amount=-1 +kerning first=213 second=203 amount=-1 +kerning first=314 second=118 amount=-1 +kerning first=198 second=120 amount=-1 +kerning first=317 second=75 amount=-1 +kerning first=217 second=101 amount=-1 +kerning first=278 second=118 amount=-1 +kerning first=234 second=120 amount=-1 +kerning first=365 second=229 amount=-1 +kerning first=289 second=101 amount=-1 +kerning first=350 second=118 amount=-1 +kerning first=262 second=73 amount=-1 +kerning first=378 second=99 amount=-1 +kerning first=325 second=101 amount=-1 +kerning first=101 second=118 amount=-1 +kerning first=240 second=103 amount=-1 +kerning first=315 second=90 amount=-1 +kerning first=242 second=118 amount=-1 +kerning first=283 second=8220 amount=-1 +kerning first=75 second=106 amount=-1 +kerning first=86 second=68 amount=-1 +kerning first=206 second=118 amount=-1 +kerning first=381 second=267 amount=-1 +kerning first=111 second=106 amount=-1 +kerning first=211 second=8220 amount=-1 +kerning first=324 second=106 amount=-1 +kerning first=121 second=355 amount=-1 +kerning first=352 second=87 amount=-1 +kerning first=65 second=118 amount=-2 +kerning first=106 second=8220 amount=-1 +kerning first=252 second=106 amount=-1 +kerning first=288 second=106 amount=-1 +kerning first=280 second=87 amount=-1 +kerning first=262 second=361 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=226 second=361 amount=-1 +kerning first=203 second=264 amount=-1 +kerning first=314 second=111 amount=-1 +kerning first=8220 second=291 amount=-2 +kerning first=376 second=212 amount=-1 +kerning first=298 second=361 amount=-1 +kerning first=268 second=212 amount=-2 +kerning first=65 second=111 amount=-1 +kerning first=260 second=364 amount=-2 +kerning first=201 second=316 amount=-1 +kerning first=304 second=212 amount=-1 +kerning first=370 second=361 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=365 second=257 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=206 second=111 amount=-1 +kerning first=65 second=8249 amount=-2 +kerning first=199 second=368 amount=-1 +kerning first=68 second=82 amount=-1 +kerning first=260 second=104 amount=-1 +kerning first=280 second=66 amount=-1 +kerning first=266 second=335 amount=-1 +kerning first=332 second=364 amount=-1 +kerning first=229 second=44 amount=-1 +kerning first=1039 second=1057 amount=-1 +kerning first=208 second=66 amount=-1 +kerning first=88 second=44 amount=-1 +kerning first=201 second=323 amount=-1 +kerning first=376 second=205 amount=-1 +kerning first=352 second=66 amount=-1 +kerning first=352 second=347 amount=-1 +kerning first=332 second=97 amount=-1 +kerning first=316 second=347 amount=-1 +kerning first=354 second=375 amount=-1 +kerning first=1057 second=1078 amount=-1 +kerning first=374 second=8250 amount=-1 +kerning first=71 second=278 amount=-1 +kerning first=78 second=281 amount=-1 +kerning first=1059 second=1054 amount=-1 +kerning first=381 second=323 amount=-1 +kerning first=268 second=205 amount=-1 +kerning first=212 second=278 amount=-1 +kerning first=67 second=354 amount=-1 +kerning first=214 second=106 amount=-1 +kerning first=264 second=351 amount=-1 +kerning first=296 second=97 amount=-1 +kerning first=316 second=326 amount=-1 +kerning first=365 second=250 amount=-1 +kerning first=284 second=278 amount=-1 +kerning first=208 second=354 amount=-1 +kerning first=196 second=233 amount=-1 +kerning first=356 second=278 amount=-1 +kerning first=103 second=326 amount=-1 +kerning first=257 second=250 amount=-1 +kerning first=67 second=347 amount=-1 +kerning first=1057 second=1099 amount=-1 +kerning first=280 second=354 amount=-1 +kerning first=221 second=250 amount=-1 +kerning first=268 second=233 amount=-1 +kerning first=121 second=333 amount=-1 +kerning first=314 second=378 amount=-1 +kerning first=226 second=45 amount=-1 +kerning first=1059 second=1047 amount=-1 +kerning first=266 second=82 amount=-1 +kerning first=101 second=371 amount=-1 +kerning first=85 second=333 amount=-1 +kerning first=278 second=378 amount=-1 +kerning first=350 second=90 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=352 second=354 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=221 second=257 amount=-2 +kerning first=286 second=219 amount=-1 +kerning first=304 second=233 amount=-1 +kerning first=311 second=271 amount=-1 +kerning first=350 second=378 amount=-1 +kerning first=262 second=45 amount=-2 +kerning first=214 second=219 amount=-1 +kerning first=377 second=203 amount=-1 +kerning first=370 second=45 amount=-3 +kerning first=376 second=233 amount=-2 +kerning first=214 second=226 amount=-1 +kerning first=230 second=8250 amount=-1 +kerning first=101 second=378 amount=-1 +kerning first=334 second=45 amount=-1 +kerning first=250 second=226 amount=-1 +kerning first=89 second=8250 amount=-1 +kerning first=242 second=378 amount=-1 +kerning first=112 second=289 amount=-1 +kerning first=286 second=226 amount=-1 +kerning first=206 second=378 amount=-1 +kerning first=104 second=363 amount=-1 +kerning first=296 second=214 amount=-1 +kerning first=88 second=220 amount=-1 +kerning first=268 second=240 amount=-1 +kerning first=260 second=214 amount=-1 +kerning first=221 second=194 amount=-3 +kerning first=209 second=363 amount=-1 +kerning first=79 second=65 amount=-2 +kerning first=368 second=214 amount=-1 +kerning first=281 second=110 amount=-1 +kerning first=196 second=240 amount=-1 +kerning first=200 second=304 amount=-1 +kerning first=281 second=363 amount=-1 +kerning first=106 second=318 amount=-1 +kerning first=266 second=317 amount=-1 +kerning first=317 second=363 amount=-1 +kerning first=220 second=65 amount=-2 +kerning first=370 second=284 amount=-1 +kerning first=353 second=363 amount=-1 +kerning first=304 second=240 amount=-1 +kerning first=1060 second=1063 amount=-1 +kerning first=193 second=220 amount=-2 +kerning first=90 second=334 amount=-1 +kerning first=1024 second=1063 amount=-1 +kerning first=187 second=369 amount=-1 +kerning first=283 second=318 amount=-1 +kerning first=364 second=65 amount=-2 +kerning first=99 second=259 amount=-1 +kerning first=198 second=71 amount=-1 +kerning first=379 second=375 amount=-2 +kerning first=259 second=369 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=1070 second=1030 amount=-1 +kerning first=82 second=369 amount=-1 +kerning first=187 second=116 amount=-1 +kerning first=1113 second=1094 amount=-1 +kerning first=118 second=116 amount=-1 +kerning first=206 second=228 amount=-1 +kerning first=109 second=254 amount=-1 +kerning first=1100 second=1102 amount=-1 +kerning first=1056 second=1055 amount=-1 +kerning first=101 second=228 amount=-1 +kerning first=213 second=374 amount=-1 +kerning first=8222 second=382 amount=-2 +kerning first=250 second=254 amount=-1 +kerning first=378 second=324 amount=-1 +kerning first=1100 second=1074 amount=-1 +kerning first=307 second=375 amount=-1 +kerning first=331 second=369 amount=-1 +kerning first=198 second=324 amount=-1 +kerning first=8220 second=326 amount=-1 +kerning first=295 second=369 amount=-1 +kerning first=86 second=377 amount=-1 +kerning first=235 second=375 amount=-1 +kerning first=381 second=344 amount=-1 +kerning first=367 second=369 amount=-1 +kerning first=234 second=324 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=277 second=355 amount=-1 +kerning first=201 second=344 amount=-1 +kerning first=1049 second=1108 amount=-1 +kerning first=85 second=284 amount=-1 +kerning first=1086 second=1103 amount=-1 +kerning first=208 second=298 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=90 second=224 amount=-1 +kerning first=70 second=234 amount=-1 +kerning first=274 second=332 amount=-1 +kerning first=87 second=253 amount=-1 +kerning first=280 second=298 amount=-1 +kerning first=216 second=310 amount=-1 +kerning first=380 second=279 amount=-1 +kerning first=8218 second=371 amount=-1 +kerning first=344 second=279 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=310 second=332 amount=-1 +kerning first=352 second=298 amount=-1 +kerning first=67 second=249 amount=-1 +kerning first=8217 second=67 amount=-1 +kerning first=74 second=242 amount=-1 +kerning first=288 second=85 amount=-1 +kerning first=240 second=287 amount=-1 +kerning first=8218 second=90 amount=-1 +kerning first=307 second=108 amount=-1 +kerning first=240 second=8217 amount=-1 +kerning first=89 second=313 amount=-1 +kerning first=216 second=85 amount=-1 +kerning first=1049 second=1086 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=291 second=105 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=209 second=335 amount=-1 +kerning first=378 second=380 amount=-1 +kerning first=323 second=242 amount=-1 +kerning first=70 second=290 amount=-1 +kerning first=99 second=8217 amount=-1 +kerning first=287 second=242 amount=-1 +kerning first=255 second=105 amount=-1 +kerning first=218 second=382 amount=-1 +kerning first=1046 second=1060 amount=-2 +kerning first=1092 second=1083 amount=-1 +kerning first=199 second=197 amount=-2 +kerning first=198 second=380 amount=-1 +kerning first=352 second=270 amount=-1 +kerning first=193 second=248 amount=-1 +kerning first=234 second=380 amount=-1 +kerning first=264 second=225 amount=-1 +kerning first=88 second=248 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=350 second=228 amount=-1 +kerning first=199 second=108 amount=-1 +kerning first=208 second=270 amount=-1 +kerning first=314 second=228 amount=-1 +kerning first=379 second=197 amount=-1 +kerning first=304 second=112 amount=-1 +kerning first=1042 second=1049 amount=-1 +kerning first=278 second=228 amount=-1 +kerning first=71 second=74 amount=-1 +kerning first=280 second=270 amount=-1 +kerning first=87 second=225 amount=-2 +kerning first=377 second=315 amount=-1 +kerning first=1056 second=1083 amount=-1 +kerning first=296 second=103 amount=-1 +kerning first=282 second=119 amount=-1 +kerning first=8216 second=283 amount=-1 +kerning first=253 second=122 amount=-1 +kerning first=118 second=98 amount=-1 +kerning first=356 second=46 amount=-3 +kerning first=99 second=231 amount=-1 +kerning first=350 second=200 amount=-1 +kerning first=217 second=122 amount=-1 +kerning first=354 second=119 amount=-1 +kerning first=212 second=74 amount=-1 +kerning first=85 second=256 amount=-2 +kerning first=198 second=352 amount=-1 +kerning first=112 second=122 amount=-1 +kerning first=284 second=74 amount=-1 +kerning first=69 second=211 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=336 second=225 amount=-1 +kerning first=352 second=119 amount=-1 +kerning first=248 second=46 amount=-2 +kerning first=262 second=256 amount=-2 +kerning first=325 second=122 amount=-1 +kerning first=284 second=46 amount=-1 +kerning first=8217 second=334 amount=-1 +kerning first=204 second=231 amount=-1 +kerning first=282 second=318 amount=-1 +kerning first=289 second=122 amount=-1 +kerning first=258 second=245 amount=-1 +kerning first=288 second=366 amount=-1 +kerning first=282 second=211 amount=-1 +kerning first=187 second=379 amount=-2 +kerning first=71 second=46 amount=-1 +kerning first=244 second=380 amount=-1 +kerning first=107 second=46 amount=-1 +kerning first=370 second=256 amount=-2 +kerning first=216 second=366 amount=-1 +kerning first=334 second=256 amount=-2 +kerning first=76 second=122 amount=-1 +kerning first=277 second=102 amount=-1 +kerning first=366 second=245 amount=-1 +kerning first=330 second=245 amount=-1 +kerning first=8218 second=118 amount=-2 +kerning first=354 second=211 amount=-1 +kerning first=230 second=112 amount=-1 +kerning first=321 second=86 amount=-1 +kerning first=310 second=107 amount=-1 +kerning first=321 second=313 amount=-1 +kerning first=194 second=112 amount=-1 +kerning first=374 second=81 amount=-1 +kerning first=274 second=107 amount=-1 +kerning first=202 second=171 amount=-1 +kerning first=344 second=216 amount=-1 +kerning first=269 second=105 amount=-1 +kerning first=1061 second=1086 amount=-1 +kerning first=382 second=107 amount=-1 +kerning first=325 second=211 amount=-1 +kerning first=89 second=112 amount=-1 +kerning first=213 second=86 amount=-1 +kerning first=346 second=107 amount=-1 +kerning first=274 second=171 amount=-1 +kerning first=369 second=261 amount=-1 +kerning first=226 second=8221 amount=-1 +kerning first=200 second=324 amount=-1 +kerning first=356 second=105 amount=-1 +kerning first=8249 second=87 amount=-2 +kerning first=202 second=107 amount=-1 +kerning first=97 second=171 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=334 second=8221 amount=-1 +kerning first=313 second=67 amount=-1 +kerning first=382 second=100 amount=-1 +kerning first=314 second=8217 amount=-2 +kerning first=290 second=209 amount=-1 +kerning first=266 second=336 amount=-2 +kerning first=1098 second=1074 amount=-1 +kerning first=248 second=105 amount=-1 +kerning first=379 second=235 amount=-1 +kerning first=374 second=112 amount=-1 +kerning first=266 second=81 amount=-2 +kerning first=66 second=251 amount=-1 +kerning first=376 second=203 amount=-1 +kerning first=310 second=171 amount=-2 +kerning first=338 second=45 amount=-1 +kerning first=346 second=171 amount=-1 +kerning first=8250 second=75 amount=-3 +kerning first=302 second=112 amount=-1 +kerning first=338 second=81 amount=-1 +kerning first=8249 second=354 amount=-2 +kerning first=382 second=171 amount=-2 +kerning first=313 second=296 amount=-1 +kerning first=266 second=112 amount=-1 +kerning first=302 second=81 amount=-1 +kerning first=310 second=100 amount=-1 +kerning first=379 second=228 amount=-1 +kerning first=108 second=353 amount=-1 +kerning first=377 second=249 amount=-1 +kerning first=207 second=251 amount=-1 +kerning first=84 second=230 amount=-2 +kerning first=269 second=249 amount=-1 +kerning first=89 second=379 amount=-1 +kerning first=305 second=249 amount=-1 +kerning first=8216 second=231 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=249 second=353 amount=-1 +kerning first=279 second=251 amount=-1 +kerning first=1071 second=1105 amount=-1 +kerning first=195 second=281 amount=-1 +kerning first=73 second=275 amount=-1 +kerning first=351 second=251 amount=-1 +kerning first=266 second=379 amount=-1 +kerning first=379 second=204 amount=-1 +kerning first=290 second=206 amount=-1 +kerning first=315 second=223 amount=-1 +kerning first=72 second=353 amount=-1 +kerning first=364 second=346 amount=-1 +kerning first=304 second=268 amount=-1 +kerning first=382 second=339 amount=-1 +kerning first=76 second=211 amount=-1 +kerning first=369 second=230 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=268 second=268 amount=-2 +kerning first=298 second=228 amount=-1 +kerning first=376 second=268 amount=-1 +kerning first=310 second=339 amount=-1 +kerning first=8250 second=323 amount=-3 +kerning first=122 second=229 amount=-1 +kerning first=72 second=83 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=338 second=313 amount=-1 +kerning first=233 second=249 amount=-1 +kerning first=374 second=313 amount=-1 +kerning first=219 second=291 amount=-2 +kerning first=290 second=330 amount=-1 +kerning first=213 second=83 amount=-1 +kerning first=266 second=313 amount=-1 +kerning first=377 second=256 amount=-1 +kerning first=120 second=230 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=217 second=211 amount=-1 +kerning first=86 second=76 amount=-1 +kerning first=377 second=284 amount=-1 +kerning first=80 second=283 amount=-1 +kerning first=230 second=109 amount=-1 +kerning first=333 second=289 amount=-1 +kerning first=321 second=83 amount=-1 +kerning first=274 second=192 amount=-1 +kerning first=369 second=289 amount=-1 +kerning first=338 second=84 amount=-1 +kerning first=89 second=344 amount=-1 +kerning first=375 second=328 amount=-1 +kerning first=202 second=192 amount=-1 +kerning first=263 second=97 amount=-1 +kerning first=1024 second=1091 amount=-1 +kerning first=246 second=187 amount=-1 +kerning first=379 second=232 amount=-1 +kerning first=254 second=237 amount=-1 +kerning first=344 second=244 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=202 second=199 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=380 second=244 amount=-1 +kerning first=338 second=379 amount=-1 +kerning first=336 second=194 amount=-2 +kerning first=97 second=250 amount=-1 +kerning first=315 second=282 amount=-1 +kerning first=89 second=116 amount=-1 +kerning first=377 second=277 amount=-1 +kerning first=113 second=237 amount=-1 +kerning first=230 second=116 amount=-1 +kerning first=264 second=194 amount=-2 +kerning first=315 second=89 amount=-1 +kerning first=205 second=334 amount=-1 +kerning first=374 second=379 amount=-1 +kerning first=84 second=289 amount=-2 +kerning first=120 second=289 amount=-1 +kerning first=269 second=277 amount=-1 +kerning first=87 second=194 amount=-3 +kerning first=225 second=289 amount=-1 +kerning first=1056 second=1034 amount=-1 +kerning first=79 second=346 amount=-1 +kerning first=8216 second=259 amount=-1 +kerning first=230 second=351 amount=-1 +kerning first=279 second=254 amount=-1 +kerning first=8250 second=103 amount=-1 +kerning first=79 second=374 amount=-1 +kerning first=321 second=121 amount=-1 +kerning first=194 second=351 amount=-1 +kerning first=274 second=72 amount=-1 +kerning first=315 second=254 amount=-1 +kerning first=197 second=277 amount=-1 +kerning first=302 second=351 amount=-1 +kerning first=351 second=254 amount=-1 +kerning first=249 second=121 amount=-1 +kerning first=266 second=351 amount=-1 +kerning first=72 second=350 amount=-1 +kerning first=288 second=325 amount=-1 +kerning first=102 second=254 amount=2 +kerning first=382 second=367 amount=-1 +kerning first=1089 second=1095 amount=-1 +kerning first=321 second=350 amount=-1 +kerning first=108 second=121 amount=-1 +kerning first=274 second=367 amount=-1 +kerning first=1053 second=1095 amount=-1 +kerning first=213 second=350 amount=-1 +kerning first=72 second=121 amount=-1 +kerning first=310 second=367 amount=-1 +kerning first=89 second=351 amount=-2 +kerning first=233 second=305 amount=-1 +kerning first=202 second=367 amount=-1 +kerning first=122 second=117 amount=-1 +kerning first=315 second=213 amount=-1 +kerning first=338 second=344 amount=-1 +kerning first=274 second=199 amount=-1 +kerning first=274 second=79 amount=-1 +kerning first=86 second=117 amount=-1 +kerning first=374 second=344 amount=-1 +kerning first=97 second=367 amount=-1 +kerning first=227 second=117 amount=-1 +kerning first=269 second=305 amount=-1 +kerning first=67 second=260 amount=-2 +kerning first=202 second=79 amount=-1 +kerning first=377 second=76 amount=-1 +kerning first=66 second=254 amount=-1 +kerning first=377 second=305 amount=-1 +kerning first=208 second=260 amount=-2 +kerning first=374 second=351 amount=-2 +kerning first=256 second=374 amount=-3 +kerning first=338 second=351 amount=-1 +kerning first=263 second=117 amount=-1 +kerning first=81 second=192 amount=-2 +kerning first=280 second=260 amount=-1 +kerning first=84 second=261 amount=-2 +kerning first=310 second=79 amount=-1 +kerning first=371 second=117 amount=-1 +kerning first=1061 second=1089 amount=-1 +kerning first=209 second=117 amount=-1 +kerning first=266 second=344 amount=-1 +kerning first=120 second=261 amount=-1 +kerning first=202 second=72 amount=-1 +kerning first=346 second=192 amount=-2 +kerning first=352 second=260 amount=-2 +kerning first=194 second=316 amount=-1 +kerning first=103 second=291 amount=-1 +kerning first=377 second=336 amount=-1 +kerning first=283 second=311 amount=-1 +kerning first=363 second=361 amount=-1 +kerning first=230 second=316 amount=-1 +kerning first=67 second=291 amount=-1 +kerning first=313 second=362 amount=-1 +kerning first=266 second=316 amount=-1 +kerning first=78 second=337 amount=-1 +kerning first=72 second=367 amount=-1 +kerning first=253 second=382 amount=-1 +kerning first=338 second=316 amount=-1 +kerning first=313 second=331 amount=-1 +kerning first=327 second=337 amount=-1 +kerning first=289 second=382 amount=-1 +kerning first=106 second=311 amount=-1 +kerning first=291 second=337 amount=-1 +kerning first=325 second=382 amount=-1 +kerning first=67 second=267 amount=-1 +kerning first=66 second=226 amount=-1 +kerning first=255 second=337 amount=-1 +kerning first=103 second=267 amount=-1 +kerning first=277 second=331 amount=-1 +kerning first=84 second=286 amount=-1 +kerning first=102 second=226 amount=-1 +kerning first=78 second=361 amount=-1 +kerning first=260 second=221 amount=-3 +kerning first=8222 second=119 amount=-2 +kerning first=288 second=310 amount=-1 +kerning first=330 second=266 amount=-1 +kerning first=366 second=266 amount=-1 +kerning first=1114 second=1087 amount=-1 +kerning first=83 second=221 amount=-1 +kerning first=258 second=266 amount=-1 +kerning first=1042 second=1056 amount=-1 +kerning first=1070 second=1037 amount=-1 +kerning first=219 second=361 amount=-1 +kerning first=111 second=289 amount=-1 +kerning first=327 second=361 amount=-1 +kerning first=291 second=361 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=377 second=45 amount=-1 +kerning first=283 second=227 amount=-1 +kerning first=377 second=252 amount=-1 +kerning first=374 second=74 amount=-2 +kerning first=211 second=227 amount=-1 +kerning first=337 second=44 amount=-2 +kerning first=197 second=252 amount=-1 +kerning first=119 second=104 amount=-1 +kerning first=221 second=201 amount=-1 +kerning first=233 second=252 amount=-1 +kerning first=83 second=104 amount=-1 +kerning first=269 second=252 amount=-1 +kerning first=354 second=246 amount=-1 +kerning first=8216 second=234 amount=-1 +kerning first=305 second=252 amount=-1 +kerning first=80 second=201 amount=-1 +kerning first=213 second=381 amount=-1 +kerning first=382 second=103 amount=-1 +kerning first=112 second=382 amount=-1 +kerning first=213 second=90 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=346 second=103 amount=-1 +kerning first=8250 second=72 amount=-3 +kerning first=321 second=90 amount=-1 +kerning first=310 second=103 amount=-1 +kerning first=352 second=291 amount=-1 +kerning first=217 second=382 amount=-1 +kerning first=321 second=381 amount=-1 +kerning first=8250 second=363 amount=-1 +kerning first=274 second=103 amount=-1 +kerning first=316 second=291 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=216 second=317 amount=-1 +kerning first=266 second=84 amount=-1 +kerning first=374 second=109 amount=-1 +kerning first=280 second=291 amount=-1 +kerning first=354 second=103 amount=-2 +kerning first=379 second=207 amount=-1 +kerning first=106 second=227 amount=-1 +kerning first=197 second=45 amount=-2 +kerning first=351 second=226 amount=-1 +kerning first=202 second=103 amount=-1 +kerning first=244 second=291 amount=-1 +kerning first=70 second=227 amount=-1 +kerning first=305 second=45 amount=-1 +kerning first=194 second=84 amount=-3 +kerning first=208 second=291 amount=-1 +kerning first=269 second=45 amount=-1 +kerning first=97 second=103 amount=-1 +kerning first=242 second=122 amount=-1 +kerning first=374 second=288 amount=-1 +kerning first=268 second=243 amount=-1 +kerning first=66 second=198 amount=-3 +kerning first=111 second=314 amount=-1 +kerning first=304 second=243 amount=-1 +kerning first=344 second=213 amount=-1 +kerning first=1070 second=1065 amount=-1 +kerning first=75 second=314 amount=-1 +kerning first=83 second=193 amount=-2 +kerning first=266 second=288 amount=-2 +kerning first=282 second=218 amount=-1 +kerning first=338 second=288 amount=-1 +kerning first=316 second=263 amount=-1 +kerning first=328 second=249 amount=-1 +kerning first=302 second=288 amount=-1 +kerning first=252 second=314 amount=-1 +kerning first=196 second=243 amount=-1 +kerning first=8220 second=347 amount=-1 +kerning first=121 second=8249 amount=-2 +kerning first=67 second=263 amount=-1 +kerning first=327 second=365 amount=-1 +kerning first=324 second=314 amount=-1 +kerning first=307 second=115 amount=-1 +kerning first=227 second=120 amount=-1 +kerning first=103 second=263 amount=-1 +kerning first=291 second=365 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=288 second=78 amount=-1 +kerning first=277 second=303 amount=-1 +kerning first=199 second=115 amount=-1 +kerning first=263 second=120 amount=-1 +kerning first=70 second=224 amount=-1 +kerning first=368 second=193 amount=-2 +kerning first=115 second=331 amount=-1 +kerning first=313 second=303 amount=-1 +kerning first=235 second=115 amount=-1 +kerning first=219 second=365 amount=-1 +kerning first=216 second=78 amount=-1 +kerning first=376 second=243 amount=-2 +kerning first=344 second=269 amount=-1 +kerning first=321 second=353 amount=-1 +kerning first=106 second=224 amount=-1 +kerning first=86 second=120 amount=-1 +kerning first=377 second=73 amount=-1 +kerning first=78 second=365 amount=-1 +kerning first=200 second=213 amount=-1 +kerning first=379 second=115 amount=-1 +kerning first=122 second=120 amount=-1 +kerning first=211 second=224 amount=-1 +kerning first=210 second=83 amount=-1 +kerning first=315 second=198 amount=-1 +kerning first=274 second=75 amount=-1 +kerning first=313 second=324 amount=-1 +kerning first=283 second=224 amount=-1 +kerning first=321 second=118 amount=-1 +kerning first=370 second=8249 amount=-3 +kerning first=255 second=98 amount=-1 +kerning first=78 second=46 amount=-1 +kerning first=202 second=75 amount=-1 +kerning first=1045 second=1048 amount=-1 +kerning first=346 second=196 amount=-2 +kerning first=334 second=8249 amount=-1 +kerning first=119 second=101 amount=-1 +kerning first=377 second=221 amount=-1 +kerning first=371 second=120 amount=-1 +kerning first=226 second=8249 amount=-1 +kerning first=377 second=280 amount=-1 +kerning first=199 second=235 amount=-1 +kerning first=332 second=221 amount=-1 +kerning first=122 second=328 amount=-1 +kerning first=346 second=75 amount=-1 +kerning first=262 second=8249 amount=-2 +kerning first=1045 second=1076 amount=-1 +kerning first=249 second=118 amount=-1 +kerning first=86 second=328 amount=-1 +kerning first=260 second=101 amount=-1 +kerning first=8222 second=122 amount=-2 +kerning first=350 second=115 amount=-1 +kerning first=371 second=328 amount=-1 +kerning first=45 second=325 amount=-3 +kerning first=296 second=101 amount=-1 +kerning first=89 second=99 amount=-2 +kerning first=81 second=325 amount=-1 +kerning first=274 second=196 amount=-1 +kerning first=1056 second=1031 amount=-1 +kerning first=310 second=370 amount=-1 +kerning first=108 second=118 amount=-1 +kerning first=368 second=101 amount=-1 +kerning first=70 second=283 amount=-1 +kerning first=274 second=370 amount=-1 +kerning first=354 second=218 amount=-1 +kerning first=72 second=118 amount=-1 +kerning first=263 second=328 amount=-1 +kerning first=236 second=241 amount=-1 +kerning first=217 second=109 amount=-1 +kerning first=222 second=325 amount=-1 +kerning first=291 second=98 amount=-1 +kerning first=379 second=241 amount=-1 +kerning first=363 second=98 amount=-1 +kerning first=269 second=263 amount=-1 +kerning first=317 second=338 amount=-1 +kerning first=362 second=283 amount=-1 +kerning first=77 second=290 amount=-1 +kerning first=99 second=8220 amount=-1 +kerning first=1024 second=1045 amount=-1 +kerning first=278 second=108 amount=-1 +kerning first=366 second=241 amount=-1 +kerning first=317 second=85 amount=-1 +kerning first=1060 second=1045 amount=-1 +kerning first=242 second=108 amount=-1 +kerning first=1027 second=1114 amount=-1 +kerning first=209 second=338 amount=-1 +kerning first=350 second=108 amount=-1 +kerning first=314 second=289 amount=-1 +kerning first=75 second=335 amount=-1 +kerning first=72 second=363 amount=-1 +kerning first=314 second=108 amount=-1 +kerning first=8217 second=365 amount=-1 +kerning first=83 second=196 amount=-2 +kerning first=277 second=380 amount=-1 +kerning first=90 second=193 amount=-1 +kerning first=313 second=380 amount=-1 +kerning first=1060 second=1038 amount=-1 +kerning first=65 second=368 amount=-2 +kerning first=206 second=115 amount=-1 +kerning first=353 second=345 amount=-1 +kerning first=330 second=248 amount=-1 +kerning first=352 second=352 amount=-1 +kerning first=65 second=115 amount=-1 +kerning first=100 second=380 amount=-1 +kerning first=371 second=331 amount=-1 +kerning first=101 second=115 amount=-1 +kerning first=45 second=241 amount=-1 +kerning first=258 second=248 amount=-1 +kerning first=263 second=331 amount=-1 +kerning first=70 second=286 amount=-1 +kerning first=314 second=115 amount=-1 +kerning first=1046 second=1113 amount=-1 +kerning first=278 second=368 amount=-1 +kerning first=242 second=115 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=317 second=78 amount=-1 +kerning first=278 second=115 amount=-1 +kerning first=1024 second=1038 amount=-1 +kerning first=379 second=350 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=240 second=255 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=106 second=252 amount=-1 +kerning first=204 second=255 amount=-1 +kerning first=213 second=200 amount=-1 +kerning first=208 second=323 amount=-1 +kerning first=99 second=255 amount=-1 +kerning first=350 second=368 amount=-1 +kerning first=8217 second=324 amount=-1 +kerning first=1042 second=1052 amount=-1 +kerning first=280 second=323 amount=-1 +kerning first=321 second=200 amount=-1 +kerning first=352 second=323 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=70 second=231 amount=-1 +kerning first=8220 second=260 amount=-4 +kerning first=234 second=328 amount=-1 +kerning first=213 second=207 amount=-1 +kerning first=88 second=245 amount=-1 +kerning first=362 second=290 amount=-1 +kerning first=198 second=328 amount=-1 +kerning first=187 second=366 amount=-2 +kerning first=1072 second=1118 amount=-1 +kerning first=376 second=346 amount=-2 +kerning first=1036 second=1118 amount=-1 +kerning first=321 second=207 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=86 second=352 amount=-2 +kerning first=378 second=328 amount=-1 +kerning first=311 second=233 amount=-1 +kerning first=218 second=290 amount=-1 +kerning first=283 second=252 amount=-1 +kerning first=218 second=283 amount=-1 +kerning first=1038 second=1073 amount=-2 +kerning first=193 second=245 amount=-1 +kerning first=113 second=283 amount=-1 +kerning first=332 second=217 amount=-1 +kerning first=218 second=257 amount=-2 +kerning first=331 second=106 amount=-1 +kerning first=367 second=106 amount=-1 +kerning first=316 second=324 amount=-1 +kerning first=259 second=106 amount=-1 +kerning first=377 second=333 amount=-1 +kerning first=295 second=106 amount=-1 +kerning first=82 second=113 amount=-1 +kerning first=197 second=333 amount=-1 +kerning first=321 second=378 amount=-1 +kerning first=370 second=281 amount=-1 +kerning first=86 second=65 amount=-3 +kerning first=201 second=87 amount=-1 +kerning first=67 second=288 amount=-2 +kerning first=98 second=107 amount=-1 +kerning first=204 second=262 amount=-1 +kerning first=80 second=198 amount=-2 +kerning first=278 second=366 amount=-1 +kerning first=201 second=347 amount=-1 +kerning first=8218 second=374 amount=-3 +kerning first=262 second=281 amount=-1 +kerning first=1100 second=1078 amount=-1 +kerning first=83 second=217 amount=-1 +kerning first=298 second=281 amount=-1 +kerning first=221 second=198 amount=-3 +kerning first=278 second=210 amount=-1 +kerning first=354 second=243 amount=-2 +kerning first=85 second=281 amount=-1 +kerning first=206 second=210 amount=-1 +kerning first=99 second=361 amount=-1 +kerning first=287 second=326 amount=-1 +kerning first=121 second=281 amount=-1 +kerning first=262 second=274 amount=-1 +kerning first=325 second=230 amount=-1 +kerning first=277 second=120 amount=-1 +kerning first=350 second=203 amount=-1 +kerning first=313 second=120 amount=-1 +kerning first=278 second=203 amount=-1 +kerning first=205 second=99 amount=-1 +kerning first=100 second=120 amount=-1 +kerning first=366 second=248 amount=-1 +kerning first=334 second=274 amount=-1 +kerning first=87 second=229 amount=-2 +kerning first=198 second=377 amount=-1 +kerning first=307 second=118 amount=-1 +kerning first=316 second=267 amount=-1 +kerning first=336 second=229 amount=-1 +kerning first=288 second=75 amount=-1 +kerning first=379 second=118 amount=-1 +kerning first=264 second=229 amount=-1 +kerning first=216 second=75 amount=-1 +kerning first=187 second=106 amount=-1 +kerning first=1049 second=1077 amount=-1 +kerning first=223 second=106 amount=-1 +kerning first=235 second=118 amount=-1 +kerning first=82 second=106 amount=-1 +kerning first=381 second=87 amount=-1 +kerning first=209 second=332 amount=-1 +kerning first=198 second=68 amount=-1 +kerning first=199 second=118 amount=-1 +kerning first=321 second=316 amount=-1 +kerning first=240 second=8220 amount=-1 +kerning first=118 second=106 amount=-1 +kerning first=317 second=332 amount=-1 +kerning first=376 second=209 amount=-1 +kerning first=305 second=8217 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=249 second=365 amount=-1 +kerning first=108 second=111 amount=-1 +kerning first=90 second=199 amount=-1 +kerning first=70 second=287 amount=-1 +kerning first=304 second=264 amount=-1 +kerning first=211 second=287 amount=-1 +kerning first=66 second=219 amount=-2 +kerning first=268 second=264 amount=-2 +kerning first=195 second=199 amount=-1 +kerning first=268 second=209 amount=-1 +kerning first=283 second=287 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=352 second=224 amount=-1 +kerning first=377 second=347 amount=-1 +kerning first=362 second=234 amount=-1 +kerning first=233 second=8217 amount=-1 +kerning first=355 second=287 amount=-1 +kerning first=269 second=8217 amount=-1 +kerning first=258 second=242 amount=-1 +kerning first=77 second=289 amount=-1 +kerning first=65 second=374 amount=-3 +kerning first=274 second=82 amount=-1 +kerning first=347 second=314 amount=-1 +kerning first=101 second=121 amount=-1 +kerning first=330 second=242 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=195 second=364 amount=-2 +kerning first=218 second=289 amount=-2 +kerning first=346 second=82 amount=-1 +kerning first=310 second=44 amount=-1 +kerning first=254 second=289 amount=-1 +kerning first=88 second=244 amount=-1 +kerning first=352 second=223 amount=-1 +kerning first=366 second=242 amount=-1 +kerning first=76 second=119 amount=-1 +kerning first=290 second=289 amount=-1 +kerning first=112 second=119 amount=-1 +kerning first=326 second=289 amount=-1 +kerning first=290 second=73 amount=-1 +kerning first=366 second=67 amount=-1 +kerning first=278 second=197 amount=-1 +kerning first=257 second=254 amount=-1 +kerning first=362 second=289 amount=-2 +kerning first=8218 second=381 amount=-1 +kerning first=217 second=119 amount=-1 +kerning first=350 second=197 amount=-2 +kerning first=231 second=97 amount=-1 +kerning first=262 second=76 amount=-1 +kerning first=253 second=119 amount=-1 +kerning first=8217 second=99 amount=-2 +kerning first=201 second=354 amount=-1 +kerning first=90 second=97 amount=-1 +kerning first=283 second=230 amount=-1 +kerning first=289 second=119 amount=-1 +kerning first=378 second=117 amount=-1 +kerning first=350 second=121 amount=-1 +kerning first=339 second=97 amount=-1 +kerning first=211 second=230 amount=-1 +kerning first=317 second=72 amount=-1 +kerning first=344 second=275 amount=-1 +kerning first=314 second=121 amount=-1 +kerning first=219 second=74 amount=-1 +kerning first=84 second=205 amount=-1 +kerning first=286 second=250 amount=-1 +kerning first=380 second=275 amount=-1 +kerning first=267 second=97 amount=-1 +kerning first=106 second=230 amount=-1 +kerning first=381 second=354 amount=-1 +kerning first=242 second=121 amount=-1 +kerning first=303 second=97 amount=-1 +kerning first=206 second=121 amount=-1 +kerning first=232 second=311 amount=-1 +kerning first=260 second=107 amount=-1 +kerning first=109 second=250 amount=-1 +kerning first=108 second=378 amount=-1 +kerning first=311 second=240 amount=-1 +kerning first=334 second=366 amount=-1 +kerning first=250 second=250 amount=-1 +kerning first=249 second=378 amount=-1 +kerning first=346 second=72 amount=-1 +kerning first=213 second=378 amount=-1 +kerning first=198 second=117 amount=-1 +kerning first=83 second=107 amount=-1 +kerning first=315 second=219 amount=-1 +kerning first=202 second=89 amount=-1 +kerning first=73 second=250 amount=-1 +kerning first=72 second=378 amount=-1 +kerning first=334 second=76 amount=-1 +kerning first=234 second=117 amount=-1 +kerning first=119 second=107 amount=-1 +kerning first=75 second=116 amount=-1 +kerning first=274 second=363 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=338 second=302 amount=-1 +kerning first=8220 second=267 amount=-1 +kerning first=310 second=363 amount=-1 +kerning first=379 second=355 amount=-1 +kerning first=346 second=363 amount=-1 +kerning first=334 second=330 amount=-1 +kerning first=356 second=355 amount=-1 +kerning first=266 second=350 amount=-1 +kerning first=286 second=194 amount=-1 +kerning first=382 second=363 amount=-1 +kerning first=187 second=310 amount=-3 +kerning first=240 second=318 amount=-1 +kerning first=8222 second=221 amount=-3 +kerning first=214 second=194 amount=-2 +kerning first=201 second=298 amount=-1 +kerning first=314 second=375 amount=-1 +kerning first=76 second=214 amount=-1 +kerning first=272 second=220 amount=-1 +kerning first=269 second=259 amount=-1 +kerning first=217 second=214 amount=-1 +kerning first=242 second=375 amount=-1 +kerning first=332 second=122 amount=-1 +kerning first=206 second=375 amount=-1 +kerning first=200 second=220 amount=-1 +kerning first=89 second=369 amount=-1 +kerning first=296 second=122 amount=-1 +kerning first=71 second=296 amount=-1 +kerning first=262 second=330 amount=-1 +kerning first=334 second=77 amount=-1 +kerning first=1057 second=1075 amount=-1 +kerning first=233 second=259 amount=-1 +kerning first=262 second=77 amount=-1 +kerning first=350 second=375 amount=-1 +kerning first=344 second=220 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=365 second=253 amount=-1 +kerning first=374 second=369 amount=-1 +kerning first=222 second=304 amount=-1 +kerning first=73 second=251 amount=-1 +kerning first=89 second=76 amount=-1 +kerning first=338 second=369 amount=-1 +kerning first=1043 second=1100 amount=-1 +kerning first=352 second=344 amount=-1 +kerning first=212 second=296 amount=-1 +kerning first=307 second=228 amount=-1 +kerning first=323 second=351 amount=-1 +kerning first=220 second=260 amount=-2 +kerning first=277 second=324 amount=-1 +kerning first=278 second=374 amount=-1 +kerning first=235 second=228 amount=-1 +kerning first=230 second=369 amount=-1 +kerning first=199 second=228 amount=-1 +kerning first=101 second=375 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=119 second=245 amount=-1 +kerning first=208 second=344 amount=-1 +kerning first=8216 second=255 amount=-1 +kerning first=356 second=296 amount=-1 +kerning first=81 second=304 amount=-1 +kerning first=65 second=375 amount=-1 +kerning first=302 second=369 amount=-1 +kerning first=287 second=273 amount=-1 +kerning first=1052 second=1104 amount=-1 +kerning first=84 second=206 amount=-1 +kerning first=266 second=369 amount=-1 +kerning first=286 second=251 amount=-1 +kerning first=376 second=240 amount=-2 +kerning first=113 second=234 amount=-1 +kerning first=327 second=284 amount=-1 +kerning first=1078 second=1108 amount=-1 +kerning first=68 second=85 amount=-1 +kerning first=218 second=234 amount=-1 +kerning first=315 second=218 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=221 second=253 amount=-1 +kerning first=381 second=298 amount=-1 +kerning first=97 second=363 amount=-1 +kerning first=102 second=279 amount=-1 +kerning first=257 second=253 amount=-1 +kerning first=219 second=284 amount=-1 +kerning first=79 second=83 amount=-1 +kerning first=78 second=284 amount=-1 +kerning first=202 second=363 amount=-1 +kerning first=77 second=234 amount=-1 +kerning first=207 second=279 amount=-1 +kerning first=1057 second=1074 amount=-1 +kerning first=233 second=318 amount=-1 +kerning first=84 second=268 amount=-1 +kerning first=269 second=318 amount=-1 +kerning first=71 second=365 amount=-1 +kerning first=220 second=83 amount=-1 +kerning first=291 second=355 amount=-1 +kerning first=89 second=310 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=305 second=318 amount=-1 +kerning first=256 second=83 amount=-2 +kerning first=255 second=355 amount=-1 +kerning first=207 second=213 amount=-1 +kerning first=87 second=73 amount=-1 +kerning first=74 second=263 amount=-1 +kerning first=195 second=370 amount=-2 +kerning first=187 second=313 amount=-3 +kerning first=364 second=83 amount=-1 +kerning first=266 second=310 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=66 second=220 amount=-2 +kerning first=1078 second=1105 amount=-1 +kerning first=102 second=275 amount=-1 +kerning first=328 second=353 amount=-1 +kerning first=248 second=303 amount=-1 +kerning first=364 second=353 amount=-1 +kerning first=356 second=365 amount=-1 +kerning first=1070 second=1055 amount=-1 +kerning first=374 second=310 amount=-1 +kerning first=338 second=310 amount=-1 +kerning first=115 second=353 amount=-1 +kerning first=284 second=365 amount=-1 +kerning first=1053 second=1060 amount=-1 +kerning first=356 second=303 amount=-1 +kerning first=101 second=365 amount=-1 +kerning first=379 second=82 amount=-1 +kerning first=220 second=353 amount=-1 +kerning first=256 second=353 amount=-1 +kerning first=240 second=8250 amount=-1 +kerning first=334 second=280 amount=-1 +kerning first=192 second=235 amount=-1 +kerning first=379 second=225 amount=-1 +kerning first=1024 second=1095 amount=-1 +kerning first=71 second=102 amount=-1 +kerning first=264 second=235 amount=-1 +kerning first=1086 second=1093 amount=-1 +kerning first=1073 second=1083 amount=-1 +kerning first=336 second=228 amount=-1 +kerning first=303 second=361 amount=-1 +kerning first=199 second=225 amount=-1 +kerning first=107 second=98 amount=-1 +kerning first=235 second=225 amount=-1 +kerning first=264 second=228 amount=-1 +kerning first=8218 second=375 amount=-1 +kerning first=79 second=350 amount=-1 +kerning first=295 second=353 amount=-1 +kerning first=90 second=363 amount=-1 +kerning first=316 second=273 amount=-1 +kerning first=284 second=102 amount=-1 +kerning first=241 second=46 amount=-1 +kerning first=1114 second=1102 amount=-1 +kerning first=1046 second=1063 amount=-2 +kerning first=277 second=46 amount=-2 +kerning first=195 second=363 amount=-1 +kerning first=87 second=228 amount=-2 +kerning first=356 second=102 amount=-1 +kerning first=107 second=44 amount=-1 +kerning first=256 second=350 amount=-2 +kerning first=99 second=305 amount=-1 +kerning first=267 second=363 amount=-1 +kerning first=303 second=363 amount=-1 +kerning first=103 second=273 amount=-1 +kerning first=8249 second=84 amount=-2 +kerning first=1071 second=1108 amount=-1 +kerning first=339 second=363 amount=-1 +kerning first=8250 second=345 amount=-1 +kerning first=197 second=318 amount=-1 +kerning first=74 second=260 amount=-3 +kerning first=262 second=280 amount=-1 +kerning first=367 second=112 amount=-1 +kerning first=198 second=67 amount=-1 +kerning first=260 second=211 amount=-1 +kerning first=331 second=112 amount=-1 +kerning first=376 second=261 amount=-2 +kerning first=207 second=216 amount=-1 +kerning first=296 second=211 amount=-1 +kerning first=79 second=86 amount=-1 +kerning first=295 second=112 amount=-1 +kerning first=68 second=171 amount=-1 +kerning first=104 second=171 amount=-1 +kerning first=303 second=107 amount=-1 +kerning first=223 second=112 amount=-1 +kerning first=267 second=107 amount=-1 +kerning first=187 second=112 amount=-1 +kerning first=381 second=81 amount=-1 +kerning first=8220 second=287 amount=-2 +kerning first=232 second=261 amount=-1 +kerning first=256 second=86 amount=-3 +kerning first=375 second=107 amount=-1 +kerning first=118 second=112 amount=-1 +kerning first=268 second=261 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=339 second=107 amount=-1 +kerning first=82 second=112 amount=-1 +kerning first=304 second=261 amount=-1 +kerning first=368 second=211 amount=-1 +kerning first=317 second=171 amount=-1 +kerning first=354 second=232 amount=-1 +kerning first=278 second=204 amount=-1 +kerning first=353 second=171 amount=-1 +kerning first=313 second=105 amount=-1 +kerning first=350 second=204 amount=-1 +kerning first=84 second=209 amount=-1 +kerning first=198 second=327 amount=-1 +kerning first=315 second=216 amount=-1 +kerning first=8250 second=82 amount=-3 +kerning first=8218 second=108 amount=-1 +kerning first=375 second=100 amount=-1 +kerning first=277 second=105 amount=-1 +kerning first=209 second=171 amount=-2 +kerning first=201 second=81 amount=-1 +kerning first=1024 second=1098 amount=-1 +kerning first=1043 second=1103 amount=-2 +kerning first=195 second=100 amount=-1 +kerning first=231 second=100 amount=-1 +kerning first=113 second=230 amount=-1 +kerning first=267 second=100 amount=-1 +kerning first=86 second=346 amount=-2 +kerning first=303 second=100 amount=-1 +kerning first=204 second=249 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=1038 second=1079 amount=-1 +kerning first=90 second=100 amount=-1 +kerning first=207 second=275 amount=-1 +kerning first=1079 second=1103 amount=-1 +kerning first=231 second=107 amount=-1 +kerning first=195 second=107 amount=-1 +kerning first=209 second=339 amount=-1 +kerning first=362 second=230 amount=-2 +kerning first=1060 second=1039 amount=-1 +kerning first=99 second=249 amount=-1 +kerning first=290 second=230 amount=-1 +kerning first=200 second=223 amount=-1 +kerning first=1024 second=1039 amount=-1 +kerning first=83 second=325 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=317 second=79 amount=-1 +kerning first=375 second=104 amount=-1 +kerning first=201 second=84 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=256 second=89 amount=-3 +kerning first=339 second=104 amount=-1 +kerning first=288 second=201 amount=-1 +kerning first=1061 second=1104 amount=-1 +kerning first=381 second=84 amount=-1 +kerning first=187 second=109 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=79 second=89 amount=-1 +kerning first=82 second=314 amount=-1 +kerning first=90 second=192 amount=-1 +kerning first=283 second=237 amount=-1 +kerning first=223 second=314 amount=-1 +kerning first=330 second=44 amount=-1 +kerning first=377 second=262 amount=-1 +kerning first=290 second=72 amount=-1 +kerning first=187 second=314 amount=-1 +kerning first=327 second=8249 amount=-2 +kerning first=295 second=314 amount=-1 +kerning first=118 second=109 amount=-1 +kerning first=102 second=269 amount=-1 +kerning first=259 second=314 amount=-1 +kerning first=362 second=227 amount=-2 +kerning first=275 second=187 amount=-1 +kerning first=366 second=44 amount=-3 +kerning first=378 second=245 amount=-1 +kerning first=106 second=237 amount=-1 +kerning first=367 second=314 amount=-1 +kerning first=303 second=104 amount=-1 +kerning first=114 second=8249 amount=-1 +kerning first=370 second=277 amount=-1 +kerning first=331 second=314 amount=-1 +kerning first=192 second=232 amount=-1 +kerning first=267 second=104 amount=-1 +kerning first=272 second=282 amount=-1 +kerning first=356 second=99 amount=-2 +kerning first=117 second=44 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=231 second=104 amount=-1 +kerning first=98 second=380 amount=-1 +kerning first=264 second=232 amount=-1 +kerning first=195 second=104 amount=-1 +kerning first=200 second=282 amount=-1 +kerning first=98 second=187 amount=-1 +kerning first=222 second=44 amount=-1 +kerning first=262 second=277 amount=-1 +kerning first=214 second=344 amount=-1 +kerning first=284 second=302 amount=-1 +kerning first=113 second=224 amount=-1 +kerning first=74 second=326 amount=-1 +kerning first=201 second=351 amount=-1 +kerning first=1038 second=1076 amount=-3 +kerning first=298 second=277 amount=-1 +kerning first=212 second=302 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=381 second=347 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=71 second=361 amount=-1 +kerning first=108 second=371 amount=-1 +kerning first=290 second=224 amount=-1 +kerning first=71 second=302 amount=-1 +kerning first=363 second=8249 amount=-1 +kerning first=268 second=202 amount=-1 +kerning first=121 second=277 amount=-1 +kerning first=362 second=224 amount=-1 +kerning first=107 second=99 amount=-1 +kerning first=90 second=101 amount=-1 +kerning first=375 second=97 amount=-2 +kerning first=303 second=367 amount=-1 +kerning first=352 second=69 amount=-1 +kerning first=381 second=351 amount=-1 +kerning first=339 second=367 amount=-1 +kerning first=195 second=101 amount=-1 +kerning first=376 second=202 amount=-1 +kerning first=231 second=367 amount=-1 +kerning first=280 second=69 amount=-1 +kerning first=231 second=101 amount=-1 +kerning first=267 second=367 amount=-1 +kerning first=267 second=101 amount=-1 +kerning first=286 second=257 amount=-1 +kerning first=208 second=69 amount=-1 +kerning first=323 second=267 amount=-1 +kerning first=84 second=212 amount=-1 +kerning first=303 second=101 amount=-1 +kerning first=195 second=367 amount=-1 +kerning first=382 second=121 amount=-1 +kerning first=380 second=226 amount=-1 +kerning first=214 second=257 amount=-1 +kerning first=350 second=114 amount=-1 +kerning first=209 second=79 amount=-1 +kerning first=356 second=302 amount=-1 +kerning first=250 second=257 amount=-1 +kerning first=90 second=367 amount=-1 +kerning first=287 second=267 amount=-1 +kerning first=331 second=316 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=120 second=271 amount=-1 +kerning first=71 second=362 amount=-1 +kerning first=296 second=382 amount=-1 +kerning first=367 second=316 amount=-1 +kerning first=332 second=382 amount=-1 +kerning first=90 second=196 amount=-1 +kerning first=201 second=291 amount=-1 +kerning first=368 second=382 amount=-1 +kerning first=362 second=286 amount=-1 +kerning first=212 second=362 amount=-1 +kerning first=1053 second=1057 amount=-1 +kerning first=74 second=266 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=303 second=255 amount=-1 +kerning first=200 second=226 amount=-1 +kerning first=1024 second=1042 amount=-1 +kerning first=240 second=311 amount=-1 +kerning first=121 second=337 amount=-1 +kerning first=218 second=286 amount=-1 +kerning first=378 second=331 amount=-1 +kerning first=272 second=226 amount=-1 +kerning first=296 second=119 amount=-1 +kerning first=85 second=337 amount=-1 +kerning first=77 second=286 amount=-1 +kerning first=233 second=8221 amount=-1 +kerning first=203 second=331 amount=-1 +kerning first=109 second=289 amount=-1 +kerning first=82 second=316 amount=-1 +kerning first=198 second=331 amount=-1 +kerning first=298 second=337 amount=-1 +kerning first=197 second=8221 amount=-3 +kerning first=234 second=331 amount=-1 +kerning first=284 second=361 amount=-1 +kerning first=262 second=337 amount=-1 +kerning first=187 second=316 amount=-1 +kerning first=223 second=316 amount=-1 +kerning first=356 second=361 amount=-1 +kerning first=259 second=316 amount=-1 +kerning first=323 second=266 amount=-1 +kerning first=295 second=316 amount=-1 +kerning first=231 second=103 amount=-1 +kerning first=204 second=252 amount=-1 +kerning first=364 second=90 amount=-1 +kerning first=195 second=103 amount=-1 +kerning first=113 second=227 amount=-1 +kerning first=334 second=70 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=90 second=103 amount=-2 +kerning first=381 second=229 amount=-1 +kerning first=213 second=368 amount=-1 +kerning first=262 second=70 amount=-1 +kerning first=68 second=78 amount=-1 +kerning first=290 second=227 amount=-1 +kerning first=278 second=381 amount=-1 +kerning first=85 second=336 amount=-1 +kerning first=321 second=368 amount=-1 +kerning first=99 second=252 amount=-1 +kerning first=286 second=201 amount=-1 +kerning first=218 second=227 amount=-2 +kerning first=79 second=90 amount=-1 +kerning first=214 second=201 amount=-1 +kerning first=99 second=311 amount=-1 +kerning first=262 second=278 amount=-1 +kerning first=262 second=336 amount=-2 +kerning first=256 second=356 amount=-3 +kerning first=311 second=246 amount=-1 +kerning first=83 second=382 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=334 second=278 amount=-1 +kerning first=8250 second=85 amount=-2 +kerning first=351 second=223 amount=-1 +kerning first=339 second=103 amount=-1 +kerning first=370 second=336 amount=-1 +kerning first=284 second=362 amount=-1 +kerning first=278 second=207 amount=-1 +kerning first=303 second=103 amount=-1 +kerning first=79 second=356 amount=-1 +kerning first=187 second=317 amount=-3 +kerning first=345 second=291 amount=-1 +kerning first=8220 second=273 amount=-1 +kerning first=356 second=362 amount=-1 +kerning first=295 second=103 amount=-1 +kerning first=268 second=246 amount=-1 +kerning first=104 second=369 amount=-1 +kerning first=107 second=45 amount=-2 +kerning first=223 second=103 amount=-1 +kerning first=196 second=246 amount=-1 +kerning first=231 second=382 amount=-1 +kerning first=209 second=369 amount=-1 +kerning first=212 second=45 amount=-1 +kerning first=281 second=116 amount=-1 +kerning first=267 second=382 amount=-1 +kerning first=118 second=103 amount=-2 +kerning first=1070 second=1043 amount=-1 +kerning first=80 second=72 amount=-1 +kerning first=284 second=45 amount=-1 +kerning first=73 second=253 amount=-1 +kerning first=113 second=259 amount=-1 +kerning first=82 second=363 amount=-1 +kerning first=109 second=253 amount=-1 +kerning first=356 second=45 amount=-3 +kerning first=90 second=382 amount=-1 +kerning first=1046 second=1089 amount=-1 +kerning first=267 second=122 amount=-1 +kerning first=317 second=109 amount=-1 +kerning first=187 second=363 amount=-1 +kerning first=231 second=122 amount=-1 +kerning first=281 second=109 amount=-1 +kerning first=200 second=266 amount=-1 +kerning first=330 second=367 amount=-1 +kerning first=1118 second=1089 amount=-1 +kerning first=8250 second=364 amount=-2 +kerning first=8218 second=117 amount=-1 +kerning first=259 second=363 amount=-1 +kerning first=1024 second=1076 amount=-1 +kerning first=108 second=375 amount=-1 +kerning first=1082 second=1089 amount=-1 +kerning first=353 second=109 amount=-1 +kerning first=295 second=363 amount=-1 +kerning first=198 second=65 amount=-1 +kerning first=352 second=8250 amount=-1 +kerning first=317 second=369 amount=-1 +kerning first=331 second=363 amount=-1 +kerning first=377 second=226 amount=-1 +kerning first=356 second=364 amount=-1 +kerning first=303 second=382 amount=-1 +kerning first=86 second=362 amount=-1 +kerning first=375 second=122 amount=-1 +kerning first=353 second=116 amount=-1 +kerning first=313 second=356 amount=-1 +kerning first=367 second=363 amount=-1 +kerning first=315 second=67 amount=-1 +kerning first=8250 second=357 amount=-1 +kerning first=339 second=382 amount=-1 +kerning first=321 second=375 amount=-1 +kerning first=264 second=102 amount=-1 +kerning first=339 second=122 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=8250 second=104 amount=-1 +kerning first=375 second=382 amount=-1 +kerning first=353 second=369 amount=-1 +kerning first=331 second=103 amount=-1 +kerning first=249 second=375 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=263 second=355 amount=-1 +kerning first=321 second=115 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=8250 second=97 amount=-1 +kerning first=187 second=370 amount=-2 +kerning first=78 second=336 amount=-1 +kerning first=249 second=115 amount=-1 +kerning first=122 second=355 amount=-1 +kerning first=356 second=305 amount=-1 +kerning first=1070 second=1036 amount=-1 +kerning first=1042 second=1062 amount=-1 +kerning first=219 second=336 amount=-1 +kerning first=258 second=279 amount=-1 +kerning first=280 second=284 amount=-1 +kerning first=313 second=89 amount=-1 +kerning first=366 second=279 amount=-1 +kerning first=330 second=279 amount=-1 +kerning first=327 second=336 amount=-1 +kerning first=321 second=108 amount=-1 +kerning first=250 second=253 amount=-1 +kerning first=73 second=232 amount=-1 +kerning first=1042 second=1055 amount=-1 +kerning first=1100 second=1103 amount=-1 +kerning first=376 second=246 amount=-1 +kerning first=89 second=66 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=304 second=246 amount=-1 +kerning first=1024 second=1048 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=82 second=335 amount=-1 +kerning first=1053 second=1086 amount=-1 +kerning first=118 second=335 amount=-1 +kerning first=108 second=108 amount=-1 +kerning first=376 second=218 amount=-1 +kerning first=362 second=231 amount=-1 +kerning first=313 second=328 amount=-1 +kerning first=1071 second=1072 amount=-1 +kerning first=214 second=225 amount=-1 +kerning first=66 second=344 amount=-2 +kerning first=351 second=104 amount=-1 +kerning first=249 second=108 amount=-1 +kerning first=280 second=192 amount=-1 +kerning first=380 second=273 amount=-1 +kerning first=254 second=8217 amount=-1 +kerning first=86 second=102 amount=-1 +kerning first=88 second=242 amount=-1 +kerning first=290 second=8217 amount=-1 +kerning first=122 second=102 amount=-1 +kerning first=76 second=196 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=326 second=8217 amount=-2 +kerning first=193 second=242 amount=-1 +kerning first=77 second=231 amount=-1 +kerning first=262 second=46 amount=-1 +kerning first=86 second=355 amount=-1 +kerning first=268 second=218 amount=-1 +kerning first=106 second=8221 amount=-1 +kerning first=286 second=225 amount=-1 +kerning first=290 second=280 amount=-1 +kerning first=113 second=8217 amount=-1 +kerning first=218 second=231 amount=-1 +kerning first=72 second=115 amount=-1 +kerning first=196 second=218 amount=-2 +kerning first=370 second=46 amount=-3 +kerning first=204 second=286 amount=-1 +kerning first=108 second=115 amount=-1 +kerning first=73 second=279 amount=-1 +kerning first=1042 second=1083 amount=-1 +kerning first=85 second=46 amount=-3 +kerning first=371 second=102 amount=-1 +kerning first=262 second=67 amount=-2 +kerning first=196 second=211 amount=-1 +kerning first=83 second=119 amount=-1 +kerning first=121 second=46 amount=-3 +kerning first=199 second=210 amount=-2 +kerning first=283 second=8221 amount=-1 +kerning first=119 second=119 amount=-1 +kerning first=226 second=46 amount=-1 +kerning first=211 second=8221 amount=-1 +kerning first=90 second=122 amount=-1 +kerning first=224 second=119 amount=-1 +kerning first=85 second=67 amount=-1 +kerning first=260 second=119 amount=-2 +kerning first=317 second=81 amount=-1 +kerning first=1056 second=1049 amount=-1 +kerning first=344 second=266 amount=-1 +kerning first=263 second=102 amount=-1 +kerning first=376 second=211 amount=-1 +kerning first=380 second=245 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=268 second=211 amount=-2 +kerning first=344 second=245 amount=-1 +kerning first=304 second=211 amount=-1 +kerning first=368 second=119 amount=-1 +kerning first=230 second=311 amount=-1 +kerning first=214 second=204 amount=-1 +kerning first=326 second=252 amount=-1 +kerning first=362 second=252 amount=-1 +kerning first=286 second=204 amount=-1 +kerning first=362 second=259 amount=-2 +kerning first=277 second=328 amount=-1 +kerning first=77 second=252 amount=-1 +kerning first=113 second=252 amount=-1 +kerning first=45 second=307 amount=-1 +kerning first=74 second=269 amount=-1 +kerning first=1079 second=1118 amount=-1 +kerning first=218 second=252 amount=-1 +kerning first=298 second=67 amount=-1 +kerning first=364 second=378 amount=-1 +kerning first=84 second=262 amount=-1 +kerning first=382 second=113 amount=-1 +kerning first=287 second=269 amount=-1 +kerning first=274 second=366 amount=-1 +kerning first=378 second=365 amount=-1 +kerning first=74 second=288 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=310 second=113 amount=-1 +kerning first=378 second=353 amount=-1 +kerning first=120 second=249 amount=-1 +kerning first=202 second=366 amount=-1 +kerning first=88 second=263 amount=-1 +kerning first=323 second=269 amount=-1 +kerning first=275 second=378 amount=-1 +kerning first=220 second=378 amount=-1 +kerning first=260 second=171 amount=-2 +kerning first=324 second=112 amount=-1 +kerning first=338 second=87 amount=-1 +kerning first=198 second=353 amount=-1 +kerning first=234 second=365 amount=-1 +kerning first=332 second=171 amount=-1 +kerning first=252 second=112 amount=-1 +kerning first=234 second=353 amount=-1 +kerning first=198 second=365 amount=-1 +kerning first=368 second=171 amount=-3 +kerning first=346 second=366 amount=-1 +kerning first=75 second=100 amount=-1 +kerning first=323 second=288 amount=-1 +kerning first=272 second=366 amount=-1 +kerning first=194 second=87 amount=-3 +kerning first=1045 second=1054 amount=-1 +kerning first=212 second=352 amount=-1 +kerning first=193 second=275 amount=-1 +kerning first=379 second=210 amount=-1 +kerning first=76 second=192 amount=-1 +kerning first=284 second=352 amount=-1 +kerning first=194 second=354 amount=-3 +kerning first=88 second=275 amount=-1 +kerning first=328 second=121 amount=-1 +kerning first=356 second=352 amount=-2 +kerning first=8217 second=361 amount=-1 +kerning first=264 second=198 amount=-2 +kerning first=121 second=97 amount=-2 +kerning first=220 second=380 amount=-1 +kerning first=8217 second=193 amount=-3 +kerning first=106 second=249 amount=-1 +kerning first=288 second=379 amount=-1 +kerning first=70 second=8249 amount=-2 +kerning first=369 second=8220 amount=-2 +kerning first=102 second=248 amount=-1 +kerning first=336 second=198 amount=-2 +kerning first=221 second=223 amount=-1 +kerning first=1093 second=1105 amount=-1 +kerning first=333 second=8220 amount=-1 +kerning first=346 second=364 amount=-1 +kerning first=87 second=198 amount=-3 +kerning first=200 second=75 amount=-1 +kerning first=70 second=289 amount=-1 +kerning first=374 second=338 amount=-1 +kerning first=283 second=249 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=225 second=8220 amount=-1 +kerning first=79 second=380 amount=-1 +kerning first=354 second=361 amount=-1 +kerning first=115 second=380 amount=-1 +kerning first=211 second=289 amount=-1 +kerning first=352 second=313 amount=-1 +kerning first=120 second=8220 amount=-1 +kerning first=347 second=237 amount=-1 +kerning first=187 second=75 amount=-3 +kerning first=75 second=339 amount=-1 +kerning first=377 second=274 amount=-1 +kerning first=284 second=73 amount=-1 +kerning first=280 second=313 amount=-1 +kerning first=275 second=237 amount=-1 +kerning first=334 second=46 amount=-1 +kerning first=256 second=99 amount=-1 +kerning first=8216 second=256 amount=-4 +kerning first=356 second=73 amount=-1 +kerning first=220 second=99 amount=-1 +kerning first=208 second=313 amount=-1 +kerning first=71 second=73 amount=-1 +kerning first=211 second=8249 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=1057 second=1105 amount=-1 +kerning first=193 second=263 amount=-1 +kerning first=334 second=327 amount=-1 +kerning first=98 second=237 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=268 second=206 amount=-1 +kerning first=216 second=379 amount=-1 +kerning first=212 second=73 amount=-1 +kerning first=364 second=99 amount=-1 +kerning first=83 second=187 amount=-1 +kerning first=260 second=199 amount=-1 +kerning first=198 second=381 amount=-1 +kerning first=203 second=209 amount=-1 +kerning first=69 second=212 amount=-1 +kerning first=296 second=199 amount=-1 +kerning first=120 second=234 amount=-1 +kerning first=377 second=302 amount=-1 +kerning first=368 second=199 amount=-1 +kerning first=236 second=227 amount=-1 +kerning first=187 second=323 amount=-3 +kerning first=1061 second=1113 amount=-1 +kerning first=380 second=339 amount=-1 +kerning first=288 second=72 amount=-1 +kerning first=283 second=289 amount=-1 +kerning first=8217 second=333 amount=-2 +kerning first=252 second=351 amount=-1 +kerning first=84 second=264 amount=-1 +kerning first=355 second=289 amount=-1 +kerning first=310 second=364 amount=-1 +kerning first=77 second=233 amount=-1 +kerning first=274 second=364 amount=-1 +kerning first=354 second=212 amount=-1 +kerning first=70 second=277 amount=-1 +kerning first=111 second=351 amount=-1 +kerning first=288 second=367 amount=-1 +kerning first=220 second=111 amount=-1 +kerning first=202 second=364 amount=-1 +kerning first=113 second=233 amount=-1 +kerning first=282 second=212 amount=-1 +kerning first=324 second=367 amount=-1 +kerning first=266 second=354 amount=-1 +kerning first=106 second=261 amount=-1 +kerning first=218 second=233 amount=-1 +kerning first=87 second=226 amount=-2 +kerning first=252 second=367 amount=-1 +kerning first=338 second=354 amount=-1 +kerning first=315 second=220 amount=-1 +kerning first=211 second=261 amount=-1 +kerning first=69 second=367 amount=-1 +kerning first=229 second=291 amount=-1 +kerning first=380 second=105 amount=-1 +kerning first=202 second=97 amount=-1 +kerning first=338 second=326 amount=-1 +kerning first=193 second=291 amount=-1 +kerning first=324 second=351 amount=-1 +kerning first=374 second=326 amount=-1 +kerning first=362 second=233 amount=-1 +kerning first=264 second=226 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=90 second=110 amount=-1 +kerning first=88 second=291 amount=-1 +kerning first=336 second=226 amount=-1 +kerning first=70 second=261 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=346 second=97 amount=-1 +kerning first=315 second=250 amount=-1 +kerning first=70 second=267 amount=-1 +kerning first=119 second=171 amount=-2 +kerning first=264 second=83 amount=-1 +kerning first=230 second=326 amount=-1 +kerning first=279 second=250 amount=-1 +kerning first=198 second=86 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=115 second=378 amount=-1 +kerning first=1042 second=1050 amount=-1 +kerning first=266 second=326 amount=-1 +kerning first=267 second=110 amount=-1 +kerning first=380 second=248 amount=-1 +kerning first=79 second=378 amount=-1 +kerning first=224 second=171 amount=-1 +kerning first=86 second=350 amount=-2 +kerning first=310 second=97 amount=-1 +kerning first=351 second=250 amount=-1 +kerning first=251 second=316 amount=-1 +kerning first=339 second=110 amount=-1 +kerning first=283 second=261 amount=-1 +kerning first=287 second=316 amount=-1 +kerning first=375 second=110 amount=-1 +kerning first=89 second=326 amount=-1 +kerning first=378 second=337 amount=-1 +kerning first=207 second=250 amount=-1 +kerning first=108 second=117 amount=-1 +kerning first=210 second=221 amount=-1 +kerning first=81 second=260 amount=-2 +kerning first=1024 second=1057 amount=-1 +kerning first=72 second=117 amount=-1 +kerning first=45 second=260 amount=-2 +kerning first=1070 second=1031 amount=-1 +kerning first=80 second=200 amount=-1 +kerning first=249 second=117 amount=-1 +kerning first=69 second=221 amount=-1 +kerning first=222 second=260 amount=-2 +kerning first=262 second=317 amount=-1 +kerning first=321 second=117 amount=-1 +kerning first=1114 second=1081 amount=-1 +kerning first=362 second=264 amount=-1 +kerning first=262 second=290 amount=-2 +kerning first=282 second=214 amount=-1 +kerning first=298 second=290 amount=-1 +kerning first=218 second=240 amount=-1 +kerning first=366 second=260 amount=-2 +kerning first=241 second=98 amount=-1 +kerning first=77 second=240 amount=-1 +kerning first=354 second=214 amount=-1 +kerning first=221 second=207 amount=-1 +kerning first=370 second=290 amount=-1 +kerning first=113 second=240 amount=-1 +kerning first=218 second=264 amount=-1 +kerning first=85 second=290 amount=-1 +kerning first=113 second=271 amount=-1 +kerning first=362 second=240 amount=-1 +kerning first=69 second=214 amount=-1 +kerning first=213 second=377 amount=-1 +kerning first=240 second=118 amount=-1 +kerning first=282 second=221 amount=-1 +kerning first=68 second=364 amount=-1 +kerning first=77 second=264 amount=-1 +kerning first=262 second=89 amount=-1 +kerning first=80 second=207 amount=-1 +kerning first=75 second=84 amount=-1 +kerning first=321 second=377 amount=-1 +kerning first=286 second=220 amount=-1 +kerning first=222 second=298 amount=-1 +kerning first=366 second=291 amount=-2 +kerning first=350 second=194 amount=-2 +kerning first=214 second=220 amount=-1 +kerning first=330 second=291 amount=-1 +kerning first=68 second=97 amount=-1 +kerning first=1056 second=1030 amount=-1 +kerning first=216 second=84 amount=-1 +kerning first=120 second=227 amount=-1 +kerning first=313 second=330 amount=-1 +kerning first=240 second=353 amount=-1 +kerning first=368 second=289 amount=-2 +kerning first=258 second=291 amount=-1 +kerning first=121 second=287 amount=-2 +kerning first=84 second=227 amount=-2 +kerning first=338 second=317 amount=-1 +kerning first=1064 second=1077 amount=-1 +kerning first=222 second=291 amount=-1 +kerning first=85 second=287 amount=-2 +kerning first=374 second=317 amount=-1 +kerning first=356 second=324 amount=-1 +kerning first=89 second=317 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=281 second=97 amount=-1 +kerning first=269 second=311 amount=-1 +kerning first=81 second=291 amount=-1 +kerning first=298 second=287 amount=-1 +kerning first=233 second=311 amount=-1 +kerning first=288 second=84 amount=-1 +kerning first=84 second=234 amount=-2 +kerning first=45 second=291 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=262 second=287 amount=-1 +kerning first=197 second=311 amount=-1 +kerning first=86 second=90 amount=-1 +kerning first=370 second=287 amount=-2 +kerning first=86 second=381 amount=-1 +kerning first=78 second=71 amount=-1 +kerning first=334 second=287 amount=-1 +kerning first=80 second=197 amount=-2 +kerning first=45 second=298 amount=-3 +kerning first=219 second=71 amount=-1 +kerning first=198 second=77 amount=-1 +kerning first=81 second=298 amount=-1 +kerning first=205 second=337 amount=-1 +kerning first=203 second=70 amount=-1 +kerning first=277 second=365 amount=-1 +kerning first=374 second=78 amount=-1 +kerning first=363 second=303 amount=-1 +kerning first=241 second=365 amount=-1 +kerning first=221 second=197 amount=-3 +kerning first=218 second=268 amount=-1 +kerning first=213 second=120 amount=-1 +kerning first=205 second=365 amount=-1 +kerning first=73 second=213 amount=-1 +kerning first=354 second=193 amount=-3 +kerning first=291 second=303 amount=-1 +kerning first=249 second=120 amount=-1 +kerning first=375 second=113 amount=-1 +kerning first=379 second=230 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=100 second=365 amount=-1 +kerning first=201 second=310 amount=-1 +kerning first=367 second=8217 amount=-2 +kerning first=77 second=268 amount=-1 +kerning first=266 second=78 amount=-1 +kerning first=335 second=353 amount=-1 +kerning first=362 second=243 amount=-1 +kerning first=208 second=325 amount=-1 +kerning first=371 second=353 amount=-1 +kerning first=108 second=120 amount=-1 +kerning first=338 second=85 amount=-1 +kerning first=195 second=113 amount=-1 +kerning first=371 second=118 amount=-1 +kerning first=45 second=270 amount=-3 +kerning first=122 second=353 amount=-1 +kerning first=335 second=118 amount=-1 +kerning first=89 second=78 amount=-1 +kerning first=266 second=85 amount=-1 +kerning first=90 second=113 amount=-1 +kerning first=198 second=74 amount=-1 +kerning first=313 second=70 amount=-1 +kerning first=379 second=201 amount=-1 +kerning first=350 second=227 amount=-1 +kerning first=1056 second=1065 amount=-1 +kerning first=81 second=270 amount=-1 +kerning first=263 second=353 amount=-1 +kerning first=194 second=85 amount=-2 +kerning first=227 second=118 amount=-1 +kerning first=230 second=314 amount=-1 +kerning first=219 second=303 amount=-1 +kerning first=321 second=120 amount=-1 +kerning first=1100 second=1080 amount=-1 +kerning first=303 second=113 amount=-1 +kerning first=194 second=314 amount=-1 +kerning first=255 second=303 amount=-1 +kerning first=89 second=345 amount=-1 +kerning first=89 second=85 amount=-1 +kerning first=267 second=113 amount=-1 +kerning first=8250 second=206 amount=-3 +kerning first=313 second=365 amount=-1 +kerning first=263 second=118 amount=-1 +kerning first=381 second=310 amount=-1 +kerning first=266 second=314 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=86 second=353 amount=-2 +kerning first=353 second=251 amount=-1 +kerning first=234 second=105 amount=-1 +kerning first=197 second=283 amount=-1 +kerning first=1057 second=1093 amount=-1 +kerning first=381 second=338 amount=-1 +kerning first=1064 second=1108 amount=-1 +kerning first=338 second=314 amount=-1 +kerning first=73 second=248 amount=-1 +kerning first=321 second=380 amount=-1 +kerning first=84 second=224 amount=-2 +kerning first=122 second=118 amount=-1 +kerning first=317 second=324 amount=-1 +kerning first=86 second=118 amount=-1 +kerning first=313 second=98 amount=-1 +kerning first=222 second=270 amount=-1 +kerning first=108 second=380 amount=-1 +kerning first=277 second=98 amount=-1 +kerning first=120 second=224 amount=-1 +kerning first=1100 second=1087 amount=-1 +kerning first=201 second=338 amount=-1 +kerning first=71 second=352 amount=-1 +kerning first=200 second=198 amount=-1 +kerning first=269 second=283 amount=-1 +kerning first=213 second=380 amount=-1 +kerning first=374 second=85 amount=-1 +kerning first=249 second=380 amount=-1 +kerning first=280 second=325 amount=-1 +kerning first=111 second=112 amount=-1 +kerning first=1057 second=1108 amount=-1 +kerning first=221 second=228 amount=-2 +kerning first=8250 second=369 amount=-1 +kerning first=75 second=112 amount=-1 +kerning first=352 second=325 amount=-1 +kerning first=69 second=193 amount=-1 +kerning first=377 second=283 amount=-1 +kerning first=72 second=380 amount=-1 +kerning first=282 second=193 amount=-1 +kerning first=226 second=318 amount=-1 +kerning first=80 second=235 amount=-1 +kerning first=262 second=318 amount=-1 +kerning first=330 second=263 amount=-1 +kerning first=255 second=331 amount=-1 +kerning first=210 second=193 amount=-2 +kerning first=366 second=263 amount=-1 +kerning first=291 second=331 amount=-1 +kerning first=221 second=235 amount=-1 +kerning first=377 second=281 amount=-1 +kerning first=378 second=237 amount=-1 +kerning first=73 second=216 amount=-1 +kerning first=310 second=101 amount=-1 +kerning first=347 second=230 amount=-1 +kerning first=369 second=255 amount=-1 +kerning first=211 second=256 amount=-2 +kerning first=1067 second=1072 amount=-1 +kerning first=89 second=82 amount=-1 +kerning first=382 second=101 amount=-1 +kerning first=333 second=255 amount=-1 +kerning first=1053 second=1073 amount=-1 +kerning first=275 second=230 amount=-1 +kerning first=311 second=230 amount=-1 +kerning first=269 second=281 amount=-1 +kerning first=289 second=224 amount=-1 +kerning first=261 second=255 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=286 second=76 amount=-1 +kerning first=115 second=108 amount=-1 +kerning first=225 second=255 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=338 second=347 amount=-1 +kerning first=78 second=67 amount=-1 +kerning first=120 second=255 amount=-1 +kerning first=99 second=8221 amount=-1 +kerning first=302 second=347 amount=-1 +kerning first=211 second=280 amount=-1 +kerning first=84 second=255 amount=-1 +kerning first=266 second=347 amount=-1 +kerning first=120 second=8217 amount=-1 +kerning first=229 second=251 amount=-1 +kerning first=76 second=205 amount=-1 +kerning first=230 second=347 amount=-1 +kerning first=240 second=8221 amount=-1 +kerning first=120 second=231 amount=-1 +kerning first=194 second=347 amount=-1 +kerning first=378 second=105 amount=-1 +kerning first=111 second=107 amount=-1 +kerning first=89 second=347 amount=-2 +kerning first=328 second=371 amount=-1 +kerning first=252 second=107 amount=-1 +kerning first=84 second=231 amount=-2 +kerning first=97 second=106 amount=-1 +kerning first=212 second=80 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=266 second=345 amount=-1 +kerning first=284 second=80 amount=-1 +kerning first=327 second=67 amount=-1 +kerning first=69 second=217 amount=-1 +kerning first=256 second=368 amount=-2 +kerning first=374 second=345 amount=-1 +kerning first=198 second=346 amount=-1 +kerning first=310 second=106 amount=-1 +kerning first=1045 second=1045 amount=-1 +kerning first=210 second=217 amount=-1 +kerning first=313 second=68 amount=-1 +kerning first=205 second=333 amount=-1 +kerning first=71 second=80 amount=-1 +kerning first=282 second=217 amount=-1 +kerning first=216 second=256 amount=-2 +kerning first=80 second=204 amount=-1 +kerning first=218 second=243 amount=-1 +kerning first=346 second=106 amount=-1 +kerning first=381 second=249 amount=-1 +kerning first=8217 second=328 amount=-1 +kerning first=382 second=106 amount=-1 +kerning first=356 second=80 amount=-1 +kerning first=362 second=268 amount=-1 +kerning first=221 second=204 amount=-1 +kerning first=70 second=256 amount=-2 +kerning first=251 second=307 amount=-1 +kerning first=334 second=374 amount=-1 +kerning first=77 second=243 amount=-1 +kerning first=8216 second=289 amount=-2 +kerning first=83 second=65 amount=-2 +kerning first=287 second=307 amount=-1 +kerning first=1056 second=1033 amount=-1 +kerning first=113 second=243 amount=-1 +kerning first=201 second=69 amount=-1 +kerning first=310 second=104 amount=-1 +kerning first=310 second=369 amount=-1 +kerning first=219 second=334 amount=-1 +kerning first=70 second=284 amount=-1 +kerning first=274 second=104 amount=-1 +kerning first=274 second=369 amount=-1 +kerning first=288 second=344 amount=-1 +kerning first=382 second=369 amount=-1 +kerning first=120 second=259 amount=-1 +kerning first=251 second=44 amount=-1 +kerning first=202 second=104 amount=-1 +kerning first=346 second=369 amount=-1 +kerning first=84 second=259 amount=-2 +kerning first=368 second=192 amount=-2 +kerning first=327 second=334 amount=-1 +kerning first=382 second=104 amount=-1 +kerning first=332 second=192 amount=-2 +kerning first=74 second=44 amount=-1 +kerning first=1070 second=1034 amount=-1 +kerning first=73 second=244 amount=-1 +kerning first=202 second=369 amount=-1 +kerning first=216 second=344 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=354 second=217 amount=-1 +kerning first=323 second=279 amount=-1 +kerning first=66 second=229 amount=-1 +kerning first=1100 second=1084 amount=-1 +kerning first=287 second=279 amount=-1 +kerning first=102 second=229 amount=-1 +kerning first=74 second=279 amount=-1 +kerning first=83 second=192 amount=-2 +kerning first=323 second=44 amount=-1 +kerning first=351 second=229 amount=-1 +kerning first=287 second=44 amount=-2 +kerning first=279 second=229 amount=-1 +kerning first=78 second=334 amount=-1 +kerning first=369 second=227 amount=-1 +kerning first=330 second=267 amount=-1 +kerning first=221 second=232 amount=-1 +kerning first=212 second=344 amount=-1 +kerning first=77 second=283 amount=-1 +kerning first=366 second=267 amount=-1 +kerning first=115 second=371 amount=-1 +kerning first=279 second=257 amount=-1 +kerning first=202 second=67 amount=-1 +kerning first=100 second=361 amount=-1 +kerning first=1057 second=1096 amount=-1 +kerning first=313 second=65 amount=-1 +kerning first=255 second=305 amount=-1 +kerning first=336 second=219 amount=-1 +kerning first=219 second=305 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=205 second=361 amount=-1 +kerning first=66 second=257 amount=-1 +kerning first=264 second=219 amount=-1 +kerning first=244 second=8250 amount=-1 +kerning first=203 second=202 amount=-1 +kerning first=291 second=305 amount=-1 +kerning first=102 second=257 amount=-1 +kerning first=277 second=361 amount=-1 +kerning first=203 second=324 amount=-1 +kerning first=266 second=230 amount=-1 +kerning first=192 second=219 amount=-2 +kerning first=241 second=361 amount=-1 +kerning first=374 second=347 amount=-2 +kerning first=80 second=232 amount=-1 +kerning first=229 second=254 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=371 second=121 amount=-1 +kerning first=87 second=219 amount=-1 +kerning first=335 second=121 amount=-1 +kerning first=338 second=82 amount=-1 +kerning first=374 second=82 amount=-1 +kerning first=263 second=121 amount=-1 +kerning first=381 second=69 amount=-1 +kerning first=88 second=254 amount=-1 +kerning first=122 second=121 amount=-1 +kerning first=197 second=8217 amount=-3 +kerning first=187 second=66 amount=-3 +kerning first=193 second=254 amount=-1 +kerning first=351 second=257 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=288 second=82 amount=-1 +kerning first=338 second=69 amount=-1 +kerning first=69 second=209 amount=-1 +kerning first=374 second=69 amount=-1 +kerning first=266 second=69 amount=-1 +kerning first=203 second=212 amount=-1 +kerning first=82 second=332 amount=-1 +kerning first=86 second=326 amount=-1 +kerning first=106 second=8217 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=282 second=209 amount=-1 +kerning first=208 second=230 amount=-1 +kerning first=103 second=316 amount=-1 +kerning first=210 second=209 amount=-1 +kerning first=216 second=82 amount=-1 +kerning first=89 second=69 amount=-1 +kerning first=201 second=66 amount=-1 +kerning first=187 second=72 amount=-3 +kerning first=284 second=76 amount=-1 +kerning first=198 second=89 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=76 second=199 amount=-1 +kerning first=8217 second=71 amount=-1 +kerning first=381 second=66 amount=-1 +kerning first=212 second=76 amount=-1 +kerning first=8216 second=281 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=203 second=205 amount=-1 +kerning first=217 second=199 amount=-1 +kerning first=211 second=8217 amount=-1 +kerning first=214 second=229 amount=-1 +kerning first=217 second=192 amount=-2 +kerning first=120 second=347 amount=-1 +kerning first=71 second=76 amount=-1 +kerning first=73 second=229 amount=-1 +kerning first=283 second=8217 amount=-1 +kerning first=202 second=70 amount=-1 +kerning first=1048 second=1077 amount=-1 +kerning first=370 second=67 amount=-1 +kerning first=325 second=199 amount=-1 +kerning first=77 second=287 amount=-1 +kerning first=381 second=326 amount=-1 +kerning first=221 second=226 amount=-2 +kerning first=113 second=8221 amount=-1 +kerning first=313 second=86 amount=-1 +kerning first=1100 second=1099 amount=-1 +kerning first=380 second=242 amount=-1 +kerning first=68 second=257 amount=-1 +kerning first=344 second=242 amount=-1 +kerning first=201 second=326 amount=-1 +kerning first=254 second=8221 amount=-1 +kerning first=365 second=226 amount=-1 +kerning first=290 second=8221 amount=-1 +kerning first=264 second=216 amount=-2 +kerning first=90 second=119 amount=-1 +kerning first=218 second=367 amount=-1 +kerning first=356 second=76 amount=-1 +kerning first=195 second=119 amount=-2 +kerning first=291 second=333 amount=-1 +kerning first=244 second=316 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=111 second=103 amount=-1 +kerning first=1082 second=1092 amount=-1 +kerning first=231 second=119 amount=-1 +kerning first=255 second=333 amount=-1 +kerning first=75 second=103 amount=-1 +kerning first=221 second=219 amount=-1 +kerning first=210 second=202 amount=-1 +kerning first=1118 second=1092 amount=-1 +kerning first=334 second=302 amount=-1 +kerning first=327 second=45 amount=-2 +kerning first=354 second=209 amount=-1 +kerning first=69 second=202 amount=-1 +kerning first=303 second=119 amount=-1 +kerning first=262 second=302 amount=-1 +kerning first=339 second=119 amount=-1 +kerning first=375 second=119 amount=-1 +kerning first=8250 second=367 amount=-1 +kerning first=1042 second=1059 amount=-1 +kerning first=219 second=333 amount=-1 +kerning first=337 second=291 amount=-1 +kerning first=282 second=202 amount=-1 +kerning first=1046 second=1092 amount=-1 +kerning first=382 second=116 amount=-1 +kerning first=364 second=375 amount=-1 +kerning first=346 second=116 amount=-1 +kerning first=382 second=122 amount=-1 +kerning first=66 second=253 amount=-1 +kerning first=328 second=375 amount=-1 +kerning first=283 second=259 amount=-1 +kerning first=346 second=122 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=114 second=45 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=324 second=103 amount=-1 +kerning first=78 second=45 amount=-2 +kerning first=198 second=356 amount=-1 +kerning first=288 second=103 amount=-1 +kerning first=207 second=253 amount=-1 +kerning first=261 second=252 amount=-1 +kerning first=219 second=45 amount=-3 +kerning first=258 second=269 amount=-1 +kerning first=252 second=103 amount=-1 +kerning first=243 second=253 amount=-1 +kerning first=310 second=116 amount=-1 +kerning first=366 second=269 amount=-1 +kerning first=216 second=103 amount=-1 +kerning first=120 second=246 amount=-1 +kerning first=279 second=253 amount=-1 +kerning first=291 second=45 amount=-1 +kerning first=330 second=269 amount=-1 +kerning first=252 second=363 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=315 second=253 amount=-1 +kerning first=369 second=252 amount=-1 +kerning first=211 second=259 amount=-1 +kerning first=288 second=363 amount=-1 +kerning first=1046 second=1086 amount=-1 +kerning first=324 second=369 amount=-1 +kerning first=324 second=363 amount=-1 +kerning first=346 second=382 amount=-1 +kerning first=288 second=369 amount=-1 +kerning first=382 second=382 amount=-1 +kerning first=70 second=259 amount=-1 +kerning first=198 second=362 amount=-1 +kerning first=274 second=122 amount=-1 +kerning first=1053 second=1089 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=202 second=382 amount=-1 +kerning first=274 second=109 amount=-1 +kerning first=8217 second=331 amount=-1 +kerning first=262 second=327 amount=-1 +kerning first=202 second=122 amount=-1 +kerning first=382 second=109 amount=-1 +kerning first=115 second=375 amount=-1 +kerning first=252 second=369 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=274 second=382 amount=-1 +kerning first=346 second=109 amount=-1 +kerning first=119 second=97 amount=-2 +kerning first=220 second=115 amount=-1 +kerning first=216 second=370 amount=-1 +kerning first=115 second=115 amount=-1 +kerning first=288 second=370 amount=-1 +kerning first=202 second=109 amount=-1 +kerning first=8217 second=352 amount=-1 +kerning first=328 second=115 amount=-1 +kerning first=364 second=115 amount=-1 +kerning first=88 second=279 amount=-1 +kerning first=234 second=355 amount=-1 +kerning first=356 second=336 amount=-1 +kerning first=256 second=115 amount=-1 +kerning first=1118 second=1086 amount=-1 +kerning first=1082 second=1086 amount=-1 +kerning first=193 second=279 amount=-1 +kerning first=207 second=232 amount=-1 +kerning first=351 second=253 amount=-1 +kerning first=262 second=296 amount=-1 +kerning first=378 second=355 amount=-1 +kerning first=334 second=296 amount=-1 +kerning first=356 second=353 amount=-2 +kerning first=256 second=108 amount=-1 +kerning first=75 second=370 amount=-1 +kerning first=328 second=108 amount=-1 +kerning first=263 second=8249 amount=-1 +kerning first=203 second=206 amount=-1 +kerning first=313 second=8221 amount=-2 +kerning first=334 second=315 amount=-1 +kerning first=187 second=85 amount=-2 +kerning first=262 second=303 amount=-1 +kerning first=82 second=338 amount=-1 +kerning first=1104 second=1113 amount=-1 +kerning first=82 second=85 amount=-1 +kerning first=201 second=325 amount=-1 +kerning first=266 second=75 amount=-1 +kerning first=282 second=196 amount=-1 +kerning first=204 second=290 amount=-1 +kerning first=356 second=328 amount=-1 +kerning first=262 second=315 amount=-1 +kerning first=354 second=196 amount=-3 +kerning first=268 second=221 amount=-1 +kerning first=381 second=325 amount=-1 +kerning first=370 second=303 amount=-1 +kerning first=374 second=75 amount=-1 +kerning first=198 second=83 amount=-1 +kerning first=89 second=323 amount=-1 +kerning first=8250 second=122 amount=-3 +kerning first=371 second=380 amount=-1 +kerning first=371 second=98 amount=-1 +kerning first=210 second=196 amount=-2 +kerning first=8217 second=65 amount=-3 +kerning first=365 second=225 amount=-1 +kerning first=85 second=303 amount=-1 +kerning first=263 second=98 amount=-1 +kerning first=363 second=46 amount=-1 +kerning first=1100 second=1093 amount=-1 +kerning first=377 second=286 amount=-1 +kerning first=266 second=323 amount=-1 +kerning first=121 second=303 amount=-1 +kerning first=227 second=98 amount=-1 +kerning first=374 second=323 amount=-1 +kerning first=263 second=380 amount=-1 +kerning first=338 second=323 amount=-1 +kerning first=221 second=225 amount=-2 +kerning first=262 second=226 amount=-1 +kerning first=255 second=311 amount=-1 +kerning first=219 second=46 amount=-3 +kerning first=212 second=77 amount=-1 +kerning first=1050 second=1118 amount=-1 +kerning first=255 second=46 amount=-3 +kerning first=264 second=210 amount=-2 +kerning first=208 second=317 amount=-1 +kerning first=291 second=46 amount=-2 +kerning first=313 second=71 amount=-1 +kerning first=120 second=233 amount=-1 +kerning first=327 second=46 amount=-1 +kerning first=71 second=77 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=356 second=77 amount=-1 +kerning first=1056 second=1040 amount=-2 +kerning first=1114 second=1080 amount=-1 +kerning first=205 second=71 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=114 second=46 amount=-2 +kerning first=284 second=77 amount=-1 +kerning first=1105 second=1078 amount=-1 +kerning first=203 second=211 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=79 second=197 amount=-2 +kerning first=205 second=352 amount=-1 +kerning first=73 second=235 amount=-1 +kerning first=84 second=252 amount=-1 +kerning first=317 second=112 amount=-1 +kerning first=196 second=221 amount=-3 +kerning first=120 second=252 amount=-1 +kerning first=281 second=112 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=245 second=112 amount=-1 +kerning first=225 second=252 amount=-1 +kerning first=209 second=112 amount=-1 +kerning first=202 second=110 amount=-1 +kerning first=378 second=102 amount=-1 +kerning first=379 second=200 amount=-1 +kerning first=1045 second=1042 amount=-1 +kerning first=363 second=311 amount=-1 +kerning first=104 second=112 amount=-1 +kerning first=88 second=228 amount=-1 +kerning first=274 second=110 amount=-1 +kerning first=291 second=311 amount=-1 +kerning first=81 second=196 amount=-2 +kerning first=346 second=110 amount=-1 +kerning first=205 second=353 amount=-1 +kerning first=267 second=171 amount=-1 +kerning first=218 second=262 amount=-1 +kerning first=382 second=110 amount=-1 +kerning first=241 second=353 amount=-1 +kerning first=209 second=113 amount=-1 +kerning first=236 second=250 amount=-1 +kerning first=277 second=353 amount=-1 +kerning first=68 second=366 amount=-1 +kerning first=223 second=291 amount=-1 +kerning first=122 second=249 amount=-1 +kerning first=200 second=250 amount=-1 +kerning first=263 second=378 amount=-1 +kerning first=313 second=353 amount=-1 +kerning first=375 second=171 amount=-2 +kerning first=317 second=366 amount=-1 +kerning first=362 second=262 amount=-1 +kerning first=371 second=365 amount=-1 +kerning first=253 second=289 amount=-2 +kerning first=122 second=378 amount=-1 +kerning first=100 second=353 amount=-1 +kerning first=195 second=171 amount=-2 +kerning first=86 second=378 amount=-2 +kerning first=231 second=171 amount=-1 +kerning first=353 second=112 amount=-1 +kerning first=82 second=354 amount=-1 +kerning first=313 second=352 amount=-1 +kerning first=1038 second=1054 amount=-1 +kerning first=258 second=288 amount=-1 +kerning first=187 second=354 amount=-2 +kerning first=218 second=249 amount=-1 +kerning first=330 second=275 amount=-1 +kerning first=351 second=103 amount=-1 +kerning first=1042 second=1078 amount=-1 +kerning first=366 second=275 amount=-1 +kerning first=187 second=87 amount=-2 +kerning first=77 second=262 amount=-1 +kerning first=1056 second=1052 amount=-1 +kerning first=326 second=249 amount=-1 +kerning first=1082 second=1091 amount=-1 +kerning first=209 second=100 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=344 second=248 amount=-1 +kerning first=1064 second=1105 amount=-1 +kerning first=317 second=364 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=220 second=377 amount=-1 +kerning first=86 second=380 amount=-2 +kerning first=79 second=377 amount=-1 +kerning first=199 second=198 amount=-2 +kerning first=204 second=289 amount=-1 +kerning first=8250 second=106 amount=-1 +kerning first=122 second=380 amount=-1 +kerning first=1071 second=1077 amount=-1 +kerning first=1042 second=1065 amount=-1 +kerning first=240 second=289 amount=-1 +kerning first=89 second=330 amount=-1 +kerning first=77 second=249 amount=-1 +kerning first=326 second=8220 amount=-2 +kerning first=113 second=249 amount=-1 +kerning first=364 second=377 amount=-1 +kerning first=290 second=8220 amount=-1 +kerning first=380 second=263 amount=-1 +kerning first=366 second=288 amount=-1 +kerning first=254 second=8220 amount=-1 +kerning first=1057 second=1103 amount=-1 +kerning first=86 second=114 amount=-1 +kerning first=381 second=313 amount=-1 +kerning first=68 second=379 amount=-1 +kerning first=227 second=365 amount=-1 +kerning first=1024 second=1064 amount=-1 +kerning first=86 second=99 amount=-2 +kerning first=8217 second=291 amount=-2 +kerning first=113 second=8220 amount=-1 +kerning first=8250 second=107 amount=-1 +kerning first=197 second=287 amount=-1 +kerning first=1060 second=1064 amount=-1 +kerning first=376 second=237 amount=-1 +kerning first=122 second=365 amount=-1 +kerning first=118 second=339 amount=-1 +kerning first=201 second=313 amount=-1 +kerning first=317 second=82 amount=-1 +kerning first=269 second=287 amount=-1 +kerning first=86 second=365 amount=-1 +kerning first=122 second=99 amount=-1 +kerning first=334 second=378 amount=-1 +kerning first=233 second=287 amount=-1 +kerning first=263 second=99 amount=-1 +kerning first=268 second=237 amount=-1 +kerning first=313 second=73 amount=-1 +kerning first=89 second=75 amount=-1 +kerning first=82 second=339 amount=-1 +kerning first=317 second=379 amount=-1 +kerning first=305 second=287 amount=-1 +kerning first=208 second=229 amount=-1 +kerning first=379 second=198 amount=-1 +kerning first=280 second=44 amount=-1 +kerning first=356 second=334 amount=-1 +kerning first=333 second=237 amount=-1 +kerning first=244 second=44 amount=-2 +kerning first=377 second=287 amount=-2 +kerning first=196 second=234 amount=-1 +kerning first=352 second=44 amount=-2 +kerning first=87 second=197 amount=-3 +kerning first=204 second=284 amount=-1 +kerning first=103 second=44 amount=-2 +kerning first=75 second=354 amount=-1 +kerning first=281 second=104 amount=-1 +kerning first=67 second=44 amount=-1 +kerning first=218 second=267 amount=-1 +kerning first=245 second=104 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=264 second=197 amount=-2 +kerning first=84 second=237 amount=-1 +kerning first=112 second=187 amount=-1 +kerning first=216 second=354 amount=-1 +kerning first=232 second=227 amount=-1 +kerning first=336 second=197 amount=-2 +kerning first=199 second=194 amount=-2 +kerning first=122 second=111 amount=-1 +kerning first=90 second=337 amount=-1 +kerning first=288 second=354 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=82 second=351 amount=-1 +kerning first=376 second=227 amount=-2 +kerning first=304 second=234 amount=-1 +kerning first=328 second=117 amount=-1 +kerning first=99 second=277 amount=-1 +kerning first=1031 second=1054 amount=-1 +kerning first=288 second=87 amount=-1 +kerning first=304 second=227 amount=-1 +kerning first=376 second=234 amount=-2 +kerning first=204 second=277 amount=-1 +kerning first=268 second=227 amount=-1 +kerning first=216 second=87 amount=-1 +kerning first=86 second=111 amount=-2 +kerning first=353 second=367 amount=-1 +kerning first=380 second=254 amount=-1 +kerning first=198 second=361 amount=-1 +kerning first=305 second=8249 amount=-1 +kerning first=71 second=327 amount=-1 +kerning first=313 second=74 amount=-1 +kerning first=367 second=351 amount=-1 +kerning first=380 second=257 amount=-1 +kerning first=331 second=351 amount=-1 +kerning first=201 second=314 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=281 second=367 amount=-1 +kerning first=88 second=267 amount=-1 +kerning first=115 second=121 amount=-1 +kerning first=75 second=364 amount=-1 +kerning first=70 second=264 amount=-1 +kerning first=113 second=261 amount=-1 +kerning first=317 second=367 amount=-1 +kerning first=234 second=361 amount=-1 +kerning first=269 second=8249 amount=-1 +kerning first=344 second=257 amount=-1 +kerning first=209 second=367 amount=-1 +kerning first=236 second=254 amount=-1 +kerning first=223 second=351 amount=-1 +kerning first=236 second=257 amount=-1 +kerning first=197 second=8249 amount=-2 +kerning first=284 second=327 amount=-1 +kerning first=288 second=364 amount=-1 +kerning first=187 second=351 amount=-1 +kerning first=272 second=257 amount=-1 +kerning first=104 second=367 amount=-1 +kerning first=8250 second=109 amount=-1 +kerning first=295 second=351 amount=-1 +kerning first=344 second=254 amount=-1 +kerning first=378 second=361 amount=-1 +kerning first=356 second=327 amount=-1 +kerning first=364 second=114 amount=-1 +kerning first=216 second=364 amount=-1 +kerning first=259 second=351 amount=-1 +kerning first=200 second=257 amount=-1 +kerning first=8250 second=116 amount=-1 +kerning first=232 second=224 amount=-1 +kerning first=362 second=261 amount=-2 +kerning first=1055 second=1108 amount=-1 +kerning first=256 second=117 amount=-1 +kerning first=304 second=224 amount=-1 +kerning first=353 second=104 amount=-1 +kerning first=200 second=254 amount=-1 +kerning first=220 second=114 amount=-1 +kerning first=1038 second=1051 amount=-3 +kerning first=268 second=224 amount=-1 +kerning first=364 second=121 amount=-1 +kerning first=1067 second=1057 amount=-1 +kerning first=376 second=224 amount=-2 +kerning first=218 second=261 amount=-2 +kerning first=115 second=114 amount=-1 +kerning first=1031 second=1057 amount=-1 +kerning first=380 second=250 amount=-1 +kerning first=377 second=8249 amount=-1 +kerning first=290 second=261 amount=-1 +kerning first=344 second=250 amount=-1 +kerning first=211 second=274 amount=-1 +kerning first=369 second=237 amount=-1 +kerning first=90 second=234 amount=-1 +kerning first=356 second=337 amount=-2 +kerning first=356 second=331 amount=-1 +kerning first=209 second=101 amount=-1 +kerning first=1045 second=1038 amount=-1 +kerning first=274 second=268 amount=-1 +kerning first=203 second=221 amount=-1 +kerning first=115 second=117 amount=-1 +kerning first=220 second=117 amount=-1 +kerning first=324 second=347 amount=-1 +kerning first=87 second=200 amount=-1 +kerning first=377 second=290 amount=-1 +kerning first=266 second=338 amount=-2 +kerning first=1024 second=1067 amount=-1 +kerning first=200 second=205 amount=-1 +kerning first=234 second=98 amount=-1 +kerning first=84 second=240 amount=-2 +kerning first=194 second=338 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=67 second=114 amount=-1 +kerning first=87 second=207 amount=-1 +kerning first=256 second=199 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=364 second=380 amount=-1 +kerning first=89 second=228 amount=-2 +kerning first=346 second=219 amount=-1 +kerning first=264 second=8249 amount=-2 +kerning first=198 second=98 amount=-1 +kerning first=120 second=240 amount=-1 +kerning first=236 second=251 amount=-1 +kerning first=1060 second=1067 amount=-1 +kerning first=344 second=251 amount=-1 +kerning first=336 second=207 amount=-1 +kerning first=313 second=77 amount=-1 +kerning first=264 second=201 amount=-1 +kerning first=381 second=317 amount=-1 +kerning first=380 second=251 amount=-1 +kerning first=198 second=90 amount=-1 +kerning first=86 second=368 amount=-1 +kerning first=82 second=84 amount=-1 +kerning first=1070 second=1024 amount=-1 +kerning first=352 second=304 amount=-1 +kerning first=284 second=330 amount=-1 +kerning first=87 second=201 amount=-1 +kerning first=221 second=220 amount=-1 +kerning first=201 second=317 amount=-1 +kerning first=280 second=304 amount=-1 +kerning first=264 second=207 amount=-1 +kerning first=323 second=291 amount=-1 +kerning first=219 second=324 amount=-1 +kerning first=79 second=381 amount=-1 +kerning first=75 second=97 amount=-1 +kerning first=336 second=200 amount=-1 +kerning first=8250 second=110 amount=-1 +kerning first=287 second=291 amount=-1 +kerning first=240 second=107 amount=-1 +kerning first=187 second=84 amount=-2 +kerning first=291 second=324 amount=-1 +kerning first=264 second=200 amount=-1 +kerning first=221 second=213 amount=-1 +kerning first=255 second=324 amount=-1 +kerning first=220 second=381 amount=-1 +kerning first=262 second=311 amount=-1 +kerning first=252 second=97 amount=-1 +kerning first=110 second=291 amount=-1 +kerning first=288 second=97 amount=-1 +kerning first=74 second=291 amount=-1 +kerning first=1046 second=1101 amount=-1 +kerning first=356 second=71 amount=-1 +kerning first=121 second=311 amount=-1 +kerning first=1082 second=1101 amount=-1 +kerning first=364 second=381 amount=-1 +kerning first=216 second=97 amount=-1 +kerning first=263 second=226 amount=-1 +kerning first=227 second=375 amount=-1 +kerning first=87 second=203 amount=-1 +kerning first=73 second=228 amount=-1 +kerning first=228 second=8220 amount=-1 +kerning first=217 second=193 amount=-2 +kerning first=236 second=253 amount=-1 +kerning first=8250 second=382 amount=-3 +kerning first=79 second=120 amount=-1 +kerning first=86 second=375 amount=-1 +kerning first=203 second=218 amount=-1 +kerning first=115 second=120 amount=-1 +kerning first=71 second=70 amount=-1 +kerning first=371 second=375 amount=-1 +kerning first=344 second=253 amount=-1 +kerning first=335 second=375 amount=-1 +kerning first=353 second=103 amount=-1 +kerning first=380 second=253 amount=-1 +kerning first=121 second=45 amount=-2 +kerning first=1031 second=1060 amount=-1 +kerning first=263 second=375 amount=-1 +kerning first=85 second=45 amount=-3 +kerning first=1067 second=1060 amount=-1 +kerning first=282 second=192 amount=-1 +kerning first=208 second=310 amount=-1 +kerning first=70 second=268 amount=-1 +kerning first=268 second=245 amount=-1 +kerning first=284 second=70 amount=-1 +kerning first=364 second=120 amount=-1 +kerning first=1082 second=1095 amount=-1 +kerning first=336 second=203 amount=-1 +kerning first=1046 second=1095 amount=-2 +kerning first=67 second=310 amount=-1 +kerning first=212 second=70 amount=-1 +kerning first=356 second=68 amount=-1 +kerning first=187 second=78 amount=-3 +kerning first=187 second=345 amount=-1 +kerning first=264 second=203 amount=-1 +kerning first=364 second=118 amount=-1 +kerning first=1100 second=1100 amount=-1 +kerning first=194 second=286 amount=-1 +kerning first=328 second=118 amount=-1 +kerning first=220 second=120 amount=-1 +kerning first=280 second=310 amount=-1 +kerning first=356 second=70 amount=-1 +kerning first=1056 second=1043 amount=-1 +kerning first=336 second=201 amount=-1 +kerning first=371 second=105 amount=-1 +kerning first=220 second=118 amount=-1 +kerning first=102 second=245 amount=-1 +kerning first=371 second=108 amount=-1 +kerning first=8250 second=112 amount=-1 +kerning first=121 second=305 amount=-1 +kerning first=85 second=305 amount=-1 +kerning first=335 second=105 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=256 second=118 amount=-2 +kerning first=204 second=283 amount=-1 +kerning first=8217 second=287 amount=-2 +kerning first=374 second=335 amount=-2 +kerning first=284 second=65 amount=-1 +kerning first=351 second=241 amount=-1 +kerning first=99 second=283 amount=-1 +kerning first=122 second=105 amount=-1 +kerning first=115 second=118 amount=-1 +kerning first=1107 second=1083 amount=-1 +kerning first=262 second=305 amount=-1 +kerning first=356 second=65 amount=-3 +kerning first=207 second=245 amount=-1 +kerning first=89 second=334 amount=-1 +kerning first=1060 second=1070 amount=-1 +kerning first=68 second=370 amount=-1 +kerning first=86 second=105 amount=-1 +kerning first=255 second=318 amount=-1 +kerning first=376 second=231 amount=-2 +kerning first=325 second=244 amount=-1 +kerning first=302 second=335 amount=-1 +kerning first=315 second=241 amount=-1 +kerning first=1024 second=1070 amount=-1 +kerning first=122 second=108 amount=-1 +kerning first=279 second=241 amount=-1 +kerning first=286 second=228 amount=-1 +kerning first=263 second=108 amount=-1 +kerning first=363 second=318 amount=-1 +kerning first=66 second=241 amount=-1 +kerning first=227 second=108 amount=-1 +kerning first=89 second=335 amount=-2 +kerning first=214 second=228 amount=-1 +kerning first=335 second=108 amount=-1 +kerning first=317 second=370 amount=-1 +kerning first=76 second=193 amount=-1 +kerning first=194 second=335 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=200 second=66 amount=-1 +kerning first=316 second=316 amount=-1 +kerning first=218 second=256 amount=-2 +kerning first=82 second=347 amount=-1 +kerning first=266 second=66 amount=-1 +kerning first=245 second=107 amount=-1 +kerning first=354 second=205 amount=-1 +kerning first=304 second=231 amount=-1 +kerning first=376 second=230 amount=-2 +kerning first=362 second=256 amount=-2 +kerning first=8250 second=379 amount=-2 +kerning first=362 second=380 amount=-1 +kerning first=99 second=281 amount=-1 +kerning first=1038 second=1047 amount=-1 +kerning first=362 second=255 amount=-1 +kerning first=374 second=66 amount=-1 +kerning first=304 second=230 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=290 second=256 amount=-1 +kerning first=326 second=255 amount=-1 +kerning first=268 second=231 amount=-1 +kerning first=204 second=281 amount=-1 +kerning first=338 second=66 amount=-1 +kerning first=210 second=205 amount=-1 +kerning first=221 second=216 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=263 second=371 amount=-1 +kerning first=254 second=255 amount=-1 +kerning first=8217 second=74 amount=-1 +kerning first=1046 second=1098 amount=-1 +kerning first=218 second=255 amount=-1 +kerning first=367 second=347 amount=-1 +kerning first=286 second=310 amount=-1 +kerning first=267 second=240 amount=-1 +kerning first=266 second=332 amount=-2 +kerning first=380 second=102 amount=-1 +kerning first=99 second=369 amount=-1 +kerning first=371 second=371 amount=-1 +kerning first=113 second=255 amount=-1 +kerning first=295 second=347 amount=-1 +kerning first=317 second=107 amount=-1 +kerning first=338 second=332 amount=-1 +kerning first=77 second=255 amount=-1 +kerning first=381 second=346 amount=-1 +kerning first=281 second=107 amount=-1 +kerning first=302 second=332 amount=-1 +kerning first=122 second=371 amount=-1 +kerning first=223 second=347 amount=-1 +kerning first=69 second=205 amount=-1 +kerning first=187 second=347 amount=-1 +kerning first=353 second=107 amount=-1 +kerning first=374 second=332 amount=-1 +kerning first=227 second=371 amount=-1 +kerning first=71 second=68 amount=-1 +kerning first=107 second=333 amount=-1 +kerning first=264 second=204 amount=-1 +kerning first=203 second=217 amount=-1 +kerning first=1027 second=1033 amount=-3 +kerning first=250 second=229 amount=-1 +kerning first=8216 second=277 amount=-1 +kerning first=336 second=204 amount=-1 +kerning first=207 second=242 amount=-1 +kerning first=286 second=229 amount=-1 +kerning first=356 second=67 amount=-1 +kerning first=104 second=106 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=252 second=289 amount=-1 +kerning first=284 second=68 amount=-1 +kerning first=222 second=282 amount=-1 +kerning first=68 second=106 amount=-1 +kerning first=212 second=68 amount=-1 +kerning first=281 second=106 amount=-1 +kerning first=232 second=230 amount=-1 +kerning first=81 second=282 amount=-1 +kerning first=84 second=243 amount=-2 +kerning first=205 second=346 amount=-1 +kerning first=317 second=106 amount=-1 +kerning first=268 second=230 amount=-1 +kerning first=97 second=119 amount=-1 +kerning first=45 second=282 amount=-3 +kerning first=120 second=243 amount=-1 +kerning first=244 second=307 amount=-1 +kerning first=245 second=106 amount=-1 +kerning first=202 second=119 amount=-1 +kerning first=316 second=307 amount=-1 +kerning first=87 second=204 amount=-1 +kerning first=274 second=119 amount=-1 +kerning first=313 second=346 amount=-1 +kerning first=353 second=106 amount=-1 +kerning first=310 second=119 amount=-1 +kerning first=356 second=333 amount=-2 +kerning first=203 second=214 amount=-1 +kerning first=346 second=119 amount=-1 +kerning first=103 second=230 amount=-1 +kerning first=213 second=327 amount=-1 +kerning first=89 second=353 amount=-2 +kerning first=310 second=199 amount=-1 +kerning first=378 second=249 amount=-1 +kerning first=269 second=275 amount=-1 +kerning first=67 second=230 amount=-1 +kerning first=321 second=327 amount=-1 +kerning first=197 second=275 amount=-1 +kerning first=84 second=45 amount=-3 +kerning first=8250 second=302 amount=-3 +kerning first=72 second=81 amount=-1 +kerning first=379 second=223 amount=-1 +kerning first=84 second=256 amount=-3 +kerning first=199 second=223 amount=-1 +kerning first=368 second=268 amount=-1 +kerning first=218 second=211 amount=-1 +kerning first=374 second=339 amount=-2 +kerning first=77 second=211 amount=-1 +kerning first=352 second=230 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=280 second=230 amount=-1 +kerning first=362 second=211 amount=-1 +kerning first=8250 second=368 amount=-2 +kerning first=296 second=268 amount=-1 +kerning first=198 second=249 amount=-1 +kerning first=377 second=275 amount=-1 +kerning first=246 second=318 amount=-1 +kerning first=264 second=378 amount=-1 +kerning first=260 second=268 amount=-1 +kerning first=234 second=249 amount=-1 +kerning first=68 second=204 amount=-1 +kerning first=86 second=209 amount=-1 +kerning first=233 second=289 amount=-1 +kerning first=379 second=237 amount=-1 +kerning first=68 second=218 amount=-1 +kerning first=269 second=289 amount=-1 +kerning first=194 second=339 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=67 second=244 amount=-1 +kerning first=378 second=263 amount=-1 +kerning first=214 second=315 amount=-1 +kerning first=305 second=289 amount=-1 +kerning first=307 second=237 amount=-1 +kerning first=1025 second=1091 amount=-1 +kerning first=103 second=244 amount=-1 +kerning first=220 second=248 amount=-1 +kerning first=213 second=313 amount=-1 +kerning first=89 second=339 amount=-2 +kerning first=1061 second=1091 amount=-1 +kerning first=68 second=259 amount=-1 +kerning first=377 second=289 amount=-2 +kerning first=235 second=237 amount=-1 +kerning first=199 second=237 amount=-1 +kerning first=78 second=199 amount=-1 +kerning first=332 second=282 amount=-1 +kerning first=266 second=339 amount=-1 +kerning first=316 second=244 amount=-1 +kerning first=338 second=353 amount=-1 +kerning first=66 second=8249 amount=-1 +kerning first=374 second=353 amount=-2 +kerning first=1036 second=1060 amount=-2 +kerning first=350 second=361 amount=-1 +kerning first=102 second=8249 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=1061 second=1105 amount=-1 +kerning first=204 second=334 amount=-1 +kerning first=113 second=225 amount=-1 +kerning first=229 second=365 amount=-1 +kerning first=286 second=315 amount=-1 +kerning first=194 second=353 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=230 second=353 amount=-1 +kerning first=203 second=346 amount=-1 +kerning first=266 second=353 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=197 second=289 amount=-1 +kerning first=199 second=251 amount=-1 +kerning first=332 second=296 amount=-1 +kerning first=352 second=202 amount=-1 +kerning first=193 second=351 amount=-1 +kerning first=307 second=251 amount=-1 +kerning first=203 second=374 amount=-1 +kerning first=224 second=254 amount=-1 +kerning first=193 second=231 amount=-1 +kerning first=230 second=121 amount=-1 +kerning first=280 second=202 amount=-1 +kerning first=260 second=254 amount=-1 +kerning first=210 second=206 amount=-1 +kerning first=379 second=251 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=229 second=351 amount=-1 +kerning first=282 second=206 amount=-1 +kerning first=89 second=121 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=286 second=205 amount=-1 +kerning first=83 second=254 amount=-1 +kerning first=338 second=367 amount=-1 +kerning first=354 second=206 amount=-1 +kerning first=1042 second=1103 amount=-1 +kerning first=89 second=381 amount=-1 +kerning first=119 second=254 amount=-1 +kerning first=286 second=69 amount=-1 +kerning first=374 second=367 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=266 second=367 amount=-1 +kerning first=302 second=79 amount=-1 +kerning first=228 second=117 amount=-1 +kerning first=274 second=344 amount=-1 +kerning first=214 second=69 amount=-1 +kerning first=302 second=367 amount=-1 +kerning first=338 second=79 amount=-1 +kerning first=219 second=199 amount=-1 +kerning first=347 second=114 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=8220 second=99 amount=-1 +kerning first=346 second=344 amount=-1 +kerning first=84 second=284 amount=-1 +kerning first=233 second=261 amount=-1 +kerning first=1056 second=1036 amount=-1 +kerning first=266 second=79 amount=-2 +kerning first=82 second=336 amount=-1 +kerning first=264 second=117 amount=-1 +kerning first=203 second=72 amount=-1 +kerning first=214 second=83 amount=-1 +kerning first=89 second=367 amount=-1 +kerning first=327 second=199 amount=-1 +kerning first=338 second=381 amount=-1 +kerning first=336 second=192 amount=-2 +kerning first=374 second=121 amount=-1 +kerning first=374 second=381 amount=-1 +kerning first=187 second=76 amount=-3 +kerning first=204 second=121 amount=-1 +kerning first=374 second=79 amount=-1 +kerning first=202 second=344 amount=-1 +kerning first=364 second=71 amount=-1 +kerning first=264 second=192 amount=-2 +kerning first=1027 second=1081 amount=-1 +kerning first=302 second=121 amount=-1 +kerning first=1078 second=1089 amount=-1 +kerning first=296 second=240 amount=-1 +kerning first=338 second=107 amount=-1 +kerning first=78 second=171 amount=-2 +kerning first=280 second=216 amount=-1 +kerning first=114 second=171 amount=-1 +kerning first=193 second=337 amount=-1 +kerning first=203 second=86 amount=-1 +kerning first=8220 second=113 amount=-1 +kerning first=260 second=240 amount=-1 +kerning first=269 second=261 amount=-1 +kerning first=230 second=107 amount=-1 +kerning first=67 second=216 amount=-2 +kerning first=194 second=107 amount=-1 +kerning first=362 second=382 amount=-1 +kerning first=368 second=240 amount=-1 +kerning first=377 second=261 amount=-1 +kerning first=266 second=107 amount=-1 +kerning first=1027 second=1095 amount=-1 +kerning first=363 second=171 amount=-1 +kerning first=67 second=202 amount=-1 +kerning first=346 second=330 amount=-1 +kerning first=8250 second=274 amount=-3 +kerning first=199 second=209 amount=-1 +kerning first=274 second=330 amount=-1 +kerning first=208 second=202 amount=-1 +kerning first=219 second=171 amount=-3 +kerning first=119 second=240 amount=-1 +kerning first=255 second=171 amount=-2 +kerning first=379 second=209 amount=-1 +kerning first=291 second=171 amount=-1 +kerning first=327 second=171 amount=-2 +kerning first=1027 second=1102 amount=-1 +kerning first=295 second=252 amount=-1 +kerning first=69 second=206 amount=-1 +kerning first=255 second=227 amount=-2 +kerning first=1073 second=1076 amount=-1 +kerning first=205 second=350 amount=-1 +kerning first=331 second=252 amount=-1 +kerning first=219 second=227 amount=-2 +kerning first=198 second=207 amount=-1 +kerning first=367 second=252 amount=-1 +kerning first=187 second=252 amount=-1 +kerning first=363 second=227 amount=-1 +kerning first=234 second=305 amount=-1 +kerning first=327 second=227 amount=-1 +kerning first=198 second=330 amount=-1 +kerning first=259 second=252 amount=-1 +kerning first=291 second=227 amount=-1 +kerning first=79 second=201 amount=-1 +kerning first=324 second=291 amount=-1 +kerning first=336 second=103 amount=-1 +kerning first=378 second=291 amount=-1 +kerning first=83 second=226 amount=-1 +kerning first=313 second=90 amount=-1 +kerning first=119 second=226 amount=-2 +kerning first=68 second=260 amount=-2 +kerning first=210 second=74 amount=-1 +kerning first=201 second=241 amount=-1 +kerning first=264 second=103 amount=-1 +kerning first=198 second=45 amount=-1 +kerning first=8250 second=344 amount=-3 +kerning first=78 second=227 amount=-1 +kerning first=192 second=103 amount=-1 +kerning first=234 second=291 amount=-1 +kerning first=88 second=337 amount=-1 +kerning first=198 second=291 amount=-1 +kerning first=296 second=226 amount=-1 +kerning first=270 second=45 amount=-1 +kerning first=87 second=103 amount=-2 +kerning first=332 second=226 amount=-1 +kerning first=378 second=45 amount=-2 +kerning first=235 second=230 amount=-1 +kerning first=368 second=226 amount=-2 +kerning first=317 second=260 amount=-1 +kerning first=346 second=84 amount=-1 +kerning first=327 second=213 amount=-1 +kerning first=310 second=84 amount=-1 +kerning first=274 second=84 amount=-1 +kerning first=192 second=89 amount=-3 +kerning first=321 second=109 amount=-1 +kerning first=209 second=115 amount=-1 +kerning first=368 second=212 amount=-1 +kerning first=245 second=115 amount=-1 +kerning first=104 second=115 amount=-1 +kerning first=208 second=196 amount=-2 +kerning first=296 second=212 amount=-1 +kerning first=275 second=44 amount=-2 +kerning first=353 second=115 amount=-1 +kerning first=332 second=84 amount=-1 +kerning first=332 second=78 amount=-1 +kerning first=100 second=104 amount=-1 +kerning first=1092 second=1076 amount=-1 +kerning first=347 second=44 amount=-1 +kerning first=281 second=115 amount=-1 +kerning first=78 second=213 amount=-1 +kerning first=311 second=44 amount=-1 +kerning first=317 second=115 amount=-1 +kerning first=8216 second=74 amount=-1 +kerning first=98 second=44 amount=-2 +kerning first=346 second=70 amount=-1 +kerning first=264 second=89 amount=-1 +kerning first=313 second=104 amount=-1 +kerning first=277 second=104 amount=-1 +kerning first=192 second=267 amount=-1 +kerning first=203 second=44 amount=-1 +kerning first=274 second=70 amount=-1 +kerning first=336 second=89 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=378 second=277 amount=-1 +kerning first=209 second=232 amount=-1 +kerning first=219 second=213 amount=-1 +kerning first=74 second=303 amount=-1 +kerning first=8218 second=355 amount=-1 +kerning first=284 second=325 amount=-1 +kerning first=202 second=98 amount=-1 +kerning first=310 second=98 amount=-1 +kerning first=315 second=8249 amount=-1 +kerning first=87 second=75 amount=-1 +kerning first=368 second=237 amount=-1 +kerning first=356 second=325 amount=-1 +kerning first=187 second=280 amount=-3 +kerning first=274 second=98 amount=-1 +kerning first=351 second=8249 amount=-1 +kerning first=107 second=283 amount=-1 +kerning first=251 second=303 amount=-1 +kerning first=277 second=118 amount=-1 +kerning first=289 second=120 amount=-1 +kerning first=379 second=289 amount=-2 +kerning first=374 second=196 amount=-3 +kerning first=336 second=75 amount=-1 +kerning first=287 second=303 amount=-1 +kerning first=1045 second=1025 amount=-1 +kerning first=241 second=118 amount=-1 +kerning first=255 second=328 amount=-1 +kerning first=8250 second=330 amount=-3 +kerning first=219 second=328 amount=-1 +kerning first=264 second=75 amount=-1 +kerning first=97 second=98 amount=-1 +kerning first=313 second=118 amount=-1 +kerning first=266 second=196 amount=-2 +kerning first=100 second=118 amount=-1 +kerning first=1098 second=1093 amount=-1 +kerning first=208 second=287 amount=-1 +kerning first=272 second=80 amount=-1 +kerning first=272 second=204 amount=-1 +kerning first=381 second=291 amount=-2 +kerning first=338 second=196 amount=-1 +kerning first=1098 second=1107 amount=-1 +kerning first=205 second=118 amount=-1 +kerning first=317 second=218 amount=-1 +kerning first=1037 second=1104 amount=-1 +kerning first=89 second=196 amount=-3 +kerning first=71 second=325 amount=-1 +kerning first=382 second=98 amount=-1 +kerning first=291 second=241 amount=-1 +kerning first=255 second=241 amount=-1 +kerning first=356 second=283 amount=-2 +kerning first=212 second=325 amount=-1 +kerning first=8218 second=369 amount=-1 +kerning first=280 second=286 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=1113 second=1087 amount=-1 +kerning first=219 second=241 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=374 second=210 amount=-1 +kerning first=262 second=314 amount=-1 +kerning first=102 second=8221 amount=1 +kerning first=226 second=314 amount=-1 +kerning first=287 second=331 amount=-1 +kerning first=266 second=210 amount=-2 +kerning first=83 second=353 amount=-1 +kerning first=66 second=8221 amount=-2 +kerning first=363 second=255 amount=-1 +kerning first=279 second=8221 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=327 second=255 amount=-1 +kerning first=67 second=286 amount=-2 +kerning first=315 second=8221 amount=-2 +kerning first=219 second=269 amount=-1 +kerning first=382 second=112 amount=-1 +kerning first=291 second=255 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=346 second=112 amount=-1 +kerning first=82 second=252 amount=-1 +kerning first=89 second=224 amount=-2 +kerning first=243 second=8221 amount=-1 +kerning first=291 second=269 amount=-1 +kerning first=310 second=112 amount=-1 +kerning first=321 second=81 amount=-1 +kerning first=219 second=255 amount=-1 +kerning first=230 second=224 amount=-1 +kerning first=378 second=235 amount=-1 +kerning first=208 second=378 amount=-1 +kerning first=274 second=112 amount=-1 +kerning first=72 second=67 amount=-1 +kerning first=74 second=331 amount=-1 +kerning first=198 second=221 amount=-1 +kerning first=302 second=224 amount=-1 +kerning first=351 second=8221 amount=-1 +kerning first=202 second=112 amount=-1 +kerning first=78 second=255 amount=-1 +kerning first=266 second=224 amount=-1 +kerning first=374 second=224 amount=-2 +kerning first=88 second=281 amount=-1 +kerning first=217 second=352 amount=-1 +kerning first=371 second=279 amount=-1 +kerning first=338 second=224 amount=-1 +kerning first=68 second=302 amount=-1 +kerning first=229 second=250 amount=-1 +kerning first=75 second=101 amount=-1 +kerning first=362 second=326 amount=-1 +kerning first=234 second=347 amount=-1 +kerning first=193 second=281 amount=-1 +kerning first=198 second=347 amount=-1 +kerning first=113 second=326 amount=-1 +kerning first=1060 second=1033 amount=-1 +kerning first=279 second=371 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=221 second=231 amount=-2 +kerning first=85 second=328 amount=-1 +kerning first=325 second=352 amount=-1 +kerning first=218 second=326 amount=-1 +kerning first=80 second=231 amount=-1 +kerning first=351 second=371 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=218 second=46 amount=-3 +kerning first=260 second=366 amount=-2 +kerning first=378 second=378 amount=-1 +kerning first=1073 second=1118 amount=-1 +kerning first=220 second=257 amount=-2 +kerning first=78 second=283 amount=-1 +kerning first=262 second=328 amount=-1 +kerning first=115 second=257 amount=-1 +kerning first=263 second=333 amount=-1 +kerning first=317 second=302 amount=-1 +kerning first=291 second=283 amount=-1 +kerning first=234 second=378 amount=-1 +kerning first=97 second=369 amount=-1 +kerning first=230 second=8220 amount=-1 +kerning first=255 second=283 amount=-1 +kerning first=198 second=378 amount=-1 +kerning first=1038 second=1092 amount=-2 +kerning first=1048 second=1073 amount=-1 +kerning first=79 second=257 amount=-1 +kerning first=122 second=333 amount=-1 +kerning first=332 second=366 amount=-1 +kerning first=378 second=347 amount=-1 +kerning first=370 second=328 amount=-1 +kerning first=86 second=333 amount=-2 +kerning first=76 second=352 amount=-1 +kerning first=268 second=217 amount=-1 +kerning first=103 second=113 amount=-1 +kerning first=310 second=288 amount=-1 +kerning first=67 second=113 amount=-1 +kerning first=332 second=106 amount=-1 +kerning first=83 second=198 amount=-2 +kerning first=376 second=217 amount=-1 +kerning first=371 second=333 amount=-1 +kerning first=202 second=288 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=67 second=345 amount=-1 +kerning first=113 second=245 amount=-1 +kerning first=274 second=288 amount=-1 +kerning first=72 second=243 amount=-1 +kerning first=45 second=69 amount=-3 +kerning first=108 second=243 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=202 second=370 amount=-1 +kerning first=368 second=198 amount=-2 +kerning first=203 second=262 amount=-1 +kerning first=217 second=120 amount=-1 +kerning first=352 second=345 amount=-1 +kerning first=356 second=255 amount=-1 +kerning first=84 second=368 amount=-1 +kerning first=253 second=120 amount=-1 +kerning first=8250 second=218 amount=-2 +kerning first=196 second=217 amount=-2 +kerning first=248 second=255 amount=-1 +kerning first=253 second=271 amount=-1 +kerning first=1057 second=1094 amount=-1 +kerning first=1047 second=1113 amount=-1 +kerning first=76 second=120 amount=-1 +kerning first=317 second=274 amount=-1 +kerning first=1051 second=1054 amount=-1 +kerning first=79 second=229 amount=-1 +kerning first=74 second=99 amount=-1 +kerning first=356 second=227 amount=-2 +kerning first=192 second=279 amount=-1 +kerning first=200 second=323 amount=-1 +kerning first=115 second=229 amount=-1 +kerning first=284 second=227 amount=-1 +kerning first=264 second=279 amount=-1 +kerning first=272 second=323 amount=-1 +kerning first=287 second=99 amount=-1 +kerning first=198 second=104 amount=-1 +kerning first=211 second=278 amount=-1 +kerning first=282 second=44 amount=-1 +kerning first=253 second=324 amount=-1 +kerning first=246 second=44 amount=-2 +kerning first=217 second=324 amount=-1 +kerning first=99 second=233 amount=-1 +kerning first=290 second=354 amount=-1 +kerning first=354 second=44 amount=-3 +kerning first=323 second=99 amount=-1 +kerning first=87 second=279 amount=-2 +kerning first=289 second=324 amount=-1 +kerning first=204 second=233 amount=-1 +kerning first=71 second=227 amount=-1 +kerning first=380 second=267 amount=-1 +kerning first=83 second=106 amount=-1 +kerning first=311 second=234 amount=-1 +kerning first=344 second=267 amount=-1 +kerning first=102 second=111 amount=-1 +kerning first=364 second=229 amount=-2 +kerning first=86 second=226 amount=-2 +kerning first=280 second=317 amount=-1 +kerning first=212 second=227 amount=-1 +kerning first=352 second=317 amount=-1 +kerning first=107 second=227 amount=-1 +kerning first=85 second=110 amount=-1 +kerning first=224 second=106 amount=-1 +kerning first=121 second=110 amount=-1 +kerning first=97 second=316 amount=-1 +kerning first=334 second=82 amount=-1 +kerning first=258 second=264 amount=-1 +kerning first=202 second=316 amount=-1 +kerning first=262 second=110 amount=-1 +kerning first=371 second=361 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=274 second=316 amount=-1 +kerning first=364 second=257 amount=-2 +kerning first=282 second=290 amount=-1 +kerning first=286 second=224 amount=-1 +kerning first=310 second=316 amount=-1 +kerning first=108 second=271 amount=-1 +kerning first=207 second=111 amount=-1 +kerning first=201 second=65 amount=-1 +kerning first=370 second=110 amount=-1 +kerning first=90 second=212 amount=-1 +kerning first=346 second=316 amount=-1 +kerning first=262 second=82 amount=-1 +kerning first=1058 second=1040 amount=-1 +kerning first=382 second=316 amount=-1 +kerning first=196 second=362 amount=-2 +kerning first=105 second=44 amount=-1 +kerning first=313 second=364 amount=-1 +kerning first=69 second=44 amount=-1 +kerning first=379 second=89 amount=-1 +kerning first=86 second=361 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=381 second=65 amount=-1 +kerning first=234 second=104 amount=-1 +kerning first=290 second=66 amount=-1 +kerning first=274 second=206 amount=-1 +kerning first=122 second=361 amount=-1 +kerning first=68 second=274 amount=-1 +kerning first=263 second=361 amount=-1 +kerning first=199 second=89 amount=-1 +kerning first=378 second=104 amount=-1 +kerning first=227 second=361 amount=-1 +kerning first=250 second=97 amount=-1 +kerning first=290 second=122 amount=-1 +kerning first=323 second=71 amount=-1 +kerning first=283 second=46 amount=-2 +kerning first=379 second=117 amount=-1 +kerning first=286 second=97 amount=-1 +kerning first=254 second=122 amount=-1 +kerning first=367 second=121 amount=-1 +kerning first=210 second=72 amount=-1 +kerning first=216 second=76 amount=-1 +kerning first=233 second=102 amount=-1 +kerning first=218 second=122 amount=-1 +kerning first=331 second=121 amount=-1 +kerning first=339 second=8250 amount=-1 +kerning first=269 second=102 amount=-1 +kerning first=214 second=97 amount=-1 +kerning first=295 second=121 amount=-1 +kerning first=282 second=72 amount=-1 +kerning first=106 second=46 amount=-1 +kerning first=259 second=121 amount=-1 +kerning first=8250 second=98 amount=-1 +kerning first=223 second=121 amount=-1 +kerning first=354 second=72 amount=-1 +kerning first=362 second=122 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=187 second=121 amount=-2 +kerning first=1050 second=1108 amount=-1 +kerning first=90 second=8250 amount=-1 +kerning first=210 second=325 amount=-1 +kerning first=356 second=199 amount=-1 +kerning first=199 second=377 amount=-1 +kerning first=375 second=240 amount=-1 +kerning first=66 second=200 amount=-2 +kerning first=70 second=46 amount=-2 +kerning first=69 second=332 amount=-1 +kerning first=316 second=243 amount=-1 +kerning first=113 second=122 amount=-1 +kerning first=235 second=117 amount=-1 +kerning first=69 second=72 amount=-1 +kerning first=315 second=200 amount=-1 +kerning first=77 second=122 amount=-1 +kerning first=199 second=117 amount=-1 +kerning first=87 second=363 amount=-1 +kerning first=116 second=287 amount=-1 +kerning first=8217 second=118 amount=-1 +kerning first=379 second=377 amount=-1 +kerning first=80 second=287 amount=-1 +kerning first=197 second=219 amount=-2 +kerning first=330 second=264 amount=-1 +kerning first=288 second=76 amount=-1 +kerning first=221 second=287 amount=-2 +kerning first=310 second=366 amount=-1 +kerning first=221 second=339 amount=-2 +kerning first=332 second=310 amount=-1 +kerning first=195 second=240 amount=-1 +kerning first=365 second=259 amount=-1 +kerning first=90 second=240 amount=-1 +kerning first=257 second=287 amount=-1 +kerning first=73 second=214 amount=-1 +kerning first=303 second=240 amount=-1 +kerning first=365 second=287 amount=-1 +kerning first=196 second=242 amount=-1 +kerning first=221 second=259 amount=-2 +kerning first=84 second=197 amount=-3 +kerning first=69 second=220 amount=-1 +kerning first=278 second=369 amount=-1 +kerning first=379 second=253 amount=-2 +kerning first=76 second=324 amount=-1 +kerning first=354 second=304 amount=-1 +kerning first=304 second=242 amount=-1 +kerning first=352 second=310 amount=-1 +kerning first=350 second=369 amount=-1 +kerning first=74 second=71 amount=-1 +kerning first=324 second=375 amount=-1 +kerning first=210 second=220 amount=-1 +kerning first=314 second=369 amount=-1 +kerning first=282 second=304 amount=-1 +kerning first=376 second=242 amount=-1 +kerning first=118 second=289 amount=-2 +kerning first=73 second=97 amount=-1 +kerning first=101 second=369 amount=-1 +kerning first=1042 second=1030 amount=-1 +kerning first=65 second=369 amount=-1 +kerning first=210 second=304 amount=-1 +kerning first=200 second=119 amount=-1 +kerning first=206 second=369 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=354 second=220 amount=-1 +kerning first=317 second=330 amount=-1 +kerning first=236 second=119 amount=-1 +kerning first=70 second=74 amount=-2 +kerning first=102 second=107 amount=2 +kerning first=75 second=375 amount=-2 +kerning first=350 second=223 amount=-1 +kerning first=350 second=89 amount=-1 +kerning first=344 second=119 amount=-1 +kerning first=8220 second=230 amount=-1 +kerning first=207 second=228 amount=-1 +kerning first=211 second=74 amount=-1 +kerning first=380 second=119 amount=-1 +kerning first=203 second=203 amount=-1 +kerning first=223 second=307 amount=-1 +kerning first=252 second=375 amount=-1 +kerning first=68 second=330 amount=-1 +kerning first=122 second=331 amount=-1 +kerning first=66 second=228 amount=-1 +kerning first=278 second=223 amount=-1 +kerning first=111 second=375 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=304 second=103 amount=-1 +kerning first=84 second=80 amount=-1 +kerning first=8217 second=216 amount=-1 +kerning first=108 second=355 amount=-1 +kerning first=290 second=298 amount=-1 +kerning first=106 second=253 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=90 second=268 amount=-1 +kerning first=283 second=253 amount=-1 +kerning first=222 second=381 amount=-1 +kerning first=71 second=8217 amount=-1 +kerning first=261 second=108 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=352 second=85 amount=-1 +kerning first=284 second=296 amount=-1 +kerning first=107 second=8217 amount=-1 +kerning first=225 second=108 amount=-1 +kerning first=228 second=363 amount=-1 +kerning first=333 second=108 amount=-1 +kerning first=264 second=363 amount=-1 +kerning first=280 second=85 amount=-1 +kerning first=98 second=318 amount=-1 +kerning first=8220 second=345 amount=-1 +kerning first=79 second=313 amount=-1 +kerning first=315 second=315 amount=-1 +kerning first=1025 second=1063 amount=-1 +kerning first=264 second=335 amount=-1 +kerning first=208 second=85 amount=-1 +kerning first=203 second=318 amount=-1 +kerning first=337 second=105 amount=-1 +kerning first=369 second=108 amount=-1 +kerning first=8250 second=70 amount=-3 +kerning first=66 second=315 amount=-2 +kerning first=1057 second=1038 amount=-1 +kerning first=73 second=245 amount=-1 +kerning first=275 second=318 amount=-1 +kerning first=1061 second=1063 amount=-2 +kerning first=67 second=85 amount=-1 +kerning first=203 second=290 amount=-1 +kerning first=211 second=225 amount=-1 +kerning first=87 second=335 amount=-2 +kerning first=347 second=318 amount=-1 +kerning first=253 second=380 amount=-1 +kerning first=1046 second=1083 amount=-1 +kerning first=289 second=380 amount=-1 +kerning first=283 second=225 amount=-1 +kerning first=192 second=335 amount=-1 +kerning first=347 second=228 amount=-1 +kerning first=90 second=296 amount=-1 +kerning first=325 second=380 amount=-1 +kerning first=116 second=8249 amount=-1 +kerning first=1065 second=1060 amount=-1 +kerning first=368 second=338 amount=-1 +kerning first=248 second=8217 amount=-1 +kerning first=345 second=45 amount=-1 +kerning first=76 second=380 amount=-1 +kerning first=284 second=8217 amount=-1 +kerning first=70 second=225 amount=-1 +kerning first=296 second=338 amount=-1 +kerning first=112 second=380 amount=-1 +kerning first=106 second=225 amount=-1 +kerning first=260 second=338 amount=-1 +kerning first=351 second=228 amount=-1 +kerning first=290 second=270 amount=-1 +kerning first=217 second=380 amount=-1 +kerning first=1107 second=1103 amount=-1 +kerning first=375 second=98 amount=-1 +kerning first=216 second=280 amount=-1 +kerning first=339 second=98 amount=-1 +kerning first=45 second=105 amount=-1 +kerning first=101 second=251 amount=-1 +kerning first=86 second=235 amount=-1 +kerning first=344 second=228 amount=-1 +kerning first=288 second=280 amount=-1 +kerning first=122 second=235 amount=-1 +kerning first=206 second=251 amount=-1 +kerning first=117 second=303 amount=-1 +kerning first=231 second=98 amount=-1 +kerning first=314 second=251 amount=-1 +kerning first=76 second=206 amount=-1 +kerning first=1105 second=1093 amount=-1 +kerning first=195 second=98 amount=-1 +kerning first=236 second=228 amount=-1 +kerning first=84 second=225 amount=-2 +kerning first=278 second=251 amount=-1 +kerning first=268 second=270 amount=-1 +kerning first=263 second=235 amount=-1 +kerning first=45 second=303 amount=-1 +kerning first=303 second=98 amount=-1 +kerning first=200 second=228 amount=-1 +kerning first=120 second=225 amount=-1 +kerning first=376 second=270 amount=-1 +kerning first=267 second=98 amount=-1 +kerning first=350 second=251 amount=-1 +kerning first=8217 second=255 amount=-1 +kerning first=284 second=370 amount=-1 +kerning first=288 second=218 amount=-1 +kerning first=305 second=46 amount=-1 +kerning first=356 second=370 amount=-1 +kerning first=216 second=218 amount=-1 +kerning first=283 second=102 amount=-1 +kerning first=321 second=289 amount=-1 +kerning first=256 second=355 amount=-1 +kerning first=102 second=273 amount=-1 +kerning first=369 second=225 amount=-1 +kerning first=313 second=325 amount=-1 +kerning first=1045 second=1070 amount=-1 +kerning first=106 second=102 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=233 second=46 amount=-2 +kerning first=115 second=355 amount=-1 +kerning first=275 second=303 amount=-1 +kerning first=221 second=83 amount=-2 +kerning first=364 second=81 amount=-1 +kerning first=365 second=363 amount=-1 +kerning first=267 second=112 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=232 second=318 amount=-1 +kerning first=231 second=112 amount=-1 +kerning first=268 second=318 amount=-1 +kerning first=295 second=8221 amount=-2 +kerning first=195 second=112 amount=-1 +kerning first=344 second=214 amount=-1 +kerning first=90 second=112 amount=-1 +kerning first=260 second=279 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=234 second=102 amount=-1 +kerning first=277 second=311 amount=-1 +kerning first=200 second=214 amount=-1 +kerning first=351 second=259 amount=-1 +kerning first=371 second=235 amount=-1 +kerning first=366 second=105 amount=-1 +kerning first=8250 second=370 amount=-2 +kerning first=203 second=117 amount=-1 +kerning first=220 second=81 amount=-1 +kerning first=278 second=67 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=375 second=112 amount=-1 +kerning first=8217 second=241 amount=-1 +kerning first=206 second=67 amount=-1 +kerning first=279 second=259 amount=-1 +kerning first=376 second=304 amount=-1 +kerning first=256 second=81 amount=-1 +kerning first=117 second=105 amount=-1 +kerning first=277 second=249 amount=-1 +kerning first=282 second=346 amount=-1 +kerning first=268 second=100 amount=-1 +kerning first=76 second=282 amount=-1 +kerning first=1059 second=1098 amount=-1 +kerning first=313 second=249 amount=-1 +kerning first=45 second=379 amount=-2 +kerning first=304 second=100 amount=-1 +kerning first=1045 second=1050 amount=-1 +kerning first=71 second=350 amount=-1 +kerning first=350 second=327 amount=-1 +kerning first=205 second=249 amount=-1 +kerning first=210 second=346 amount=-1 +kerning first=370 second=275 amount=-1 +kerning first=201 second=230 amount=-1 +kerning first=241 second=249 amount=-1 +kerning first=376 second=100 amount=-2 +kerning first=86 second=45 amount=-3 +kerning first=212 second=350 amount=-1 +kerning first=216 second=204 amount=-1 +kerning first=222 second=379 amount=-1 +kerning first=1043 second=1102 amount=-1 +kerning first=354 second=346 amount=-2 +kerning first=196 second=100 amount=-1 +kerning first=102 second=103 amount=-1 +kerning first=288 second=204 amount=-1 +kerning first=262 second=275 amount=-1 +kerning first=223 second=107 amount=-1 +kerning first=356 second=350 amount=-2 +kerning first=187 second=107 amount=-1 +kerning first=284 second=350 amount=-1 +kerning first=313 second=305 amount=-1 +kerning first=376 second=256 amount=-3 +kerning first=325 second=268 amount=-1 +kerning first=277 second=305 amount=-1 +kerning first=216 second=260 amount=-2 +kerning first=118 second=107 amount=-1 +kerning first=264 second=223 amount=-1 +kerning first=381 second=339 amount=-1 +kerning first=84 second=211 amount=-1 +kerning first=1070 second=1039 amount=-1 +kerning first=82 second=107 amount=-1 +kerning first=268 second=256 amount=-2 +kerning first=381 second=230 amount=-1 +kerning first=288 second=260 amount=-1 +kerning first=205 second=263 amount=-1 +kerning first=370 second=289 amount=-2 +kerning first=221 second=210 amount=-1 +kerning first=381 second=79 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=280 second=218 amount=-1 +kerning first=1059 second=1084 amount=-2 +kerning first=350 second=313 amount=-1 +kerning first=217 second=268 amount=-1 +kerning first=381 second=353 amount=-1 +kerning first=234 second=8217 amount=-1 +kerning first=221 second=192 amount=-3 +kerning first=45 second=365 amount=-1 +kerning first=75 second=218 amount=-1 +kerning first=278 second=313 amount=-1 +kerning first=270 second=8217 amount=-1 +kerning first=381 second=244 amount=-1 +kerning first=76 second=268 amount=-1 +kerning first=264 second=237 amount=-1 +kerning first=80 second=192 amount=-2 +kerning first=121 second=275 amount=-1 +kerning first=82 second=121 amount=-1 +kerning first=197 second=334 amount=-1 +kerning first=366 second=379 amount=-1 +kerning first=85 second=289 amount=-2 +kerning first=87 second=237 amount=-1 +kerning first=85 second=275 amount=-1 +kerning first=121 second=289 amount=-2 +kerning first=377 second=334 amount=-1 +kerning first=366 second=365 amount=-1 +kerning first=69 second=346 amount=-1 +kerning first=80 second=315 amount=-1 +kerning first=226 second=289 amount=-1 +kerning first=330 second=365 amount=-1 +kerning first=221 second=315 amount=-1 +kerning first=262 second=289 amount=-1 +kerning first=201 second=353 amount=-1 +kerning first=298 second=289 amount=-1 +kerning first=258 second=365 amount=-1 +kerning first=278 second=327 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=1069 second=1051 amount=-1 +kerning first=257 second=371 amount=-1 +kerning first=101 second=257 amount=-1 +kerning first=371 second=277 amount=-1 +kerning first=380 second=8249 amount=-2 +kerning first=364 second=347 amount=-1 +kerning first=187 second=381 amount=-2 +kerning first=328 second=347 amount=-1 +kerning first=90 second=302 amount=-1 +kerning first=324 second=251 amount=-1 +kerning first=344 second=8249 amount=-2 +kerning first=75 second=336 amount=-1 +kerning first=344 second=351 amount=-1 +kerning first=367 second=367 amount=-1 +kerning first=325 second=212 amount=-1 +kerning first=201 second=79 amount=-1 +kerning first=315 second=69 amount=-1 +kerning first=86 second=277 amount=-2 +kerning first=376 second=114 amount=-1 +kerning first=295 second=367 amount=-1 +kerning first=380 second=351 amount=-1 +kerning first=331 second=367 amount=-1 +kerning first=207 second=267 amount=-1 +kerning first=200 second=351 amount=-1 +kerning first=1058 second=1096 amount=-1 +kerning first=350 second=257 amount=-1 +kerning first=259 second=367 amount=-1 +kerning first=8217 second=378 amount=-1 +kerning first=217 second=212 amount=-1 +kerning first=8217 second=249 amount=-1 +kerning first=278 second=257 amount=-1 +kerning first=76 second=212 amount=-1 +kerning first=236 second=351 amount=-1 +kerning first=314 second=257 amount=-1 +kerning first=268 second=114 amount=-1 +kerning first=187 second=367 amount=-1 +kerning first=362 second=71 amount=-1 +kerning first=333 second=382 amount=-1 +kerning first=227 second=291 amount=-1 +kerning first=267 second=316 amount=-1 +kerning first=74 second=216 amount=-1 +kerning first=103 second=109 amount=-1 +kerning first=369 second=382 amount=-1 +kerning first=303 second=316 amount=-1 +kerning first=82 second=367 amount=-1 +kerning first=122 second=291 amount=-1 +kerning first=339 second=316 amount=-1 +kerning first=86 second=291 amount=-2 +kerning first=375 second=316 amount=-1 +kerning first=99 second=261 amount=-1 +kerning first=8217 second=263 amount=-2 +kerning first=366 second=113 amount=-1 +kerning first=102 second=267 amount=-1 +kerning first=8216 second=253 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=364 second=197 amount=-2 +kerning first=314 second=271 amount=-1 +kerning first=256 second=347 amount=-1 +kerning first=102 second=281 amount=-1 +kerning first=85 second=269 amount=-1 +kerning first=262 second=171 amount=-2 +kerning first=269 second=314 amount=-1 +kerning first=220 second=347 amount=-1 +kerning first=231 second=228 amount=-1 +kerning first=115 second=361 amount=-1 +kerning first=233 second=314 amount=-1 +kerning first=207 second=281 amount=-1 +kerning first=380 second=337 amount=-1 +kerning first=1058 second=1082 amount=-1 +kerning first=334 second=171 amount=-1 +kerning first=256 second=361 amount=-1 +kerning first=376 second=326 amount=-1 +kerning first=115 second=347 amount=-1 +kerning first=121 second=269 amount=-1 +kerning first=344 second=337 amount=-1 +kerning first=370 second=171 amount=-3 +kerning first=220 second=361 amount=-1 +kerning first=305 second=314 amount=-1 +kerning first=262 second=269 amount=-1 +kerning first=286 second=8221 amount=-1 +kerning first=85 second=171 amount=-3 +kerning first=328 second=361 amount=-1 +kerning first=365 second=371 amount=-1 +kerning first=121 second=171 amount=-2 +kerning first=195 second=316 amount=-1 +kerning first=323 second=216 amount=-1 +kerning first=302 second=67 amount=-1 +kerning first=232 second=326 amount=-1 +kerning first=298 second=269 amount=-1 +kerning first=231 second=316 amount=-1 +kerning first=1069 second=1037 amount=-1 +kerning first=250 second=8221 amount=-2 +kerning first=226 second=171 amount=-1 +kerning first=364 second=361 amount=-1 +kerning first=8218 second=251 amount=-1 +kerning first=268 second=326 amount=-1 +kerning first=313 second=45 amount=-1 +kerning first=116 second=103 amount=-1 +kerning first=1024 second=1060 amount=-1 +kerning first=201 second=224 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=67 second=331 amount=-1 +kerning first=230 second=252 amount=-1 +kerning first=76 second=78 amount=-1 +kerning first=266 second=252 amount=-1 +kerning first=317 second=70 amount=-1 +kerning first=381 second=224 amount=-1 +kerning first=1057 second=1051 amount=-1 +kerning first=262 second=227 amount=-1 +kerning first=344 second=226 amount=-1 +kerning first=275 second=46 amount=-2 +kerning first=82 second=101 amount=-1 +kerning first=118 second=101 amount=-1 +kerning first=213 second=201 amount=-1 +kerning first=89 second=252 amount=-1 +kerning first=121 second=227 amount=-2 +kerning first=382 second=246 amount=-1 +kerning first=217 second=226 amount=-2 +kerning first=8218 second=379 amount=-1 +kerning first=253 second=226 amount=-2 +kerning first=310 second=246 amount=-1 +kerning first=313 second=207 amount=-1 +kerning first=222 second=317 amount=-1 +kerning first=84 second=382 amount=-2 +kerning first=289 second=226 amount=-1 +kerning first=365 second=103 amount=-1 +kerning first=8216 second=248 amount=-1 +kerning first=325 second=226 amount=-1 +kerning first=284 second=356 amount=-1 +kerning first=100 second=311 amount=-1 +kerning first=211 second=362 amount=-1 +kerning first=371 second=291 amount=-1 +kerning first=302 second=252 amount=-1 +kerning first=284 second=90 amount=-1 +kerning first=335 second=291 amount=-1 +kerning first=338 second=252 amount=-1 +kerning first=257 second=103 amount=-1 +kerning first=45 second=317 amount=-3 +kerning first=374 second=252 amount=-1 +kerning first=221 second=103 amount=-2 +kerning first=81 second=317 amount=-1 +kerning first=356 second=90 amount=-1 +kerning first=263 second=291 amount=-1 +kerning first=1056 second=1067 amount=-1 +kerning first=298 second=213 amount=-1 +kerning first=8222 second=86 amount=-3 +kerning first=262 second=213 amount=-2 +kerning first=327 second=283 amount=-1 +kerning first=68 second=84 amount=-1 +kerning first=370 second=213 amount=-1 +kerning first=278 second=109 amount=-1 +kerning first=80 second=89 amount=-1 +kerning first=75 second=115 amount=-1 +kerning first=71 second=370 amount=-1 +kerning first=317 second=84 amount=-1 +kerning first=71 second=90 amount=-1 +kerning first=212 second=370 amount=-1 +kerning first=350 second=109 amount=-1 +kerning first=8222 second=220 amount=-2 +kerning first=314 second=109 amount=-1 +kerning first=101 second=109 amount=-1 +kerning first=252 second=115 amount=-1 +kerning first=68 second=70 amount=-1 +kerning first=272 second=8249 amount=-1 +kerning first=370 second=227 amount=-2 +kerning first=111 second=115 amount=-1 +kerning first=313 second=193 amount=-1 +kerning first=1090 second=1113 amount=-1 +kerning first=334 second=227 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=1054 second=1113 amount=-1 +kerning first=200 second=8249 amount=-1 +kerning first=298 second=227 amount=-1 +kerning first=203 second=334 amount=-1 +kerning first=310 second=232 amount=-1 +kerning first=232 second=44 amount=-2 +kerning first=248 second=104 amount=-1 +kerning first=196 second=368 amount=-2 +kerning first=72 second=339 amount=-1 +kerning first=382 second=232 amount=-1 +kerning first=304 second=44 amount=-1 +kerning first=366 second=303 amount=-1 +kerning first=324 second=115 amount=-1 +kerning first=85 second=213 amount=-1 +kerning first=268 second=44 amount=-1 +kerning first=216 second=70 amount=-1 +kerning first=66 second=323 amount=-2 +kerning first=1075 second=1113 amount=-1 +kerning first=282 second=78 amount=-1 +kerning first=295 second=115 amount=-1 +kerning first=368 second=120 amount=-1 +kerning first=102 second=318 amount=1 +kerning first=331 second=115 amount=-1 +kerning first=268 second=368 amount=-1 +kerning first=210 second=78 amount=-1 +kerning first=378 second=118 amount=-1 +kerning first=82 second=375 amount=-1 +kerning first=69 second=78 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=311 second=248 amount=-1 +kerning first=288 second=70 amount=-1 +kerning first=1057 second=1080 amount=-1 +kerning first=376 second=368 amount=-1 +kerning first=224 second=120 amount=-1 +kerning first=315 second=323 amount=-1 +kerning first=350 second=201 amount=-1 +kerning first=234 second=118 amount=-1 +kerning first=323 second=113 amount=-1 +kerning first=99 second=253 amount=-1 +kerning first=379 second=75 amount=-1 +kerning first=201 second=85 amount=-1 +kerning first=290 second=80 amount=-1 +kerning first=198 second=118 amount=-1 +kerning first=287 second=113 amount=-1 +kerning first=278 second=201 amount=-1 +kerning first=236 second=106 amount=-1 +kerning first=204 second=253 amount=-1 +kerning first=86 second=73 amount=-1 +kerning first=375 second=246 amount=-1 +kerning first=290 second=278 amount=-1 +kerning first=240 second=253 amount=-1 +kerning first=303 second=246 amount=-1 +kerning first=334 second=68 amount=-1 +kerning first=298 second=99 amount=-1 +kerning first=267 second=246 amount=-1 +kerning first=231 second=246 amount=-1 +kerning first=262 second=68 amount=-1 +kerning first=69 second=290 amount=-1 +kerning first=298 second=283 amount=-1 +kerning first=187 second=196 amount=-2 +kerning first=196 second=108 amount=-1 +kerning first=217 second=338 amount=-1 +kerning first=262 second=283 amount=-1 +kerning first=379 second=335 amount=-1 +kerning first=377 second=328 amount=-1 +kerning first=258 second=275 amount=-1 +kerning first=296 second=380 amount=-1 +kerning first=268 second=108 amount=-1 +kerning first=71 second=193 amount=-1 +kerning first=332 second=380 amount=-1 +kerning first=232 second=108 amount=-1 +kerning first=76 second=338 amount=-1 +kerning first=8216 second=362 amount=-1 +kerning first=381 second=286 amount=-1 +kerning first=193 second=103 amount=-1 +kerning first=199 second=335 amount=-1 +kerning first=332 second=120 amount=-1 +kerning first=233 second=110 amount=-1 +kerning first=370 second=283 amount=-1 +kerning first=269 second=110 amount=-1 +kerning first=192 second=231 amount=-1 +kerning first=363 second=105 amount=-1 +kerning first=205 second=287 amount=-1 +kerning first=1040 second=1118 amount=-1 +kerning first=201 second=286 amount=-1 +kerning first=352 second=331 amount=-1 +kerning first=82 second=115 amount=-1 +kerning first=284 second=193 amount=-1 +kerning first=87 second=231 amount=-2 +kerning first=324 second=255 amount=-1 +kerning first=1050 second=1038 amount=-1 +kerning first=208 second=65 amount=-2 +kerning first=280 second=331 amount=-1 +kerning first=212 second=193 amount=-2 +kerning first=316 second=331 amount=-1 +kerning first=223 second=115 amount=-1 +kerning first=280 second=65 amount=-1 +kerning first=259 second=115 amount=-1 +kerning first=264 second=231 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=352 second=65 amount=-2 +kerning first=1075 second=1083 amount=-1 +kerning first=103 second=331 amount=-1 +kerning first=83 second=380 amount=-1 +kerning first=187 second=115 amount=-1 +kerning first=325 second=338 amount=-1 +kerning first=354 second=78 amount=-1 +kerning first=356 second=193 amount=-3 +kerning first=274 second=302 amount=-1 +kerning first=313 second=255 amount=-1 +kerning first=371 second=347 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=1055 second=1073 amount=-1 +kerning first=366 second=250 amount=-1 +kerning first=277 second=255 amount=-1 +kerning first=335 second=347 amount=-1 +kerning first=1102 second=1076 amount=-1 +kerning first=202 second=302 amount=-1 +kerning first=241 second=255 amount=-1 +kerning first=354 second=352 amount=-2 +kerning first=205 second=255 amount=-1 +kerning first=263 second=347 amount=-1 +kerning first=1074 second=1078 amount=-1 +kerning first=258 second=250 amount=-1 +kerning first=227 second=347 amount=-1 +kerning first=100 second=255 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=365 second=307 amount=-1 +kerning first=250 second=371 amount=-1 +kerning first=346 second=8250 amount=-1 +kerning first=330 second=250 amount=-1 +kerning first=84 second=326 amount=-1 +kerning first=122 second=347 amount=-1 +kerning first=1038 second=1078 amount=-2 +kerning first=45 second=250 amount=-1 +kerning first=205 second=378 amount=-1 +kerning first=380 second=249 amount=-1 +kerning first=69 second=352 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=1039 second=1077 amount=-1 +kerning first=117 second=250 amount=-1 +kerning first=277 second=378 amount=-1 +kerning first=278 second=377 amount=-1 +kerning first=76 second=332 amount=-1 +kerning first=213 second=257 amount=-1 +kerning first=249 second=257 amount=-1 +kerning first=367 second=8220 amount=-2 +kerning first=121 second=283 amount=-1 +kerning first=193 second=267 amount=-1 +kerning first=269 second=328 amount=-1 +kerning first=331 second=8220 amount=-2 +kerning first=85 second=283 amount=-1 +kerning first=346 second=302 amount=-1 +kerning first=1060 second=1047 amount=-1 +kerning first=210 second=352 amount=-1 +kerning first=363 second=103 amount=-1 +kerning first=295 second=8220 amount=-2 +kerning first=100 second=378 amount=-1 +kerning first=195 second=366 amount=-2 +kerning first=378 second=333 amount=-1 +kerning first=259 second=8220 amount=-1 +kerning first=267 second=106 amount=-1 +kerning first=217 second=332 amount=-1 +kerning first=1070 second=1045 amount=-1 +kerning first=223 second=8220 amount=-1 +kerning first=203 second=66 amount=-1 +kerning first=303 second=106 amount=1 +kerning first=350 second=377 amount=-1 +kerning first=325 second=332 amount=-1 +kerning first=317 second=288 amount=-1 +kerning first=87 second=287 amount=-2 +kerning first=1067 second=1092 amount=-1 +kerning first=231 second=106 amount=-1 +kerning first=228 second=287 amount=-1 +kerning first=82 second=8220 amount=-3 +kerning first=192 second=287 amount=-1 +kerning first=46 second=8220 amount=-3 +kerning first=256 second=87 amount=-3 +kerning first=74 second=113 amount=-1 +kerning first=339 second=106 amount=-1 +kerning first=281 second=254 amount=-1 +kerning first=264 second=287 amount=-1 +kerning first=375 second=106 amount=-1 +kerning first=202 second=85 amount=-1 +kerning first=86 second=347 amount=-2 +kerning first=84 second=217 amount=-1 +kerning first=304 second=262 amount=-1 +kerning first=336 second=287 amount=-1 +kerning first=258 second=99 amount=-1 +kerning first=364 second=243 amount=-1 +kerning first=79 second=87 amount=-1 +kerning first=87 second=100 amount=-2 +kerning first=366 second=99 amount=-1 +kerning first=344 second=281 amount=-1 +kerning first=376 second=262 amount=-1 +kerning first=330 second=99 amount=-1 +kerning first=380 second=281 amount=-1 +kerning first=83 second=120 amount=-1 +kerning first=192 second=263 amount=-1 +kerning first=311 second=242 amount=-1 +kerning first=220 second=243 amount=-1 +kerning first=8217 second=199 amount=-1 +kerning first=256 second=243 amount=-1 +kerning first=268 second=197 amount=-2 +kerning first=90 second=198 amount=-1 +kerning first=66 second=119 amount=-2 +kerning first=211 second=354 amount=-1 +kerning first=8220 second=331 amount=-1 +kerning first=268 second=374 amount=-1 +kerning first=376 second=197 amount=-3 +kerning first=207 second=119 amount=-1 +kerning first=85 second=334 amount=-1 +kerning first=195 second=254 amount=-1 +kerning first=243 second=119 amount=-1 +kerning first=196 second=374 amount=-3 +kerning first=83 second=324 amount=-1 +kerning first=1044 second=1054 amount=-1 +kerning first=279 second=119 amount=-1 +kerning first=249 second=369 amount=-1 +kerning first=288 second=274 amount=-1 +kerning first=315 second=119 amount=-1 +kerning first=78 second=289 amount=-1 +kerning first=317 second=344 amount=-1 +kerning first=351 second=119 amount=-1 +kerning first=321 second=369 amount=-1 +kerning first=119 second=324 amount=-1 +kerning first=262 second=334 amount=-2 +kerning first=218 second=74 amount=-1 +kerning first=331 second=118 amount=-1 +kerning first=379 second=279 amount=-1 +kerning first=68 second=344 amount=-1 +kerning first=333 second=46 amount=-2 +kerning first=8216 second=375 amount=-1 +kerning first=67 second=339 amount=-1 +kerning first=263 second=229 amount=-1 +kerning first=103 second=339 amount=-1 +kerning first=218 second=284 amount=-1 +kerning first=316 second=339 amount=-1 +kerning first=77 second=284 amount=-1 +kerning first=368 second=324 amount=-1 +kerning first=371 second=229 amount=-1 +kerning first=1057 second=1024 amount=-1 +kerning first=8222 second=226 amount=-1 +kerning first=262 second=219 amount=-1 +kerning first=302 second=244 amount=-1 +kerning first=241 second=8217 amount=-2 +kerning first=69 second=86 amount=-1 +kerning first=277 second=8217 amount=-1 +kerning first=205 second=199 amount=-1 +kerning first=374 second=244 amount=-2 +kerning first=313 second=8217 amount=-2 +kerning first=350 second=209 amount=-1 +kerning first=323 second=264 amount=-1 +kerning first=354 second=234 amount=-2 +kerning first=367 second=107 amount=-1 +kerning first=282 second=86 amount=-1 +kerning first=84 second=66 amount=-1 +kerning first=313 second=199 amount=-1 +kerning first=338 second=254 amount=-1 +kerning first=100 second=8217 amount=-1 +kerning first=1049 second=1089 amount=-1 +kerning first=210 second=86 amount=-1 +kerning first=73 second=111 amount=-1 +kerning first=370 second=334 amount=-1 +kerning first=252 second=121 amount=-1 +kerning first=272 second=82 amount=-1 +kerning first=68 second=76 amount=-1 +kerning first=212 second=364 amount=-1 +kerning first=375 second=254 amount=-1 +kerning first=219 second=289 amount=-2 +kerning first=206 second=289 amount=-1 +kerning first=200 second=241 amount=-1 +kerning first=255 second=289 amount=-2 +kerning first=1024 second=1041 amount=-1 +kerning first=89 second=244 amount=-2 +kerning first=111 second=121 amount=-1 +kerning first=71 second=364 amount=-1 +kerning first=377 second=205 amount=-1 +kerning first=75 second=121 amount=-2 +kerning first=327 second=289 amount=-1 +kerning first=231 second=254 amount=-1 +kerning first=278 second=209 amount=-1 +kerning first=266 second=380 amount=-1 +kerning first=194 second=244 amount=-1 +kerning first=363 second=289 amount=-1 +kerning first=267 second=254 amount=-1 +kerning first=284 second=364 amount=-1 +kerning first=303 second=254 amount=-1 +kerning first=266 second=244 amount=-1 +kerning first=339 second=254 amount=-1 +kerning first=202 second=296 amount=-1 +kerning first=278 second=117 amount=-1 +kerning first=76 second=72 amount=-1 +kerning first=362 second=225 amount=-2 +kerning first=286 second=200 amount=-1 +kerning first=72 second=251 amount=-1 +kerning first=274 second=296 amount=-1 +kerning first=350 second=117 amount=-1 +kerning first=317 second=76 amount=-1 +kerning first=99 second=102 amount=-1 +kerning first=314 second=117 amount=-1 +kerning first=214 second=200 amount=-1 +kerning first=346 second=296 amount=-1 +kerning first=315 second=85 amount=-1 +kerning first=333 second=122 amount=-1 +kerning first=218 second=225 amount=-2 +kerning first=108 second=251 amount=-1 +kerning first=313 second=370 amount=-1 +kerning first=280 second=71 amount=-1 +kerning first=249 second=251 amount=-1 +kerning first=324 second=121 amount=-1 +kerning first=221 second=97 amount=-2 +kerning first=290 second=225 amount=-1 +kerning first=321 second=251 amount=-1 +kerning first=310 second=240 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=365 second=97 amount=-1 +kerning first=80 second=245 amount=-1 +kerning first=1054 second=1063 amount=-1 +kerning first=240 second=46 amount=-2 +kerning first=249 second=103 amount=-1 +kerning first=101 second=117 amount=-1 +kerning first=1043 second=1108 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=257 second=363 amount=-1 +kerning first=382 second=240 amount=-1 +kerning first=334 second=219 amount=-1 +kerning first=206 second=117 amount=-1 +kerning first=332 second=206 amount=-1 +kerning first=8250 second=84 amount=-2 +kerning first=221 second=245 amount=-2 +kerning first=87 second=83 amount=-2 +kerning first=219 second=337 amount=-1 +kerning first=315 second=214 amount=-1 +kerning first=288 second=330 amount=-1 +kerning first=192 second=83 amount=-2 +kerning first=222 second=194 amount=-2 +kerning first=90 second=310 amount=-1 +kerning first=207 second=214 amount=-1 +kerning first=81 second=194 amount=-2 +kerning first=211 second=298 amount=-1 +kerning first=77 second=250 amount=-1 +kerning first=8220 second=65 amount=-4 +kerning first=1069 second=1043 amount=-1 +kerning first=1038 second=1082 amount=-2 +kerning first=362 second=284 amount=-1 +kerning first=289 second=230 amount=-1 +kerning first=108 second=369 amount=-1 +kerning first=250 second=259 amount=-1 +kerning first=259 second=375 amount=-1 +kerning first=1058 second=1088 amount=-1 +kerning first=72 second=369 amount=-1 +kerning first=214 second=259 amount=-1 +kerning first=223 second=375 amount=-1 +kerning first=272 second=77 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=187 second=375 amount=-2 +kerning first=286 second=259 amount=-1 +kerning first=377 second=116 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=200 second=77 amount=-1 +kerning first=205 second=338 amount=-1 +kerning first=80 second=313 amount=-1 +kerning first=367 second=375 amount=-1 +kerning first=203 second=304 amount=-1 +kerning first=269 second=116 amount=-1 +kerning first=331 second=375 amount=-1 +kerning first=67 second=71 amount=-2 +kerning first=233 second=116 amount=-1 +kerning first=295 second=375 amount=-1 +kerning first=1025 second=1049 amount=-1 +kerning first=366 second=194 amount=-2 +kerning first=332 second=220 amount=-1 +kerning first=1036 second=1108 amount=-1 +kerning first=327 second=233 amount=-1 +kerning first=332 second=330 amount=-1 +kerning first=291 second=233 amount=-1 +kerning first=356 second=291 amount=-2 +kerning first=88 second=214 amount=-1 +kerning first=260 second=220 amount=-2 +kerning first=88 second=71 amount=-1 +kerning first=203 second=298 amount=-1 +kerning first=284 second=291 amount=-1 +kerning first=74 second=337 amount=-1 +kerning first=248 second=291 amount=-1 +kerning first=78 second=350 amount=-1 +kerning first=315 second=194 amount=-1 +kerning first=212 second=291 amount=-1 +kerning first=70 second=248 amount=-1 +kerning first=228 second=171 amount=-1 +kerning first=87 second=97 amount=-2 +kerning first=107 second=291 amount=-1 +kerning first=219 second=350 amount=-1 +kerning first=377 second=213 amount=-1 +kerning first=84 second=304 amount=-1 +kerning first=198 second=334 amount=-1 +kerning first=71 second=291 amount=-1 +kerning first=274 second=324 amount=-1 +kerning first=336 second=97 amount=-1 +kerning first=277 second=110 amount=-1 +kerning first=260 second=84 amount=-3 +kerning first=382 second=324 amount=-1 +kerning first=313 second=110 amount=-1 +kerning first=234 second=311 amount=-1 +kerning first=264 second=97 amount=-1 +kerning first=198 second=311 amount=-1 +kerning first=269 second=380 amount=-1 +kerning first=193 second=71 amount=-1 +kerning first=323 second=337 amount=-1 +kerning first=225 second=318 amount=-1 +kerning first=266 second=68 amount=-1 +kerning first=1027 second=1101 amount=-1 +kerning first=327 second=350 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=202 second=324 amount=-1 +kerning first=225 second=44 amount=-1 +kerning first=255 second=104 amount=-1 +kerning first=346 second=98 amount=-1 +kerning first=1113 second=1081 amount=-1 +kerning first=260 second=234 amount=-1 +kerning first=346 second=78 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=296 second=234 amount=-1 +kerning first=280 second=381 amount=-1 +kerning first=261 second=44 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=187 second=260 amount=-2 +kerning first=274 second=78 amount=-1 +kerning first=8218 second=363 amount=-1 +kerning first=234 second=187 amount=-1 +kerning first=352 second=381 amount=-1 +kerning first=356 second=277 amount=-2 +kerning first=197 second=213 amount=-1 +kerning first=363 second=104 amount=-1 +kerning first=202 second=78 amount=-1 +kerning first=202 second=310 amount=-1 +kerning first=120 second=44 amount=-1 +kerning first=119 second=234 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=84 second=44 amount=-3 +kerning first=198 second=325 amount=-1 +kerning first=291 second=104 amount=-1 +kerning first=192 second=111 amount=-1 +kerning first=110 second=351 amount=-1 +kerning first=269 second=227 amount=-1 +kerning first=346 second=310 amount=-1 +kerning first=74 second=351 amount=-1 +kerning first=233 second=227 amount=-1 +kerning first=264 second=111 amount=-1 +kerning first=193 second=85 amount=-2 +kerning first=66 second=194 amount=-3 +kerning first=198 second=81 amount=-1 +kerning first=274 second=310 amount=-1 +kerning first=214 second=377 amount=-1 +kerning first=369 second=44 amount=-1 +kerning first=266 second=257 amount=-1 +kerning first=88 second=85 amount=-1 +kerning first=333 second=44 amount=-2 +kerning first=337 second=303 amount=-1 +kerning first=198 second=201 amount=-1 +kerning first=211 second=70 amount=-1 +kerning first=377 second=227 amount=-1 +kerning first=87 second=111 amount=-2 +kerning first=83 second=220 amount=-1 +kerning first=107 second=277 amount=-1 +kerning first=352 second=367 amount=-1 +kerning first=119 second=248 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=220 second=235 amount=-1 +kerning first=78 second=118 amount=-1 +kerning first=275 second=380 amount=-1 +kerning first=286 second=377 amount=-1 +kerning first=256 second=235 amount=-1 +kerning first=219 second=118 amount=-1 +kerning first=74 second=105 amount=-1 +kerning first=251 second=8220 amount=-2 +kerning first=44 second=8249 amount=-1 +kerning first=347 second=380 amount=-1 +kerning first=206 second=253 amount=-1 +kerning first=303 second=231 amount=-1 +kerning first=1027 second=1087 amount=-1 +kerning first=364 second=235 amount=-1 +kerning first=310 second=338 amount=-1 +kerning first=351 second=367 amount=-1 +kerning first=110 second=8220 amount=-2 +kerning first=378 second=283 amount=-1 +kerning first=236 second=287 amount=-1 +kerning first=290 second=361 amount=-1 +kerning first=200 second=287 amount=-1 +kerning first=377 second=241 amount=-1 +kerning first=203 second=380 amount=-1 +kerning first=203 second=270 amount=-1 +kerning first=204 second=287 amount=-1 +kerning first=83 second=112 amount=-1 +kerning first=272 second=287 amount=-1 +kerning first=233 second=108 amount=-1 +kerning first=220 second=193 amount=-2 +kerning first=335 second=120 amount=-1 +kerning first=380 second=287 amount=-1 +kerning first=317 second=249 amount=-1 +kerning first=269 second=241 amount=-1 +kerning first=79 second=193 amount=-2 +kerning first=344 second=287 amount=-1 +kerning first=365 second=8249 amount=-1 +kerning first=233 second=241 amount=-1 +kerning first=296 second=248 amount=-1 +kerning first=257 second=8249 amount=-1 +kerning first=364 second=193 amount=-2 +kerning first=260 second=248 amount=-1 +kerning first=221 second=8249 amount=-3 +kerning first=377 second=255 amount=-2 +kerning first=346 second=352 amount=-1 +kerning first=333 second=318 amount=-1 +kerning first=368 second=112 amount=-1 +kerning first=369 second=318 amount=-1 +kerning first=1027 second=1073 amount=-1 +kerning first=305 second=255 amount=-1 +kerning first=115 second=251 amount=-1 +kerning first=296 second=112 amount=-1 +kerning first=1063 second=1073 amount=-1 +kerning first=256 second=221 amount=-3 +kerning first=269 second=255 amount=-1 +kerning first=87 second=353 amount=-2 +kerning first=260 second=112 amount=-1 +kerning first=1051 second=1104 amount=-1 +kerning first=233 second=255 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=260 second=262 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=296 second=262 amount=-1 +kerning first=378 second=311 amount=-1 +kerning first=119 second=112 amount=-1 +kerning first=79 second=221 amount=-1 +kerning first=202 second=338 amount=-1 +kerning first=224 second=98 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=8218 second=377 amount=-1 +kerning first=79 second=207 amount=-1 +kerning first=240 second=314 amount=-1 +kerning first=262 second=74 amount=-1 +kerning first=260 second=98 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=79 second=379 amount=-1 +kerning first=334 second=74 amount=-1 +kerning first=202 second=352 amount=-1 +kerning first=370 second=74 amount=-1 +kerning first=203 second=366 amount=-1 +kerning first=310 second=352 amount=-1 +kerning first=119 second=98 amount=-1 +kerning first=251 second=105 amount=-1 +kerning first=274 second=352 amount=-1 +kerning first=83 second=98 amount=-1 +kerning first=287 second=105 amount=-1 +kerning first=368 second=81 amount=-1 +kerning first=250 second=307 amount=-1 +kerning first=103 second=224 amount=-1 +kerning first=210 second=282 amount=-1 +kerning first=365 second=8221 amount=-2 +kerning first=67 second=224 amount=-1 +kerning first=257 second=8221 amount=-1 +kerning first=72 second=242 amount=-1 +kerning first=98 second=106 amount=-1 +kerning first=208 second=224 amount=-1 +kerning first=199 second=81 amount=-2 +kerning first=69 second=282 amount=-1 +kerning first=347 second=106 amount=-1 +kerning first=280 second=224 amount=-1 +kerning first=233 second=98 amount=-1 +kerning first=235 second=355 amount=-1 +kerning first=217 second=346 amount=-1 +kerning first=108 second=333 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=379 second=81 amount=-1 +kerning first=275 second=106 amount=-1 +kerning first=72 second=333 amount=-1 +kerning first=222 second=230 amount=-1 +kerning first=289 second=232 amount=-1 +kerning first=81 second=230 amount=-1 +kerning first=199 second=243 amount=-1 +kerning first=89 second=101 amount=-2 +kerning first=117 second=230 amount=-1 +kerning first=325 second=346 amount=-1 +kerning first=8250 second=326 amount=-1 +kerning first=194 second=101 amount=-1 +kerning first=45 second=230 amount=-1 +kerning first=203 second=256 amount=-1 +kerning first=266 second=101 amount=-1 +kerning first=302 second=101 amount=-1 +kerning first=1050 second=1060 amount=-2 +kerning first=77 second=334 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=282 second=268 amount=-1 +kerning first=255 second=233 amount=-1 +kerning first=218 second=334 amount=-1 +kerning first=1057 second=1072 amount=-1 +kerning first=280 second=79 amount=-1 +kerning first=203 second=120 amount=-1 +kerning first=72 second=335 amount=-1 +kerning first=354 second=268 amount=-1 +kerning first=90 second=204 amount=-1 +kerning first=286 second=192 amount=-1 +kerning first=379 second=243 amount=-1 +kerning first=1038 second=1098 amount=-1 +kerning first=257 second=251 amount=-1 +kerning first=235 second=229 amount=-1 +kerning first=8216 second=354 amount=-1 +kerning first=214 second=192 amount=-2 +kerning first=221 second=251 amount=-1 +kerning first=290 second=217 amount=-1 +kerning first=69 second=268 amount=-1 +kerning first=290 second=203 amount=-1 +kerning first=199 second=229 amount=-1 +kerning first=8250 second=76 amount=-3 +kerning first=379 second=229 amount=-1 +kerning first=291 second=118 amount=-1 +kerning first=365 second=251 amount=-1 +kerning first=354 second=282 amount=-1 +kerning first=255 second=118 amount=-1 +kerning first=275 second=120 amount=-1 +kerning first=195 second=218 amount=-2 +kerning first=307 second=229 amount=-1 +kerning first=363 second=118 amount=-1 +kerning first=1038 second=1084 amount=-2 +kerning first=282 second=282 amount=-1 +kerning first=327 second=118 amount=-1 +kerning first=347 second=120 amount=-1 +kerning first=303 second=232 amount=-1 +kerning first=366 second=244 amount=-1 +kerning first=45 second=202 amount=-3 +kerning first=307 second=257 amount=-1 +kerning first=203 second=368 amount=-1 +kerning first=290 second=219 amount=-1 +kerning first=81 second=202 amount=-1 +kerning first=375 second=232 amount=-1 +kerning first=381 second=70 amount=-1 +kerning first=8217 second=110 amount=-1 +kerning first=108 second=361 amount=-1 +kerning first=222 second=202 amount=-1 +kerning first=72 second=361 amount=-1 +kerning first=90 second=232 amount=-1 +kerning first=199 second=257 amount=-1 +kerning first=231 second=232 amount=-1 +kerning first=209 second=336 amount=-1 +kerning first=195 second=232 amount=-1 +kerning first=111 second=8250 amount=-1 +kerning first=84 second=278 amount=-1 +kerning first=73 second=267 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=8218 second=103 amount=-1 +kerning first=67 second=79 amount=-2 +kerning first=317 second=336 amount=-1 +kerning first=244 second=121 amount=-1 +kerning first=282 second=254 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=332 second=344 amount=-1 +kerning first=272 second=69 amount=-1 +kerning first=1042 second=1036 amount=-1 +kerning first=258 second=244 amount=-1 +kerning first=103 second=121 amount=-1 +kerning first=69 second=254 amount=-1 +kerning first=379 second=257 amount=-1 +kerning first=200 second=69 amount=-1 +kerning first=8250 second=226 amount=-1 +kerning first=371 second=273 amount=-1 +kerning first=330 second=244 amount=-1 +kerning first=105 second=254 amount=-1 +kerning first=195 second=246 amount=-1 +kerning first=72 second=347 amount=-1 +kerning first=67 second=107 amount=-1 +kerning first=232 second=382 amount=-1 +kerning first=268 second=382 amount=-1 +kerning first=90 second=246 amount=-1 +kerning first=1061 second=1057 amount=-2 +kerning first=304 second=382 amount=-1 +kerning first=1025 second=1057 amount=-1 +kerning first=250 second=117 amount=-1 +kerning first=103 second=107 amount=-1 +kerning first=290 second=205 amount=-1 +kerning first=330 second=230 amount=-1 +kerning first=368 second=334 amount=-1 +kerning first=256 second=281 amount=-1 +kerning first=234 second=363 amount=-1 +kerning first=8220 second=339 amount=-1 +kerning first=8250 second=78 amount=-3 +kerning first=352 second=121 amount=-1 +kerning first=1046 second=1047 amount=-1 +kerning first=249 second=361 amount=-1 +kerning first=330 second=216 amount=-1 +kerning first=352 second=107 amount=-1 +kerning first=8250 second=198 amount=-2 +kerning first=321 second=347 amount=-1 +kerning first=73 second=281 amount=-1 +kerning first=8217 second=375 amount=-1 +kerning first=321 second=361 amount=-1 +kerning first=200 second=336 amount=-1 +kerning first=249 second=347 amount=-1 +kerning first=244 second=107 amount=-1 +kerning first=376 second=382 amount=-2 +kerning first=228 second=371 amount=-1 +kerning first=109 second=117 amount=-1 +kerning first=8220 second=353 amount=-1 +kerning first=354 second=240 amount=-2 +kerning first=8218 second=89 amount=-3 +kerning first=1049 second=1095 amount=-1 +kerning first=108 second=347 amount=-1 +kerning first=280 second=107 amount=-1 +kerning first=220 second=305 amount=-1 +kerning first=84 second=46 amount=-3 +kerning first=202 second=226 amount=-1 +kerning first=120 second=46 amount=-1 +kerning first=264 second=245 amount=-1 +kerning first=202 second=336 amount=-1 +kerning first=1104 second=1083 amount=-1 +kerning first=274 second=226 amount=-1 +kerning first=281 second=8250 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=346 second=76 amount=-1 +kerning first=310 second=226 amount=-1 +kerning first=274 second=336 amount=-1 +kerning first=364 second=305 amount=-1 +kerning first=346 second=226 amount=-1 +kerning first=274 second=76 amount=-1 +kerning first=310 second=336 amount=-1 +kerning first=363 second=102 amount=-1 +kerning first=211 second=219 amount=-1 +kerning first=382 second=226 amount=-1 +kerning first=245 second=8250 amount=-1 +kerning first=364 second=45 amount=-3 +kerning first=79 second=224 amount=-1 +kerning first=379 second=259 amount=-1 +kerning first=269 second=333 amount=-1 +kerning first=381 second=252 amount=-1 +kerning first=8216 second=197 amount=-4 +kerning first=1027 second=1103 amount=-2 +kerning first=287 second=347 amount=-1 +kerning first=267 second=257 amount=-1 +kerning first=192 second=245 amount=-1 +kerning first=74 second=79 amount=-1 +kerning first=201 second=252 amount=-1 +kerning first=314 second=335 amount=-1 +kerning first=235 second=259 amount=-1 +kerning first=346 second=304 amount=-1 +kerning first=87 second=245 amount=-2 +kerning first=255 second=269 amount=-1 +kerning first=79 second=45 amount=-1 +kerning first=228 second=369 amount=-1 +kerning first=350 second=103 amount=-1 +kerning first=121 second=116 amount=-1 +kerning first=374 second=375 amount=-1 +kerning first=296 second=246 amount=-1 +kerning first=98 second=382 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=314 second=103 amount=-1 +kerning first=8220 second=351 amount=-1 +kerning first=260 second=246 amount=-1 +kerning first=199 second=259 amount=-1 +kerning first=302 second=375 amount=-1 +kerning first=203 second=382 amount=-1 +kerning first=264 second=369 amount=-1 +kerning first=242 second=103 amount=-1 +kerning first=90 second=266 amount=-1 +kerning first=260 second=332 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=220 second=45 amount=-3 +kerning first=119 second=246 amount=-1 +kerning first=379 second=109 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=328 second=45 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=233 second=253 amount=-1 +kerning first=296 second=332 amount=-1 +kerning first=87 second=369 amount=-1 +kerning first=65 second=103 amount=-1 +kerning first=89 second=375 amount=-1 +kerning first=67 second=266 amount=-2 +kerning first=368 second=332 amount=-1 +kerning first=1027 second=1075 amount=-1 +kerning first=235 second=109 amount=-1 +kerning first=304 second=122 amount=-1 +kerning first=268 second=122 amount=-1 +kerning first=307 second=109 amount=-1 +kerning first=232 second=122 amount=-1 +kerning first=230 second=375 amount=-1 +kerning first=275 second=382 amount=-1 +kerning first=194 second=375 amount=-1 +kerning first=199 second=109 amount=-1 +kerning first=8220 second=224 amount=-1 +kerning first=347 second=382 amount=-1 +kerning first=376 second=122 amount=-2 +kerning first=354 second=242 amount=-1 +kerning first=266 second=115 amount=-1 +kerning first=197 second=370 amount=-2 +kerning first=302 second=115 amount=-1 +kerning first=346 second=198 amount=-2 +kerning first=211 second=80 amount=-1 +kerning first=220 second=345 amount=-1 +kerning first=194 second=115 amount=-1 +kerning first=115 second=223 amount=-1 +kerning first=230 second=115 amount=-1 +kerning first=73 second=119 amount=-1 +kerning first=375 second=289 amount=-2 +kerning first=109 second=119 amount=-1 +kerning first=334 second=8217 amount=-1 +kerning first=202 second=198 amount=-1 +kerning first=377 second=68 amount=-1 +kerning first=338 second=115 amount=-1 +kerning first=374 second=115 amount=-2 +kerning first=274 second=198 amount=-1 +kerning first=250 second=119 amount=-1 +kerning first=269 second=253 amount=-1 +kerning first=286 second=119 amount=-1 +kerning first=305 second=253 amount=-1 +kerning first=198 second=313 amount=-1 +kerning first=275 second=108 amount=-1 +kerning first=76 second=303 amount=-1 +kerning first=377 second=253 amount=-2 +kerning first=347 second=108 amount=-1 +kerning first=1070 second=1059 amount=-1 +kerning first=350 second=75 amount=-1 +kerning first=1040 second=1105 amount=-1 +kerning first=79 second=73 amount=-1 +kerning first=368 second=246 amount=-1 +kerning first=278 second=75 amount=-1 +kerning first=205 second=269 amount=-1 +kerning first=8250 second=310 amount=-3 +kerning first=379 second=231 amount=-1 +kerning first=233 second=225 amount=-1 +kerning first=206 second=335 amount=-1 +kerning first=269 second=225 amount=-1 +kerning first=288 second=196 amount=-1 +kerning first=187 second=105 amount=-1 +kerning first=65 second=363 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=101 second=363 amount=-1 +kerning first=374 second=286 amount=-1 +kerning first=203 second=108 amount=-1 +kerning first=65 second=335 amount=-1 +kerning first=302 second=286 amount=-1 +kerning first=261 second=249 amount=-1 +kerning first=338 second=286 amount=-1 +kerning first=44 second=8221 amount=-3 +kerning first=278 second=363 amount=-1 +kerning first=201 second=280 amount=-1 +kerning first=84 second=203 amount=-1 +kerning first=226 second=8217 amount=-1 +kerning first=219 second=102 amount=-1 +kerning first=314 second=363 amount=-1 +kerning first=266 second=286 amount=-2 +kerning first=83 second=218 amount=-1 +kerning first=350 second=363 amount=-1 +kerning first=89 second=115 amount=-2 +kerning first=225 second=46 amount=-1 +kerning first=332 second=218 amount=-1 +kerning first=261 second=46 amount=-1 +kerning first=377 second=225 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=1059 second=1076 amount=-3 +kerning first=260 second=218 amount=-2 +kerning first=199 second=231 amount=-1 +kerning first=212 second=261 amount=-1 +kerning first=110 second=367 amount=-1 +kerning first=209 second=210 amount=-1 +kerning first=284 second=261 amount=-1 +kerning first=352 second=8220 amount=-1 +kerning first=68 second=296 amount=-1 +kerning first=316 second=8220 amount=-2 +kerning first=1052 second=1092 amount=-1 +kerning first=193 second=366 amount=-2 +kerning first=71 second=261 amount=-1 +kerning first=86 second=327 amount=-1 +kerning first=107 second=261 amount=-1 +kerning first=244 second=8220 amount=-1 +kerning first=204 second=211 amount=-1 +kerning first=90 second=352 amount=-1 +kerning first=208 second=8220 amount=-1 +kerning first=251 second=250 amount=-1 +kerning first=198 second=171 amount=-1 +kerning first=253 second=112 amount=-1 +kerning first=71 second=378 amount=-1 +kerning first=217 second=112 amount=-1 +kerning first=317 second=296 amount=-1 +kerning first=212 second=378 amount=-1 +kerning first=1042 second=1025 amount=-1 +kerning first=323 second=250 amount=-1 +kerning first=270 second=171 amount=-1 +kerning first=90 second=206 amount=-1 +kerning first=72 second=235 amount=-1 +kerning first=287 second=250 amount=-1 +kerning first=112 second=112 amount=-1 +kerning first=108 second=235 amount=-1 +kerning first=356 second=261 amount=-2 +kerning first=76 second=112 amount=-1 +kerning first=99 second=326 amount=-1 +kerning first=99 second=328 amount=-1 +kerning first=110 second=250 amount=-1 +kerning first=75 second=288 amount=-1 +kerning first=108 second=237 amount=-1 +kerning first=193 second=113 amount=-1 +kerning first=217 second=262 amount=-1 +kerning first=323 second=365 amount=-1 +kerning first=210 second=366 amount=-1 +kerning first=374 second=113 amount=-2 +kerning first=287 second=365 amount=-1 +kerning first=1057 second=1081 amount=-1 +kerning first=251 second=365 amount=-1 +kerning first=284 second=378 amount=-1 +kerning first=244 second=353 amount=-1 +kerning first=325 second=262 amount=-1 +kerning first=232 second=98 amount=-1 +kerning first=248 second=378 amount=-1 +kerning first=280 second=353 amount=-1 +kerning first=378 second=171 amount=-2 +kerning first=356 second=378 amount=-2 +kerning first=316 second=353 amount=-1 +kerning first=1043 second=1094 amount=-1 +kerning first=325 second=112 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=352 second=353 amount=-1 +kerning first=296 second=100 amount=-1 +kerning first=282 second=366 amount=-1 +kerning first=321 second=87 amount=-1 +kerning first=67 second=353 amount=-1 +kerning first=327 second=249 amount=-1 +kerning first=213 second=87 amount=-1 +kerning first=327 second=275 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=364 second=223 amount=-1 +kerning first=195 second=352 amount=-2 +kerning first=89 second=113 amount=-2 +kerning first=219 second=275 amount=-1 +kerning first=1045 second=1078 amount=-1 +kerning first=255 second=275 amount=-1 +kerning first=119 second=100 amount=-1 +kerning first=291 second=249 amount=-1 +kerning first=379 second=83 amount=-1 +kerning first=302 second=113 amount=-1 +kerning first=69 second=366 amount=-1 +kerning first=220 second=223 amount=-1 +kerning first=266 second=113 amount=-1 +kerning first=76 second=262 amount=-1 +kerning first=85 second=233 amount=-1 +kerning first=78 second=275 amount=-1 +kerning first=317 second=210 amount=-1 +kerning first=194 second=113 amount=-1 +kerning first=333 second=307 amount=-1 +kerning first=268 second=304 amount=-1 +kerning first=90 second=324 amount=-1 +kerning first=321 second=89 amount=-1 +kerning first=121 second=233 amount=-1 +kerning first=352 second=379 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=71 second=289 amount=-1 +kerning first=287 second=339 amount=-1 +kerning first=262 second=233 amount=-1 +kerning first=107 second=289 amount=-1 +kerning first=323 second=339 amount=-1 +kerning first=217 second=114 amount=-1 +kerning first=212 second=289 amount=-1 +kerning first=219 second=249 amount=-1 +kerning first=187 second=274 amount=-3 +kerning first=1100 second=1082 amount=-1 +kerning first=78 second=249 amount=-1 +kerning first=370 second=233 amount=-1 +kerning first=213 second=89 amount=-1 +kerning first=67 second=379 amount=-1 +kerning first=74 second=339 amount=-1 +kerning first=375 second=324 amount=-1 +kerning first=321 second=237 amount=-1 +kerning first=267 second=324 amount=-1 +kerning first=262 second=350 amount=-1 +kerning first=231 second=324 amount=-1 +kerning first=208 second=379 amount=-1 +kerning first=249 second=237 amount=-1 +kerning first=277 second=187 amount=-1 +kerning first=339 second=324 amount=-1 +kerning first=303 second=324 amount=-1 +kerning first=280 second=379 amount=-1 +kerning first=356 second=110 amount=-1 +kerning first=370 second=350 amount=-1 +kerning first=321 second=209 amount=-1 +kerning first=346 second=8217 amount=-1 +kerning first=80 second=111 amount=-1 +kerning first=89 second=260 amount=-3 +kerning first=1093 second=1108 amount=-1 +kerning first=334 second=350 amount=-1 +kerning first=376 second=119 amount=-1 +kerning first=213 second=209 amount=-1 +kerning first=255 second=277 amount=-1 +kerning first=217 second=234 amount=-1 +kerning first=219 second=277 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=327 second=277 amount=-1 +kerning first=75 second=316 amount=-1 +kerning first=289 second=234 amount=-1 +kerning first=266 second=260 amount=-2 +kerning first=291 second=277 amount=-1 +kerning first=187 second=302 amount=-3 +kerning first=325 second=234 amount=-1 +kerning first=78 second=277 amount=-1 +kerning first=280 second=351 amount=-1 +kerning first=280 second=264 amount=-1 +kerning first=202 second=76 amount=-1 +kerning first=338 second=260 amount=-1 +kerning first=1037 second=1054 amount=-1 +kerning first=356 second=289 amount=-2 +kerning first=244 second=351 amount=-1 +kerning first=1056 second=1089 amount=-1 +kerning first=352 second=351 amount=-1 +kerning first=332 second=72 amount=-1 +kerning first=1037 second=1072 amount=-1 +kerning first=316 second=351 amount=-1 +kerning first=187 second=103 amount=-1 +kerning first=374 second=260 amount=-3 +kerning first=103 second=351 amount=-1 +kerning first=287 second=367 amount=-1 +kerning first=67 second=351 amount=-1 +kerning first=67 second=264 amount=-2 +kerning first=221 second=111 amount=-2 +kerning first=323 second=367 amount=-1 +kerning first=198 second=199 amount=-1 +kerning first=321 second=74 amount=-1 +kerning first=272 second=291 amount=-1 +kerning first=251 second=367 amount=-1 +kerning first=209 second=212 amount=-1 +kerning first=262 second=364 amount=-1 +kerning first=286 second=8249 amount=-1 +kerning first=65 second=361 amount=-1 +kerning first=258 second=351 amount=-1 +kerning first=206 second=361 amount=-1 +kerning first=366 second=351 amount=-1 +kerning first=381 second=367 amount=-1 +kerning first=221 second=377 amount=-1 +kerning first=354 second=114 amount=-1 +kerning first=73 second=8249 amount=-2 +kerning first=278 second=361 amount=-1 +kerning first=117 second=351 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=336 second=257 amount=-1 +kerning first=201 second=367 amount=-1 +kerning first=334 second=364 amount=-1 +kerning first=253 second=254 amount=-1 +kerning first=66 second=287 amount=-2 +kerning first=314 second=361 amount=-1 +kerning first=289 second=254 amount=-1 +kerning first=264 second=257 amount=-1 +kerning first=262 second=261 amount=-1 +kerning first=365 second=117 amount=-1 +kerning first=298 second=261 amount=-1 +kerning first=102 second=287 amount=-1 +kerning first=334 second=261 amount=-1 +kerning first=287 second=244 amount=-1 +kerning first=381 second=121 amount=-2 +kerning first=76 second=254 amount=-1 +kerning first=282 second=374 amount=-1 +kerning first=113 second=44 amount=-1 +kerning first=243 second=287 amount=-1 +kerning first=370 second=261 amount=-2 +kerning first=77 second=44 amount=-1 +kerning first=207 second=287 amount=-1 +kerning first=85 second=261 amount=-2 +kerning first=8217 second=269 amount=-2 +kerning first=210 second=374 amount=-1 +kerning first=374 second=274 amount=-1 +kerning first=315 second=287 amount=-1 +kerning first=121 second=261 amount=-2 +kerning first=201 second=381 amount=-1 +kerning first=338 second=274 amount=-1 +kerning first=279 second=287 amount=-1 +kerning first=350 second=237 amount=-1 +kerning first=338 second=210 amount=-1 +kerning first=314 second=237 amount=-1 +kerning first=8216 second=219 amount=-1 +kerning first=266 second=274 amount=-1 +kerning first=381 second=250 amount=-1 +kerning first=212 second=171 amount=-1 +kerning first=1058 second=1104 amount=-1 +kerning first=242 second=347 amount=-1 +kerning first=70 second=197 amount=-2 +kerning first=201 second=250 amount=-1 +kerning first=206 second=347 amount=-1 +kerning first=221 second=281 amount=-2 +kerning first=201 second=107 amount=-1 +kerning first=366 second=337 amount=-1 +kerning first=379 second=97 amount=-1 +kerning first=284 second=171 amount=-1 +kerning first=330 second=337 amount=-1 +kerning first=1059 second=1078 amount=-2 +kerning first=101 second=347 amount=-1 +kerning first=211 second=197 amount=-2 +kerning first=221 second=117 amount=-1 +kerning first=65 second=347 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=282 second=220 amount=-1 +kerning first=107 second=171 amount=-2 +kerning first=80 second=281 amount=-1 +kerning first=350 second=207 amount=-1 +kerning first=257 second=117 amount=-1 +kerning first=89 second=288 amount=-1 +kerning first=197 second=354 amount=-3 +kerning first=381 second=264 amount=-1 +kerning first=235 second=371 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=212 second=327 amount=-1 +kerning first=354 second=100 amount=-2 +kerning first=8218 second=229 amount=-1 +kerning first=81 second=379 amount=-1 +kerning first=307 second=371 amount=-1 +kerning first=87 second=257 amount=-2 +kerning first=356 second=171 amount=-3 +kerning first=290 second=304 amount=-1 +kerning first=298 second=378 amount=-1 +kerning first=289 second=240 amount=-1 +kerning first=106 second=314 amount=-1 +kerning first=350 second=347 amount=-1 +kerning first=377 second=354 amount=-1 +kerning first=325 second=240 amount=-1 +kerning first=201 second=264 amount=-1 +kerning first=314 second=347 amount=-1 +kerning first=374 second=243 amount=-2 +kerning first=217 second=240 amount=-1 +kerning first=1030 second=1054 amount=-1 +kerning first=114 second=289 amount=-1 +kerning first=278 second=347 amount=-1 +kerning first=253 second=240 amount=-1 +kerning first=200 second=317 amount=-1 +kerning first=195 second=220 amount=-2 +kerning first=222 second=77 amount=-1 +kerning first=283 second=314 amount=-1 +kerning first=258 second=214 amount=-1 +kerning first=272 second=317 amount=-1 +kerning first=268 second=298 amount=-1 +kerning first=258 second=71 amount=-1 +kerning first=262 second=90 amount=-1 +kerning first=86 second=201 amount=-1 +kerning first=86 second=207 amount=-1 +kerning first=370 second=90 amount=-1 +kerning first=334 second=90 amount=-1 +kerning first=74 second=224 amount=-1 +kerning first=376 second=298 amount=-1 +kerning first=313 second=291 amount=-1 +kerning first=277 second=291 amount=-1 +kerning first=195 second=84 amount=-3 +kerning first=113 second=318 amount=-1 +kerning first=287 second=224 amount=-1 +kerning first=241 second=291 amount=-1 +kerning first=199 second=97 amount=-1 +kerning first=204 second=213 amount=-1 +kerning first=205 second=291 amount=-1 +kerning first=259 second=287 amount=-1 +kerning first=90 second=84 amount=-1 +kerning first=245 second=103 amount=-1 +kerning first=200 second=200 amount=-1 +kerning first=371 second=311 amount=-1 +kerning first=254 second=318 amount=-1 +kerning first=323 second=224 amount=-1 +kerning first=100 second=291 amount=-1 +kerning first=307 second=97 amount=-1 +kerning first=81 second=77 amount=-1 +kerning first=366 second=71 amount=-1 +kerning first=335 second=311 amount=-1 +kerning first=258 second=337 amount=-1 +kerning first=45 second=77 amount=-3 +kerning first=330 second=71 amount=-1 +kerning first=326 second=318 amount=-1 +kerning first=235 second=97 amount=-1 +kerning first=263 second=311 amount=-1 +kerning first=85 second=90 amount=-1 +kerning first=81 second=85 amount=-1 +kerning first=304 second=284 amount=-1 +kerning first=335 second=187 amount=-1 +kerning first=362 second=44 amount=-3 +kerning first=45 second=85 amount=-2 +kerning first=90 second=344 amount=-1 +kerning first=326 second=44 amount=-1 +kerning first=381 second=381 amount=-1 +kerning first=86 second=325 amount=-1 +kerning first=236 second=303 amount=-1 +kerning first=268 second=284 amount=-2 +kerning first=1060 second=1025 amount=-1 +kerning first=195 second=234 amount=-1 +kerning first=262 second=104 amount=-1 +kerning first=218 second=44 amount=-3 +kerning first=196 second=284 amount=-1 +kerning first=68 second=310 amount=-1 +kerning first=381 second=101 amount=-1 +kerning first=281 second=324 amount=-1 +kerning first=290 second=44 amount=-1 +kerning first=380 second=303 amount=-1 +kerning first=90 second=70 amount=-1 +kerning first=121 second=104 amount=-1 +kerning first=310 second=81 amount=-1 +kerning first=232 second=104 amount=-1 +kerning first=254 second=44 amount=-2 +kerning first=272 second=194 amount=-2 +kerning first=87 second=251 amount=-1 +kerning first=375 second=234 amount=-1 +kerning first=99 second=227 amount=-1 +kerning first=200 second=194 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=45 second=351 amount=-1 +kerning first=86 second=187 amount=-1 +kerning first=199 second=111 amount=-1 +kerning first=258 second=85 amount=-2 +kerning first=264 second=251 amount=-1 +kerning first=205 second=277 amount=-1 +kerning first=231 second=234 amount=-1 +kerning first=222 second=85 amount=-1 +kerning first=228 second=251 amount=-1 +kerning first=267 second=234 amount=-1 +kerning first=376 second=284 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=317 second=310 amount=-1 +kerning first=1047 second=1093 amount=-1 +kerning first=316 second=105 amount=-1 +kerning first=8218 second=87 amount=-3 +kerning first=284 second=118 amount=-1 +kerning first=334 second=370 amount=-1 +kerning first=65 second=245 amount=-1 +kerning first=89 second=114 amount=-1 +kerning first=335 second=303 amount=-1 +kerning first=248 second=118 amount=-1 +kerning first=69 second=368 amount=-1 +kerning first=244 second=105 amount=-1 +kerning first=356 second=118 amount=-1 +kerning first=366 second=345 amount=-1 +kerning first=210 second=270 amount=-1 +kerning first=1090 second=1083 amount=-1 +kerning first=89 second=280 amount=-1 +kerning first=107 second=118 amount=-1 +kerning first=210 second=368 amount=-1 +kerning first=364 second=335 amount=-1 +kerning first=71 second=118 amount=-1 +kerning first=206 second=245 amount=-1 +kerning first=67 second=105 amount=-1 +kerning first=69 second=270 amount=-1 +kerning first=205 second=283 amount=-1 +kerning first=103 second=105 amount=-1 +kerning first=88 second=351 amount=-1 +kerning first=366 second=228 amount=-1 +kerning first=354 second=368 amount=-1 +kerning first=330 second=228 amount=-1 +kerning first=220 second=335 amount=-1 +kerning first=262 second=241 amount=-1 +kerning first=105 second=108 amount=-1 +kerning first=256 second=335 amount=-1 +kerning first=370 second=241 amount=-1 +kerning first=246 second=108 amount=-1 +kerning first=282 second=368 amount=-1 +kerning first=1054 second=1083 amount=-1 +kerning first=222 second=228 amount=-1 +kerning first=121 second=241 amount=-1 +kerning first=282 second=270 amount=-1 +kerning first=85 second=241 amount=-1 +kerning first=282 second=108 amount=-1 +kerning first=86 second=193 amount=-3 +kerning first=262 second=370 amount=-1 +kerning first=81 second=228 amount=-1 +kerning first=354 second=270 amount=-1 +kerning first=354 second=122 amount=-2 +kerning first=366 second=331 amount=-1 +kerning first=268 second=278 amount=-1 +kerning first=282 second=256 amount=-1 +kerning first=334 second=356 amount=-1 +kerning first=282 second=122 amount=-1 +kerning first=210 second=256 amount=-2 +kerning first=246 second=122 amount=-1 +kerning first=206 second=231 amount=-1 +kerning first=262 second=356 amount=-1 +kerning first=289 second=104 amount=-1 +kerning first=197 second=362 amount=-2 +kerning first=376 second=278 amount=-1 +kerning first=298 second=255 amount=-1 +kerning first=8218 second=237 amount=-1 +kerning first=314 second=231 amount=-1 +kerning first=354 second=256 amount=-3 +kerning first=8222 second=98 amount=-1 +kerning first=226 second=255 amount=-1 +kerning first=45 second=331 amount=-1 +kerning first=338 second=266 amount=-1 +kerning first=256 second=334 amount=-1 +kerning first=223 second=8250 amount=-1 +kerning first=374 second=266 amount=-1 +kerning first=362 second=111 amount=-1 +kerning first=338 second=280 amount=-1 +kerning first=314 second=245 amount=-1 +kerning first=45 second=345 amount=-1 +kerning first=85 second=255 amount=-1 +kerning first=374 second=280 amount=-1 +kerning first=302 second=266 amount=-1 +kerning first=330 second=214 amount=-1 +kerning first=210 second=122 amount=-1 +kerning first=65 second=231 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=45 second=65 amount=-2 +kerning first=105 second=122 amount=-1 +kerning first=81 second=65 amount=-2 +kerning first=89 second=266 amount=-1 +kerning first=366 second=214 amount=-1 +kerning first=8250 second=196 amount=-2 +kerning first=86 second=305 amount=-1 +kerning first=377 second=80 amount=-1 +kerning first=222 second=65 amount=-2 +kerning first=364 second=67 amount=-1 +kerning first=314 second=229 amount=-1 +kerning first=350 second=229 amount=-1 +kerning first=211 second=217 amount=-1 +kerning first=210 second=106 amount=-1 +kerning first=263 second=305 amount=-1 +kerning first=203 second=282 amount=-1 +kerning first=246 second=106 amount=-1 +kerning first=256 second=67 amount=-1 +kerning first=83 second=346 amount=-1 +kerning first=366 second=65 amount=-2 +kerning first=211 second=68 amount=-1 +kerning first=105 second=106 amount=-1 +kerning first=220 second=67 amount=-1 +kerning first=206 second=81 amount=-1 +kerning first=8222 second=380 amount=-2 +kerning first=8216 second=328 amount=-1 +kerning first=323 second=230 amount=-1 +kerning first=296 second=346 amount=-1 +kerning first=364 second=333 amount=-1 +kerning first=235 second=353 amount=-1 +kerning first=302 second=346 amount=-1 +kerning first=371 second=305 amount=-1 +kerning first=251 second=230 amount=-1 +kerning first=303 second=109 amount=-1 +kerning first=287 second=230 amount=-1 +kerning first=260 second=289 amount=-1 +kerning first=65 second=243 amount=-1 +kerning first=381 second=82 amount=-1 +kerning first=202 second=204 amount=-1 +kerning first=243 second=307 amount=-1 +kerning first=220 second=333 amount=-1 +kerning first=8217 second=289 amount=-2 +kerning first=279 second=307 amount=-1 +kerning first=69 second=256 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=274 second=204 amount=-1 +kerning first=368 second=346 amount=-1 +kerning first=311 second=275 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=351 second=307 amount=-1 +kerning first=256 second=333 amount=-1 +kerning first=8216 second=225 amount=-1 +kerning first=202 second=218 amount=-1 +kerning first=314 second=243 amount=-1 +kerning first=346 second=104 amount=-1 +kerning first=90 second=332 amount=-1 +kerning first=74 second=244 amount=-1 +kerning first=1057 second=1060 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=310 second=218 amount=-1 +kerning first=206 second=243 amount=-1 +kerning first=313 second=334 amount=-1 +kerning first=8217 second=275 amount=-2 +kerning first=323 second=79 amount=-1 +kerning first=274 second=218 amount=-1 +kerning first=246 second=120 amount=-1 +kerning first=315 second=192 amount=-1 +kerning first=198 second=374 amount=-1 +kerning first=282 second=120 amount=-1 +kerning first=101 second=229 amount=-1 +kerning first=327 second=333 amount=-1 +kerning first=354 second=120 amount=-1 +kerning first=203 second=268 amount=-1 +kerning first=69 second=120 amount=-1 +kerning first=105 second=120 amount=-1 +kerning first=278 second=229 amount=-1 +kerning first=70 second=334 amount=-1 +kerning first=8222 second=366 amount=-2 +kerning first=66 second=192 amount=-3 +kerning first=210 second=120 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=117 second=257 amount=-1 +kerning first=253 second=242 amount=-1 +kerning first=249 second=229 amount=-1 +kerning first=205 second=289 amount=-1 +kerning first=258 second=339 amount=-1 +kerning first=368 second=232 amount=-1 +kerning first=217 second=242 amount=-1 +kerning first=241 second=289 amount=-1 +kerning first=325 second=242 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=277 second=289 amount=-1 +kerning first=289 second=242 amount=-1 +kerning first=213 second=229 amount=-1 +kerning first=316 second=99 amount=-1 +kerning first=313 second=289 amount=-1 +kerning first=366 second=339 amount=-1 +kerning first=260 second=232 amount=-1 +kerning first=221 second=279 amount=-2 +kerning first=76 second=106 amount=-1 +kerning first=278 second=89 amount=-1 +kerning first=268 second=282 amount=-1 +kerning first=330 second=339 amount=-1 +kerning first=116 second=119 amount=-1 +kerning first=296 second=232 amount=-1 +kerning first=201 second=379 amount=-1 +kerning first=253 second=106 amount=-1 +kerning first=221 second=119 amount=-1 +kerning first=90 second=346 amount=-1 +kerning first=112 second=106 amount=-1 +kerning first=257 second=119 amount=-1 +kerning first=1038 second=1072 amount=-2 +kerning first=119 second=232 amount=-1 +kerning first=8220 second=218 amount=-1 +kerning first=365 second=119 amount=-1 +kerning first=8222 second=254 amount=-1 +kerning first=67 second=99 amount=-1 +kerning first=377 second=82 amount=-1 +kerning first=1058 second=1116 amount=-1 +kerning first=203 second=344 amount=-1 +kerning first=100 second=289 amount=-1 +kerning first=381 second=379 amount=-1 +kerning first=368 second=275 amount=-1 +kerning first=195 second=346 amount=-2 +kerning first=376 second=115 amount=-2 +kerning first=107 second=267 amount=-1 +kerning first=274 second=212 amount=-1 +kerning first=79 second=209 amount=-1 +kerning first=107 second=269 amount=-1 +kerning first=104 second=316 amount=-1 +kerning first=1043 second=1072 amount=-1 +kerning first=258 second=79 amount=-1 +kerning first=222 second=69 amount=-1 +kerning first=245 second=316 amount=-1 +kerning first=90 second=72 amount=-1 +kerning first=81 second=69 amount=-1 +kerning first=366 second=79 amount=-1 +kerning first=86 second=199 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=356 second=269 amount=-2 +kerning first=1063 second=1089 amount=-1 +kerning first=1088 second=1076 amount=-1 +kerning first=363 second=8217 amount=-2 +kerning first=1027 second=1089 amount=-1 +kerning first=330 second=79 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=272 second=192 amount=-2 +kerning first=108 second=229 amount=-1 +kerning first=90 second=76 amount=-1 +kerning first=65 second=89 amount=-3 +kerning first=310 second=212 amount=-1 +kerning first=211 second=205 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=200 second=192 amount=-1 +kerning first=192 second=8221 amount=-3 +kerning first=267 second=226 amount=-1 +kerning first=8222 second=368 amount=-2 +kerning first=228 second=8221 amount=-1 +kerning first=199 second=245 amount=-1 +kerning first=303 second=226 amount=-1 +kerning first=254 second=46 amount=-2 +kerning first=8250 second=324 amount=-1 +kerning first=339 second=226 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=375 second=226 amount=-2 +kerning first=336 second=8221 amount=-1 +kerning first=379 second=245 amount=-1 +kerning first=77 second=46 amount=-1 +kerning first=1061 second=1083 amount=-1 +kerning first=113 second=46 amount=-1 +kerning first=216 second=296 amount=-1 +kerning first=281 second=316 amount=-1 +kerning first=317 second=316 amount=-1 +kerning first=263 second=45 amount=-1 +kerning first=288 second=296 amount=-1 +kerning first=353 second=316 amount=-1 +kerning first=371 second=45 amount=-1 +kerning first=280 second=252 amount=-1 +kerning first=272 second=202 amount=-1 +kerning first=84 second=290 amount=-1 +kerning first=108 second=335 amount=-1 +kerning first=90 second=226 amount=-1 +kerning first=200 second=202 amount=-1 +kerning first=67 second=252 amount=-1 +kerning first=231 second=226 amount=-1 +kerning first=202 second=206 amount=-1 +kerning first=264 second=259 amount=-1 +kerning first=291 second=116 amount=-1 +kerning first=85 second=253 amount=-1 +kerning first=255 second=116 amount=-1 +kerning first=197 second=356 amount=-3 +kerning first=336 second=259 amount=-1 +kerning first=379 second=103 amount=-2 +kerning first=325 second=246 amount=-1 +kerning first=226 second=253 amount=-1 +kerning first=1043 second=1082 amount=-1 +kerning first=289 second=246 amount=-1 +kerning first=87 second=259 amount=-2 +kerning first=316 second=252 amount=-1 +kerning first=307 second=103 amount=-1 +kerning first=334 second=362 amount=-1 +kerning first=253 second=246 amount=-1 +kerning first=298 second=253 amount=-1 +kerning first=352 second=252 amount=-1 +kerning first=217 second=246 amount=-1 +kerning first=381 second=375 amount=-2 +kerning first=65 second=83 amount=-2 +kerning first=235 second=103 amount=-1 +kerning first=352 second=316 amount=-1 +kerning first=212 second=323 amount=-1 +kerning first=203 second=122 amount=-1 +kerning first=246 second=382 amount=-1 +kerning first=379 second=369 amount=-1 +kerning first=282 second=382 amount=-1 +kerning first=206 second=83 amount=-1 +kerning first=98 second=122 amount=-1 +kerning first=201 second=266 amount=-1 +kerning first=262 second=362 amount=-1 +kerning first=354 second=382 amount=-2 +kerning first=80 second=279 amount=-1 +kerning first=278 second=83 amount=-1 +kerning first=347 second=122 amount=-1 +kerning first=69 second=382 amount=-1 +kerning first=235 second=369 amount=-1 +kerning first=377 second=356 amount=-1 +kerning first=105 second=382 amount=-1 +kerning first=199 second=369 amount=-1 +kerning first=90 second=336 amount=-1 +kerning first=350 second=83 amount=-1 +kerning first=275 second=122 amount=-1 +kerning first=307 second=369 amount=-1 +kerning first=264 second=109 amount=-1 +kerning first=210 second=382 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=253 second=248 amount=-1 +kerning first=69 second=380 amount=-1 +kerning first=289 second=248 amount=-1 +kerning first=105 second=380 amount=-1 +kerning first=317 second=198 amount=-1 +kerning first=217 second=248 amount=-1 +kerning first=210 second=380 amount=-1 +kerning first=197 second=233 amount=-1 +kerning first=68 second=198 amount=-2 +kerning first=202 second=330 amount=-1 +kerning first=269 second=233 amount=-1 +kerning first=201 second=115 amount=-1 +kerning first=101 second=355 amount=-1 +kerning first=65 second=355 amount=-1 +kerning first=219 second=263 amount=-1 +kerning first=321 second=73 amount=-1 +kerning first=350 second=355 amount=-1 +kerning first=255 second=263 amount=-1 +kerning first=103 second=365 amount=-1 +kerning first=314 second=355 amount=-1 +kerning first=291 second=263 amount=-1 +kerning first=67 second=365 amount=-1 +kerning first=84 second=298 amount=-1 +kerning first=200 second=315 amount=-1 +kerning first=327 second=263 amount=-1 +kerning first=381 second=115 amount=-1 +kerning first=1045 second=1090 amount=-1 +kerning first=78 second=263 amount=-1 +kerning first=213 second=73 amount=-1 +kerning first=213 second=75 amount=-1 +kerning first=219 second=110 amount=-1 +kerning first=325 second=248 amount=-1 +kerning first=255 second=110 amount=-1 +kerning first=86 second=313 amount=-1 +kerning first=291 second=110 amount=-1 +kerning first=376 second=290 amount=-1 +kerning first=1091 second=1108 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=66 second=303 amount=-1 +kerning first=197 second=350 amount=-2 +kerning first=106 second=328 amount=-1 +kerning first=76 second=98 amount=-1 +kerning first=321 second=75 amount=-1 +kerning first=199 second=363 amount=-1 +kerning first=235 second=363 amount=-1 +kerning first=272 second=315 amount=-1 +kerning first=268 second=290 amount=-2 +kerning first=321 second=221 amount=-1 +kerning first=351 second=303 amount=-1 +kerning first=307 second=363 amount=-1 +kerning first=78 second=214 amount=-1 +kerning first=317 second=196 amount=-1 +kerning first=243 second=303 amount=-1 +kerning first=283 second=328 amount=-1 +kerning first=1042 second=1031 amount=-1 +kerning first=279 second=303 amount=-1 +kerning first=377 second=350 amount=-1 +kerning first=68 second=196 amount=-2 +kerning first=201 second=260 amount=-1 +kerning first=85 second=102 amount=-1 +kerning first=196 second=290 amount=-1 +kerning first=326 second=46 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=246 second=380 amount=-1 +kerning first=310 second=267 amount=-1 +kerning first=362 second=46 amount=-3 +kerning first=282 second=380 amount=-1 +kerning first=289 second=98 amount=-1 +kerning first=316 second=237 amount=-1 +kerning first=79 second=325 amount=-1 +kerning first=90 second=338 amount=-1 +kerning first=253 second=98 amount=-1 +kerning first=354 second=380 amount=-2 +kerning first=381 second=260 amount=-1 +kerning first=69 second=112 amount=-1 +kerning first=87 second=377 amount=-1 +kerning first=8222 second=374 amount=-3 +kerning first=280 second=367 amount=-1 +kerning first=65 second=87 amount=-3 +kerning first=78 second=261 amount=-1 +kerning first=316 second=367 amount=-1 +kerning first=196 second=318 amount=-1 +kerning first=79 second=327 amount=-1 +kerning first=8217 second=283 amount=-2 +kerning first=332 second=86 amount=-1 +kerning first=83 second=352 amount=-1 +kerning first=310 second=210 amount=-1 +kerning first=264 second=377 amount=-1 +kerning first=287 second=351 amount=-1 +kerning first=274 second=210 amount=-1 +kerning first=283 second=326 amount=-1 +kerning first=251 second=351 amount=-1 +kerning first=70 second=211 amount=-1 +kerning first=296 second=352 amount=-1 +kerning first=202 second=210 amount=-1 +kerning first=260 second=352 amount=-2 +kerning first=67 second=367 amount=-1 +kerning first=288 second=302 amount=-1 +kerning first=363 second=261 amount=-1 +kerning first=354 second=112 amount=-1 +kerning first=352 second=250 amount=-1 +kerning first=206 second=235 amount=-1 +kerning first=106 second=326 amount=-1 +kerning first=216 second=302 amount=-1 +kerning first=336 second=377 amount=-1 +kerning first=73 second=287 amount=-1 +kerning first=100 second=171 amount=-1 +kerning first=282 second=112 amount=-1 +kerning first=246 second=112 amount=-1 +kerning first=8216 second=217 amount=-1 +kerning first=314 second=235 amount=-1 +kerning first=219 second=261 amount=-2 +kerning first=260 second=86 amount=-3 +kerning first=109 second=287 amount=-1 +kerning first=255 second=261 amount=-2 +kerning first=316 second=250 amount=-1 +kerning first=1092 second=1103 amount=-1 +kerning first=250 second=287 amount=-1 +kerning first=291 second=261 amount=-1 +kerning first=105 second=112 amount=-1 +kerning first=280 second=250 amount=-1 +kerning first=1056 second=1103 amount=-1 +kerning first=214 second=287 amount=-1 +kerning first=118 second=257 amount=-2 +kerning first=67 second=250 amount=-1 +kerning first=291 second=378 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=282 second=262 amount=-1 +kerning first=8220 second=244 amount=-1 +kerning first=255 second=378 amount=-1 +kerning first=242 second=237 amount=-1 +kerning first=286 second=287 amount=-1 +kerning first=107 second=275 amount=-1 +kerning first=287 second=353 amount=-1 +kerning first=363 second=378 amount=-1 +kerning first=354 second=262 amount=-1 +kerning first=323 second=353 amount=-1 +kerning first=103 second=250 amount=-1 +kerning first=327 second=378 amount=-1 +kerning first=352 second=365 amount=-1 +kerning first=325 second=100 amount=-1 +kerning first=352 second=369 amount=-1 +kerning first=316 second=365 amount=-1 +kerning first=101 second=237 amount=-1 +kerning first=74 second=353 amount=-1 +kerning first=1116 second=1095 amount=-1 +kerning first=78 second=378 amount=-1 +kerning first=280 second=365 amount=-1 +kerning first=83 second=45 amount=-1 +kerning first=199 second=277 amount=-1 +kerning first=110 second=353 amount=-1 +kerning first=241 second=171 amount=-1 +kerning first=219 second=378 amount=-1 +kerning first=381 second=113 amount=-1 +kerning first=8222 second=108 amount=-1 +kerning first=313 second=171 amount=-1 +kerning first=350 second=87 amount=-1 +kerning first=368 second=352 amount=-1 +kerning first=217 second=100 amount=-1 +kerning first=198 second=85 amount=-1 +kerning first=226 second=249 amount=-1 +kerning first=332 second=352 amount=-1 +kerning first=315 second=338 amount=-1 +kerning first=290 second=197 amount=-1 +kerning first=253 second=100 amount=-1 +kerning first=278 second=87 amount=-1 +kerning first=85 second=249 amount=-1 +kerning first=289 second=100 amount=-1 +kerning first=69 second=262 amount=-1 +kerning first=356 second=275 amount=-2 +kerning first=362 second=197 amount=-2 +kerning first=82 second=288 amount=-1 +kerning first=370 second=249 amount=-1 +kerning first=321 second=223 amount=-1 +kerning first=262 second=249 amount=-1 +kerning first=1088 second=1078 amount=-1 +kerning first=298 second=249 amount=-1 +kerning first=282 second=288 amount=-1 +kerning first=199 second=87 amount=-1 +kerning first=1100 second=1096 amount=-1 +kerning first=107 second=243 amount=-1 +kerning first=113 second=314 amount=-1 +kerning first=354 second=288 amount=-1 +kerning first=369 second=106 amount=-1 +kerning first=254 second=314 amount=-1 +kerning first=8216 second=114 amount=-1 +kerning first=1030 second=1092 amount=-1 +kerning first=231 second=363 amount=-1 +kerning first=326 second=314 amount=-1 +kerning first=69 second=288 amount=-1 +kerning first=207 second=113 amount=-1 +kerning first=366 second=210 amount=-1 +kerning first=379 second=333 amount=-1 +kerning first=84 second=366 amount=-1 +kerning first=256 second=269 amount=-1 +kerning first=330 second=210 amount=-1 +kerning first=1074 second=1118 amount=-1 +kerning first=102 second=113 amount=-1 +kerning first=220 second=269 amount=-1 +kerning first=258 second=210 amount=-1 +kerning first=263 second=307 amount=-1 +kerning first=364 second=255 amount=-1 +kerning first=8220 second=375 amount=-1 +kerning first=84 second=120 amount=-1 +kerning first=196 second=83 amount=-2 +kerning first=328 second=255 amount=-1 +kerning first=231 second=224 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=335 second=307 amount=-1 +kerning first=364 second=269 amount=-1 +kerning first=192 second=281 amount=-1 +kerning first=202 second=262 amount=-1 +kerning first=371 second=307 amount=-1 +kerning first=256 second=255 amount=-1 +kerning first=303 second=224 amount=-1 +kerning first=220 second=255 amount=-1 +kerning first=267 second=224 amount=-1 +kerning first=264 second=281 amount=-1 +kerning first=274 second=262 amount=-1 +kerning first=375 second=224 amount=-1 +kerning first=356 second=243 amount=-2 +kerning first=310 second=262 amount=-1 +kerning first=115 second=255 amount=-1 +kerning first=339 second=224 amount=-1 +kerning first=187 second=198 amount=-2 +kerning first=207 second=99 amount=-1 +kerning first=67 second=101 amount=-1 +kerning first=369 second=120 amount=-1 +kerning first=103 second=101 amount=-1 +kerning first=354 second=274 amount=-1 +kerning first=212 second=229 amount=-1 +kerning first=382 second=248 amount=-1 +kerning first=71 second=229 amount=-1 +kerning first=282 second=274 amount=-1 +kerning first=379 second=73 amount=-1 +kerning first=202 second=362 amount=-1 +kerning first=8216 second=100 amount=-1 +kerning first=310 second=248 amount=-1 +kerning first=225 second=120 amount=-1 +kerning first=272 second=75 amount=-1 +kerning first=305 second=118 amount=-1 +kerning first=261 second=120 amount=-1 +kerning first=356 second=229 amount=-2 +kerning first=316 second=101 amount=-1 +kerning first=199 second=73 amount=-1 +kerning first=377 second=118 amount=-1 +kerning first=333 second=120 amount=-1 +kerning first=284 second=229 amount=-1 +kerning first=346 second=8220 amount=-1 +kerning first=197 second=118 amount=-2 +kerning first=310 second=8220 amount=-1 +kerning first=269 second=118 amount=-1 +kerning first=366 second=196 amount=-2 +kerning first=233 second=118 amount=-1 +kerning first=364 second=241 amount=-1 +kerning first=69 second=196 amount=-1 +kerning first=333 second=106 amount=-1 +kerning first=379 second=87 amount=-1 +kerning first=102 second=99 amount=-1 +kerning first=290 second=68 amount=-1 +kerning first=225 second=106 amount=-1 +kerning first=261 second=106 amount=1 +kerning first=76 second=80 amount=-1 +kerning first=374 second=364 amount=-1 +kerning first=235 second=361 amount=-1 +kerning first=69 second=316 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=287 second=111 amount=-1 +kerning first=105 second=316 amount=-1 +kerning first=323 second=111 amount=-1 +kerning first=307 second=361 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=74 second=111 amount=-1 +kerning first=379 second=361 amount=-1 +kerning first=246 second=316 amount=-1 +kerning first=290 second=82 amount=-1 +kerning first=107 second=271 amount=-1 +kerning first=197 second=364 amount=-2 +kerning first=282 second=316 amount=-1 +kerning first=76 second=66 amount=-1 +kerning first=356 second=257 amount=-2 +kerning first=264 second=267 amount=-1 +kerning first=269 second=104 amount=-1 +kerning first=75 second=351 amount=-1 +kerning first=202 second=44 amount=-1 +kerning first=344 second=89 amount=-1 +kerning first=233 second=104 amount=-1 +kerning first=262 second=368 amount=-1 +kerning first=197 second=104 amount=-1 +kerning first=274 second=44 amount=-1 +kerning first=1048 second=1057 amount=-1 +kerning first=8216 second=346 amount=-1 +kerning first=313 second=205 amount=-1 +kerning first=200 second=89 amount=-1 +kerning first=87 second=323 amount=-1 +kerning first=210 second=274 amount=-1 +kerning first=199 second=361 amount=-1 +kerning first=97 second=44 amount=-1 +kerning first=272 second=89 amount=-1 +kerning first=8216 second=86 amount=-1 +kerning first=334 second=368 amount=-1 +kerning first=323 second=97 amount=-1 +kerning first=217 second=326 amount=-1 +kerning first=338 second=250 amount=-1 +kerning first=210 second=302 amount=-1 +kerning first=253 second=326 amount=-1 +kerning first=307 second=347 amount=-1 +kerning first=298 second=284 amount=-1 +kerning first=264 second=323 amount=-1 +kerning first=302 second=250 amount=-1 +kerning first=367 second=226 amount=-1 +kerning first=1050 second=1054 amount=-2 +kerning first=251 second=97 amount=-1 +kerning first=289 second=326 amount=-1 +kerning first=87 second=281 amount=-2 +kerning first=203 second=278 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=275 second=8250 amount=-1 +kerning first=287 second=97 amount=-1 +kerning first=235 second=347 amount=-1 +kerning first=283 second=375 amount=-1 +kerning first=336 second=323 amount=-1 +kerning first=374 second=250 amount=-1 +kerning first=69 second=302 amount=-1 +kerning first=103 second=97 amount=-1 +kerning first=199 second=347 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=76 second=326 amount=-1 +kerning first=251 second=371 amount=-1 +kerning first=8216 second=374 amount=-1 +kerning first=205 second=233 amount=-1 +kerning first=266 second=250 amount=-1 +kerning first=287 second=371 amount=-1 +kerning first=1102 second=1078 amount=-1 +kerning first=230 second=250 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=272 second=103 amount=-1 +kerning first=377 second=90 amount=-1 +kerning first=284 second=257 amount=-1 +kerning first=236 second=103 amount=-1 +kerning first=269 second=378 amount=-1 +kerning first=199 second=45 amount=-2 +kerning first=200 second=103 amount=-1 +kerning first=313 second=219 amount=-1 +kerning first=89 second=250 amount=-1 +kerning first=377 second=378 amount=-1 +kerning first=82 second=226 amount=-1 +kerning first=212 second=257 amount=-1 +kerning first=199 second=333 amount=-1 +kerning first=118 second=226 amount=-2 +kerning first=374 second=264 amount=-1 +kerning first=354 second=302 amount=-1 +kerning first=187 second=226 amount=-1 +kerning first=107 second=257 amount=-1 +kerning first=338 second=264 amount=-1 +kerning first=113 second=110 amount=-1 +kerning first=302 second=264 amount=-1 +kerning first=233 second=378 amount=-1 +kerning first=282 second=302 amount=-1 +kerning first=379 second=347 amount=-1 +kerning first=266 second=264 amount=-2 +kerning first=211 second=66 amount=-1 +kerning first=71 second=257 amount=-1 +kerning first=218 second=110 amount=-1 +kerning first=1069 second=1063 amount=-1 +kerning first=200 second=363 amount=-1 +kerning first=118 second=240 amount=-1 +kerning first=89 second=194 amount=-3 +kerning first=236 second=363 amount=-1 +kerning first=323 second=214 amount=-1 +kerning first=362 second=110 amount=-1 +kerning first=8216 second=351 amount=-1 +kerning first=202 second=220 amount=-1 +kerning first=206 second=275 amount=-1 +kerning first=74 second=214 amount=-1 +kerning first=8216 second=242 amount=-1 +kerning first=344 second=363 amount=-1 +kerning first=202 second=318 amount=-1 +kerning first=325 second=284 amount=-1 +kerning first=380 second=363 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=346 second=220 amount=-1 +kerning first=108 second=259 amount=-1 +kerning first=310 second=318 amount=-1 +kerning first=232 second=116 amount=-1 +kerning first=336 second=77 amount=-1 +kerning first=282 second=330 amount=-1 +kerning first=286 second=369 amount=-1 +kerning first=249 second=259 amount=-1 +kerning first=346 second=318 amount=-1 +kerning first=100 second=8221 amount=-1 +kerning first=274 second=220 amount=-1 +kerning first=84 second=324 amount=-1 +kerning first=250 second=369 amount=-1 +kerning first=213 second=259 amount=-1 +kerning first=382 second=318 amount=-1 +kerning first=264 second=77 amount=-1 +kerning first=352 second=375 amount=-1 +kerning first=310 second=220 amount=-1 +kerning first=210 second=330 amount=-1 +kerning first=338 second=194 amount=-1 +kerning first=82 second=240 amount=-1 +kerning first=374 second=194 amount=-3 +kerning first=274 second=304 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=109 second=369 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=196 second=116 amount=-1 +kerning first=266 second=194 amount=-2 +kerning first=73 second=369 amount=-1 +kerning first=202 second=304 amount=-1 +kerning first=354 second=330 amount=-1 +kerning first=122 second=279 amount=-1 +kerning first=118 second=254 amount=-1 +kerning first=86 second=279 amount=-2 +kerning first=291 second=253 amount=-1 +kerning first=103 second=375 amount=-1 +kerning first=187 second=254 amount=-1 +kerning first=327 second=253 amount=-1 +kerning first=1047 second=1055 amount=-1 +kerning first=363 second=253 amount=-1 +kerning first=74 second=228 amount=-1 +kerning first=259 second=254 amount=-1 +kerning first=200 second=377 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=316 second=375 amount=-1 +kerning first=69 second=330 amount=-1 +kerning first=354 second=344 amount=-1 +kerning first=244 second=375 amount=-1 +kerning first=108 second=273 amount=-1 +kerning first=364 second=117 amount=-1 +kerning first=82 second=254 amount=-1 +kerning first=217 second=284 amount=-1 +kerning first=316 second=253 amount=-1 +kerning first=76 second=298 amount=-1 +kerning first=310 second=234 amount=-1 +kerning first=210 second=344 amount=-1 +kerning first=84 second=310 amount=-1 +kerning first=315 second=251 amount=-1 +kerning first=70 second=332 amount=-1 +kerning first=1058 second=1108 amount=-1 +kerning first=272 second=377 amount=-1 +kerning first=1113 second=1103 amount=-1 +kerning first=382 second=234 amount=-1 +kerning first=282 second=344 amount=-1 +kerning first=325 second=210 amount=-1 +kerning first=371 second=378 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=78 second=253 amount=-1 +kerning first=263 second=279 amount=-1 +kerning first=76 second=284 amount=-1 +kerning first=72 second=287 amount=-1 +kerning first=69 second=344 amount=-1 +kerning first=213 second=287 amount=-1 +kerning first=198 second=8249 amount=-1 +kerning first=1098 second=1119 amount=-1 +kerning first=219 second=253 amount=-1 +kerning first=344 second=335 amount=-1 +kerning first=202 second=290 amount=-1 +kerning first=221 second=313 amount=-1 +kerning first=380 second=335 amount=-1 +kerning first=249 second=287 amount=-1 +kerning first=213 second=8217 amount=-1 +kerning first=76 second=270 amount=-1 +kerning first=278 second=315 amount=-1 +kerning first=249 second=8217 amount=-2 +kerning first=274 second=290 amount=-1 +kerning first=321 second=287 amount=-1 +kerning first=119 second=242 amount=-1 +kerning first=260 second=242 amount=-1 +kerning first=333 second=380 amount=-1 +kerning first=196 second=101 amount=-1 +kerning first=369 second=380 amount=-1 +kerning first=347 second=367 amount=-1 +kerning first=85 second=197 amount=-2 +kerning first=108 second=8217 amount=-2 +kerning first=296 second=242 amount=-1 +kerning first=367 second=103 amount=-1 +kerning first=1037 second=1060 amount=-1 +kerning first=1113 second=1117 amount=-1 +kerning first=76 second=353 amount=-1 +kerning first=368 second=242 amount=-1 +kerning first=219 second=225 amount=-2 +kerning first=262 second=197 amount=-2 +kerning first=87 second=105 amount=-1 +kerning first=350 second=315 amount=-1 +kerning first=201 second=119 amount=-1 +kerning first=1069 second=1049 amount=-1 +kerning first=321 second=8217 amount=-2 +kerning first=334 second=197 amount=-2 +kerning first=323 second=228 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=287 second=228 amount=-1 +kerning first=262 second=108 amount=-1 +kerning first=84 second=380 amount=-2 +kerning first=78 second=225 amount=-1 +kerning first=8220 second=101 amount=-1 +kerning first=1047 second=1083 amount=-1 +kerning first=226 second=108 amount=-1 +kerning first=120 second=380 amount=-1 +kerning first=45 second=221 amount=-2 +kerning first=72 second=231 amount=-1 +kerning first=347 second=46 amount=-1 +kerning first=203 second=74 amount=-1 +kerning first=381 second=119 amount=-1 +kerning first=76 second=256 amount=-1 +kerning first=84 second=352 amount=-2 +kerning first=121 second=122 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=232 second=102 amount=-1 +kerning first=69 second=289 amount=-1 +kerning first=291 second=225 amount=-1 +kerning first=370 second=122 amount=-1 +kerning first=203 second=46 amount=-1 +kerning first=327 second=225 amount=-1 +kerning first=334 second=122 amount=-1 +kerning first=207 second=71 amount=-1 +kerning first=376 second=116 amount=-1 +kerning first=334 second=313 amount=-1 +kerning first=363 second=225 amount=-1 +kerning first=298 second=122 amount=-1 +kerning first=307 second=117 amount=-1 +kerning first=315 second=71 amount=-1 +kerning first=122 second=307 amount=-1 +kerning first=217 second=256 amount=-2 +kerning first=262 second=122 amount=-1 +kerning first=311 second=46 amount=-1 +kerning first=87 second=77 amount=-1 +kerning first=98 second=46 amount=-2 +kerning first=219 second=211 amount=-1 +kerning first=83 second=379 amount=-1 +kerning first=209 second=44 amount=-1 +kerning first=253 second=101 amount=-1 +kerning first=108 second=245 amount=-1 +kerning first=310 second=290 amount=-1 +kerning first=268 second=102 amount=-1 +kerning first=219 second=347 amount=-1 +kerning first=1045 second=1098 amount=-1 +kerning first=327 second=211 amount=-1 +kerning first=376 second=102 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=203 second=112 amount=-1 +kerning first=1052 second=1086 amount=-1 +kerning first=211 second=171 amount=-1 +kerning first=98 second=112 amount=-1 +kerning first=370 second=211 amount=-1 +kerning first=337 second=107 amount=-1 +kerning first=204 second=382 amount=-1 +kerning first=209 second=216 amount=-1 +kerning first=88 second=107 amount=-1 +kerning first=235 second=8221 amount=-1 +kerning first=8220 second=115 amount=-1 +kerning first=70 second=171 amount=-2 +kerning first=193 second=107 amount=-1 +kerning first=365 second=105 amount=-1 +kerning first=377 second=257 amount=-1 +kerning first=298 second=235 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=1036 second=1072 amount=-1 +kerning first=1044 second=1098 amount=-1 +kerning first=370 second=235 amount=-1 +kerning first=307 second=8221 amount=-1 +kerning first=221 second=105 amount=-1 +kerning first=347 second=112 amount=-1 +kerning first=221 second=81 amount=-1 +kerning first=311 second=112 amount=-1 +kerning first=355 second=171 amount=-1 +kerning first=275 second=112 amount=-1 +kerning first=268 second=296 amount=-1 +kerning first=73 second=67 amount=-1 +kerning first=214 second=327 amount=-1 +kerning first=350 second=249 amount=-1 +kerning first=376 second=296 amount=-1 +kerning first=234 second=251 amount=-1 +kerning first=70 second=100 amount=-1 +kerning first=75 second=230 amount=-1 +kerning first=198 second=251 amount=-1 +kerning first=8217 second=233 amount=-2 +kerning first=195 second=117 amount=-1 +kerning first=208 second=204 amount=-1 +kerning first=314 second=249 amount=-1 +kerning first=205 second=275 amount=-1 +kerning first=111 second=380 amount=-1 +kerning first=211 second=346 amount=-1 +kerning first=378 second=251 amount=-1 +kerning first=280 second=204 amount=-1 +kerning first=83 second=256 amount=-2 +kerning first=352 second=204 amount=-1 +kerning first=221 second=379 amount=-1 +kerning first=45 second=353 amount=-1 +kerning first=85 second=211 amount=-1 +kerning first=377 second=259 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=45 second=83 amount=-2 +kerning first=288 second=230 amount=-1 +kerning first=198 second=223 amount=-1 +kerning first=81 second=83 amount=-1 +kerning first=206 second=249 amount=-1 +kerning first=262 second=211 amount=-2 +kerning first=216 second=230 amount=-1 +kerning first=298 second=211 amount=-1 +kerning first=252 second=230 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=222 second=83 amount=-1 +kerning first=101 second=249 amount=-1 +kerning first=368 second=256 amount=-2 +kerning first=332 second=256 amount=-2 +kerning first=1113 second=1075 amount=-1 +kerning first=221 second=109 amount=-1 +kerning first=368 second=284 amount=-1 +kerning first=330 second=83 amount=-1 +kerning first=88 second=339 amount=-1 +kerning first=8217 second=271 amount=-2 +kerning first=366 second=83 amount=-1 +kerning first=371 second=237 amount=-1 +kerning first=296 second=284 amount=-1 +kerning first=209 second=244 amount=-1 +kerning first=335 second=237 amount=-1 +kerning first=378 second=289 amount=-1 +kerning first=70 second=199 amount=-1 +kerning first=263 second=237 amount=-1 +kerning first=260 second=284 amount=-1 +kerning first=203 second=362 amount=-1 +kerning first=193 second=339 amount=-1 +kerning first=1072 second=1095 amount=-1 +kerning first=122 second=237 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=86 second=237 amount=-1 +kerning first=346 second=274 amount=-1 +kerning first=288 second=282 amount=-1 +kerning first=381 second=194 amount=-1 +kerning first=313 second=378 amount=-1 +kerning first=316 second=232 amount=-1 +kerning first=268 second=334 amount=-2 +kerning first=84 second=345 amount=-1 +kerning first=216 second=282 amount=-1 +kerning first=67 second=232 amount=-1 +kerning first=201 second=194 amount=-1 +kerning first=304 second=334 amount=-1 +kerning first=272 second=289 amount=-1 +kerning first=198 second=289 amount=-1 +kerning first=71 second=198 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=314 second=277 amount=-1 +kerning first=103 second=232 amount=-1 +kerning first=376 second=334 amount=-1 +kerning first=352 second=209 amount=-1 +kerning first=252 second=254 amount=-1 +kerning first=257 second=351 amount=-1 +kerning first=330 second=121 amount=-1 +kerning first=221 second=351 amount=-2 +kerning first=286 second=327 amount=-1 +kerning first=324 second=254 amount=-1 +kerning first=206 second=277 amount=-1 +kerning first=258 second=121 amount=-1 +kerning first=1038 second=1090 amount=-1 +kerning first=75 second=254 amount=-1 +kerning first=80 second=351 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=117 second=121 amount=-1 +kerning first=1098 second=1095 amount=-1 +kerning first=204 second=350 amount=-1 +kerning first=1062 second=1095 amount=-1 +kerning first=350 second=69 amount=-1 +kerning first=45 second=121 amount=-2 +kerning first=198 second=261 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=234 second=261 amount=-1 +kerning first=229 second=367 amount=-1 +kerning first=278 second=69 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=314 second=305 amount=-1 +kerning first=196 second=245 amount=-1 +kerning first=236 second=117 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=8217 second=243 amount=-2 +kerning first=76 second=260 amount=-1 +kerning first=200 second=117 amount=-1 +kerning first=105 second=117 amount=-1 +kerning first=255 second=8249 amount=-2 +kerning first=8216 second=224 amount=-1 +kerning first=217 second=260 amount=-2 +kerning first=332 second=76 amount=-1 +kerning first=350 second=305 amount=-1 +kerning first=365 second=351 amount=-1 +kerning first=305 second=8221 amount=-1 +kerning first=211 second=72 amount=-1 +kerning first=211 second=374 amount=-1 +kerning first=380 second=117 amount=-1 +kerning first=203 second=316 amount=-1 +kerning first=66 second=317 amount=-2 +kerning first=368 second=336 amount=-1 +kerning first=192 second=337 amount=-1 +kerning first=268 second=362 amount=-1 +kerning first=275 second=316 amount=-1 +kerning first=256 second=311 amount=-1 +kerning first=122 second=241 amount=-1 +kerning first=87 second=337 amount=-2 +kerning first=86 second=241 amount=-1 +kerning first=370 second=378 amount=-1 +kerning first=347 second=316 amount=-1 +kerning first=262 second=382 amount=-1 +kerning first=290 second=356 amount=-1 +kerning first=298 second=382 amount=-1 +kerning first=115 second=311 amount=-1 +kerning first=199 second=267 amount=-1 +kerning first=334 second=382 amount=-1 +kerning first=75 second=226 amount=-1 +kerning first=264 second=337 amount=-1 +kerning first=370 second=382 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=1055 second=1057 amount=-1 +kerning first=1059 second=1082 amount=-2 +kerning first=87 second=361 amount=-1 +kerning first=197 second=221 amount=-3 +kerning first=192 second=361 amount=-1 +kerning first=83 second=252 amount=-1 +kerning first=1025 second=1037 amount=-1 +kerning first=264 second=361 amount=-1 +kerning first=228 second=361 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=107 second=263 amount=-1 +kerning first=198 second=229 amount=-1 +kerning first=84 second=78 amount=-1 +kerning first=366 second=121 amount=-1 +kerning first=368 second=252 amount=-1 +kerning first=262 second=207 amount=-1 +kerning first=354 second=70 amount=-1 +kerning first=356 second=201 amount=-1 +kerning first=307 second=316 amount=-1 +kerning first=220 second=227 amount=-2 +kerning first=45 second=381 amount=-2 +kerning first=346 second=44 amount=-2 +kerning first=284 second=201 amount=-1 +kerning first=81 second=381 amount=-1 +kerning first=381 second=246 amount=-1 +kerning first=224 second=252 amount=-1 +kerning first=212 second=201 amount=-1 +kerning first=289 second=365 amount=-1 +kerning first=364 second=227 amount=-2 +kerning first=382 second=44 amount=-1 +kerning first=296 second=252 amount=-1 +kerning first=8220 second=111 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=65 second=45 amount=-2 +kerning first=1057 second=1036 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=216 second=226 amount=-1 +kerning first=337 second=103 amount=-1 +kerning first=71 second=201 amount=-1 +kerning first=379 second=291 amount=-2 +kerning first=252 second=226 amount=-1 +kerning first=288 second=226 amount=-1 +kerning first=366 second=381 amount=-1 +kerning first=307 second=291 amount=-1 +kerning first=263 second=259 amount=-1 +kerning first=229 second=103 amount=-1 +kerning first=115 second=227 amount=-1 +kerning first=206 second=45 amount=-2 +kerning first=260 second=336 amount=-1 +kerning first=79 second=227 amount=-1 +kerning first=203 second=84 amount=-1 +kerning first=314 second=45 amount=-1 +kerning first=296 second=336 amount=-1 +kerning first=199 second=291 amount=-1 +kerning first=278 second=45 amount=-1 +kerning first=201 second=218 amount=-1 +kerning first=1039 second=1092 amount=-1 +kerning first=1100 second=1094 amount=-1 +kerning first=8250 second=220 amount=-2 +kerning first=1065 second=1090 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=213 second=192 amount=-2 +kerning first=261 second=314 amount=-1 +kerning first=67 second=115 amount=-1 +kerning first=205 second=243 amount=-1 +kerning first=225 second=314 amount=-1 +kerning first=280 second=115 amount=-1 +kerning first=333 second=314 amount=-1 +kerning first=316 second=115 amount=-1 +kerning first=218 second=120 amount=-1 +kerning first=264 second=365 amount=-1 +kerning first=199 second=8249 amount=-2 +kerning first=122 second=269 amount=-1 +kerning first=377 second=193 amount=-1 +kerning first=254 second=120 amount=-1 +kerning first=228 second=365 amount=-1 +kerning first=263 second=269 amount=-1 +kerning first=244 second=115 amount=-1 +kerning first=199 second=263 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=350 second=278 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=69 second=70 amount=-1 +kerning first=369 second=314 amount=-1 +kerning first=216 second=198 amount=-2 +kerning first=258 second=353 amount=-1 +kerning first=282 second=70 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=350 second=73 amount=-1 +kerning first=87 second=365 amount=-1 +kerning first=352 second=115 amount=-1 +kerning first=352 second=45 amount=-1 +kerning first=330 second=353 amount=-1 +kerning first=210 second=70 amount=-1 +kerning first=113 second=120 amount=-1 +kerning first=202 second=224 amount=-1 +kerning first=366 second=353 amount=-1 +kerning first=371 second=269 amount=-1 +kerning first=321 second=325 amount=-1 +kerning first=310 second=224 amount=-1 +kerning first=274 second=224 amount=-1 +kerning first=105 second=98 amount=-1 +kerning first=382 second=224 amount=-1 +kerning first=379 second=8249 amount=-1 +kerning first=278 second=73 amount=-1 +kerning first=346 second=224 amount=-1 +kerning first=85 second=235 amount=-1 +kerning first=90 second=278 amount=-1 +kerning first=74 second=101 amount=-1 +kerning first=121 second=235 amount=-1 +kerning first=218 second=328 amount=-1 +kerning first=307 second=8249 amount=-1 +kerning first=362 second=120 amount=-1 +kerning first=219 second=331 amount=-1 +kerning first=250 second=303 amount=-1 +kerning first=332 second=280 amount=-1 +kerning first=346 second=367 amount=-1 +kerning first=113 second=328 amount=-1 +kerning first=69 second=98 amount=-1 +kerning first=262 second=235 amount=-1 +kerning first=220 second=283 amount=-1 +kerning first=211 second=370 amount=-1 +kerning first=362 second=328 amount=-1 +kerning first=371 second=241 amount=-1 +kerning first=287 second=101 amount=-1 +kerning first=323 second=101 amount=-1 +kerning first=1046 second=1118 amount=-1 +kerning first=1047 second=1031 amount=-1 +kerning first=99 second=118 amount=-1 +kerning first=195 second=243 amount=-1 +kerning first=1040 second=1073 amount=-1 +kerning first=364 second=283 amount=-1 +kerning first=113 second=109 amount=-1 +kerning first=213 second=325 amount=-1 +kerning first=282 second=98 amount=-1 +kerning first=200 second=378 amount=-1 +kerning first=256 second=283 amount=-1 +kerning first=263 second=241 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=207 second=335 amount=-1 +kerning first=197 second=108 amount=-1 +kerning first=376 second=380 amount=-2 +kerning first=371 second=283 amount=-1 +kerning first=195 second=8220 amount=-3 +kerning first=321 second=241 amount=-1 +kerning first=344 second=85 amount=-1 +kerning first=374 second=362 amount=-1 +kerning first=263 second=283 amount=-1 +kerning first=1069 second=1045 amount=-1 +kerning first=232 second=380 amount=-1 +kerning first=272 second=85 amount=-1 +kerning first=305 second=108 amount=-1 +kerning first=268 second=380 amount=-1 +kerning first=102 second=335 amount=-1 +kerning first=310 second=286 amount=-1 +kerning first=304 second=380 amount=-1 +kerning first=200 second=85 amount=-1 +kerning first=77 second=338 amount=-1 +kerning first=303 second=248 amount=-1 +kerning first=256 second=231 amount=-1 +kerning first=110 second=115 amount=-1 +kerning first=77 second=351 amount=-1 +kerning first=8250 second=230 amount=-1 +kerning first=231 second=248 amount=-1 +kerning first=108 second=241 amount=-1 +kerning first=315 second=249 amount=-1 +kerning first=267 second=248 amount=-1 +kerning first=202 second=286 amount=-1 +kerning first=220 second=231 amount=-1 +kerning first=74 second=115 amount=-1 +kerning first=380 second=331 amount=-1 +kerning first=287 second=115 amount=-1 +kerning first=1091 second=1113 amount=-1 +kerning first=195 second=248 amount=-1 +kerning first=323 second=115 amount=-1 +kerning first=200 second=331 amount=-1 +kerning first=90 second=248 amount=-1 +kerning first=364 second=231 amount=-1 +kerning first=251 second=115 amount=-1 +kerning first=76 second=70 amount=-1 +kerning first=290 second=78 amount=-1 +kerning first=197 second=368 amount=-2 +kerning first=236 second=331 amount=-1 +kerning first=74 second=210 amount=-1 +kerning first=249 second=255 amount=-1 +kerning first=218 second=352 amount=-1 +kerning first=97 second=252 amount=-1 +kerning first=222 second=200 amount=-1 +kerning first=337 second=351 amount=-1 +kerning first=364 second=245 amount=-1 +kerning first=69 second=278 amount=-1 +kerning first=115 second=307 amount=-1 +kerning first=8216 second=350 amount=-1 +kerning first=260 second=113 amount=-1 +kerning first=376 second=366 amount=-1 +kerning first=202 second=252 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=108 second=255 amount=-1 +kerning first=84 second=328 amount=-1 +kerning first=354 second=8250 amount=-1 +kerning first=269 second=122 amount=-1 +kerning first=72 second=255 amount=-1 +kerning first=362 second=352 amount=-1 +kerning first=8218 second=305 amount=-1 +kerning first=233 second=122 amount=-1 +kerning first=344 second=71 amount=-1 +kerning first=90 second=262 amount=-1 +kerning first=379 second=323 amount=-1 +kerning first=210 second=278 amount=-1 +kerning first=107 second=233 amount=-1 +kerning first=196 second=366 amount=-2 +kerning first=317 second=290 amount=-1 +kerning first=382 second=252 amount=-1 +kerning first=282 second=278 amount=-1 +kerning first=354 second=278 amount=-1 +kerning first=1045 second=1118 amount=-1 +kerning first=77 second=352 amount=-1 +kerning first=81 second=200 amount=-1 +kerning first=256 second=245 amount=-1 +kerning first=209 second=290 amount=-1 +kerning first=274 second=252 amount=-1 +kerning first=45 second=200 amount=-3 +kerning first=356 second=233 amount=-2 +kerning first=220 second=245 amount=-1 +kerning first=122 second=283 amount=-1 +kerning first=310 second=252 amount=-1 +kerning first=1113 second=1085 amount=-1 +kerning first=346 second=252 amount=-1 +kerning first=314 second=333 amount=-1 +kerning first=1059 second=1092 amount=-2 +kerning first=336 second=87 amount=-1 +kerning first=84 second=110 amount=-1 +kerning first=268 second=106 amount=-1 +kerning first=264 second=87 amount=-1 +kerning first=217 second=288 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=379 second=281 amount=-1 +kerning first=73 second=113 amount=-1 +kerning first=192 second=87 amount=-3 +kerning first=280 second=84 amount=-1 +kerning first=76 second=288 amount=-1 +kerning first=192 second=347 amount=-1 +kerning first=199 second=281 amount=-1 +kerning first=200 second=65 amount=-1 +kerning first=255 second=243 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=368 second=326 amount=-1 +kerning first=8222 second=375 amount=-1 +kerning first=89 second=198 amount=-3 +kerning first=291 second=243 amount=-1 +kerning first=217 second=196 amount=-2 +kerning first=87 second=347 amount=-2 +kerning first=272 second=65 amount=-2 +kerning first=82 second=104 amount=-1 +kerning first=323 second=210 amount=-1 +kerning first=116 second=291 amount=-1 +kerning first=197 second=217 amount=-2 +kerning first=78 second=243 amount=-1 +kerning first=325 second=288 amount=-1 +kerning first=1058 second=1076 amount=-1 +kerning first=1054 second=1039 amount=-1 +kerning first=321 second=255 amount=-1 +kerning first=69 second=354 amount=-1 +kerning first=219 second=243 amount=-1 +kerning first=374 second=198 amount=-3 +kerning first=78 second=229 amount=-1 +kerning first=1050 second=1047 amount=-1 +kerning first=1069 second=1031 amount=-1 +kerning first=378 second=275 amount=-1 +kerning first=73 second=99 amount=-1 +kerning first=69 second=80 amount=-1 +kerning first=219 second=229 amount=-2 +kerning first=264 second=73 amount=-1 +kerning first=8217 second=351 amount=-1 +kerning first=66 second=377 amount=-2 +kerning first=266 second=198 amount=-2 +kerning first=375 second=248 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=66 second=75 amount=-2 +kerning first=338 second=198 amount=-1 +kerning first=298 second=118 amount=-1 +kerning first=363 second=229 amount=-1 +kerning first=8218 second=249 amount=-1 +kerning first=315 second=75 amount=-1 +kerning first=354 second=80 amount=-1 +kerning first=262 second=118 amount=-1 +kerning first=84 second=68 amount=-1 +kerning first=370 second=118 amount=-1 +kerning first=374 second=380 amount=-2 +kerning first=327 second=229 amount=-1 +kerning first=121 second=118 amount=-1 +kerning first=339 second=8220 amount=-1 +kerning first=376 second=120 amount=-1 +kerning first=210 second=80 amount=-1 +kerning first=85 second=118 amount=-1 +kerning first=1040 second=1077 amount=-1 +kerning first=232 second=106 amount=-1 +kerning first=77 second=332 amount=-1 +kerning first=226 second=118 amount=-1 +kerning first=267 second=8220 amount=-1 +kerning first=218 second=332 amount=-1 +kerning first=282 second=80 amount=-1 +kerning first=315 second=377 amount=-1 +kerning first=231 second=8220 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=198 second=219 amount=-1 +kerning first=79 second=287 amount=-1 +kerning first=350 second=8217 amount=-1 +kerning first=288 second=256 amount=-1 +kerning first=220 second=287 amount=-2 +kerning first=310 second=244 amount=-1 +kerning first=362 second=332 amount=-1 +kerning first=90 second=242 amount=-1 +kerning first=382 second=244 amount=-1 +kerning first=1037 second=1108 amount=-1 +kerning first=256 second=287 amount=-1 +kerning first=195 second=242 amount=-1 +kerning first=364 second=287 amount=-2 +kerning first=242 second=8217 amount=-1 +kerning first=328 second=287 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=1027 second=1040 amount=-2 +kerning first=267 second=242 amount=-1 +kerning first=86 second=289 amount=-2 +kerning first=231 second=242 amount=-1 +kerning first=110 second=121 amount=-1 +kerning first=122 second=289 amount=-1 +kerning first=8250 second=224 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=192 second=99 amount=-1 +kerning first=227 second=289 amount=-1 +kerning first=258 second=111 amount=-1 +kerning first=263 second=289 amount=-1 +kerning first=375 second=242 amount=-1 +kerning first=67 second=119 amount=-1 +kerning first=194 second=254 amount=-1 +kerning first=103 second=119 amount=-1 +kerning first=330 second=111 amount=-1 +kerning first=230 second=254 amount=-1 +kerning first=335 second=289 amount=-1 +kerning first=211 second=82 amount=-1 +kerning first=366 second=111 amount=-1 +kerning first=266 second=254 amount=-1 +kerning first=371 second=289 amount=-1 +kerning first=346 second=230 amount=-1 +kerning first=377 second=197 amount=-1 +kerning first=315 second=117 amount=-1 +kerning first=382 second=230 amount=-1 +kerning first=244 second=119 amount=-1 +kerning first=222 second=97 amount=-1 +kerning first=279 second=117 amount=-1 +kerning first=274 second=230 amount=-1 +kerning first=280 second=119 amount=-1 +kerning first=69 second=74 amount=-1 +kerning first=210 second=354 amount=-1 +kerning first=310 second=230 amount=-1 +kerning first=316 second=119 amount=-1 +kerning first=117 second=97 amount=-1 +kerning first=85 second=361 amount=-1 +kerning first=371 second=275 amount=-1 +kerning first=202 second=230 amount=-1 +kerning first=330 second=97 amount=-1 +kerning first=282 second=354 amount=-1 +kerning first=331 second=250 amount=-1 +kerning first=323 second=121 amount=-1 +kerning first=366 second=97 amount=-2 +kerning first=1073 second=1078 amount=-1 +kerning first=295 second=250 amount=-1 +kerning first=1113 second=1099 amount=-1 +kerning first=287 second=121 amount=-1 +kerning first=1043 second=1054 amount=-1 +kerning first=251 second=121 amount=-1 +kerning first=198 second=205 amount=-1 +kerning first=282 second=74 amount=-1 +kerning first=367 second=250 amount=-1 +kerning first=204 second=378 amount=-1 +kerning first=374 second=240 amount=-2 +kerning first=187 second=250 amount=-1 +kerning first=251 second=107 amount=-1 +kerning first=354 second=74 amount=-2 +kerning first=302 second=240 amount=-1 +kerning first=65 second=333 amount=-1 +kerning first=259 second=250 amount=-1 +kerning first=290 second=86 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=199 second=338 amount=-2 +kerning first=240 second=378 amount=-1 +kerning first=327 second=287 amount=-1 +kerning first=101 second=8217 amount=-1 +kerning first=370 second=269 amount=-1 +kerning first=99 second=378 amount=-1 +kerning first=82 second=250 amount=-1 +kerning first=207 second=117 amount=-1 +kerning first=8216 second=370 amount=-1 +kerning first=84 second=116 amount=-1 +kerning first=89 second=240 amount=-2 +kerning first=268 second=310 amount=-1 +kerning first=195 second=318 amount=-1 +kerning first=231 second=318 amount=-1 +kerning first=68 second=220 amount=-1 +kerning first=69 second=298 amount=-1 +kerning first=267 second=318 amount=-1 +kerning first=280 second=214 amount=-1 +kerning first=266 second=240 amount=-1 +kerning first=187 second=194 amount=-2 +kerning first=303 second=318 amount=-1 +kerning first=376 second=310 amount=-1 +kerning first=339 second=318 amount=-1 +kerning first=210 second=298 amount=-1 +kerning first=1048 second=1089 amount=-1 +kerning first=375 second=318 amount=-1 +kerning first=314 second=259 amount=-1 +kerning first=323 second=375 amount=-1 +kerning first=278 second=259 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=287 second=375 amount=-1 +kerning first=200 second=71 amount=-1 +kerning first=67 second=214 amount=-2 +kerning first=251 second=375 amount=-1 +kerning first=1025 second=1041 amount=-1 +kerning first=76 second=330 amount=-1 +kerning first=350 second=259 amount=-1 +kerning first=379 second=77 amount=-1 +kerning first=108 second=231 amount=-1 +kerning first=101 second=259 amount=-1 +kerning first=45 second=97 amount=-1 +kerning first=317 second=220 amount=-1 +kerning first=203 second=296 amount=-1 +kerning first=206 second=259 amount=-1 +kerning first=1059 second=1086 amount=-2 +kerning first=365 second=369 amount=-1 +kerning first=356 second=253 amount=-1 +kerning first=352 second=228 amount=-1 +kerning first=111 second=105 amount=-1 +kerning first=377 second=374 amount=-1 +kerning first=316 second=228 amount=-1 +kerning first=90 second=304 amount=-1 +kerning first=268 second=324 amount=-1 +kerning first=100 second=251 amount=-1 +kerning first=232 second=324 amount=-1 +kerning first=8216 second=356 amount=-1 +kerning first=241 second=251 amount=-1 +kerning first=221 second=369 amount=-1 +kerning first=208 second=228 amount=-1 +kerning first=280 second=226 amount=-1 +kerning first=205 second=251 amount=-1 +kerning first=314 second=273 amount=-1 +kerning first=110 second=375 amount=-1 +kerning first=382 second=281 amount=-1 +kerning first=313 second=251 amount=-1 +kerning first=1054 second=1055 amount=-1 +kerning first=103 second=228 amount=-1 +kerning first=277 second=251 amount=-1 +kerning first=257 second=369 amount=-1 +kerning first=67 second=228 amount=-1 +kerning first=216 second=206 amount=-1 +kerning first=8217 second=261 amount=-3 +kerning first=282 second=298 amount=-1 +kerning first=66 second=70 amount=-2 +kerning first=354 second=284 amount=-1 +kerning first=288 second=206 amount=-1 +kerning first=209 second=234 amount=-1 +kerning first=187 second=217 amount=-2 +kerning first=354 second=298 amount=-1 +kerning first=378 second=279 amount=-1 +kerning first=282 second=284 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=87 second=290 amount=-1 +kerning first=248 second=253 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=8218 second=311 amount=-1 +kerning first=353 second=45 amount=-1 +kerning first=1051 second=1108 amount=-1 +kerning first=69 second=284 amount=-1 +kerning first=229 second=363 amount=-1 +kerning first=221 second=355 amount=-1 +kerning first=88 second=83 amount=-1 +kerning first=224 second=318 amount=-1 +kerning first=336 second=220 amount=-1 +kerning first=260 second=318 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=193 second=83 amount=-2 +kerning first=314 second=263 amount=-1 +kerning first=198 second=213 amount=-1 +kerning first=286 second=313 amount=-1 +kerning first=65 second=263 amount=-1 +kerning first=208 second=218 amount=-1 +kerning first=214 second=313 amount=-1 +kerning first=206 second=263 amount=-1 +kerning first=67 second=218 amount=-1 +kerning first=69 second=218 amount=-1 +kerning first=203 second=310 amount=-1 +kerning first=221 second=303 amount=-1 +kerning first=75 second=220 amount=-1 +kerning first=317 second=255 amount=-1 +kerning first=337 second=353 amount=-1 +kerning first=321 second=315 amount=-1 +kerning first=365 second=365 amount=-1 +kerning first=85 second=225 amount=-2 +kerning first=365 second=303 amount=-1 +kerning first=213 second=315 amount=-1 +kerning first=257 second=365 amount=-1 +kerning first=288 second=220 amount=-1 +kerning first=193 second=353 amount=-1 +kerning first=85 second=114 amount=-1 +kerning first=221 second=365 amount=-1 +kerning first=229 second=353 amount=-1 +kerning first=216 second=220 amount=-1 +kerning first=1044 second=1060 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=78 second=235 amount=-1 +kerning first=298 second=225 amount=-1 +kerning first=354 second=45 amount=-3 +kerning first=275 second=98 amount=-1 +kerning first=334 second=225 amount=-1 +kerning first=381 second=228 amount=-1 +kerning first=370 second=225 amount=-2 +kerning first=219 second=235 amount=-1 +kerning first=1113 second=1093 amount=-1 +kerning first=347 second=98 amount=-1 +kerning first=255 second=235 amount=-1 +kerning first=121 second=225 amount=-2 +kerning first=291 second=235 amount=-1 +kerning first=1059 second=1100 amount=-2 +kerning first=332 second=270 amount=-1 +kerning first=327 second=235 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=201 second=228 amount=-1 +kerning first=203 second=98 amount=-1 +kerning first=45 second=363 amount=-1 +kerning first=262 second=225 amount=-1 +kerning first=352 second=218 amount=-1 +kerning first=275 second=102 amount=-1 +kerning first=117 second=363 amount=-1 +kerning first=232 second=46 amount=-2 +kerning first=278 second=317 amount=-1 +kerning first=211 second=350 amount=-1 +kerning first=347 second=102 amount=-1 +kerning first=268 second=46 amount=-1 +kerning first=108 second=305 amount=-1 +kerning first=278 second=325 amount=-1 +kerning first=76 second=280 amount=-1 +kerning first=304 second=46 amount=-1 +kerning first=192 second=355 amount=-1 +kerning first=1116 second=1108 amount=-1 +kerning first=258 second=363 amount=-1 +kerning first=83 second=318 amount=-1 +kerning first=310 second=356 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=87 second=355 amount=-1 +kerning first=286 second=270 amount=-1 +kerning first=203 second=102 amount=-1 +kerning first=330 second=363 amount=-1 +kerning first=83 second=260 amount=-2 +kerning first=71 second=200 amount=-1 +kerning first=366 second=363 amount=-1 +kerning first=207 second=67 amount=-1 +kerning first=211 second=86 amount=-1 +kerning first=310 second=117 amount=-1 +kerning first=1027 second=1117 amount=-1 +kerning first=249 second=316 amount=-1 +kerning first=264 second=81 amount=-2 +kerning first=8216 second=193 amount=-4 +kerning first=268 second=112 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=77 second=171 amount=-2 +kerning first=232 second=112 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=113 second=171 amount=-1 +kerning first=368 second=260 amount=-2 +kerning first=205 second=261 amount=-1 +kerning first=196 second=112 amount=-1 +kerning first=290 second=365 amount=-1 +kerning first=332 second=260 amount=-2 +kerning first=381 second=283 amount=-1 +kerning first=258 second=107 amount=-1 +kerning first=352 second=280 amount=-1 +kerning first=277 second=261 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=377 second=211 amount=-1 +kerning first=317 second=253 amount=-1 +kerning first=326 second=171 amount=-1 +kerning first=198 second=209 amount=-1 +kerning first=66 second=327 amount=-2 +kerning first=362 second=171 amount=-3 +kerning first=250 second=105 amount=-1 +kerning first=295 second=254 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=218 second=171 amount=-3 +kerning first=331 second=254 amount=-1 +kerning first=367 second=254 amount=-1 +kerning first=315 second=327 amount=-1 +kerning first=376 second=112 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=290 second=171 amount=-1 +kerning first=218 second=346 amount=-1 +kerning first=204 second=100 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=249 second=249 amount=-1 +kerning first=108 second=249 amount=-1 +kerning first=8217 second=257 amount=-3 +kerning first=68 second=282 amount=-1 +kerning first=77 second=346 amount=-1 +kerning first=88 second=353 amount=-1 +kerning first=78 second=333 amount=-1 +kerning first=362 second=346 amount=-1 +kerning first=1036 second=1058 amount=-1 +kerning first=84 second=334 amount=-1 +kerning first=286 second=379 amount=-1 +kerning first=1047 second=1079 amount=-1 +kerning first=68 second=230 amount=-1 +kerning first=290 second=346 amount=-1 +kerning first=99 second=100 amount=-1 +kerning first=321 second=249 amount=-1 +kerning first=1070 second=1103 amount=-1 +kerning first=364 second=350 amount=-1 +kerning first=272 second=325 amount=-1 +kerning first=117 second=107 amount=-1 +kerning first=1040 second=1091 amount=-1 +kerning first=90 second=256 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=1069 second=1039 amount=-1 +kerning first=353 second=230 amount=-1 +kerning first=72 second=249 amount=-1 +kerning first=45 second=107 amount=-1 +kerning first=281 second=230 amount=-1 +kerning first=344 second=339 amount=-1 +kerning first=282 second=84 amount=-1 +kerning first=1054 second=1059 amount=-1 +kerning first=193 second=89 amount=-3 +kerning first=1098 second=1094 amount=-1 +kerning first=210 second=84 amount=-1 +kerning first=74 second=240 amount=-1 +kerning first=344 second=79 amount=-1 +kerning first=366 second=192 amount=-2 +kerning first=8218 second=357 amount=-1 +kerning first=356 second=187 amount=-1 +kerning first=362 second=237 amount=-1 +kerning first=381 second=281 amount=-1 +kerning first=364 second=237 amount=-1 +kerning first=88 second=89 amount=-1 +kerning first=222 second=192 amount=-2 +kerning first=232 second=314 amount=-1 +kerning first=339 second=44 amount=-2 +kerning first=381 second=232 amount=-1 +kerning first=274 second=200 amount=-1 +kerning first=196 second=314 amount=-1 +kerning first=221 second=99 amount=-2 +kerning first=336 second=8249 amount=-1 +kerning first=338 second=118 amount=-1 +kerning first=99 second=104 amount=-1 +kerning first=315 second=378 amount=-1 +kerning first=220 second=237 amount=-1 +kerning first=228 second=8249 amount=-1 +kerning first=262 second=217 amount=-1 +kerning first=45 second=192 amount=-2 +kerning first=268 second=314 amount=-1 +kerning first=371 second=227 amount=-1 +kerning first=248 second=187 amount=-1 +kerning first=375 second=44 amount=-3 +kerning first=115 second=237 amount=-1 +kerning first=317 second=282 amount=-1 +kerning first=334 second=217 amount=-1 +kerning first=379 second=277 amount=-1 +kerning first=192 second=8249 amount=-2 +kerning first=68 second=224 amount=-1 +kerning first=267 second=44 amount=-1 +kerning first=240 second=104 amount=-1 +kerning first=108 second=261 amount=-1 +kerning first=8220 second=121 amount=-1 +kerning first=87 second=8249 amount=-3 +kerning first=87 second=351 amount=-2 +kerning first=8217 second=251 amount=-1 +kerning first=187 second=202 amount=-3 +kerning first=1101 second=1076 amount=-1 +kerning first=83 second=326 amount=-1 +kerning first=192 second=351 amount=-1 +kerning first=119 second=326 amount=-1 +kerning first=203 second=302 amount=-1 +kerning first=378 second=269 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=80 second=99 amount=-1 +kerning first=117 second=371 amount=-1 +kerning first=281 second=224 amount=-1 +kerning first=264 second=347 amount=-1 +kerning first=260 second=253 amount=-1 +kerning first=228 second=347 amount=-1 +kerning first=353 second=224 amount=-1 +kerning first=325 second=44 amount=-1 +kerning first=216 second=196 amount=-2 +kerning first=206 second=267 amount=-1 +kerning first=366 second=367 amount=-1 +kerning first=119 second=275 amount=-1 +kerning first=379 second=69 amount=-1 +kerning first=65 second=267 amount=-1 +kerning first=258 second=367 amount=-1 +kerning first=45 second=371 amount=-1 +kerning first=314 second=267 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=277 second=257 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=258 second=101 amount=-1 +kerning first=228 second=351 amount=-1 +kerning first=1061 second=1047 amount=-1 +kerning first=208 second=374 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=330 second=101 amount=-1 +kerning first=200 second=79 amount=-1 +kerning first=117 second=367 amount=-1 +kerning first=1059 second=1096 amount=-2 +kerning first=366 second=101 amount=-1 +kerning first=220 second=241 amount=-1 +kerning first=269 second=382 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=264 second=291 amount=-1 +kerning first=296 second=266 amount=-1 +kerning first=228 second=291 amount=-1 +kerning first=192 second=291 amount=-1 +kerning first=377 second=382 amount=-1 +kerning first=68 second=226 amount=-1 +kerning first=1062 second=1057 amount=-1 +kerning first=8217 second=253 amount=-1 +kerning first=321 second=311 amount=-1 +kerning first=87 second=291 amount=-2 +kerning first=199 second=337 amount=-1 +kerning first=65 second=8221 amount=-3 +kerning first=317 second=286 amount=-1 +kerning first=115 second=241 amount=-1 +kerning first=351 second=331 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=8216 second=364 amount=-1 +kerning first=209 second=286 amount=-1 +kerning first=249 second=311 amount=-1 +kerning first=378 second=271 amount=-1 +kerning first=233 second=382 amount=-1 +kerning first=221 second=361 amount=-1 +kerning first=379 second=337 amount=-1 +kerning first=279 second=331 amount=-1 +kerning first=315 second=331 amount=-1 +kerning first=242 second=8221 amount=-1 +kerning first=103 second=241 amount=-1 +kerning first=101 second=8221 amount=-1 +kerning first=257 second=361 amount=-1 +kerning first=334 second=221 amount=-1 +kerning first=365 second=361 amount=-1 +kerning first=196 second=316 amount=-1 +kerning first=350 second=8221 amount=-1 +kerning first=232 second=316 amount=-1 +kerning first=8222 second=104 amount=-1 +kerning first=262 second=221 amount=-1 +kerning first=268 second=316 amount=-1 +kerning first=66 second=331 amount=-1 +kerning first=368 second=266 amount=-1 +kerning first=314 second=8221 amount=-2 +kerning first=231 second=252 amount=-1 +kerning first=249 second=45 amount=-1 +kerning first=222 second=103 amount=-1 +kerning first=267 second=252 amount=-1 +kerning first=122 second=227 amount=-1 +kerning first=213 second=45 amount=-1 +kerning first=303 second=252 amount=-1 +kerning first=86 second=227 amount=-2 +kerning first=321 second=45 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=339 second=252 amount=-1 +kerning first=81 second=103 amount=-1 +kerning first=216 second=86 amount=-1 +kerning first=45 second=103 amount=-1 +kerning first=310 second=229 amount=-1 +kerning first=90 second=252 amount=-1 +kerning first=76 second=278 amount=-1 +kerning first=278 second=323 amount=-1 +kerning first=76 second=336 amount=-1 +kerning first=263 second=227 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=350 second=323 amount=-1 +kerning first=281 second=226 amount=-1 +kerning first=217 second=336 amount=-1 +kerning first=374 second=246 amount=-1 +kerning first=377 second=207 amount=-1 +kerning first=286 second=317 amount=-1 +kerning first=269 second=46 amount=-1 +kerning first=353 second=226 amount=-1 +kerning first=78 second=233 amount=-1 +kerning first=302 second=246 amount=-1 +kerning first=211 second=356 amount=-1 +kerning first=325 second=336 amount=-1 +kerning first=266 second=246 amount=-1 +kerning first=366 second=103 amount=-2 +kerning first=211 second=90 amount=-1 +kerning first=69 second=84 amount=-1 +kerning first=330 second=103 amount=-1 +kerning first=194 second=246 amount=-1 +kerning first=336 second=291 amount=-1 +kerning first=219 second=233 amount=-1 +kerning first=80 second=339 amount=-1 +kerning first=258 second=103 amount=-1 +kerning first=1098 second=1098 amount=-1 +kerning first=286 second=103 amount=-1 +kerning first=116 second=45 amount=-1 +kerning first=196 second=356 amount=-3 +kerning first=122 second=259 amount=-1 +kerning first=279 second=347 amount=-1 +kerning first=257 second=45 amount=-1 +kerning first=236 second=369 amount=-1 +kerning first=214 second=103 amount=-1 +kerning first=118 second=246 amount=-1 +kerning first=366 second=375 amount=-1 +kerning first=221 second=45 amount=-3 +kerning first=200 second=369 amount=-1 +kerning first=82 second=246 amount=-1 +kerning first=1039 second=1086 amount=-1 +kerning first=109 second=103 amount=-1 +kerning first=8216 second=347 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=100 second=253 amount=-1 +kerning first=73 second=363 amount=-1 +kerning first=86 second=259 amount=-2 +kerning first=113 second=116 amount=-1 +kerning first=365 second=45 amount=-1 +kerning first=104 second=103 amount=-1 +kerning first=1055 second=1089 amount=-1 +kerning first=108 second=279 amount=-1 +kerning first=66 second=65 amount=-3 +kerning first=117 second=375 amount=-1 +kerning first=381 second=226 amount=-1 +kerning first=1059 second=1102 amount=-2 +kerning first=72 second=279 amount=-1 +kerning first=240 second=122 amount=-1 +kerning first=380 second=109 amount=-1 +kerning first=290 second=362 amount=-1 +kerning first=250 second=363 amount=-1 +kerning first=204 second=122 amount=-1 +kerning first=45 second=375 amount=-2 +kerning first=1091 second=1089 amount=-1 +kerning first=286 second=363 amount=-1 +kerning first=330 second=375 amount=-1 +kerning first=199 second=119 amount=-1 +kerning first=236 second=109 amount=-1 +kerning first=258 second=375 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=315 second=65 amount=-1 +kerning first=380 second=369 amount=-1 +kerning first=221 second=305 amount=-1 +kerning first=200 second=109 amount=-1 +kerning first=44 second=45 amount=-1 +kerning first=1047 second=1063 amount=-1 +kerning first=1113 second=1095 amount=-1 +kerning first=344 second=369 amount=-1 +kerning first=330 second=115 amount=-1 +kerning first=1038 second=1094 amount=-2 +kerning first=236 second=355 amount=-1 +kerning first=366 second=115 amount=-1 +kerning first=196 second=370 amount=-2 +kerning first=69 second=336 amount=-1 +kerning first=258 second=115 amount=-1 +kerning first=268 second=370 amount=-1 +kerning first=371 second=8217 amount=-2 +kerning first=380 second=355 amount=-1 +kerning first=214 second=89 amount=-1 +kerning first=200 second=364 amount=-1 +kerning first=1056 second=1053 amount=-1 +kerning first=344 second=355 amount=-1 +kerning first=282 second=336 amount=-1 +kerning first=212 second=196 amount=-2 +kerning first=205 second=253 amount=-1 +kerning first=8217 second=197 amount=-3 +kerning first=354 second=336 amount=-1 +kerning first=277 second=253 amount=-1 +kerning first=118 second=232 amount=-1 +kerning first=313 second=253 amount=-1 +kerning first=82 second=232 amount=-1 +kerning first=1091 second=1103 amount=-2 +kerning first=8250 second=254 amount=-1 +kerning first=84 second=332 amount=-1 +kerning first=376 second=82 amount=-1 +kerning first=376 second=328 amount=-1 +kerning first=73 second=335 amount=-1 +kerning first=280 second=196 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=371 second=231 amount=-1 +kerning first=1039 second=1104 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=352 second=196 amount=-2 +kerning first=336 second=315 amount=-1 +kerning first=279 second=228 amount=-1 +kerning first=339 second=116 amount=-1 +kerning first=240 second=108 amount=-1 +kerning first=262 second=203 amount=-1 +kerning first=122 second=231 amount=-1 +kerning first=376 second=370 amount=-1 +kerning first=68 second=280 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=263 second=8217 amount=-1 +kerning first=113 second=102 amount=-1 +kerning first=321 second=374 amount=-1 +kerning first=67 second=196 amount=-2 +kerning first=86 second=231 amount=-2 +kerning first=79 second=8221 amount=-1 +kerning first=263 second=273 amount=-1 +kerning first=115 second=8221 amount=-1 +kerning first=277 second=225 amount=-1 +kerning first=325 second=46 amount=-1 +kerning first=310 second=350 amount=-1 +kerning first=361 second=46 amount=-1 +kerning first=317 second=280 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=310 second=242 amount=-1 +kerning first=122 second=273 amount=-1 +kerning first=187 second=218 amount=-2 +kerning first=263 second=231 amount=-1 +kerning first=256 second=8221 amount=-3 +kerning first=362 second=102 amount=-1 +kerning first=205 second=211 amount=-1 +kerning first=112 second=46 amount=-2 +kerning first=1069 second=1083 amount=-1 +kerning first=90 second=286 amount=-1 +kerning first=382 second=242 amount=-1 +kerning first=263 second=245 amount=-1 +kerning first=234 second=371 amount=-1 +kerning first=200 second=81 amount=-1 +kerning first=74 second=119 amount=-1 +kerning first=1105 second=1083 amount=-1 +kerning first=199 second=67 amount=-2 +kerning first=110 second=119 amount=-1 +kerning first=246 second=314 amount=-1 +kerning first=217 second=46 amount=-3 +kerning first=67 second=210 amount=-2 +kerning first=317 second=266 amount=-1 +kerning first=218 second=102 amount=-1 +kerning first=99 second=122 amount=-1 +kerning first=1047 second=1049 amount=-1 +kerning first=344 second=81 amount=-1 +kerning first=251 second=119 amount=-1 +kerning first=8250 second=282 amount=-3 +kerning first=290 second=102 amount=-1 +kerning first=371 second=245 amount=-1 +kerning first=287 second=119 amount=-1 +kerning first=313 second=211 amount=-1 +kerning first=314 second=255 amount=-1 +kerning first=323 second=119 amount=-1 +kerning first=354 second=187 amount=-1 +kerning first=281 second=252 amount=-1 +kerning first=317 second=252 amount=-1 +kerning first=353 second=252 amount=-1 +kerning first=268 second=328 amount=-1 +kerning first=122 second=245 amount=-1 +kerning first=65 second=269 amount=-1 +kerning first=86 second=245 amount=-2 +kerning first=379 second=67 amount=-1 +kerning first=104 second=252 amount=-1 +kerning first=216 second=68 amount=-1 +kerning first=108 second=307 amount=-1 +kerning first=206 second=269 amount=-1 +kerning first=209 second=252 amount=-1 +kerning first=371 second=259 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=198 second=109 amount=-1 +kerning first=355 second=378 amount=-1 +kerning first=315 second=353 amount=-1 +kerning first=351 second=353 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=351 second=365 amount=-1 +kerning first=314 second=269 amount=-1 +kerning first=315 second=365 amount=-1 +kerning first=369 second=112 amount=-1 +kerning first=211 second=366 amount=-1 +kerning first=211 second=378 amount=-1 +kerning first=279 second=365 amount=-1 +kerning first=333 second=112 amount=-1 +kerning first=269 second=171 amount=-1 +kerning first=207 second=353 amount=-1 +kerning first=305 second=171 amount=-1 +kerning first=283 second=378 amount=-1 +kerning first=207 second=365 amount=-1 +kerning first=243 second=353 amount=-1 +kerning first=279 second=353 amount=-1 +kerning first=377 second=171 amount=-1 +kerning first=84 second=100 amount=-2 +kerning first=120 second=100 amount=-1 +kerning first=296 second=288 amount=-1 +kerning first=364 second=275 amount=-1 +kerning first=1036 second=1054 amount=-2 +kerning first=256 second=275 amount=-1 +kerning first=66 second=353 amount=-1 +kerning first=203 second=352 amount=-1 +kerning first=368 second=288 amount=-1 +kerning first=364 second=249 amount=-1 +kerning first=102 second=353 amount=-1 +kerning first=80 second=87 amount=-1 +kerning first=1030 second=1086 amount=-1 +kerning first=220 second=275 amount=-1 +kerning first=203 second=354 amount=-1 +kerning first=280 second=210 amount=-1 +kerning first=260 second=288 amount=-1 +kerning first=356 second=223 amount=-1 +kerning first=8216 second=368 amount=-1 +kerning first=88 second=113 amount=-1 +kerning first=83 second=365 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=315 second=379 amount=-1 +kerning first=69 second=296 amount=-1 +kerning first=196 second=231 amount=-1 +kerning first=211 second=380 amount=-1 +kerning first=79 second=8249 amount=-1 +kerning first=115 second=249 amount=-1 +kerning first=210 second=296 amount=-1 +kerning first=324 second=8220 amount=-2 +kerning first=230 second=367 amount=-1 +kerning first=381 second=198 amount=-1 +kerning first=283 second=380 amount=-1 +kerning first=288 second=8220 amount=-1 +kerning first=79 second=289 amount=-1 +kerning first=282 second=296 amount=-1 +kerning first=379 second=313 amount=-1 +kerning first=252 second=8220 amount=-2 +kerning first=256 second=249 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=192 second=217 amount=-2 +kerning first=75 second=248 amount=-1 +kerning first=216 second=8220 amount=-1 +kerning first=354 second=296 amount=-1 +kerning first=201 second=198 amount=-1 +kerning first=70 second=380 amount=-1 +kerning first=8216 second=122 amount=-1 +kerning first=220 second=289 amount=-2 +kerning first=84 second=114 amount=-1 +kerning first=106 second=380 amount=-1 +kerning first=111 second=8220 amount=-1 +kerning first=220 second=249 amount=-1 +kerning first=103 second=328 amount=-1 +kerning first=102 second=339 amount=-1 +kerning first=193 second=99 amount=-1 +kerning first=364 second=8249 amount=-3 +kerning first=75 second=8220 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=364 second=263 amount=-1 +kerning first=264 second=315 amount=-1 +kerning first=187 second=206 amount=-3 +kerning first=66 second=379 amount=-2 +kerning first=248 second=237 amount=-1 +kerning first=328 second=8249 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=1048 second=1105 amount=-1 +kerning first=80 second=73 amount=-1 +kerning first=220 second=8249 amount=-3 +kerning first=256 second=8249 amount=-2 +kerning first=286 second=75 amount=-1 +kerning first=207 second=339 amount=-1 +kerning first=220 second=263 amount=-1 +kerning first=115 second=8249 amount=-1 +kerning first=87 second=315 amount=-1 +kerning first=379 second=327 amount=-1 +kerning first=221 second=73 amount=-1 +kerning first=256 second=263 amount=-1 +kerning first=214 second=75 amount=-1 +kerning first=212 second=209 amount=-1 +kerning first=201 second=212 amount=-1 +kerning first=371 second=111 amount=-1 +kerning first=200 second=83 amount=-1 +kerning first=377 second=199 amount=-1 +kerning first=356 second=209 amount=-1 +kerning first=256 second=277 amount=-1 +kerning first=315 second=381 amount=-1 +kerning first=214 second=323 amount=-1 +kerning first=88 second=99 amount=-1 +kerning first=272 second=83 amount=-1 +kerning first=364 second=277 amount=-1 +kerning first=367 second=115 amount=-1 +kerning first=1070 second=1113 amount=-1 +kerning first=284 second=209 amount=-1 +kerning first=256 second=289 amount=-1 +kerning first=286 second=323 amount=-1 +kerning first=344 second=83 amount=-1 +kerning first=207 second=351 amount=-1 +kerning first=69 second=76 amount=-1 +kerning first=1100 second=1118 amount=-1 +kerning first=328 second=289 amount=-1 +kerning first=220 second=277 amount=-1 +kerning first=279 second=351 amount=-1 +kerning first=381 second=212 amount=-1 +kerning first=364 second=289 amount=-2 +kerning first=75 second=264 amount=-1 +kerning first=243 second=351 amount=-1 +kerning first=8220 second=194 amount=-4 +kerning first=88 second=111 amount=-1 +kerning first=71 second=209 amount=-1 +kerning first=86 second=233 amount=-2 +kerning first=193 second=111 amount=-1 +kerning first=279 second=367 amount=-1 +kerning first=102 second=351 amount=-1 +kerning first=211 second=364 amount=-1 +kerning first=315 second=367 amount=-1 +kerning first=122 second=233 amount=-1 +kerning first=66 second=351 amount=-1 +kerning first=364 second=291 amount=-2 +kerning first=115 second=261 amount=-1 +kerning first=207 second=367 amount=-1 +kerning first=263 second=233 amount=-1 +kerning first=328 second=291 amount=-1 +kerning first=88 second=97 amount=-1 +kerning first=354 second=76 amount=-1 +kerning first=84 second=72 amount=-1 +kerning first=256 second=291 amount=-1 +kerning first=220 second=291 amount=-2 +kerning first=201 second=226 amount=-1 +kerning first=351 second=351 amount=-1 +kerning first=102 second=337 amount=-1 +kerning first=1116 second=1092 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=347 second=326 amount=-1 +kerning first=371 second=233 amount=-1 +kerning first=315 second=351 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=210 second=76 amount=-1 +kerning first=79 second=291 amount=-1 +kerning first=79 second=261 amount=-1 +kerning first=99 second=110 amount=-1 +kerning first=83 second=316 amount=-1 +kerning first=324 second=250 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=288 second=250 amount=-1 +kerning first=203 second=326 amount=-1 +kerning first=8250 second=119 amount=-2 +kerning first=106 second=378 amount=-1 +kerning first=197 second=171 amount=-2 +kerning first=77 second=350 amount=-1 +kerning first=224 second=316 amount=-1 +kerning first=250 second=103 amount=-1 +kerning first=70 second=378 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=275 second=326 amount=-1 +kerning first=290 second=350 amount=-1 +kerning first=260 second=316 amount=-1 +kerning first=205 second=380 amount=-1 +kerning first=218 second=350 amount=-1 +kerning first=252 second=250 amount=-1 +kerning first=364 second=261 amount=-2 +kerning first=66 second=381 amount=-2 +kerning first=1059 second=1116 amount=-2 +kerning first=353 second=8217 amount=-1 +kerning first=117 second=117 amount=-1 +kerning first=272 second=381 amount=-1 +kerning first=1113 second=1107 amount=-1 +kerning first=362 second=350 amount=-1 +kerning first=371 second=271 amount=-1 +kerning first=89 second=200 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=90 second=260 amount=-1 +kerning first=338 second=200 amount=-1 +kerning first=381 second=214 amount=-1 +kerning first=258 second=117 amount=-1 +kerning first=78 second=248 amount=-1 +kerning first=350 second=311 amount=-1 +kerning first=366 second=117 amount=-1 +kerning first=266 second=200 amount=-1 +kerning first=187 second=77 amount=-3 +kerning first=330 second=117 amount=-1 +kerning first=211 second=196 amount=-2 +kerning first=209 second=240 amount=-1 +kerning first=69 second=338 amount=-1 +kerning first=317 second=264 amount=-1 +kerning first=325 second=290 amount=-1 +kerning first=212 second=207 amount=-1 +kerning first=196 second=98 amount=-1 +kerning first=8220 second=196 amount=-4 +kerning first=122 second=271 amount=-1 +kerning first=76 second=290 amount=-1 +kerning first=209 second=264 amount=-1 +kerning first=84 second=375 amount=-1 +kerning first=203 second=259 amount=-1 +kerning first=45 second=377 amount=-2 +kerning first=201 second=214 amount=-1 +kerning first=45 second=117 amount=-1 +kerning first=81 second=377 amount=-1 +kerning first=263 second=271 amount=-1 +kerning first=217 second=290 amount=-1 +kerning first=71 second=207 amount=-1 +kerning first=290 second=90 amount=-1 +kerning first=268 second=330 amount=-1 +kerning first=256 second=111 amount=-1 +kerning first=222 second=377 amount=-1 +kerning first=187 second=220 amount=-2 +kerning first=362 second=90 amount=-1 +kerning first=8217 second=230 amount=-3 +kerning first=84 second=122 amount=-2 +kerning first=362 second=334 amount=-1 +kerning first=1038 second=1086 amount=-2 +kerning first=376 second=330 amount=-1 +kerning first=284 second=207 amount=-1 +kerning first=198 second=227 amount=-1 +kerning first=321 second=291 amount=-1 +kerning first=122 second=305 amount=-1 +kerning first=1047 second=1037 amount=-1 +kerning first=366 second=377 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=356 second=207 amount=-1 +kerning first=249 second=291 amount=-1 +kerning first=1055 second=1077 amount=-1 +kerning first=213 second=291 amount=-1 +kerning first=278 second=311 amount=-1 +kerning first=80 second=317 amount=-1 +kerning first=347 second=324 amount=-1 +kerning first=1059 second=1114 amount=-2 +kerning first=236 second=97 amount=-1 +kerning first=235 second=287 amount=-1 +kerning first=242 second=311 amount=-1 +kerning first=377 second=187 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=272 second=97 amount=-1 +kerning first=199 second=287 amount=-1 +kerning first=66 second=77 amount=-2 +kerning first=72 second=291 amount=-1 +kerning first=73 second=337 amount=-1 +kerning first=307 second=287 amount=-1 +kerning first=221 second=317 amount=-1 +kerning first=75 second=234 amount=-1 +kerning first=374 second=200 amount=-1 +kerning first=200 second=97 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=315 second=77 amount=-1 +kerning first=8222 second=365 amount=-1 +kerning first=380 second=97 amount=-1 +kerning first=379 second=287 amount=-2 +kerning first=89 second=290 amount=-1 +kerning first=65 second=311 amount=-1 +kerning first=233 second=187 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=71 second=197 amount=-1 +kerning first=275 second=324 amount=-1 +kerning first=218 second=90 amount=-1 +kerning first=90 second=298 amount=-1 +kerning first=1024 second=1040 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=344 second=97 amount=-1 +kerning first=108 second=263 amount=-1 +kerning first=286 second=365 amount=-1 +kerning first=212 second=197 amount=-2 +kerning first=250 second=365 amount=-1 +kerning first=209 second=268 amount=-1 +kerning first=240 second=120 amount=-1 +kerning first=1059 second=1104 amount=-2 +kerning first=315 second=356 amount=-1 +kerning first=284 second=197 amount=-1 +kerning first=109 second=365 amount=-1 +kerning first=344 second=353 amount=-1 +kerning first=268 second=70 amount=-1 +kerning first=356 second=197 amount=-3 +kerning first=371 second=243 amount=-1 +kerning first=73 second=365 amount=-1 +kerning first=8216 second=382 amount=-1 +kerning first=380 second=353 amount=-1 +kerning first=69 second=310 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=205 second=213 amount=-1 +kerning first=84 second=74 amount=-2 +kerning first=99 second=120 amount=-1 +kerning first=72 second=263 amount=-1 +kerning first=203 second=78 amount=-1 +kerning first=376 second=70 amount=-1 +kerning first=264 second=46 amount=-1 +kerning first=263 second=275 amount=-1 +kerning first=200 second=353 amount=-1 +kerning first=282 second=310 amount=-1 +kerning first=87 second=303 amount=-1 +kerning first=122 second=275 amount=-1 +kerning first=236 second=353 amount=-1 +kerning first=1047 second=1065 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=334 second=201 amount=-1 +kerning first=90 second=270 amount=-1 +kerning first=210 second=310 amount=-1 +kerning first=221 second=85 amount=-1 +kerning first=218 second=118 amount=-1 +kerning first=86 second=275 amount=-2 +kerning first=203 second=314 amount=-1 +kerning first=262 second=201 amount=-1 +kerning first=330 second=113 amount=-1 +kerning first=264 second=303 amount=-1 +kerning first=290 second=118 amount=-1 +kerning first=254 second=118 amount=-1 +kerning first=258 second=113 amount=-1 +kerning first=354 second=310 amount=-1 +kerning first=243 second=105 amount=-1 +kerning first=8250 second=252 amount=-1 +kerning first=206 second=283 amount=-1 +kerning first=82 second=248 amount=-1 +kerning first=213 second=8249 amount=-1 +kerning first=279 second=105 amount=-1 +kerning first=113 second=118 amount=-2 +kerning first=354 second=338 amount=-1 +kerning first=72 second=8249 amount=-2 +kerning first=260 second=275 amount=-1 +kerning first=77 second=118 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=279 second=104 amount=-1 +kerning first=75 second=224 amount=-1 +kerning first=282 second=338 amount=-1 +kerning first=66 second=105 amount=-1 +kerning first=197 second=99 amount=-1 +kerning first=216 second=224 amount=-1 +kerning first=280 second=228 amount=-1 +kerning first=204 second=380 amount=-1 +kerning first=268 second=98 amount=-1 +kerning first=314 second=283 amount=-1 +kerning first=374 second=228 amount=-2 +kerning first=240 second=380 amount=-1 +kerning first=1069 second=1053 amount=-1 +kerning first=288 second=224 amount=-1 +kerning first=338 second=228 amount=-1 +kerning first=313 second=241 amount=-1 +kerning first=302 second=228 amount=-1 +kerning first=209 second=283 amount=-1 +kerning first=266 second=228 amount=-1 +kerning first=76 second=318 amount=-1 +kerning first=120 second=112 amount=-1 +kerning first=8218 second=307 amount=-1 +kerning first=230 second=228 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=84 second=112 amount=-1 +kerning first=99 second=380 amount=-1 +kerning first=379 second=325 amount=-1 +kerning first=321 second=8249 amount=-1 +kerning first=88 second=101 amount=-1 +kerning first=1025 second=1031 amount=-1 +kerning first=107 second=235 amount=-1 +kerning first=253 second=318 amount=-1 +kerning first=118 second=248 amount=-1 +kerning first=289 second=318 amount=-1 +kerning first=249 second=8249 amount=-1 +kerning first=193 second=101 amount=-1 +kerning first=264 second=331 amount=-1 +kerning first=219 second=193 amount=-2 +kerning first=82 second=365 amount=-1 +kerning first=346 second=256 amount=-2 +kerning first=1058 second=1072 amount=-1 +kerning first=334 second=205 amount=-1 +kerning first=1054 second=1047 amount=-1 +kerning first=376 second=66 amount=-1 +kerning first=338 second=230 amount=-1 +kerning first=378 second=255 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=274 second=256 amount=-1 +kerning first=374 second=230 amount=-2 +kerning first=66 second=107 amount=-1 +kerning first=225 second=98 amount=-1 +kerning first=8217 second=213 amount=-1 +kerning first=279 second=226 amount=-1 +kerning first=1062 second=1073 amount=-1 +kerning first=302 second=230 amount=-1 +kerning first=234 second=255 amount=-1 +kerning first=378 second=231 amount=-1 +kerning first=314 second=281 amount=-1 +kerning first=262 second=205 amount=-1 +kerning first=230 second=230 amount=-1 +kerning first=106 second=108 amount=-1 +kerning first=76 second=104 amount=-1 +kerning first=351 second=107 amount=-1 +kerning first=202 second=280 amount=-1 +kerning first=65 second=281 amount=-1 +kerning first=315 second=107 amount=-1 +kerning first=256 second=251 amount=-1 +kerning first=257 second=347 amount=-1 +kerning first=325 second=289 amount=-1 +kerning first=221 second=347 amount=-2 +kerning first=206 second=281 amount=-1 +kerning first=249 second=8221 amount=-2 +kerning first=346 second=280 amount=-1 +kerning first=279 second=107 amount=-1 +kerning first=315 second=105 amount=-1 +kerning first=80 second=347 amount=-1 +kerning first=243 second=107 amount=-1 +kerning first=213 second=8221 amount=-1 +kerning first=351 second=105 amount=-1 +kerning first=71 second=86 amount=-1 +kerning first=221 second=345 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=106 second=106 amount=-1 +kerning first=274 second=282 amount=-1 +kerning first=374 second=204 amount=-1 +kerning first=97 second=318 amount=-1 +kerning first=268 second=68 amount=-1 +kerning first=321 second=8221 amount=-2 +kerning first=378 second=229 amount=-1 +kerning first=381 second=196 amount=-1 +kerning first=202 second=282 amount=-1 +kerning first=264 second=67 amount=-2 +kerning first=73 second=333 amount=-1 +kerning first=376 second=68 amount=-1 +kerning first=283 second=106 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=207 second=81 amount=-1 +kerning first=334 second=203 amount=-1 +kerning first=315 second=81 amount=-1 +kerning first=211 second=106 amount=-1 +kerning first=211 second=368 amount=-1 +kerning first=84 second=346 amount=-2 +kerning first=89 second=230 amount=-2 +kerning first=89 second=204 amount=-1 +kerning first=1003 second=1007 amount=-1 +kerning first=8216 second=380 amount=-1 +kerning first=263 second=243 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=101 second=307 amount=-1 +kerning first=266 second=204 amount=-1 +kerning first=202 second=256 amount=-1 +kerning first=256 second=121 amount=-1 +kerning first=338 second=204 amount=-1 +kerning first=86 second=243 amount=-2 +kerning first=242 second=307 amount=-1 +kerning first=1047 second=1033 amount=-1 +kerning first=122 second=243 amount=-1 +kerning first=119 second=44 amount=-3 +kerning first=332 second=278 amount=-1 +kerning first=83 second=44 amount=-2 +kerning first=89 second=274 amount=-1 +kerning first=283 second=104 amount=-1 +kerning first=315 second=79 amount=-1 +kerning first=219 second=90 amount=-1 +kerning first=282 second=334 amount=-1 +kerning first=224 second=44 amount=-1 +kerning first=362 second=81 amount=-1 +kerning first=207 second=79 amount=-1 +kerning first=87 second=69 amount=-1 +kerning first=351 second=109 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=315 second=109 amount=-1 +kerning first=229 second=369 amount=-1 +kerning first=82 second=244 amount=-1 +kerning first=74 second=194 amount=-3 +kerning first=272 second=200 amount=-1 +kerning first=221 second=234 amount=-2 +kerning first=279 second=109 amount=-1 +kerning first=310 second=284 amount=-1 +kerning first=234 second=227 amount=-1 +kerning first=314 second=279 amount=-1 +kerning first=374 second=232 amount=-1 +kerning first=74 second=192 amount=-3 +kerning first=8217 second=211 amount=-1 +kerning first=252 second=8249 amount=-1 +kerning first=1048 second=1095 amount=-1 +kerning first=106 second=104 amount=-1 +kerning first=65 second=279 amount=-1 +kerning first=274 second=284 amount=-1 +kerning first=368 second=44 amount=-3 +kerning first=234 second=229 amount=-1 +kerning first=87 second=305 amount=-1 +kerning first=206 second=279 amount=-1 +kerning first=346 second=282 amount=-1 +kerning first=69 second=334 amount=-1 +kerning first=332 second=44 amount=-1 +kerning first=378 second=227 amount=-1 +kerning first=66 second=109 amount=-1 +kerning first=214 second=65 amount=-2 +kerning first=194 second=232 amount=-1 +kerning first=286 second=65 amount=-1 +kerning first=302 second=232 amount=-1 +kerning first=109 second=361 amount=-1 +kerning first=198 second=257 amount=-1 +kerning first=264 second=305 amount=-1 +kerning first=76 second=331 amount=-1 +kerning first=266 second=232 amount=-1 +kerning first=73 second=361 amount=-1 +kerning first=234 second=257 amount=-1 +kerning first=382 second=254 amount=-1 +kerning first=112 second=8250 amount=-1 +kerning first=286 second=361 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=250 second=361 amount=-1 +kerning first=89 second=202 amount=-1 +kerning first=365 second=347 amount=-1 +kerning first=118 second=244 amount=-1 +kerning first=380 second=121 amount=-1 +kerning first=344 second=121 amount=-1 +kerning first=338 second=202 amount=-1 +kerning first=274 second=254 amount=-1 +kerning first=310 second=254 amount=-1 +kerning first=221 second=325 amount=-1 +kerning first=266 second=202 amount=-1 +kerning first=346 second=254 amount=-1 +kerning first=8216 second=378 amount=-1 +kerning first=236 second=121 amount=-1 +kerning first=336 second=69 amount=-1 +kerning first=268 second=66 amount=-1 +kerning first=203 second=82 amount=-1 +kerning first=97 second=254 amount=-1 +kerning first=1098 second=1099 amount=-1 +kerning first=72 second=267 amount=-1 +kerning first=374 second=202 amount=-1 +kerning first=264 second=69 amount=-1 +kerning first=108 second=267 amount=-1 +kerning first=378 second=257 amount=-1 +kerning first=202 second=254 amount=-1 +kerning first=302 second=212 amount=-1 +kerning first=8222 second=357 amount=-1 +kerning first=370 second=199 amount=-1 +kerning first=338 second=212 amount=-1 +kerning first=79 second=8217 amount=-1 +kerning first=69 second=66 amount=-1 +kerning first=381 second=202 amount=-1 +kerning first=115 second=8217 amount=-1 +kerning first=73 second=79 amount=-1 +kerning first=266 second=212 amount=-2 +kerning first=196 second=99 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=84 second=82 amount=-1 +kerning first=221 second=69 amount=-1 +kerning first=1113 second=1119 amount=-1 +kerning first=282 second=66 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=76 second=316 amount=-1 +kerning first=80 second=69 amount=-1 +kerning first=268 second=332 amount=-2 +kerning first=307 second=225 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=356 second=205 amount=-1 +kerning first=304 second=332 amount=-1 +kerning first=352 second=192 amount=-2 +kerning first=332 second=82 amount=-1 +kerning first=203 second=76 amount=-1 +kerning first=85 second=199 amount=-1 +kerning first=268 second=72 amount=-1 +kerning first=201 second=216 amount=-1 +kerning first=8217 second=102 amount=-1 +kerning first=376 second=332 amount=-1 +kerning first=354 second=66 amount=-1 +kerning first=212 second=205 amount=-1 +kerning first=208 second=192 amount=-2 +kerning first=205 second=229 amount=-1 +kerning first=256 second=8217 amount=-3 +kerning first=262 second=199 amount=-2 +kerning first=284 second=205 amount=-1 +kerning first=374 second=212 amount=-1 +kerning first=298 second=199 amount=-1 +kerning first=376 second=72 amount=-1 +kerning first=209 second=242 amount=-1 +kerning first=194 second=235 amount=-1 +kerning first=381 second=216 amount=-1 +kerning first=354 second=326 amount=-1 +kerning first=230 second=226 amount=-1 +kerning first=266 second=226 amount=-1 +kerning first=268 second=86 amount=-1 +kerning first=302 second=226 amount=-1 +kerning first=71 second=205 amount=-1 +kerning first=207 second=380 amount=-1 +kerning first=338 second=226 amount=-1 +kerning first=45 second=119 amount=-2 +kerning first=263 second=8221 amount=-1 +kerning first=374 second=226 amount=-2 +kerning first=356 second=219 amount=-1 +kerning first=8220 second=198 amount=-4 +kerning first=282 second=326 amount=-1 +kerning first=117 second=119 amount=-1 +kerning first=284 second=219 amount=-1 +kerning first=336 second=45 amount=-1 +kerning first=66 second=103 amount=-2 +kerning first=69 second=326 amount=-1 +kerning first=258 second=119 amount=-2 +kerning first=212 second=219 amount=-1 +kerning first=201 second=202 amount=-1 +kerning first=105 second=326 amount=-1 +kerning first=289 second=316 amount=-1 +kerning first=66 second=305 amount=-1 +kerning first=330 second=119 amount=-1 +kerning first=371 second=8221 amount=-2 +kerning first=366 second=119 amount=-1 +kerning first=71 second=219 amount=-1 +kerning first=196 second=86 amount=-3 +kerning first=87 second=333 amount=-2 +kerning first=89 second=226 amount=-2 +kerning first=8218 second=291 amount=-1 +kerning first=192 second=333 amount=-1 +kerning first=1037 second=1092 amount=-1 +kerning first=84 second=365 amount=-1 +kerning first=108 second=269 amount=-1 +kerning first=72 second=269 amount=-1 +kerning first=337 second=375 amount=-1 +kerning first=355 second=122 amount=-1 +kerning first=87 second=45 amount=-3 +kerning first=66 second=363 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=70 second=382 amount=-1 +kerning first=315 second=103 amount=-1 +kerning first=106 second=382 amount=-1 +kerning first=1040 second=1063 amount=-3 +kerning first=192 second=45 amount=-2 +kerning first=252 second=252 amount=-1 +kerning first=243 second=103 amount=-1 +kerning first=207 second=363 amount=-1 +kerning first=115 second=259 amount=-1 +kerning first=1098 second=1075 amount=-1 +kerning first=234 second=253 amount=-1 +kerning first=1037 second=1086 amount=-1 +kerning first=264 second=45 amount=-2 +kerning first=283 second=116 amount=-1 +kerning first=324 second=252 amount=-1 +kerning first=228 second=45 amount=-1 +kerning first=279 second=363 amount=-1 +kerning first=220 second=259 amount=-2 +kerning first=8217 second=235 amount=-2 +kerning first=106 second=122 amount=-1 +kerning first=75 second=246 amount=-1 +kerning first=315 second=363 amount=-1 +kerning first=315 second=369 amount=-1 +kerning first=274 second=266 amount=-1 +kerning first=70 second=122 amount=-1 +kerning first=351 second=363 amount=-1 +kerning first=279 second=369 amount=-1 +kerning first=355 second=382 amount=-1 +kerning first=310 second=266 amount=-1 +kerning first=376 second=378 amount=-2 +kerning first=202 second=266 amount=-1 +kerning first=351 second=369 amount=-1 +kerning first=283 second=122 amount=-1 +kerning first=229 second=375 amount=-1 +kerning first=211 second=382 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=211 second=122 amount=-1 +kerning first=370 second=352 amount=-1 +kerning first=207 second=369 amount=-1 +kerning first=283 second=382 amount=-1 +kerning first=88 second=375 amount=-2 +kerning first=68 second=206 amount=-1 +kerning first=193 second=115 amount=-1 +kerning first=256 second=279 amount=-1 +kerning first=66 second=355 amount=-1 +kerning first=203 second=336 amount=-1 +kerning first=229 second=115 amount=-1 +kerning first=364 second=279 amount=-1 +kerning first=198 second=350 amount=-1 +kerning first=88 second=115 amount=-1 +kerning first=8222 second=318 amount=-1 +kerning first=279 second=355 amount=-1 +kerning first=337 second=115 amount=-1 +kerning first=76 second=296 amount=-1 +kerning first=220 second=279 amount=-1 +kerning first=378 second=253 amount=-1 +kerning first=351 second=355 amount=-1 +kerning first=106 second=116 amount=-1 +kerning first=283 second=108 amount=-1 +kerning first=89 second=206 amount=-1 +kerning first=302 second=71 amount=-1 +kerning first=84 second=370 amount=-1 +kerning first=45 second=89 amount=-2 +kerning first=75 second=232 amount=-1 +kerning first=266 second=206 amount=-1 +kerning first=87 second=325 amount=-1 +kerning first=235 second=303 amount=-1 +kerning first=275 second=328 amount=-1 +kerning first=87 second=313 amount=-1 +kerning first=338 second=206 amount=-1 +kerning first=203 second=328 amount=-1 +kerning first=214 second=73 amount=-1 +kerning first=282 second=104 amount=-1 +kerning first=71 second=225 amount=-1 +kerning first=199 second=303 amount=-1 +kerning first=113 second=98 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=379 second=315 amount=-1 +kerning first=264 second=325 amount=-1 +kerning first=379 second=303 amount=-1 +kerning first=374 second=206 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=66 second=83 amount=-2 +kerning first=336 second=325 amount=-1 +kerning first=307 second=303 amount=-1 +kerning first=1025 second=1025 amount=-1 +kerning first=347 second=328 amount=-1 +kerning first=313 second=221 amount=-1 +kerning first=284 second=225 amount=-1 +kerning first=207 second=83 amount=-1 +kerning first=80 second=323 amount=-1 +kerning first=376 second=338 amount=-1 +kerning first=356 second=225 amount=-2 +kerning first=201 second=196 amount=-1 +kerning first=90 second=290 amount=-1 +kerning first=315 second=83 amount=-1 +kerning first=107 second=225 amount=-1 +kerning first=368 second=286 amount=-1 +kerning first=268 second=338 amount=-2 +kerning first=286 second=85 amount=-1 +kerning first=218 second=380 amount=-1 +kerning first=258 second=263 amount=-1 +kerning first=212 second=225 amount=-1 +kerning first=296 second=286 amount=-1 +kerning first=254 second=380 amount=-1 +kerning first=326 second=98 amount=-1 +kerning first=214 second=85 amount=-1 +kerning first=221 second=8250 amount=-1 +kerning first=290 second=380 amount=-1 +kerning first=246 second=46 amount=-2 +kerning first=264 second=311 amount=-1 +kerning first=221 second=77 amount=-1 +kerning first=282 second=46 amount=-1 +kerning first=8220 second=192 amount=-4 +kerning first=260 second=286 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=192 second=311 amount=-1 +kerning first=354 second=46 amount=-3 +kerning first=244 second=314 amount=-1 +kerning first=80 second=77 amount=-1 +kerning first=201 second=210 amount=-1 +kerning first=69 second=46 amount=-1 +kerning first=84 second=102 amount=-1 +kerning first=73 second=71 amount=-1 +kerning first=105 second=46 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=196 second=352 amount=-2 +kerning first=326 second=112 amount=-1 +kerning first=356 second=211 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=208 second=200 amount=-1 +kerning first=378 second=233 amount=-1 +kerning first=254 second=112 amount=-1 +kerning first=106 second=110 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=218 second=112 amount=-1 +kerning first=205 second=235 amount=-1 +kerning first=369 second=102 amount=-1 +kerning first=352 second=200 amount=-1 +kerning first=77 second=112 amount=-1 +kerning first=1044 second=1090 amount=-1 +kerning first=283 second=110 amount=-1 +kerning first=280 second=200 amount=-1 +kerning first=218 second=378 amount=-1 +kerning first=104 second=250 amount=-1 +kerning first=317 second=262 amount=-1 +kerning first=72 second=275 amount=-1 +kerning first=250 second=353 amount=-1 +kerning first=209 second=250 amount=-1 +kerning first=108 second=275 amount=-1 +kerning first=380 second=113 amount=-1 +kerning first=99 second=171 amount=-1 +kerning first=380 second=365 amount=-1 +kerning first=362 second=100 amount=-1 +kerning first=344 second=113 amount=-1 +kerning first=344 second=365 amount=-1 +kerning first=290 second=366 amount=-1 +kerning first=200 second=251 amount=-1 +kerning first=113 second=378 amount=-1 +kerning first=73 second=353 amount=-1 +kerning first=362 second=112 amount=-1 +kerning first=77 second=378 amount=-1 +kerning first=109 second=353 amount=-1 +kerning first=286 second=87 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=263 second=249 amount=-1 +kerning first=274 second=260 amount=-1 +kerning first=304 second=352 amount=-1 +kerning first=218 second=100 amount=-1 +kerning first=268 second=352 amount=-1 +kerning first=1065 second=1054 amount=-1 +kerning first=220 second=228 amount=-1 +kerning first=214 second=87 amount=-1 +kerning first=346 second=260 amount=-2 +kerning first=376 second=352 amount=-2 +kerning first=196 second=354 amount=-3 +kerning first=1069 second=1065 amount=-1 +kerning first=362 second=378 amount=-1 +kerning first=268 second=354 amount=-1 +kerning first=77 second=100 amount=-1 +kerning first=90 second=288 amount=-1 +kerning first=113 second=100 amount=-1 +kerning first=381 second=210 amount=-1 +kerning first=209 second=262 amount=-1 +kerning first=371 second=249 amount=-1 +kerning first=1055 second=1105 amount=-1 +kerning first=72 second=289 amount=-1 +kerning first=344 second=99 amount=-1 +kerning first=1091 second=1105 amount=-1 +kerning first=290 second=364 amount=-1 +kerning first=362 second=114 amount=-1 +kerning first=208 second=198 amount=-2 +kerning first=213 second=289 amount=-1 +kerning first=313 second=223 amount=-1 +kerning first=113 second=380 amount=-1 +kerning first=380 second=99 amount=-1 +kerning first=1054 second=1053 amount=-1 +kerning first=87 second=327 amount=-1 +kerning first=86 second=249 amount=-1 +kerning first=209 second=248 amount=-1 +kerning first=90 second=274 amount=-1 +kerning first=353 second=8220 amount=-1 +kerning first=218 second=114 amount=-1 +kerning first=371 second=263 amount=-1 +kerning first=101 second=328 amount=-1 +kerning first=317 second=8220 amount=-2 +kerning first=67 second=198 amount=-2 +kerning first=281 second=8220 amount=-1 +kerning first=113 second=114 amount=-1 +kerning first=122 second=263 amount=-1 +kerning first=236 second=365 amount=-1 +kerning first=264 second=327 amount=-1 +kerning first=65 second=287 amount=-1 +kerning first=245 second=8220 amount=-1 +kerning first=314 second=253 amount=-1 +kerning first=200 second=365 amount=-1 +kerning first=336 second=327 amount=-1 +kerning first=1091 second=1078 amount=-1 +kerning first=263 second=263 amount=-1 +kerning first=200 second=379 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=336 second=313 amount=-1 +kerning first=104 second=8220 amount=-2 +kerning first=280 second=198 amount=-1 +kerning first=221 second=75 amount=-1 +kerning first=242 second=287 amount=-1 +kerning first=68 second=8220 amount=-1 +kerning first=286 second=73 amount=-1 +kerning first=272 second=379 amount=-1 +kerning first=206 second=287 amount=-1 +kerning first=202 second=259 amount=-1 +kerning first=313 second=237 amount=-1 +kerning first=264 second=313 amount=-1 +kerning first=352 second=198 amount=-2 +kerning first=314 second=287 amount=-1 +kerning first=277 second=237 amount=-1 +kerning first=80 second=75 amount=-1 +kerning first=86 second=263 amount=-2 +kerning first=73 second=339 amount=-1 +kerning first=278 second=287 amount=-1 +kerning first=289 second=44 amount=-2 +kerning first=8222 second=316 amount=-1 +kerning first=118 second=234 amount=-1 +kerning first=253 second=44 amount=-3 +kerning first=113 second=104 amount=-1 +kerning first=350 second=287 amount=-1 +kerning first=361 second=44 amount=-1 +kerning first=1098 second=1091 amount=-1 +kerning first=234 second=237 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=75 second=244 amount=-1 +kerning first=112 second=44 amount=-2 +kerning first=219 second=197 amount=-2 +kerning first=354 second=324 amount=-1 +kerning first=217 second=44 amount=-3 +kerning first=254 second=104 amount=-1 +kerning first=82 second=234 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=369 second=115 amount=-1 +kerning first=208 second=194 amount=-2 +kerning first=205 second=227 amount=-1 +kerning first=109 second=351 amount=-1 +kerning first=202 second=368 amount=-1 +kerning first=266 second=46 amount=-1 +kerning first=73 second=351 amount=-1 +kerning first=1058 second=1054 amount=-1 +kerning first=108 second=277 amount=-1 +kerning first=69 second=314 amount=-1 +kerning first=67 second=194 amount=-2 +kerning first=315 second=87 amount=-1 +kerning first=72 second=277 amount=-1 +kerning first=250 second=8249 amount=-1 +kerning first=277 second=227 amount=-1 +kerning first=1030 second=1104 amount=-1 +kerning first=105 second=314 amount=-1 +kerning first=268 second=74 amount=-1 +kerning first=314 second=8249 amount=-1 +kerning first=229 second=121 amount=-1 +kerning first=207 second=361 amount=-1 +kerning first=220 second=267 amount=-1 +kerning first=80 second=327 amount=-1 +kerning first=371 second=257 amount=-1 +kerning first=344 second=367 amount=-1 +kerning first=350 second=8249 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=220 second=90 amount=-1 +kerning first=256 second=267 amount=-1 +kerning first=380 second=367 amount=-1 +kerning first=84 second=364 amount=-1 +kerning first=376 second=74 amount=-2 +kerning first=278 second=8249 amount=-1 +kerning first=88 second=121 amount=-2 +kerning first=221 second=327 amount=-1 +kerning first=86 second=261 amount=-2 +kerning first=351 second=361 amount=-1 +kerning first=364 second=267 amount=-1 +kerning first=200 second=367 amount=-1 +kerning first=206 second=8249 amount=-2 +kerning first=315 second=361 amount=-1 +kerning first=263 second=257 amount=-1 +kerning first=236 second=367 amount=-1 +kerning first=344 second=111 amount=-1 +kerning first=317 second=254 amount=-1 +kerning first=118 second=224 amount=-1 +kerning first=380 second=111 amount=-1 +kerning first=353 second=254 amount=-1 +kerning first=250 second=351 amount=-1 +kerning first=82 second=224 amount=-1 +kerning first=1093 second=1086 amount=-1 +kerning first=1047 second=1051 amount=-1 +kerning first=290 second=374 amount=-1 +kerning first=104 second=254 amount=-1 +kerning first=187 second=224 amount=-1 +kerning first=371 second=261 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=268 second=344 amount=-1 +kerning first=281 second=250 amount=-1 +kerning first=1040 second=1057 amount=-2 +kerning first=337 second=121 amount=-1 +kerning first=90 second=284 amount=-1 +kerning first=369 second=249 amount=-1 +kerning first=1031 second=1072 amount=-1 +kerning first=274 second=274 amount=-1 +kerning first=1054 second=1031 amount=-1 +kerning first=353 second=250 amount=-1 +kerning first=66 second=361 amount=-1 +kerning first=376 second=344 amount=-1 +kerning first=225 second=347 amount=-1 +kerning first=202 second=274 amount=-1 +kerning first=317 second=250 amount=-1 +kerning first=1003 second=997 amount=-1 +kerning first=284 second=221 amount=-1 +kerning first=1047 second=1041 amount=-1 +kerning first=351 second=97 amount=-1 +kerning first=221 second=337 amount=-2 +kerning first=296 second=290 amount=-1 +kerning first=212 second=221 amount=-1 +kerning first=88 second=117 amount=-1 +kerning first=344 second=101 amount=-1 +kerning first=201 second=200 amount=-1 +kerning first=221 second=331 amount=-1 +kerning first=370 second=255 amount=-1 +kerning first=229 second=117 amount=-1 +kerning first=380 second=101 amount=-1 +kerning first=368 second=290 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=1098 second=1087 amount=-1 +kerning first=261 second=98 amount=-1 +kerning first=1054 second=1037 amount=-1 +kerning first=374 second=214 amount=-1 +kerning first=75 second=240 amount=-1 +kerning first=8217 second=229 amount=-3 +kerning first=369 second=98 amount=-1 +kerning first=122 second=251 amount=-1 +kerning first=203 second=338 amount=-1 +kerning first=260 second=290 amount=-1 +kerning first=86 second=251 amount=-1 +kerning first=120 second=98 amount=-1 +kerning first=66 second=196 amount=-3 +kerning first=266 second=214 amount=-2 +kerning first=227 second=251 amount=-1 +kerning first=310 second=264 amount=-1 +kerning first=355 second=380 amount=-1 +kerning first=274 second=264 amount=-1 +kerning first=375 second=273 amount=-1 +kerning first=338 second=214 amount=-1 +kerning first=1069 second=1067 amount=-1 +kerning first=302 second=214 amount=-1 +kerning first=263 second=251 amount=-1 +kerning first=202 second=264 amount=-1 +kerning first=272 second=68 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=264 second=317 amount=-1 +kerning first=371 second=251 amount=-1 +kerning first=89 second=220 amount=-1 +kerning first=286 second=77 amount=-1 +kerning first=194 second=231 amount=-1 +kerning first=221 second=71 amount=-1 +kerning first=70 second=210 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=336 second=317 amount=-1 +kerning first=332 second=298 amount=-1 +kerning first=214 second=77 amount=-1 +kerning first=352 second=194 amount=-2 +kerning first=87 second=317 amount=-1 +kerning first=266 second=220 amount=-1 +kerning first=280 second=194 amount=-1 +kerning first=1056 second=1059 amount=-1 +kerning first=194 second=220 amount=-2 +kerning first=350 second=291 amount=-1 +kerning first=203 second=330 amount=-1 +kerning first=268 second=84 amount=-1 +kerning first=66 second=97 amount=-1 +kerning first=381 second=200 amount=-1 +kerning first=314 second=291 amount=-1 +kerning first=102 second=97 amount=-1 +kerning first=278 second=291 amount=-1 +kerning first=1069 second=1103 amount=-1 +kerning first=242 second=291 amount=-1 +kerning first=338 second=220 amount=-1 +kerning first=307 second=311 amount=-1 +kerning first=1098 second=1081 amount=-1 +kerning first=206 second=291 amount=-1 +kerning first=282 second=324 amount=-1 +kerning first=374 second=220 amount=-1 +kerning first=69 second=324 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=279 second=97 amount=-1 +kerning first=235 second=311 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=199 second=311 amount=-1 +kerning first=65 second=291 amount=-1 +kerning first=80 second=337 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=356 second=213 amount=-1 +kerning first=105 second=324 amount=-1 +kerning first=236 second=375 amount=-1 +kerning first=118 second=228 amount=-1 +kerning first=334 second=193 amount=-2 +kerning first=227 second=253 amount=-1 +kerning first=266 second=218 amount=-1 +kerning first=82 second=228 amount=-1 +kerning first=378 second=243 amount=-1 +kerning first=70 second=120 amount=-1 +kerning first=263 second=253 amount=-1 +kerning first=262 second=193 amount=-2 +kerning first=106 second=120 amount=-1 +kerning first=194 second=218 amount=-2 +kerning first=376 second=78 amount=-1 +kerning first=335 second=253 amount=-1 +kerning first=380 second=375 amount=-1 +kerning first=1098 second=1085 amount=-1 +kerning first=380 second=103 amount=-1 +kerning first=8250 second=260 amount=-2 +kerning first=371 second=253 amount=-1 +kerning first=344 second=375 amount=-1 +kerning first=370 second=193 amount=-2 +kerning first=344 second=103 amount=-1 +kerning first=310 second=268 amount=-1 +kerning first=374 second=218 amount=-1 +kerning first=8217 second=225 amount=-3 +kerning first=338 second=218 amount=-1 +kerning first=1047 second=1045 amount=-1 +kerning first=268 second=78 amount=-1 +kerning first=1055 second=1095 amount=-1 +kerning first=355 second=120 amount=-1 +kerning first=370 second=253 amount=-1 +kerning first=76 second=310 amount=-1 +kerning first=1047 second=1043 amount=-1 +kerning first=355 second=118 amount=-1 +kerning first=211 second=120 amount=-1 +kerning first=89 second=218 amount=-1 +kerning first=350 second=45 amount=-1 +kerning first=86 second=253 amount=-1 +kerning first=283 second=120 amount=-1 +kerning first=122 second=253 amount=-1 +kerning first=80 second=65 amount=-2 +kerning first=202 second=270 amount=-1 +kerning first=283 second=118 amount=-1 +kerning first=1054 second=1051 amount=-1 +kerning first=221 second=65 amount=-3 +kerning first=274 second=270 amount=-1 +kerning first=90 second=280 amount=-1 +kerning first=236 second=105 amount=-1 +kerning first=199 second=305 amount=-1 +kerning first=378 second=241 amount=-1 +kerning first=109 second=251 amount=-1 +kerning first=8217 second=227 amount=-3 +kerning first=83 second=8250 amount=-1 +kerning first=1030 second=1108 amount=-1 +kerning first=69 second=318 amount=-1 +kerning first=106 second=118 amount=-1 +kerning first=105 second=318 amount=-1 +kerning first=108 second=283 amount=-1 +kerning first=70 second=118 amount=-1 +kerning first=235 second=305 amount=-1 +kerning first=72 second=283 amount=-1 +kerning first=221 second=335 amount=-2 +kerning first=234 second=241 amount=-1 +kerning first=307 second=305 amount=-1 +kerning first=198 second=241 amount=-1 +kerning first=8218 second=287 amount=-1 +kerning first=380 second=291 amount=-1 +kerning first=8217 second=100 amount=-2 +kerning first=8217 second=223 amount=-1 +kerning first=379 second=305 amount=-1 +kerning first=113 second=108 amount=-1 +kerning first=254 second=108 amount=-1 +kerning first=346 second=270 amount=-1 +kerning first=80 second=335 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=326 second=108 amount=-1 +kerning first=85 second=193 amount=-2 +kerning first=290 second=370 amount=-1 +kerning first=8216 second=232 amount=-1 +kerning first=205 second=231 amount=-1 +kerning first=109 second=347 amount=-1 +kerning first=73 second=347 amount=-1 +kerning first=236 second=107 amount=-1 +kerning first=268 second=82 amount=-1 +kerning first=68 second=256 amount=-2 +kerning first=83 second=122 amount=-1 +kerning first=200 second=107 amount=-1 +kerning first=72 second=281 amount=-1 +kerning first=108 second=281 amount=-1 +kerning first=317 second=256 amount=-1 +kerning first=371 second=255 amount=-1 +kerning first=315 second=364 amount=-1 +kerning first=1051 second=1072 amount=-1 +kerning first=367 second=230 amount=-1 +kerning first=335 second=255 amount=-1 +kerning first=221 second=67 amount=-1 +kerning first=203 second=332 amount=-1 +kerning first=266 second=216 amount=-2 +kerning first=263 second=255 amount=-1 +kerning first=302 second=216 amount=-1 +kerning first=227 second=255 amount=-1 +kerning first=227 second=353 amount=-1 +kerning first=310 second=346 amount=-1 +kerning first=338 second=216 amount=-1 +kerning first=380 second=371 amount=-1 +kerning first=122 second=255 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=86 second=255 amount=-1 +kerning first=8222 second=314 amount=-1 +kerning first=250 second=347 amount=-1 +kerning first=75 second=242 amount=-1 +kerning first=262 second=378 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=236 second=371 amount=-1 +kerning first=344 second=107 amount=-1 +kerning first=67 second=192 amount=-2 +kerning first=80 second=333 amount=-1 +kerning first=212 second=217 amount=-1 +kerning first=221 second=333 amount=-2 +kerning first=1054 second=1033 amount=-1 +kerning first=376 second=80 amount=-1 +kerning first=277 second=229 amount=-1 +kerning first=73 second=81 amount=-1 +kerning first=113 second=106 amount=2 +kerning first=284 second=217 amount=-1 +kerning first=374 second=216 amount=-1 +kerning first=70 second=212 amount=-1 +kerning first=381 second=204 amount=-1 +kerning first=356 second=217 amount=-1 +kerning first=268 second=80 amount=-1 +kerning first=203 second=68 amount=-1 +kerning first=290 second=106 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=90 second=282 amount=-1 +kerning first=326 second=106 amount=-1 +kerning first=196 second=346 amount=-2 +kerning first=187 second=230 amount=-1 +kerning first=193 second=119 amount=-2 +kerning first=235 second=307 amount=-1 +kerning first=254 second=106 amount=-1 +kerning first=229 second=119 amount=-1 +kerning first=8218 second=289 amount=-1 +kerning first=307 second=307 amount=-1 +kerning first=118 second=230 amount=-2 +kerning first=337 second=119 amount=-1 +kerning first=304 second=346 amount=-1 +kerning first=201 second=204 amount=-1 +kerning first=71 second=217 amount=-1 +kerning first=268 second=346 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif321.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif321.png new file mode 100644 index 000000000..f516ba320 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif321.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif322.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif322.png new file mode 100644 index 000000000..c9cb692d8 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif322.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I.fnt b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I.fnt new file mode 100644 index 000000000..cddcf233f --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I.fnt @@ -0,0 +1,27837 @@ +info face="Free Serif" size=64 bold=0 italic=1 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=-2,-2 +common lineHeight=82 base=61 scaleW=1024 scaleH=1024 pages=2 packed=0 +page id=0 file="FreeSerif64I1.png" +page id=1 file="FreeSerif64I2.png" +chars count=821 +char id=13 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=-2 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=33 x=1006 y=580 width=15 height=45 xoffset=8 yoffset=17 xadvance=19 page=0 chnl=0 +char id=36 x=741 y=473 width=33 height=53 xoffset=3 yoffset=14 xadvance=30 page=0 chnl=0 +char id=37 x=334 y=632 width=45 height=45 xoffset=8 yoffset=17 xadvance=51 page=0 chnl=0 +char id=38 x=379 y=632 width=47 height=45 xoffset=4 yoffset=17 xadvance=48 page=0 chnl=0 +char id=39 x=1013 y=903 width=10 height=17 xoffset=9 yoffset=17 xadvance=10 page=0 chnl=0 +char id=40 x=243 y=307 width=27 height=56 xoffset=5 yoffset=17 xadvance=19 page=0 chnl=0 +char id=41 x=270 y=307 width=23 height=56 xoffset=-1 yoffset=17 xadvance=19 page=0 chnl=0 +char id=44 x=1013 y=679 width=10 height=16 xoffset=3 yoffset=54 xadvance=14 page=0 chnl=0 +char id=46 x=1012 y=473 width=9 height=8 xoffset=4 yoffset=54 xadvance=14 page=0 chnl=0 +char id=47 x=426 y=632 width=34 height=45 xoffset=-1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=48 x=460 y=632 width=34 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=49 x=702 y=814 width=20 height=44 xoffset=7 yoffset=17 xadvance=30 page=0 chnl=0 +char id=50 x=722 y=814 width=33 height=44 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=51 x=494 y=632 width=29 height=45 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=52 x=755 y=814 width=31 height=44 xoffset=2 yoffset=17 xadvance=30 page=0 chnl=0 +char id=53 x=106 y=632 width=37 height=46 xoffset=2 yoffset=16 xadvance=30 page=0 chnl=0 +char id=54 x=523 y=632 width=37 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=55 x=786 y=814 width=34 height=44 xoffset=7 yoffset=18 xadvance=30 page=0 chnl=0 +char id=56 x=560 y=632 width=30 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=57 x=143 y=632 width=35 height=46 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=58 x=191 y=991 width=13 height=31 xoffset=5 yoffset=31 xadvance=16 page=0 chnl=0 +char id=59 x=1009 y=632 width=13 height=39 xoffset=5 yoffset=31 xadvance=16 page=0 chnl=0 +char id=63 x=590 y=632 width=28 height=45 xoffset=10 yoffset=17 xadvance=26 page=0 chnl=0 +char id=64 x=618 y=632 width=47 height=45 xoffset=10 yoffset=17 xadvance=57 page=0 chnl=0 +char id=65 x=820 y=814 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=67 x=665 y=632 width=46 height=45 xoffset=4 yoffset=17 xadvance=41 page=0 chnl=0 +char id=71 x=711 y=632 width=48 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=74 x=866 y=814 width=37 height=44 xoffset=1 yoffset=18 xadvance=23 page=0 chnl=0 +char id=78 x=903 y=814 width=59 height=44 xoffset=0 yoffset=18 xadvance=44 page=0 chnl=0 +char id=79 x=759 y=632 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=81 x=293 y=307 width=47 height=56 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=83 x=806 y=632 width=33 height=45 xoffset=4 yoffset=17 xadvance=34 page=0 chnl=0 +char id=85 x=962 y=814 width=51 height=44 xoffset=8 yoffset=18 xadvance=44 page=0 chnl=0 +char id=86 x=0 y=859 width=50 height=44 xoffset=8 yoffset=18 xadvance=44 page=0 chnl=0 +char id=87 x=50 y=859 width=68 height=44 xoffset=7 yoffset=18 xadvance=58 page=0 chnl=0 +char id=91 x=774 y=473 width=29 height=53 xoffset=3 yoffset=18 xadvance=19 page=0 chnl=0 +char id=92 x=1008 y=134 width=12 height=45 xoffset=7 yoffset=17 xadvance=17 page=0 chnl=0 +char id=93 x=803 y=473 width=24 height=53 xoffset=0 yoffset=19 xadvance=19 page=0 chnl=0 +char id=97 x=204 y=991 width=28 height=31 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=98 x=839 y=632 width=29 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=99 x=232 y=991 width=28 height=31 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=100 x=868 y=632 width=34 height=45 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=101 x=260 y=991 width=28 height=31 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=102 x=118 y=859 width=41 height=44 xoffset=1 yoffset=17 xadvance=19 page=0 chnl=0 +char id=103 x=159 y=859 width=37 height=44 xoffset=0 yoffset=31 xadvance=30 page=0 chnl=0 +char id=104 x=196 y=859 width=32 height=44 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=105 x=228 y=859 width=18 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=106 x=429 y=75 width=34 height=58 xoffset=-7 yoffset=17 xadvance=16 page=0 chnl=0 +char id=107 x=246 y=859 width=39 height=44 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=108 x=285 y=859 width=20 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=111 x=288 y=991 width=30 height=31 xoffset=4 yoffset=31 xadvance=30 page=0 chnl=0 +char id=112 x=305 y=859 width=40 height=44 xoffset=-3 yoffset=31 xadvance=30 page=0 chnl=0 +char id=113 x=345 y=859 width=30 height=44 xoffset=3 yoffset=31 xadvance=30 page=0 chnl=0 +char id=115 x=318 y=991 width=22 height=31 xoffset=3 yoffset=31 xadvance=23 page=0 chnl=0 +char id=123 x=340 y=307 width=22 height=56 xoffset=9 yoffset=17 xadvance=29 page=0 chnl=0 +char id=124 x=902 y=632 width=16 height=45 xoffset=4 yoffset=17 xadvance=11 page=0 chnl=0 +char id=125 x=362 y=307 width=22 height=56 xoffset=6 yoffset=17 xadvance=29 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=161 x=918 y=632 width=14 height=45 xoffset=4 yoffset=31 xadvance=19 page=0 chnl=0 +char id=162 x=978 y=580 width=28 height=47 xoffset=5 yoffset=23 xadvance=30 page=0 chnl=0 +char id=163 x=932 y=632 width=38 height=45 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=166 x=970 y=632 width=16 height=45 xoffset=4 yoffset=17 xadvance=11 page=0 chnl=0 +char id=167 x=959 y=364 width=25 height=54 xoffset=6 yoffset=17 xadvance=30 page=0 chnl=0 +char id=169 x=653 y=580 width=52 height=48 xoffset=5 yoffset=15 xadvance=49 page=0 chnl=0 +char id=174 x=705 y=580 width=52 height=48 xoffset=5 yoffset=15 xadvance=49 page=0 chnl=0 +char id=182 x=827 y=473 width=41 height=53 xoffset=5 yoffset=18 xadvance=29 page=0 chnl=0 +char id=183 x=1014 y=250 width=7 height=8 xoffset=7 yoffset=42 xadvance=14 page=0 chnl=0 +char id=188 x=0 y=679 width=44 height=45 xoffset=5 yoffset=17 xadvance=46 page=0 chnl=0 +char id=189 x=44 y=679 width=48 height=45 xoffset=5 yoffset=17 xadvance=46 page=0 chnl=0 +char id=190 x=92 y=679 width=45 height=45 xoffset=4 yoffset=17 xadvance=46 page=0 chnl=0 +char id=191 x=986 y=632 width=23 height=45 xoffset=0 yoffset=31 xadvance=26 page=0 chnl=0 +char id=192 x=925 y=192 width=46 height=57 xoffset=0 yoffset=4 xadvance=44 page=0 chnl=0 +char id=193 x=0 y=250 width=54 height=57 xoffset=0 yoffset=4 xadvance=44 page=0 chnl=0 +char id=194 x=971 y=192 width=46 height=57 xoffset=0 yoffset=4 xadvance=44 page=0 chnl=0 +char id=195 x=0 y=419 width=46 height=54 xoffset=0 yoffset=7 xadvance=44 page=0 chnl=0 +char id=196 x=46 y=419 width=50 height=54 xoffset=0 yoffset=7 xadvance=44 page=0 chnl=0 +char id=197 x=463 y=75 width=46 height=58 xoffset=0 yoffset=3 xadvance=44 page=0 chnl=0 +char id=199 x=509 y=75 width=45 height=58 xoffset=5 yoffset=17 xadvance=41 page=0 chnl=0 +char id=200 x=54 y=250 width=46 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=201 x=100 y=250 width=54 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=202 x=154 y=250 width=46 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=203 x=96 y=419 width=50 height=54 xoffset=0 yoffset=7 xadvance=37 page=0 chnl=0 +char id=204 x=200 y=250 width=37 height=57 xoffset=1 yoffset=4 xadvance=19 page=0 chnl=0 +char id=205 x=237 y=250 width=53 height=57 xoffset=1 yoffset=4 xadvance=19 page=0 chnl=0 +char id=206 x=290 y=250 width=35 height=57 xoffset=1 yoffset=4 xadvance=19 page=0 chnl=0 +char id=207 x=146 y=419 width=49 height=54 xoffset=1 yoffset=7 xadvance=19 page=0 chnl=0 +char id=209 x=0 y=364 width=59 height=55 xoffset=0 yoffset=7 xadvance=44 page=0 chnl=0 +char id=210 x=554 y=75 width=47 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=211 x=601 y=75 width=49 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=212 x=650 y=75 width=47 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=213 x=59 y=364 width=47 height=55 xoffset=5 yoffset=7 xadvance=44 page=0 chnl=0 +char id=214 x=106 y=364 width=47 height=55 xoffset=5 yoffset=7 xadvance=44 page=0 chnl=0 +char id=215 x=0 y=991 width=38 height=32 xoffset=3 yoffset=29 xadvance=34 page=0 chnl=0 +char id=216 x=868 y=473 width=53 height=53 xoffset=2 yoffset=14 xadvance=44 page=0 chnl=0 +char id=217 x=697 y=75 width=51 height=58 xoffset=8 yoffset=4 xadvance=44 page=0 chnl=0 +char id=218 x=748 y=75 width=51 height=58 xoffset=8 yoffset=4 xadvance=44 page=0 chnl=0 +char id=219 x=799 y=75 width=51 height=58 xoffset=8 yoffset=4 xadvance=44 page=0 chnl=0 +char id=220 x=153 y=364 width=51 height=55 xoffset=8 yoffset=7 xadvance=44 page=0 chnl=0 +char id=221 x=325 y=250 width=51 height=57 xoffset=8 yoffset=4 xadvance=44 page=0 chnl=0 +char id=223 x=137 y=679 width=35 height=45 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=224 x=172 y=679 width=30 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=225 x=202 y=679 width=46 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=226 x=248 y=679 width=28 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=229 x=757 y=580 width=28 height=48 xoffset=3 yoffset=14 xadvance=26 page=0 chnl=0 +char id=230 x=340 y=991 width=41 height=31 xoffset=3 yoffset=31 xadvance=40 page=0 chnl=0 +char id=231 x=375 y=859 width=28 height=44 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=232 x=276 y=679 width=30 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=233 x=306 y=679 width=46 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=234 x=352 y=679 width=28 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=236 x=403 y=859 width=32 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=237 x=435 y=859 width=46 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=238 x=481 y=859 width=30 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=240 x=380 y=679 width=35 height=45 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=242 x=415 y=679 width=30 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=243 x=445 y=679 width=45 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=244 x=490 y=679 width=30 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=248 x=511 y=859 width=35 height=44 xoffset=2 yoffset=25 xadvance=30 page=0 chnl=0 +char id=249 x=520 y=679 width=27 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=250 x=547 y=679 width=44 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=251 x=591 y=679 width=27 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=253 x=850 y=75 width=49 height=58 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=254 x=899 y=75 width=39 height=58 xoffset=-3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=255 x=195 y=419 width=47 height=54 xoffset=0 yoffset=21 xadvance=30 page=0 chnl=0 +char id=256 x=38 y=580 width=51 height=51 xoffset=0 yoffset=10 xadvance=44 page=0 chnl=0 +char id=258 x=938 y=75 width=46 height=58 xoffset=0 yoffset=3 xadvance=44 page=0 chnl=0 +char id=259 x=546 y=859 width=30 height=44 xoffset=3 yoffset=18 xadvance=26 page=0 chnl=0 +char id=260 x=204 y=364 width=53 height=55 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=262 x=0 y=134 width=57 height=58 xoffset=4 yoffset=4 xadvance=41 page=0 chnl=0 +char id=263 x=618 y=679 width=49 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=264 x=57 y=134 width=46 height=58 xoffset=4 yoffset=4 xadvance=41 page=0 chnl=0 +char id=265 x=667 y=679 width=30 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=266 x=257 y=364 width=46 height=55 xoffset=4 yoffset=7 xadvance=41 page=0 chnl=0 +char id=268 x=103 y=134 width=46 height=58 xoffset=4 yoffset=4 xadvance=41 page=0 chnl=0 +char id=269 x=697 y=679 width=35 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=270 x=376 y=250 width=49 height=57 xoffset=1 yoffset=4 xadvance=44 page=0 chnl=0 +char id=271 x=732 y=679 width=65 height=45 xoffset=3 yoffset=17 xadvance=38 page=0 chnl=0 +char id=273 x=797 y=679 width=42 height=45 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=274 x=89 y=580 width=48 height=51 xoffset=0 yoffset=10 xadvance=37 page=0 chnl=0 +char id=276 x=425 y=250 width=46 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=277 x=576 y=859 width=32 height=44 xoffset=3 yoffset=18 xadvance=26 page=0 chnl=0 +char id=278 x=242 y=419 width=46 height=54 xoffset=0 yoffset=7 xadvance=37 page=0 chnl=0 +char id=280 x=288 y=419 width=46 height=54 xoffset=0 yoffset=18 xadvance=37 page=0 chnl=0 +char id=282 x=471 y=250 width=46 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=283 x=839 y=679 width=32 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=284 x=149 y=134 width=48 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=285 x=984 y=75 width=37 height=58 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=286 x=197 y=134 width=48 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=287 x=517 y=250 width=37 height=57 xoffset=0 yoffset=18 xadvance=30 page=0 chnl=0 +char id=288 x=303 y=364 width=48 height=55 xoffset=5 yoffset=7 xadvance=44 page=0 chnl=0 +char id=289 x=984 y=364 width=37 height=54 xoffset=0 yoffset=21 xadvance=30 page=0 chnl=0 +char id=290 x=280 y=0 width=48 height=64 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=291 x=753 y=0 width=37 height=62 xoffset=0 yoffset=13 xadvance=30 page=0 chnl=0 +char id=292 x=245 y=134 width=58 height=58 xoffset=1 yoffset=3 xadvance=44 page=0 chnl=0 +char id=293 x=554 y=250 width=35 height=57 xoffset=0 yoffset=4 xadvance=30 page=0 chnl=0 +char id=295 x=608 y=859 width=32 height=44 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=296 x=334 y=419 width=39 height=54 xoffset=1 yoffset=7 xadvance=19 page=0 chnl=0 +char id=298 x=137 y=580 width=51 height=51 xoffset=1 yoffset=10 xadvance=19 page=0 chnl=0 +char id=300 x=303 y=134 width=37 height=58 xoffset=1 yoffset=3 xadvance=19 page=0 chnl=0 +char id=302 x=373 y=419 width=33 height=54 xoffset=1 yoffset=18 xadvance=19 page=0 chnl=0 +char id=303 x=351 y=364 width=18 height=55 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=304 x=406 y=419 width=33 height=54 xoffset=1 yoffset=7 xadvance=19 page=0 chnl=0 +char id=306 x=640 y=859 width=57 height=44 xoffset=1 yoffset=18 xadvance=43 page=0 chnl=0 +char id=307 x=340 y=134 width=36 height=58 xoffset=1 yoffset=17 xadvance=32 page=0 chnl=0 +char id=308 x=870 y=0 width=39 height=59 xoffset=1 yoffset=3 xadvance=23 page=0 chnl=0 +char id=309 x=376 y=134 width=46 height=58 xoffset=-7 yoffset=17 xadvance=16 page=0 chnl=0 +char id=310 x=557 y=0 width=53 height=63 xoffset=2 yoffset=18 xadvance=44 page=0 chnl=0 +char id=311 x=328 y=0 width=39 height=64 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=313 x=422 y=134 width=42 height=58 xoffset=0 yoffset=3 xadvance=37 page=0 chnl=0 +char id=314 x=464 y=134 width=53 height=58 xoffset=1 yoffset=3 xadvance=16 page=0 chnl=0 +char id=315 x=610 y=0 width=42 height=63 xoffset=0 yoffset=18 xadvance=37 page=0 chnl=0 +char id=316 x=367 y=0 width=20 height=64 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=317 x=697 y=859 width=55 height=44 xoffset=0 yoffset=17 xadvance=37 page=0 chnl=0 +char id=318 x=752 y=859 width=52 height=44 xoffset=1 yoffset=17 xadvance=23 page=0 chnl=0 +char id=320 x=804 y=859 width=27 height=44 xoffset=1 yoffset=17 xadvance=26 page=0 chnl=0 +char id=322 x=831 y=859 width=24 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=323 x=909 y=0 width=59 height=59 xoffset=0 yoffset=3 xadvance=44 page=0 chnl=0 +char id=324 x=855 y=859 width=48 height=44 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=325 x=652 y=0 width=59 height=63 xoffset=0 yoffset=18 xadvance=44 page=0 chnl=0 +char id=326 x=329 y=580 width=31 height=50 xoffset=1 yoffset=31 xadvance=30 page=0 chnl=0 +char id=327 x=517 y=134 width=59 height=58 xoffset=0 yoffset=4 xadvance=44 page=0 chnl=0 +char id=328 x=903 y=859 width=34 height=44 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=329 x=937 y=859 width=31 height=44 xoffset=4 yoffset=17 xadvance=34 page=0 chnl=0 +char id=330 x=871 y=679 width=47 height=45 xoffset=2 yoffset=17 xadvance=44 page=0 chnl=0 +char id=331 x=968 y=859 width=30 height=44 xoffset=1 yoffset=31 xadvance=30 page=0 chnl=0 +char id=332 x=452 y=527 width=47 height=52 xoffset=5 yoffset=10 xadvance=44 page=0 chnl=0 +char id=334 x=968 y=0 width=47 height=59 xoffset=5 yoffset=3 xadvance=44 page=0 chnl=0 +char id=335 x=0 y=903 width=30 height=44 xoffset=4 yoffset=18 xadvance=30 page=0 chnl=0 +char id=336 x=576 y=134 width=77 height=58 xoffset=5 yoffset=4 xadvance=44 page=0 chnl=0 +char id=337 x=918 y=679 width=68 height=45 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=338 x=30 y=903 width=61 height=44 xoffset=5 yoffset=18 xadvance=55 page=0 chnl=0 +char id=339 x=381 y=991 width=45 height=31 xoffset=4 yoffset=31 xadvance=43 page=0 chnl=0 +char id=340 x=653 y=134 width=42 height=58 xoffset=1 yoffset=3 xadvance=41 page=0 chnl=0 +char id=341 x=91 y=903 width=49 height=44 xoffset=0 yoffset=17 xadvance=19 page=0 chnl=0 +char id=342 x=711 y=0 width=42 height=63 xoffset=1 yoffset=18 xadvance=41 page=0 chnl=0 +char id=343 x=360 y=580 width=32 height=50 xoffset=0 yoffset=31 xadvance=19 page=0 chnl=0 +char id=344 x=589 y=250 width=42 height=57 xoffset=1 yoffset=4 xadvance=41 page=0 chnl=0 +char id=345 x=140 y=903 width=36 height=44 xoffset=0 yoffset=17 xadvance=19 page=0 chnl=0 +char id=346 x=0 y=75 width=50 height=59 xoffset=4 yoffset=3 xadvance=34 page=0 chnl=0 +char id=347 x=0 y=724 width=49 height=45 xoffset=3 yoffset=17 xadvance=23 page=0 chnl=0 +char id=348 x=695 y=134 width=33 height=58 xoffset=4 yoffset=4 xadvance=34 page=0 chnl=0 +char id=349 x=986 y=679 width=27 height=45 xoffset=3 yoffset=17 xadvance=23 page=0 chnl=0 +char id=350 x=728 y=134 width=33 height=58 xoffset=4 yoffset=17 xadvance=34 page=0 chnl=0 +char id=351 x=998 y=859 width=22 height=44 xoffset=3 yoffset=31 xadvance=23 page=0 chnl=0 +char id=352 x=761 y=134 width=35 height=58 xoffset=4 yoffset=4 xadvance=34 page=0 chnl=0 +char id=353 x=49 y=724 width=31 height=45 xoffset=3 yoffset=17 xadvance=23 page=0 chnl=0 +char id=354 x=631 y=250 width=44 height=57 xoffset=6 yoffset=18 xadvance=37 page=0 chnl=0 +char id=355 x=997 y=527 width=24 height=51 xoffset=1 yoffset=24 xadvance=16 page=0 chnl=0 +char id=356 x=675 y=250 width=44 height=57 xoffset=6 yoffset=4 xadvance=37 page=0 chnl=0 +char id=357 x=80 y=724 width=50 height=45 xoffset=5 yoffset=17 xadvance=25 page=0 chnl=0 +char id=360 x=369 y=364 width=51 height=55 xoffset=8 yoffset=7 xadvance=44 page=0 chnl=0 +char id=362 x=499 y=527 width=51 height=52 xoffset=8 yoffset=10 xadvance=44 page=0 chnl=0 +char id=364 x=50 y=75 width=51 height=59 xoffset=8 yoffset=3 xadvance=44 page=0 chnl=0 +char id=365 x=176 y=903 width=28 height=44 xoffset=5 yoffset=18 xadvance=30 page=0 chnl=0 +char id=366 x=101 y=75 width=51 height=59 xoffset=8 yoffset=3 xadvance=44 page=0 chnl=0 +char id=367 x=785 y=580 width=27 height=48 xoffset=5 yoffset=14 xadvance=30 page=0 chnl=0 +char id=368 x=152 y=75 width=74 height=59 xoffset=8 yoffset=3 xadvance=44 page=0 chnl=0 +char id=369 x=130 y=724 width=67 height=45 xoffset=5 yoffset=17 xadvance=30 page=0 chnl=0 +char id=370 x=439 y=419 width=51 height=54 xoffset=8 yoffset=18 xadvance=44 page=0 chnl=0 +char id=372 x=796 y=134 width=68 height=58 xoffset=7 yoffset=4 xadvance=58 page=0 chnl=0 +char id=373 x=197 y=724 width=47 height=45 xoffset=6 yoffset=17 xadvance=44 page=0 chnl=0 +char id=374 x=719 y=250 width=51 height=57 xoffset=8 yoffset=4 xadvance=44 page=0 chnl=0 +char id=375 x=864 y=134 width=39 height=58 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=376 x=490 y=419 width=51 height=54 xoffset=8 yoffset=7 xadvance=44 page=0 chnl=0 +char id=377 x=903 y=134 width=54 height=58 xoffset=0 yoffset=3 xadvance=37 page=0 chnl=0 +char id=378 x=204 y=903 width=49 height=44 xoffset=1 yoffset=17 xadvance=26 page=0 chnl=0 +char id=379 x=541 y=419 width=50 height=54 xoffset=0 yoffset=7 xadvance=37 page=0 chnl=0 +char id=381 x=770 y=250 width=50 height=57 xoffset=0 yoffset=4 xadvance=37 page=0 chnl=0 +char id=382 x=253 y=903 width=34 height=44 xoffset=1 yoffset=17 xadvance=26 page=0 chnl=0 +char id=383 x=287 y=903 width=41 height=44 xoffset=1 yoffset=17 xadvance=19 page=0 chnl=0 +char id=902 x=328 y=903 width=45 height=44 xoffset=1 yoffset=17 xadvance=44 page=0 chnl=0 +char id=903 x=1013 y=814 width=9 height=9 xoffset=8 yoffset=30 xadvance=14 page=0 chnl=0 +char id=904 x=373 y=903 width=65 height=44 xoffset=7 yoffset=17 xadvance=49 page=0 chnl=0 +char id=905 x=244 y=724 width=78 height=45 xoffset=7 yoffset=16 xadvance=56 page=0 chnl=0 +char id=906 x=322 y=724 width=54 height=45 xoffset=7 yoffset=16 xadvance=30 page=0 chnl=0 +char id=908 x=178 y=632 width=61 height=46 xoffset=7 yoffset=16 xadvance=50 page=0 chnl=0 +char id=910 x=376 y=724 width=59 height=45 xoffset=7 yoffset=16 xadvance=53 page=0 chnl=0 +char id=911 x=435 y=724 width=51 height=45 xoffset=7 yoffset=16 xadvance=54 page=0 chnl=0 +char id=912 x=392 y=580 width=26 height=50 xoffset=3 yoffset=12 xadvance=16 page=0 chnl=0 +char id=913 x=438 y=903 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=916 x=484 y=903 width=41 height=44 xoffset=0 yoffset=17 xadvance=40 page=0 chnl=0 +char id=920 x=486 y=724 width=50 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=923 x=525 y=903 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=925 x=571 y=903 width=59 height=44 xoffset=0 yoffset=18 xadvance=44 page=0 chnl=0 +char id=927 x=536 y=724 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=933 x=630 y=903 width=46 height=44 xoffset=9 yoffset=17 xadvance=43 page=0 chnl=0 +char id=937 x=676 y=903 width=48 height=44 xoffset=2 yoffset=17 xadvance=46 page=0 chnl=0 +char id=938 x=591 y=419 width=49 height=54 xoffset=1 yoffset=7 xadvance=19 page=0 chnl=0 +char id=939 x=640 y=419 width=45 height=54 xoffset=9 yoffset=7 xadvance=44 page=0 chnl=0 +char id=940 x=188 y=580 width=35 height=51 xoffset=4 yoffset=11 xadvance=35 page=0 chnl=0 +char id=941 x=223 y=580 width=28 height=51 xoffset=3 yoffset=11 xadvance=25 page=0 chnl=0 +char id=942 x=250 y=0 width=30 height=65 xoffset=4 yoffset=11 xadvance=32 page=0 chnl=0 +char id=943 x=251 y=580 width=20 height=51 xoffset=5 yoffset=11 xadvance=16 page=0 chnl=0 +char id=944 x=506 y=580 width=34 height=49 xoffset=4 yoffset=13 xadvance=31 page=0 chnl=0 +char id=945 x=426 y=991 width=35 height=31 xoffset=4 yoffset=31 xadvance=35 page=0 chnl=0 +char id=946 x=820 y=250 width=34 height=57 xoffset=1 yoffset=17 xadvance=32 page=0 chnl=0 +char id=947 x=583 y=724 width=34 height=45 xoffset=4 yoffset=31 xadvance=29 page=0 chnl=0 +char id=948 x=617 y=724 width=31 height=45 xoffset=4 yoffset=17 xadvance=32 page=0 chnl=0 +char id=949 x=461 y=991 width=27 height=31 xoffset=3 yoffset=31 xadvance=25 page=0 chnl=0 +char id=950 x=957 y=134 width=29 height=58 xoffset=5 yoffset=16 xadvance=28 page=0 chnl=0 +char id=951 x=648 y=724 width=30 height=45 xoffset=4 yoffset=31 xadvance=32 page=0 chnl=0 +char id=952 x=678 y=724 width=31 height=45 xoffset=6 yoffset=17 xadvance=32 page=0 chnl=0 +char id=954 x=488 y=991 width=36 height=31 xoffset=6 yoffset=30 xadvance=33 page=0 chnl=0 +char id=955 x=709 y=724 width=30 height=45 xoffset=1 yoffset=17 xadvance=28 page=0 chnl=0 +char id=956 x=724 y=903 width=33 height=44 xoffset=2 yoffset=32 xadvance=32 page=0 chnl=0 +char id=958 x=790 y=0 width=35 height=60 xoffset=3 yoffset=13 xadvance=31 page=0 chnl=0 +char id=959 x=524 y=991 width=30 height=31 xoffset=4 yoffset=31 xadvance=30 page=0 chnl=0 +char id=960 x=38 y=991 width=40 height=32 xoffset=3 yoffset=30 xadvance=36 page=0 chnl=0 +char id=961 x=739 y=724 width=35 height=45 xoffset=0 yoffset=31 xadvance=32 page=0 chnl=0 +char id=962 x=774 y=724 width=30 height=45 xoffset=4 yoffset=31 xadvance=27 page=0 chnl=0 +char id=963 x=78 y=991 width=39 height=32 xoffset=4 yoffset=30 xadvance=32 page=0 chnl=0 +char id=964 x=554 y=991 width=32 height=31 xoffset=4 yoffset=31 xadvance=25 page=0 chnl=0 +char id=965 x=586 y=991 width=31 height=31 xoffset=4 yoffset=31 xadvance=31 page=0 chnl=0 +char id=966 x=804 y=724 width=37 height=45 xoffset=5 yoffset=31 xadvance=39 page=0 chnl=0 +char id=967 x=757 y=903 width=37 height=44 xoffset=-1 yoffset=31 xadvance=29 page=0 chnl=0 +char id=968 x=921 y=473 width=41 height=53 xoffset=5 yoffset=23 xadvance=42 page=0 chnl=0 +char id=969 x=617 y=991 width=42 height=31 xoffset=4 yoffset=31 xadvance=42 page=0 chnl=0 +char id=972 x=418 y=580 width=37 height=50 xoffset=5 yoffset=12 xadvance=30 page=0 chnl=0 +char id=973 x=540 y=580 width=31 height=49 xoffset=4 yoffset=13 xadvance=31 page=0 chnl=0 +char id=974 x=571 y=580 width=42 height=49 xoffset=4 yoffset=13 xadvance=42 page=0 chnl=0 +char id=976 x=0 y=632 width=32 height=47 xoffset=5 yoffset=15 xadvance=32 page=0 chnl=0 +char id=977 x=32 y=632 width=39 height=47 xoffset=4 yoffset=15 xadvance=36 page=0 chnl=0 +char id=978 x=794 y=903 width=44 height=44 xoffset=7 yoffset=17 xadvance=38 page=0 chnl=0 +char id=979 x=239 y=632 width=56 height=46 xoffset=7 yoffset=15 xadvance=50 page=0 chnl=0 +char id=980 x=685 y=419 width=44 height=54 xoffset=7 yoffset=7 xadvance=38 page=0 chnl=0 +char id=981 x=550 y=527 width=37 height=52 xoffset=4 yoffset=24 xadvance=39 page=0 chnl=0 +char id=985 x=841 y=724 width=30 height=45 xoffset=4 yoffset=31 xadvance=30 page=0 chnl=0 +char id=986 x=838 y=903 width=40 height=44 xoffset=6 yoffset=17 xadvance=36 page=0 chnl=0 +char id=989 x=878 y=903 width=42 height=44 xoffset=-2 yoffset=31 xadvance=26 page=0 chnl=0 +char id=990 x=871 y=724 width=36 height=45 xoffset=6 yoffset=18 xadvance=40 page=0 chnl=0 +char id=991 x=986 y=134 width=22 height=58 xoffset=5 yoffset=15 xadvance=24 page=0 chnl=0 +char id=992 x=920 y=903 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=993 x=0 y=192 width=38 height=58 xoffset=1 yoffset=15 xadvance=34 page=0 chnl=0 +char id=994 x=226 y=75 width=65 height=59 xoffset=2 yoffset=17 xadvance=59 page=0 chnl=0 +char id=995 x=907 y=724 width=46 height=45 xoffset=1 yoffset=31 xadvance=41 page=0 chnl=0 +char id=996 x=384 y=307 width=38 height=56 xoffset=6 yoffset=17 xadvance=36 page=0 chnl=0 +char id=997 x=953 y=724 width=35 height=45 xoffset=3 yoffset=31 xadvance=31 page=0 chnl=0 +char id=998 x=422 y=307 width=39 height=56 xoffset=0 yoffset=17 xadvance=35 page=0 chnl=0 +char id=1000 x=587 y=527 width=38 height=52 xoffset=2 yoffset=17 xadvance=30 page=0 chnl=0 +char id=1002 x=812 y=580 width=51 height=48 xoffset=2 yoffset=17 xadvance=52 page=0 chnl=0 +char id=1004 x=962 y=473 width=50 height=53 xoffset=5 yoffset=9 xadvance=34 page=0 chnl=0 +char id=1006 x=387 y=0 width=40 height=64 xoffset=6 yoffset=9 xadvance=39 page=0 chnl=0 +char id=1007 x=271 y=580 width=28 height=51 xoffset=4 yoffset=24 xadvance=27 page=0 chnl=0 +char id=1008 x=659 y=991 width=29 height=31 xoffset=5 yoffset=31 xadvance=32 page=0 chnl=0 +char id=1009 x=988 y=724 width=31 height=45 xoffset=3 yoffset=31 xadvance=32 page=0 chnl=0 +char id=1010 x=688 y=991 width=28 height=31 xoffset=4 yoffset=31 xadvance=29 page=0 chnl=0 +char id=1011 x=38 y=192 width=34 height=58 xoffset=-7 yoffset=17 xadvance=16 page=0 chnl=0 +char id=1012 x=0 y=769 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1013 x=716 y=991 width=26 height=31 xoffset=4 yoffset=31 xadvance=21 page=0 chnl=0 +char id=1014 x=742 y=991 width=24 height=31 xoffset=2 yoffset=31 xadvance=21 page=0 chnl=0 +char id=1016 x=461 y=307 width=32 height=56 xoffset=5 yoffset=19 xadvance=33 page=0 chnl=0 +char id=1017 x=47 y=769 width=45 height=45 xoffset=5 yoffset=17 xadvance=41 page=0 chnl=0 +char id=1019 x=966 y=903 width=47 height=44 xoffset=1 yoffset=31 xadvance=43 page=0 chnl=0 +char id=1020 x=0 y=947 width=45 height=44 xoffset=-6 yoffset=31 xadvance=32 page=0 chnl=0 +char id=1021 x=92 y=769 width=44 height=45 xoffset=3 yoffset=17 xadvance=41 page=0 chnl=0 +char id=1022 x=136 y=769 width=42 height=45 xoffset=5 yoffset=17 xadvance=62 page=0 chnl=0 +char id=1023 x=178 y=769 width=42 height=45 xoffset=3 yoffset=17 xadvance=62 page=0 chnl=0 +char id=1024 x=72 y=192 width=61 height=58 xoffset=1 yoffset=3 xadvance=37 page=0 chnl=0 +char id=1025 x=420 y=364 width=61 height=55 xoffset=1 yoffset=6 xadvance=37 page=0 chnl=0 +char id=1026 x=45 y=947 width=44 height=44 xoffset=6 yoffset=18 xadvance=46 page=0 chnl=0 +char id=1027 x=133 y=192 width=54 height=58 xoffset=1 yoffset=3 xadvance=34 page=0 chnl=0 +char id=1028 x=220 y=769 width=48 height=45 xoffset=5 yoffset=17 xadvance=40 page=0 chnl=0 +char id=1029 x=268 y=769 width=36 height=45 xoffset=2 yoffset=17 xadvance=29 page=0 chnl=0 +char id=1031 x=481 y=364 width=49 height=55 xoffset=1 yoffset=6 xadvance=20 page=0 chnl=0 +char id=1032 x=89 y=947 width=36 height=44 xoffset=0 yoffset=18 xadvance=23 page=0 chnl=0 +char id=1033 x=125 y=947 width=61 height=44 xoffset=0 yoffset=18 xadvance=58 page=0 chnl=0 +char id=1035 x=186 y=947 width=46 height=44 xoffset=6 yoffset=18 xadvance=51 page=0 chnl=0 +char id=1036 x=187 y=192 width=55 height=58 xoffset=1 yoffset=3 xadvance=41 page=0 chnl=0 +char id=1037 x=242 y=192 width=58 height=58 xoffset=1 yoffset=3 xadvance=44 page=0 chnl=0 +char id=1038 x=854 y=250 width=53 height=57 xoffset=7 yoffset=5 xadvance=43 page=0 chnl=0 +char id=1039 x=729 y=419 width=58 height=54 xoffset=1 yoffset=18 xadvance=44 page=0 chnl=0 +char id=1040 x=232 y=947 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1044 x=787 y=419 width=57 height=54 xoffset=-2 yoffset=18 xadvance=39 page=0 chnl=0 +char id=1047 x=304 y=769 width=41 height=45 xoffset=2 yoffset=17 xadvance=35 page=0 chnl=0 +char id=1049 x=493 y=307 width=58 height=56 xoffset=1 yoffset=5 xadvance=44 page=0 chnl=0 +char id=1051 x=278 y=947 width=54 height=44 xoffset=1 yoffset=18 xadvance=42 page=0 chnl=0 +char id=1054 x=345 y=769 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1057 x=392 y=769 width=47 height=45 xoffset=4 yoffset=17 xadvance=40 page=0 chnl=0 +char id=1059 x=332 y=947 width=53 height=44 xoffset=7 yoffset=18 xadvance=43 page=0 chnl=0 +char id=1062 x=844 y=419 width=57 height=54 xoffset=1 yoffset=18 xadvance=45 page=0 chnl=0 +char id=1065 x=901 y=419 width=75 height=54 xoffset=1 yoffset=18 xadvance=61 page=0 chnl=0 +char id=1069 x=439 y=769 width=45 height=45 xoffset=2 yoffset=17 xadvance=40 page=0 chnl=0 +char id=1070 x=484 y=769 width=66 height=45 xoffset=1 yoffset=17 xadvance=60 page=0 chnl=0 +char id=1072 x=766 y=991 width=27 height=31 xoffset=2 yoffset=31 xadvance=26 page=0 chnl=0 +char id=1073 x=71 y=632 width=35 height=47 xoffset=4 yoffset=15 xadvance=30 page=0 chnl=0 +char id=1077 x=793 y=991 width=28 height=31 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=1079 x=821 y=991 width=27 height=31 xoffset=1 yoffset=31 xadvance=24 page=0 chnl=0 +char id=1081 x=385 y=947 width=40 height=44 xoffset=1 yoffset=17 xadvance=32 page=0 chnl=0 +char id=1086 x=848 y=991 width=31 height=31 xoffset=4 yoffset=31 xadvance=29 page=0 chnl=0 +char id=1088 x=425 y=947 width=40 height=44 xoffset=-3 yoffset=31 xadvance=30 page=0 chnl=0 +char id=1089 x=879 y=991 width=29 height=31 xoffset=3 yoffset=31 xadvance=25 page=0 chnl=0 +char id=1092 x=300 y=192 width=45 height=58 xoffset=3 yoffset=17 xadvance=42 page=0 chnl=0 +char id=1101 x=908 y=991 width=29 height=31 xoffset=1 yoffset=31 xadvance=26 page=0 chnl=0 +char id=1102 x=937 y=991 width=44 height=31 xoffset=1 yoffset=31 xadvance=41 page=0 chnl=0 +char id=1104 x=550 y=769 width=33 height=45 xoffset=5 yoffset=17 xadvance=26 page=0 chnl=0 +char id=1106 x=907 y=250 width=32 height=57 xoffset=1 yoffset=17 xadvance=29 page=0 chnl=0 +char id=1107 x=465 y=947 width=50 height=44 xoffset=1 yoffset=17 xadvance=23 page=0 chnl=0 +char id=1108 x=981 y=991 width=32 height=31 xoffset=3 yoffset=31 xadvance=26 page=0 chnl=0 +char id=1110 x=515 y=947 width=19 height=44 xoffset=1 yoffset=17 xadvance=15 page=0 chnl=0 +char id=1111 x=534 y=947 width=45 height=44 xoffset=1 yoffset=17 xadvance=16 page=0 chnl=0 +char id=1112 x=345 y=192 width=34 height=58 xoffset=-7 yoffset=17 xadvance=16 page=0 chnl=0 +char id=1115 x=579 y=947 width=32 height=44 xoffset=1 yoffset=17 xadvance=31 page=0 chnl=0 +char id=1116 x=611 y=947 width=43 height=44 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=1117 x=654 y=947 width=40 height=44 xoffset=1 yoffset=17 xadvance=32 page=0 chnl=0 +char id=1118 x=379 y=192 width=55 height=58 xoffset=-3 yoffset=17 xadvance=28 page=0 chnl=0 +char id=1120 x=583 y=769 width=62 height=45 xoffset=5 yoffset=17 xadvance=61 page=0 chnl=0 +char id=1123 x=694 y=947 width=29 height=44 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=1124 x=645 y=769 width=69 height=45 xoffset=1 yoffset=17 xadvance=59 page=0 chnl=0 +char id=1126 x=723 y=947 width=58 height=44 xoffset=0 yoffset=17 xadvance=56 page=0 chnl=0 +char id=1128 x=781 y=947 width=80 height=44 xoffset=0 yoffset=17 xadvance=78 page=0 chnl=0 +char id=1134 x=148 y=0 width=45 height=69 xoffset=1 yoffset=6 xadvance=31 page=0 chnl=0 +char id=1135 x=299 y=580 width=30 height=51 xoffset=3 yoffset=22 xadvance=23 page=0 chnl=0 +char id=1137 x=434 y=192 width=46 height=58 xoffset=5 yoffset=17 xadvance=42 page=0 chnl=0 +char id=1138 x=714 y=769 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1140 x=861 y=947 width=53 height=44 xoffset=8 yoffset=18 xadvance=48 page=0 chnl=0 +char id=1142 x=480 y=192 width=57 height=58 xoffset=8 yoffset=4 xadvance=48 page=0 chnl=0 +char id=1143 x=761 y=769 width=51 height=45 xoffset=5 yoffset=17 xadvance=33 page=0 chnl=0 +char id=1144 x=537 y=192 width=81 height=58 xoffset=5 yoffset=17 xadvance=75 page=0 chnl=0 +char id=1145 x=914 y=947 width=65 height=44 xoffset=3 yoffset=31 xadvance=59 page=0 chnl=0 +char id=1146 x=625 y=527 width=56 height=52 xoffset=5 yoffset=14 xadvance=54 page=0 chnl=0 +char id=1148 x=291 y=75 width=62 height=59 xoffset=5 yoffset=3 xadvance=61 page=0 chnl=0 +char id=1149 x=863 y=580 width=51 height=48 xoffset=3 yoffset=14 xadvance=41 page=0 chnl=0 +char id=1150 x=551 y=307 width=62 height=56 xoffset=5 yoffset=6 xadvance=61 page=0 chnl=0 +char id=1152 x=979 y=947 width=40 height=44 xoffset=6 yoffset=17 xadvance=36 page=0 chnl=0 +char id=1160 x=427 y=0 width=130 height=64 xoffset=-44 yoffset=6 xadvance=-2 page=0 chnl=0 +char id=1161 x=0 y=0 width=148 height=75 xoffset=-48 yoffset=3 xadvance=-2 page=0 chnl=0 +char id=1162 x=193 y=0 width=57 height=66 xoffset=0 yoffset=5 xadvance=44 page=0 chnl=0 +char id=1163 x=976 y=419 width=42 height=54 xoffset=0 yoffset=17 xadvance=31 page=0 chnl=0 +char id=1168 x=455 y=580 width=51 height=50 xoffset=0 yoffset=11 xadvance=34 page=0 chnl=0 +char id=1172 x=939 y=250 width=44 height=57 xoffset=1 yoffset=18 xadvance=38 page=0 chnl=0 +char id=1174 x=0 y=473 width=63 height=54 xoffset=1 yoffset=18 xadvance=62 page=0 chnl=0 +char id=1176 x=618 y=192 width=41 height=58 xoffset=2 yoffset=17 xadvance=35 page=0 chnl=0 +char id=1178 x=63 y=473 width=45 height=54 xoffset=1 yoffset=18 xadvance=43 page=0 chnl=0 +char id=1186 x=108 y=473 width=57 height=54 xoffset=1 yoffset=18 xadvance=45 page=0 chnl=0 +char id=1190 x=0 y=307 width=65 height=57 xoffset=1 yoffset=18 xadvance=64 page=0 chnl=0 +char id=1192 x=812 y=769 width=47 height=45 xoffset=5 yoffset=17 xadvance=46 page=0 chnl=0 +char id=1194 x=659 y=192 width=48 height=58 xoffset=5 yoffset=17 xadvance=40 page=0 chnl=0 +char id=1196 x=681 y=527 width=44 height=52 xoffset=6 yoffset=18 xadvance=37 page=0 chnl=0 +char id=1202 x=165 y=473 width=54 height=54 xoffset=0 yoffset=18 xadvance=47 page=0 chnl=0 +char id=1204 x=725 y=527 width=67 height=52 xoffset=6 yoffset=18 xadvance=60 page=0 chnl=0 +char id=1206 x=219 y=473 width=48 height=54 xoffset=7 yoffset=18 xadvance=42 page=0 chnl=0 +char id=1212 x=859 y=769 width=53 height=45 xoffset=7 yoffset=17 xadvance=53 page=0 chnl=0 +char id=1214 x=0 y=527 width=53 height=53 xoffset=7 yoffset=17 xadvance=53 page=0 chnl=0 +char id=1217 x=613 y=307 width=65 height=56 xoffset=0 yoffset=5 xadvance=58 page=0 chnl=0 +char id=1219 x=65 y=307 width=50 height=57 xoffset=1 yoffset=18 xadvance=38 page=0 chnl=0 +char id=1221 x=53 y=527 width=56 height=53 xoffset=2 yoffset=18 xadvance=43 page=0 chnl=0 +char id=1223 x=530 y=364 width=58 height=55 xoffset=1 yoffset=18 xadvance=44 page=0 chnl=0 +char id=1225 x=109 y=527 width=58 height=53 xoffset=1 yoffset=18 xadvance=44 page=0 chnl=0 +char id=1227 x=792 y=527 width=47 height=52 xoffset=8 yoffset=18 xadvance=42 page=0 chnl=0 +char id=1229 x=167 y=527 width=69 height=53 xoffset=1 yoffset=18 xadvance=55 page=0 chnl=0 +char id=1232 x=678 y=307 width=45 height=56 xoffset=1 yoffset=5 xadvance=44 page=0 chnl=0 +char id=1233 x=912 y=769 width=32 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=1234 x=588 y=364 width=51 height=55 xoffset=1 yoffset=6 xadvance=44 page=0 chnl=0 +char id=1238 x=723 y=307 width=60 height=56 xoffset=1 yoffset=5 xadvance=38 page=0 chnl=0 +char id=1239 x=944 y=769 width=34 height=45 xoffset=3 yoffset=17 xadvance=26 page=0 chnl=0 +char id=1240 x=0 y=814 width=47 height=45 xoffset=4 yoffset=17 xadvance=43 page=0 chnl=0 +char id=1242 x=639 y=364 width=47 height=55 xoffset=4 yoffset=7 xadvance=43 page=0 chnl=0 +char id=1244 x=686 y=364 width=65 height=55 xoffset=0 yoffset=6 xadvance=58 page=0 chnl=0 +char id=1246 x=751 y=364 width=48 height=55 xoffset=2 yoffset=7 xadvance=35 page=0 chnl=0 +char id=1250 x=839 y=527 width=58 height=52 xoffset=1 yoffset=9 xadvance=44 page=0 chnl=0 +char id=1252 x=267 y=473 width=58 height=54 xoffset=1 yoffset=7 xadvance=44 page=0 chnl=0 +char id=1254 x=783 y=307 width=55 height=56 xoffset=7 yoffset=6 xadvance=44 page=0 chnl=0 +char id=1256 x=47 y=814 width=47 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1258 x=799 y=364 width=47 height=55 xoffset=5 yoffset=7 xadvance=44 page=0 chnl=0 +char id=1260 x=838 y=307 width=45 height=56 xoffset=2 yoffset=6 xadvance=40 page=0 chnl=0 +char id=1262 x=236 y=527 width=53 height=53 xoffset=7 yoffset=9 xadvance=43 page=0 chnl=0 +char id=1263 x=289 y=527 width=55 height=53 xoffset=-3 yoffset=22 xadvance=28 page=0 chnl=0 +char id=1264 x=883 y=307 width=53 height=56 xoffset=7 yoffset=6 xadvance=43 page=0 chnl=0 +char id=1265 x=325 y=473 width=55 height=54 xoffset=-3 yoffset=21 xadvance=28 page=0 chnl=0 +char id=1266 x=353 y=75 width=76 height=59 xoffset=7 yoffset=3 xadvance=43 page=0 chnl=0 +char id=1267 x=707 y=192 width=84 height=58 xoffset=-3 yoffset=17 xadvance=28 page=0 chnl=0 +char id=1268 x=380 y=473 width=47 height=54 xoffset=8 yoffset=7 xadvance=42 page=0 chnl=0 +char id=1270 x=897 y=527 width=47 height=52 xoffset=1 yoffset=18 xadvance=35 page=0 chnl=0 +char id=1272 x=427 y=473 width=97 height=54 xoffset=1 yoffset=7 xadvance=53 page=0 chnl=0 +char id=1274 x=791 y=192 width=47 height=58 xoffset=1 yoffset=18 xadvance=35 page=0 chnl=0 +char id=1276 x=846 y=364 width=57 height=55 xoffset=0 yoffset=18 xadvance=44 page=0 chnl=0 +char id=1281 x=978 y=769 width=34 height=45 xoffset=3 yoffset=17 xadvance=30 page=0 chnl=0 +char id=1283 x=295 y=632 width=39 height=46 xoffset=3 yoffset=17 xadvance=39 page=0 chnl=0 +char id=1284 x=94 y=814 width=52 height=45 xoffset=6 yoffset=17 xadvance=49 page=0 chnl=0 +char id=1285 x=117 y=991 width=32 height=32 xoffset=4 yoffset=31 xadvance=31 page=0 chnl=0 +char id=1286 x=344 y=527 width=29 height=53 xoffset=6 yoffset=17 xadvance=33 page=0 chnl=0 +char id=1289 x=149 y=991 width=42 height=32 xoffset=0 yoffset=32 xadvance=39 page=0 chnl=0 +char id=1292 x=146 y=814 width=48 height=45 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1296 x=194 y=814 width=37 height=45 xoffset=4 yoffset=17 xadvance=32 page=0 chnl=0 +char id=1298 x=903 y=364 width=56 height=55 xoffset=2 yoffset=18 xadvance=43 page=0 chnl=0 +char id=1306 x=936 y=307 width=47 height=56 xoffset=5 yoffset=17 xadvance=44 page=0 chnl=0 +char id=1312 x=115 y=307 width=63 height=57 xoffset=1 yoffset=18 xadvance=61 page=0 chnl=0 +char id=1314 x=178 y=307 width=65 height=57 xoffset=1 yoffset=18 xadvance=64 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=30 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=62 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=30 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=62 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=30 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=-2 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=-2 page=0 chnl=0 +char id=8218 x=1012 y=769 width=10 height=16 xoffset=3 yoffset=54 xadvance=14 page=0 chnl=0 +char id=8224 x=524 y=473 width=27 height=54 xoffset=8 yoffset=17 xadvance=30 page=0 chnl=0 +char id=8225 x=551 y=473 width=31 height=54 xoffset=4 yoffset=17 xadvance=30 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=8240 x=914 y=580 width=64 height=48 xoffset=5 yoffset=15 xadvance=62 page=0 chnl=0 +char id=8252 x=231 y=814 width=37 height=45 xoffset=8 yoffset=17 xadvance=41 page=0 chnl=0 +char id=8260 x=268 y=814 width=67 height=45 xoffset=-11 yoffset=17 xadvance=9 page=0 chnl=0 +char id=8286 x=944 y=527 width=21 height=52 xoffset=3 yoffset=10 xadvance=9 page=0 chnl=0 +char id=8352 x=335 y=814 width=36 height=45 xoffset=8 yoffset=16 xadvance=43 page=0 chnl=0 +char id=8353 x=825 y=0 width=45 height=60 xoffset=5 yoffset=10 xadvance=41 page=0 chnl=0 +char id=8354 x=371 y=814 width=45 height=45 xoffset=5 yoffset=17 xadvance=41 page=0 chnl=0 +char id=8356 x=416 y=814 width=38 height=45 xoffset=1 yoffset=17 xadvance=30 page=0 chnl=0 +char id=8357 x=454 y=814 width=49 height=45 xoffset=1 yoffset=24 xadvance=48 page=0 chnl=0 +char id=8363 x=373 y=527 width=42 height=53 xoffset=4 yoffset=9 xadvance=31 page=0 chnl=0 +char id=8364 x=503 y=814 width=51 height=45 xoffset=5 yoffset=17 xadvance=45 page=0 chnl=0 +char id=8367 x=838 y=192 width=87 height=58 xoffset=0 yoffset=17 xadvance=84 page=0 chnl=0 +char id=8368 x=983 y=250 width=31 height=57 xoffset=0 yoffset=17 xadvance=29 page=0 chnl=0 +char id=8370 x=613 y=580 width=40 height=49 xoffset=5 yoffset=15 xadvance=38 page=0 chnl=0 +char id=8372 x=554 y=814 width=32 height=45 xoffset=4 yoffset=17 xadvance=34 page=0 chnl=0 +char id=8373 x=415 y=527 width=37 height=53 xoffset=5 yoffset=14 xadvance=37 page=0 chnl=0 +char id=11364 x=983 y=307 width=37 height=56 xoffset=6 yoffset=18 xadvance=41 page=0 chnl=0 +char id=11367 x=582 y=473 width=57 height=54 xoffset=1 yoffset=18 xadvance=45 page=0 chnl=0 +char id=11368 x=965 y=527 width=32 height=52 xoffset=0 yoffset=17 xadvance=30 page=0 chnl=0 +char id=11369 x=639 y=473 width=52 height=54 xoffset=2 yoffset=18 xadvance=45 page=0 chnl=0 +char id=11370 x=0 y=580 width=38 height=52 xoffset=0 yoffset=17 xadvance=31 page=0 chnl=0 +char id=11371 x=691 y=473 width=50 height=54 xoffset=0 yoffset=18 xadvance=37 page=0 chnl=0 +char id=11373 x=586 y=814 width=42 height=45 xoffset=5 yoffset=17 xadvance=42 page=0 chnl=0 +char id=11378 x=628 y=814 width=74 height=45 xoffset=7 yoffset=17 xadvance=67 page=0 chnl=0 +char id=0 x=946 y=0 width=43 height=43 xoffset=5 yoffset=18 xadvance=43 page=1 chnl=0 +char id=34 x=163 y=476 width=20 height=17 xoffset=11 yoffset=17 xadvance=24 page=1 chnl=0 +char id=35 x=0 y=44 width=39 height=43 xoffset=2 yoffset=18 xadvance=30 page=1 chnl=0 +char id=42 x=653 y=447 width=27 height=28 xoffset=8 yoffset=17 xadvance=30 page=1 chnl=0 +char id=43 x=220 y=382 width=35 height=33 xoffset=4 yoffset=28 xadvance=34 page=1 chnl=0 +char id=45 x=781 y=476 width=18 height=5 xoffset=4 yoffset=44 xadvance=19 page=1 chnl=0 +char id=60 x=109 y=382 width=41 height=34 xoffset=4 yoffset=28 xadvance=34 page=1 chnl=0 +char id=61 x=105 y=476 width=38 height=18 xoffset=3 yoffset=36 xadvance=34 page=1 chnl=0 +char id=62 x=150 y=382 width=38 height=34 xoffset=1 yoffset=28 xadvance=34 page=1 chnl=0 +char id=66 x=39 y=44 width=41 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=68 x=80 y=44 width=49 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=69 x=129 y=44 width=46 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=70 x=175 y=44 width=49 height=43 xoffset=0 yoffset=18 xadvance=34 page=1 chnl=0 +char id=72 x=224 y=44 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=73 x=989 y=0 width=33 height=43 xoffset=1 yoffset=18 xadvance=19 page=1 chnl=0 +char id=75 x=282 y=44 width=53 height=43 xoffset=2 yoffset=18 xadvance=44 page=1 chnl=0 +char id=76 x=335 y=44 width=42 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=77 x=377 y=44 width=68 height=43 xoffset=0 yoffset=18 xadvance=55 page=1 chnl=0 +char id=80 x=445 y=44 width=44 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=82 x=489 y=44 width=42 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=84 x=531 y=44 width=44 height=43 xoffset=6 yoffset=18 xadvance=37 page=1 chnl=0 +char id=88 x=575 y=44 width=57 height=43 xoffset=0 yoffset=18 xadvance=44 page=1 chnl=0 +char id=89 x=632 y=44 width=51 height=43 xoffset=8 yoffset=18 xadvance=44 page=1 chnl=0 +char id=90 x=683 y=44 width=50 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=94 x=852 y=447 width=29 height=24 xoffset=4 yoffset=18 xadvance=28 page=1 chnl=0 +char id=95 x=919 y=476 width=35 height=4 xoffset=-2 yoffset=65 xadvance=30 page=1 chnl=0 +char id=96 x=450 y=476 width=14 height=12 xoffset=8 yoffset=17 xadvance=19 page=1 chnl=0 +char id=109 x=943 y=382 width=49 height=30 xoffset=1 yoffset=31 xadvance=48 page=1 chnl=0 +char id=110 x=992 y=382 width=31 height=30 xoffset=1 yoffset=31 xadvance=30 page=1 chnl=0 +char id=114 x=0 y=417 width=32 height=30 xoffset=0 yoffset=31 xadvance=19 page=1 chnl=0 +char id=116 x=1003 y=302 width=20 height=38 xoffset=5 yoffset=24 xadvance=16 page=1 chnl=0 +char id=117 x=32 y=417 width=27 height=30 xoffset=5 yoffset=32 xadvance=30 page=1 chnl=0 +char id=118 x=59 y=417 width=33 height=30 xoffset=6 yoffset=32 xadvance=30 page=1 chnl=0 +char id=119 x=92 y=417 width=47 height=30 xoffset=6 yoffset=32 xadvance=44 page=1 chnl=0 +char id=120 x=684 y=417 width=32 height=29 xoffset=1 yoffset=32 xadvance=30 page=1 chnl=0 +char id=121 x=733 y=44 width=39 height=43 xoffset=0 yoffset=32 xadvance=30 page=1 chnl=0 +char id=122 x=716 y=417 width=32 height=29 xoffset=1 yoffset=32 xadvance=26 page=1 chnl=0 +char id=126 x=623 y=476 width=30 height=10 xoffset=5 yoffset=40 xadvance=33 page=1 chnl=0 +char id=164 x=695 y=343 width=48 height=36 xoffset=-1 yoffset=22 xadvance=30 page=1 chnl=0 +char id=165 x=772 y=44 width=46 height=43 xoffset=3 yoffset=18 xadvance=30 page=1 chnl=0 +char id=168 x=756 y=476 width=25 height=7 xoffset=7 yoffset=21 xadvance=19 page=1 chnl=0 +char id=170 x=921 y=447 width=22 height=19 xoffset=5 yoffset=17 xadvance=16 page=1 chnl=0 +char id=171 x=746 y=447 width=32 height=25 xoffset=3 yoffset=34 xadvance=26 page=1 chnl=0 +char id=172 x=943 y=447 width=36 height=19 xoffset=5 yoffset=36 xadvance=34 page=1 chnl=0 +char id=173 x=799 y=476 width=18 height=5 xoffset=4 yoffset=44 xadvance=19 page=1 chnl=0 +char id=175 x=954 y=476 width=28 height=4 xoffset=6 yoffset=22 xadvance=19 page=1 chnl=0 +char id=176 x=899 y=447 width=22 height=20 xoffset=9 yoffset=17 xadvance=24 page=1 chnl=0 +char id=177 x=719 y=259 width=40 height=41 xoffset=1 yoffset=20 xadvance=34 page=1 chnl=0 +char id=178 x=705 y=447 width=27 height=27 xoffset=4 yoffset=17 xadvance=18 page=1 chnl=0 +char id=179 x=680 y=447 width=25 height=28 xoffset=4 yoffset=17 xadvance=18 page=1 chnl=0 +char id=180 x=464 y=476 width=23 height=12 xoffset=11 yoffset=17 xadvance=19 page=1 chnl=0 +char id=181 x=818 y=44 width=35 height=43 xoffset=0 yoffset=32 xadvance=30 page=1 chnl=0 +char id=184 x=309 y=476 width=15 height=15 xoffset=1 yoffset=60 xadvance=19 page=1 chnl=0 +char id=185 x=732 y=447 width=14 height=27 xoffset=7 yoffset=17 xadvance=18 page=1 chnl=0 +char id=186 x=979 y=447 width=26 height=19 xoffset=6 yoffset=17 xadvance=18 page=1 chnl=0 +char id=187 x=778 y=447 width=36 height=25 xoffset=1 yoffset=34 xadvance=26 page=1 chnl=0 +char id=198 x=853 y=44 width=62 height=43 xoffset=0 yoffset=18 xadvance=55 page=1 chnl=0 +char id=208 x=915 y=44 width=49 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=222 x=964 y=44 width=40 height=43 xoffset=1 yoffset=18 xadvance=35 page=1 chnl=0 +char id=227 x=583 y=259 width=32 height=42 xoffset=3 yoffset=20 xadvance=26 page=1 chnl=0 +char id=228 x=759 y=259 width=43 height=41 xoffset=3 yoffset=21 xadvance=26 page=1 chnl=0 +char id=235 x=802 y=259 width=43 height=41 xoffset=3 yoffset=21 xadvance=26 page=1 chnl=0 +char id=239 x=449 y=302 width=28 height=40 xoffset=1 yoffset=21 xadvance=16 page=1 chnl=0 +char id=241 x=845 y=259 width=34 height=41 xoffset=1 yoffset=20 xadvance=30 page=1 chnl=0 +char id=245 x=615 y=259 width=31 height=42 xoffset=4 yoffset=20 xadvance=30 page=1 chnl=0 +char id=246 x=879 y=259 width=41 height=41 xoffset=4 yoffset=21 xadvance=30 page=1 chnl=0 +char id=247 x=917 y=343 width=35 height=35 xoffset=4 yoffset=27 xadvance=34 page=1 chnl=0 +char id=252 x=920 y=259 width=40 height=41 xoffset=5 yoffset=21 xadvance=30 page=1 chnl=0 +char id=257 x=790 y=302 width=44 height=39 xoffset=3 yoffset=23 xadvance=26 page=1 chnl=0 +char id=261 x=960 y=259 width=28 height=41 xoffset=3 yoffset=31 xadvance=26 page=1 chnl=0 +char id=267 x=988 y=259 width=28 height=41 xoffset=3 yoffset=21 xadvance=26 page=1 chnl=0 +char id=272 x=0 y=87 width=49 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=275 x=834 y=302 width=46 height=39 xoffset=3 yoffset=23 xadvance=26 page=1 chnl=0 +char id=279 x=0 y=302 width=28 height=41 xoffset=3 yoffset=21 xadvance=26 page=1 chnl=0 +char id=281 x=28 y=302 width=28 height=41 xoffset=3 yoffset=31 xadvance=26 page=1 chnl=0 +char id=294 x=49 y=87 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=297 x=477 y=302 width=34 height=40 xoffset=1 yoffset=21 xadvance=16 page=1 chnl=0 +char id=299 x=121 y=343 width=44 height=38 xoffset=1 yoffset=23 xadvance=16 page=1 chnl=0 +char id=301 x=107 y=87 width=32 height=43 xoffset=1 yoffset=18 xadvance=16 page=1 chnl=0 +char id=305 x=1002 y=87 width=16 height=30 xoffset=1 yoffset=31 xadvance=16 page=1 chnl=0 +char id=312 x=139 y=417 width=37 height=30 xoffset=0 yoffset=31 xadvance=30 page=1 chnl=0 +char id=319 x=139 y=87 width=42 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=321 x=181 y=87 width=42 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=333 x=880 y=302 width=43 height=39 xoffset=4 yoffset=23 xadvance=30 page=1 chnl=0 +char id=358 x=223 y=87 width=44 height=43 xoffset=6 yoffset=18 xadvance=37 page=1 chnl=0 +char id=359 x=165 y=343 width=22 height=38 xoffset=3 yoffset=24 xadvance=16 page=1 chnl=0 +char id=361 x=56 y=302 width=28 height=41 xoffset=5 yoffset=21 xadvance=30 page=1 chnl=0 +char id=363 x=923 y=302 width=40 height=39 xoffset=5 yoffset=23 xadvance=30 page=1 chnl=0 +char id=371 x=511 y=302 width=27 height=40 xoffset=5 yoffset=32 xadvance=30 page=1 chnl=0 +char id=380 x=538 y=302 width=32 height=40 xoffset=1 yoffset=21 xadvance=26 page=1 chnl=0 +char id=884 x=324 y=476 width=18 height=15 xoffset=6 yoffset=11 xadvance=11 page=1 chnl=0 +char id=885 x=1010 y=216 width=13 height=15 xoffset=0 yoffset=61 xadvance=11 page=1 chnl=0 +char id=890 x=653 y=476 width=12 height=10 xoffset=6 yoffset=64 xadvance=19 page=1 chnl=0 +char id=894 x=999 y=130 width=22 height=40 xoffset=4 yoffset=31 xadvance=16 page=1 chnl=0 +char id=900 x=342 y=476 width=15 height=15 xoffset=10 yoffset=11 xadvance=15 page=1 chnl=0 +char id=901 x=357 y=476 width=25 height=15 xoffset=7 yoffset=14 xadvance=19 page=1 chnl=0 +char id=914 x=267 y=87 width=41 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=915 x=308 y=87 width=47 height=43 xoffset=0 yoffset=18 xadvance=36 page=1 chnl=0 +char id=917 x=355 y=87 width=46 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=918 x=401 y=87 width=50 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=919 x=451 y=87 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=921 x=509 y=87 width=33 height=43 xoffset=1 yoffset=18 xadvance=19 page=1 chnl=0 +char id=922 x=542 y=87 width=53 height=43 xoffset=2 yoffset=18 xadvance=44 page=1 chnl=0 +char id=924 x=595 y=87 width=68 height=43 xoffset=0 yoffset=18 xadvance=55 page=1 chnl=0 +char id=926 x=663 y=87 width=44 height=43 xoffset=3 yoffset=18 xadvance=38 page=1 chnl=0 +char id=928 x=707 y=87 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=929 x=765 y=87 width=44 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=931 x=809 y=87 width=44 height=43 xoffset=1 yoffset=18 xadvance=38 page=1 chnl=0 +char id=932 x=853 y=87 width=44 height=43 xoffset=6 yoffset=18 xadvance=37 page=1 chnl=0 +char id=934 x=897 y=87 width=48 height=43 xoffset=5 yoffset=18 xadvance=45 page=1 chnl=0 +char id=935 x=945 y=87 width=57 height=43 xoffset=0 yoffset=18 xadvance=44 page=1 chnl=0 +char id=936 x=0 y=130 width=54 height=43 xoffset=7 yoffset=18 xadvance=50 page=1 chnl=0 +char id=953 x=176 y=417 width=14 height=30 xoffset=5 yoffset=32 xadvance=16 page=1 chnl=0 +char id=957 x=190 y=417 width=33 height=30 xoffset=4 yoffset=31 xadvance=29 page=1 chnl=0 +char id=970 x=54 y=130 width=36 height=43 xoffset=5 yoffset=19 xadvance=16 page=1 chnl=0 +char id=971 x=90 y=130 width=42 height=43 xoffset=4 yoffset=19 xadvance=31 page=1 chnl=0 +char id=982 x=952 y=343 width=47 height=35 xoffset=4 yoffset=27 xadvance=42 page=1 chnl=0 +char id=983 x=84 y=302 width=29 height=41 xoffset=5 yoffset=31 xadvance=32 page=1 chnl=0 +char id=984 x=132 y=130 width=43 height=43 xoffset=6 yoffset=18 xadvance=34 page=1 chnl=0 +char id=987 x=175 y=130 width=35 height=43 xoffset=1 yoffset=31 xadvance=25 page=1 chnl=0 +char id=988 x=210 y=130 width=49 height=43 xoffset=0 yoffset=18 xadvance=34 page=1 chnl=0 +char id=999 x=188 y=382 width=32 height=34 xoffset=1 yoffset=28 xadvance=27 page=1 chnl=0 +char id=1001 x=743 y=343 width=26 height=36 xoffset=1 yoffset=31 xadvance=20 page=1 chnl=0 +char id=1003 x=255 y=382 width=36 height=33 xoffset=1 yoffset=31 xadvance=36 page=1 chnl=0 +char id=1005 x=347 y=343 width=36 height=37 xoffset=3 yoffset=25 xadvance=24 page=1 chnl=0 +char id=1015 x=259 y=130 width=40 height=43 xoffset=1 yoffset=18 xadvance=35 page=1 chnl=0 +char id=1018 x=299 y=130 width=68 height=43 xoffset=0 yoffset=18 xadvance=55 page=1 chnl=0 +char id=1030 x=367 y=130 width=32 height=43 xoffset=1 yoffset=18 xadvance=20 page=1 chnl=0 +char id=1034 x=399 y=130 width=63 height=43 xoffset=1 yoffset=18 xadvance=61 page=1 chnl=0 +char id=1041 x=462 y=130 width=43 height=43 xoffset=1 yoffset=18 xadvance=35 page=1 chnl=0 +char id=1042 x=505 y=130 width=44 height=43 xoffset=1 yoffset=18 xadvance=38 page=1 chnl=0 +char id=1043 x=549 y=130 width=48 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=1045 x=597 y=130 width=47 height=43 xoffset=1 yoffset=18 xadvance=37 page=1 chnl=0 +char id=1046 x=644 y=130 width=65 height=43 xoffset=0 yoffset=18 xadvance=58 page=1 chnl=0 +char id=1048 x=709 y=130 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1050 x=767 y=130 width=47 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=1052 x=814 y=130 width=69 height=43 xoffset=1 yoffset=18 xadvance=55 page=1 chnl=0 +char id=1053 x=883 y=130 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1055 x=941 y=130 width=58 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1056 x=0 y=173 width=43 height=43 xoffset=1 yoffset=18 xadvance=35 page=1 chnl=0 +char id=1058 x=43 y=173 width=44 height=43 xoffset=6 yoffset=18 xadvance=37 page=1 chnl=0 +char id=1060 x=87 y=173 width=47 height=43 xoffset=5 yoffset=18 xadvance=46 page=1 chnl=0 +char id=1061 x=134 y=173 width=57 height=43 xoffset=0 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1063 x=191 y=173 width=47 height=43 xoffset=8 yoffset=18 xadvance=42 page=1 chnl=0 +char id=1064 x=238 y=173 width=75 height=43 xoffset=1 yoffset=18 xadvance=61 page=1 chnl=0 +char id=1066 x=313 y=173 width=41 height=43 xoffset=6 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1067 x=354 y=173 width=83 height=43 xoffset=1 yoffset=18 xadvance=53 page=1 chnl=0 +char id=1068 x=437 y=173 width=37 height=43 xoffset=1 yoffset=18 xadvance=35 page=1 chnl=0 +char id=1071 x=474 y=173 width=54 height=43 xoffset=0 yoffset=18 xadvance=39 page=1 chnl=0 +char id=1074 x=748 y=417 width=31 height=29 xoffset=1 yoffset=32 xadvance=28 page=1 chnl=0 +char id=1075 x=779 y=417 width=31 height=29 xoffset=1 yoffset=32 xadvance=23 page=1 chnl=0 +char id=1076 x=383 y=343 width=41 height=37 xoffset=-1 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1078 x=223 y=417 width=47 height=30 xoffset=0 yoffset=31 xadvance=40 page=1 chnl=0 +char id=1080 x=810 y=417 width=40 height=29 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1082 x=270 y=417 width=32 height=30 xoffset=1 yoffset=31 xadvance=30 page=1 chnl=0 +char id=1083 x=302 y=417 width=40 height=30 xoffset=0 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1084 x=342 y=417 width=48 height=30 xoffset=1 yoffset=32 xadvance=38 page=1 chnl=0 +char id=1085 x=850 y=417 width=40 height=29 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1087 x=890 y=417 width=40 height=29 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1090 x=930 y=417 width=30 height=29 xoffset=4 yoffset=32 xadvance=25 page=1 chnl=0 +char id=1091 x=528 y=173 width=41 height=43 xoffset=-1 yoffset=32 xadvance=28 page=1 chnl=0 +char id=1093 x=960 y=417 width=33 height=29 xoffset=1 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1094 x=424 y=343 width=40 height=37 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1095 x=0 y=447 width=36 height=29 xoffset=5 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1096 x=36 y=447 width=56 height=29 xoffset=1 yoffset=32 xadvance=46 page=1 chnl=0 +char id=1097 x=464 y=343 width=56 height=37 xoffset=1 yoffset=32 xadvance=46 page=1 chnl=0 +char id=1098 x=993 y=417 width=29 height=29 xoffset=4 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1099 x=92 y=447 width=48 height=29 xoffset=1 yoffset=32 xadvance=38 page=1 chnl=0 +char id=1100 x=140 y=447 width=27 height=29 xoffset=1 yoffset=32 xadvance=26 page=1 chnl=0 +char id=1103 x=167 y=447 width=40 height=29 xoffset=0 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1105 x=569 y=173 width=42 height=43 xoffset=5 yoffset=19 xadvance=26 page=1 chnl=0 +char id=1109 x=999 y=343 width=24 height=31 xoffset=1 yoffset=31 xadvance=20 page=1 chnl=0 +char id=1113 x=390 y=417 width=44 height=30 xoffset=0 yoffset=32 xadvance=41 page=1 chnl=0 +char id=1114 x=207 y=447 width=45 height=29 xoffset=1 yoffset=32 xadvance=44 page=1 chnl=0 +char id=1119 x=187 y=343 width=40 height=38 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1121 x=401 y=382 width=42 height=31 xoffset=3 yoffset=31 xadvance=41 page=1 chnl=0 +char id=1122 x=611 y=173 width=42 height=43 xoffset=5 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1125 x=443 y=382 width=48 height=31 xoffset=0 yoffset=31 xadvance=39 page=1 chnl=0 +char id=1127 x=252 y=447 width=41 height=29 xoffset=0 yoffset=32 xadvance=39 page=1 chnl=0 +char id=1129 x=293 y=447 width=57 height=29 xoffset=0 yoffset=32 xadvance=55 page=1 chnl=0 +char id=1130 x=653 y=173 width=60 height=43 xoffset=0 yoffset=18 xadvance=58 page=1 chnl=0 +char id=1131 x=350 y=447 width=42 height=29 xoffset=0 yoffset=32 xadvance=40 page=1 chnl=0 +char id=1132 x=713 y=173 width=82 height=43 xoffset=0 yoffset=18 xadvance=80 page=1 chnl=0 +char id=1133 x=392 y=447 width=58 height=29 xoffset=0 yoffset=32 xadvance=56 page=1 chnl=0 +char id=1136 x=795 y=173 width=60 height=43 xoffset=7 yoffset=18 xadvance=54 page=1 chnl=0 +char id=1139 x=491 y=382 width=32 height=31 xoffset=3 yoffset=31 xadvance=29 page=1 chnl=0 +char id=1141 x=523 y=382 width=39 height=31 xoffset=5 yoffset=31 xadvance=33 page=1 chnl=0 +char id=1147 x=0 y=382 width=39 height=35 xoffset=3 yoffset=29 xadvance=37 page=1 chnl=0 +char id=1151 x=646 y=259 width=45 height=42 xoffset=3 yoffset=20 xadvance=41 page=1 chnl=0 +char id=1153 x=113 y=302 width=29 height=41 xoffset=3 yoffset=31 xadvance=25 page=1 chnl=0 +char id=1154 x=881 y=447 width=18 height=22 xoffset=-1 yoffset=53 xadvance=13 page=1 chnl=0 +char id=1155 x=665 y=476 width=42 height=10 xoffset=-15 yoffset=19 xadvance=-2 page=1 chnl=0 +char id=1156 x=487 y=476 width=56 height=12 xoffset=-23 yoffset=17 xadvance=-2 page=1 chnl=0 +char id=1157 x=543 y=476 width=28 height=12 xoffset=-9 yoffset=17 xadvance=-2 page=1 chnl=0 +char id=1158 x=571 y=476 width=28 height=12 xoffset=-9 yoffset=17 xadvance=-2 page=1 chnl=0 +char id=1159 x=382 y=476 width=68 height=14 xoffset=-23 yoffset=7 xadvance=-2 page=1 chnl=0 +char id=1164 x=855 y=173 width=37 height=43 xoffset=0 yoffset=18 xadvance=34 page=1 chnl=0 +char id=1165 x=450 y=447 width=28 height=29 xoffset=0 yoffset=32 xadvance=26 page=1 chnl=0 +char id=1166 x=892 y=173 width=44 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=1167 x=0 y=0 width=38 height=44 xoffset=-2 yoffset=31 xadvance=31 page=1 chnl=0 +char id=1169 x=39 y=382 width=35 height=35 xoffset=1 yoffset=26 xadvance=23 page=1 chnl=0 +char id=1170 x=936 y=173 width=47 height=43 xoffset=0 yoffset=18 xadvance=36 page=1 chnl=0 +char id=1171 x=478 y=447 width=31 height=29 xoffset=1 yoffset=32 xadvance=23 page=1 chnl=0 +char id=1173 x=983 y=173 width=29 height=43 xoffset=1 yoffset=32 xadvance=28 page=1 chnl=0 +char id=1175 x=227 y=343 width=44 height=38 xoffset=1 yoffset=31 xadvance=42 page=1 chnl=0 +char id=1177 x=142 y=302 width=27 height=41 xoffset=1 yoffset=31 xadvance=24 page=1 chnl=0 +char id=1179 x=271 y=343 width=32 height=38 xoffset=1 yoffset=31 xadvance=31 page=1 chnl=0 +char id=1180 x=0 y=216 width=50 height=43 xoffset=1 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1181 x=434 y=417 width=34 height=30 xoffset=1 yoffset=31 xadvance=32 page=1 chnl=0 +char id=1182 x=50 y=216 width=47 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=1183 x=468 y=417 width=32 height=30 xoffset=1 yoffset=31 xadvance=30 page=1 chnl=0 +char id=1184 x=97 y=216 width=51 height=43 xoffset=6 yoffset=18 xadvance=50 page=1 chnl=0 +char id=1185 x=500 y=417 width=34 height=30 xoffset=4 yoffset=31 xadvance=35 page=1 chnl=0 +char id=1187 x=520 y=343 width=40 height=37 xoffset=1 yoffset=32 xadvance=32 page=1 chnl=0 +char id=1188 x=148 y=216 width=70 height=43 xoffset=1 yoffset=18 xadvance=58 page=1 chnl=0 +char id=1189 x=509 y=447 width=48 height=29 xoffset=1 yoffset=32 xadvance=40 page=1 chnl=0 +char id=1191 x=218 y=216 width=45 height=43 xoffset=1 yoffset=32 xadvance=44 page=1 chnl=0 +char id=1193 x=562 y=382 width=32 height=31 xoffset=3 yoffset=31 xadvance=31 page=1 chnl=0 +char id=1195 x=169 y=302 width=29 height=41 xoffset=3 yoffset=31 xadvance=25 page=1 chnl=0 +char id=1197 x=769 y=343 width=32 height=36 xoffset=4 yoffset=32 xadvance=27 page=1 chnl=0 +char id=1198 x=263 y=216 width=51 height=43 xoffset=8 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1199 x=314 y=216 width=40 height=43 xoffset=5 yoffset=32 xadvance=34 page=1 chnl=0 +char id=1200 x=354 y=216 width=51 height=43 xoffset=8 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1201 x=405 y=216 width=41 height=43 xoffset=4 yoffset=32 xadvance=34 page=1 chnl=0 +char id=1203 x=560 y=343 width=32 height=37 xoffset=1 yoffset=32 xadvance=31 page=1 chnl=0 +char id=1205 x=801 y=343 width=49 height=36 xoffset=4 yoffset=32 xadvance=42 page=1 chnl=0 +char id=1207 x=592 y=343 width=36 height=37 xoffset=5 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1208 x=446 y=216 width=51 height=43 xoffset=8 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1209 x=557 y=447 width=37 height=29 xoffset=5 yoffset=32 xadvance=33 page=1 chnl=0 +char id=1210 x=497 y=216 width=42 height=43 xoffset=1 yoffset=18 xadvance=42 page=1 chnl=0 +char id=1211 x=38 y=0 width=32 height=44 xoffset=0 yoffset=17 xadvance=31 page=1 chnl=0 +char id=1213 x=291 y=382 width=34 height=33 xoffset=5 yoffset=29 xadvance=33 page=1 chnl=0 +char id=1215 x=198 y=302 width=34 height=41 xoffset=5 yoffset=29 xadvance=33 page=1 chnl=0 +char id=1216 x=539 y=216 width=33 height=43 xoffset=1 yoffset=18 xadvance=19 page=1 chnl=0 +char id=1218 x=70 y=0 width=47 height=44 xoffset=0 yoffset=17 xadvance=40 page=1 chnl=0 +char id=1220 x=117 y=0 width=35 height=44 xoffset=1 yoffset=31 xadvance=27 page=1 chnl=0 +char id=1222 x=963 y=302 width=40 height=39 xoffset=0 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1224 x=572 y=216 width=38 height=43 xoffset=1 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1226 x=570 y=302 width=43 height=40 xoffset=1 yoffset=31 xadvance=33 page=1 chnl=0 +char id=1228 x=850 y=343 width=36 height=36 xoffset=5 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1230 x=0 y=343 width=48 height=39 xoffset=1 yoffset=32 xadvance=38 page=1 chnl=0 +char id=1231 x=610 y=216 width=47 height=43 xoffset=1 yoffset=18 xadvance=20 page=1 chnl=0 +char id=1235 x=232 y=302 width=42 height=41 xoffset=3 yoffset=21 xadvance=26 page=1 chnl=0 +char id=1236 x=657 y=216 width=64 height=43 xoffset=0 yoffset=18 xadvance=55 page=1 chnl=0 +char id=1237 x=594 y=382 width=42 height=31 xoffset=2 yoffset=31 xadvance=38 page=1 chnl=0 +char id=1241 x=636 y=382 width=28 height=31 xoffset=0 yoffset=31 xadvance=26 page=1 chnl=0 +char id=1243 x=274 y=302 width=46 height=41 xoffset=1 yoffset=21 xadvance=26 page=1 chnl=0 +char id=1245 x=48 y=343 width=47 height=39 xoffset=0 yoffset=22 xadvance=40 page=1 chnl=0 +char id=1247 x=320 y=302 width=44 height=41 xoffset=1 yoffset=21 xadvance=24 page=1 chnl=0 +char id=1248 x=152 y=0 width=41 height=44 xoffset=2 yoffset=18 xadvance=32 page=1 chnl=0 +char id=1249 x=534 y=417 width=26 height=30 xoffset=2 yoffset=32 xadvance=21 page=1 chnl=0 +char id=1251 x=303 y=343 width=44 height=38 xoffset=1 yoffset=23 xadvance=32 page=1 chnl=0 +char id=1253 x=613 y=302 width=44 height=40 xoffset=1 yoffset=21 xadvance=32 page=1 chnl=0 +char id=1255 x=364 y=302 width=43 height=41 xoffset=5 yoffset=21 xadvance=29 page=1 chnl=0 +char id=1257 x=664 y=382 width=32 height=31 xoffset=3 yoffset=31 xadvance=29 page=1 chnl=0 +char id=1259 x=657 y=302 width=43 height=40 xoffset=3 yoffset=22 xadvance=29 page=1 chnl=0 +char id=1261 x=407 y=302 width=42 height=41 xoffset=1 yoffset=21 xadvance=26 page=1 chnl=0 +char id=1269 x=700 y=302 width=42 height=40 xoffset=5 yoffset=21 xadvance=30 page=1 chnl=0 +char id=1271 x=886 y=343 width=31 height=36 xoffset=1 yoffset=32 xadvance=23 page=1 chnl=0 +char id=1273 x=742 y=302 width=48 height=40 xoffset=1 yoffset=21 xadvance=38 page=1 chnl=0 +char id=1275 x=193 y=0 width=31 height=44 xoffset=1 yoffset=32 xadvance=23 page=1 chnl=0 +char id=1277 x=721 y=216 width=37 height=43 xoffset=0 yoffset=32 xadvance=26 page=1 chnl=0 +char id=1278 x=758 y=216 width=57 height=43 xoffset=0 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1279 x=594 y=447 width=33 height=29 xoffset=0 yoffset=32 xadvance=30 page=1 chnl=0 +char id=1280 x=815 y=216 width=47 height=43 xoffset=2 yoffset=18 xadvance=34 page=1 chnl=0 +char id=1282 x=862 y=216 width=61 height=43 xoffset=2 yoffset=18 xadvance=56 page=1 chnl=0 +char id=1287 x=95 y=343 width=26 height=39 xoffset=4 yoffset=31 xadvance=28 page=1 chnl=0 +char id=1288 x=224 y=0 width=65 height=44 xoffset=2 yoffset=18 xadvance=60 page=1 chnl=0 +char id=1290 x=289 y=0 width=68 height=44 xoffset=1 yoffset=18 xadvance=60 page=1 chnl=0 +char id=1291 x=325 y=382 width=45 height=33 xoffset=0 yoffset=31 xadvance=42 page=1 chnl=0 +char id=1293 x=696 y=382 width=28 height=31 xoffset=3 yoffset=31 xadvance=26 page=1 chnl=0 +char id=1294 x=357 y=0 width=47 height=44 xoffset=6 yoffset=18 xadvance=44 page=1 chnl=0 +char id=1295 x=370 y=382 width=31 height=33 xoffset=4 yoffset=31 xadvance=30 page=1 chnl=0 +char id=1297 x=724 y=382 width=29 height=31 xoffset=2 yoffset=31 xadvance=24 page=1 chnl=0 +char id=1299 x=923 y=216 width=40 height=43 xoffset=0 yoffset=32 xadvance=29 page=1 chnl=0 +char id=1300 x=404 y=0 width=73 height=44 xoffset=1 yoffset=18 xadvance=59 page=1 chnl=0 +char id=1301 x=560 y=417 width=44 height=30 xoffset=0 yoffset=32 xadvance=39 page=1 chnl=0 +char id=1302 x=0 y=259 width=64 height=43 xoffset=0 yoffset=18 xadvance=51 page=1 chnl=0 +char id=1303 x=477 y=0 width=51 height=44 xoffset=-2 yoffset=31 xadvance=43 page=1 chnl=0 +char id=1304 x=64 y=259 width=66 height=43 xoffset=1 yoffset=18 xadvance=60 page=1 chnl=0 +char id=1305 x=753 y=382 width=51 height=31 xoffset=0 yoffset=31 xadvance=46 page=1 chnl=0 +char id=1307 x=528 y=0 width=30 height=44 xoffset=3 yoffset=31 xadvance=30 page=1 chnl=0 +char id=1308 x=558 y=0 width=67 height=44 xoffset=7 yoffset=18 xadvance=59 page=1 chnl=0 +char id=1309 x=604 y=417 width=48 height=30 xoffset=5 yoffset=32 xadvance=42 page=1 chnl=0 +char id=1310 x=963 y=216 width=47 height=43 xoffset=1 yoffset=18 xadvance=41 page=1 chnl=0 +char id=1311 x=652 y=417 width=32 height=30 xoffset=1 yoffset=31 xadvance=30 page=1 chnl=0 +char id=1313 x=130 y=259 width=46 height=43 xoffset=0 yoffset=32 xadvance=43 page=1 chnl=0 +char id=1315 x=176 y=259 width=47 height=43 xoffset=1 yoffset=32 xadvance=45 page=1 chnl=0 +char id=8210 x=817 y=476 width=35 height=5 xoffset=2 yoffset=44 xadvance=30 page=1 chnl=0 +char id=8211 x=817 y=476 width=35 height=5 xoffset=2 yoffset=44 xadvance=30 page=1 chnl=0 +char id=8212 x=852 y=476 width=67 height=5 xoffset=2 yoffset=44 xadvance=62 page=1 chnl=0 +char id=8213 x=852 y=476 width=67 height=5 xoffset=2 yoffset=44 xadvance=62 page=1 chnl=0 +char id=8214 x=1004 y=44 width=18 height=41 xoffset=4 yoffset=25 xadvance=17 page=1 chnl=0 +char id=8215 x=599 y=476 width=24 height=11 xoffset=1 yoffset=63 xadvance=29 page=1 chnl=0 +char id=8216 x=1005 y=447 width=12 height=17 xoffset=9 yoffset=17 xadvance=14 page=1 chnl=0 +char id=8217 x=183 y=476 width=14 height=17 xoffset=9 yoffset=17 xadvance=14 page=1 chnl=0 +char id=8219 x=197 y=476 width=14 height=17 xoffset=9 yoffset=17 xadvance=14 page=1 chnl=0 +char id=8220 x=211 y=476 width=24 height=17 xoffset=9 yoffset=17 xadvance=26 page=1 chnl=0 +char id=8221 x=235 y=476 width=26 height=17 xoffset=9 yoffset=17 xadvance=26 page=1 chnl=0 +char id=8222 x=287 y=476 width=22 height=16 xoffset=3 yoffset=54 xadvance=26 page=1 chnl=0 +char id=8223 x=261 y=476 width=26 height=17 xoffset=9 yoffset=17 xadvance=26 page=1 chnl=0 +char id=8226 x=143 y=476 width=20 height=18 xoffset=6 yoffset=31 xadvance=20 page=1 chnl=0 +char id=8230 x=707 y=476 width=49 height=8 xoffset=8 yoffset=54 xadvance=62 page=1 chnl=0 +char id=8242 x=0 y=476 width=22 height=19 xoffset=7 yoffset=13 xadvance=14 page=1 chnl=0 +char id=8243 x=22 y=476 width=36 height=19 xoffset=7 yoffset=13 xadvance=24 page=1 chnl=0 +char id=8244 x=58 y=476 width=47 height=19 xoffset=7 yoffset=13 xadvance=37 page=1 chnl=0 +char id=8249 x=814 y=447 width=20 height=25 xoffset=3 yoffset=34 xadvance=14 page=1 chnl=0 +char id=8250 x=834 y=447 width=18 height=25 xoffset=1 yoffset=34 xadvance=14 page=1 chnl=0 +char id=8254 x=982 y=476 width=39 height=4 xoffset=6 yoffset=22 xadvance=30 page=1 chnl=0 +char id=8355 x=223 y=259 width=49 height=43 xoffset=0 yoffset=18 xadvance=34 page=1 chnl=0 +char id=8358 x=625 y=0 width=59 height=44 xoffset=0 yoffset=18 xadvance=44 page=1 chnl=0 +char id=8359 x=684 y=0 width=63 height=44 xoffset=0 yoffset=18 xadvance=58 page=1 chnl=0 +char id=8360 x=747 y=0 width=65 height=44 xoffset=1 yoffset=18 xadvance=64 page=1 chnl=0 +char id=8361 x=812 y=0 width=61 height=44 xoffset=4 yoffset=18 xadvance=50 page=1 chnl=0 +char id=8365 x=272 y=259 width=53 height=43 xoffset=2 yoffset=18 xadvance=44 page=1 chnl=0 +char id=8366 x=325 y=259 width=44 height=43 xoffset=6 yoffset=18 xadvance=37 page=1 chnl=0 +char id=8369 x=369 y=259 width=48 height=43 xoffset=1 yoffset=18 xadvance=36 page=1 chnl=0 +char id=8371 x=873 y=0 width=46 height=44 xoffset=0 yoffset=17 xadvance=44 page=1 chnl=0 +char id=11360 x=417 y=259 width=42 height=43 xoffset=0 yoffset=18 xadvance=37 page=1 chnl=0 +char id=11361 x=919 y=0 width=27 height=44 xoffset=1 yoffset=17 xadvance=17 page=1 chnl=0 +char id=11362 x=459 y=259 width=42 height=43 xoffset=1 yoffset=18 xadvance=38 page=1 chnl=0 +char id=11363 x=501 y=259 width=44 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=11365 x=628 y=343 width=35 height=37 xoffset=3 yoffset=27 xadvance=27 page=1 chnl=0 +char id=11366 x=691 y=259 width=28 height=42 xoffset=0 yoffset=24 xadvance=17 page=1 chnl=0 +char id=11372 x=663 y=343 width=32 height=37 xoffset=1 yoffset=32 xadvance=26 page=1 chnl=0 +char id=11377 x=804 y=382 width=43 height=31 xoffset=6 yoffset=31 xadvance=40 page=1 chnl=0 +char id=11379 x=847 y=382 width=58 height=31 xoffset=6 yoffset=31 xadvance=54 page=1 chnl=0 +char id=11380 x=74 y=382 width=35 height=35 xoffset=4 yoffset=27 xadvance=30 page=1 chnl=0 +char id=11381 x=545 y=259 width=38 height=43 xoffset=1 yoffset=18 xadvance=34 page=1 chnl=0 +char id=11382 x=627 y=447 width=26 height=29 xoffset=0 yoffset=32 xadvance=23 page=1 chnl=0 +char id=11383 x=905 y=382 width=38 height=31 xoffset=4 yoffset=31 xadvance=39 page=1 chnl=0 +kernings count=27010 +kerning first=107 second=100 amount=-3 +kerning first=8216 second=257 amount=-3 +kerning first=85 second=46 amount=-5 +kerning first=199 second=230 amount=-2 +kerning first=369 second=367 amount=-1 +kerning first=222 second=327 amount=-2 +kerning first=338 second=346 amount=-2 +kerning first=8220 second=380 amount=-1 +kerning first=280 second=65 amount=-2 +kerning first=354 second=66 amount=-1 +kerning first=200 second=67 amount=-1 +kerning first=208 second=68 amount=-2 +kerning first=45 second=69 amount=-5 +kerning first=352 second=70 amount=-3 +kerning first=370 second=71 amount=-1 +kerning first=346 second=72 amount=-3 +kerning first=67 second=73 amount=-3 +kerning first=356 second=74 amount=-4 +kerning first=374 second=75 amount=-1 +kerning first=198 second=76 amount=-2 +kerning first=350 second=77 amount=-3 +kerning first=336 second=78 amount=-2 +kerning first=304 second=79 amount=-2 +kerning first=262 second=80 amount=-3 +kerning first=370 second=81 amount=-1 +kerning first=81 second=82 amount=-2 +kerning first=290 second=83 amount=-2 +kerning first=83 second=84 amount=-3 +kerning first=8222 second=85 amount=-3 +kerning first=336 second=86 amount=-2 +kerning first=274 second=87 amount=-1 +kerning first=286 second=89 amount=-3 +kerning first=286 second=90 amount=-2 +kerning first=274 second=97 amount=-1 +kerning first=366 second=99 amount=-2 +kerning first=382 second=100 amount=-1 +kerning first=220 second=101 amount=-2 +kerning first=83 second=102 amount=-3 +kerning first=246 second=103 amount=-2 +kerning first=194 second=104 amount=-2 +kerning first=354 second=105 amount=-2 +kerning first=113 second=108 amount=-2 +kerning first=316 second=109 amount=-1 +kerning first=364 second=110 amount=-2 +kerning first=350 second=111 amount=-1 +kerning first=75 second=112 amount=-1 +kerning first=260 second=113 amount=-1 +kerning first=352 second=114 amount=-2 +kerning first=376 second=115 amount=-3 +kerning first=77 second=119 amount=-2 +kerning first=346 second=120 amount=-3 +kerning first=382 second=121 amount=-2 +kerning first=362 second=122 amount=-3 +kerning first=220 second=379 amount=-1 +kerning first=83 second=275 amount=-1 +kerning first=346 second=187 amount=-1 +kerning first=87 second=192 amount=-6 +kerning first=282 second=193 amount=-2 +kerning first=282 second=194 amount=-2 +kerning first=45 second=195 amount=-4 +kerning first=202 second=196 amount=-2 +kerning first=81 second=197 amount=-4 +kerning first=339 second=365 amount=-2 +kerning first=194 second=199 amount=-3 +kerning first=332 second=200 amount=-2 +kerning first=79 second=201 amount=-2 +kerning first=216 second=202 amount=-2 +kerning first=212 second=203 amount=-2 +kerning first=290 second=204 amount=-1 +kerning first=336 second=205 amount=-2 +kerning first=374 second=206 amount=-1 +kerning first=334 second=207 amount=-2 +kerning first=79 second=209 amount=-2 +kerning first=258 second=210 amount=-3 +kerning first=362 second=211 amount=-1 +kerning first=362 second=212 amount=-1 +kerning first=198 second=213 amount=-1 +kerning first=262 second=214 amount=-3 +kerning first=354 second=216 amount=-3 +kerning first=208 second=217 amount=-1 +kerning first=288 second=218 amount=-1 +kerning first=8250 second=219 amount=-4 +kerning first=350 second=220 amount=-3 +kerning first=350 second=221 amount=-3 +kerning first=8216 second=223 amount=-1 +kerning first=250 second=224 amount=-1 +kerning first=220 second=225 amount=-3 +kerning first=366 second=226 amount=-3 +kerning first=111 second=227 amount=-1 +kerning first=89 second=228 amount=-4 +kerning first=304 second=229 amount=-2 +kerning first=364 second=231 amount=-2 +kerning first=250 second=232 amount=-1 +kerning first=366 second=233 amount=-2 +kerning first=87 second=235 amount=-3 +kerning first=87 second=237 amount=-2 +kerning first=218 second=240 amount=-2 +kerning first=8220 second=241 amount=-1 +kerning first=75 second=242 amount=-2 +kerning first=250 second=244 amount=-1 +kerning first=67 second=245 amount=-2 +kerning first=73 second=246 amount=-2 +kerning first=69 second=249 amount=-2 +kerning first=378 second=250 amount=-2 +kerning first=368 second=251 amount=-1 +kerning first=8218 second=252 amount=-1 +kerning first=370 second=253 amount=-1 +kerning first=113 second=254 amount=-2 +kerning first=370 second=255 amount=-1 +kerning first=278 second=256 amount=-2 +kerning first=107 second=257 amount=-2 +kerning first=232 second=259 amount=-2 +kerning first=352 second=260 amount=-4 +kerning first=324 second=261 amount=-1 +kerning first=65 second=262 amount=-3 +kerning first=119 second=263 amount=-3 +kerning first=204 second=264 amount=-2 +kerning first=356 second=266 amount=-3 +kerning first=310 second=267 amount=-2 +kerning first=85 second=268 amount=-1 +kerning first=192 second=269 amount=-1 +kerning first=8250 second=270 amount=-5 +kerning first=226 second=271 amount=-1 +kerning first=107 second=273 amount=-3 +kerning first=67 second=275 amount=-2 +kerning first=117 second=277 amount=-1 +kerning first=79 second=278 amount=-2 +kerning first=105 second=279 amount=-1 +kerning first=198 second=280 amount=-2 +kerning first=204 second=281 amount=-2 +kerning first=352 second=282 amount=-3 +kerning first=264 second=284 amount=-3 +kerning first=67 second=286 amount=-3 +kerning first=8216 second=287 amount=-4 +kerning first=65 second=288 amount=-3 +kerning first=364 second=290 amount=-1 +kerning first=45 second=291 amount=-3 +kerning first=207 second=249 amount=-1 +kerning first=286 second=296 amount=-1 +kerning first=212 second=298 amount=-2 +kerning first=85 second=223 amount=-2 +kerning first=280 second=302 amount=-2 +kerning first=111 second=303 amount=-1 +kerning first=268 second=304 amount=-3 +kerning first=45 second=307 amount=-1 +kerning first=196 second=311 amount=-2 +kerning first=336 second=313 amount=-2 +kerning first=282 second=314 amount=-1 +kerning first=286 second=315 amount=-1 +kerning first=278 second=317 amount=-2 +kerning first=246 second=318 amount=-2 +kerning first=304 second=8249 amount=-4 +kerning first=352 second=323 amount=-3 +kerning first=220 second=324 amount=-2 +kerning first=71 second=325 amount=-1 +kerning first=8216 second=326 amount=-1 +kerning first=71 second=327 amount=-1 +kerning first=362 second=328 amount=-2 +kerning first=278 second=330 amount=-2 +kerning first=248 second=331 amount=-1 +kerning first=202 second=332 amount=-1 +kerning first=220 second=333 amount=-2 +kerning first=256 second=334 amount=-3 +kerning first=368 second=335 amount=-2 +kerning first=274 second=336 amount=-1 +kerning first=376 second=338 amount=-3 +kerning first=380 second=339 amount=-1 +kerning first=242 second=289 amount=-2 +kerning first=278 second=344 amount=-2 +kerning first=346 second=345 amount=-2 +kerning first=350 second=346 amount=-1 +kerning first=354 second=350 amount=-3 +kerning first=226 second=351 amount=-1 +kerning first=262 second=352 amount=-3 +kerning first=107 second=353 amount=-2 +kerning first=214 second=354 amount=-2 +kerning first=83 second=355 amount=-1 +kerning first=8220 second=356 amount=-1 +kerning first=45 second=357 amount=-1 +kerning first=278 second=289 amount=-3 +kerning first=236 second=361 amount=-1 +kerning first=334 second=362 amount=-1 +kerning first=350 second=364 amount=-3 +kerning first=97 second=365 amount=-1 +kerning first=338 second=366 amount=-2 +kerning first=362 second=367 amount=-1 +kerning first=262 second=368 amount=-2 +kerning first=368 second=369 amount=-1 +kerning first=332 second=370 amount=-1 +kerning first=74 second=268 amount=-2 +kerning first=310 second=374 amount=-2 +kerning first=105 second=375 amount=-3 +kerning first=370 second=377 amount=-1 +kerning first=210 second=378 amount=-2 +kerning first=374 second=379 amount=-3 +kerning first=288 second=380 amount=-1 +kerning first=374 second=381 amount=-3 +kerning first=240 second=382 amount=-2 +kerning first=244 second=237 amount=-1 +kerning first=208 second=379 amount=-2 +kerning first=272 second=218 amount=-1 +kerning first=350 second=289 amount=-3 +kerning first=217 second=244 amount=-2 +kerning first=208 second=237 amount=-1 +kerning first=377 second=282 amount=-1 +kerning first=253 second=244 amount=-3 +kerning first=225 second=263 amount=-1 +kerning first=200 second=218 amount=-2 +kerning first=289 second=244 amount=-2 +kerning first=87 second=199 amount=-3 +kerning first=261 second=263 amount=-1 +kerning first=103 second=237 amount=-2 +kerning first=112 second=371 amount=-1 +kerning first=223 second=380 amount=-2 +kerning first=67 second=237 amount=-1 +kerning first=1038 second=1117 amount=-4 +kerning first=75 second=8249 amount=-4 +kerning first=347 second=353 amount=-3 +kerning first=68 second=225 amount=-1 +kerning first=346 second=365 amount=-1 +kerning first=1027 second=1060 amount=-1 +kerning first=219 second=228 amount=-3 +kerning first=195 second=334 amount=-3 +kerning first=364 second=379 amount=-1 +kerning first=104 second=225 amount=-1 +kerning first=84 second=263 amount=-3 +kerning first=310 second=365 amount=-3 +kerning first=279 second=361 amount=-2 +kerning first=350 second=324 amount=-1 +kerning first=120 second=263 amount=-2 +kerning first=274 second=365 amount=-2 +kerning first=266 second=346 amount=-3 +kerning first=1043 second=1098 amount=-1 +kerning first=121 second=251 amount=-1 +kerning first=65 second=289 amount=-3 +kerning first=85 second=251 amount=-1 +kerning first=298 second=275 amount=-2 +kerning first=194 second=346 amount=-3 +kerning first=198 second=270 amount=-2 +kerning first=101 second=289 amount=-3 +kerning first=226 second=251 amount=-1 +kerning first=81 second=327 amount=-2 +kerning first=1063 second=1060 amount=-1 +kerning first=1051 second=1117 amount=-1 +kerning first=1071 second=1079 amount=-1 +kerning first=1079 second=1098 amount=-1 +kerning first=311 second=353 amount=-2 +kerning first=207 second=277 amount=-2 +kerning first=356 second=72 amount=-1 +kerning first=197 second=254 amount=-2 +kerning first=194 second=374 amount=-6 +kerning first=275 second=121 amount=-2 +kerning first=298 second=251 amount=-2 +kerning first=115 second=351 amount=-3 +kerning first=379 second=202 amount=-1 +kerning first=233 second=254 amount=-2 +kerning first=262 second=251 amount=-2 +kerning first=279 second=277 amount=-1 +kerning first=256 second=351 amount=-2 +kerning first=201 second=206 amount=-2 +kerning first=269 second=254 amount=-2 +kerning first=370 second=251 amount=-1 +kerning first=313 second=69 amount=-2 +kerning first=339 second=112 amount=-1 +kerning first=1105 second=1103 amount=-2 +kerning first=98 second=121 amount=-3 +kerning first=1045 second=1074 amount=-1 +kerning first=70 second=100 amount=-1 +kerning first=67 second=209 amount=-3 +kerning first=102 second=277 amount=-1 +kerning first=102 second=230 amount=-2 +kerning first=66 second=277 amount=-1 +kerning first=365 second=367 amount=-1 +kerning first=101 second=261 amount=-2 +kerning first=257 second=367 amount=-1 +kerning first=192 second=199 amount=-3 +kerning first=1024 second=1096 amount=-1 +kerning first=374 second=114 amount=-1 +kerning first=201 second=117 amount=-2 +kerning first=381 second=206 amount=-1 +kerning first=82 second=83 amount=-3 +kerning first=206 second=261 amount=-2 +kerning first=221 second=79 amount=-3 +kerning first=264 second=199 amount=-3 +kerning first=242 second=261 amount=-1 +kerning first=221 second=367 amount=-2 +kerning first=71 second=72 amount=-1 +kerning first=286 second=76 amount=-1 +kerning first=73 second=336 amount=-2 +kerning first=187 second=83 amount=-3 +kerning first=328 second=351 amount=-1 +kerning first=381 second=117 amount=-3 +kerning first=212 second=72 amount=-2 +kerning first=338 second=374 amount=-1 +kerning first=1057 second=1050 amount=-1 +kerning first=230 second=114 amount=-1 +kerning first=116 second=367 amount=-1 +kerning first=8222 second=356 amount=-6 +kerning first=214 second=76 amount=-2 +kerning first=339 second=255 amount=-2 +kerning first=284 second=72 amount=-1 +kerning first=266 second=374 amount=-1 +kerning first=347 second=121 amount=-3 +kerning first=364 second=351 amount=-2 +kerning first=211 second=344 amount=-2 +kerning first=311 second=121 amount=-1 +kerning first=376 second=193 amount=-6 +kerning first=317 second=318 amount=-2 +kerning first=287 second=240 amount=-2 +kerning first=266 second=86 amount=-1 +kerning first=365 second=107 amount=-2 +kerning first=1051 second=1089 amount=-1 +kerning first=323 second=240 amount=-2 +kerning first=8249 second=89 amount=-3 +kerning first=325 second=216 amount=-2 +kerning first=194 second=86 amount=-6 +kerning first=1052 second=1080 amount=-1 +kerning first=1027 second=1088 amount=-2 +kerning first=192 second=171 amount=-4 +kerning first=251 second=240 amount=-1 +kerning first=1063 second=1088 amount=-1 +kerning first=278 second=261 amount=-1 +kerning first=76 second=216 amount=-1 +kerning first=335 second=382 amount=-2 +kerning first=314 second=261 amount=-2 +kerning first=113 second=46 amount=-2 +kerning first=371 second=382 amount=-1 +kerning first=382 second=337 amount=-1 +kerning first=350 second=261 amount=-2 +kerning first=371 second=223 amount=-1 +kerning first=338 second=86 amount=-1 +kerning first=217 second=216 amount=-1 +kerning first=257 second=107 amount=-1 +kerning first=310 second=337 amount=-2 +kerning first=8217 second=380 amount=-1 +kerning first=280 second=209 amount=-2 +kerning first=1006 second=995 amount=-1 +kerning first=1006 second=996 amount=-1 +kerning first=1006 second=1005 amount=-1 +kerning first=1006 second=1006 amount=-1 +kerning first=208 second=209 amount=-2 +kerning first=81 second=221 amount=-2 +kerning first=1054 second=1024 amount=-1 +kerning first=1054 second=1025 amount=-1 +kerning first=1054 second=1030 amount=-1 +kerning first=1054 second=1031 amount=-1 +kerning first=1040 second=1033 amount=-1 +kerning first=1054 second=1034 amount=-1 +kerning first=1054 second=1036 amount=-1 +kerning first=1054 second=1037 amount=-1 +kerning first=1036 second=1038 amount=-3 +kerning first=1054 second=1039 amount=-1 +kerning first=1038 second=1040 amount=-6 +kerning first=228 second=171 amount=-2 +kerning first=1054 second=1042 amount=-1 +kerning first=199 second=202 amount=-3 +kerning first=1054 second=1045 amount=-1 +kerning first=1040 second=1047 amount=-2 +kerning first=1054 second=1048 amount=-1 +kerning first=1054 second=1049 amount=-1 +kerning first=1040 second=1051 amount=-1 +kerning first=1054 second=1052 amount=-1 +kerning first=1042 second=1053 amount=-2 +kerning first=1048 second=1054 amount=-1 +kerning first=1054 second=1055 amount=-1 +kerning first=1054 second=1056 amount=-1 +kerning first=264 second=171 amount=-4 +kerning first=1040 second=1058 amount=-3 +kerning first=1040 second=1059 amount=-4 +kerning first=1040 second=1060 amount=-3 +kerning first=1054 second=1062 amount=-1 +kerning first=1060 second=1063 amount=-2 +kerning first=1054 second=1064 amount=-1 +kerning first=1054 second=1065 amount=-1 +kerning first=1054 second=1067 amount=-1 +kerning first=1054 second=1070 amount=-1 +kerning first=1096 second=1072 amount=-1 +kerning first=1040 second=1073 amount=-2 +kerning first=356 second=100 amount=-3 +kerning first=1038 second=1075 amount=-4 +kerning first=1038 second=1076 amount=-5 +kerning first=1040 second=1077 amount=-2 +kerning first=1038 second=1078 amount=-3 +kerning first=352 second=209 amount=-3 +kerning first=1024 second=1080 amount=-1 +kerning first=1048 second=1081 amount=-1 +kerning first=1038 second=1083 amount=-5 +kerning first=1038 second=1084 amount=-4 +kerning first=1038 second=1085 amount=-4 +kerning first=1040 second=1086 amount=-2 +kerning first=1092 second=1087 amount=-1 +kerning first=1038 second=1088 amount=-4 +kerning first=1118 second=1089 amount=-2 +kerning first=1040 second=1090 amount=-2 +kerning first=1040 second=1091 amount=-3 +kerning first=74 second=240 amount=-2 +kerning first=1038 second=1093 amount=-3 +kerning first=1038 second=1094 amount=-4 +kerning first=1062 second=1095 amount=-3 +kerning first=1038 second=1096 amount=-4 +kerning first=1038 second=1097 amount=-4 +kerning first=1038 second=1100 amount=-4 +kerning first=8216 second=229 amount=-3 +kerning first=1038 second=1102 amount=-4 +kerning first=1038 second=1103 amount=-5 +kerning first=264 second=227 amount=-2 +kerning first=1040 second=1105 amount=-2 +kerning first=1074 second=1107 amount=-1 +kerning first=377 second=226 amount=-1 +kerning first=286 second=252 amount=-1 +kerning first=196 second=350 amount=-3 +kerning first=39 second=1111 amount=3 +kerning first=1038 second=1113 amount=-5 +kerning first=1038 second=1114 amount=-4 +kerning first=84 second=207 amount=-1 +kerning first=1038 second=1116 amount=-4 +kerning first=1114 second=1117 amount=-1 +kerning first=1116 second=1118 amount=-2 +kerning first=1038 second=1119 amount=-4 +kerning first=228 second=227 amount=-1 +kerning first=287 second=335 amount=-2 +kerning first=291 second=339 amount=-2 +kerning first=1025 second=1056 amount=-1 +kerning first=1047 second=1050 amount=-2 +kerning first=336 second=380 amount=-2 +kerning first=380 second=246 amount=-1 +kerning first=109 second=252 amount=-1 +kerning first=102 second=305 amount=-1 +kerning first=211 second=201 amount=-2 +kerning first=79 second=274 amount=-2 +kerning first=344 second=246 amount=-3 +kerning first=356 second=44 amount=-5 +kerning first=376 second=350 amount=-3 +kerning first=336 second=227 amount=-1 +kerning first=1108 second=1095 amount=-1 +kerning first=268 second=350 amount=-3 +kerning first=1050 second=1101 amount=-1 +kerning first=250 second=252 amount=-1 +kerning first=304 second=350 amount=-2 +kerning first=1100 second=1076 amount=-2 +kerning first=327 second=103 amount=-3 +kerning first=279 second=305 amount=-2 +kerning first=369 second=291 amount=-3 +kerning first=268 second=90 amount=-2 +kerning first=210 second=356 amount=-2 +kerning first=291 second=103 amount=-2 +kerning first=243 second=305 amount=-1 +kerning first=227 second=382 amount=-1 +kerning first=333 second=291 amount=-2 +kerning first=350 second=317 amount=-3 +kerning first=376 second=90 amount=-3 +kerning first=255 second=103 amount=-3 +kerning first=351 second=305 amount=-2 +kerning first=218 second=260 amount=-4 +kerning first=263 second=382 amount=-2 +kerning first=221 second=323 amount=-1 +kerning first=8250 second=253 amount=-3 +kerning first=8217 second=273 amount=-3 +kerning first=315 second=305 amount=-2 +kerning first=261 second=337 amount=-1 +kerning first=261 second=291 amount=-1 +kerning first=211 second=84 amount=-2 +kerning first=233 second=226 amount=-2 +kerning first=290 second=260 amount=-3 +kerning first=225 second=291 amount=-2 +kerning first=97 second=337 amount=-1 +kerning first=315 second=45 amount=-1 +kerning first=114 second=103 amount=-2 +kerning first=269 second=226 amount=-2 +kerning first=78 second=103 amount=-3 +kerning first=305 second=226 amount=-1 +kerning first=362 second=260 amount=-4 +kerning first=86 second=382 amount=-3 +kerning first=120 second=291 amount=-2 +kerning first=122 second=382 amount=-2 +kerning first=84 second=291 amount=-4 +kerning first=351 second=45 amount=-1 +kerning first=354 second=213 amount=-3 +kerning first=240 second=109 amount=-1 +kerning first=77 second=115 amount=-2 +kerning first=201 second=89 amount=-1 +kerning first=99 second=109 amount=-2 +kerning first=323 second=212 amount=-2 +kerning first=218 second=115 amount=-2 +kerning first=254 second=115 amount=-2 +kerning first=377 second=78 amount=-1 +kerning first=113 second=115 amount=-2 +kerning first=66 second=45 amount=-3 +kerning first=363 second=103 amount=-3 +kerning first=315 second=193 amount=-2 +kerning first=248 second=44 amount=-3 +kerning first=362 second=115 amount=-2 +kerning first=212 second=44 amount=-3 +kerning first=381 second=89 amount=-2 +kerning first=364 second=268 amount=-1 +kerning first=362 second=232 amount=-2 +kerning first=69 second=213 amount=-1 +kerning first=284 second=44 amount=-3 +kerning first=326 second=115 amount=-1 +kerning first=69 second=353 amount=-1 +kerning first=368 second=303 amount=-2 +kerning first=71 second=44 amount=-3 +kerning first=113 second=232 amount=-1 +kerning first=8250 second=105 amount=-1 +kerning first=282 second=213 amount=-1 +kerning first=286 second=104 amount=-1 +kerning first=218 second=232 amount=-2 +kerning first=250 second=104 amount=-2 +kerning first=105 second=328 amount=-2 +kerning first=83 second=303 amount=-3 +kerning first=229 second=98 amount=-1 +kerning first=8250 second=77 amount=-5 +kerning first=376 second=118 amount=-3 +kerning first=69 second=328 amount=-1 +kerning first=119 second=303 amount=-2 +kerning first=337 second=98 amount=-1 +kerning first=324 second=8249 amount=-3 +kerning first=214 second=280 amount=-2 +kerning first=1092 second=1094 amount=-1 +kerning first=315 second=73 amount=-2 +kerning first=88 second=98 amount=-1 +kerning first=275 second=228 amount=-2 +kerning first=268 second=118 amount=-1 +kerning first=280 second=120 amount=-1 +kerning first=310 second=291 amount=-2 +kerning first=260 second=303 amount=-1 +kerning first=286 second=280 amount=-1 +kerning first=232 second=118 amount=-2 +kerning first=246 second=328 amount=-1 +kerning first=84 second=235 amount=-3 +kerning first=344 second=44 amount=-2 +kerning first=296 second=303 amount=-1 +kerning first=193 second=98 amount=-2 +kerning first=339 second=8221 amount=-2 +kerning first=352 second=120 amount=-3 +kerning first=120 second=235 amount=-2 +kerning first=304 second=118 amount=-2 +kerning first=224 second=303 amount=-1 +kerning first=87 second=370 amount=-1 +kerning first=257 second=283 amount=-1 +kerning first=196 second=118 amount=-3 +kerning first=354 second=328 amount=-3 +kerning first=221 second=283 amount=-3 +kerning first=192 second=370 amount=-3 +kerning first=1071 second=1107 amount=-1 +kerning first=316 second=261 amount=-2 +kerning first=1064 second=1104 amount=-1 +kerning first=316 second=371 amount=-2 +kerning first=282 second=241 amount=-1 +kerning first=8220 second=352 amount=-1 +kerning first=264 second=370 amount=-2 +kerning first=66 second=193 amount=-5 +kerning first=246 second=241 amount=-1 +kerning first=354 second=241 amount=-3 +kerning first=365 second=283 amount=-1 +kerning first=336 second=370 amount=-1 +kerning first=203 second=325 amount=-2 +kerning first=195 second=362 amount=-3 +kerning first=196 second=266 amount=-3 +kerning first=105 second=241 amount=-2 +kerning first=106 second=112 amount=-1 +kerning first=379 second=286 amount=-1 +kerning first=69 second=241 amount=-1 +kerning first=365 second=311 amount=-2 +kerning first=70 second=112 amount=-1 +kerning first=199 second=314 amount=-1 +kerning first=1104 second=1087 amount=-1 +kerning first=1046 second=1090 amount=-3 +kerning first=111 second=8221 amount=-2 +kerning first=199 second=286 amount=-3 +kerning first=246 second=355 amount=-1 +kerning first=257 second=311 amount=-1 +kerning first=368 second=331 amount=-2 +kerning first=120 second=307 amount=-1 +kerning first=235 second=314 amount=-3 +kerning first=75 second=8221 amount=-2 +kerning first=282 second=356 amount=-1 +kerning first=307 second=314 amount=-2 +kerning first=315 second=221 amount=-3 +kerning first=204 second=81 amount=-2 +kerning first=203 second=210 amount=-1 +kerning first=225 second=235 amount=-1 +kerning first=101 second=345 amount=-1 +kerning first=324 second=8221 amount=-4 +kerning first=8220 second=324 amount=-1 +kerning first=1064 second=1096 amount=-1 +kerning first=88 second=339 amount=-2 +kerning first=216 second=8221 amount=-2 +kerning first=116 second=224 amount=-1 +kerning first=377 second=250 amount=-3 +kerning first=119 second=331 amount=-2 +kerning first=252 second=8221 amount=-3 +kerning first=80 second=224 amount=-1 +kerning first=73 second=252 amount=-1 +kerning first=228 second=255 amount=-3 +kerning first=242 second=345 amount=-1 +kerning first=171 second=221 amount=-3 +kerning first=221 second=224 amount=-4 +kerning first=192 second=255 amount=-3 +kerning first=369 second=235 amount=-1 +kerning first=354 second=269 amount=-3 +kerning first=283 second=112 amount=-1 +kerning first=376 second=266 amount=-3 +kerning first=1082 second=1090 amount=-1 +kerning first=83 second=331 amount=-1 +kerning first=66 second=221 amount=-3 +kerning first=268 second=266 amount=-3 +kerning first=87 second=255 amount=-3 +kerning first=350 second=345 amount=-2 +kerning first=257 second=224 amount=-1 +kerning first=211 second=112 amount=-1 +kerning first=304 second=266 amount=-2 +kerning first=305 second=8249 amount=-3 +kerning first=365 second=224 amount=-1 +kerning first=263 second=326 amount=-2 +kerning first=274 second=250 amount=-2 +kerning first=97 second=281 amount=-1 +kerning first=65 second=8220 amount=-5 +kerning first=76 second=289 amount=-3 +kerning first=261 second=347 amount=-1 +kerning first=116 second=255 amount=-1 +kerning first=261 second=318 amount=-1 +kerning first=98 second=117 amount=-1 +kerning first=376 second=69 amount=-1 +kerning first=335 second=326 amount=-1 +kerning first=346 second=250 amount=-1 +kerning first=225 second=347 amount=-1 +kerning first=102 second=101 amount=-1 +kerning first=78 second=365 amount=-2 +kerning first=371 second=326 amount=-2 +kerning first=84 second=378 amount=-3 +kerning first=201 second=118 amount=-1 +kerning first=207 second=101 amount=-2 +kerning first=267 second=273 amount=-1 +kerning first=112 second=328 amount=-1 +kerning first=324 second=371 amount=-1 +kerning first=230 second=231 amount=-1 +kerning first=84 second=347 amount=-3 +kerning first=76 second=328 amount=-1 +kerning first=202 second=250 amount=-2 +kerning first=330 second=281 amount=-2 +kerning first=279 second=101 amount=-1 +kerning first=255 second=307 amount=-2 +kerning first=227 second=326 amount=-1 +kerning first=1048 second=1097 amount=-1 +kerning first=111 second=371 amount=-1 +kerning first=211 second=257 amount=-1 +kerning first=369 second=378 amount=-2 +kerning first=1082 second=1118 amount=-2 +kerning first=87 second=283 amount=-3 +kerning first=289 second=328 amount=-1 +kerning first=333 second=378 amount=-2 +kerning first=1105 second=1076 amount=-2 +kerning first=253 second=328 amount=-2 +kerning first=197 second=366 amount=-3 +kerning first=106 second=257 amount=-2 +kerning first=365 second=8220 amount=-3 +kerning first=70 second=288 amount=-1 +kerning first=217 second=328 amount=-2 +kerning first=252 second=371 amount=-1 +kerning first=272 second=302 amount=-2 +kerning first=225 second=378 amount=-1 +kerning first=289 second=101 amount=-2 +kerning first=1057 second=1073 amount=-1 +kerning first=264 second=283 amount=-2 +kerning first=70 second=257 amount=-2 +kerning first=257 second=8220 amount=-3 +kerning first=1093 second=1073 amount=-1 +kerning first=228 second=283 amount=-1 +kerning first=200 second=302 amount=-2 +kerning first=369 second=347 amount=-2 +kerning first=1065 second=1092 amount=-1 +kerning first=192 second=283 amount=-1 +kerning first=67 second=352 amount=-3 +kerning first=333 second=347 amount=-2 +kerning first=1024 second=1063 amount=-2 +kerning first=117 second=243 amount=-1 +kerning first=218 second=338 amount=-1 +kerning first=290 second=87 amount=-3 +kerning first=8217 second=361 amount=-1 +kerning first=305 second=106 amount=-2 +kerning first=44 second=8220 amount=-5 +kerning first=258 second=243 amount=-1 +kerning first=307 second=113 amount=-1 +kerning first=380 second=333 amount=-1 +kerning first=105 second=253 amount=-3 +kerning first=288 second=80 amount=-1 +kerning first=1092 second=1116 amount=-1 +kerning first=344 second=333 amount=-3 +kerning first=235 second=113 amount=-1 +kerning first=376 second=210 amount=-3 +kerning first=1039 second=1090 amount=-1 +kerning first=199 second=345 amount=-1 +kerning first=199 second=113 amount=-2 +kerning first=235 second=345 amount=-1 +kerning first=304 second=210 amount=-2 +kerning first=89 second=262 amount=-3 +kerning first=291 second=307 amount=-2 +kerning first=103 second=120 amount=-2 +kerning first=268 second=210 amount=-3 +kerning first=193 second=87 amount=-6 +kerning first=307 second=345 amount=-1 +kerning first=377 second=198 amount=-1 +kerning first=194 second=262 amount=-3 +kerning first=363 second=307 amount=-2 +kerning first=208 second=120 amount=-1 +kerning first=196 second=210 amount=-3 +kerning first=75 second=368 amount=-2 +kerning first=244 second=120 amount=-3 +kerning first=365 second=255 amount=-3 +kerning first=288 second=368 amount=-1 +kerning first=266 second=262 amount=-3 +kerning first=1092 second=1113 amount=-2 +kerning first=302 second=262 amount=-2 +kerning first=310 second=281 amount=-2 +kerning first=8250 second=225 amount=-1 +kerning first=330 second=243 amount=-2 +kerning first=1056 second=1113 amount=-2 +kerning first=216 second=368 amount=-1 +kerning first=338 second=262 amount=-1 +kerning first=346 second=281 amount=-1 +kerning first=257 second=255 amount=-3 +kerning first=366 second=243 amount=-2 +kerning first=374 second=262 amount=-3 +kerning first=86 second=323 amount=-1 +kerning first=221 second=255 amount=-3 +kerning first=219 second=279 amount=-2 +kerning first=106 second=229 amount=-2 +kerning first=119 second=99 amount=-3 +kerning first=365 second=227 amount=-1 +kerning first=352 second=324 amount=-1 +kerning first=272 second=274 amount=-2 +kerning first=83 second=99 amount=-1 +kerning first=89 second=234 amount=-3 +kerning first=291 second=279 amount=-2 +kerning first=1057 second=1101 amount=-1 +kerning first=224 second=99 amount=-1 +kerning first=255 second=279 amount=-3 +kerning first=70 second=229 amount=-2 +kerning first=200 second=274 amount=-2 +kerning first=1093 second=1101 amount=-1 +kerning first=257 second=227 amount=-1 +kerning first=283 second=229 amount=-2 +kerning first=228 second=259 amount=-1 +kerning first=291 second=44 amount=-3 +kerning first=296 second=99 amount=-2 +kerning first=1031 second=1099 amount=-1 +kerning first=377 second=369 amount=-3 +kerning first=202 second=278 amount=-2 +kerning first=255 second=44 amount=-5 +kerning first=260 second=99 amount=-1 +kerning first=211 second=229 amount=-1 +kerning first=108 second=233 amount=-1 +kerning first=363 second=44 amount=-2 +kerning first=368 second=99 amount=-2 +kerning first=78 second=279 amount=-2 +kerning first=280 second=324 amount=-1 +kerning first=72 second=233 amount=-2 +kerning first=66 second=104 amount=-3 +kerning first=371 second=99 amount=-3 +kerning first=254 second=382 amount=-2 +kerning first=371 second=267 amount=-3 +kerning first=374 second=234 amount=-3 +kerning first=206 second=122 amount=-1 +kerning first=346 second=278 amount=-3 +kerning first=370 second=223 amount=-2 +kerning first=355 second=229 amount=-1 +kerning first=1049 second=1114 amount=-1 +kerning first=249 second=233 amount=-1 +kerning first=212 second=330 amount=-2 +kerning first=194 second=234 amount=-1 +kerning first=233 second=106 amount=-2 +kerning first=368 second=114 amount=-1 +kerning first=221 second=227 amount=-5 +kerning first=230 second=234 amount=-1 +kerning first=327 second=279 amount=-2 +kerning first=269 second=106 amount=-2 +kerning first=266 second=234 amount=-2 +kerning first=379 second=317 amount=-1 +kerning first=67 second=296 amount=-3 +kerning first=217 second=81 amount=-1 +kerning first=116 second=227 amount=-1 +kerning first=302 second=234 amount=-2 +kerning first=70 second=281 amount=-1 +kerning first=80 second=227 amount=-1 +kerning first=86 second=66 amount=-1 +kerning first=106 second=316 amount=-2 +kerning first=321 second=264 amount=-1 +kerning first=366 second=212 amount=-1 +kerning first=344 second=361 amount=-2 +kerning first=199 second=110 amount=-1 +kerning first=83 second=219 amount=-3 +kerning first=86 second=267 amount=-3 +kerning first=235 second=110 amount=-2 +kerning first=1092 second=1085 amount=-1 +kerning first=330 second=212 amount=-2 +kerning first=8250 second=194 amount=-4 +kerning first=380 second=361 amount=-2 +kerning first=69 second=65 amount=-2 +kerning first=214 second=364 amount=-1 +kerning first=283 second=316 amount=-3 +kerning first=307 second=110 amount=-2 +kerning first=355 second=257 amount=-1 +kerning first=227 second=267 amount=-1 +kerning first=216 second=205 amount=-2 +kerning first=258 second=212 amount=-3 +kerning first=263 second=267 amount=-1 +kerning first=117 second=271 amount=-1 +kerning first=86 second=210 amount=-3 +kerning first=355 second=316 amount=-1 +kerning first=72 second=264 amount=-2 +kerning first=283 second=257 amount=-2 +kerning first=122 second=267 amount=-1 +kerning first=210 second=65 amount=-4 +kerning first=252 second=111 amount=-1 +kerning first=351 second=104 amount=-1 +kerning first=72 second=266 amount=-2 +kerning first=282 second=65 amount=-2 +kerning first=280 second=89 amount=-1 +kerning first=315 second=104 amount=-2 +kerning first=8216 second=109 amount=-1 +kerning first=286 second=364 amount=-1 +kerning first=354 second=65 amount=-6 +kerning first=352 second=89 amount=-3 +kerning first=243 second=104 amount=-1 +kerning first=335 second=8217 amount=-2 +kerning first=200 second=361 amount=-2 +kerning first=213 second=205 amount=-2 +kerning first=382 second=250 amount=-2 +kerning first=321 second=205 amount=-2 +kerning first=208 second=89 amount=-2 +kerning first=310 second=46 amount=-1 +kerning first=277 second=97 amount=-2 +kerning first=263 second=122 amount=-2 +kerning first=346 second=46 amount=-4 +kerning first=376 second=121 amount=-3 +kerning first=296 second=71 amount=-2 +kerning first=224 second=102 amount=-1 +kerning first=352 second=117 amount=-1 +kerning first=227 second=122 amount=-1 +kerning first=382 second=46 amount=-1 +kerning first=205 second=97 amount=-2 +kerning first=260 second=102 amount=-1 +kerning first=304 second=121 amount=-2 +kerning first=368 second=71 amount=-1 +kerning first=8216 second=84 amount=-1 +kerning first=66 second=76 amount=-4 +kerning first=346 second=225 amount=-2 +kerning first=202 second=46 amount=-1 +kerning first=232 second=121 amount=-2 +kerning first=382 second=225 amount=-1 +kerning first=371 second=122 amount=-1 +kerning first=196 second=121 amount=-3 +kerning first=260 second=71 amount=-3 +kerning first=335 second=122 amount=-2 +kerning first=274 second=46 amount=-1 +kerning first=67 second=377 amount=-2 +kerning first=280 second=377 amount=-1 +kerning first=1059 second=1108 amount=-4 +kerning first=67 second=117 amount=-2 +kerning first=90 second=90 amount=-1 +kerning first=277 second=245 amount=-1 +kerning first=366 second=240 amount=-2 +kerning first=208 second=377 amount=-2 +kerning first=97 second=46 amount=-1 +kerning first=78 second=332 amount=-2 +kerning first=332 second=219 amount=-1 +kerning first=205 second=245 amount=-2 +kerning first=374 second=290 amount=-3 +kerning first=122 second=122 amount=-2 +kerning first=87 second=267 amount=-3 +kerning first=219 second=332 amount=-1 +kerning first=244 second=117 amount=-1 +kerning first=288 second=200 amount=-1 +kerning first=86 second=122 amount=-3 +kerning first=78 second=363 amount=-2 +kerning first=260 second=219 amount=-3 +kerning first=368 second=102 amount=-1 +kerning first=1079 second=1097 amount=-1 +kerning first=315 second=76 amount=-2 +kerning first=352 second=377 amount=-1 +kerning first=89 second=287 amount=-4 +kerning first=316 second=117 amount=-2 +kerning first=216 second=200 amount=-2 +kerning first=350 second=381 amount=-1 +kerning first=280 second=117 amount=-2 +kerning first=231 second=44 amount=-3 +kerning first=377 second=310 amount=-1 +kerning first=194 second=287 amount=-3 +kerning first=302 second=83 amount=-2 +kerning first=205 second=214 amount=-2 +kerning first=374 second=259 amount=-5 +kerning first=327 second=332 amount=-2 +kerning first=313 second=214 amount=-1 +kerning first=1037 second=1114 amount=-1 +kerning first=100 second=242 amount=-1 +kerning first=266 second=287 amount=-3 +kerning first=1073 second=1114 amount=-1 +kerning first=230 second=287 amount=-3 +kerning first=266 second=259 amount=-2 +kerning first=205 second=242 amount=-2 +kerning first=338 second=287 amount=-3 +kerning first=330 second=240 amount=-2 +kerning first=230 second=259 amount=-2 +kerning first=302 second=287 amount=-3 +kerning first=86 second=298 amount=-1 +kerning first=338 second=259 amount=-1 +kerning first=277 second=242 amount=-1 +kerning first=258 second=240 amount=-1 +kerning first=302 second=259 amount=-2 +kerning first=374 second=287 amount=-4 +kerning first=314 second=8217 amount=-3 +kerning first=71 second=8220 amount=-1 +kerning first=89 second=259 amount=-5 +kerning first=200 second=330 amount=-2 +kerning first=233 second=369 amount=-2 +kerning first=368 second=8249 amount=-5 +kerning first=87 second=8250 amount=-3 +kerning first=346 second=77 amount=-3 +kerning first=216 second=197 amount=-4 +kerning first=346 second=194 amount=-4 +kerning first=333 second=375 amount=-3 +kerning first=305 second=369 amount=-1 +kerning first=103 second=324 amount=-1 +kerning first=249 second=116 amount=-1 +kerning first=8217 second=357 amount=-1 +kerning first=288 second=197 amount=-3 +kerning first=100 second=97 amount=-1 +kerning first=274 second=194 amount=-2 +kerning first=86 second=119 amount=-3 +kerning first=336 second=89 amount=-2 +kerning first=122 second=119 amount=-2 +kerning first=253 second=110 amount=-2 +kerning first=272 second=330 amount=-2 +kerning first=202 second=194 amount=-2 +kerning first=227 second=119 amount=-3 +kerning first=288 second=228 amount=-1 +kerning first=310 second=253 amount=-3 +kerning first=84 second=375 amount=-3 +kerning first=266 second=203 amount=-3 +kerning first=252 second=228 amount=-1 +kerning first=253 second=234 amount=-3 +kerning first=1098 second=1100 amount=-1 +kerning first=346 second=253 amount=-2 +kerning first=327 second=248 amount=-2 +kerning first=216 second=228 amount=-1 +kerning first=382 second=253 amount=-2 +kerning first=335 second=119 amount=-2 +kerning first=67 second=380 amount=-2 +kerning first=202 second=74 amount=-1 +kerning first=381 second=197 amount=-1 +kerning first=78 second=100 amount=-2 +kerning first=377 second=223 amount=-1 +kerning first=371 second=119 amount=-3 +kerning first=255 second=248 amount=-3 +kerning first=111 second=228 amount=-1 +kerning first=366 second=268 amount=-1 +kerning first=45 second=355 amount=-1 +kerning first=261 second=375 amount=-2 +kerning first=89 second=203 amount=-1 +kerning first=274 second=74 amount=-1 +kerning first=75 second=228 amount=-1 +kerning first=330 second=268 amount=-2 +kerning first=8250 second=250 amount=-1 +kerning first=225 second=375 amount=-3 +kerning first=269 second=223 amount=-1 +kerning first=219 second=248 amount=-2 +kerning first=346 second=74 amount=-2 +kerning first=233 second=223 amount=-1 +kerning first=1081 second=1105 amount=-1 +kerning first=282 second=68 amount=-2 +kerning first=100 second=273 amount=-1 +kerning first=210 second=68 amount=-2 +kerning first=379 second=113 amount=-1 +kerning first=375 second=103 amount=-3 +kerning first=117 second=355 amount=-1 +kerning first=216 second=80 amount=-2 +kerning first=90 second=214 amount=-1 +kerning first=258 second=268 amount=-3 +kerning first=374 second=203 amount=-1 +kerning first=354 second=68 amount=-1 +kerning first=1059 second=1088 amount=-4 +kerning first=211 second=313 amount=-2 +kerning first=338 second=203 amount=-2 +kerning first=252 second=108 amount=-2 +kerning first=219 second=363 amount=-1 +kerning first=86 second=270 amount=-1 +kerning first=288 second=315 amount=-1 +kerning first=1087 second=1086 amount=-1 +kerning first=8250 second=365 amount=-1 +kerning first=266 second=290 amount=-3 +kerning first=255 second=363 amount=-1 +kerning first=1051 second=1086 amount=-1 +kerning first=302 second=290 amount=-2 +kerning first=324 second=108 amount=-1 +kerning first=291 second=363 amount=-1 +kerning first=338 second=290 amount=-1 +kerning first=288 second=108 amount=-1 +kerning first=327 second=363 amount=-2 +kerning first=255 second=335 amount=-3 +kerning first=194 second=318 amount=-2 +kerning first=346 second=105 amount=-3 +kerning first=291 second=335 amount=-2 +kerning first=199 second=85 amount=-2 +kerning first=230 second=318 amount=-3 +kerning first=382 second=105 amount=-1 +kerning first=100 second=245 amount=-1 +kerning first=327 second=335 amount=-2 +kerning first=8216 second=112 amount=-1 +kerning first=274 second=105 amount=-1 +kerning first=216 second=315 amount=-2 +kerning first=363 second=335 amount=-1 +kerning first=353 second=237 amount=-2 +kerning first=1070 second=1063 amount=-2 +kerning first=78 second=335 amount=-2 +kerning first=280 second=380 amount=-2 +kerning first=338 second=318 amount=-1 +kerning first=202 second=105 amount=-1 +kerning first=202 second=225 amount=-1 +kerning first=316 second=380 amount=-1 +kerning first=99 second=45 amount=-2 +kerning first=374 second=231 amount=-3 +kerning first=8216 second=89 amount=-1 +kerning first=81 second=296 amount=-2 +kerning first=282 second=198 amount=-2 +kerning first=377 second=338 amount=-1 +kerning first=97 second=105 amount=-1 +kerning first=266 second=231 amount=-2 +kerning first=274 second=225 amount=-1 +kerning first=219 second=335 amount=-2 +kerning first=45 second=296 amount=-5 +kerning first=302 second=231 amount=-2 +kerning first=310 second=225 amount=-1 +kerning first=362 second=192 amount=-4 +kerning first=103 second=380 amount=-3 +kerning first=75 second=108 amount=-1 +kerning first=257 second=8217 amount=-3 +kerning first=74 second=194 amount=-5 +kerning first=212 second=8220 amount=-2 +kerning first=208 second=380 amount=-2 +kerning first=97 second=225 amount=-1 +kerning first=222 second=296 amount=-2 +kerning first=111 second=108 amount=-2 +kerning first=197 second=338 amount=-3 +kerning first=8250 second=278 amount=-5 +kerning first=252 second=225 amount=-1 +kerning first=376 second=325 amount=-1 +kerning first=353 second=228 amount=-1 +kerning first=288 second=225 amount=-1 +kerning first=77 second=235 amount=-2 +kerning first=8218 second=361 amount=-1 +kerning first=8250 second=80 amount=-5 +kerning first=233 second=251 amount=-2 +kerning first=324 second=225 amount=-1 +kerning first=113 second=235 amount=-1 +kerning first=197 second=251 amount=-3 +kerning first=281 second=228 amount=-2 +kerning first=315 second=280 amount=-2 +kerning first=1105 second=1100 amount=-1 +kerning first=305 second=251 amount=-1 +kerning first=245 second=228 amount=-1 +kerning first=75 second=225 amount=-1 +kerning first=218 second=235 amount=-2 +kerning first=90 second=303 amount=-1 +kerning first=67 second=206 amount=-3 +kerning first=269 second=251 amount=-2 +kerning first=378 second=273 amount=-1 +kerning first=209 second=228 amount=-2 +kerning first=111 second=225 amount=-1 +kerning first=208 second=206 amount=-2 +kerning first=377 second=251 amount=-3 +kerning first=1060 second=1093 amount=-1 +kerning first=313 second=270 amount=-2 +kerning first=69 second=171 amount=-2 +kerning first=104 second=228 amount=-1 +kerning first=216 second=225 amount=-1 +kerning first=1024 second=1093 amount=-2 +kerning first=258 second=98 amount=-2 +kerning first=280 second=206 amount=-2 +kerning first=88 second=355 amount=-1 +kerning first=68 second=228 amount=-1 +kerning first=234 second=273 amount=-1 +kerning first=1047 second=1025 amount=-2 +kerning first=100 second=45 amount=-2 +kerning first=352 second=206 amount=-3 +kerning first=274 second=102 amount=-2 +kerning first=332 second=46 amount=-3 +kerning first=368 second=46 amount=-5 +kerning first=1090 second=1113 amount=-3 +kerning first=83 second=46 amount=-4 +kerning first=89 second=83 amount=-3 +kerning first=376 second=263 amount=-3 +kerning first=268 second=325 amount=-3 +kerning first=66 second=280 amount=-4 +kerning first=119 second=46 amount=-5 +kerning first=193 second=355 amount=-1 +kerning first=97 second=102 amount=-1 +kerning first=1114 second=1107 amount=-1 +kerning first=194 second=83 amount=-3 +kerning first=99 second=8249 amount=-2 +kerning first=102 second=121 amount=-1 +kerning first=224 second=46 amount=-1 +kerning first=1036 second=1098 amount=-3 +kerning first=311 second=363 amount=-1 +kerning first=8217 second=248 amount=-3 +kerning first=187 second=318 amount=-1 +kerning first=266 second=83 amount=-3 +kerning first=356 second=363 amount=-2 +kerning first=75 second=289 amount=-2 +kerning first=240 second=112 amount=-1 +kerning first=74 second=67 amount=-2 +kerning first=223 second=318 amount=-2 +kerning first=200 second=221 amount=-1 +kerning first=281 second=8217 amount=-2 +kerning first=204 second=112 amount=-1 +kerning first=259 second=318 amount=-1 +kerning first=338 second=83 amount=-2 +kerning first=295 second=318 amount=-1 +kerning first=374 second=83 amount=-3 +kerning first=346 second=102 amount=-3 +kerning first=99 second=112 amount=-1 +kerning first=331 second=318 amount=-1 +kerning first=382 second=102 amount=-2 +kerning first=367 second=318 amount=-2 +kerning first=115 second=46 amount=-2 +kerning first=286 second=311 amount=-1 +kerning first=84 second=266 amount=-3 +kerning first=250 second=311 amount=-2 +kerning first=202 second=84 amount=-1 +kerning first=339 second=105 amount=-2 +kerning first=1105 second=1114 amount=-1 +kerning first=362 second=235 amount=-2 +kerning first=45 second=98 amount=-1 +kerning first=76 second=304 amount=-2 +kerning first=375 second=105 amount=-2 +kerning first=324 second=259 amount=-1 +kerning first=267 second=105 amount=-2 +kerning first=117 second=98 amount=-2 +kerning first=303 second=105 amount=-1 +kerning first=323 second=67 amount=-2 +kerning first=70 second=81 amount=-1 +kerning first=195 second=105 amount=-1 +kerning first=216 second=259 amount=-1 +kerning first=231 second=105 amount=-2 +kerning first=344 second=221 amount=-3 +kerning first=72 second=262 amount=-2 +kerning first=90 second=105 amount=-1 +kerning first=86 second=214 amount=-3 +kerning first=288 second=259 amount=-1 +kerning first=252 second=259 amount=-1 +kerning first=272 second=221 amount=-2 +kerning first=277 second=100 amount=-1 +kerning first=80 second=240 amount=-1 +kerning first=286 second=249 amount=-1 +kerning first=264 second=230 amount=-2 +kerning first=1050 second=1098 amount=-3 +kerning first=1054 second=1050 amount=-1 +kerning first=335 second=104 amount=-1 +kerning first=98 second=351 amount=-2 +kerning first=201 second=346 amount=-2 +kerning first=250 second=249 amount=-1 +kerning first=228 second=230 amount=-1 +kerning first=84 second=204 amount=-1 +kerning first=100 second=100 amount=-1 +kerning first=117 second=375 amount=-3 +kerning first=203 second=350 amount=-2 +kerning first=379 second=171 amount=-3 +kerning first=289 second=275 amount=-2 +kerning first=87 second=230 amount=-5 +kerning first=213 second=379 amount=-2 +kerning first=325 second=275 amount=-2 +kerning first=1025 second=1053 amount=-1 +kerning first=205 second=100 amount=-2 +kerning first=73 second=305 amount=-1 +kerning first=321 second=379 amount=-3 +kerning first=217 second=275 amount=-2 +kerning first=1088 second=1102 amount=-1 +kerning first=350 second=267 amount=-1 +kerning first=253 second=275 amount=-3 +kerning first=305 second=102 amount=-1 +kerning first=1113 second=1091 amount=-2 +kerning first=291 second=223 amount=-1 +kerning first=187 second=256 amount=-4 +kerning first=109 second=305 amount=-1 +kerning first=250 second=305 amount=-1 +kerning first=286 second=107 amount=-1 +kerning first=228 second=339 amount=-1 +kerning first=363 second=223 amount=-1 +kerning first=214 second=305 amount=-1 +kerning first=250 second=107 amount=-2 +kerning first=264 second=339 amount=-2 +kerning first=286 second=221 amount=-3 +kerning first=109 second=249 amount=-1 +kerning first=198 second=211 amount=-1 +kerning first=255 second=223 amount=-1 +kerning first=336 second=230 amount=-1 +kerning first=219 second=223 amount=-2 +kerning first=73 second=249 amount=-1 +kerning first=338 second=274 amount=-2 +kerning first=377 second=313 amount=-1 +kerning first=351 second=8217 amount=-2 +kerning first=196 second=263 amount=-1 +kerning first=231 second=365 amount=-2 +kerning first=8217 second=242 amount=-3 +kerning first=118 second=114 amount=-1 +kerning first=232 second=263 amount=-1 +kerning first=195 second=365 amount=-3 +kerning first=379 second=289 amount=-3 +kerning first=1104 second=1084 amount=-1 +kerning first=280 second=268 amount=-1 +kerning first=284 second=192 amount=-3 +kerning first=268 second=263 amount=-2 +kerning first=304 second=263 amount=-2 +kerning first=90 second=365 amount=-3 +kerning first=212 second=192 amount=-4 +kerning first=354 second=353 amount=-3 +kerning first=381 second=237 amount=-1 +kerning first=243 second=8217 amount=-2 +kerning first=354 second=244 amount=-3 +kerning first=66 second=218 amount=-3 +kerning first=192 second=339 amount=-1 +kerning first=221 second=199 amount=-3 +kerning first=279 second=8217 amount=-2 +kerning first=67 second=268 amount=-3 +kerning first=204 second=118 amount=-2 +kerning first=315 second=8217 amount=-4 +kerning first=71 second=192 amount=-3 +kerning first=362 second=102 amount=-1 +kerning first=87 second=339 amount=-3 +kerning first=260 second=334 amount=-3 +kerning first=1059 second=1105 amount=-4 +kerning first=1091 second=1072 amount=-2 +kerning first=246 second=353 amount=-2 +kerning first=201 second=237 amount=-1 +kerning first=334 second=282 amount=-2 +kerning first=374 second=315 amount=-1 +kerning first=282 second=353 amount=-1 +kerning first=1048 second=1114 amount=-1 +kerning first=338 second=315 amount=-2 +kerning first=296 second=334 amount=-2 +kerning first=1051 second=1099 amount=-1 +kerning first=262 second=282 amount=-3 +kerning first=85 second=44 amount=-5 +kerning first=375 second=365 amount=-1 +kerning first=199 second=289 amount=-3 +kerning first=89 second=315 amount=-1 +kerning first=1055 second=1072 amount=-1 +kerning first=105 second=353 amount=-2 +kerning first=105 second=244 amount=-1 +kerning first=307 second=289 amount=-3 +kerning first=8250 second=74 amount=-4 +kerning first=1042 second=1051 amount=-1 +kerning first=230 second=371 amount=-2 +kerning first=233 second=257 amount=-2 +kerning first=106 second=232 amount=-1 +kerning first=346 second=339 amount=-1 +kerning first=380 second=277 amount=-1 +kerning first=86 second=351 amount=-3 +kerning first=118 second=345 amount=-1 +kerning first=100 second=326 amount=-1 +kerning first=344 second=277 amount=-3 +kerning first=353 second=8249 amount=-1 +kerning first=350 second=202 amount=-3 +kerning first=90 second=99 amount=-1 +kerning first=355 second=347 amount=-1 +kerning first=284 second=346 amount=-2 +kerning first=206 second=337 amount=-2 +kerning first=231 second=99 amount=-1 +kerning first=70 second=232 amount=-1 +kerning first=207 second=375 amount=-2 +kerning first=278 second=202 amount=-2 +kerning first=236 second=277 amount=-1 +kerning first=195 second=99 amount=-1 +kerning first=283 second=347 amount=-2 +kerning first=317 second=8249 amount=-1 +kerning first=268 second=381 amount=-2 +kerning first=66 second=336 amount=-3 +kerning first=234 second=267 amount=-1 +kerning first=335 second=351 amount=-2 +kerning first=192 second=79 amount=-3 +kerning first=376 second=381 amount=-3 +kerning first=207 second=336 amount=-2 +kerning first=367 second=114 amount=-1 +kerning first=87 second=79 amount=-3 +kerning first=280 second=212 amount=-1 +kerning first=72 second=261 amount=-2 +kerning first=371 second=351 amount=-2 +kerning first=378 second=267 amount=-1 +kerning first=1031 second=1096 amount=-1 +kerning first=198 second=69 amount=-2 +kerning first=286 second=367 amount=-1 +kerning first=314 second=371 amount=-2 +kerning first=1067 second=1096 amount=-1 +kerning first=315 second=336 amount=-1 +kerning first=122 second=351 amount=-2 +kerning first=313 second=80 amount=-2 +kerning first=67 second=212 amount=-3 +kerning first=269 second=257 amount=-2 +kerning first=1024 second=1059 amount=-3 +kerning first=223 second=114 amount=-1 +kerning first=263 second=351 amount=-2 +kerning first=264 second=79 amount=-3 +kerning first=305 second=257 amount=-1 +kerning first=227 second=351 amount=-1 +kerning first=73 second=367 amount=-2 +kerning first=1087 second=1092 amount=-1 +kerning first=218 second=291 amount=-4 +kerning first=109 second=367 amount=-1 +kerning first=378 second=382 amount=-2 +kerning first=1046 second=1059 amount=-3 +kerning first=77 second=291 amount=-3 +kerning first=1062 second=1047 amount=-1 +kerning first=251 second=271 amount=-1 +kerning first=198 second=382 amount=-2 +kerning first=281 second=337 amount=-1 +kerning first=101 second=314 amount=-3 +kerning first=85 second=226 amount=-3 +kerning first=287 second=271 amount=-2 +kerning first=199 second=99 amount=-2 +kerning first=234 second=382 amount=-2 +kerning first=65 second=314 amount=-2 +kerning first=1063 second=1057 amount=-1 +kerning first=86 second=229 amount=-5 +kerning first=121 second=226 amount=-3 +kerning first=213 second=261 amount=-1 +kerning first=209 second=337 amount=-2 +kerning first=1107 second=1104 amount=-1 +kerning first=1027 second=1057 amount=-1 +kerning first=249 second=261 amount=-1 +kerning first=1051 second=1092 amount=-1 +kerning first=1071 second=1104 amount=-1 +kerning first=313 second=326 amount=-1 +kerning first=278 second=314 amount=-1 +kerning first=8218 second=255 amount=-1 +kerning first=81 second=302 amount=-2 +kerning first=242 second=314 amount=-2 +kerning first=229 second=361 amount=-1 +kerning first=379 second=250 amount=-3 +kerning first=307 second=171 amount=-3 +kerning first=350 second=314 amount=-2 +kerning first=338 second=361 amount=-2 +kerning first=46 second=8221 amount=-5 +kerning first=193 second=361 amount=-3 +kerning first=106 second=347 amount=-2 +kerning first=252 second=281 amount=-1 +kerning first=314 second=314 amount=-2 +kerning first=82 second=8221 amount=-5 +kerning first=99 second=316 amount=-3 +kerning first=70 second=347 amount=-2 +kerning first=253 second=269 amount=-3 +kerning first=1057 second=1076 amount=-1 +kerning first=260 second=216 amount=-3 +kerning first=87 second=224 amount=-4 +kerning first=8216 second=198 amount=-8 +kerning first=217 second=269 amount=-2 +kerning first=1114 second=1103 amount=-2 +kerning first=1024 second=1037 amount=-1 +kerning first=296 second=216 amount=-2 +kerning first=241 second=326 amount=-1 +kerning first=325 second=269 amount=-2 +kerning first=1060 second=1037 amount=-1 +kerning first=223 second=8221 amount=-2 +kerning first=337 second=361 amount=-1 +kerning first=240 second=316 amount=-2 +kerning first=277 second=326 amount=-2 +kerning first=75 second=281 amount=-2 +kerning first=289 second=269 amount=-2 +kerning first=199 second=171 amount=-4 +kerning first=368 second=216 amount=-1 +kerning first=116 second=252 amount=-1 +kerning first=264 second=224 amount=-2 +kerning first=107 second=103 amount=-2 +kerning first=76 second=331 amount=-1 +kerning first=228 second=224 amount=-1 +kerning first=272 second=70 amount=-2 +kerning first=71 second=103 amount=-3 +kerning first=221 second=252 amount=-1 +kerning first=367 second=8221 amount=-3 +kerning first=336 second=224 amount=-1 +kerning first=257 second=252 amount=-1 +kerning first=1079 second=1101 amount=-1 +kerning first=321 second=317 amount=-2 +kerning first=235 second=227 amount=-2 +kerning first=1092 second=1075 amount=-1 +kerning first=199 second=227 amount=-2 +kerning first=73 second=101 amount=-2 +kerning first=289 second=44 amount=-3 +kerning first=226 second=226 amount=-1 +kerning first=346 second=362 amount=-3 +kerning first=268 second=207 amount=-3 +kerning first=213 second=317 amount=-2 +kerning first=298 second=226 amount=-2 +kerning first=73 second=45 amount=-4 +kerning first=250 second=101 amount=-1 +kerning first=1043 second=1101 amount=-1 +kerning first=334 second=226 amount=-1 +kerning first=203 second=90 amount=-1 +kerning first=356 second=103 amount=-4 +kerning first=229 second=246 amount=-1 +kerning first=376 second=207 amount=-1 +kerning first=370 second=226 amount=-3 +kerning first=193 second=246 amount=-1 +kerning first=284 second=103 amount=-3 +kerning first=326 second=291 amount=-2 +kerning first=109 second=45 amount=-3 +kerning first=203 second=356 amount=-1 +kerning first=274 second=362 amount=-2 +kerning first=248 second=103 amount=-2 +kerning first=290 second=291 amount=-3 +kerning first=250 second=45 amount=-2 +kerning first=310 second=362 amount=-2 +kerning first=212 second=103 amount=-1 +kerning first=254 second=291 amount=-2 +kerning first=214 second=45 amount=-1 +kerning first=365 second=104 amount=-2 +kerning first=217 second=213 amount=-1 +kerning first=266 second=89 amount=-1 +kerning first=8249 second=86 amount=-3 +kerning first=377 second=109 amount=-1 +kerning first=220 second=338 amount=-1 +kerning first=338 second=89 amount=-1 +kerning first=257 second=104 amount=-1 +kerning first=269 second=109 amount=-2 +kerning first=286 second=193 amount=-3 +kerning first=325 second=213 amount=-2 +kerning first=84 second=115 amount=-3 +kerning first=194 second=89 amount=-6 +kerning first=290 second=84 amount=-3 +kerning first=221 second=370 amount=-1 +kerning first=214 second=193 amount=-4 +kerning first=197 second=234 amount=-1 +kerning first=209 second=8249 amount=-4 +kerning first=267 second=303 amount=-2 +kerning first=225 second=115 amount=-1 +kerning first=379 second=227 amount=-1 +kerning first=303 second=303 amount=-1 +kerning first=261 second=115 amount=-1 +kerning first=104 second=8249 amount=-3 +kerning first=334 second=78 amount=-2 +kerning first=195 second=303 amount=-1 +kerning first=120 second=115 amount=-3 +kerning first=307 second=227 amount=-2 +kerning first=376 second=103 amount=-4 +kerning first=231 second=303 amount=-2 +kerning first=241 second=44 amount=-1 +kerning first=200 second=70 amount=-2 +kerning first=369 second=115 amount=-2 +kerning first=187 second=368 amount=-4 +kerning first=283 second=232 amount=-1 +kerning first=68 second=8249 amount=-1 +kerning first=8217 second=97 amount=-6 +kerning first=339 second=303 amount=-2 +kerning first=277 second=44 amount=-3 +kerning first=82 second=368 amount=-3 +kerning first=76 second=213 amount=-1 +kerning first=375 second=303 amount=-2 +kerning first=333 second=115 amount=-2 +kerning first=287 second=120 amount=-2 +kerning first=304 second=115 amount=-2 +kerning first=198 second=323 amount=-2 +kerning first=226 second=259 amount=-1 +kerning first=68 second=278 amount=-2 +kerning first=110 second=120 amount=-1 +kerning first=200 second=73 amount=-2 +kerning first=369 second=118 amount=-3 +kerning first=377 second=201 amount=-1 +kerning first=225 second=361 amount=-1 +kerning first=1030 second=1080 amount=-1 +kerning first=272 second=73 amount=-2 +kerning first=315 second=70 amount=-2 +kerning first=356 second=248 amount=-3 +kerning first=251 second=120 amount=-2 +kerning first=192 second=85 amount=-3 +kerning first=1102 second=1080 amount=-1 +kerning first=261 second=118 amount=-3 +kerning first=314 second=113 amount=-1 +kerning first=195 second=253 amount=-3 +kerning first=225 second=118 amount=-3 +kerning first=334 second=75 amount=-2 +kerning first=317 second=278 amount=-2 +kerning first=87 second=85 amount=-1 +kerning first=231 second=253 amount=-2 +kerning first=333 second=118 amount=-2 +kerning first=76 second=68 amount=-2 +kerning first=267 second=253 amount=-2 +kerning first=317 second=80 amount=-2 +kerning first=366 second=246 amount=-2 +kerning first=262 second=75 amount=-3 +kerning first=220 second=233 amount=-2 +kerning first=303 second=253 amount=-2 +kerning first=330 second=246 amount=-2 +kerning first=84 second=118 amount=-3 +kerning first=214 second=196 amount=-4 +kerning first=339 second=253 amount=-2 +kerning first=68 second=80 amount=-2 +kerning first=356 second=317 amount=-1 +kerning first=256 second=233 amount=-1 +kerning first=1049 second=1085 amount=-1 +kerning first=286 second=196 amount=-3 +kerning first=120 second=118 amount=-3 +kerning first=364 second=233 amount=-2 +kerning first=298 second=338 amount=-2 +kerning first=307 second=283 amount=-1 +kerning first=118 second=108 amount=-2 +kerning first=262 second=335 amount=-2 +kerning first=262 second=338 amount=-3 +kerning first=82 second=108 amount=-3 +kerning first=298 second=335 amount=-2 +kerning first=235 second=283 amount=-1 +kerning first=223 second=108 amount=-2 +kerning first=347 second=241 amount=-2 +kerning first=368 second=328 amount=-2 +kerning first=101 second=110 amount=-2 +kerning first=201 second=290 amount=-1 +kerning first=199 second=283 amount=-2 +kerning first=187 second=108 amount=-1 +kerning first=370 second=335 amount=-2 +kerning first=80 second=193 amount=-4 +kerning first=1047 second=1038 amount=-3 +kerning first=287 second=380 amount=-3 +kerning first=336 second=85 amount=-1 +kerning first=295 second=108 amount=-1 +kerning first=85 second=335 amount=-2 +kerning first=98 second=241 amount=-1 +kerning first=8250 second=367 amount=-1 +kerning first=85 second=338 amount=-1 +kerning first=323 second=380 amount=-1 +kerning first=259 second=108 amount=-1 +kerning first=121 second=335 amount=-3 +kerning first=242 second=110 amount=-1 +kerning first=379 second=283 amount=-1 +kerning first=264 second=85 amount=-2 +kerning first=264 second=286 amount=-3 +kerning first=367 second=108 amount=-2 +kerning first=203 second=241 amount=-1 +kerning first=76 second=65 amount=-2 +kerning first=278 second=110 amount=-1 +kerning first=331 second=108 amount=-1 +kerning first=226 second=335 amount=-1 +kerning first=314 second=110 amount=-1 +kerning first=110 second=380 amount=-1 +kerning first=192 second=286 amount=-3 +kerning first=350 second=110 amount=-1 +kerning first=217 second=65 amount=-4 +kerning first=87 second=286 amount=-3 +kerning first=289 second=331 amount=-1 +kerning first=221 second=193 amount=-6 +kerning first=251 second=380 amount=-2 +kerning first=232 second=115 amount=-2 +kerning first=337 second=8217 amount=-2 +kerning first=217 second=331 amount=-2 +kerning first=268 second=115 amount=-2 +kerning first=107 second=248 amount=-3 +kerning first=253 second=331 amount=-2 +kerning first=370 second=338 amount=-1 +kerning first=112 second=331 amount=-1 +kerning first=196 second=115 amount=-2 +kerning first=74 second=380 amount=-1 +kerning first=313 second=367 amount=-2 +kerning first=260 second=356 amount=-6 +kerning first=283 second=8250 amount=-2 +kerning first=295 second=371 amount=-1 +kerning first=84 second=210 amount=-3 +kerning first=198 second=326 amount=-1 +kerning first=375 second=250 amount=-1 +kerning first=1064 second=1073 amount=-1 +kerning first=331 second=371 amount=-1 +kerning first=250 second=255 amount=-3 +kerning first=234 second=326 amount=-2 +kerning first=362 second=347 amount=-2 +kerning first=367 second=371 amount=-1 +kerning first=278 second=205 amount=-2 +kerning first=248 second=307 amount=-1 +kerning first=326 second=347 amount=-1 +kerning first=381 second=352 amount=-1 +kerning first=267 second=250 amount=-2 +kerning first=82 second=262 amount=-3 +kerning first=118 second=371 amount=-1 +kerning first=109 second=255 amount=-2 +kerning first=231 second=250 amount=-2 +kerning first=254 second=347 amount=-2 +kerning first=187 second=371 amount=-1 +kerning first=73 second=255 amount=-2 +kerning first=339 second=250 amount=-2 +kerning first=218 second=347 amount=-2 +kerning first=223 second=371 amount=-1 +kerning first=303 second=250 amount=-1 +kerning first=224 second=380 amount=-1 +kerning first=259 second=371 amount=-1 +kerning first=66 second=333 amount=-1 +kerning first=90 second=250 amount=-3 +kerning first=1104 second=1114 amount=-1 +kerning first=232 second=378 amount=-2 +kerning first=119 second=328 amount=-2 +kerning first=295 second=305 amount=-1 +kerning first=345 second=229 amount=-1 +kerning first=74 second=212 amount=-2 +kerning first=195 second=250 amount=-3 +kerning first=1113 second=1097 amount=-1 +kerning first=102 second=333 amount=-1 +kerning first=1030 second=1077 amount=-1 +kerning first=86 second=44 amount=-5 +kerning first=204 second=257 amount=-2 +kerning first=8218 second=379 amount=-1 +kerning first=1077 second=1097 amount=-1 +kerning first=89 second=267 amount=-3 +kerning first=99 second=257 amount=-2 +kerning first=224 second=328 amount=-1 +kerning first=286 second=8220 amount=-1 +kerning first=1069 second=1047 amount=-2 +kerning first=331 second=119 amount=-3 +kerning first=218 second=288 amount=-1 +kerning first=250 second=8220 amount=-3 +kerning first=303 second=283 amount=-3 +kerning first=214 second=8220 amount=-2 +kerning first=87 second=345 amount=-1 +kerning first=97 second=351 amount=-1 +kerning first=88 second=243 amount=-2 +kerning first=120 second=250 amount=-3 +kerning first=298 second=332 amount=-2 +kerning first=109 second=8220 amount=-4 +kerning first=240 second=106 amount=-2 +kerning first=262 second=332 amount=-3 +kerning first=206 second=113 amount=-2 +kerning first=370 second=332 amount=-1 +kerning first=207 second=333 amount=-2 +kerning first=264 second=345 amount=-1 +kerning first=101 second=113 amount=-1 +kerning first=107 second=242 amount=-3 +kerning first=1063 second=1116 amount=-1 +kerning first=279 second=333 amount=-1 +kerning first=77 second=288 amount=-2 +kerning first=1104 second=1090 amount=-1 +kerning first=211 second=87 amount=-2 +kerning first=65 second=113 amount=-1 +kerning first=1027 second=1116 amount=-2 +kerning first=303 second=99 amount=-3 +kerning first=1058 second=1033 amount=-4 +kerning first=381 second=287 amount=-3 +kerning first=113 second=347 amount=-2 +kerning first=281 second=281 amount=-1 +kerning first=267 second=99 amount=-1 +kerning first=345 second=287 amount=-2 +kerning first=77 second=347 amount=-2 +kerning first=375 second=99 amount=-3 +kerning first=198 second=217 amount=-2 +kerning first=339 second=99 amount=-1 +kerning first=219 second=232 amount=-2 +kerning first=362 second=288 amount=-1 +kerning first=193 second=243 amount=-1 +kerning first=8217 second=192 amount=-6 +kerning first=356 second=242 amount=-3 +kerning first=229 second=243 amount=-1 +kerning first=187 second=197 amount=-4 +kerning first=378 second=326 amount=-2 +kerning first=209 second=281 amount=-2 +kerning first=83 second=82 amount=-3 +kerning first=116 second=249 amount=-1 +kerning first=251 second=324 amount=-1 +kerning first=85 second=279 amount=-2 +kerning first=256 second=354 amount=-6 +kerning first=99 second=254 amount=-2 +kerning first=198 second=119 amount=-1 +kerning first=76 second=334 amount=-1 +kerning first=278 second=379 amount=-1 +kerning first=71 second=304 amount=-1 +kerning first=287 second=324 amount=-1 +kerning first=68 second=74 amount=-2 +kerning first=234 second=119 amount=-2 +kerning first=121 second=279 amount=-3 +kerning first=217 second=334 amount=-1 +kerning first=113 second=229 amount=-2 +kerning first=187 second=374 amount=-4 +kerning first=1093 second=1079 amount=-1 +kerning first=290 second=344 amount=-1 +kerning first=315 second=274 amount=-2 +kerning first=240 second=369 amount=-1 +kerning first=87 second=289 amount=-4 +kerning first=209 second=74 amount=-1 +kerning first=82 second=374 amount=-3 +kerning first=257 second=249 amount=-1 +kerning first=79 second=259 amount=-1 +kerning first=77 second=229 amount=-2 +kerning first=378 second=119 amount=-2 +kerning first=1057 second=1079 amount=-1 +kerning first=199 second=339 amount=-2 +kerning first=290 second=229 amount=-1 +kerning first=1038 second=1074 amount=-4 +kerning first=235 second=339 amount=-1 +kerning first=317 second=284 amount=-1 +kerning first=326 second=229 amount=-1 +kerning first=317 second=74 amount=-1 +kerning first=1074 second=1074 amount=-1 +kerning first=370 second=279 amount=-2 +kerning first=339 second=361 amount=-2 +kerning first=209 second=284 amount=-2 +kerning first=8216 second=366 amount=-1 +kerning first=258 second=246 amount=-1 +kerning first=218 second=229 amount=-3 +kerning first=254 second=229 amount=-1 +kerning first=366 second=114 amount=-1 +kerning first=1027 second=1119 amount=-2 +kerning first=262 second=279 amount=-2 +kerning first=379 second=339 amount=-1 +kerning first=1063 second=1119 amount=-1 +kerning first=226 second=279 amount=-1 +kerning first=8218 second=261 amount=-2 +kerning first=362 second=229 amount=-3 +kerning first=307 second=339 amount=-1 +kerning first=298 second=279 amount=-2 +kerning first=311 second=244 amount=-3 +kerning first=1039 second=1084 amount=-1 +kerning first=250 second=8217 amount=-3 +kerning first=286 second=8217 amount=-1 +kerning first=259 second=111 amount=-1 +kerning first=1094 second=1089 amount=-1 +kerning first=336 second=82 amount=-2 +kerning first=1058 second=1089 amount=-1 +kerning first=381 second=234 amount=-1 +kerning first=76 second=219 amount=-3 +kerning first=201 second=86 amount=-1 +kerning first=206 second=264 amount=-2 +kerning first=82 second=111 amount=-3 +kerning first=118 second=111 amount=-3 +kerning first=192 second=289 amount=-3 +kerning first=261 second=121 amount=-2 +kerning first=221 second=364 amount=-1 +kerning first=228 second=289 amount=-2 +kerning first=225 second=121 amount=-3 +kerning first=275 second=119 amount=-2 +kerning first=8218 second=89 amount=-6 +kerning first=65 second=264 amount=-3 +kerning first=1024 second=1099 amount=-1 +kerning first=264 second=289 amount=-3 +kerning first=264 second=82 amount=-3 +kerning first=198 second=66 amount=-2 +kerning first=222 second=323 amount=-2 +kerning first=120 second=121 amount=-3 +kerning first=1024 second=1082 amount=-1 +kerning first=8220 second=271 amount=-3 +kerning first=336 second=289 amount=-1 +kerning first=84 second=121 amount=-3 +kerning first=77 second=251 amount=-2 +kerning first=350 second=205 amount=-3 +kerning first=240 second=254 amount=-1 +kerning first=1058 second=1086 amount=-1 +kerning first=367 second=111 amount=-1 +kerning first=79 second=354 amount=-2 +kerning first=87 second=82 amount=-1 +kerning first=365 second=249 amount=-1 +kerning first=275 second=244 amount=-1 +kerning first=73 second=199 amount=-2 +kerning first=353 second=225 amount=-1 +kerning first=251 second=117 amount=-1 +kerning first=107 second=97 amount=-2 +kerning first=69 second=85 amount=-2 +kerning first=90 second=102 amount=-3 +kerning first=323 second=117 amount=-2 +kerning first=287 second=117 amount=-1 +kerning first=71 second=97 amount=-1 +kerning first=272 second=76 amount=-2 +kerning first=325 second=71 amount=-2 +kerning first=267 second=46 amount=-3 +kerning first=209 second=225 amount=-2 +kerning first=262 second=72 amount=-3 +kerning first=284 second=97 amount=-1 +kerning first=369 second=121 amount=-3 +kerning first=99 second=251 amount=-2 +kerning first=245 second=225 amount=-1 +kerning first=200 second=76 amount=-2 +kerning first=333 second=121 amount=-3 +kerning first=240 second=251 amount=-1 +kerning first=379 second=111 amount=-1 +kerning first=339 second=46 amount=-3 +kerning first=281 second=225 amount=-2 +kerning first=8217 second=103 amount=-4 +kerning first=334 second=72 amount=-2 +kerning first=212 second=97 amount=-1 +kerning first=68 second=77 amount=-2 +kerning first=204 second=251 amount=-2 +kerning first=198 second=122 amount=-2 +kerning first=375 second=46 amount=-5 +kerning first=280 second=112 amount=-2 +kerning first=248 second=97 amount=-1 +kerning first=381 second=290 amount=-1 +kerning first=339 second=102 amount=-2 +kerning first=107 second=245 amount=-3 +kerning first=71 second=363 amount=-1 +kerning first=356 second=97 amount=-5 +kerning first=107 second=363 amount=-1 +kerning first=231 second=46 amount=-3 +kerning first=356 second=245 amount=-3 +kerning first=195 second=102 amount=-1 +kerning first=187 second=200 amount=-5 +kerning first=231 second=102 amount=-2 +kerning first=248 second=363 amount=-1 +kerning first=66 second=73 amount=-4 +kerning first=267 second=102 amount=-2 +kerning first=82 second=318 amount=-3 +kerning first=284 second=363 amount=-1 +kerning first=303 second=102 amount=-2 +kerning first=110 second=117 amount=-1 +kerning first=118 second=318 amount=-2 +kerning first=272 second=220 amount=-1 +kerning first=352 second=90 amount=-1 +kerning first=101 second=116 amount=-1 +kerning first=337 second=355 amount=-1 +kerning first=65 second=116 amount=-1 +kerning first=201 second=83 amount=-2 +kerning first=315 second=330 amount=-2 +kerning first=79 second=298 amount=-2 +kerning first=193 second=240 amount=-1 +kerning first=367 second=259 amount=-1 +kerning first=298 second=237 amount=-1 +kerning first=198 second=214 amount=-1 +kerning first=90 second=194 amount=-1 +kerning first=229 second=240 amount=-1 +kerning first=331 second=259 amount=-1 +kerning first=1060 second=1043 amount=-1 +kerning first=88 second=240 amount=-2 +kerning first=110 second=371 amount=-1 +kerning first=90 second=253 amount=-3 +kerning first=1024 second=1043 amount=-1 +kerning first=350 second=116 amount=-1 +kerning first=381 second=83 amount=-1 +kerning first=1049 second=1088 amount=-1 +kerning first=268 second=375 amount=-1 +kerning first=99 second=369 amount=-2 +kerning first=223 second=259 amount=-1 +kerning first=1113 second=1094 amount=-1 +kerning first=66 second=330 amount=-4 +kerning first=232 second=375 amount=-2 +kerning first=187 second=259 amount=-1 +kerning first=1077 second=1094 amount=-1 +kerning first=356 second=304 amount=-1 +kerning first=378 second=122 amount=-2 +kerning first=196 second=375 amount=-3 +kerning first=204 second=369 amount=-2 +kerning first=295 second=259 amount=-1 +kerning first=217 second=71 amount=-1 +kerning first=122 second=311 amount=-2 +kerning first=259 second=259 amount=-1 +kerning first=284 second=304 amount=-1 +kerning first=376 second=375 amount=-3 +kerning first=334 second=220 amount=-1 +kerning first=76 second=71 amount=-1 +kerning first=212 second=304 amount=-2 +kerning first=118 second=259 amount=-3 +kerning first=242 second=116 amount=-1 +kerning first=304 second=375 amount=-2 +kerning first=262 second=220 amount=-2 +kerning first=82 second=259 amount=-2 +kerning first=354 second=90 amount=-3 +kerning first=264 second=233 amount=-2 +kerning first=71 second=298 amount=-1 +kerning first=347 second=291 amount=-3 +kerning first=1081 second=1108 amount=-1 +kerning first=332 second=77 amount=-2 +kerning first=311 second=291 amount=-2 +kerning first=114 second=97 amount=-1 +kerning first=288 second=194 amount=-3 +kerning first=275 second=291 amount=-3 +kerning first=83 second=337 amount=-1 +kerning first=101 second=227 amount=-2 +kerning first=69 second=350 amount=-2 +kerning first=109 second=110 amount=-1 +kerning first=284 second=82 amount=-1 +kerning first=216 second=194 amount=-4 +kerning first=203 second=291 amount=-3 +kerning first=354 second=233 amount=-3 +kerning first=198 second=304 amount=-2 +kerning first=284 second=298 amount=-1 +kerning first=78 second=97 amount=-2 +kerning first=67 second=235 amount=-2 +kerning first=210 second=350 amount=-1 +kerning first=291 second=97 amount=-3 +kerning first=250 second=110 amount=-1 +kerning first=98 second=291 amount=-2 +kerning first=260 second=337 amount=-1 +kerning first=351 second=311 amount=-1 +kerning first=1113 second=1088 amount=-1 +kerning first=83 second=77 amount=-3 +kerning first=1072 second=1101 amount=-1 +kerning first=327 second=97 amount=-2 +kerning first=224 second=337 amount=-1 +kerning first=315 second=311 amount=-2 +kerning first=222 second=66 amount=-2 +kerning first=279 second=311 amount=-2 +kerning first=79 second=317 amount=-2 +kerning first=346 second=200 amount=-3 +kerning first=75 second=318 amount=-1 +kerning first=255 second=97 amount=-3 +kerning first=119 second=337 amount=-3 +kerning first=243 second=311 amount=-1 +kerning first=1077 second=1088 amount=-1 +kerning first=69 second=90 amount=-1 +kerning first=197 second=84 amount=-6 +kerning first=337 second=324 amount=-1 +kerning first=111 second=318 amount=-2 +kerning first=1025 second=1050 amount=-1 +kerning first=210 second=90 amount=-2 +kerning first=8218 second=370 amount=-3 +kerning first=202 second=71 amount=-1 +kerning first=368 second=337 amount=-2 +kerning first=370 second=382 amount=-3 +kerning first=282 second=350 amount=-2 +kerning first=102 second=311 amount=3 +kerning first=282 second=90 amount=-1 +kerning first=377 second=84 amount=-2 +kerning first=229 second=324 amount=-1 +kerning first=252 second=318 amount=-2 +kerning first=274 second=71 amount=-1 +kerning first=296 second=337 amount=-2 +kerning first=66 second=311 amount=-3 +kerning first=1036 second=1101 amount=-1 +kerning first=227 second=335 amount=-1 +kerning first=264 second=104 amount=-1 +kerning first=1049 second=1107 amount=-1 +kerning first=217 second=381 amount=-1 +kerning first=251 second=234 amount=-1 +kerning first=228 second=104 amount=-1 +kerning first=194 second=284 amount=-3 +kerning first=382 second=303 amount=-1 +kerning first=279 second=187 amount=-2 +kerning first=287 second=234 amount=-2 +kerning first=192 second=104 amount=-2 +kerning first=243 second=187 amount=-2 +kerning first=323 second=234 amount=-2 +kerning first=270 second=44 amount=-3 +kerning first=89 second=284 amount=-3 +kerning first=8217 second=382 amount=-1 +kerning first=365 second=277 amount=-1 +kerning first=268 second=260 amount=-3 +kerning first=84 second=325 amount=-1 +kerning first=211 second=78 amount=-2 +kerning first=211 second=310 amount=-2 +kerning first=8220 second=86 amount=-1 +kerning first=376 second=260 amount=-6 +kerning first=8216 second=195 amount=-8 +kerning first=296 second=213 amount=-2 +kerning first=1104 second=1081 amount=-1 +kerning first=280 second=374 amount=-1 +kerning first=208 second=356 amount=-2 +kerning first=346 second=116 amount=-1 +kerning first=221 second=277 amount=-3 +kerning first=101 second=351 amount=-2 +kerning first=278 second=227 amount=-1 +kerning first=356 second=298 amount=-1 +kerning first=65 second=269 amount=-1 +kerning first=1060 second=1058 amount=-1 +kerning first=202 second=284 amount=-1 +kerning first=65 second=351 amount=-2 +kerning first=242 second=227 amount=-1 +kerning first=1038 second=1077 amount=-4 +kerning first=206 second=351 amount=-2 +kerning first=206 second=227 amount=-2 +kerning first=374 second=284 amount=-3 +kerning first=97 second=303 amount=-1 +kerning first=257 second=277 amount=-1 +kerning first=197 second=220 amount=-3 +kerning first=100 second=98 amount=-1 +kerning first=1059 second=1074 amount=-4 +kerning first=79 second=85 amount=-1 +kerning first=378 second=44 amount=-1 +kerning first=302 second=284 amount=-2 +kerning first=346 second=303 amount=-3 +kerning first=338 second=284 amount=-1 +kerning first=85 second=350 amount=-3 +kerning first=84 second=201 amount=-1 +kerning first=274 second=303 amount=-1 +kerning first=80 second=277 amount=-1 +kerning first=379 second=367 amount=-3 +kerning first=314 second=227 amount=-2 +kerning first=266 second=284 amount=-3 +kerning first=382 second=269 amount=-1 +kerning first=105 second=118 amount=-3 +kerning first=314 second=8220 amount=-3 +kerning first=115 second=345 amount=-1 +kerning first=8217 second=122 amount=-1 +kerning first=230 second=380 amount=-2 +kerning first=69 second=118 amount=-1 +kerning first=224 second=105 amount=-1 +kerning first=207 second=283 amount=-2 +kerning first=266 second=380 amount=-2 +kerning first=284 second=270 amount=-1 +kerning first=83 second=105 amount=-3 +kerning first=242 second=8220 amount=-2 +kerning first=8222 second=362 amount=-3 +kerning first=68 second=287 amount=-1 +kerning first=302 second=380 amount=-1 +kerning first=119 second=105 amount=-2 +kerning first=214 second=171 amount=-1 +kerning first=283 second=235 amount=-1 +kerning first=102 second=283 amount=-1 +kerning first=338 second=380 amount=-2 +kerning first=356 second=270 amount=-1 +kerning first=382 second=228 amount=-1 +kerning first=1088 second=1094 amount=-1 +kerning first=346 second=228 amount=-1 +kerning first=101 second=8220 amount=-2 +kerning first=275 second=232 amount=-1 +kerning first=104 second=287 amount=-2 +kerning first=310 second=228 amount=-1 +kerning first=245 second=287 amount=-2 +kerning first=274 second=228 amount=-1 +kerning first=368 second=241 amount=-2 +kerning first=279 second=283 amount=-1 +kerning first=209 second=287 amount=-3 +kerning first=212 second=270 amount=-2 +kerning first=317 second=287 amount=-3 +kerning first=202 second=228 amount=-1 +kerning first=119 second=241 amount=-2 +kerning first=281 second=287 amount=-3 +kerning first=338 second=8249 amount=-2 +kerning first=100 second=287 amount=-2 +kerning first=97 second=228 amount=-1 +kerning first=224 second=241 amount=-1 +kerning first=353 second=287 amount=-3 +kerning first=377 second=248 amount=-1 +kerning first=266 second=8249 amount=-4 +kerning first=382 second=331 amount=-2 +kerning first=269 second=248 amount=-1 +kerning first=88 second=354 amount=-2 +kerning first=90 second=197 amount=-1 +kerning first=194 second=8249 amount=-4 +kerning first=83 second=241 amount=-1 +kerning first=275 second=263 amount=-1 +kerning first=70 second=235 amount=-1 +kerning first=197 second=248 amount=-1 +kerning first=311 second=263 amount=-3 +kerning first=106 second=235 amount=-1 +kerning first=346 second=331 amount=-1 +kerning first=233 second=248 amount=-1 +kerning first=288 second=318 amount=-1 +kerning first=356 second=366 amount=-1 +kerning first=324 second=318 amount=-1 +kerning first=350 second=255 amount=-2 +kerning first=274 second=331 amount=-1 +kerning first=1063 second=1094 amount=-1 +kerning first=377 second=112 amount=-1 +kerning first=374 second=256 amount=-6 +kerning first=284 second=366 amount=-1 +kerning first=1027 second=1094 amount=-2 +kerning first=74 second=262 amount=-2 +kerning first=1036 second=1073 amount=-3 +kerning first=338 second=256 amount=-2 +kerning first=1078 second=1104 amount=-2 +kerning first=305 second=112 amount=-1 +kerning first=1072 second=1073 amount=-1 +kerning first=242 second=255 amount=-3 +kerning first=274 second=200 amount=-2 +kerning first=269 second=112 amount=-1 +kerning first=206 second=255 amount=-2 +kerning first=336 second=8221 amount=-2 +kerning first=97 second=331 amount=-1 +kerning first=193 second=221 amount=-6 +kerning first=233 second=112 amount=-1 +kerning first=202 second=200 amount=-2 +kerning first=197 second=112 amount=-3 +kerning first=101 second=255 amount=-2 +kerning first=88 second=221 amount=-2 +kerning first=65 second=255 amount=-3 +kerning first=217 second=74 amount=-3 +kerning first=108 second=314 amount=-2 +kerning first=88 second=352 amount=-2 +kerning first=105 second=367 amount=-1 +kerning first=287 second=98 amount=-1 +kerning first=193 second=352 amount=-3 +kerning first=211 second=207 amount=-2 +kerning first=251 second=98 amount=-2 +kerning first=325 second=74 amount=-1 +kerning first=84 second=105 amount=-2 +kerning first=70 second=338 amount=-1 +kerning first=332 second=105 amount=-1 +kerning first=212 second=366 amount=-1 +kerning first=66 second=283 amount=-1 +kerning first=8217 second=279 amount=-3 +kerning first=374 second=380 amount=-3 +kerning first=368 second=105 amount=-2 +kerning first=1045 second=1080 amount=-1 +kerning first=75 second=290 amount=-3 +kerning first=1058 second=1092 amount=-1 +kerning first=249 second=314 amount=-2 +kerning first=260 second=105 amount=-1 +kerning first=84 second=339 amount=-3 +kerning first=296 second=105 amount=-1 +kerning first=71 second=366 amount=-1 +kerning first=220 second=214 amount=-1 +kerning first=321 second=314 amount=-2 +kerning first=277 second=307 amount=-2 +kerning first=212 second=106 amount=-1 +kerning first=197 second=268 amount=-3 +kerning first=85 second=81 amount=-1 +kerning first=116 second=261 amount=-1 +kerning first=117 second=333 amount=-1 +kerning first=90 second=113 amount=-1 +kerning first=67 second=346 amount=-3 +kerning first=248 second=106 amount=-2 +kerning first=258 second=333 amount=-1 +kerning first=230 second=8221 amount=-2 +kerning first=107 second=106 amount=-1 +kerning first=199 second=224 amount=-2 +kerning first=90 second=68 amount=-1 +kerning first=298 second=81 amount=-2 +kerning first=280 second=346 amount=-2 +kerning first=105 second=114 amount=-1 +kerning first=262 second=81 amount=-3 +kerning first=235 second=224 amount=-2 +kerning first=208 second=346 amount=-1 +kerning first=284 second=106 amount=-1 +kerning first=307 second=224 amount=-2 +kerning first=103 second=243 amount=-2 +kerning first=89 second=256 amount=-6 +kerning first=116 second=118 amount=-1 +kerning first=379 second=224 amount=-1 +kerning first=1088 second=1099 amount=-1 +kerning first=213 second=230 amount=-1 +kerning first=80 second=101 amount=-1 +kerning first=352 second=346 amount=-1 +kerning first=72 second=230 amount=-2 +kerning first=353 second=324 amount=-2 +kerning first=108 second=230 amount=-2 +kerning first=100 second=307 amount=-1 +kerning first=8250 second=315 amount=-5 +kerning first=330 second=333 amount=-2 +kerning first=266 second=256 amount=-3 +kerning first=362 second=253 amount=-1 +kerning first=67 second=326 amount=-1 +kerning first=221 second=101 amount=-3 +kerning first=257 second=101 amount=-1 +kerning first=1052 second=1099 amount=-1 +kerning first=241 second=307 amount=-1 +kerning first=366 second=333 amount=-2 +kerning first=344 second=67 amount=-3 +kerning first=67 second=243 amount=-2 +kerning first=86 second=69 amount=-1 +kerning first=89 second=120 amount=-2 +kerning first=1060 second=1034 amount=-1 +kerning first=365 second=101 amount=-1 +kerning first=8250 second=200 amount=-5 +kerning first=379 second=79 amount=-1 +kerning first=209 second=334 amount=-2 +kerning first=1048 second=1072 amount=-1 +kerning first=87 second=187 amount=-3 +kerning first=381 second=268 amount=-1 +kerning first=264 second=318 amount=-1 +kerning first=258 second=218 amount=-3 +kerning first=71 second=251 amount=-1 +kerning first=85 second=229 amount=-3 +kerning first=313 second=192 amount=-2 +kerning first=1113 second=1080 amount=-1 +kerning first=1101 second=1098 amount=-1 +kerning first=1050 second=1072 amount=-2 +kerning first=1024 second=1034 amount=-1 +kerning first=352 second=243 amount=-1 +kerning first=317 second=334 amount=-1 +kerning first=107 second=251 amount=-1 +kerning first=201 second=268 amount=-1 +kerning first=317 second=203 amount=-2 +kerning first=248 second=251 amount=-1 +kerning first=226 second=229 amount=-1 +kerning first=109 second=371 amount=-1 +kerning first=45 second=218 amount=-4 +kerning first=262 second=229 amount=-2 +kerning first=121 second=229 amount=-3 +kerning first=71 second=270 amount=-1 +kerning first=284 second=251 amount=-1 +kerning first=282 second=118 amount=-1 +kerning first=230 second=120 amount=-2 +kerning first=370 second=229 amount=-3 +kerning first=222 second=218 amount=-1 +kerning first=246 second=118 amount=-2 +kerning first=356 second=251 amount=-2 +kerning first=1084 second=1072 amount=-1 +kerning first=302 second=249 amount=-1 +kerning first=71 second=106 amount=-1 +kerning first=354 second=118 amount=-3 +kerning first=86 second=305 amount=-2 +kerning first=68 second=203 amount=-2 +kerning first=8222 second=102 amount=-1 +kerning first=1079 second=1074 amount=-1 +kerning first=338 second=120 amount=-1 +kerning first=1101 second=1083 amount=-2 +kerning first=81 second=218 amount=-1 +kerning first=375 second=244 amount=-3 +kerning first=1074 second=1096 amount=-1 +kerning first=334 second=257 amount=-1 +kerning first=194 second=368 amount=-3 +kerning first=370 second=257 amount=-3 +kerning first=317 second=219 amount=-3 +kerning first=45 second=361 amount=-1 +kerning first=262 second=257 amount=-2 +kerning first=89 second=368 amount=-1 +kerning first=298 second=257 amount=-2 +kerning first=117 second=361 amount=-1 +kerning first=99 second=232 amount=-1 +kerning first=213 second=202 amount=-2 +kerning first=338 second=368 amount=-2 +kerning first=226 second=257 amount=-1 +kerning first=363 second=254 amount=-2 +kerning first=374 second=368 amount=-1 +kerning first=266 second=122 amount=-2 +kerning first=85 second=257 amount=-3 +kerning first=204 second=232 amount=-2 +kerning first=266 second=368 amount=-2 +kerning first=84 second=8250 amount=-3 +kerning first=121 second=257 amount=-3 +kerning first=68 second=219 amount=-1 +kerning first=325 second=121 amount=-2 +kerning first=208 second=374 amount=-2 +kerning first=289 second=121 amount=-1 +kerning first=254 second=378 amount=-2 +kerning first=100 second=267 amount=-1 +kerning first=255 second=254 amount=-1 +kerning first=344 second=336 amount=-3 +kerning first=195 second=244 amount=-1 +kerning first=217 second=121 amount=-1 +kerning first=321 second=202 amount=-2 +kerning first=291 second=254 amount=-1 +kerning first=231 second=244 amount=-1 +kerning first=216 second=330 amount=-2 +kerning first=199 second=79 amount=-3 +kerning first=213 second=66 amount=-2 +kerning first=213 second=82 amount=-2 +kerning first=267 second=244 amount=-1 +kerning first=112 second=121 amount=-3 +kerning first=305 second=110 amount=-1 +kerning first=277 second=267 amount=-1 +kerning first=216 second=278 amount=-2 +kerning first=303 second=244 amount=-3 +kerning first=76 second=121 amount=-3 +kerning first=346 second=240 amount=-1 +kerning first=1078 second=1108 amount=-2 +kerning first=339 second=244 amount=-1 +kerning first=205 second=267 amount=-2 +kerning first=99 second=106 amount=-2 +kerning first=288 second=278 amount=-1 +kerning first=321 second=82 amount=-2 +kerning first=205 second=382 amount=-1 +kerning first=187 second=117 amount=-1 +kerning first=222 second=8221 amount=-2 +kerning first=241 second=382 amount=-1 +kerning first=321 second=66 amount=-2 +kerning first=117 second=246 amount=-1 +kerning first=367 second=281 amount=-1 +kerning first=199 second=107 amount=-1 +kerning first=277 second=382 amount=-2 +kerning first=316 second=271 amount=-1 +kerning first=259 second=117 amount=-1 +kerning first=313 second=382 amount=-3 +kerning first=223 second=117 amount=-1 +kerning first=118 second=281 amount=-3 +kerning first=331 second=117 amount=-1 +kerning first=295 second=117 amount=-1 +kerning first=100 second=382 amount=-1 +kerning first=249 second=230 amount=-1 +kerning first=259 second=281 amount=-1 +kerning first=367 second=117 amount=-1 +kerning first=1055 second=1047 amount=-1 +kerning first=266 second=201 amount=-3 +kerning first=333 second=8250 amount=-2 +kerning first=258 second=361 amount=-3 +kerning first=86 second=205 amount=-1 +kerning first=366 second=361 amount=-1 +kerning first=82 second=281 amount=-3 +kerning first=330 second=361 amount=-2 +kerning first=212 second=315 amount=-2 +kerning first=240 second=347 amount=-2 +kerning first=90 second=216 amount=-1 +kerning first=204 second=347 amount=-2 +kerning first=235 second=107 amount=-2 +kerning first=103 second=271 amount=-2 +kerning first=193 second=305 amount=-1 +kerning first=1092 second=1082 amount=-1 +kerning first=45 second=344 amount=-5 +kerning first=195 second=216 amount=-3 +kerning first=99 second=347 amount=-2 +kerning first=307 second=107 amount=-1 +kerning first=381 second=240 amount=-1 +kerning first=1058 second=1095 amount=-2 +kerning first=363 second=245 amount=-1 +kerning first=106 second=226 amount=-2 +kerning first=229 second=305 amount=-1 +kerning first=88 second=336 amount=-3 +kerning first=332 second=65 amount=-4 +kerning first=327 second=245 amount=-2 +kerning first=337 second=305 amount=-1 +kerning first=325 second=266 amount=-2 +kerning first=368 second=65 amount=-4 +kerning first=291 second=245 amount=-2 +kerning first=1025 second=1062 amount=-1 +kerning first=1059 second=1083 amount=-5 +kerning first=75 second=46 amount=-1 +kerning first=211 second=226 amount=-1 +kerning first=193 second=336 amount=-3 +kerning first=69 second=362 amount=-2 +kerning first=263 second=111 amount=-1 +kerning first=255 second=245 amount=-3 +kerning first=111 second=46 amount=-3 +kerning first=87 second=252 amount=-1 +kerning first=79 second=202 amount=-2 +kerning first=310 second=219 amount=-2 +kerning first=282 second=102 amount=-2 +kerning first=205 second=122 amount=-1 +kerning first=283 second=226 amount=-2 +kerning first=274 second=219 amount=-2 +kerning first=8222 second=118 amount=-3 +kerning first=354 second=102 amount=-1 +kerning first=1031 second=1086 amount=-1 +kerning first=100 second=122 amount=-1 +kerning first=355 second=226 amount=-1 +kerning first=217 second=266 amount=-1 +kerning first=202 second=219 amount=-2 +kerning first=254 second=8250 amount=-2 +kerning first=1057 second=1042 amount=-1 +kerning first=8220 second=234 amount=-3 +kerning first=120 second=316 amount=-1 +kerning first=225 second=316 amount=-1 +kerning first=8217 second=267 amount=-3 +kerning first=261 second=316 amount=-1 +kerning first=219 second=245 amount=-2 +kerning first=269 second=335 amount=-1 +kerning first=280 second=259 amount=-1 +kerning first=65 second=79 amount=-3 +kerning first=244 second=259 amount=-1 +kerning first=333 second=316 amount=-2 +kerning first=192 second=252 amount=-3 +kerning first=352 second=259 amount=-2 +kerning first=369 second=316 amount=-2 +kerning first=333 second=119 amount=-2 +kerning first=78 second=245 amount=-2 +kerning first=377 second=335 amount=-1 +kerning first=316 second=259 amount=-2 +kerning first=70 second=226 amount=-2 +kerning first=264 second=252 amount=-2 +kerning first=323 second=246 amount=-2 +kerning first=1027 second=1082 amount=-2 +kerning first=88 second=45 amount=-4 +kerning first=268 second=224 amount=-2 +kerning first=219 second=369 amount=-1 +kerning first=103 second=259 amount=-3 +kerning first=71 second=382 amount=-1 +kerning first=287 second=246 amount=-2 +kerning first=1063 second=1082 amount=-1 +kerning first=305 second=103 amount=-2 +kerning first=90 second=356 amount=-2 +kerning first=251 second=246 amount=-1 +kerning first=347 second=375 amount=-3 +kerning first=291 second=369 amount=-1 +kerning first=208 second=259 amount=-1 +kerning first=235 second=116 amount=-1 +kerning first=311 second=375 amount=-1 +kerning first=255 second=369 amount=-1 +kerning first=233 second=103 amount=-3 +kerning first=1054 second=1103 amount=-1 +kerning first=212 second=382 amount=-2 +kerning first=83 second=253 amount=-2 +kerning first=8250 second=331 amount=-2 +kerning first=197 second=103 amount=-3 +kerning first=229 second=45 amount=-2 +kerning first=370 second=109 amount=-2 +kerning first=74 second=246 amount=-1 +kerning first=305 second=117 amount=-1 +kerning first=224 second=253 amount=-3 +kerning first=78 second=369 amount=-2 +kerning first=76 second=266 amount=-1 +kerning first=100 second=249 amount=-1 +kerning first=98 second=375 amount=-3 +kerning first=205 second=279 amount=-2 +kerning first=377 second=332 amount=-1 +kerning first=226 second=109 amount=-1 +kerning first=313 second=122 amount=-3 +kerning first=354 second=362 amount=-1 +kerning first=277 second=279 amount=-1 +kerning first=277 second=122 amount=-2 +kerning first=78 second=242 amount=-2 +kerning first=241 second=122 amount=-1 +kerning first=219 second=242 amount=-2 +kerning first=275 second=375 amount=-2 +kerning first=85 second=109 amount=-2 +kerning first=363 second=369 amount=-1 +kerning first=248 second=382 amount=-2 +kerning first=327 second=369 amount=-2 +kerning first=284 second=382 amount=-1 +kerning first=291 second=242 amount=-2 +kerning first=210 second=362 amount=-1 +kerning first=100 second=279 amount=-1 +kerning first=379 second=116 amount=-1 +kerning first=255 second=242 amount=-3 +kerning first=121 second=109 amount=-2 +kerning first=377 second=103 amount=-3 +kerning first=356 second=382 amount=-3 +kerning first=70 second=223 amount=-1 +kerning first=363 second=242 amount=-1 +kerning first=201 second=227 amount=-1 +kerning first=327 second=242 amount=-2 +kerning first=275 second=115 amount=-2 +kerning first=332 second=68 amount=-2 +kerning first=103 second=355 amount=-1 +kerning first=278 second=370 amount=-2 +kerning first=202 second=80 amount=-2 +kerning first=106 second=223 amount=-1 +kerning first=203 second=115 amount=-1 +kerning first=100 second=119 amount=-2 +kerning first=352 second=355 amount=-1 +kerning first=356 second=237 amount=-2 +kerning first=350 second=370 amount=-3 +kerning first=363 second=363 amount=-1 +kerning first=316 second=355 amount=-1 +kerning first=205 second=119 amount=-2 +kerning first=1057 second=1070 amount=-1 +kerning first=211 second=198 amount=-4 +kerning first=311 second=115 amount=-2 +kerning first=241 second=119 amount=-3 +kerning first=288 second=203 amount=-1 +kerning first=347 second=115 amount=-3 +kerning first=244 second=355 amount=-1 +kerning first=277 second=119 amount=-2 +kerning first=1060 second=1103 amount=-1 +kerning first=313 second=119 amount=-3 +kerning first=8222 second=90 amount=-1 +kerning first=8216 second=235 amount=-3 +kerning first=1025 second=1090 amount=-3 +kerning first=203 second=284 amount=-1 +kerning first=296 second=253 amount=-2 +kerning first=350 second=113 amount=-1 +kerning first=266 second=108 amount=-1 +kerning first=84 second=313 amount=-1 +kerning first=274 second=315 amount=-2 +kerning first=368 second=253 amount=-1 +kerning first=338 second=108 amount=-1 +kerning first=1103 second=1105 amount=-1 +kerning first=1061 second=1059 amount=-3 +kerning first=274 second=80 amount=-2 +kerning first=377 second=75 amount=-1 +kerning first=1031 second=1105 amount=-1 +kerning first=346 second=80 amount=-3 +kerning first=1067 second=1105 amount=-1 +kerning first=65 second=370 amount=-3 +kerning first=83 second=68 amount=-3 +kerning first=1025 second=1059 amount=-3 +kerning first=352 second=231 amount=-1 +kerning first=232 second=269 amount=-1 +kerning first=224 second=225 amount=-1 +kerning first=356 second=45 amount=-5 +kerning first=196 second=269 amount=-1 +kerning first=303 second=328 amount=-2 +kerning first=315 second=196 amount=-2 +kerning first=197 second=335 amount=-1 +kerning first=304 second=269 amount=-2 +kerning first=379 second=356 amount=-2 +kerning first=316 second=231 amount=-1 +kerning first=296 second=225 amount=-2 +kerning first=233 second=335 amount=-1 +kerning first=268 second=269 amount=-2 +kerning first=231 second=328 amount=-2 +kerning first=376 second=269 amount=-3 +kerning first=346 second=315 amount=-3 +kerning first=83 second=225 amount=-2 +kerning first=230 second=108 amount=-3 +kerning first=197 second=363 amount=-3 +kerning first=119 second=225 amount=-3 +kerning first=375 second=328 amount=-2 +kerning first=233 second=363 amount=-2 +kerning first=105 second=102 amount=-2 +kerning first=216 second=203 amount=-2 +kerning first=122 second=277 amount=-1 +kerning first=324 second=46 amount=-1 +kerning first=87 second=280 amount=-1 +kerning first=269 second=363 amount=-2 +kerning first=257 second=46 amount=-1 +kerning first=67 second=231 amount=-2 +kerning first=278 second=198 amount=-2 +kerning first=305 second=363 amount=-1 +kerning first=8250 second=303 amount=-1 +kerning first=235 second=8217 amount=-2 +kerning first=246 second=102 amount=-1 +kerning first=363 second=273 amount=-1 +kerning first=377 second=363 amount=-3 +kerning first=332 second=225 amount=-1 +kerning first=264 second=280 amount=-3 +kerning first=291 second=273 amount=-2 +kerning first=194 second=8221 amount=-5 +kerning first=113 second=231 amount=-1 +kerning first=103 second=231 amount=-2 +kerning first=1086 second=1076 amount=-2 +kerning first=255 second=273 amount=-3 +kerning first=252 second=46 amount=-2 +kerning first=336 second=280 amount=-2 +kerning first=69 second=102 amount=-2 +kerning first=1050 second=1076 amount=-1 +kerning first=288 second=46 amount=-3 +kerning first=362 second=245 amount=-2 +kerning first=221 second=261 amount=-5 +kerning first=257 second=261 amount=-1 +kerning first=206 second=367 amount=-2 +kerning first=1060 second=1118 amount=-1 +kerning first=1057 second=1067 amount=-1 +kerning first=65 second=367 amount=-3 +kerning first=218 second=210 amount=-1 +kerning first=101 second=367 amount=-2 +kerning first=72 second=211 amount=-2 +kerning first=45 second=352 amount=-3 +kerning first=307 second=8220 amount=-2 +kerning first=200 second=296 amount=-2 +kerning first=368 second=250 amount=-1 +kerning first=80 second=261 amount=-1 +kerning first=1043 second=1092 amount=-3 +kerning first=321 second=211 amount=-1 +kerning first=379 second=351 amount=-2 +kerning first=77 second=210 amount=-2 +kerning first=354 second=275 amount=-3 +kerning first=235 second=8220 amount=-2 +kerning first=272 second=296 amount=-2 +kerning first=81 second=352 amount=-1 +kerning first=262 second=112 amount=-3 +kerning first=260 second=250 amount=-3 +kerning first=98 second=378 amount=-2 +kerning first=200 second=327 amount=-2 +kerning first=224 second=250 amount=-1 +kerning first=208 second=86 amount=-2 +kerning first=321 second=326 amount=-1 +kerning first=203 second=378 amount=-2 +kerning first=272 second=327 amount=-2 +kerning first=120 second=122 amount=-2 +kerning first=8216 second=232 amount=-3 +kerning first=325 second=212 amount=-2 +kerning first=121 second=112 amount=-2 +kerning first=99 second=235 amount=-1 +kerning first=296 second=250 amount=-2 +kerning first=8250 second=325 amount=-5 +kerning first=85 second=112 amount=-2 +kerning first=83 second=250 amount=-1 +kerning first=365 second=261 amount=-1 +kerning first=204 second=235 amount=-2 +kerning first=108 second=326 amount=-1 +kerning first=352 second=86 amount=-3 +kerning first=1024 second=1118 amount=-1 +kerning first=90 second=328 amount=-1 +kerning first=119 second=250 amount=-1 +kerning first=102 second=171 amount=-3 +kerning first=222 second=206 amount=-2 +kerning first=117 second=237 amount=-2 +kerning first=84 second=288 amount=-3 +kerning first=296 second=365 amount=-2 +kerning first=81 second=237 amount=-1 +kerning first=260 second=365 amount=-3 +kerning first=45 second=237 amount=-1 +kerning first=365 second=113 amount=-1 +kerning first=280 second=262 amount=-1 +kerning first=224 second=365 amount=-1 +kerning first=67 second=83 amount=-3 +kerning first=197 second=100 amount=-1 +kerning first=307 second=355 amount=-1 +kerning first=253 second=353 amount=-3 +kerning first=315 second=171 amount=-1 +kerning first=1114 second=1113 amount=-1 +kerning first=370 second=112 amount=-2 +kerning first=111 second=382 amount=-2 +kerning first=289 second=353 amount=-3 +kerning first=351 second=171 amount=-1 +kerning first=269 second=100 amount=-1 +kerning first=347 second=378 amount=-2 +kerning first=1042 second=1113 amount=-1 +kerning first=208 second=83 amount=-1 +kerning first=89 second=113 amount=-3 +kerning first=298 second=112 amount=-1 +kerning first=222 second=352 amount=-1 +kerning first=213 second=323 amount=-2 +kerning first=280 second=83 amount=-2 +kerning first=200 second=46 amount=-1 +kerning first=112 second=353 amount=-2 +kerning first=332 second=289 amount=-1 +kerning first=80 second=113 amount=-1 +kerning first=352 second=83 amount=-1 +kerning first=264 second=249 amount=-2 +kerning first=70 second=198 amount=-3 +kerning first=258 second=352 amount=-3 +kerning first=217 second=353 amount=-2 +kerning first=1054 second=1078 amount=-1 +kerning first=366 second=352 amount=-3 +kerning first=105 second=275 amount=-1 +kerning first=370 second=337 amount=-2 +kerning first=330 second=352 amount=-2 +kerning first=321 second=323 amount=-2 +kerning first=1006 second=997 amount=-2 +kerning first=257 second=113 amount=-1 +kerning first=1092 second=1091 amount=-1 +kerning first=67 second=262 amount=-3 +kerning first=221 second=113 amount=-3 +kerning first=275 second=353 amount=-2 +kerning first=283 second=223 amount=-1 +kerning first=354 second=332 amount=-3 +kerning first=111 second=291 amount=-2 +kerning first=350 second=339 amount=-1 +kerning first=117 second=324 amount=-1 +kerning first=199 second=233 amount=-2 +kerning first=379 second=379 amount=-1 +kerning first=354 second=99 amount=-3 +kerning first=313 second=304 amount=-2 +kerning first=336 second=364 amount=-1 +kerning first=80 second=289 amount=-3 +kerning first=8220 second=346 amount=-1 +kerning first=8222 second=121 amount=-1 +kerning first=116 second=289 amount=-2 +kerning first=314 second=339 amount=-1 +kerning first=264 second=364 amount=-2 +kerning first=1045 second=1102 amount=-1 +kerning first=192 second=249 amount=-3 +kerning first=214 second=274 amount=-2 +kerning first=221 second=289 amount=-4 +kerning first=262 second=84 amount=-1 +kerning first=228 second=249 amount=-1 +kerning first=257 second=289 amount=-2 +kerning first=258 second=89 amount=-6 +kerning first=103 second=114 amount=-1 +kerning first=45 second=324 amount=-2 +kerning first=87 second=249 amount=-1 +kerning first=222 second=89 amount=-2 +kerning first=1057 second=1039 amount=-1 +kerning first=379 second=233 amount=-1 +kerning first=76 second=350 amount=-1 +kerning first=65 second=339 amount=-1 +kerning first=67 second=234 amount=-2 +kerning first=103 second=234 amount=-2 +kerning first=366 second=237 amount=-2 +kerning first=1051 second=1114 amount=-1 +kerning first=286 second=274 amount=-1 +kerning first=105 second=99 amount=-1 +kerning first=334 second=84 amount=-2 +kerning first=330 second=237 amount=-1 +kerning first=221 second=110 amount=-3 +kerning first=268 second=212 amount=-3 +kerning first=1114 second=1116 amount=-1 +kerning first=206 second=339 amount=-2 +kerning first=257 second=110 amount=-1 +kerning first=192 second=121 amount=-3 +kerning first=332 second=8217 amount=-2 +kerning first=258 second=237 amount=-1 +kerning first=199 second=379 amount=-2 +kerning first=101 second=339 amount=-1 +kerning first=222 second=237 amount=-1 +kerning first=366 second=324 amount=-2 +kerning first=217 second=350 amount=-3 +kerning first=365 second=110 amount=-1 +kerning first=88 second=362 amount=-2 +kerning first=352 second=234 amount=-1 +kerning first=315 second=199 amount=-1 +kerning first=1058 second=1084 amount=-2 +kerning first=89 second=111 amount=-3 +kerning first=325 second=350 amount=-2 +kerning first=1092 second=1119 amount=-1 +kerning first=222 second=209 amount=-2 +kerning first=120 second=375 amount=-3 +kerning first=228 second=277 amount=-1 +kerning first=67 second=86 amount=-1 +kerning first=258 second=103 amount=-3 +kerning first=192 second=277 amount=-1 +kerning first=286 second=302 amount=-1 +kerning first=379 second=264 amount=-1 +kerning first=8220 second=259 amount=-3 +kerning first=203 second=260 amount=-2 +kerning first=316 second=234 amount=-1 +kerning first=264 second=277 amount=-2 +kerning first=214 second=302 amount=-2 +kerning first=365 second=289 amount=-3 +kerning first=374 second=111 amount=-3 +kerning first=235 second=351 amount=-2 +kerning first=81 second=89 amount=-2 +kerning first=8218 second=259 amount=-2 +kerning first=199 second=264 amount=-3 +kerning first=344 second=212 amount=-3 +kerning first=66 second=199 amount=-3 +kerning first=1064 second=1054 amount=-1 +kerning first=87 second=277 amount=-3 +kerning first=307 second=351 amount=-2 +kerning first=314 second=367 amount=-2 +kerning first=194 second=111 amount=-1 +kerning first=213 second=354 amount=-2 +kerning first=89 second=377 amount=-3 +kerning first=350 second=367 amount=-1 +kerning first=296 second=275 amount=-2 +kerning first=377 second=72 amount=-1 +kerning first=230 second=111 amount=-1 +kerning first=192 second=364 amount=-3 +kerning first=81 second=209 amount=-2 +kerning first=242 second=367 amount=-1 +kerning first=207 second=199 amount=-2 +kerning first=266 second=111 amount=-2 +kerning first=199 second=351 amount=-2 +kerning first=45 second=209 amount=-5 +kerning first=200 second=212 amount=-1 +kerning first=278 second=367 amount=-2 +kerning first=302 second=111 amount=-2 +kerning first=321 second=354 amount=-3 +kerning first=87 second=364 amount=-1 +kerning first=352 second=111 amount=-1 +kerning first=89 second=362 amount=-1 +kerning first=87 second=264 amount=-3 +kerning first=321 second=351 amount=-1 +kerning first=110 second=361 amount=-1 +kerning first=259 second=8249 amount=-2 +kerning first=105 second=121 amount=-3 +kerning first=266 second=377 amount=-2 +kerning first=1088 second=1074 amount=-1 +kerning first=8217 second=119 amount=-1 +kerning first=67 second=85 amount=-2 +kerning first=233 second=244 amount=-1 +kerning first=295 second=8249 amount=-3 +kerning first=199 second=364 amount=-2 +kerning first=1117 second=1077 amount=-1 +kerning first=363 second=257 amount=-1 +kerning first=73 second=277 amount=-2 +kerning first=230 second=97 amount=-2 +kerning first=374 second=377 amount=-3 +kerning first=287 second=361 amount=-1 +kerning first=291 second=257 amount=-3 +kerning first=264 second=367 amount=-2 +kerning first=117 second=311 amount=-2 +kerning first=1081 second=1077 amount=-1 +kerning first=108 second=351 amount=-2 +kerning first=251 second=361 amount=-1 +kerning first=226 second=254 amount=-1 +kerning first=327 second=257 amount=-2 +kerning first=118 second=8249 amount=-4 +kerning first=75 second=287 amount=-2 +kerning first=356 second=267 amount=-3 +kerning first=262 second=254 amount=-1 +kerning first=219 second=257 amount=-3 +kerning first=192 second=367 amount=-3 +kerning first=338 second=377 amount=-1 +kerning first=316 second=111 amount=-1 +kerning first=323 second=361 amount=-2 +kerning first=255 second=257 amount=-3 +kerning first=46 second=8249 amount=-3 +kerning first=221 second=274 amount=-1 +kerning first=381 second=374 amount=-2 +kerning first=374 second=117 amount=-2 +kerning first=235 second=261 amount=-2 +kerning first=87 second=367 amount=-2 +kerning first=111 second=287 amount=-2 +kerning first=338 second=117 amount=-2 +kerning first=260 second=244 amount=-1 +kerning first=69 second=381 amount=-1 +kerning first=252 second=287 amount=-3 +kerning first=122 second=44 amount=-1 +kerning first=8216 second=226 amount=-3 +kerning first=307 second=261 amount=-2 +kerning first=296 second=244 amount=-2 +kerning first=354 second=121 amount=-3 +kerning first=80 second=274 amount=-1 +kerning first=216 second=287 amount=-1 +kerning first=307 second=104 amount=-1 +kerning first=121 second=254 amount=-1 +kerning first=324 second=287 amount=-2 +kerning first=354 second=250 amount=-2 +kerning first=368 second=244 amount=-2 +kerning first=210 second=381 amount=-2 +kerning first=288 second=287 amount=-3 +kerning first=201 second=374 amount=-1 +kerning first=246 second=121 amount=-3 +kerning first=323 second=237 amount=-1 +kerning first=331 second=8249 amount=-3 +kerning first=282 second=381 amount=-1 +kerning first=287 second=237 amount=-2 +kerning first=307 second=114 amount=-1 +kerning first=367 second=8249 amount=-2 +kerning first=1049 second=1104 amount=-1 +kerning first=112 second=378 amount=-2 +kerning first=194 second=281 amount=-1 +kerning first=228 second=107 amount=-1 +kerning first=221 second=171 amount=-5 +kerning first=375 second=337 amount=-3 +kerning first=197 second=347 amount=-2 +kerning first=230 second=281 amount=-1 +kerning first=192 second=107 amount=-2 +kerning first=257 second=171 amount=-2 +kerning first=339 second=337 amount=-1 +kerning first=370 second=97 amount=-3 +kerning first=352 second=240 amount=-1 +kerning first=282 second=250 amount=-2 +kerning first=217 second=378 amount=-3 +kerning first=266 second=281 amount=-2 +kerning first=8220 second=89 amount=-1 +kerning first=303 second=337 amount=-3 +kerning first=1104 second=1078 amount=-1 +kerning first=89 second=117 amount=-2 +kerning first=246 second=250 amount=-1 +kerning first=302 second=281 amount=-2 +kerning first=264 second=107 amount=-1 +kerning first=1048 second=1047 amount=-1 +kerning first=230 second=117 amount=-2 +kerning first=379 second=261 amount=-1 +kerning first=44 second=171 amount=-3 +kerning first=194 second=117 amount=-3 +kerning first=274 second=197 amount=-2 +kerning first=80 second=171 amount=-3 +kerning first=65 second=354 amount=-6 +kerning first=302 second=117 amount=-2 +kerning first=105 second=250 amount=-1 +kerning first=89 second=281 amount=-3 +kerning first=116 second=171 amount=-1 +kerning first=266 second=117 amount=-2 +kerning first=69 second=250 amount=-2 +kerning first=346 second=197 amount=-4 +kerning first=291 second=100 amount=-2 +kerning first=103 second=240 amount=-2 +kerning first=114 second=257 amount=-1 +kerning first=327 second=100 amount=-2 +kerning first=244 second=371 amount=-1 +kerning first=83 second=74 amount=-2 +kerning first=203 second=288 amount=-1 +kerning first=363 second=100 amount=-1 +kerning first=8220 second=246 amount=-3 +kerning first=278 second=354 amount=-1 +kerning first=67 second=240 amount=-2 +kerning first=78 second=257 amount=-2 +kerning first=264 second=264 amount=-3 +kerning first=289 second=378 amount=-3 +kerning first=365 second=171 amount=-2 +kerning first=115 second=314 amount=-2 +kerning first=350 second=354 amount=-3 +kerning first=316 second=240 amount=-1 +kerning first=253 second=378 amount=-3 +kerning first=256 second=314 amount=-2 +kerning first=192 second=264 amount=-3 +kerning first=219 second=100 amount=-2 +kerning first=103 second=371 amount=-1 +kerning first=305 second=347 amount=-1 +kerning first=296 second=74 amount=-1 +kerning first=274 second=338 amount=-1 +kerning first=1085 second=1104 amount=-1 +kerning first=255 second=100 amount=-3 +kerning first=325 second=378 amount=-1 +kerning first=332 second=74 amount=-2 +kerning first=328 second=314 amount=-1 +kerning first=220 second=255 amount=-1 +kerning first=195 second=71 amount=-3 +kerning first=200 second=311 amount=-1 +kerning first=217 second=90 amount=-1 +kerning first=290 second=207 amount=-1 +kerning first=1101 second=1114 amount=-1 +kerning first=45 second=330 amount=-5 +kerning first=313 second=298 amount=-2 +kerning first=81 second=330 amount=-2 +kerning first=101 second=224 amount=-2 +kerning first=8249 second=84 amount=-3 +kerning first=376 second=291 amount=-4 +kerning first=86 second=317 amount=-1 +kerning first=72 second=214 amount=-2 +kerning first=206 second=224 amount=-2 +kerning first=90 second=71 amount=-1 +kerning first=257 second=234 amount=-1 +kerning first=222 second=330 amount=-2 +kerning first=304 second=291 amount=-3 +kerning first=1038 second=1108 amount=-4 +kerning first=268 second=291 amount=-3 +kerning first=104 second=318 amount=-1 +kerning first=317 second=200 amount=-2 +kerning first=278 second=224 amount=-1 +kerning first=232 second=291 amount=-3 +kerning first=242 second=224 amount=-1 +kerning first=195 second=213 amount=-3 +kerning first=196 second=291 amount=-3 +kerning first=236 second=324 amount=-2 +kerning first=350 second=224 amount=-1 +kerning first=200 second=324 amount=-1 +kerning first=245 second=318 amount=-2 +kerning first=85 second=97 amount=-3 +kerning first=84 second=346 amount=-3 +kerning first=314 second=224 amount=-2 +kerning first=380 second=311 amount=-2 +kerning first=267 second=337 amount=-1 +kerning first=281 second=318 amount=-3 +kerning first=298 second=97 amount=-2 +kerning first=90 second=77 amount=-1 +kerning first=344 second=311 amount=-3 +kerning first=86 second=304 amount=-1 +kerning first=231 second=337 amount=-1 +kerning first=87 second=101 amount=-3 +kerning first=334 second=97 amount=-1 +kerning first=195 second=337 amount=-1 +kerning first=353 second=318 amount=-2 +kerning first=226 second=97 amount=-1 +kerning first=192 second=101 amount=-1 +kerning first=262 second=97 amount=-2 +kerning first=236 second=311 amount=-1 +kerning first=76 second=90 amount=-3 +kerning first=317 second=303 amount=-2 +kerning first=228 second=101 amount=-1 +kerning first=371 second=44 amount=-2 +kerning first=117 second=234 amount=-1 +kerning first=354 second=381 amount=-3 +kerning first=353 second=303 amount=-2 +kerning first=264 second=101 amount=-2 +kerning first=335 second=44 amount=-3 +kerning first=45 second=70 amount=-5 +kerning first=8220 second=83 amount=-1 +kerning first=272 second=193 amount=-4 +kerning first=1089 second=1098 amount=-1 +kerning first=281 second=303 amount=-2 +kerning first=1092 second=1107 amount=-1 +kerning first=235 second=104 amount=-2 +kerning first=222 second=70 amount=-2 +kerning first=290 second=325 amount=-1 +kerning first=380 second=324 amount=-2 +kerning first=199 second=104 amount=-1 +kerning first=81 second=70 amount=-2 +kerning first=101 second=249 amount=-2 +kerning first=263 second=44 amount=-3 +kerning first=82 second=284 amount=-3 +kerning first=90 second=213 amount=-1 +kerning first=108 second=227 amount=-2 +kerning first=67 second=111 amount=-2 +kerning first=282 second=316 amount=-1 +kerning first=78 second=251 amount=-2 +kerning first=72 second=227 amount=-2 +kerning first=317 second=194 amount=-2 +kerning first=103 second=111 amount=-2 +kerning first=72 second=351 amount=-2 +kerning first=219 second=251 amount=-1 +kerning first=321 second=85 amount=-3 +kerning first=258 second=234 amount=-1 +kerning first=291 second=251 amount=-1 +kerning first=209 second=303 amount=-1 +kerning first=255 second=251 amount=-1 +kerning first=213 second=85 amount=-1 +kerning first=249 second=227 amount=-1 +kerning first=330 second=234 amount=-2 +kerning first=68 second=303 amount=-1 +kerning first=290 second=201 amount=-1 +kerning first=363 second=251 amount=-1 +kerning first=310 second=211 amount=-3 +kerning first=213 second=227 amount=-1 +kerning first=366 second=234 amount=-2 +kerning first=1074 second=1093 amount=-1 +kerning first=104 second=303 amount=-1 +kerning first=250 second=277 amount=-1 +kerning first=356 second=90 amount=-3 +kerning first=327 second=251 amount=-2 +kerning first=290 second=310 amount=-1 +kerning first=344 second=97 amount=-2 +kerning first=275 second=118 amount=-2 +kerning first=289 second=105 amount=-2 +kerning first=73 second=283 amount=-2 +kerning first=258 second=231 amount=-1 +kerning first=325 second=105 amount=-1 +kerning first=347 second=118 amount=-3 +kerning first=217 second=105 amount=-2 +kerning first=311 second=118 amount=-1 +kerning first=253 second=105 amount=-2 +kerning first=80 second=280 amount=-1 +kerning first=98 second=118 amount=-2 +kerning first=201 second=368 amount=-2 +kerning first=112 second=105 amount=-1 +kerning first=233 second=245 amount=-1 +kerning first=250 second=283 amount=-1 +kerning first=197 second=245 amount=-1 +kerning first=203 second=118 amount=-1 +kerning first=221 second=280 amount=-1 +kerning first=356 second=8249 amount=-5 +kerning first=76 second=105 amount=-2 +kerning first=375 second=228 amount=-3 +kerning first=199 second=84 amount=-1 +kerning first=316 second=337 amount=-1 +kerning first=289 second=241 amount=-1 +kerning first=339 second=228 amount=-2 +kerning first=303 second=228 amount=-2 +kerning first=283 second=335 amount=-1 +kerning first=201 second=108 amount=-1 +kerning first=1045 second=1083 amount=-1 +kerning first=122 second=326 amount=-2 +kerning first=200 second=193 amount=-2 +kerning first=112 second=241 amount=-1 +kerning first=221 second=353 amount=-3 +kerning first=70 second=335 amount=-1 +kerning first=1116 second=1092 amount=-2 +kerning first=253 second=241 amount=-2 +kerning first=106 second=335 amount=-1 +kerning first=199 second=370 amount=-2 +kerning first=90 second=228 amount=-1 +kerning first=363 second=122 amount=-2 +kerning first=375 second=331 amount=-2 +kerning first=1063 second=1085 amount=-1 +kerning first=251 second=231 amount=-1 +kerning first=327 second=122 amount=-1 +kerning first=332 second=362 amount=-1 +kerning first=287 second=231 amount=-2 +kerning first=1063 second=1097 amount=-1 +kerning first=291 second=122 amount=-3 +kerning first=303 second=331 amount=-2 +kerning first=76 second=241 amount=-1 +kerning first=201 second=256 amount=-2 +kerning first=255 second=122 amount=-3 +kerning first=339 second=331 amount=-2 +kerning first=231 second=331 amount=-2 +kerning first=1050 second=1057 amount=-4 +kerning first=379 second=255 amount=-3 +kerning first=1027 second=1097 amount=-2 +kerning first=267 second=331 amount=-2 +kerning first=365 second=116 amount=-1 +kerning first=307 second=255 amount=-3 +kerning first=1043 second=1073 amount=-1 +kerning first=323 second=231 amount=-2 +kerning first=260 second=362 amount=-3 +kerning first=381 second=77 amount=-1 +kerning first=235 second=255 amount=-2 +kerning first=1025 second=1087 amount=-1 +kerning first=377 second=245 amount=-1 +kerning first=88 second=67 amount=-3 +kerning first=90 second=331 amount=-1 +kerning first=199 second=255 amount=-1 +kerning first=232 second=8250 amount=-2 +kerning first=377 second=81 amount=-1 +kerning first=1101 second=1095 amount=-1 +kerning first=378 second=261 amount=-1 +kerning first=1065 second=1095 amount=-3 +kerning first=83 second=362 amount=-3 +kerning first=269 second=245 amount=-1 +kerning first=321 second=214 amount=-1 +kerning first=219 second=122 amount=-3 +kerning first=203 second=266 amount=-1 +kerning first=74 second=231 amount=-2 +kerning first=90 second=65 amount=-1 +kerning first=78 second=122 amount=-1 +kerning first=249 second=345 amount=-1 +kerning first=356 second=282 amount=-1 +kerning first=377 second=229 amount=-1 +kerning first=378 second=307 amount=-1 +kerning first=79 second=217 amount=-1 +kerning first=1047 second=1053 amount=-2 +kerning first=1045 second=1099 amount=-1 +kerning first=284 second=282 amount=-1 +kerning first=305 second=229 amount=-1 +kerning first=200 second=305 amount=-1 +kerning first=88 second=333 amount=-2 +kerning first=1114 second=1084 amount=-1 +kerning first=202 second=68 amount=-2 +kerning first=310 second=216 amount=-3 +kerning first=321 second=122 amount=-3 +kerning first=212 second=282 amount=-2 +kerning first=272 second=305 amount=-1 +kerning first=256 second=217 amount=-3 +kerning first=76 second=74 amount=-1 +kerning first=236 second=305 amount=-2 +kerning first=74 second=346 amount=-1 +kerning first=255 second=106 amount=-2 +kerning first=332 second=80 amount=-2 +kerning first=193 second=67 amount=-3 +kerning first=197 second=81 amount=-3 +kerning first=71 second=282 amount=-1 +kerning first=314 second=230 amount=-2 +kerning first=363 second=106 amount=-2 +kerning first=350 second=230 amount=-2 +kerning first=380 second=305 amount=-2 +kerning first=242 second=230 amount=-1 +kerning first=278 second=230 amount=-1 +kerning first=74 second=243 amount=-2 +kerning first=211 second=204 amount=-2 +kerning first=229 second=333 amount=-1 +kerning first=234 second=307 amount=-2 +kerning first=206 second=230 amount=-2 +kerning first=193 second=333 amount=-1 +kerning first=374 second=281 amount=-3 +kerning first=199 second=378 amount=-2 +kerning first=101 second=230 amount=-2 +kerning first=113 second=242 amount=-1 +kerning first=323 second=346 amount=-2 +kerning first=274 second=334 amount=-1 +kerning first=206 second=79 amount=-2 +kerning first=287 second=243 amount=-2 +kerning first=8250 second=197 amount=-4 +kerning first=202 second=203 amount=-2 +kerning first=323 second=243 amount=-2 +kerning first=193 second=218 amount=-3 +kerning first=275 second=104 amount=-2 +kerning first=8222 second=225 amount=-2 +kerning first=310 second=334 amount=-3 +kerning first=266 second=318 amount=-1 +kerning first=302 second=268 amount=-2 +kerning first=8222 second=250 amount=-1 +kerning first=79 second=69 amount=-2 +kerning first=208 second=73 amount=-2 +kerning first=334 second=112 amount=-1 +kerning first=8218 second=354 amount=-6 +kerning first=266 second=268 amount=-3 +kerning first=83 second=244 amount=-1 +kerning first=204 second=332 amount=-2 +kerning first=278 second=79 amount=-1 +kerning first=277 second=8221 amount=-2 +kerning first=374 second=268 amount=-3 +kerning first=1052 second=1072 amount=-1 +kerning first=119 second=244 amount=-3 +kerning first=338 second=268 amount=-1 +kerning first=251 second=243 amount=-1 +kerning first=346 second=68 amount=-3 +kerning first=245 second=98 amount=-1 +kerning first=83 second=80 amount=-3 +kerning first=89 second=268 amount=-3 +kerning first=274 second=68 amount=-2 +kerning first=1108 second=1098 amount=-1 +kerning first=1072 second=1098 amount=-1 +kerning first=194 second=268 amount=-3 +kerning first=88 second=218 amount=-2 +kerning first=1059 second=1058 amount=-1 +kerning first=233 second=229 amount=-2 +kerning first=198 second=192 amount=-2 +kerning first=346 second=203 amount=-3 +kerning first=269 second=229 amount=-2 +kerning first=202 second=334 amount=-1 +kerning first=121 second=242 amount=-3 +kerning first=201 second=120 amount=-1 +kerning first=274 second=203 amount=-2 +kerning first=85 second=242 amount=-2 +kerning first=1074 second=1099 amount=-1 +kerning first=356 second=279 amount=-3 +kerning first=226 second=242 amount=-1 +kerning first=289 second=99 amount=-2 +kerning first=240 second=229 amount=-1 +kerning first=86 second=192 amount=-6 +kerning first=1038 second=1099 amount=-4 +kerning first=253 second=99 amount=-3 +kerning first=249 second=339 amount=-1 +kerning first=377 second=232 amount=-1 +kerning first=298 second=242 amount=-2 +kerning first=8218 second=224 amount=-2 +kerning first=214 second=289 amount=-1 +kerning first=108 second=339 amount=-1 +kerning first=262 second=242 amount=-2 +kerning first=325 second=99 amount=-2 +kerning first=204 second=229 amount=-2 +kerning first=370 second=242 amount=-2 +kerning first=286 second=289 amount=-3 +kerning first=269 second=232 amount=-1 +kerning first=313 second=282 amount=-2 +kerning first=45 second=249 amount=-1 +kerning first=233 second=232 amount=-1 +kerning first=71 second=119 amount=-1 +kerning first=1045 second=1096 amount=-1 +kerning first=107 second=119 amount=-1 +kerning first=269 second=326 amount=-2 +kerning first=226 second=106 amount=-1 +kerning first=262 second=106 amount=-1 +kerning first=81 second=346 amount=-1 +kerning first=121 second=106 amount=-2 +kerning first=248 second=119 amount=-2 +kerning first=197 second=232 amount=-1 +kerning first=45 second=346 amount=-3 +kerning first=284 second=119 amount=-1 +kerning first=264 second=379 amount=-2 +kerning first=330 second=346 amount=-2 +kerning first=1043 second=1079 amount=-1 +kerning first=350 second=82 amount=-3 +kerning first=356 second=119 amount=-3 +kerning first=336 second=379 amount=-2 +kerning first=258 second=346 amount=-3 +kerning first=1049 second=1116 amount=-1 +kerning first=217 second=99 amount=-2 +kerning first=222 second=346 amount=-1 +kerning first=334 second=106 amount=-1 +kerning first=73 second=289 amount=-3 +kerning first=379 second=73 amount=-1 +kerning first=1102 second=1095 amount=-1 +kerning first=72 second=79 amount=-2 +kerning first=321 second=69 amount=-2 +kerning first=278 second=82 amount=-2 +kerning first=193 second=212 amount=-3 +kerning first=79 second=66 amount=-2 +kerning first=113 second=316 amount=-2 +kerning first=1049 second=1119 amount=-1 +kerning first=1045 second=1042 amount=-1 +kerning first=88 second=212 amount=-3 +kerning first=45 second=196 amount=-4 +kerning first=311 second=269 amount=-3 +kerning first=213 second=69 amount=-2 +kerning first=315 second=302 amount=-2 +kerning first=244 second=98 amount=-1 +kerning first=254 second=316 amount=-2 +kerning first=346 second=350 amount=-1 +kerning first=275 second=269 amount=-1 +kerning first=202 second=216 amount=-1 +kerning first=336 second=8217 amount=-2 +kerning first=1036 second=1089 amount=-2 +kerning first=200 second=199 amount=-1 +kerning first=321 second=79 amount=-1 +kerning first=274 second=216 amount=-1 +kerning first=79 second=205 amount=-2 +kerning first=99 second=229 amount=-2 +kerning first=74 second=89 amount=-1 +kerning first=81 second=76 amount=-2 +kerning first=344 second=199 amount=-3 +kerning first=228 second=8217 amount=-3 +kerning first=100 second=106 amount=-1 +kerning first=45 second=76 amount=-5 +kerning first=304 second=245 amount=-2 +kerning first=289 second=102 amount=-1 +kerning first=226 second=245 amount=-1 +kerning first=209 second=46 amount=-1 +kerning first=220 second=251 amount=-1 +kerning first=258 second=336 amount=-3 +kerning first=245 second=46 amount=-3 +kerning first=1036 second=1060 amount=-4 +kerning first=121 second=245 amount=-3 +kerning first=73 second=286 amount=-2 +kerning first=1088 second=1098 amount=-1 +kerning first=8250 second=318 amount=-1 +kerning first=85 second=245 amount=-2 +kerning first=112 second=102 amount=-1 +kerning first=366 second=336 amount=-1 +kerning first=370 second=245 amount=-2 +kerning first=354 second=266 amount=-3 +kerning first=335 second=8221 amount=-2 +kerning first=112 second=46 amount=-3 +kerning first=1036 second=1086 amount=-2 +kerning first=217 second=102 amount=-1 +kerning first=8218 second=227 amount=-2 +kerning first=298 second=245 amount=-2 +kerning first=282 second=266 amount=-1 +kerning first=104 second=46 amount=-1 +kerning first=1088 second=1083 amount=-2 +kerning first=262 second=245 amount=-2 +kerning first=199 second=252 amount=-2 +kerning first=86 second=202 amount=-1 +kerning first=236 second=45 amount=-3 +kerning first=281 second=316 amount=-3 +kerning first=326 second=316 amount=-1 +kerning first=121 second=103 amount=-3 +kerning first=344 second=45 amount=-4 +kerning first=315 second=296 amount=-2 +kerning first=246 second=347 amount=-2 +kerning first=85 second=103 amount=-4 +kerning first=195 second=219 amount=-3 +kerning first=307 second=252 amount=-1 +kerning first=208 second=364 amount=-1 +kerning first=99 second=226 amount=-2 +kerning first=380 second=45 amount=-3 +kerning first=204 second=335 amount=-2 +kerning first=381 second=259 amount=-1 +kerning first=204 second=226 amount=-2 +kerning first=240 second=226 amount=-1 +kerning first=76 second=253 amount=-3 +kerning first=85 second=369 amount=-1 +kerning first=112 second=253 amount=-3 +kerning first=246 second=375 amount=-3 +kerning first=66 second=85 amount=-3 +kerning first=345 second=259 amount=-1 +kerning first=1067 second=1073 amount=-1 +kerning first=217 second=253 amount=-1 +kerning first=352 second=246 amount=-1 +kerning first=121 second=369 amount=-1 +kerning first=370 second=103 amount=-4 +kerning first=187 second=287 amount=-3 +kerning first=316 second=246 amount=-1 +kerning first=334 second=103 amount=-1 +kerning first=8218 second=85 amount=-3 +kerning first=289 second=253 amount=-1 +kerning first=379 second=252 amount=-3 +kerning first=87 second=116 amount=-1 +kerning first=83 second=356 amount=-3 +kerning first=298 second=103 amount=-3 +kerning first=325 second=253 amount=-2 +kerning first=354 second=375 amount=-3 +kerning first=201 second=259 amount=-1 +kerning first=262 second=103 amount=-3 +kerning first=192 second=116 amount=-1 +kerning first=74 second=83 amount=-1 +kerning first=226 second=103 amount=-2 +kerning first=296 second=267 amount=-2 +kerning first=255 second=382 amount=-3 +kerning first=212 second=122 amount=-2 +kerning first=103 second=246 amount=-2 +kerning first=370 second=369 amount=-1 +kerning first=291 second=382 amount=-3 +kerning first=363 second=109 amount=-1 +kerning first=67 second=246 amount=-2 +kerning first=107 second=279 amount=-3 +kerning first=8220 second=240 amount=-3 +kerning first=327 second=382 amount=-1 +kerning first=79 second=323 amount=-2 +kerning first=363 second=382 amount=-2 +kerning first=71 second=122 amount=-1 +kerning first=262 second=369 amount=-2 +kerning first=65 second=81 amount=-3 +kerning first=255 second=109 amount=-2 +kerning first=356 second=122 amount=-3 +kerning first=226 second=369 amount=-1 +kerning first=323 second=83 amount=-2 +kerning first=69 second=266 amount=-1 +kerning first=284 second=122 amount=-1 +kerning first=298 second=369 amount=-2 +kerning first=76 second=362 amount=-3 +kerning first=332 second=356 amount=-2 +kerning first=219 second=382 amount=-3 +kerning first=291 second=109 amount=-1 +kerning first=248 second=122 amount=-2 +kerning first=1088 second=1080 amount=-1 +kerning first=240 second=223 amount=-1 +kerning first=105 second=115 amount=-2 +kerning first=8218 second=230 amount=-2 +kerning first=218 second=198 amount=-4 +kerning first=298 second=248 amount=-2 +kerning first=101 second=233 amount=-1 +kerning first=1038 second=1105 amount=-4 +kerning first=83 second=90 amount=-1 +kerning first=69 second=115 amount=-1 +kerning first=290 second=198 amount=-3 +kerning first=226 second=248 amount=-1 +kerning first=201 second=380 amount=-2 +kerning first=354 second=263 amount=-3 +kerning first=86 second=109 amount=-3 +kerning first=363 second=117 amount=-1 +kerning first=206 second=233 amount=-2 +kerning first=85 second=248 amount=-2 +kerning first=376 second=288 amount=-3 +kerning first=121 second=248 amount=-3 +kerning first=171 second=89 amount=-3 +kerning first=117 second=307 amount=-2 +kerning first=99 second=223 amount=-1 +kerning first=246 second=115 amount=-2 +kerning first=290 second=313 amount=-1 +kerning first=68 second=315 amount=-2 +kerning first=350 second=233 amount=-1 +kerning first=112 second=365 amount=-1 +kerning first=314 second=233 amount=-1 +kerning first=76 second=365 amount=-2 +kerning first=202 second=213 amount=-1 +kerning first=354 second=115 amount=-3 +kerning first=287 second=355 amount=-1 +kerning first=248 second=249 amount=-1 +kerning first=251 second=355 amount=-1 +kerning first=274 second=213 amount=-1 +kerning first=198 second=298 amount=-2 +kerning first=83 second=350 amount=-1 +kerning first=87 second=110 amount=-3 +kerning first=222 second=73 amount=-2 +kerning first=362 second=198 amount=-4 +kerning first=105 second=263 amount=-1 +kerning first=310 second=213 amount=-3 +kerning first=228 second=110 amount=-1 +kerning first=354 second=377 amount=-3 +kerning first=260 second=350 amount=-3 +kerning first=202 second=328 amount=-1 +kerning first=264 second=110 amount=-1 +kerning first=45 second=73 amount=-5 +kerning first=296 second=350 amount=-2 +kerning first=85 second=363 amount=-1 +kerning first=211 second=325 amount=-2 +kerning first=216 second=303 amount=-1 +kerning first=8250 second=203 amount=-5 +kerning first=90 second=225 amount=-1 +kerning first=81 second=73 amount=-2 +kerning first=103 second=98 amount=-1 +kerning first=97 second=328 amount=-1 +kerning first=121 second=363 amount=-1 +kerning first=67 second=98 amount=-1 +kerning first=65 second=85 amount=-3 +kerning first=258 second=221 amount=-6 +kerning first=346 second=328 amount=-1 +kerning first=226 second=363 amount=-1 +kerning first=324 second=303 amount=-1 +kerning first=262 second=363 amount=-2 +kerning first=200 second=196 amount=-2 +kerning first=222 second=205 amount=-2 +kerning first=68 second=200 amount=-2 +kerning first=286 second=44 amount=-3 +kerning first=317 second=315 amount=-2 +kerning first=332 second=350 amount=-1 +kerning first=274 second=328 amount=-1 +kerning first=298 second=363 amount=-2 +kerning first=252 second=303 amount=-2 +kerning first=222 second=221 amount=-2 +kerning first=368 second=350 amount=-3 +kerning first=69 second=260 amount=-2 +kerning first=272 second=196 amount=-4 +kerning first=339 second=225 amount=-2 +kerning first=352 second=98 amount=-2 +kerning first=366 second=264 amount=-1 +kerning first=210 second=260 amount=-4 +kerning first=370 second=363 amount=-1 +kerning first=381 second=380 amount=-3 +kerning first=375 second=225 amount=-3 +kerning first=316 second=98 amount=-1 +kerning first=82 second=290 amount=-3 +kerning first=282 second=260 amount=-2 +kerning first=382 second=328 amount=-2 +kerning first=1045 second=1093 amount=-2 +kerning first=354 second=260 amount=-6 +kerning first=103 second=117 amount=-1 +kerning first=350 second=85 amount=-3 +kerning first=231 second=225 amount=-2 +kerning first=267 second=225 amount=-2 +kerning first=8222 second=375 amount=-1 +kerning first=280 second=98 amount=-1 +kerning first=278 second=85 amount=-2 +kerning first=303 second=225 amount=-2 +kerning first=1074 second=1102 amount=-1 +kerning first=78 second=112 amount=-1 +kerning first=8249 second=374 amount=-3 +kerning first=1052 second=1077 amount=-1 +kerning first=8250 second=382 amount=-5 +kerning first=261 second=107 amount=-1 +kerning first=87 second=261 amount=-5 +kerning first=307 second=367 amount=-1 +kerning first=45 second=302 amount=-5 +kerning first=199 second=367 amount=-2 +kerning first=74 second=352 amount=-1 +kerning first=235 second=367 amount=-2 +kerning first=278 second=351 amount=-1 +kerning first=381 second=111 amount=-1 +kerning first=242 second=351 amount=-2 +kerning first=266 second=315 amount=-3 +kerning first=350 second=351 amount=-1 +kerning first=201 second=377 amount=-1 +kerning first=328 second=326 amount=-1 +kerning first=314 second=351 amount=-2 +kerning first=336 second=8220 amount=-2 +kerning first=364 second=326 amount=-2 +kerning first=1036 second=1092 amount=-2 +kerning first=363 second=112 amount=-2 +kerning first=338 second=78 amount=-2 +kerning first=88 second=252 amount=-3 +kerning first=73 second=171 amount=-4 +kerning first=197 second=235 amount=-1 +kerning first=115 second=326 amount=-2 +kerning first=327 second=112 amount=-1 +kerning first=109 second=171 amount=-3 +kerning first=74 second=86 amount=-1 +kerning first=233 second=235 amount=-1 +kerning first=220 second=211 amount=-1 +kerning first=82 second=287 amount=-3 +kerning first=291 second=112 amount=-1 +kerning first=291 second=113 amount=-2 +kerning first=192 second=8220 amount=-5 +kerning first=381 second=377 amount=-1 +kerning first=269 second=235 amount=-1 +kerning first=256 second=211 amount=-3 +kerning first=255 second=112 amount=-2 +kerning first=228 second=261 amount=-1 +kerning first=217 second=250 amount=-1 +kerning first=66 second=302 amount=-4 +kerning first=219 second=112 amount=-2 +kerning first=264 second=261 amount=-2 +kerning first=118 second=287 amount=-3 +kerning first=8220 second=243 amount=-3 +kerning first=377 second=235 amount=-1 +kerning first=364 second=211 amount=-1 +kerning first=104 second=121 amount=-2 +kerning first=1047 second=1103 amount=-2 +kerning first=114 second=112 amount=1 +kerning first=194 second=363 amount=-3 +kerning first=253 second=250 amount=-1 +kerning first=260 second=353 amount=-2 +kerning first=251 second=237 amount=-2 +kerning first=282 second=378 amount=-2 +kerning first=331 second=287 amount=-2 +kerning first=264 second=113 amount=-2 +kerning first=296 second=353 amount=-2 +kerning first=8216 second=335 amount=-3 +kerning first=246 second=378 amount=-2 +kerning first=295 second=287 amount=-2 +kerning first=228 second=113 amount=-1 +kerning first=381 second=262 amount=-1 +kerning first=119 second=261 amount=-3 +kerning first=354 second=378 amount=-3 +kerning first=112 second=250 amount=-1 +kerning first=192 second=113 amount=-1 +kerning first=368 second=353 amount=-2 +kerning first=110 second=237 amount=-1 +kerning first=367 second=287 amount=-3 +kerning first=325 second=365 amount=-2 +kerning first=74 second=237 amount=-2 +kerning first=105 second=378 amount=-1 +kerning first=262 second=366 amount=-2 +kerning first=289 second=365 amount=-1 +kerning first=69 second=378 amount=-2 +kerning first=250 second=171 amount=-2 +kerning first=253 second=365 amount=-1 +kerning first=374 second=242 amount=-3 +kerning first=281 second=369 amount=-2 +kerning first=286 second=171 amount=-3 +kerning first=370 second=100 amount=-2 +kerning first=224 second=353 amount=-1 +kerning first=87 second=379 amount=-3 +kerning first=66 second=171 amount=-3 +kerning first=199 second=249 amount=-2 +kerning first=268 second=288 amount=-3 +kerning first=233 second=109 amount=-2 +kerning first=317 second=197 amount=-2 +kerning first=1025 second=1078 amount=-2 +kerning first=323 second=352 amount=-2 +kerning first=235 second=249 amount=-2 +kerning first=377 second=87 amount=-2 +kerning first=73 second=112 amount=-1 +kerning first=226 second=100 amount=-1 +kerning first=381 second=216 amount=-1 +kerning first=304 second=288 amount=-2 +kerning first=262 second=100 amount=-2 +kerning first=275 second=275 amount=-1 +kerning first=197 second=87 amount=-6 +kerning first=87 second=113 amount=-3 +kerning first=201 second=262 amount=-1 +kerning first=221 second=202 amount=-1 +kerning first=1056 second=1104 amount=-1 +kerning first=196 second=288 amount=-3 +kerning first=307 second=249 amount=-1 +kerning first=85 second=100 amount=-2 +kerning first=80 second=243 amount=-1 +kerning first=90 second=117 amount=-3 +kerning first=213 second=217 amount=-1 +kerning first=122 second=314 amount=-2 +kerning first=377 second=115 amount=-2 +kerning first=378 second=106 amount=-2 +kerning first=346 second=218 amount=-3 +kerning first=70 second=269 amount=-1 +kerning first=327 second=288 amount=-2 +kerning first=227 second=314 amount=-1 +kerning first=321 second=217 amount=-3 +kerning first=198 second=366 amount=-2 +kerning first=316 second=333 amount=-1 +kerning first=78 second=288 amount=-2 +kerning first=68 second=68 amount=-2 +kerning first=234 second=113 amount=-1 +kerning first=106 second=269 amount=-1 +kerning first=1047 second=1118 amount=-1 +kerning first=219 second=288 amount=-1 +kerning first=371 second=314 amount=-2 +kerning first=352 second=333 amount=-1 +kerning first=117 second=224 amount=-1 +kerning first=45 second=367 amount=-1 +kerning first=268 second=198 amount=-3 +kerning first=88 second=262 amount=-3 +kerning first=81 second=224 amount=-1 +kerning first=381 second=281 amount=-1 +kerning first=254 second=307 amount=-1 +kerning first=283 second=269 amount=-1 +kerning first=222 second=224 amount=-1 +kerning first=195 second=210 amount=-3 +kerning first=337 second=255 amount=-3 +kerning first=193 second=262 amount=-3 +kerning first=326 second=307 amount=-1 +kerning first=257 second=243 amount=-1 +kerning first=370 second=326 amount=-2 +kerning first=90 second=210 amount=-1 +kerning first=45 second=257 amount=-1 +kerning first=229 second=255 amount=-3 +kerning first=202 second=197 amount=-2 +kerning first=366 second=224 amount=-3 +kerning first=193 second=255 amount=-3 +kerning first=330 second=224 amount=-2 +kerning first=381 second=274 amount=-1 +kerning first=203 second=229 amount=-1 +kerning first=280 second=73 amount=-2 +kerning first=86 second=75 amount=-1 +kerning first=98 second=229 amount=-1 +kerning first=8220 second=256 amount=-8 +kerning first=352 second=73 amount=-3 +kerning first=199 second=101 amount=-2 +kerning first=252 second=99 amount=-1 +kerning first=235 second=101 amount=-1 +kerning first=376 second=198 amount=-6 +kerning first=347 second=229 amount=-1 +kerning first=216 second=120 amount=-1 +kerning first=8217 second=81 amount=-2 +kerning first=296 second=118 amount=-2 +kerning first=252 second=120 amount=-2 +kerning first=307 second=101 amount=-1 +kerning first=275 second=229 amount=-2 +kerning first=283 second=248 amount=-1 +kerning first=311 second=229 amount=-2 +kerning first=368 second=118 amount=-2 +kerning first=324 second=120 amount=-1 +kerning first=90 second=203 amount=-1 +kerning first=379 second=101 amount=-1 +kerning first=69 second=108 amount=-1 +kerning first=208 second=80 amount=-2 +kerning first=378 second=113 amount=-1 +kerning first=119 second=118 amount=-1 +kerning first=321 second=196 amount=-2 +kerning first=233 second=347 amount=-2 +kerning first=337 second=8220 amount=-2 +kerning first=260 second=118 amount=-3 +kerning first=352 second=226 amount=-2 +kerning first=280 second=80 amount=-2 +kerning first=224 second=118 amount=-3 +kerning first=334 second=87 amount=-2 +kerning first=67 second=80 amount=-3 +kerning first=213 second=196 amount=-4 +kerning first=288 second=198 amount=-3 +kerning first=229 second=8220 amount=-3 +kerning first=234 second=106 amount=-2 +kerning first=262 second=87 amount=-1 +kerning first=83 second=118 amount=-3 +kerning first=317 second=68 amount=-2 +kerning first=75 second=99 amount=-2 +kerning first=88 second=8220 amount=-2 +kerning first=356 second=249 amount=-1 +kerning first=224 second=111 amount=-1 +kerning first=1057 second=1113 amount=-1 +kerning first=280 second=361 amount=-2 +kerning first=260 second=111 amount=-1 +kerning first=65 second=364 amount=-3 +kerning first=221 second=264 amount=-3 +kerning first=244 second=361 amount=-1 +kerning first=296 second=111 amount=-2 +kerning first=8217 second=116 amount=-1 +kerning first=352 second=361 amount=-1 +kerning first=68 second=89 amount=-2 +kerning first=316 second=361 amount=-2 +kerning first=78 second=267 amount=-2 +kerning first=278 second=364 amount=-2 +kerning first=1064 second=1116 amount=-1 +kerning first=291 second=267 amount=-2 +kerning first=83 second=111 amount=-1 +kerning first=255 second=316 amount=-2 +kerning first=76 second=368 amount=-3 +kerning first=327 second=267 amount=-2 +kerning first=119 second=111 amount=-3 +kerning first=291 second=316 amount=-3 +kerning first=347 second=257 amount=-1 +kerning first=219 second=267 amount=-2 +kerning first=230 second=233 amount=-1 +kerning first=1100 second=1116 amount=-1 +kerning first=255 second=267 amount=-3 +kerning first=278 second=104 amount=-1 +kerning first=334 second=66 amount=-2 +kerning first=211 second=44 amount=-3 +kerning first=242 second=104 amount=-1 +kerning first=381 second=337 amount=-1 +kerning first=317 second=89 amount=-3 +kerning first=262 second=66 amount=-3 +kerning first=283 second=44 amount=-3 +kerning first=1057 second=1057 amount=-1 +kerning first=368 second=111 amount=-2 +kerning first=119 second=353 amount=-3 +kerning first=1057 second=1114 amount=-1 +kerning first=103 second=361 amount=-1 +kerning first=286 second=205 amount=-1 +kerning first=201 second=274 amount=-2 +kerning first=1088 second=1117 amount=-1 +kerning first=67 second=361 amount=-2 +kerning first=350 second=104 amount=-2 +kerning first=106 second=44 amount=-2 +kerning first=314 second=104 amount=-1 +kerning first=70 second=44 amount=-3 +kerning first=314 second=97 amount=-2 +kerning first=226 second=326 amount=-1 +kerning first=347 second=250 amount=-1 +kerning first=370 second=347 amount=-2 +kerning first=201 second=302 amount=-2 +kerning first=89 second=278 amount=-1 +kerning first=350 second=97 amount=-2 +kerning first=262 second=326 amount=-1 +kerning first=311 second=250 amount=-1 +kerning first=376 second=226 amount=-5 +kerning first=83 second=378 amount=-2 +kerning first=346 second=346 amount=-1 +kerning first=242 second=97 amount=-1 +kerning first=298 second=347 amount=-2 +kerning first=214 second=205 amount=-2 +kerning first=278 second=97 amount=-1 +kerning first=262 second=347 amount=-2 +kerning first=1057 second=1095 amount=-2 +kerning first=226 second=347 amount=-1 +kerning first=224 second=371 amount=-1 +kerning first=266 second=278 amount=-3 +kerning first=85 second=326 amount=-2 +kerning first=73 second=233 amount=-2 +kerning first=8220 second=277 amount=-3 +kerning first=298 second=229 amount=-2 +kerning first=374 second=278 amount=-1 +kerning first=121 second=326 amount=-2 +kerning first=275 second=250 amount=-2 +kerning first=1030 second=1116 amount=-1 +kerning first=1039 second=1099 amount=-1 +kerning first=338 second=278 amount=-2 +kerning first=262 second=354 amount=-1 +kerning first=85 second=347 amount=-2 +kerning first=332 second=378 amount=-2 +kerning first=368 second=90 amount=-1 +kerning first=263 second=103 amount=-3 +kerning first=363 second=316 amount=-2 +kerning first=275 second=257 amount=-2 +kerning first=376 second=219 amount=-1 +kerning first=296 second=378 amount=-1 +kerning first=332 second=90 amount=-2 +kerning first=227 second=103 amount=-2 +kerning first=334 second=354 amount=-2 +kerning first=250 second=233 amount=-1 +kerning first=311 second=257 amount=-2 +kerning first=103 second=333 amount=-2 +kerning first=280 second=45 amount=-2 +kerning first=98 second=250 amount=-1 +kerning first=119 second=371 amount=-1 +kerning first=203 second=257 amount=-1 +kerning first=368 second=378 amount=-3 +kerning first=122 second=103 amount=-2 +kerning first=381 second=302 amount=-1 +kerning first=73 second=212 amount=-2 +kerning first=268 second=219 amount=-2 +kerning first=8222 second=253 amount=-1 +kerning first=86 second=103 amount=-4 +kerning first=98 second=257 amount=-1 +kerning first=1057 second=1092 amount=-1 +kerning first=119 second=378 amount=-3 +kerning first=316 second=45 amount=-3 +kerning first=1057 second=1085 amount=-1 +kerning first=86 second=110 amount=-3 +kerning first=232 second=226 amount=-2 +kerning first=365 second=271 amount=-1 +kerning first=196 second=219 amount=-3 +kerning first=1093 second=1092 amount=-2 +kerning first=248 second=8250 amount=-2 +kerning first=122 second=110 amount=-2 +kerning first=268 second=226 amount=-2 +kerning first=67 second=333 amount=-2 +kerning first=224 second=378 amount=-1 +kerning first=304 second=226 amount=-2 +kerning first=227 second=110 amount=-1 +kerning first=122 second=363 amount=-2 +kerning first=250 second=240 amount=-1 +kerning first=278 second=214 amount=-1 +kerning first=1031 second=1098 amount=-1 +kerning first=1072 second=1114 amount=-1 +kerning first=1064 second=1088 amount=-1 +kerning first=227 second=363 amount=-1 +kerning first=284 second=86 amount=-3 +kerning first=1050 second=1089 amount=-2 +kerning first=1100 second=1088 amount=-1 +kerning first=335 second=110 amount=-1 +kerning first=263 second=363 amount=-2 +kerning first=330 second=259 amount=-2 +kerning first=88 second=318 amount=-1 +kerning first=371 second=110 amount=-2 +kerning first=211 second=220 amount=-1 +kerning first=202 second=65 amount=-2 +kerning first=379 second=353 amount=-2 +kerning first=335 second=363 amount=-1 +kerning first=1103 second=1108 amount=-1 +kerning first=193 second=318 amount=-2 +kerning first=280 second=284 amount=-1 +kerning first=1108 second=1114 amount=-1 +kerning first=274 second=65 amount=-2 +kerning first=366 second=259 amount=-3 +kerning first=229 second=318 amount=-1 +kerning first=206 second=214 amount=-2 +kerning first=205 second=369 amount=-2 +kerning first=277 second=116 amount=-1 +kerning first=75 second=71 amount=-3 +kerning first=346 second=65 amount=-4 +kerning first=117 second=259 amount=-1 +kerning first=201 second=330 amount=-2 +kerning first=277 second=369 amount=-2 +kerning first=337 second=318 amount=-2 +kerning first=65 second=214 amount=-3 +kerning first=241 second=369 amount=-1 +kerning first=222 second=259 amount=-1 +kerning first=1057 second=1096 amount=-1 +kerning first=211 second=304 amount=-2 +kerning first=100 second=116 amount=-1 +kerning first=73 second=240 amount=-2 +kerning first=206 second=97 amount=-2 +kerning first=351 second=225 amount=-1 +kerning first=100 second=369 amount=-1 +kerning first=81 second=259 amount=-1 +kerning first=381 second=330 amount=-1 +kerning first=45 second=259 amount=-1 +kerning first=101 second=97 amount=-2 +kerning first=324 second=324 amount=-1 +kerning first=1104 second=1075 amount=-1 +kerning first=224 second=228 amount=-1 +kerning first=246 second=253 amount=-3 +kerning first=68 second=377 amount=-2 +kerning first=113 second=279 amount=-1 +kerning first=112 second=375 amount=-3 +kerning first=119 second=228 amount=-3 +kerning first=195 second=374 amount=-6 +kerning first=76 second=375 amount=-3 +kerning first=232 second=254 amount=-2 +kerning first=83 second=228 amount=-1 +kerning first=218 second=279 amount=-2 +kerning first=354 second=253 amount=-3 +kerning first=66 second=209 amount=-4 +kerning first=118 second=355 amount=-1 +kerning first=90 second=374 amount=-2 +kerning first=325 second=375 amount=-2 +kerning first=313 second=369 amount=-2 +kerning first=111 second=324 amount=-1 +kerning first=268 second=337 amount=-2 +kerning first=82 second=355 amount=-3 +kerning first=289 second=375 amount=-1 +kerning first=252 second=324 amount=-1 +kerning first=99 second=273 amount=-1 +kerning first=77 second=279 amount=-2 +kerning first=346 second=8221 amount=-2 +kerning first=217 second=375 amount=-1 +kerning first=220 second=332 amount=-1 +kerning first=223 second=355 amount=-1 +kerning first=1067 second=1108 amount=-1 +kerning first=105 second=45 amount=-3 +kerning first=1104 second=1103 amount=-2 +kerning first=187 second=355 amount=-1 +kerning first=201 second=287 amount=-3 +kerning first=317 second=377 amount=-3 +kerning first=1031 second=1108 amount=-1 +kerning first=88 second=234 amount=-2 +kerning first=262 second=298 amount=-3 +kerning first=81 second=287 amount=-1 +kerning first=256 second=332 amount=-3 +kerning first=67 second=284 amount=-3 +kerning first=45 second=287 amount=-3 +kerning first=8250 second=356 amount=-4 +kerning first=193 second=234 amount=-1 +kerning first=364 second=332 amount=-1 +kerning first=334 second=298 amount=-2 +kerning first=367 second=355 amount=-1 +kerning first=198 second=310 amount=-2 +kerning first=229 second=234 amount=-1 +kerning first=1096 second=1077 amount=-1 +kerning first=86 second=363 amount=-2 +kerning first=1071 second=1119 amount=-1 +kerning first=117 second=287 amount=-3 +kerning first=362 second=279 amount=-2 +kerning first=1051 second=1088 amount=-1 +kerning first=258 second=287 amount=-3 +kerning first=212 second=313 amount=-2 +kerning first=371 second=335 amount=-3 +kerning first=289 second=108 amount=-3 +kerning first=198 second=338 amount=-1 +kerning first=193 second=290 amount=-3 +kerning first=222 second=8217 amount=-2 +kerning first=222 second=287 amount=-1 +kerning first=258 second=8217 amount=-5 +kerning first=197 second=242 amount=-1 +kerning first=330 second=287 amount=-3 +kerning first=380 second=118 amount=-2 +kerning first=381 second=105 amount=-1 +kerning first=99 second=245 amount=-1 +kerning first=269 second=242 amount=-1 +kerning first=76 second=197 amount=-2 +kerning first=233 second=242 amount=-1 +kerning first=366 second=287 amount=-4 +kerning first=71 second=313 amount=-1 +kerning first=201 second=105 amount=-1 +kerning first=88 second=290 amount=-3 +kerning first=117 second=8217 amount=-3 +kerning first=1074 second=1083 amount=-1 +kerning first=217 second=197 amount=-4 +kerning first=216 second=380 amount=-2 +kerning first=334 second=270 amount=-2 +kerning first=1064 second=1060 amount=-1 +kerning first=105 second=225 amount=-2 +kerning first=1049 second=1094 amount=-1 +kerning first=252 second=380 amount=-2 +kerning first=1086 second=1117 amount=-1 +kerning first=377 second=242 amount=-1 +kerning first=86 second=335 amount=-3 +kerning first=76 second=108 amount=-2 +kerning first=87 second=119 amount=-3 +kerning first=1077 second=1085 amount=-1 +kerning first=330 second=231 amount=-2 +kerning first=210 second=225 amount=-1 +kerning first=122 second=335 amount=-1 +kerning first=324 second=380 amount=-1 +kerning first=84 second=90 amount=-3 +kerning first=366 second=231 amount=-2 +kerning first=246 second=225 amount=-1 +kerning first=192 second=119 amount=-3 +kerning first=1060 second=1049 amount=-1 +kerning first=368 second=228 amount=-3 +kerning first=112 second=108 amount=-2 +kerning first=228 second=119 amount=-3 +kerning first=1024 second=1049 amount=-1 +kerning first=332 second=228 amount=-1 +kerning first=1061 second=1118 amount=-2 +kerning first=253 second=108 amount=-2 +kerning first=264 second=119 amount=-1 +kerning first=262 second=270 amount=-3 +kerning first=296 second=228 amount=-2 +kerning first=89 second=74 amount=-4 +kerning first=69 second=225 amount=-1 +kerning first=235 second=122 amount=-2 +kerning first=374 second=46 amount=-5 +kerning first=199 second=122 amount=-2 +kerning first=296 second=83 amount=-2 +kerning first=67 second=256 amount=-3 +kerning first=117 second=231 amount=-1 +kerning first=85 second=328 amount=-2 +kerning first=187 second=102 amount=-1 +kerning first=216 second=352 amount=-1 +kerning first=376 second=201 amount=-1 +kerning first=266 second=74 amount=-2 +kerning first=223 second=102 amount=-1 +kerning first=8250 second=328 amount=-2 +kerning first=379 second=122 amount=-3 +kerning first=302 second=74 amount=-1 +kerning first=280 second=256 amount=-2 +kerning first=288 second=352 amount=-2 +kerning first=1031 second=1080 amount=-1 +kerning first=282 second=225 amount=-1 +kerning first=338 second=74 amount=-1 +kerning first=87 second=211 amount=-3 +kerning first=208 second=352 amount=-1 +kerning first=374 second=74 amount=-4 +kerning first=208 second=256 amount=-4 +kerning first=113 second=307 amount=-1 +kerning first=354 second=225 amount=-5 +kerning first=1092 second=1097 amount=-1 +kerning first=338 second=46 amount=-1 +kerning first=1067 second=1080 amount=-1 +kerning first=83 second=200 amount=-3 +kerning first=89 second=46 amount=-5 +kerning first=264 second=211 amount=-3 +kerning first=204 second=245 amount=-2 +kerning first=352 second=256 amount=-4 +kerning first=192 second=211 amount=-3 +kerning first=259 second=102 amount=-1 +kerning first=295 second=102 amount=-1 +kerning first=331 second=102 amount=-1 +kerning first=367 second=102 amount=-1 +kerning first=115 second=171 amount=-1 +kerning first=212 second=112 amount=-1 +kerning first=8250 second=68 amount=-5 +kerning first=362 second=216 amount=-1 +kerning first=256 second=107 amount=-2 +kerning first=220 second=171 amount=-5 +kerning first=77 second=44 amount=-1 +kerning first=107 second=112 amount=-1 +kerning first=379 second=211 amount=-1 +kerning first=256 second=171 amount=-4 +kerning first=71 second=112 amount=-1 +kerning first=1043 second=1086 amount=-3 +kerning first=208 second=8221 amount=-2 +kerning first=115 second=107 amount=-1 +kerning first=244 second=8221 amount=-2 +kerning first=218 second=216 amount=-1 +kerning first=232 second=237 amount=-2 +kerning first=280 second=205 amount=-2 +kerning first=351 second=261 amount=-1 +kerning first=328 second=251 amount=-1 +kerning first=338 second=105 amount=-1 +kerning first=79 second=171 amount=-1 +kerning first=81 second=323 amount=-2 +kerning first=374 second=105 amount=-2 +kerning first=352 second=8221 amount=-2 +kerning first=1063 second=1072 amount=-1 +kerning first=364 second=100 amount=-2 +kerning first=266 second=105 amount=-1 +kerning first=8218 second=217 amount=-3 +kerning first=289 second=235 amount=-2 +kerning first=1027 second=1072 amount=-3 +kerning first=302 second=105 amount=-1 +kerning first=325 second=235 amount=-2 +kerning first=187 second=296 amount=-5 +kerning first=272 second=209 amount=-2 +kerning first=194 second=105 amount=-1 +kerning first=303 second=110 amount=-2 +kerning first=316 second=8221 amount=-3 +kerning first=1099 second=1072 amount=-1 +kerning first=230 second=105 amount=-2 +kerning first=119 second=119 amount=-1 +kerning first=220 second=100 amount=-2 +kerning first=1079 second=1117 amount=-1 +kerning first=356 second=112 amount=-2 +kerning first=89 second=105 amount=-2 +kerning first=195 second=86 amount=-6 +kerning first=1027 second=1113 amount=-3 +kerning first=328 second=171 amount=-3 +kerning first=256 second=100 amount=-1 +kerning first=1043 second=1117 amount=-2 +kerning first=1071 second=1098 amount=-1 +kerning first=120 second=251 amount=-3 +kerning first=364 second=171 amount=-5 +kerning first=211 second=85 amount=-1 +kerning first=284 second=112 amount=-1 +kerning first=356 second=81 amount=-3 +kerning first=90 second=86 amount=-2 +kerning first=84 second=251 amount=-2 +kerning first=187 second=327 amount=-5 +kerning first=83 second=305 amount=-3 +kerning first=364 second=279 amount=-2 +kerning first=248 second=112 amount=-1 +kerning first=82 second=67 amount=-3 +kerning first=225 second=251 amount=-1 +kerning first=66 second=230 amount=-3 +kerning first=1027 second=1079 amount=-1 +kerning first=232 second=275 amount=-1 +kerning first=90 second=353 amount=-2 +kerning first=282 second=210 amount=-1 +kerning first=1063 second=1079 amount=-1 +kerning first=369 second=223 amount=-1 +kerning first=268 second=275 amount=-2 +kerning first=274 second=346 amount=-2 +kerning first=84 second=233 amount=-3 +kerning first=197 second=318 amount=-2 +kerning first=287 second=249 amount=-1 +kerning first=323 second=249 amount=-1 +kerning first=71 second=379 amount=-2 +kerning first=196 second=275 amount=-1 +kerning first=231 second=353 amount=-2 +kerning first=200 second=206 amount=-2 +kerning first=369 second=251 amount=-1 +kerning first=212 second=379 amount=-2 +kerning first=1053 second=1105 amount=-1 +kerning first=333 second=251 amount=-1 +kerning first=74 second=256 amount=-5 +kerning first=272 second=206 amount=-2 +kerning first=381 second=365 amount=-3 +kerning first=82 second=334 amount=-3 +kerning first=333 second=223 amount=-1 +kerning first=84 second=223 amount=-3 +kerning first=364 second=339 amount=-2 +kerning first=1113 second=1114 amount=-1 +kerning first=351 second=230 amount=-1 +kerning first=90 second=83 amount=-1 +kerning first=243 second=230 amount=-1 +kerning first=243 second=249 amount=-1 +kerning first=356 second=313 amount=-1 +kerning first=279 second=230 amount=-2 +kerning first=251 second=249 amount=-1 +kerning first=73 second=268 amount=-2 +kerning first=195 second=83 amount=-3 +kerning first=199 second=211 amount=-3 +kerning first=110 second=249 amount=-1 +kerning first=304 second=275 amount=-2 +kerning first=284 second=313 amount=-1 +kerning first=207 second=230 amount=-2 +kerning first=77 second=244 amount=-2 +kerning first=279 second=289 amount=-3 +kerning first=269 second=103 amount=-3 +kerning first=113 second=244 amount=-1 +kerning first=69 second=194 amount=-2 +kerning first=315 second=289 amount=-3 +kerning first=8250 second=65 amount=-4 +kerning first=380 second=237 amount=-1 +kerning first=220 second=192 amount=-4 +kerning first=351 second=289 amount=-3 +kerning first=248 second=109 amount=-1 +kerning first=218 second=244 amount=-2 +kerning first=71 second=344 amount=-1 +kerning first=323 second=284 amount=-2 +kerning first=1042 second=1091 amount=-1 +kerning first=220 second=339 amount=-2 +kerning first=272 second=237 amount=-1 +kerning first=1078 second=1091 amount=-2 +kerning first=79 second=192 amount=-4 +kerning first=235 second=98 amount=-2 +kerning first=256 second=339 amount=-1 +kerning first=1024 second=1084 amount=-1 +kerning first=236 second=237 amount=-1 +kerning first=1031 second=1116 amount=-1 +kerning first=1114 second=1091 amount=-2 +kerning first=200 second=237 amount=-1 +kerning first=362 second=244 amount=-2 +kerning first=220 second=199 amount=-1 +kerning first=253 second=45 amount=-4 +kerning first=107 second=116 amount=-1 +kerning first=354 second=194 amount=-6 +kerning first=253 second=232 amount=-3 +kerning first=217 second=232 amount=-2 +kerning first=325 second=232 amount=-2 +kerning first=374 second=77 amount=-1 +kerning first=66 second=289 amount=-4 +kerning first=287 second=277 amount=-2 +kerning first=202 second=346 amount=-2 +kerning first=210 second=194 amount=-4 +kerning first=102 second=289 amount=-2 +kerning first=251 second=277 amount=-1 +kerning first=84 second=282 amount=-1 +kerning first=207 second=289 amount=-3 +kerning first=323 second=277 amount=-2 +kerning first=8218 second=221 amount=-6 +kerning first=243 second=289 amount=-2 +kerning first=217 second=111 amount=-2 +kerning first=248 second=351 amount=-2 +kerning first=90 second=350 amount=-1 +kerning first=261 second=254 amount=-1 +kerning first=74 second=277 amount=-2 +kerning first=315 second=202 amount=-2 +kerning first=303 second=121 amount=-2 +kerning first=333 second=254 amount=-1 +kerning first=267 second=121 amount=-2 +kerning first=214 second=379 amount=-2 +kerning first=369 second=254 amount=-2 +kerning first=231 second=121 amount=-2 +kerning first=234 second=8221 amount=-2 +kerning first=1053 second=1102 amount=-1 +kerning first=377 second=69 amount=-1 +kerning first=200 second=209 amount=-2 +kerning first=195 second=121 amount=-3 +kerning first=328 second=367 amount=-1 +kerning first=1089 second=1102 amount=-1 +kerning first=1071 second=1095 amount=-1 +kerning first=120 second=254 amount=-3 +kerning first=364 second=367 amount=-1 +kerning first=195 second=350 amount=-3 +kerning first=110 second=305 amount=-1 +kerning first=90 second=121 amount=-3 +kerning first=256 second=367 amount=-3 +kerning first=1053 second=1074 amount=-1 +kerning first=107 second=351 amount=-2 +kerning first=225 second=254 amount=-1 +kerning first=74 second=305 amount=-2 +kerning first=1089 second=1074 amount=-1 +kerning first=284 second=344 amount=-1 +kerning first=375 second=114 amount=-1 +kerning first=256 second=79 amount=-3 +kerning first=104 second=117 amount=-1 +kerning first=74 second=284 amount=-2 +kerning first=207 second=261 amount=-2 +kerning first=220 second=367 amount=-1 +kerning first=1025 second=1096 amount=-1 +kerning first=245 second=117 amount=-1 +kerning first=77 second=216 amount=-2 +kerning first=287 second=305 amount=-1 +kerning first=346 second=374 amount=-3 +kerning first=303 second=114 amount=-1 +kerning first=244 second=252 amount=-1 +kerning first=1114 second=1119 amount=-1 +kerning first=351 second=117 amount=-1 +kerning first=251 second=305 amount=-1 +kerning first=85 second=260 amount=-4 +kerning first=364 second=199 amount=-1 +kerning first=339 second=114 amount=-1 +kerning first=115 second=367 amount=-1 +kerning first=220 second=79 amount=-1 +kerning first=118 second=353 amount=-3 +kerning first=317 second=117 amount=-2 +kerning first=274 second=374 amount=-1 +kerning first=231 second=114 amount=-1 +kerning first=356 second=351 amount=-3 +kerning first=281 second=117 amount=-2 +kerning first=79 second=72 amount=-2 +kerning first=323 second=305 amount=-1 +kerning first=267 second=114 amount=-1 +kerning first=364 second=192 amount=-4 +kerning first=202 second=374 amount=-1 +kerning first=66 second=261 amount=-3 +kerning first=353 second=117 amount=-1 +kerning first=1043 second=1089 amount=-3 +kerning first=1027 second=1051 amount=-5 +kerning first=262 second=260 amount=-3 +kerning first=102 second=261 amount=-2 +kerning first=364 second=79 amount=-1 +kerning first=381 second=361 amount=-3 +kerning first=121 second=291 amount=-3 +kerning first=370 second=260 amount=-4 +kerning first=337 second=311 amount=-1 +kerning first=248 second=316 amount=-2 +kerning first=315 second=286 amount=-1 +kerning first=85 second=291 amount=-4 +kerning first=334 second=260 amount=-4 +kerning first=207 second=352 amount=-2 +kerning first=284 second=316 amount=-1 +kerning first=367 second=331 amount=-1 +kerning first=8218 second=364 amount=-3 +kerning first=207 second=286 amount=-2 +kerning first=113 second=241 amount=-2 +kerning first=229 second=311 amount=-1 +kerning first=198 second=317 amount=-2 +kerning first=82 second=362 amount=-3 +kerning first=121 second=267 amount=-3 +kerning first=295 second=331 amount=-1 +kerning first=317 second=356 amount=-3 +kerning first=193 second=311 amount=-2 +kerning first=331 second=331 amount=-1 +kerning first=307 second=382 amount=-1 +kerning first=187 second=362 amount=-4 +kerning first=223 second=331 amount=-1 +kerning first=88 second=311 amount=-1 +kerning first=250 second=271 amount=-1 +kerning first=1064 second=1057 amount=-1 +kerning first=85 second=267 amount=-2 +kerning first=259 second=331 amount=-1 +kerning first=66 second=286 amount=-3 +kerning first=84 second=226 amount=-5 +kerning first=379 second=382 amount=-3 +kerning first=118 second=331 amount=-2 +kerning first=187 second=331 amount=-2 +kerning first=278 second=221 amount=-1 +kerning first=1086 second=1082 amount=-1 +kerning first=110 second=252 amount=-1 +kerning first=65 second=221 amount=-6 +kerning first=1024 second=1056 amount=-1 +kerning first=201 second=361 amount=-2 +kerning first=71 second=316 amount=-1 +kerning first=1060 second=1056 amount=-1 +kerning first=328 second=380 amount=-1 +kerning first=204 second=266 amount=-2 +kerning first=1024 second=1087 amount=-1 +kerning first=1053 second=1092 amount=-1 +kerning first=66 second=202 amount=-4 +kerning first=79 second=103 amount=-1 +kerning first=1049 second=1101 amount=-1 +kerning first=229 second=227 amount=-1 +kerning first=101 second=104 amount=-2 +kerning first=303 second=113 amount=-3 +kerning first=251 second=252 amount=-1 +kerning first=65 second=104 amount=-2 +kerning first=90 second=381 amount=-1 +kerning first=287 second=252 amount=-1 +kerning first=203 second=201 amount=-2 +kerning first=76 second=207 amount=-2 +kerning first=323 second=252 amount=-1 +kerning first=355 second=8249 amount=-1 +kerning first=337 second=227 amount=-1 +kerning first=1108 second=1107 amount=-1 +kerning first=120 second=226 amount=-2 +kerning first=74 second=45 amount=-4 +kerning first=71 second=84 amount=-3 +kerning first=1072 second=1107 amount=-1 +kerning first=264 second=246 amount=-2 +kerning first=364 second=103 amount=-4 +kerning first=74 second=336 amount=-2 +kerning first=228 second=246 amount=-1 +kerning first=68 second=356 amount=-2 +kerning first=328 second=103 amount=-2 +kerning first=370 second=291 amount=-4 +kerning first=87 second=346 amount=-3 +kerning first=199 second=382 amount=-2 +kerning first=1036 second=1104 amount=-2 +kerning first=192 second=246 amount=-1 +kerning first=261 second=226 amount=-1 +kerning first=334 second=291 amount=-1 +kerning first=235 second=382 amount=-2 +kerning first=110 second=45 amount=-3 +kerning first=284 second=84 amount=-3 +kerning first=356 second=109 amount=-3 +kerning first=256 second=103 amount=-3 +kerning first=298 second=291 amount=-3 +kerning first=251 second=45 amount=-2 +kerning first=87 second=246 amount=-3 +kerning first=333 second=226 amount=-1 +kerning first=220 second=103 amount=-4 +kerning first=262 second=291 amount=-3 +kerning first=88 second=227 amount=-1 +kerning first=212 second=84 amount=-2 +kerning first=369 second=226 amount=-1 +kerning first=226 second=291 amount=-2 +kerning first=334 second=259 amount=-1 +kerning first=323 second=45 amount=-4 +kerning first=87 second=78 amount=-1 +kerning first=115 second=103 amount=-3 +kerning first=323 second=336 amount=-2 +kerning first=287 second=45 amount=-3 +kerning first=370 second=263 amount=-2 +kerning first=192 second=218 amount=-3 +kerning first=250 second=243 amount=-1 +kerning first=362 second=213 amount=-1 +kerning first=121 second=100 amount=-3 +kerning first=89 second=313 amount=-1 +kerning first=1074 second=1090 amount=-1 +kerning first=226 second=263 amount=-1 +kerning first=336 second=218 amount=-1 +kerning first=198 second=314 amount=-1 +kerning first=112 second=115 amount=-2 +kerning first=262 second=263 amount=-2 +kerning first=350 second=193 amount=-4 +kerning first=73 second=243 amount=-2 +kerning first=298 second=263 amount=-2 +kerning first=77 second=269 amount=-2 +kerning first=264 second=218 amount=-2 +kerning first=356 second=288 amount=-3 +kerning first=229 second=8217 amount=-3 +kerning first=79 second=370 amount=-1 +kerning first=278 second=193 amount=-2 +kerning first=234 second=314 amount=-3 +kerning first=76 second=115 amount=-1 +kerning first=331 second=303 amount=-1 +kerning first=289 second=115 amount=-3 +kerning first=85 second=263 amount=-2 +kerning first=113 second=269 amount=-1 +kerning first=8218 second=97 amount=-2 +kerning first=1059 second=1100 amount=-4 +kerning first=208 second=8249 amount=-1 +kerning first=325 second=115 amount=-2 +kerning first=245 second=120 amount=-3 +kerning first=234 second=345 amount=-1 +kerning first=121 second=263 amount=-3 +kerning first=67 second=8249 amount=-4 +kerning first=259 second=303 amount=-1 +kerning first=217 second=115 amount=-2 +kerning first=281 second=120 amount=-2 +kerning first=201 second=365 amount=-2 +kerning first=218 second=269 amount=-2 +kerning first=103 second=8249 amount=-3 +kerning first=378 second=314 amount=-2 +kerning first=295 second=303 amount=-1 +kerning first=253 second=115 amount=-3 +kerning first=317 second=120 amount=-1 +kerning first=198 second=78 amount=-2 +kerning first=267 second=353 amount=-2 +kerning first=77 second=213 amount=-2 +kerning first=88 second=224 amount=-1 +kerning first=79 second=75 amount=-2 +kerning first=303 second=353 amount=-2 +kerning first=68 second=120 amount=-1 +kerning first=218 second=213 amount=-1 +kerning first=229 second=224 amount=-1 +kerning first=201 second=70 amount=-2 +kerning first=339 second=353 amount=-2 +kerning first=104 second=120 amount=-1 +kerning first=362 second=269 amount=-2 +kerning first=375 second=353 amount=-3 +kerning first=201 second=98 amount=-1 +kerning first=339 second=118 amount=-2 +kerning first=374 second=197 amount=-6 +kerning first=303 second=118 amount=-3 +kerning first=337 second=224 amount=-1 +kerning first=375 second=118 amount=-1 +kerning first=195 second=118 amount=-3 +kerning first=245 second=328 amount=-1 +kerning first=316 second=8249 amount=-3 +kerning first=187 second=303 amount=-1 +kerning first=65 second=101 amount=-1 +kerning first=364 second=196 amount=-4 +kerning first=74 second=259 amount=-3 +kerning first=352 second=8249 amount=-3 +kerning first=223 second=303 amount=-1 +kerning first=101 second=101 amount=-1 +kerning first=267 second=118 amount=-2 +kerning first=217 second=235 amount=-2 +kerning first=112 second=307 amount=-1 +kerning first=231 second=118 amount=-2 +kerning first=104 second=328 amount=-1 +kerning first=280 second=8249 amount=-2 +kerning first=118 second=303 amount=-2 +kerning first=206 second=101 amount=-2 +kerning first=253 second=235 amount=-3 +kerning first=362 second=241 amount=-2 +kerning first=220 second=196 amount=-4 +kerning first=353 second=328 amount=-2 +kerning first=326 second=241 amount=-1 +kerning first=266 second=243 amount=-2 +kerning first=193 second=283 amount=-1 +kerning first=90 second=118 amount=-2 +kerning first=317 second=328 amount=-1 +kerning first=1049 second=1073 amount=-1 +kerning first=256 second=370 amount=-3 +kerning first=281 second=328 amount=-2 +kerning first=350 second=101 amount=-1 +kerning first=88 second=283 amount=-2 +kerning first=1025 second=1093 amount=-2 +kerning first=218 second=241 amount=-2 +kerning first=253 second=46 amount=-5 +kerning first=254 second=241 amount=-1 +kerning first=79 second=196 amount=-4 +kerning first=380 second=283 amount=-1 +kerning first=367 second=380 amount=-2 +kerning first=1038 second=1087 amount=-4 +kerning first=344 second=283 amount=-3 +kerning first=117 second=8220 amount=-3 +kerning first=119 second=108 amount=-2 +kerning first=234 second=335 amount=-1 +kerning first=81 second=8220 amount=-2 +kerning first=1042 second=1045 amount=-2 +kerning first=260 second=108 amount=-2 +kerning first=76 second=118 amount=-3 +kerning first=231 second=8221 amount=-2 +kerning first=86 second=345 amount=-1 +kerning first=224 second=108 amount=-1 +kerning first=90 second=244 amount=-1 +kerning first=355 second=121 amount=-1 +kerning first=1031 second=1090 amount=-1 +kerning first=213 second=193 amount=-4 +kerning first=259 second=380 amount=-1 +kerning first=88 second=347 amount=-1 +kerning first=1074 second=1087 amount=-1 +kerning first=295 second=380 amount=-1 +kerning first=240 second=241 amount=-1 +kerning first=263 second=345 amount=-1 +kerning first=331 second=380 amount=-1 +kerning first=1067 second=1090 amount=-1 +kerning first=86 second=338 amount=-3 +kerning first=119 second=115 amount=-3 +kerning first=321 second=193 amount=-2 +kerning first=1042 second=1038 amount=-3 +kerning first=217 second=361 amount=-1 +kerning first=335 second=345 amount=-1 +kerning first=83 second=368 amount=-3 +kerning first=377 second=99 amount=-1 +kerning first=99 second=241 amount=-2 +kerning first=371 second=345 amount=-1 +kerning first=193 second=231 amount=-1 +kerning first=353 second=331 amount=-2 +kerning first=193 second=286 amount=-3 +kerning first=83 second=115 amount=-1 +kerning first=338 second=44 amount=-1 +kerning first=229 second=231 amount=-1 +kerning first=83 second=203 amount=-3 +kerning first=296 second=115 amount=-2 +kerning first=281 second=331 amount=-2 +kerning first=88 second=286 amount=-3 +kerning first=325 second=119 amount=-2 +kerning first=204 second=248 amount=-2 +kerning first=260 second=368 amount=-3 +kerning first=317 second=331 amount=-1 +kerning first=224 second=115 amount=-1 +kerning first=83 second=108 amount=-2 +kerning first=304 second=290 amount=-2 +kerning first=260 second=115 amount=-2 +kerning first=99 second=248 amount=-1 +kerning first=245 second=331 amount=-1 +kerning first=90 second=78 amount=-1 +kerning first=258 second=255 amount=-3 +kerning first=104 second=331 amount=-1 +kerning first=327 second=269 amount=-2 +kerning first=262 second=323 amount=-3 +kerning first=106 second=307 amount=-1 +kerning first=117 second=255 amount=-3 +kerning first=332 second=368 amount=-1 +kerning first=67 second=338 amount=-3 +kerning first=193 second=252 amount=-3 +kerning first=317 second=352 amount=-1 +kerning first=334 second=323 amount=-2 +kerning first=242 second=122 amount=-2 +kerning first=88 second=231 amount=-2 +kerning first=1060 second=1052 amount=-1 +kerning first=67 second=77 amount=-3 +kerning first=45 second=255 amount=-3 +kerning first=1024 second=1052 amount=-1 +kerning first=283 second=307 amount=-2 +kerning first=201 second=278 amount=-2 +kerning first=101 second=122 amount=-2 +kerning first=1086 second=1085 amount=-1 +kerning first=252 second=328 amount=-1 +kerning first=106 second=245 amount=-1 +kerning first=344 second=290 amount=-3 +kerning first=1038 second=1080 amount=-4 +kerning first=80 second=233 amount=-1 +kerning first=70 second=245 amount=-1 +kerning first=381 second=278 amount=-1 +kerning first=221 second=233 amount=-3 +kerning first=1049 second=1097 amount=-1 +kerning first=111 second=328 amount=-1 +kerning first=1074 second=1080 amount=-1 +kerning first=1054 second=1118 amount=-1 +kerning first=236 second=283 amount=-1 +kerning first=283 second=245 amount=-1 +kerning first=200 second=290 amount=-1 +kerning first=197 second=303 amount=-1 +kerning first=229 second=252 amount=-1 +kerning first=257 second=233 amount=-1 +kerning first=90 second=207 amount=-1 +kerning first=313 second=366 amount=-3 +kerning first=378 second=335 amount=-1 +kerning first=68 second=352 amount=-1 +kerning first=250 second=367 amount=-1 +kerning first=324 second=328 amount=-1 +kerning first=365 second=233 amount=-1 +kerning first=209 second=352 amount=-2 +kerning first=337 second=252 amount=-1 +kerning first=323 second=333 amount=-2 +kerning first=1052 second=1087 amount=-1 +kerning first=313 second=106 amount=-2 +kerning first=1050 second=1092 amount=-2 +kerning first=350 second=217 amount=-3 +kerning first=287 second=333 amount=-2 +kerning first=85 second=288 amount=-1 +kerning first=288 second=8221 amount=-1 +kerning first=241 second=106 amount=-2 +kerning first=344 second=218 amount=-3 +kerning first=198 second=110 amount=-1 +kerning first=277 second=106 amount=-2 +kerning first=234 second=110 amount=-2 +kerning first=339 second=378 amount=-2 +kerning first=352 second=281 amount=-1 +kerning first=100 second=113 amount=-1 +kerning first=68 second=65 amount=-4 +kerning first=303 second=378 amount=-1 +kerning first=8218 second=367 amount=-1 +kerning first=243 second=109 amount=-1 +kerning first=251 second=333 amount=-1 +kerning first=375 second=378 amount=-3 +kerning first=1043 second=1080 amount=-2 +kerning first=268 second=262 amount=-3 +kerning first=367 second=99 amount=-1 +kerning first=378 second=110 amount=-2 +kerning first=264 second=243 amount=-2 +kerning first=355 second=307 amount=-1 +kerning first=114 second=347 amount=-1 +kerning first=65 second=217 amount=-3 +kerning first=78 second=347 amount=-2 +kerning first=296 second=210 amount=-2 +kerning first=187 second=377 amount=-4 +kerning first=258 second=262 amount=-3 +kerning first=317 second=65 amount=-2 +kerning first=316 second=281 amount=-1 +kerning first=260 second=210 amount=-3 +kerning first=1118 second=1078 amount=-1 +kerning first=203 second=198 amount=-2 +kerning first=298 second=288 amount=-2 +kerning first=233 second=326 amount=-2 +kerning first=87 second=243 amount=-3 +kerning first=330 second=262 amount=-2 +kerning first=375 second=371 amount=-1 +kerning first=262 second=288 amount=-3 +kerning first=366 second=255 amount=-1 +kerning first=67 second=281 amount=-2 +kerning first=366 second=262 amount=-1 +kerning first=370 second=288 amount=-1 +kerning first=330 second=255 amount=-2 +kerning first=103 second=281 amount=-2 +kerning first=192 second=243 amount=-1 +kerning first=278 second=217 amount=-2 +kerning first=262 second=314 amount=-1 +kerning first=228 second=243 amount=-1 +kerning first=223 second=120 amount=-3 +kerning first=87 second=74 amount=-4 +kerning first=208 second=274 amount=-2 +kerning first=259 second=120 amount=-1 +kerning first=69 second=229 amount=-1 +kerning first=1060 second=1031 amount=-1 +kerning first=362 second=291 amount=-4 +kerning first=118 second=99 amount=-3 +kerning first=78 second=44 amount=-1 +kerning first=295 second=120 amount=-1 +kerning first=1024 second=1031 amount=-1 +kerning first=288 second=68 amount=-1 +kerning first=82 second=99 amount=-3 +kerning first=210 second=229 amount=-1 +kerning first=352 second=274 amount=-3 +kerning first=246 second=229 amount=-1 +kerning first=332 second=203 amount=-2 +kerning first=220 second=365 amount=-1 +kerning first=118 second=120 amount=-1 +kerning first=105 second=229 amount=-2 +kerning first=350 second=78 amount=-3 +kerning first=259 second=99 amount=-1 +kerning first=280 second=274 amount=-2 +kerning first=187 second=120 amount=-3 +kerning first=381 second=73 amount=-1 +kerning first=87 second=240 amount=-3 +kerning first=298 second=267 amount=-2 +kerning first=354 second=229 amount=-5 +kerning first=216 second=377 amount=-2 +kerning first=67 second=108 amount=-1 +kerning first=325 second=118 amount=-2 +kerning first=289 second=118 amount=-1 +kerning first=226 second=267 amount=-1 +kerning first=282 second=229 amount=-1 +kerning first=1067 second=1077 amount=-1 +kerning first=205 second=113 amount=-2 +kerning first=262 second=267 amount=-2 +kerning first=1103 second=1077 amount=-1 +kerning first=381 second=80 amount=-1 +kerning first=198 second=75 amount=-2 +kerning first=367 second=120 amount=-2 +kerning first=201 second=80 amount=-2 +kerning first=381 second=224 amount=-1 +kerning first=112 second=8220 amount=-2 +kerning first=278 second=196 amount=-2 +kerning first=1031 second=1077 amount=-1 +kerning first=112 second=118 amount=-2 +kerning first=370 second=267 amount=-2 +kerning first=288 second=377 amount=-2 +kerning first=253 second=118 amount=-1 +kerning first=222 second=8220 amount=-2 +kerning first=350 second=196 amount=-4 +kerning first=217 second=118 amount=-2 +kerning first=90 second=111 amount=-1 +kerning first=72 second=199 amount=-2 +kerning first=283 second=244 amount=-1 +kerning first=88 second=287 amount=-2 +kerning first=229 second=287 amount=-2 +kerning first=195 second=111 amount=-1 +kerning first=286 second=209 amount=-1 +kerning first=193 second=287 amount=-3 +kerning first=84 second=219 amount=-1 +kerning first=1086 second=1098 amount=-1 +kerning first=231 second=111 amount=-1 +kerning first=1064 second=1119 amount=-1 +kerning first=86 second=339 amount=-3 +kerning first=110 second=8217 amount=-4 +kerning first=99 second=242 amount=-1 +kerning first=122 second=339 amount=-1 +kerning first=344 second=234 amount=-3 +kerning first=8217 second=113 amount=-3 +kerning first=204 second=242 amount=-2 +kerning first=321 second=199 amount=-1 +kerning first=337 second=287 amount=-2 +kerning first=380 second=234 amount=-1 +kerning first=73 second=264 amount=-2 +kerning first=83 second=374 amount=-3 +kerning first=311 second=254 amount=-1 +kerning first=367 second=303 amount=-2 +kerning first=83 second=197 amount=-4 +kerning first=347 second=254 amount=-2 +kerning first=200 second=289 amount=-3 +kerning first=83 second=121 amount=-2 +kerning first=213 second=364 amount=-1 +kerning first=236 second=289 amount=-3 +kerning first=1114 second=1094 amount=-1 +kerning first=272 second=289 amount=-1 +kerning first=70 second=244 amount=-1 +kerning first=79 second=82 amount=-2 +kerning first=8220 second=281 amount=-3 +kerning first=267 second=111 amount=-1 +kerning first=106 second=244 amount=-1 +kerning first=303 second=111 amount=-3 +kerning first=203 second=254 amount=-1 +kerning first=344 second=289 amount=-3 +kerning first=254 second=46 amount=-3 +kerning first=339 second=111 amount=-1 +kerning first=380 second=289 amount=-2 +kerning first=8250 second=346 amount=-3 +kerning first=332 second=197 amount=-4 +kerning first=321 second=364 amount=-3 +kerning first=375 second=111 amount=-3 +kerning first=275 second=254 amount=-2 +kerning first=368 second=197 amount=-4 +kerning first=213 second=97 amount=-1 +kerning first=315 second=205 amount=-2 +kerning first=337 second=230 amount=-1 +kerning first=324 second=117 amount=-1 +kerning first=86 second=72 amount=-1 +kerning first=249 second=97 amount=-1 +kerning first=280 second=76 amount=-2 +kerning first=235 second=119 amount=-2 +kerning first=380 second=228 amount=-1 +kerning first=261 second=307 amount=-1 +kerning first=108 second=97 amount=-2 +kerning first=213 second=103 amount=-1 +kerning first=274 second=380 amount=-2 +kerning first=368 second=121 amount=-1 +kerning first=377 second=66 amount=-1 +kerning first=208 second=76 amount=-2 +kerning first=307 second=119 amount=-3 +kerning first=362 second=275 amount=-2 +kerning first=201 second=74 amount=-1 +kerning first=192 second=366 amount=-3 +kerning first=304 second=250 amount=-2 +kerning first=296 second=121 amount=-2 +kerning first=1104 second=1099 amount=-1 +kerning first=229 second=230 amount=-1 +kerning first=379 second=119 amount=-2 +kerning first=260 second=121 amount=-3 +kerning first=88 second=230 amount=-1 +kerning first=67 second=76 amount=-3 +kerning first=1069 second=1036 amount=-1 +kerning first=376 second=250 amount=-2 +kerning first=196 second=250 amount=-3 +kerning first=206 second=242 amount=-2 +kerning first=317 second=86 amount=-3 +kerning first=242 second=107 amount=-1 +kerning first=74 second=333 amount=-2 +kerning first=268 second=250 amount=-2 +kerning first=350 second=107 amount=-2 +kerning first=66 second=205 amount=-4 +kerning first=75 second=117 amount=-3 +kerning first=232 second=250 amount=-2 +kerning first=231 second=378 amount=-2 +kerning first=314 second=107 amount=-1 +kerning first=365 second=240 amount=-1 +kerning first=101 second=107 amount=-2 +kerning first=65 second=107 amount=-2 +kerning first=111 second=117 amount=-1 +kerning first=90 second=378 amount=-3 +kerning first=252 second=117 amount=-1 +kerning first=352 second=76 amount=-3 +kerning first=256 second=363 amount=-3 +kerning first=313 second=310 amount=-2 +kerning first=117 second=318 amount=-2 +kerning first=379 second=214 amount=-1 +kerning first=328 second=363 amount=-1 +kerning first=352 second=330 amount=-3 +kerning first=336 second=171 amount=-1 +kerning first=374 second=355 amount=-1 +kerning first=268 second=194 amount=-3 +kerning first=364 second=363 amount=-1 +kerning first=323 second=227 amount=-2 +kerning first=258 second=318 amount=-2 +kerning first=1043 second=1114 amount=-2 +kerning first=257 second=240 amount=-1 +kerning first=120 second=333 amount=-2 +kerning first=73 second=259 amount=-2 +kerning first=290 second=74 amount=-1 +kerning first=1057 second=1088 amount=-1 +kerning first=1093 second=1089 amount=-2 +kerning first=381 second=8250 amount=-1 +kerning first=246 second=257 amount=-1 +kerning first=1057 second=1089 amount=-1 +kerning first=221 second=240 amount=-3 +kerning first=8216 second=241 amount=-1 +kerning first=287 second=259 amount=-3 +kerning first=209 second=71 amount=-2 +kerning first=378 second=116 amount=-1 +kerning first=350 second=122 amount=-2 +kerning first=208 second=77 amount=-2 +kerning first=296 second=375 amount=-2 +kerning first=317 second=71 amount=-1 +kerning first=88 second=346 amount=-2 +kerning first=199 second=214 amount=-3 +kerning first=260 second=375 amount=-3 +kerning first=187 second=249 amount=-1 +kerning first=107 second=369 amount=-1 +kerning first=67 second=330 amount=-3 +kerning first=278 second=122 amount=-2 +kerning first=224 second=375 amount=-3 +kerning first=1070 second=1041 amount=-1 +kerning first=71 second=369 amount=-1 +kerning first=323 second=259 amount=-2 +kerning first=89 second=296 amount=-1 +kerning first=280 second=330 amount=-2 +kerning first=110 second=259 amount=-1 +kerning first=234 second=116 amount=-1 +kerning first=72 second=97 amount=-2 +kerning first=352 second=77 amount=-3 +kerning first=187 second=106 amount=-2 +kerning first=246 second=114 amount=-1 +kerning first=264 second=220 amount=-2 +kerning first=209 second=246 amount=-2 +kerning first=376 second=194 amount=-6 +kerning first=208 second=330 amount=-2 +kerning first=1039 second=1075 amount=-1 +kerning first=290 second=220 amount=-1 +kerning first=1050 second=1086 amount=-2 +kerning first=280 second=77 amount=-2 +kerning first=368 second=375 amount=-1 +kerning first=1025 second=1100 amount=-1 +kerning first=334 second=344 amount=-2 +kerning first=266 second=296 amount=-3 +kerning first=325 second=228 amount=-2 +kerning first=187 second=324 amount=-2 +kerning first=356 second=369 amount=-2 +kerning first=289 second=228 amount=-3 +kerning first=118 second=324 amount=-2 +kerning first=332 second=374 amount=-2 +kerning first=377 second=315 amount=-1 +kerning first=338 second=296 amount=-2 +kerning first=253 second=228 amount=-3 +kerning first=259 second=324 amount=-1 +kerning first=84 second=279 amount=-3 +kerning first=217 second=228 amount=-3 +kerning first=223 second=324 amount=-1 +kerning first=98 second=254 amount=-1 +kerning first=260 second=374 amount=-6 +kerning first=232 second=251 amount=-2 +kerning first=66 second=206 amount=-4 +kerning first=374 second=296 amount=-1 +kerning first=1045 second=1055 amount=-1 +kerning first=196 second=251 amount=-3 +kerning first=262 second=344 amount=-3 +kerning first=304 second=251 amount=-2 +kerning first=83 second=375 amount=-2 +kerning first=284 second=369 amount=-1 +kerning first=269 second=273 amount=-1 +kerning first=268 second=251 amount=-2 +kerning first=45 second=260 amount=-4 +kerning first=88 second=79 amount=-3 +kerning first=248 second=369 amount=-1 +kerning first=233 second=273 amount=-1 +kerning first=376 second=251 amount=-2 +kerning first=8217 second=112 amount=-1 +kerning first=381 second=284 amount=-1 +kerning first=1096 second=1108 amount=-1 +kerning first=98 second=253 amount=-3 +kerning first=89 second=355 amount=-1 +kerning first=98 second=382 amount=-2 +kerning first=107 second=45 amount=-3 +kerning first=369 second=279 amount=-1 +kerning first=201 second=284 amount=-1 +kerning first=331 second=324 amount=-1 +kerning first=1100 second=1119 amount=-1 +kerning first=115 second=363 amount=-1 +kerning first=295 second=324 amount=-1 +kerning first=120 second=279 amount=-2 +kerning first=275 second=253 amount=-2 +kerning first=201 second=197 amount=-2 +kerning first=261 second=279 amount=-1 +kerning first=311 second=253 amount=-1 +kerning first=230 second=355 amount=-1 +kerning first=220 second=363 amount=-1 +kerning first=367 second=324 amount=-1 +kerning first=45 second=318 amount=-1 +kerning first=225 second=279 amount=-1 +kerning first=347 second=253 amount=-3 +kerning first=194 second=355 amount=-1 +kerning first=232 second=331 amount=-2 +kerning first=313 second=313 amount=-2 +kerning first=45 second=315 amount=-5 +kerning first=251 second=318 amount=-2 +kerning first=202 second=83 amount=-2 +kerning first=8220 second=337 amount=-3 +kerning first=66 second=268 amount=-3 +kerning first=287 second=318 amount=-3 +kerning first=89 second=365 amount=-2 +kerning first=71 second=310 amount=-1 +kerning first=207 second=268 amount=-2 +kerning first=274 second=83 amount=-2 +kerning first=81 second=315 amount=-2 +kerning first=377 second=263 amount=-1 +kerning first=310 second=83 amount=-2 +kerning first=199 second=218 amount=-2 +kerning first=213 second=370 amount=-1 +kerning first=346 second=83 amount=-1 +kerning first=284 second=310 amount=-1 +kerning first=8216 second=245 amount=-3 +kerning first=1045 second=1065 amount=-1 +kerning first=197 second=263 amount=-1 +kerning first=381 second=355 amount=-1 +kerning first=212 second=310 amount=-2 +kerning first=233 second=263 amount=-1 +kerning first=84 second=220 amount=-1 +kerning first=1096 second=1105 amount=-1 +kerning first=230 second=303 amount=-2 +kerning first=274 second=353 amount=-1 +kerning first=1083 second=1089 amount=-1 +kerning first=266 second=303 amount=-1 +kerning first=84 second=275 amount=-3 +kerning first=310 second=353 amount=-1 +kerning first=346 second=353 amount=-1 +kerning first=374 second=365 amount=-2 +kerning first=194 second=303 amount=-1 +kerning first=382 second=353 amount=-2 +kerning first=108 second=45 amount=-3 +kerning first=338 second=365 amount=-2 +kerning first=222 second=315 amount=-2 +kerning first=374 second=303 amount=-2 +kerning first=380 second=224 amount=-1 +kerning first=302 second=365 amount=-2 +kerning first=1071 second=1060 amount=-1 +kerning first=266 second=365 amount=-2 +kerning first=302 second=303 amount=-1 +kerning first=202 second=353 amount=-1 +kerning first=253 second=303 amount=-2 +kerning first=230 second=365 amount=-2 +kerning first=338 second=303 amount=-1 +kerning first=194 second=365 amount=-3 +kerning first=1070 second=1048 amount=-1 +kerning first=105 second=235 amount=-1 +kerning first=289 second=225 amount=-3 +kerning first=1114 second=1098 amount=-1 +kerning first=280 second=280 amount=-2 +kerning first=118 second=105 amount=-2 +kerning first=325 second=225 amount=-2 +kerning first=266 second=98 amount=-1 +kerning first=1114 second=1095 amount=-2 +kerning first=352 second=280 amount=-3 +kerning first=354 second=228 amount=-4 +kerning first=381 second=356 amount=-2 +kerning first=1104 second=1093 amount=-1 +kerning first=338 second=98 amount=-1 +kerning first=1042 second=1095 amount=-2 +kerning first=109 second=318 amount=-1 +kerning first=112 second=225 amount=-1 +kerning first=282 second=228 amount=-1 +kerning first=89 second=303 amount=-2 +kerning first=367 second=46 amount=-2 +kerning first=246 second=228 amount=-1 +kerning first=1104 second=1100 amount=-1 +kerning first=354 second=235 amount=-3 +kerning first=217 second=225 amount=-3 +kerning first=1024 second=1102 amount=-1 +kerning first=230 second=98 amount=-2 +kerning first=210 second=228 amount=-1 +kerning first=377 second=270 amount=-1 +kerning first=253 second=225 amount=-3 +kerning first=194 second=98 amount=-2 +kerning first=274 second=350 amount=-2 +kerning first=8250 second=352 amount=-3 +kerning first=81 second=305 amount=-1 +kerning first=266 second=102 amount=-2 +kerning first=108 second=363 amount=-2 +kerning first=105 second=228 amount=-2 +kerning first=45 second=305 amount=-1 +kerning first=223 second=46 amount=-3 +kerning first=321 second=370 amount=-3 +kerning first=202 second=350 amount=-2 +kerning first=69 second=228 amount=-1 +kerning first=338 second=102 amount=-2 +kerning first=224 second=277 amount=-1 +kerning first=259 second=46 amount=-1 +kerning first=226 second=273 amount=-1 +kerning first=117 second=305 amount=-1 +kerning first=374 second=102 amount=-1 +kerning first=295 second=46 amount=-1 +kerning first=67 second=280 amount=-3 +kerning first=249 second=363 amount=-1 +kerning first=258 second=305 amount=-1 +kerning first=89 second=102 amount=-1 +kerning first=90 second=245 amount=-1 +kerning first=83 second=86 amount=-3 +kerning first=369 second=46 amount=-2 +kerning first=121 second=273 amount=-3 +kerning first=222 second=305 amount=-1 +kerning first=1053 second=1108 amount=-1 +kerning first=110 second=318 amount=-1 +kerning first=321 second=363 amount=-2 +kerning first=330 second=305 amount=-1 +kerning first=194 second=102 amount=-1 +kerning first=377 second=325 amount=-1 +kerning first=82 second=46 amount=-2 +kerning first=208 second=280 amount=-2 +kerning first=230 second=102 amount=-2 +kerning first=118 second=46 amount=-5 +kerning first=1072 second=1117 amount=-1 +kerning first=278 second=211 amount=-1 +kerning first=202 second=86 amount=-1 +kerning first=366 second=305 amount=-2 +kerning first=313 second=112 amount=-2 +kerning first=75 second=67 amount=-3 +kerning first=206 second=211 amount=-2 +kerning first=122 second=261 amount=-1 +kerning first=277 second=112 amount=-1 +kerning first=1108 second=1117 amount=-1 +kerning first=86 second=171 amount=-5 +kerning first=201 second=192 amount=-2 +kerning first=327 second=81 amount=-2 +kerning first=366 second=256 amount=-4 +kerning first=214 second=261 amount=-1 +kerning first=346 second=86 amount=-3 +kerning first=1102 second=1084 amount=-1 +kerning first=205 second=112 amount=-1 +kerning first=377 second=260 amount=-1 +kerning first=250 second=261 amount=-1 +kerning first=310 second=86 amount=-2 +kerning first=249 second=107 amount=-2 +kerning first=286 second=261 amount=-1 +kerning first=84 second=216 amount=-3 +kerning first=1043 second=1076 amount=-3 +kerning first=274 second=86 amount=-1 +kerning first=100 second=112 amount=-1 +kerning first=327 second=266 amount=-2 +kerning first=8250 second=89 amount=-4 +kerning first=321 second=107 amount=-2 +kerning first=332 second=204 amount=-2 +kerning first=370 second=216 amount=-1 +kerning first=331 second=105 amount=-1 +kerning first=367 second=105 amount=-2 +kerning first=268 second=254 amount=-1 +kerning first=216 second=327 amount=-2 +kerning first=122 second=171 amount=-3 +kerning first=295 second=105 amount=-1 +kerning first=78 second=81 amount=-2 +kerning first=315 second=209 amount=-2 +kerning first=288 second=327 amount=-1 +kerning first=1042 second=1098 amount=-1 +kerning first=219 second=81 amount=-1 +kerning first=223 second=105 amount=-1 +kerning first=209 second=346 amount=-2 +kerning first=1053 second=1087 amount=-1 +kerning first=369 second=275 amount=-1 +kerning first=200 second=230 amount=-1 +kerning first=249 second=100 amount=-1 +kerning first=258 second=249 amount=-3 +kerning first=236 second=230 amount=-2 +kerning first=83 second=204 amount=-3 +kerning first=106 second=303 amount=-1 +kerning first=117 second=249 amount=-1 +kerning first=199 second=318 amount=-1 +kerning first=68 second=346 amount=-1 +kerning first=379 second=223 amount=-1 +kerning first=366 second=249 amount=-1 +kerning first=313 second=379 amount=-3 +kerning first=225 second=275 amount=-1 +kerning first=1045 second=1058 amount=-1 +kerning first=72 second=100 amount=-2 +kerning first=317 second=346 amount=-1 +kerning first=378 second=242 amount=-1 +kerning first=261 second=275 amount=-1 +kerning first=362 second=223 amount=-2 +kerning first=108 second=100 amount=-1 +kerning first=120 second=275 amount=-2 +kerning first=330 second=249 amount=-1 +kerning first=263 second=339 amount=-1 +kerning first=325 second=334 amount=-2 +kerning first=108 second=107 amount=-1 +kerning first=254 second=223 amount=-1 +kerning first=218 second=223 amount=-2 +kerning first=231 second=305 amount=-2 +kerning first=81 second=256 amount=-4 +kerning first=227 second=339 amount=-1 +kerning first=45 second=256 amount=-4 +kerning first=1108 second=1103 amount=-1 +kerning first=344 second=230 amount=-2 +kerning first=380 second=230 amount=-1 +kerning first=1042 second=1039 amount=-2 +kerning first=272 second=230 amount=-1 +kerning first=371 second=339 amount=-3 +kerning first=65 second=211 amount=-3 +kerning first=113 second=223 amount=-1 +kerning first=222 second=256 amount=-4 +kerning first=324 second=228 amount=-1 +kerning first=1045 second=1059 amount=-3 +kerning first=313 second=109 amount=-1 +kerning first=274 second=89 amount=-1 +kerning first=119 second=114 amount=-1 +kerning first=321 second=104 amount=-2 +kerning first=8250 second=86 amount=-4 +kerning first=321 second=192 amount=-2 +kerning first=83 second=114 amount=-2 +kerning first=315 second=212 amount=-1 +kerning first=213 second=192 amount=-4 +kerning first=100 second=314 amount=-1 +kerning first=337 second=237 amount=-1 +kerning first=108 second=104 amount=-1 +kerning first=221 second=187 amount=-3 +kerning first=230 second=99 amount=-1 +kerning first=323 second=262 amount=-2 +kerning first=1071 second=1116 amount=-1 +kerning first=199 second=217 amount=-2 +kerning first=194 second=99 amount=-1 +kerning first=302 second=99 amount=-2 +kerning first=100 second=109 amount=-1 +kerning first=84 second=269 amount=-3 +kerning first=229 second=237 amount=-1 +kerning first=277 second=314 amount=-3 +kerning first=380 second=227 amount=-1 +kerning first=266 second=99 amount=-2 +kerning first=244 second=378 amount=-2 +kerning first=193 second=237 amount=-1 +kerning first=241 second=314 amount=-1 +kerning first=374 second=99 amount=-3 +kerning first=346 second=89 amount=-3 +kerning first=249 second=104 amount=-2 +kerning first=290 second=282 amount=-1 +kerning first=99 second=44 amount=-3 +kerning first=120 second=269 amount=-2 +kerning first=353 second=120 amount=-3 +kerning first=352 second=277 amount=-1 +kerning first=313 second=314 amount=-2 +kerning first=240 second=44 amount=-3 +kerning first=261 second=269 amount=-1 +kerning first=1102 second=1083 amount=-2 +kerning first=225 second=269 amount=-1 +kerning first=8222 second=229 amount=-2 +kerning first=78 second=351 amount=-2 +kerning first=231 second=371 amount=-2 +kerning first=200 second=224 amount=-1 +kerning first=240 second=121 amount=-3 +kerning first=267 second=371 amount=-2 +kerning first=377 second=267 amount=-1 +kerning first=316 second=277 amount=-1 +kerning first=266 second=302 amount=-3 +kerning first=303 second=371 amount=-1 +kerning first=272 second=224 amount=-1 +kerning first=105 second=232 amount=-1 +kerning first=363 second=347 amount=-2 +kerning first=369 second=269 amount=-1 +kerning first=8250 second=353 amount=-1 +kerning first=1070 second=1051 amount=-3 +kerning first=114 second=351 amount=-1 +kerning first=339 second=371 amount=-2 +kerning first=236 second=224 amount=-2 +kerning first=327 second=347 amount=-2 +kerning first=286 second=202 amount=-1 +kerning first=67 second=277 amount=-2 +kerning first=356 second=344 amount=-1 +kerning first=344 second=224 amount=-2 +kerning first=291 second=347 amount=-3 +kerning first=255 second=347 amount=-3 +kerning first=345 second=8249 amount=-1 +kerning first=214 second=202 amount=-2 +kerning first=89 second=302 amount=-1 +kerning first=89 second=99 amount=-3 +kerning first=381 second=8249 amount=-3 +kerning first=1073 second=1081 amount=-1 +kerning first=103 second=277 amount=-2 +kerning first=321 second=367 amount=-2 +kerning first=72 second=101 amount=-2 +kerning first=86 second=79 amount=-3 +kerning first=73 second=261 amount=-2 +kerning first=197 second=267 amount=-1 +kerning first=8217 second=106 amount=-1 +kerning first=108 second=101 amount=-1 +kerning first=363 second=351 amount=-2 +kerning first=109 second=261 amount=-1 +kerning first=249 second=367 amount=-1 +kerning first=334 second=69 amount=-2 +kerning first=207 second=212 amount=-2 +kerning first=376 second=257 amount=-5 +kerning first=66 second=212 amount=-3 +kerning first=249 second=101 amount=-1 +kerning first=255 second=351 amount=-3 +kerning first=233 second=97 amount=-2 +kerning first=268 second=257 amount=-2 +kerning first=262 second=69 amount=-3 +kerning first=1070 second=1047 amount=-2 +kerning first=219 second=351 amount=-2 +kerning first=304 second=257 amount=-2 +kerning first=72 second=367 amount=-2 +kerning first=233 second=267 amount=-1 +kerning first=327 second=351 amount=-2 +kerning first=108 second=367 amount=-2 +kerning first=269 second=267 amount=-1 +kerning first=8220 second=333 amount=-3 +kerning first=291 second=351 amount=-3 +kerning first=232 second=257 amount=-2 +kerning first=67 second=337 amount=-2 +kerning first=278 second=382 amount=-2 +kerning first=80 second=246 amount=-1 +kerning first=313 second=316 amount=-2 +kerning first=255 second=291 amount=-3 +kerning first=314 second=382 amount=-1 +kerning first=1045 second=1062 amount=-1 +kerning first=197 second=266 amount=-3 +kerning first=194 second=362 amount=-3 +kerning first=1067 second=1087 amount=-1 +kerning first=376 second=315 amount=-1 +kerning first=350 second=382 amount=-2 +kerning first=344 second=286 amount=-3 +kerning first=79 second=206 amount=-2 +kerning first=283 second=241 amount=-2 +kerning first=279 second=271 amount=-1 +kerning first=1071 second=1057 amount=-1 +kerning first=113 second=226 amount=-2 +kerning first=101 second=382 amount=-2 +kerning first=282 second=205 amount=-2 +kerning first=258 second=311 amount=-2 +kerning first=255 second=287 amount=-3 +kerning first=78 second=291 amount=-3 +kerning first=196 second=279 amount=-1 +kerning first=218 second=226 amount=-3 +kerning first=267 second=228 amount=-2 +kerning first=206 second=382 amount=-1 +kerning first=200 second=286 amount=-1 +kerning first=1042 second=1042 amount=-2 +kerning first=106 second=241 amount=-2 +kerning first=346 second=356 amount=-3 +kerning first=103 second=337 amount=-2 +kerning first=242 second=382 amount=-2 +kerning first=70 second=241 amount=-1 +kerning first=379 second=221 amount=-2 +kerning first=230 second=361 amount=-2 +kerning first=1107 second=1113 amount=-3 +kerning first=194 second=361 amount=-3 +kerning first=251 second=8221 amount=-3 +kerning first=324 second=331 amount=-1 +kerning first=99 second=382 amount=-2 +kerning first=302 second=361 amount=-2 +kerning first=192 second=290 amount=-3 +kerning first=110 second=8221 amount=-4 +kerning first=266 second=361 amount=-2 +kerning first=1100 second=1075 amount=-1 +kerning first=100 second=316 amount=-1 +kerning first=252 second=331 amount=-1 +kerning first=8217 second=369 amount=-1 +kerning first=374 second=361 amount=-2 +kerning first=1057 second=1082 amount=-1 +kerning first=111 second=331 amount=-1 +kerning first=381 second=333 amount=-1 +kerning first=241 second=316 amount=-1 +kerning first=216 second=274 amount=-2 +kerning first=199 second=221 amount=-1 +kerning first=102 second=271 amount=-1 +kerning first=277 second=316 amount=-3 +kerning first=200 second=227 amount=-1 +kerning first=280 second=70 amount=-2 +kerning first=1039 second=1081 amount=-1 +kerning first=258 second=252 amount=-3 +kerning first=83 second=381 amount=-1 +kerning first=222 second=45 amount=-1 +kerning first=368 second=115 amount=-2 +kerning first=208 second=70 amount=-2 +kerning first=368 second=45 amount=-5 +kerning first=83 second=207 amount=-3 +kerning first=108 second=103 amount=-3 +kerning first=86 second=78 amount=-1 +kerning first=195 second=368 amount=-3 +kerning first=330 second=252 amount=-1 +kerning first=72 second=103 amount=-3 +kerning first=344 second=227 amount=-2 +kerning first=45 second=252 amount=-1 +kerning first=1042 second=1101 amount=-2 +kerning first=366 second=45 amount=-5 +kerning first=67 second=336 amount=-3 +kerning first=272 second=227 amount=-1 +kerning first=1078 second=1101 amount=-1 +kerning first=117 second=252 amount=-1 +kerning first=67 second=278 amount=-3 +kerning first=8250 second=350 amount=-3 +kerning first=332 second=381 amount=-2 +kerning first=290 second=226 amount=-1 +kerning first=332 second=207 amount=-2 +kerning first=268 second=201 amount=-3 +kerning first=326 second=226 amount=-1 +kerning first=365 second=246 amount=-1 +kerning first=89 second=346 amount=-3 +kerning first=313 second=317 amount=-2 +kerning first=1043 second=1107 amount=-2 +kerning first=202 second=90 amount=-1 +kerning first=280 second=336 amount=-1 +kerning first=202 second=356 amount=-1 +kerning first=377 second=323 amount=-1 +kerning first=208 second=278 amount=-2 +kerning first=266 second=362 amount=-2 +kerning first=366 second=252 amount=-1 +kerning first=257 second=246 amount=-1 +kerning first=274 second=90 amount=-1 +kerning first=87 second=233 amount=-3 +kerning first=1079 second=1107 amount=-1 +kerning first=221 second=246 amount=-3 +kerning first=321 second=103 amount=-3 +kerning first=280 second=278 amount=-2 +kerning first=228 second=233 amount=-1 +kerning first=338 second=362 amount=-2 +kerning first=346 second=90 amount=-1 +kerning first=192 second=233 amount=-1 +kerning first=327 second=291 amount=-3 +kerning first=117 second=45 amount=-2 +kerning first=352 second=278 amount=-3 +kerning first=108 second=382 amount=-1 +kerning first=122 second=369 amount=-2 +kerning first=277 second=103 amount=-3 +kerning first=250 second=246 amount=-1 +kerning first=1086 second=1095 amount=-1 +kerning first=86 second=369 amount=-2 +kerning first=241 second=103 amount=-2 +kerning first=218 second=259 amount=-3 +kerning first=187 second=356 amount=-4 +kerning first=1050 second=1095 amount=-3 +kerning first=213 second=382 amount=-2 +kerning first=227 second=369 amount=-1 +kerning first=205 second=103 amount=-3 +kerning first=249 second=382 amount=-2 +kerning first=236 second=259 amount=-2 +kerning first=263 second=116 amount=-1 +kerning first=82 second=356 amount=-3 +kerning first=338 second=45 amount=-2 +kerning first=380 second=252 amount=-2 +kerning first=122 second=116 amount=-1 +kerning first=100 second=363 amount=-1 +kerning first=72 second=382 amount=-1 +kerning first=374 second=45 amount=-5 +kerning first=86 second=116 amount=-1 +kerning first=354 second=226 amount=-5 +kerning first=99 second=279 amount=-1 +kerning first=1071 second=1054 amount=-1 +kerning first=195 second=375 amount=-3 +kerning first=205 second=363 amount=-2 +kerning first=1042 second=1076 amount=-2 +kerning first=249 second=122 amount=-2 +kerning first=1057 second=1100 amount=-1 +kerning first=241 second=363 amount=-1 +kerning first=89 second=305 amount=-2 +kerning first=204 second=279 amount=-2 +kerning first=90 second=375 amount=-3 +kerning first=213 second=122 amount=-2 +kerning first=1104 second=1102 amount=-1 +kerning first=277 second=363 amount=-2 +kerning first=317 second=362 amount=-3 +kerning first=1064 second=1089 amount=-1 +kerning first=371 second=109 amount=-2 +kerning first=77 second=266 amount=-2 +kerning first=313 second=363 amount=-2 +kerning first=194 second=305 amount=-1 +kerning first=216 second=65 amount=-4 +kerning first=339 second=375 amount=-2 +kerning first=371 second=116 amount=-1 +kerning first=321 second=382 amount=-3 +kerning first=303 second=375 amount=-2 +kerning first=68 second=362 amount=-1 +kerning first=263 second=369 amount=-2 +kerning first=122 second=109 amount=-2 +kerning first=266 second=305 amount=-1 +kerning first=288 second=65 amount=-3 +kerning first=267 second=375 amount=-2 +kerning first=371 second=369 amount=-1 +kerning first=89 second=45 amount=-5 +kerning first=263 second=109 amount=-2 +kerning first=1064 second=1082 amount=-1 +kerning first=230 second=305 amount=-2 +kerning first=231 second=375 amount=-2 +kerning first=335 second=369 amount=-1 +kerning first=313 second=103 amount=-3 +kerning first=227 second=109 amount=-1 +kerning first=1056 second=1063 amount=-1 +kerning first=281 second=355 amount=-1 +kerning first=338 second=305 amount=-1 +kerning first=381 second=231 amount=-1 +kerning first=245 second=355 amount=-1 +kerning first=339 second=115 amount=-2 +kerning first=304 second=232 amount=-2 +kerning first=231 second=115 amount=-2 +kerning first=362 second=45 amount=-5 +kerning first=374 second=305 amount=-2 +kerning first=84 second=202 amount=-1 +kerning first=344 second=8217 amount=-5 +kerning first=1060 second=1062 amount=-1 +kerning first=196 second=232 amount=-1 +kerning first=219 second=44 amount=-5 +kerning first=201 second=336 amount=-1 +kerning first=1024 second=1062 amount=-1 +kerning first=353 second=355 amount=-2 +kerning first=375 second=115 amount=-3 +kerning first=268 second=232 amount=-2 +kerning first=8250 second=371 amount=-1 +kerning first=232 second=232 amount=-1 +kerning first=226 second=8217 amount=-3 +kerning first=196 second=253 amount=-3 +kerning first=375 second=108 amount=-2 +kerning first=232 second=253 amount=-2 +kerning first=8250 second=90 amount=-4 +kerning first=339 second=108 amount=-3 +kerning first=1024 second=1055 amount=-1 +kerning first=381 second=336 amount=-1 +kerning first=268 second=253 amount=-1 +kerning first=1060 second=1055 amount=-1 +kerning first=304 second=253 amount=-2 +kerning first=8250 second=378 amount=-5 +kerning first=333 second=380 amount=-2 +kerning first=376 second=253 amount=-3 +kerning first=262 second=325 amount=-3 +kerning first=71 second=66 amount=-1 +kerning first=1042 second=1048 amount=-2 +kerning first=65 second=251 amount=-3 +kerning first=367 second=328 amount=-1 +kerning first=379 second=196 amount=-1 +kerning first=324 second=115 amount=-1 +kerning first=100 second=335 amount=-1 +kerning first=331 second=328 amount=-1 +kerning first=380 second=231 amount=-1 +kerning first=232 second=225 amount=-2 +kerning first=198 second=332 amount=-1 +kerning first=295 second=328 amount=-1 +kerning first=231 second=108 amount=-3 +kerning first=195 second=108 amount=-2 +kerning first=381 second=315 amount=-1 +kerning first=303 second=108 amount=-2 +kerning first=199 second=196 amount=-3 +kerning first=267 second=108 amount=-3 +kerning first=366 second=286 amount=-1 +kerning first=106 second=242 amount=-1 +kerning first=102 second=45 amount=-3 +kerning first=236 second=8217 amount=-2 +kerning first=70 second=242 amount=-1 +kerning first=264 second=84 amount=-1 +kerning first=272 second=8217 amount=-2 +kerning first=104 second=102 amount=-1 +kerning first=330 second=286 amount=-2 +kerning first=283 second=242 amount=-1 +kerning first=76 second=203 amount=-2 +kerning first=88 second=8221 amount=-2 +kerning first=268 second=225 amount=-2 +kerning first=286 second=218 amount=-1 +kerning first=244 second=46 amount=-3 +kerning first=200 second=280 amount=-2 +kerning first=258 second=286 amount=-3 +kerning first=195 second=115 amount=-2 +kerning first=304 second=225 amount=-2 +kerning first=280 second=46 amount=-1 +kerning first=214 second=218 amount=-1 +kerning first=272 second=280 amount=-2 +kerning first=1057 second=1118 amount=-1 +kerning first=236 second=231 amount=-1 +kerning first=90 second=115 amount=-2 +kerning first=376 second=225 amount=-5 +kerning first=352 second=46 amount=-4 +kerning first=353 second=102 amount=-2 +kerning first=217 second=210 amount=-1 +kerning first=1060 second=1083 amount=-2 +kerning first=67 second=46 amount=-1 +kerning first=240 second=307 amount=-1 +kerning first=65 second=119 amount=-3 +kerning first=103 second=46 amount=-3 +kerning first=193 second=8221 amount=-5 +kerning first=101 second=119 amount=-2 +kerning first=362 second=266 amount=-1 +kerning first=262 second=224 amount=-2 +kerning first=76 second=210 amount=-1 +kerning first=229 second=8221 amount=-3 +kerning first=202 second=303 amount=-1 +kerning first=207 second=337 amount=-2 +kerning first=67 second=67 amount=-3 +kerning first=108 second=122 amount=-1 +kerning first=206 second=119 amount=-2 +kerning first=245 second=102 amount=-1 +kerning first=72 second=122 amount=-1 +kerning first=242 second=119 amount=-2 +kerning first=281 second=102 amount=-2 +kerning first=337 second=8221 amount=-2 +kerning first=278 second=119 amount=-1 +kerning first=218 second=266 amount=-1 +kerning first=8250 second=118 amount=-3 +kerning first=314 second=119 amount=-3 +kerning first=268 second=204 amount=-3 +kerning first=350 second=119 amount=-3 +kerning first=236 second=252 amount=-1 +kerning first=381 second=250 amount=-3 +kerning first=1024 second=1090 amount=-3 +kerning first=296 second=351 amount=-2 +kerning first=344 second=252 amount=-2 +kerning first=267 second=115 amount=-2 +kerning first=205 second=335 amount=-2 +kerning first=344 second=259 amount=-2 +kerning first=1114 second=1097 amount=-1 +kerning first=259 second=328 amount=-1 +kerning first=376 second=204 amount=-1 +kerning first=77 second=245 amount=-2 +kerning first=223 second=328 amount=-1 +kerning first=1056 second=1042 amount=-1 +kerning first=99 second=307 amount=-2 +kerning first=197 second=269 amount=-1 +kerning first=277 second=335 amount=-1 +kerning first=187 second=328 amount=-2 +kerning first=368 second=196 amount=-4 +kerning first=249 second=46 amount=-2 +kerning first=280 second=67 amount=-1 +kerning first=380 second=259 amount=-1 +kerning first=86 second=81 amount=-3 +kerning first=118 second=328 amount=-2 +kerning first=200 second=252 amount=-2 +kerning first=364 second=113 amount=-2 +kerning first=324 second=353 amount=-1 +kerning first=269 second=269 amount=-1 +kerning first=8217 second=335 amount=-3 +kerning first=66 second=262 amount=-3 +kerning first=313 second=73 amount=-2 +kerning first=70 second=275 amount=-1 +kerning first=256 second=366 amount=-3 +kerning first=233 second=269 amount=-1 +kerning first=363 second=291 amount=-3 +kerning first=71 second=368 amount=-1 +kerning first=324 second=365 amount=-1 +kerning first=256 second=113 amount=-1 +kerning first=70 second=263 amount=-1 +kerning first=288 second=365 amount=-1 +kerning first=382 second=378 amount=-2 +kerning first=65 second=99 amount=-1 +kerning first=207 second=262 amount=-2 +kerning first=252 second=365 amount=-1 +kerning first=202 second=378 amount=-2 +kerning first=284 second=87 amount=-3 +kerning first=234 second=100 amount=-1 +kerning first=71 second=259 amount=-1 +kerning first=314 second=171 amount=-3 +kerning first=252 second=353 amount=-2 +kerning first=274 second=378 amount=-2 +kerning first=212 second=87 amount=-2 +kerning first=315 second=262 amount=-1 +kerning first=379 second=8250 amount=-1 +kerning first=234 second=112 amount=-1 +kerning first=290 second=316 amount=-1 +kerning first=111 second=365 amount=-1 +kerning first=79 second=305 amount=-1 +kerning first=89 second=352 amount=-3 +kerning first=283 second=275 amount=-1 +kerning first=75 second=353 amount=-1 +kerning first=1027 second=1054 amount=-1 +kerning first=1057 second=1091 amount=-1 +kerning first=337 second=249 amount=-1 +kerning first=194 second=352 amount=-3 +kerning first=1057 second=1086 amount=-1 +kerning first=1093 second=1091 amount=-2 +kerning first=71 second=87 amount=-3 +kerning first=377 second=288 amount=-1 +kerning first=71 second=354 amount=-3 +kerning first=220 second=113 amount=-2 +kerning first=302 second=352 amount=-2 +kerning first=197 second=288 amount=-3 +kerning first=275 second=223 amount=-1 +kerning first=325 second=210 amount=-2 +kerning first=266 second=352 amount=-3 +kerning first=73 second=211 amount=-2 +kerning first=106 second=275 amount=-1 +kerning first=374 second=352 amount=-3 +kerning first=1089 second=1080 amount=-1 +kerning first=212 second=354 amount=-2 +kerning first=347 second=223 amount=-1 +kerning first=8220 second=283 amount=-3 +kerning first=338 second=352 amount=-2 +kerning first=1053 second=1080 amount=-1 +kerning first=88 second=249 amount=-3 +kerning first=1100 second=1117 amount=-1 +kerning first=351 second=8220 amount=-2 +kerning first=225 second=248 amount=-1 +kerning first=112 second=303 amount=-1 +kerning first=202 second=380 amount=-2 +kerning first=315 second=8220 amount=-4 +kerning first=84 second=248 amount=-3 +kerning first=201 second=296 amount=-2 +kerning first=203 second=223 amount=-1 +kerning first=1088 second=1113 amount=-2 +kerning first=378 second=339 amount=-1 +kerning first=279 second=8220 amount=-2 +kerning first=252 second=114 amount=-1 +kerning first=354 second=198 amount=-6 +kerning first=229 second=249 amount=-1 +kerning first=88 second=289 amount=-2 +kerning first=243 second=8220 amount=-2 +kerning first=111 second=114 amount=-1 +kerning first=69 second=198 amount=-2 +kerning first=1064 second=1117 amount=-1 +kerning first=193 second=289 amount=-3 +kerning first=356 second=338 amount=-3 +kerning first=193 second=249 amount=-3 +kerning first=67 second=327 amount=-3 +kerning first=102 second=8220 amount=3 +kerning first=75 second=114 amount=1 +kerning first=210 second=198 amount=-4 +kerning first=97 second=380 amount=-1 +kerning first=266 second=73 amount=-3 +kerning first=283 second=263 amount=-1 +kerning first=75 second=365 amount=-3 +kerning first=66 second=8220 amount=-4 +kerning first=1043 second=1113 amount=-3 +kerning first=365 second=237 amount=-2 +kerning first=8222 second=219 amount=-3 +kerning first=262 second=313 amount=-3 +kerning first=381 second=296 amount=-1 +kerning first=338 second=73 amount=-2 +kerning first=208 second=327 amount=-2 +kerning first=374 second=73 amount=-1 +kerning first=201 second=315 amount=-2 +kerning first=257 second=237 amount=-1 +kerning first=1039 second=1105 amount=-1 +kerning first=89 second=73 amount=-1 +kerning first=106 second=263 amount=-1 +kerning first=193 second=8249 amount=-4 +kerning first=280 second=327 amount=-2 +kerning first=221 second=237 amount=-2 +kerning first=302 second=275 amount=-2 +kerning first=1075 second=1105 amount=-1 +kerning first=313 second=75 amount=-2 +kerning first=229 second=8249 amount=-2 +kerning first=214 second=206 amount=-2 +kerning first=382 second=99 amount=-1 +kerning first=88 second=8249 amount=-4 +kerning first=352 second=327 amount=-3 +kerning first=261 second=248 amount=-1 +kerning first=355 second=253 amount=-1 +kerning first=116 second=237 amount=-1 +kerning first=198 second=379 amount=-1 +kerning first=346 second=99 amount=-1 +kerning first=234 second=339 amount=-1 +kerning first=286 second=206 amount=-1 +kerning first=206 second=199 amount=-2 +kerning first=279 second=234 amount=-1 +kerning first=101 second=187 amount=-2 +kerning first=192 second=212 amount=-3 +kerning first=1067 second=1081 amount=-1 +kerning first=221 second=209 amount=-1 +kerning first=68 second=83 amount=-1 +kerning first=216 second=381 amount=-2 +kerning first=87 second=212 amount=-3 +kerning first=1108 second=1102 amount=-1 +kerning first=1118 second=1103 amount=-4 +kerning first=288 second=381 amount=-2 +kerning first=102 second=234 amount=-1 +kerning first=8217 second=363 amount=-1 +kerning first=209 second=83 amount=-2 +kerning first=315 second=264 amount=-1 +kerning first=1031 second=1081 amount=-1 +kerning first=207 second=234 amount=-2 +kerning first=1079 second=1113 amount=-1 +kerning first=82 second=89 amount=-3 +kerning first=317 second=83 amount=-1 +kerning first=198 second=351 amount=-1 +kerning first=207 second=264 amount=-2 +kerning first=88 second=277 amount=-2 +kerning first=315 second=211 amount=-1 +kerning first=79 second=364 amount=-1 +kerning first=187 second=89 amount=-4 +kerning first=337 second=289 amount=-2 +kerning first=346 second=111 amount=-1 +kerning first=193 second=277 amount=-1 +kerning first=234 second=351 amount=-2 +kerning first=66 second=264 amount=-3 +kerning first=378 second=367 amount=-2 +kerning first=327 second=119 amount=-2 +kerning first=97 second=111 amount=-1 +kerning first=80 second=209 amount=-1 +kerning first=65 second=199 amount=-3 +kerning first=256 second=364 amount=-3 +kerning first=264 second=212 amount=-3 +kerning first=236 second=233 amount=-1 +kerning first=355 second=291 amount=-2 +kerning first=234 second=367 amount=-2 +kerning first=284 second=354 amount=-3 +kerning first=69 second=226 amount=-1 +kerning first=79 second=97 amount=-1 +kerning first=105 second=226 amount=-2 +kerning first=229 second=261 amount=-1 +kerning first=381 second=76 amount=-1 +kerning first=305 second=45 amount=-3 +kerning first=353 second=97 amount=-1 +kerning first=198 second=367 amount=-2 +kerning first=65 second=242 amount=-1 +kerning first=380 second=233 amount=-1 +kerning first=210 second=226 amount=-1 +kerning first=211 second=291 amount=-1 +kerning first=1071 second=1092 amount=-1 +kerning first=198 second=72 amount=-2 +kerning first=220 second=97 amount=-3 +kerning first=344 second=233 amount=-3 +kerning first=246 second=226 amount=-1 +kerning first=1063 second=1054 amount=-1 +kerning first=1107 second=1092 amount=-1 +kerning first=356 second=326 amount=-3 +kerning first=282 second=226 amount=-1 +kerning first=75 second=337 amount=-2 +kerning first=1046 second=1076 amount=-1 +kerning first=115 second=97 amount=-1 +kerning first=70 second=291 amount=-3 +kerning first=378 second=351 amount=-2 +kerning first=201 second=76 amount=-2 +kerning first=108 second=110 amount=-1 +kerning first=216 second=86 amount=-2 +kerning first=364 second=97 amount=-3 +kerning first=209 second=350 amount=-2 +kerning first=261 second=250 amount=-1 +kerning first=252 second=337 amount=-1 +kerning first=97 second=378 amount=-1 +kerning first=1024 second=1050 amount=-1 +kerning first=206 second=171 amount=-4 +kerning first=68 second=350 amount=-1 +kerning first=241 second=109 amount=-1 +kerning first=249 second=110 amount=-1 +kerning first=75 second=86 amount=-2 +kerning first=202 second=77 amount=-2 +kerning first=1060 second=1050 amount=-1 +kerning first=328 second=97 amount=-1 +kerning first=333 second=250 amount=-1 +kerning first=317 second=350 amount=-1 +kerning first=233 second=316 amount=-3 +kerning first=321 second=110 amount=-1 +kerning first=298 second=253 amount=-2 +kerning first=337 second=261 amount=-1 +kerning first=269 second=316 amount=-3 +kerning first=84 second=250 amount=-2 +kerning first=288 second=86 amount=-3 +kerning first=305 second=316 amount=-1 +kerning first=225 second=250 amount=-1 +kerning first=1086 second=1116 amount=-1 +kerning first=65 second=171 amount=-4 +kerning first=377 second=234 amount=-1 +kerning first=201 second=331 amount=-1 +kerning first=203 second=200 amount=-2 +kerning first=1086 second=1107 amount=-1 +kerning first=264 second=221 amount=-1 +kerning first=317 second=381 amount=-3 +kerning first=380 second=271 amount=-1 +kerning first=367 second=337 amount=-1 +kerning first=192 second=221 amount=-6 +kerning first=267 second=117 amount=-2 +kerning first=81 second=206 amount=-2 +kerning first=231 second=117 amount=-2 +kerning first=339 second=117 amount=-2 +kerning first=303 second=117 amount=-1 +kerning first=344 second=264 amount=-3 +kerning first=280 second=290 amount=-1 +kerning first=264 second=214 amount=-3 +kerning first=203 second=207 amount=-2 +kerning first=331 second=361 amount=-1 +kerning first=236 second=240 amount=-1 +kerning first=78 second=338 amount=-2 +kerning first=223 second=98 amount=-1 +kerning first=187 second=98 amount=-1 +kerning first=194 second=291 amount=-3 +kerning first=200 second=264 amount=-1 +kerning first=344 second=240 amount=-3 +kerning first=87 second=214 amount=-3 +kerning first=380 second=240 amount=-1 +kerning first=86 second=364 amount=-1 +kerning first=236 second=271 amount=-1 +kerning first=192 second=214 amount=-3 +kerning first=90 second=377 amount=-1 +kerning first=244 second=114 amount=-1 +kerning first=336 second=221 amount=-2 +kerning first=1079 second=1093 amount=-1 +kerning first=368 second=194 amount=-4 +kerning first=268 second=220 amount=-2 +kerning first=1045 second=1024 amount=-1 +kerning first=8218 second=119 amount=-3 +kerning first=259 second=311 amount=-1 +kerning first=76 second=201 amount=-2 +kerning first=353 second=249 amount=-1 +kerning first=377 second=304 amount=-1 +kerning first=196 second=220 amount=-3 +kerning first=99 second=275 amount=-1 +kerning first=332 second=194 amount=-4 +kerning first=187 second=330 amount=-5 +kerning first=89 second=324 amount=-3 +kerning first=317 second=90 amount=-3 +kerning first=67 second=287 amount=-3 +kerning first=207 second=227 amount=-2 +kerning first=1082 second=1077 amount=-2 +kerning first=86 second=97 amount=-5 +kerning first=284 second=317 amount=-1 +kerning first=198 second=84 amount=-1 +kerning first=1118 second=1077 amount=-2 +kerning first=102 second=227 amount=-2 +kerning first=240 second=291 amount=-2 +kerning first=103 second=287 amount=-2 +kerning first=376 second=220 amount=-1 +kerning first=66 second=227 amount=-3 +kerning first=1038 second=1058 amount=-1 +kerning first=1046 second=1077 amount=-2 +kerning first=204 second=291 amount=-3 +kerning first=227 second=97 amount=-1 +kerning first=244 second=287 amount=-2 +kerning first=287 second=311 amount=-2 +kerning first=71 second=317 amount=-1 +kerning first=304 second=213 amount=-2 +kerning first=374 second=324 amount=-3 +kerning first=118 second=337 amount=-3 +kerning first=251 second=311 amount=-2 +kerning first=268 second=213 amount=-3 +kerning first=338 second=324 amount=-1 +kerning first=99 second=291 amount=-3 +kerning first=82 second=337 amount=-3 +kerning first=316 second=287 amount=-3 +kerning first=376 second=213 amount=-3 +kerning first=1114 second=1088 amount=-1 +kerning first=1024 second=1081 amount=-1 +kerning first=280 second=287 amount=-3 +kerning first=212 second=317 amount=-2 +kerning first=66 second=234 amount=-1 +kerning first=371 second=97 amount=-2 +kerning first=351 second=347 amount=-3 +kerning first=230 second=324 amount=-2 +kerning first=352 second=287 amount=-3 +kerning first=288 second=77 amount=-1 +kerning first=327 second=261 amount=-2 +kerning first=371 second=318 amount=-2 +kerning first=242 second=187 amount=-2 +kerning first=259 second=337 amount=-1 +kerning first=315 second=303 amount=-2 +kerning first=187 second=367 amount=-1 +kerning first=350 second=187 amount=-1 +kerning first=201 second=71 amount=-1 +kerning first=335 second=97 amount=-1 +kerning first=216 second=77 amount=-2 +kerning first=266 second=324 amount=-1 +kerning first=352 second=318 amount=-2 +kerning first=225 second=8217 amount=-3 +kerning first=381 second=303 amount=-1 +kerning first=99 second=263 amount=-1 +kerning first=295 second=365 amount=-1 +kerning first=259 second=365 amount=-1 +kerning first=203 second=197 amount=-2 +kerning first=187 second=114 amount=-2 +kerning first=344 second=268 amount=-3 +kerning first=377 second=326 amount=-1 +kerning first=231 second=120 amount=-2 +kerning first=204 second=263 amount=-2 +kerning first=223 second=365 amount=-1 +kerning first=336 second=193 amount=-4 +kerning first=356 second=78 amount=-1 +kerning first=363 second=45 amount=-2 +kerning first=267 second=120 amount=-2 +kerning first=187 second=365 amount=-1 +kerning first=317 second=353 amount=-1 +kerning first=344 second=243 amount=-3 +kerning first=118 second=365 amount=-1 +kerning first=284 second=78 amount=-1 +kerning first=353 second=353 amount=-3 +kerning first=380 second=243 amount=-1 +kerning first=200 second=268 amount=-1 +kerning first=187 second=70 amount=-5 +kerning first=212 second=78 amount=-2 +kerning first=267 second=232 amount=-1 +kerning first=1071 second=1094 amount=-1 +kerning first=71 second=314 amount=-1 +kerning first=218 second=275 amount=-2 +kerning first=1039 second=1100 amount=-1 +kerning first=69 second=356 amount=-1 +kerning first=209 second=353 amount=-2 +kerning first=284 second=85 amount=-1 +kerning first=353 second=118 amount=-3 +kerning first=113 second=275 amount=-1 +kerning first=245 second=353 amount=-2 +kerning first=108 second=113 amount=-1 +kerning first=281 second=353 amount=-2 +kerning first=212 second=85 amount=-1 +kerning first=72 second=113 amount=-2 +kerning first=248 second=314 amount=-2 +kerning first=303 second=120 amount=-1 +kerning first=1049 second=1079 amount=-1 +kerning first=288 second=74 amount=-1 +kerning first=77 second=275 amount=-2 +kerning first=8250 second=102 amount=-1 +kerning first=339 second=120 amount=-2 +kerning first=209 second=118 amount=-2 +kerning first=375 second=120 amount=-1 +kerning first=71 second=85 amount=-1 +kerning first=367 second=365 amount=-1 +kerning first=317 second=118 amount=-3 +kerning first=284 second=314 amount=-1 +kerning first=201 second=303 amount=-1 +kerning first=104 second=353 amount=-1 +kerning first=331 second=365 amount=-1 +kerning first=249 second=113 amount=-1 +kerning first=281 second=118 amount=-2 +kerning first=1082 second=1108 amount=-2 +kerning first=252 second=105 amount=-2 +kerning first=303 second=380 amount=-1 +kerning first=222 second=8249 amount=-1 +kerning first=376 second=241 amount=-3 +kerning first=8250 second=362 amount=-4 +kerning first=275 second=235 amount=-1 +kerning first=8218 second=122 amount=-3 +kerning first=339 second=380 amount=-2 +kerning first=352 second=248 amount=-1 +kerning first=81 second=8249 amount=-1 +kerning first=311 second=235 amount=-3 +kerning first=74 second=283 amount=-2 +kerning first=375 second=380 amount=-3 +kerning first=117 second=8249 amount=-2 +kerning first=216 second=105 amount=-1 +kerning first=325 second=353 amount=-2 +kerning first=66 second=224 amount=-3 +kerning first=104 second=118 amount=-3 +kerning first=327 second=338 amount=-2 +kerning first=268 second=241 amount=-1 +kerning first=323 second=283 amount=-2 +kerning first=295 second=98 amount=-2 +kerning first=207 second=224 amount=-2 +kerning first=287 second=283 amount=-2 +kerning first=259 second=98 amount=-1 +kerning first=1079 second=1081 amount=-1 +kerning first=251 second=283 amount=-1 +kerning first=231 second=380 amount=-2 +kerning first=367 second=98 amount=-2 +kerning first=279 second=224 amount=-2 +kerning first=219 second=338 amount=-1 +kerning first=330 second=375 amount=-2 +kerning first=344 second=8221 amount=-5 +kerning first=267 second=380 amount=-2 +kerning first=356 second=85 amount=-1 +kerning first=243 second=224 amount=-1 +kerning first=1024 second=1053 amount=-1 +kerning first=198 second=112 amount=-2 +kerning first=376 second=248 amount=-3 +kerning first=103 second=45 amount=-3 +kerning first=198 second=204 amount=-2 +kerning first=351 second=224 amount=-1 +kerning first=87 second=193 amount=-6 +kerning first=67 second=318 amount=-1 +kerning first=334 second=325 amount=-2 +kerning first=236 second=226 amount=-2 +kerning first=103 second=318 amount=-3 +kerning first=304 second=248 amount=-2 +kerning first=90 second=380 amount=-3 +kerning first=203 second=228 amount=-1 +kerning first=232 second=248 amount=-1 +kerning first=264 second=193 amount=-3 +kerning first=244 second=318 amount=-2 +kerning first=366 second=8249 amount=-5 +kerning first=268 second=248 amount=-2 +kerning first=381 second=331 amount=-1 +kerning first=98 second=228 amount=-1 +kerning first=280 second=318 amount=-1 +kerning first=258 second=8249 amount=-4 +kerning first=316 second=318 amount=-2 +kerning first=256 second=101 amount=-1 +kerning first=1070 second=1038 amount=-3 +kerning first=1071 second=1097 amount=-1 +kerning first=1049 second=1072 amount=-1 +kerning first=379 second=205 amount=-1 +kerning first=1027 second=1047 amount=-1 +kerning first=1063 second=1047 amount=-1 +kerning first=71 second=82 amount=-1 +kerning first=364 second=101 amount=-2 +kerning first=313 second=66 amount=-2 +kerning first=365 second=230 amount=-1 +kerning first=279 second=231 amount=-1 +kerning first=1093 second=1098 amount=-1 +kerning first=315 second=255 amount=-3 +kerning first=257 second=230 amount=-1 +kerning first=251 second=281 amount=-1 +kerning first=279 second=255 amount=-2 +kerning first=1071 second=1073 amount=-1 +kerning first=199 second=205 amount=-3 +kerning first=287 second=281 amount=-2 +kerning first=243 second=255 amount=-3 +kerning first=106 second=251 amount=-1 +kerning first=323 second=281 amount=-2 +kerning first=207 second=255 amount=-2 +kerning first=70 second=251 amount=-1 +kerning first=221 second=230 amount=-5 +kerning first=97 second=108 amount=-1 +kerning first=1102 second=1075 amount=-1 +kerning first=74 second=281 amount=-2 +kerning first=66 second=8217 amount=-4 +kerning first=102 second=255 amount=-1 +kerning first=81 second=8221 amount=-2 +kerning first=376 second=216 amount=-3 +kerning first=248 second=347 amount=-2 +kerning first=102 second=8217 amount=3 +kerning first=334 second=44 amount=-3 +kerning first=283 second=251 amount=-2 +kerning first=381 second=99 amount=-1 +kerning first=378 second=107 amount=-2 +kerning first=198 second=107 amount=-1 +kerning first=355 second=251 amount=-1 +kerning first=67 second=364 amount=-2 +kerning first=196 second=216 amount=-3 +kerning first=107 second=347 amount=-2 +kerning first=258 second=8221 amount=-5 +kerning first=207 second=231 amount=-2 +kerning first=324 second=105 amount=-1 +kerning first=117 second=8221 amount=-3 +kerning first=268 second=216 amount=-3 +kerning first=66 second=231 amount=-1 +kerning first=382 second=371 amount=-2 +kerning first=234 second=107 amount=-2 +kerning first=325 second=250 amount=-2 +kerning first=304 second=216 amount=-2 +kerning first=102 second=231 amount=-1 +kerning first=259 second=333 amount=-1 +kerning first=381 second=67 amount=-1 +kerning first=115 second=106 amount=-1 +kerning first=248 second=345 amount=-1 +kerning first=369 second=229 amount=-1 +kerning first=211 second=282 amount=-2 +kerning first=266 second=80 amount=-3 +kerning first=278 second=171 amount=-2 +kerning first=87 second=217 amount=-1 +kerning first=79 second=106 amount=-1 +kerning first=187 second=68 amount=-5 +kerning first=82 second=333 amount=-3 +kerning first=356 second=345 amount=-1 +kerning first=216 second=346 amount=-1 +kerning first=274 second=368 amount=-2 +kerning first=201 second=67 amount=-1 +kerning first=328 second=106 amount=-2 +kerning first=1052 second=1102 amount=-1 +kerning first=310 second=368 amount=-2 +kerning first=89 second=80 amount=-1 +kerning first=118 second=333 amount=-3 +kerning first=264 second=217 amount=-2 +kerning first=75 second=346 amount=-2 +kerning first=80 second=230 amount=-1 +kerning first=236 second=243 amount=-1 +kerning first=116 second=230 amount=-1 +kerning first=203 second=204 amount=-2 +kerning first=288 second=346 amount=-2 +kerning first=1045 second=1049 amount=-1 +kerning first=346 second=368 amount=-3 +kerning first=207 second=338 amount=-2 +kerning first=338 second=80 amount=-2 +kerning first=367 second=333 amount=-1 +kerning first=233 second=307 amount=-2 +kerning first=269 second=307 amount=-2 +kerning first=305 second=307 amount=-1 +kerning first=1038 second=1033 amount=-5 +kerning first=374 second=80 amount=-1 +kerning first=201 second=334 amount=-1 +kerning first=88 second=284 amount=-3 +kerning first=1073 second=1074 amount=-1 +kerning first=8216 second=260 amount=-8 +kerning first=8217 second=326 amount=-2 +kerning first=256 second=369 amount=-3 +kerning first=233 second=44 amount=-3 +kerning first=198 second=79 amount=-1 +kerning first=256 second=104 amount=-2 +kerning first=364 second=369 amount=-1 +kerning first=102 second=259 amount=-2 +kerning first=201 second=77 amount=-2 +kerning first=115 second=369 amount=-1 +kerning first=288 second=374 amount=-3 +kerning first=198 second=344 amount=-2 +kerning first=220 second=369 amount=-1 +kerning first=350 second=192 amount=-4 +kerning first=381 second=334 amount=-1 +kerning first=216 second=374 amount=-2 +kerning first=378 second=109 amount=-2 +kerning first=351 second=227 amount=-1 +kerning first=198 second=109 amount=-1 +kerning first=327 second=246 amount=-2 +kerning first=120 second=229 amount=-2 +kerning first=1114 second=1085 amount=-1 +kerning first=83 second=194 amount=-4 +kerning first=336 second=217 amount=-1 +kerning first=258 second=8220 amount=-5 +kerning first=233 second=279 amount=-1 +kerning first=279 second=227 amount=-2 +kerning first=1080 second=1086 amount=-1 +kerning first=243 second=227 amount=-1 +kerning first=234 second=109 amount=-2 +kerning first=84 second=229 amount=-5 +kerning first=120 second=232 amount=-2 +kerning first=305 second=44 amount=-2 +kerning first=1093 second=1095 amount=-1 +kerning first=90 second=226 amount=-1 +kerning first=1031 second=1074 amount=-1 +kerning first=333 second=229 amount=-1 +kerning first=115 second=104 amount=-1 +kerning first=377 second=44 amount=-1 +kerning first=193 second=284 amount=-3 +kerning first=1067 second=1074 amount=-1 +kerning first=197 second=279 amount=-1 +kerning first=187 second=65 amount=-4 +kerning first=225 second=229 amount=-1 +kerning first=339 second=289 amount=-3 +kerning first=201 second=305 amount=-1 +kerning first=97 second=371 amount=-1 +kerning first=261 second=257 amount=-1 +kerning first=354 second=219 amount=-1 +kerning first=121 second=99 amount=-3 +kerning first=218 second=379 amount=-1 +kerning first=311 second=232 amount=-3 +kerning first=118 second=361 amount=-1 +kerning first=1039 second=1096 amount=-1 +kerning first=225 second=257 amount=-1 +kerning first=282 second=219 amount=-2 +kerning first=82 second=361 amount=-2 +kerning first=84 second=257 amount=-5 +kerning first=223 second=361 amount=-1 +kerning first=326 second=118 amount=-3 +kerning first=120 second=257 amount=-2 +kerning first=210 second=219 amount=-1 +kerning first=187 second=361 amount=-1 +kerning first=377 second=279 amount=-1 +kerning first=295 second=361 amount=-1 +kerning first=356 second=347 amount=-3 +kerning first=82 second=210 amount=-3 +kerning first=259 second=361 amount=-1 +kerning first=80 second=202 amount=-1 +kerning first=69 second=219 amount=-2 +kerning first=353 second=121 amount=-3 +kerning first=356 second=82 amount=-1 +kerning first=375 second=117 amount=-1 +kerning first=196 second=244 amount=-1 +kerning first=283 second=254 amount=-2 +kerning first=75 second=374 amount=-2 +kerning first=317 second=121 amount=-3 +kerning first=232 second=244 amount=-1 +kerning first=281 second=121 amount=-2 +kerning first=268 second=244 amount=-2 +kerning first=355 second=254 amount=-1 +kerning first=8216 second=291 amount=-4 +kerning first=245 second=121 amount=-3 +kerning first=1053 second=1099 amount=-1 +kerning first=204 second=267 amount=-2 +kerning first=304 second=244 amount=-2 +kerning first=209 second=121 amount=-2 +kerning first=212 second=82 amount=-2 +kerning first=106 second=254 amount=-1 +kerning first=333 second=257 amount=-1 +kerning first=99 second=267 amount=-1 +kerning first=376 second=244 amount=-3 +kerning first=296 second=249 amount=-1 +kerning first=369 second=257 amount=-1 +kerning first=1089 second=1099 amount=-1 +kerning first=1057 second=1116 amount=-1 +kerning first=87 second=209 amount=-1 +kerning first=379 second=199 amount=-1 +kerning first=356 second=69 amount=-1 +kerning first=88 second=8217 amount=-2 +kerning first=221 second=212 amount=-3 +kerning first=284 second=69 amount=-1 +kerning first=205 second=332 amount=-2 +kerning first=1086 second=1119 amount=-1 +kerning first=264 second=209 amount=-3 +kerning first=313 second=79 amount=-1 +kerning first=212 second=69 amount=-2 +kerning first=205 second=79 amount=-2 +kerning first=121 second=316 amount=-2 +kerning first=198 second=82 amount=-2 +kerning first=71 second=69 amount=-1 +kerning first=371 second=303 amount=-1 +kerning first=379 second=192 amount=-1 +kerning first=69 second=216 amount=-1 +kerning first=266 second=76 amount=-3 +kerning first=366 second=289 amount=-4 +kerning first=216 second=89 amount=-2 +kerning first=313 second=332 amount=-1 +kerning first=1089 second=1096 amount=-1 +kerning first=248 second=378 amount=-2 +kerning first=288 second=89 amount=-3 +kerning first=194 second=290 amount=-3 +kerning first=356 second=113 amount=-3 +kerning first=206 second=333 amount=-2 +kerning first=89 second=76 amount=-1 +kerning first=199 second=199 amount=-3 +kerning first=193 second=8217 amount=-5 +kerning first=240 second=110 amount=-1 +kerning first=199 second=192 amount=-3 +kerning first=77 second=242 amount=-2 +kerning first=313 second=72 amount=-2 +kerning first=218 second=242 amount=-2 +kerning first=86 second=82 amount=-1 +kerning first=221 second=205 amount=-1 +kerning first=89 second=336 amount=-3 +kerning first=75 second=89 amount=-2 +kerning first=203 second=226 amount=-1 +kerning first=8250 second=374 amount=-4 +kerning first=363 second=326 amount=-1 +kerning first=80 second=205 amount=-1 +kerning first=362 second=242 amount=-2 +kerning first=275 second=226 amount=-2 +kerning first=84 second=75 amount=-1 +kerning first=272 second=8221 amount=-2 +kerning first=72 second=119 amount=-2 +kerning first=347 second=226 amount=-1 +kerning first=307 second=45 amount=-3 +kerning first=282 second=216 amount=-1 +kerning first=374 second=76 amount=-1 +kerning first=108 second=119 amount=-3 +kerning first=219 second=326 amount=-2 +kerning first=338 second=76 amount=-2 +kerning first=255 second=326 amount=-2 +kerning first=97 second=253 amount=-3 +kerning first=236 second=8221 amount=-2 +kerning first=291 second=326 amount=-1 +kerning first=8250 second=381 amount=-4 +kerning first=1064 second=1092 amount=-1 +kerning first=352 second=302 amount=-3 +kerning first=226 second=316 amount=-1 +kerning first=82 second=86 amount=-3 +kerning first=203 second=219 amount=-2 +kerning first=262 second=316 amount=-1 +kerning first=87 second=202 amount=-1 +kerning first=378 second=100 amount=-1 +kerning first=321 second=119 amount=-3 +kerning first=336 second=209 amount=-2 +kerning first=381 second=45 amount=-3 +kerning first=336 second=202 amount=-2 +kerning first=208 second=302 amount=-2 +kerning first=1060 second=1059 amount=-3 +kerning first=264 second=202 amount=-3 +kerning first=45 second=374 amount=-4 +kerning first=187 second=86 amount=-4 +kerning first=98 second=226 amount=-1 +kerning first=363 second=279 amount=-1 +kerning first=67 second=302 amount=-3 +kerning first=346 second=375 amount=-2 +kerning first=337 second=259 amount=-1 +kerning first=310 second=375 amount=-3 +kerning first=8217 second=338 amount=-2 +kerning first=1100 second=1085 amount=-1 +kerning first=99 second=269 amount=-1 +kerning first=374 second=325 amount=-1 +kerning first=378 second=103 amount=-2 +kerning first=84 second=253 amount=-3 +kerning first=1064 second=1085 amount=-1 +kerning first=288 second=356 amount=-3 +kerning first=364 second=122 amount=-3 +kerning first=1025 second=1098 amount=-3 +kerning first=279 second=246 amount=-1 +kerning first=120 second=253 amount=-3 +kerning first=1071 second=1082 amount=-1 +kerning first=204 second=269 amount=-2 +kerning first=328 second=122 amount=-1 +kerning first=115 second=382 amount=-2 +kerning first=279 second=252 amount=-2 +kerning first=305 second=378 amount=-1 +kerning first=216 second=356 amount=-2 +kerning first=216 second=362 amount=-1 +kerning first=207 second=246 amount=-2 +kerning first=225 second=253 amount=-3 +kerning first=315 second=252 amount=-2 +kerning first=198 second=363 amount=-2 +kerning first=234 second=103 amount=-3 +kerning first=1089 second=1075 amount=-1 +kerning first=261 second=253 amount=-2 +kerning first=351 second=252 amount=-1 +kerning first=288 second=362 amount=-1 +kerning first=198 second=103 amount=-3 +kerning first=1053 second=1075 amount=-1 +kerning first=382 second=375 amount=-2 +kerning first=229 second=259 amount=-1 +kerning first=256 second=116 amount=-1 +kerning first=75 second=356 amount=-2 +kerning first=1059 second=1119 amount=-4 +kerning first=66 second=246 amount=-1 +kerning first=1045 second=1043 amount=-1 +kerning first=8217 second=345 amount=-2 +kerning first=115 second=122 amount=-2 +kerning first=328 second=382 amount=-1 +kerning first=84 second=213 amount=-3 +kerning first=75 second=362 amount=-2 +kerning first=79 second=122 amount=-2 +kerning first=364 second=382 amount=-3 +kerning first=88 second=259 amount=-1 +kerning first=378 second=363 amount=-2 +kerning first=369 second=245 amount=-1 +kerning first=378 second=369 amount=-2 +kerning first=1069 second=1058 amount=-1 +kerning first=1071 second=1089 amount=-1 +kerning first=198 second=369 amount=-2 +kerning first=314 second=307 amount=-1 +kerning first=220 second=382 amount=-3 +kerning first=364 second=109 amount=-2 +kerning first=97 second=375 amount=-3 +kerning first=220 second=122 amount=-3 +kerning first=328 second=109 amount=-1 +kerning first=1107 second=1089 amount=-1 +kerning first=234 second=369 amount=-2 +kerning first=70 second=266 amount=-1 +kerning first=283 second=279 amount=-1 +kerning first=111 second=355 amount=-1 +kerning first=202 second=115 amount=-1 +kerning first=75 second=355 amount=-1 +kerning first=194 second=336 amount=-3 +kerning first=220 second=109 amount=-2 +kerning first=97 second=115 amount=-1 +kerning first=356 second=256 amount=-6 +kerning first=335 second=380 amount=-2 +kerning first=106 second=279 amount=-1 +kerning first=302 second=336 amount=-2 +kerning first=346 second=115 amount=-1 +kerning first=70 second=279 amount=-1 +kerning first=252 second=355 amount=-1 +kerning first=338 second=336 amount=-1 +kerning first=382 second=115 amount=-2 +kerning first=1045 second=1036 amount=-1 +kerning first=374 second=336 amount=-3 +kerning first=274 second=115 amount=-1 +kerning first=208 second=296 amount=-2 +kerning first=1064 second=1086 amount=-1 +kerning first=310 second=115 amount=-1 +kerning first=369 second=232 amount=-1 +kerning first=333 second=253 amount=-3 +kerning first=280 second=296 amount=-2 +kerning first=369 second=253 amount=-3 +kerning first=241 second=351 amount=-1 +kerning first=202 second=108 amount=-1 +kerning first=8250 second=196 amount=-4 +kerning first=115 second=116 amount=-2 +kerning first=352 second=296 amount=-3 +kerning first=261 second=232 amount=-1 +kerning first=225 second=232 amount=-1 +kerning first=81 second=8217 amount=-2 +kerning first=274 second=108 amount=-1 +kerning first=80 second=206 amount=-1 +kerning first=1052 second=1096 amount=-1 +kerning first=382 second=108 amount=-2 +kerning first=346 second=108 amount=-2 +kerning first=198 second=370 amount=-2 +kerning first=84 second=232 amount=-3 +kerning first=104 second=98 amount=-2 +kerning first=356 second=75 amount=-1 +kerning first=266 second=328 amount=-1 +kerning first=352 second=315 amount=-3 +kerning first=244 second=303 amount=-1 +kerning first=330 second=290 amount=-2 +kerning first=221 second=206 amount=-1 +kerning first=230 second=328 amount=-2 +kerning first=280 second=303 amount=-1 +kerning first=366 second=290 amount=-1 +kerning first=284 second=75 amount=-1 +kerning first=1086 second=1113 amount=-2 +kerning first=208 second=303 amount=-1 +kerning first=76 second=200 amount=-2 +kerning first=1050 second=1113 amount=-2 +kerning first=208 second=315 amount=-2 +kerning first=75 second=83 amount=-2 +kerning first=374 second=328 amount=-3 +kerning first=264 second=196 amount=-3 +kerning first=1100 second=1107 amount=-1 +kerning first=338 second=328 amount=-1 +kerning first=280 second=315 amount=-2 +kerning first=316 second=303 amount=-1 +kerning first=258 second=290 amount=-3 +kerning first=1064 second=1107 amount=-1 +kerning first=317 second=77 amount=-2 +kerning first=352 second=303 amount=-3 +kerning first=317 second=211 amount=-1 +kerning first=275 second=225 amount=-2 +kerning first=216 second=83 amount=-1 +kerning first=317 second=380 amount=-3 +kerning first=217 second=365 amount=-1 +kerning first=311 second=225 amount=-2 +kerning first=71 second=323 amount=-1 +kerning first=87 second=196 amount=-6 +kerning first=353 second=380 amount=-2 +kerning first=347 second=225 amount=-1 +kerning first=288 second=83 amount=-2 +kerning first=1057 second=1117 amount=-1 +kerning first=281 second=98 amount=-2 +kerning first=381 second=46 amount=-1 +kerning first=98 second=225 amount=-1 +kerning first=284 second=323 amount=-1 +kerning first=313 second=85 amount=-3 +kerning first=240 second=249 amount=-1 +kerning first=209 second=380 amount=-1 +kerning first=353 second=98 amount=-2 +kerning first=203 second=225 amount=-1 +kerning first=356 second=323 amount=-1 +kerning first=245 second=380 amount=-2 +kerning first=317 second=98 amount=-2 +kerning first=8250 second=375 amount=-3 +kerning first=323 second=286 amount=-2 +kerning first=283 second=273 amount=-1 +kerning first=281 second=380 amount=-2 +kerning first=376 second=235 amount=-3 +kerning first=102 second=233 amount=-1 +kerning first=252 second=102 amount=-1 +kerning first=354 second=210 amount=-3 +kerning first=66 second=233 amount=-1 +kerning first=288 second=102 amount=-2 +kerning first=89 second=77 amount=-1 +kerning first=1104 second=1118 amount=-1 +kerning first=207 second=233 amount=-2 +kerning first=324 second=102 amount=-1 +kerning first=201 second=311 amount=-1 +kerning first=345 second=46 amount=-4 +kerning first=1025 second=1097 amount=-1 +kerning first=338 second=77 amount=-2 +kerning first=82 second=71 amount=-3 +kerning first=221 second=211 amount=-3 +kerning first=279 second=233 amount=-1 +kerning first=74 second=286 amount=-2 +kerning first=323 second=103 amount=-3 +kerning first=82 second=352 amount=-3 +kerning first=111 second=102 amount=-1 +kerning first=266 second=77 amount=-3 +kerning first=268 second=345 amount=-1 +kerning first=193 second=45 amount=-4 +kerning first=201 second=46 amount=-1 +kerning first=187 second=352 amount=-3 +kerning first=69 second=210 amount=-1 +kerning first=335 second=112 amount=-1 +kerning first=1089 second=1090 amount=-1 +kerning first=214 second=221 amount=-2 +kerning first=207 second=252 amount=-1 +kerning first=263 second=112 amount=-1 +kerning first=87 second=218 amount=-1 +kerning first=196 second=235 amount=-1 +kerning first=243 second=252 amount=-1 +kerning first=115 second=110 amount=-2 +kerning first=232 second=235 amount=-1 +kerning first=89 second=328 amount=-3 +kerning first=268 second=235 amount=-2 +kerning first=122 second=112 amount=-3 +kerning first=216 second=350 amount=-1 +kerning first=220 second=110 amount=-2 +kerning first=304 second=235 amount=-2 +kerning first=1053 second=1090 amount=-1 +kerning first=86 second=112 amount=-2 +kerning first=80 second=194 amount=-4 +kerning first=66 second=252 amount=-3 +kerning first=8217 second=332 amount=-2 +kerning first=227 second=113 amount=-1 +kerning first=214 second=237 amount=-1 +kerning first=113 second=250 amount=-2 +kerning first=209 second=378 amount=-1 +kerning first=187 second=353 amount=-1 +kerning first=77 second=250 amount=-2 +kerning first=204 second=275 amount=-2 +kerning first=223 second=353 amount=-2 +kerning first=321 second=171 amount=-1 +kerning first=8250 second=120 amount=-3 +kerning first=122 second=113 amount=-1 +kerning first=109 second=237 amount=-1 +kerning first=218 second=250 amount=-1 +kerning first=281 second=378 amount=-2 +kerning first=259 second=353 amount=-1 +kerning first=75 second=44 amount=-1 +kerning first=86 second=366 amount=-1 +kerning first=344 second=262 amount=-3 +kerning first=86 second=113 amount=-3 +kerning first=288 second=350 amount=-2 +kerning first=73 second=237 amount=-1 +kerning first=245 second=378 amount=-2 +kerning first=295 second=353 amount=-1 +kerning first=327 second=352 amount=-2 +kerning first=298 second=117 amount=-2 +kerning first=371 second=113 amount=-3 +kerning first=70 second=260 amount=-3 +kerning first=371 second=100 amount=-3 +kerning first=201 second=73 amount=-2 +kerning first=8250 second=108 amount=-1 +kerning first=108 second=171 amount=-3 +kerning first=353 second=365 amount=-1 +kerning first=203 second=315 amount=-2 +kerning first=317 second=365 amount=-2 +kerning first=104 second=378 amount=-1 +kerning first=82 second=353 amount=-2 +kerning first=213 second=171 amount=-1 +kerning first=281 second=365 amount=-2 +kerning first=263 second=113 amount=-1 +kerning first=352 second=237 amount=-3 +kerning first=277 second=273 amount=-1 +kerning first=68 second=378 amount=-2 +kerning first=249 second=171 amount=-2 +kerning first=227 second=100 amount=-1 +kerning first=204 second=288 amount=-2 +kerning first=211 second=260 amount=-4 +kerning first=263 second=100 amount=-1 +kerning first=313 second=87 amount=-3 +kerning first=374 second=220 amount=-1 +kerning first=200 second=249 amount=-2 +kerning first=1107 second=1076 amount=-2 +kerning first=298 second=350 amount=-2 +kerning first=236 second=249 amount=-1 +kerning first=1060 second=1078 amount=-1 +kerning first=1060 second=1065 amount=-1 +kerning first=353 second=378 amount=-2 +kerning first=86 second=100 amount=-3 +kerning first=313 second=354 amount=-3 +kerning first=317 second=378 amount=-3 +kerning first=122 second=100 amount=-1 +kerning first=344 second=249 amount=-2 +kerning first=200 second=262 amount=-1 +kerning first=1024 second=1078 amount=-2 +kerning first=380 second=249 amount=-2 +kerning first=1100 second=1091 amount=-2 +kerning first=45 second=289 amount=-3 +kerning first=277 second=339 amount=-1 +kerning first=1046 second=1105 amount=-2 +kerning first=202 second=377 amount=-1 +kerning first=268 second=223 amount=-1 +kerning first=81 second=289 amount=-1 +kerning first=76 second=282 amount=-2 +kerning first=362 second=248 amount=-2 +kerning first=1082 second=1105 amount=-2 +kerning first=1053 second=1077 amount=-1 +kerning first=353 second=114 amount=-1 +kerning first=376 second=223 amount=-3 +kerning first=217 second=198 amount=-4 +kerning first=117 second=289 amount=-3 +kerning first=84 second=71 amount=-3 +kerning first=68 second=380 amount=-2 +kerning first=1024 second=1065 amount=-1 +kerning first=8250 second=121 amount=-3 +kerning first=250 second=279 amount=-1 +kerning first=281 second=114 amount=-1 +kerning first=222 second=289 amount=-1 +kerning first=346 second=377 amount=-1 +kerning first=258 second=289 amount=-3 +kerning first=344 second=8220 amount=-5 +kerning first=218 second=248 amount=-2 +kerning first=81 second=274 amount=-2 +kerning first=362 second=263 amount=-2 +kerning first=232 second=223 amount=-1 +kerning first=1056 second=1039 amount=-1 +kerning first=201 second=327 amount=-2 +kerning first=77 second=248 amount=-2 +kerning first=45 second=274 amount=-5 +kerning first=274 second=377 amount=-1 +kerning first=245 second=114 amount=-1 +kerning first=76 second=198 amount=-2 +kerning first=330 second=289 amount=-3 +kerning first=272 second=8220 amount=-2 +kerning first=113 second=248 amount=-1 +kerning first=113 second=263 amount=-1 +kerning first=245 second=365 amount=-1 +kerning first=236 second=8220 amount=-2 +kerning first=66 second=356 amount=-3 +kerning first=74 second=287 amount=-3 +kerning first=209 second=365 amount=-2 +kerning first=1042 second=1064 amount=-2 +kerning first=353 second=110 amount=-2 +kerning first=86 second=379 amount=-3 +kerning first=218 second=263 amount=-2 +kerning first=1042 second=1079 amount=-2 +kerning first=222 second=274 amount=-2 +kerning first=104 second=365 amount=-1 +kerning first=1078 second=1079 amount=-1 +kerning first=381 second=327 amount=-1 +kerning first=67 second=315 amount=-3 +kerning first=110 second=287 amount=-2 +kerning first=212 second=75 amount=-2 +kerning first=209 second=99 amount=-2 +kerning first=100 second=339 amount=-1 +kerning first=331 second=353 amount=-1 +kerning first=251 second=287 amount=-3 +kerning first=367 second=353 amount=-2 +kerning first=281 second=99 amount=-1 +kerning first=8250 second=204 amount=-5 +kerning first=323 second=287 amount=-3 +kerning first=77 second=263 amount=-2 +kerning first=71 second=75 amount=-1 +kerning first=250 second=237 amount=-2 +kerning first=287 second=287 amount=-2 +kerning first=338 second=334 amount=-1 +kerning first=315 second=237 amount=-2 +kerning first=302 second=334 amount=-2 +kerning first=279 second=237 amount=-2 +kerning first=122 second=104 amount=-2 +kerning first=235 second=187 amount=-2 +kerning first=262 second=44 amount=-1 +kerning first=258 second=284 amount=-3 +kerning first=250 second=234 amount=-1 +kerning first=243 second=237 amount=-1 +kerning first=262 second=223 amount=-1 +kerning first=69 second=197 amount=-2 +kerning first=374 second=334 amount=-3 +kerning first=207 second=237 amount=-1 +kerning first=84 second=244 amount=-3 +kerning first=198 second=193 amount=-2 +kerning first=1064 second=1094 amount=-1 +kerning first=1049 second=1084 amount=-1 +kerning first=120 second=244 amount=-2 +kerning first=45 second=382 amount=-5 +kerning first=121 second=44 amount=-5 +kerning first=381 second=324 amount=-1 +kerning first=210 second=197 amount=-4 +kerning first=73 second=234 amount=-2 +kerning first=66 second=237 amount=-3 +kerning first=263 second=104 amount=-2 +kerning first=226 second=44 amount=-1 +kerning first=198 second=354 amount=-1 +kerning first=227 second=104 amount=-1 +kerning first=1089 second=1084 amount=-1 +kerning first=282 second=197 amount=-2 +kerning first=214 second=227 amount=-1 +kerning first=1053 second=1084 amount=-1 +kerning first=217 second=194 amount=-4 +kerning first=258 second=277 amount=-1 +kerning first=106 second=291 amount=-3 +kerning first=354 second=197 amount=-6 +kerning first=366 second=277 amount=-2 +kerning first=209 second=111 amount=-2 +kerning first=109 second=227 amount=-1 +kerning first=1045 second=1034 amount=-1 +kerning first=330 second=277 amount=-2 +kerning first=100 second=351 amount=-1 +kerning first=73 second=227 amount=-2 +kerning first=86 second=217 amount=-1 +kerning first=194 second=334 amount=-3 +kerning first=366 second=284 amount=-1 +kerning first=1053 second=1096 amount=-1 +kerning first=187 second=74 amount=-4 +kerning first=1093 second=1104 amount=-2 +kerning first=89 second=331 amount=-3 +kerning first=1049 second=1054 amount=-1 +kerning first=76 second=194 amount=-2 +kerning first=198 second=87 amount=-1 +kerning first=266 second=334 amount=-3 +kerning first=286 second=227 amount=-1 +kerning first=250 second=227 amount=-1 +kerning first=330 second=284 amount=-2 +kerning first=198 second=364 amount=-2 +kerning first=255 second=314 amount=-2 +kerning first=193 second=264 amount=-3 +kerning first=335 second=367 amount=-1 +kerning first=323 second=8249 amount=-4 +kerning first=89 second=327 amount=-1 +kerning first=382 second=111 amount=-1 +kerning first=1024 second=1074 amount=-1 +kerning first=354 second=248 amount=-3 +kerning first=371 second=367 amount=-1 +kerning first=326 second=257 amount=-1 +kerning first=263 second=367 amount=-2 +kerning first=288 second=361 amount=-1 +kerning first=251 second=8249 amount=-2 +kerning first=97 second=121 amount=-3 +kerning first=291 second=314 amount=-3 +kerning first=362 second=257 amount=-3 +kerning first=252 second=361 amount=-1 +kerning first=287 second=8249 amount=-3 +kerning first=352 second=102 amount=-3 +kerning first=281 second=111 amount=-1 +kerning first=337 second=187 amount=-2 +kerning first=254 second=257 amount=-1 +kerning first=254 second=254 amount=-1 +kerning first=304 second=378 amount=-1 +kerning first=266 second=327 amount=-3 +kerning first=205 second=351 amount=-2 +kerning first=363 second=314 amount=-2 +kerning first=227 second=367 amount=-1 +kerning first=290 second=254 amount=-1 +kerning first=324 second=361 amount=-1 +kerning first=202 second=315 amount=-2 +kerning first=346 second=114 amount=-2 +kerning first=313 second=351 amount=-1 +kerning first=109 second=224 amount=-1 +kerning first=86 second=367 amount=-2 +kerning first=326 second=254 amount=-2 +kerning first=283 second=267 amount=-1 +kerning first=338 second=327 amount=-2 +kerning first=277 second=351 amount=-2 +kerning first=122 second=367 amount=-2 +kerning first=110 second=8249 amount=-3 +kerning first=374 second=327 amount=-1 +kerning first=1056 second=1051 amount=-2 +kerning first=317 second=374 amount=-3 +kerning first=214 second=224 amount=-1 +kerning first=310 second=114 amount=1 +kerning first=274 second=117 amount=-2 +kerning first=344 second=261 amount=-2 +kerning first=382 second=117 amount=-2 +kerning first=380 second=261 amount=-1 +kerning first=369 second=244 amount=-1 +kerning first=346 second=117 amount=-1 +kerning first=371 second=104 amount=-1 +kerning first=72 second=171 amount=-4 +kerning first=1058 second=1114 amount=-2 +kerning first=290 second=250 amount=-1 +kerning first=346 second=121 amount=-2 +kerning first=266 second=338 amount=-3 +kerning first=1049 second=1057 amount=-1 +kerning first=200 second=261 amount=-1 +kerning first=254 second=250 amount=-1 +kerning first=313 second=344 amount=-2 +kerning first=236 second=261 amount=-2 +kerning first=8217 second=339 amount=-3 +kerning first=362 second=250 amount=-1 +kerning first=111 second=361 amount=-1 +kerning first=86 second=101 amount=-3 +kerning first=351 second=237 amount=-2 +kerning first=272 second=261 amount=-1 +kerning first=326 second=250 amount=-1 +kerning first=75 second=361 amount=-3 +kerning first=1045 second=1031 amount=-1 +kerning first=122 second=101 amount=-1 +kerning first=378 second=97 amount=-1 +kerning first=338 second=331 amount=-1 +kerning first=302 second=337 amount=-2 +kerning first=1071 second=1088 amount=-1 +kerning first=227 second=101 amount=-1 +kerning first=8217 second=79 amount=-2 +kerning first=279 second=240 amount=-1 +kerning first=230 second=331 amount=-2 +kerning first=266 second=337 amount=-2 +kerning first=1057 second=1107 amount=-1 +kerning first=263 second=101 amount=-1 +kerning first=1056 second=1041 amount=-1 +kerning first=266 second=331 amount=-1 +kerning first=230 second=337 amount=-1 +kerning first=210 second=200 amount=-2 +kerning first=121 second=108 amount=-2 +kerning first=97 second=117 amount=-1 +kerning first=323 second=290 amount=-2 +kerning first=371 second=101 amount=-3 +kerning first=202 second=117 amount=-2 +kerning first=69 second=200 amount=-2 +kerning first=374 second=337 amount=-3 +kerning first=288 second=98 amount=-1 +kerning first=374 second=330 amount=-1 +kerning first=1042 second=1067 amount=-2 +kerning first=252 second=98 amount=-2 +kerning first=66 second=240 amount=-1 +kerning first=1045 second=1037 amount=-1 +kerning first=69 second=207 amount=-2 +kerning first=113 second=251 amount=-2 +kerning first=324 second=98 amount=-2 +kerning first=290 second=323 amount=-1 +kerning first=229 second=271 amount=-1 +kerning first=338 second=330 amount=-2 +kerning first=111 second=98 amount=-1 +kerning first=207 second=240 amount=-2 +kerning first=218 second=251 amount=-1 +kerning first=221 second=214 amount=-3 +kerning first=75 second=98 amount=-1 +kerning first=89 second=8249 amount=-5 +kerning first=8216 second=279 amount=-3 +kerning first=102 second=240 amount=-1 +kerning first=382 second=380 amount=-2 +kerning first=79 second=194 amount=-4 +kerning first=290 second=251 amount=-1 +kerning first=74 second=290 amount=-2 +kerning first=254 second=251 amount=-1 +kerning first=282 second=201 amount=-2 +kerning first=103 second=311 amount=-2 +kerning first=362 second=251 amount=-1 +kerning first=1045 second=1030 amount=-1 +kerning first=89 second=71 amount=-3 +kerning first=67 second=311 amount=-1 +kerning first=326 second=251 amount=-1 +kerning first=216 second=90 amount=-2 +kerning first=210 second=201 amount=-2 +kerning first=194 second=71 amount=-3 +kerning first=377 second=298 amount=-1 +kerning first=288 second=90 amount=-2 +kerning first=334 second=304 amount=-2 +kerning first=210 second=207 amount=-2 +kerning first=69 second=201 amount=-2 +kerning first=266 second=330 amount=-3 +kerning first=203 second=220 amount=-2 +kerning first=262 second=304 amount=-3 +kerning first=282 second=207 amount=-2 +kerning first=68 second=368 amount=-1 +kerning first=354 second=200 amount=-1 +kerning first=8216 second=273 amount=-3 +kerning first=305 second=291 amount=-2 +kerning first=80 second=221 amount=-1 +kerning first=317 second=368 amount=-3 +kerning first=269 second=291 amount=-3 +kerning first=201 second=324 amount=-1 +kerning first=282 second=200 amount=-2 +kerning first=352 second=311 amount=-2 +kerning first=233 second=291 amount=-3 +kerning first=202 second=381 amount=-1 +kerning first=1089 second=1081 amount=-1 +kerning first=316 second=311 amount=-1 +kerning first=197 second=291 amount=-3 +kerning first=203 second=213 amount=-1 +kerning first=302 second=71 amount=-2 +kerning first=234 second=97 amount=-2 +kerning first=187 second=77 amount=-5 +kerning first=280 second=311 amount=-1 +kerning first=194 second=337 amount=-1 +kerning first=274 second=381 amount=-1 +kerning first=266 second=71 amount=-3 +kerning first=202 second=212 amount=-1 +kerning first=244 second=311 amount=-1 +kerning first=379 second=187 amount=-1 +kerning first=374 second=71 amount=-3 +kerning first=313 second=84 amount=-3 +kerning first=89 second=337 amount=-3 +kerning first=346 second=381 amount=-1 +kerning first=81 second=278 amount=-2 +kerning first=198 second=97 amount=-1 +kerning first=69 second=203 amount=-2 +kerning first=222 second=278 amount=-2 +kerning first=245 second=375 amount=-3 +kerning first=218 second=253 amount=-1 +kerning first=209 second=375 amount=-2 +kerning first=8250 second=117 amount=-1 +kerning first=199 second=193 amount=-3 +kerning first=254 second=253 amount=-3 +kerning first=221 second=218 amount=-1 +kerning first=97 second=120 amount=-1 +kerning first=104 second=375 amount=-2 +kerning first=1024 second=1075 amount=-1 +kerning first=207 second=243 amount=-2 +kerning first=89 second=70 amount=-1 +kerning first=326 second=253 amount=-2 +kerning first=371 second=103 amount=-1 +kerning first=8216 second=275 amount=-3 +kerning first=193 second=268 amount=-3 +kerning first=353 second=375 amount=-3 +kerning first=335 second=103 amount=-2 +kerning first=313 second=78 amount=-2 +kerning first=279 second=243 amount=-1 +kerning first=1071 second=1085 amount=-1 +kerning first=317 second=375 amount=-3 +kerning first=67 second=45 amount=-4 +kerning first=267 second=103 amount=-3 +kerning first=1049 second=1060 amount=-1 +kerning first=379 second=193 amount=-1 +kerning first=281 second=375 amount=-2 +kerning first=1100 second=1095 amount=-2 +kerning first=266 second=70 amount=-3 +kerning first=1064 second=1095 amount=-1 +kerning first=382 second=120 amount=-1 +kerning first=338 second=68 amount=-2 +kerning first=1056 second=1045 amount=-1 +kerning first=354 second=203 amount=-1 +kerning first=374 second=68 amount=-1 +kerning first=88 second=268 amount=-3 +kerning first=346 second=118 amount=-3 +kerning first=334 second=310 amount=-2 +kerning first=282 second=203 amount=-2 +kerning first=310 second=118 amount=-3 +kerning first=202 second=120 amount=-1 +kerning first=354 second=201 amount=-1 +kerning first=262 second=310 amount=-3 +kerning first=338 second=70 amount=-2 +kerning first=77 second=253 amount=-2 +kerning first=210 second=203 amount=-2 +kerning first=382 second=118 amount=-2 +kerning first=274 second=120 amount=-1 +kerning first=374 second=70 amount=-1 +kerning first=113 second=253 amount=-1 +kerning first=202 second=118 amount=-1 +kerning first=353 second=105 amount=-2 +kerning first=120 second=245 amount=-2 +kerning first=353 second=108 amount=-2 +kerning first=45 second=280 amount=-5 +kerning first=211 second=270 amount=-2 +kerning first=84 second=245 amount=-3 +kerning first=8250 second=377 amount=-4 +kerning first=274 second=118 amount=-1 +kerning first=81 second=280 amount=-2 +kerning first=103 second=305 amount=-1 +kerning first=281 second=105 amount=-2 +kerning first=67 second=305 amount=-1 +kerning first=317 second=105 amount=-2 +kerning first=202 second=73 amount=-2 +kerning first=208 second=305 amount=-1 +kerning first=1075 second=1108 amount=-1 +kerning first=209 second=105 amount=-1 +kerning first=369 second=241 amount=-1 +kerning first=222 second=280 amount=-2 +kerning first=245 second=105 amount=-1 +kerning first=261 second=245 amount=-1 +kerning first=97 second=118 amount=-3 +kerning first=1089 second=1083 amount=-1 +kerning first=117 second=283 amount=-1 +kerning first=280 second=305 amount=-1 +kerning first=104 second=105 amount=-1 +kerning first=225 second=245 amount=-1 +kerning first=244 second=305 amount=-1 +kerning first=374 second=65 amount=-6 +kerning first=200 second=204 amount=-2 +kerning first=201 second=318 amount=-1 +kerning first=1078 second=1073 amount=-1 +kerning first=261 second=241 amount=-1 +kerning first=366 second=283 amount=-2 +kerning first=352 second=305 amount=-3 +kerning first=225 second=241 amount=-1 +kerning first=330 second=283 amount=-2 +kerning first=316 second=305 amount=-1 +kerning first=68 second=105 amount=-1 +kerning first=333 second=241 amount=-1 +kerning first=376 second=228 amount=-4 +kerning first=264 second=334 amount=-3 +kerning first=104 second=108 amount=-1 +kerning first=356 second=335 amount=-3 +kerning first=86 second=370 amount=-1 +kerning first=258 second=283 amount=-1 +kerning first=1042 second=1070 amount=-2 +kerning first=245 second=108 amount=-2 +kerning first=84 second=241 amount=-3 +kerning first=304 second=228 amount=-2 +kerning first=8222 second=305 amount=-1 +kerning first=107 second=335 amount=-3 +kerning first=268 second=228 amount=-2 +kerning first=317 second=108 amount=-2 +kerning first=374 second=331 amount=-3 +kerning first=232 second=228 amount=-2 +kerning first=281 second=108 amount=-3 +kerning first=120 second=241 amount=-1 +kerning first=200 second=256 amount=-2 +kerning first=365 second=287 amount=-3 +kerning first=258 second=281 amount=-1 +kerning first=284 second=66 amount=-1 +kerning first=122 second=107 amount=-2 +kerning first=236 second=8249 amount=-3 +kerning first=100 second=347 amount=-1 +kerning first=263 second=107 amount=-2 +kerning first=73 second=231 amount=-2 +kerning first=212 second=66 amount=-2 +kerning first=227 second=107 amount=-1 +kerning first=366 second=281 amount=-2 +kerning first=1064 second=1097 amount=-1 +kerning first=380 second=255 amount=-2 +kerning first=117 second=281 amount=-1 +kerning first=1056 second=1047 amount=-1 +kerning first=272 second=256 amount=-4 +kerning first=344 second=255 amount=-3 +kerning first=250 second=231 amount=-1 +kerning first=356 second=66 amount=-1 +kerning first=1078 second=1072 amount=-1 +kerning first=233 second=8250 amount=-2 +kerning first=1100 second=1098 amount=-1 +kerning first=281 second=371 amount=-2 +kerning first=77 second=257 amount=-2 +kerning first=203 second=216 amount=-1 +kerning first=194 second=45 amount=-4 +kerning first=1064 second=1098 amount=-1 +kerning first=205 second=81 amount=-2 +kerning first=113 second=257 amount=-2 +kerning first=236 second=255 amount=-3 +kerning first=194 second=67 amount=-3 +kerning first=313 second=81 amount=-1 +kerning first=353 second=371 amount=-1 +kerning first=264 second=205 amount=-3 +kerning first=89 second=67 amount=-3 +kerning first=335 second=107 amount=-1 +kerning first=377 second=8250 amount=-1 +kerning first=356 second=332 amount=-3 +kerning first=104 second=371 amount=-1 +kerning first=313 second=347 amount=-1 +kerning first=8250 second=115 amount=-1 +kerning first=277 second=347 amount=-2 +kerning first=84 second=242 amount=-3 +kerning first=241 second=347 amount=-1 +kerning first=290 second=221 amount=-3 +kerning first=371 second=107 amount=-1 +kerning first=272 second=259 amount=-1 +kerning first=245 second=371 amount=-1 +kerning first=87 second=205 amount=-1 +kerning first=205 second=347 amount=-2 +kerning first=89 second=68 amount=-1 +kerning first=89 second=333 amount=-3 +kerning first=282 second=204 amount=-2 +kerning first=120 second=242 amount=-2 +kerning first=194 second=333 amount=-1 +kerning first=221 second=217 amount=-1 +kerning first=261 second=242 amount=-1 +kerning first=232 second=229 amount=-2 +kerning first=313 second=201 amount=-2 +kerning first=122 second=246 amount=-1 +kerning first=268 second=229 amount=-2 +kerning first=266 second=68 amount=-3 +kerning first=374 second=67 amount=-3 +kerning first=122 second=106 amount=-2 +kerning first=1048 second=1080 amount=-1 +kerning first=338 second=67 amount=-1 +kerning first=8250 second=380 amount=-5 +kerning first=376 second=229 amount=-5 +kerning first=369 second=242 amount=-1 +kerning first=266 second=67 amount=-3 +kerning first=250 second=230 amount=-1 +kerning first=121 second=307 amount=-2 +kerning first=286 second=230 amount=-1 +kerning first=115 second=119 amount=-3 +kerning first=374 second=333 amount=-3 +kerning first=321 second=334 amount=-1 +kerning first=66 second=243 amount=-1 +kerning first=187 second=346 amount=-3 +kerning first=335 second=106 amount=-2 +kerning first=102 second=243 amount=-1 +kerning first=226 second=307 amount=-1 +kerning first=227 second=106 amount=-1 +kerning first=214 second=230 amount=-1 +kerning first=220 second=119 amount=-2 +kerning first=82 second=346 amount=-3 +kerning first=263 second=106 amount=-2 +kerning first=73 second=230 amount=-2 +kerning first=256 second=119 amount=-3 +kerning first=266 second=333 amount=-2 +kerning first=109 second=230 amount=-1 +kerning first=230 second=333 amount=-1 +kerning first=69 second=204 amount=-2 +kerning first=202 second=314 amount=-1 +kerning first=328 second=119 amount=-3 +kerning first=1083 second=1104 amount=-1 +kerning first=210 second=204 amount=-2 +kerning first=291 second=328 amount=-1 +kerning first=371 second=106 amount=3 +kerning first=8250 second=114 amount=-2 +kerning first=364 second=119 amount=-2 +kerning first=302 second=333 amount=-2 +kerning first=323 second=275 amount=-2 +kerning first=121 second=230 amount=-3 +kerning first=222 second=74 amount=-2 +kerning first=1045 second=1053 amount=-1 +kerning first=251 second=275 amount=-1 +kerning first=8216 second=324 amount=-1 +kerning first=257 second=100 amount=-1 +kerning first=85 second=230 amount=-3 +kerning first=330 second=74 amount=-1 +kerning first=86 second=121 amount=-3 +kerning first=366 second=74 amount=-3 +kerning first=1043 second=1105 amount=-3 +kerning first=289 second=223 amount=-1 +kerning first=74 second=275 amount=-2 +kerning first=1055 second=1102 amount=-1 +kerning first=211 second=379 amount=-2 +kerning first=80 second=100 amount=-1 +kerning first=66 second=256 amount=-5 +kerning first=111 second=249 amount=-1 +kerning first=315 second=256 amount=-2 +kerning first=259 second=45 amount=-2 +kerning first=112 second=223 amount=-1 +kerning first=200 second=211 amount=-1 +kerning first=370 second=230 amount=-3 +kerning first=253 second=223 amount=-1 +kerning first=356 second=339 amount=-3 +kerning first=71 second=318 amount=-1 +kerning first=282 second=328 amount=-1 +kerning first=217 second=223 amount=-2 +kerning first=75 second=249 amount=-3 +kerning first=71 second=107 amount=-1 +kerning first=298 second=230 amount=-2 +kerning first=1056 second=1030 amount=-1 +kerning first=206 second=268 amount=-2 +kerning first=288 second=249 amount=-1 +kerning first=334 second=230 amount=-1 +kerning first=324 second=249 amount=-1 +kerning first=344 second=211 amount=-3 +kerning first=226 second=230 amount=-1 +kerning first=8216 second=269 amount=-3 +kerning first=76 second=223 amount=-1 +kerning first=278 second=268 amount=-1 +kerning first=262 second=230 amount=-2 +kerning first=86 second=204 amount=-1 +kerning first=102 second=248 amount=-1 +kerning first=252 second=249 amount=-1 +kerning first=86 second=218 amount=-1 +kerning first=70 second=365 amount=-1 +kerning first=107 second=339 amount=-3 +kerning first=366 second=334 amount=-1 +kerning first=251 second=289 amount=-3 +kerning first=210 second=192 amount=-4 +kerning first=85 second=244 amount=-2 +kerning first=1045 second=1039 amount=-1 +kerning first=287 second=289 amount=-2 +kerning first=325 second=237 amount=-1 +kerning first=1079 second=1091 amount=-2 +kerning first=121 second=244 amount=-3 +kerning first=65 second=268 amount=-3 +kerning first=323 second=289 amount=-3 +kerning first=289 second=237 amount=-2 +kerning first=90 second=313 amount=-1 +kerning first=1071 second=1086 amount=-1 +kerning first=253 second=237 amount=-2 +kerning first=69 second=192 amount=-2 +kerning first=8220 second=366 amount=-1 +kerning first=226 second=244 amount=-1 +kerning first=217 second=237 amount=-2 +kerning first=350 second=282 amount=-3 +kerning first=262 second=244 amount=-2 +kerning first=252 second=263 amount=-1 +kerning first=8218 second=226 amount=-2 +kerning first=298 second=244 amount=-2 +kerning first=112 second=237 amount=-1 +kerning first=71 second=65 amount=-3 +kerning first=278 second=282 amount=-2 +kerning first=76 second=237 amount=-2 +kerning first=75 second=107 amount=-1 +kerning first=84 second=8249 amount=-5 +kerning first=355 second=365 amount=-1 +kerning first=75 second=263 amount=-2 +kerning first=8217 second=252 amount=-1 +kerning first=99 second=244 amount=-1 +kerning first=200 second=225 amount=-1 +kerning first=283 second=365 amount=-2 +kerning first=315 second=270 amount=-2 +kerning first=112 second=251 amount=-1 +kerning first=1116 second=1079 amount=-1 +kerning first=248 second=353 amount=-2 +kerning first=278 second=296 amount=-2 +kerning first=221 second=346 amount=-3 +kerning first=66 second=270 amount=-4 +kerning first=268 second=315 amount=-3 +kerning first=74 second=289 amount=-3 +kerning first=217 second=251 amount=-1 +kerning first=330 second=334 amount=-2 +kerning first=1044 second=1079 amount=-1 +kerning first=110 second=289 amount=-2 +kerning first=90 second=327 amount=-1 +kerning first=350 second=296 amount=-3 +kerning first=106 second=365 amount=-1 +kerning first=87 second=206 amount=-1 +kerning first=289 second=251 amount=-1 +kerning first=334 second=202 amount=-2 +kerning first=253 second=251 amount=-1 +kerning first=248 second=121 amount=-3 +kerning first=242 second=254 amount=-1 +kerning first=106 second=351 amount=-2 +kerning first=86 second=232 amount=-3 +kerning first=262 second=202 amount=-3 +kerning first=278 second=254 amount=-1 +kerning first=252 second=277 amount=-1 +kerning first=325 second=251 amount=-2 +kerning first=80 second=374 amount=-1 +kerning first=314 second=254 amount=-1 +kerning first=264 second=206 amount=-3 +kerning first=107 second=121 amount=-1 +kerning first=65 second=254 amount=-2 +kerning first=76 second=209 amount=-2 +kerning first=336 second=206 amount=-2 +kerning first=71 second=381 amount=-2 +kerning first=101 second=254 amount=-2 +kerning first=75 second=277 amount=-2 +kerning first=70 second=351 amount=-2 +kerning first=1078 second=1077 amount=-2 +kerning first=1024 second=1103 amount=-2 +kerning first=268 second=69 amount=-3 +kerning first=364 second=214 amount=-1 +kerning first=246 second=117 amount=-1 +kerning first=1043 second=1119 amount=-2 +kerning first=248 second=367 amount=-1 +kerning first=201 second=199 amount=-1 +kerning first=365 second=114 amount=-1 +kerning first=370 second=244 amount=-2 +kerning first=212 second=381 amount=-2 +kerning first=1079 second=1119 amount=-1 +kerning first=110 second=261 amount=-1 +kerning first=284 second=367 amount=-1 +kerning first=356 second=79 amount=-3 +kerning first=282 second=117 amount=-2 +kerning first=80 second=72 amount=-1 +kerning first=284 second=381 amount=-2 +kerning first=313 second=76 amount=-2 +kerning first=220 second=105 amount=-2 +kerning first=8249 second=356 amount=-3 +kerning first=221 second=72 amount=-1 +kerning first=8222 second=363 amount=-1 +kerning first=71 second=367 amount=-1 +kerning first=221 second=114 amount=-1 +kerning first=354 second=117 amount=-2 +kerning first=356 second=381 amount=-3 +kerning first=107 second=367 amount=-1 +kerning first=354 second=192 amount=-6 +kerning first=1105 second=1096 amount=-1 +kerning first=356 second=121 amount=-3 +kerning first=304 second=83 amount=-2 +kerning first=355 second=351 amount=-1 +kerning first=282 second=192 amount=-2 +kerning first=75 second=291 amount=-2 +kerning first=283 second=337 amount=-1 +kerning first=262 second=216 amount=-3 +kerning first=376 second=83 amount=-3 +kerning first=314 second=240 amount=-1 +kerning first=298 second=216 amount=-2 +kerning first=206 second=240 amount=-2 +kerning first=90 second=196 amount=-1 +kerning first=212 second=219 amount=-1 +kerning first=1096 second=1089 amount=-1 +kerning first=201 second=171 amount=-2 +kerning first=85 second=216 amount=-1 +kerning first=69 second=117 amount=-2 +kerning first=251 second=261 amount=-1 +kerning first=287 second=261 amount=-3 +kerning first=380 second=382 amount=-2 +kerning first=350 second=240 amount=-1 +kerning first=8222 second=89 amount=-6 +kerning first=323 second=261 amount=-2 +kerning first=284 second=107 amount=-1 +kerning first=105 second=117 amount=-1 +kerning first=248 second=107 amount=-1 +kerning first=1045 second=1095 amount=-2 +kerning first=1105 second=1082 amount=-1 +kerning first=381 second=171 amount=-3 +kerning first=74 second=267 amount=-2 +kerning first=228 second=115 amount=-1 +kerning first=220 second=229 amount=-3 +kerning first=101 second=240 amount=-1 +kerning first=80 second=86 amount=-1 +kerning first=252 second=307 amount=-2 +kerning first=350 second=254 amount=-2 +kerning first=244 second=44 amount=-3 +kerning first=365 second=100 amount=-1 +kerning first=1051 second=1060 amount=-1 +kerning first=65 second=240 amount=-1 +kerning first=345 second=171 amount=-1 +kerning first=187 second=350 amount=-3 +kerning first=346 second=201 amount=-3 +kerning first=277 second=252 amount=-2 +kerning first=261 second=228 amount=-1 +kerning first=313 second=252 amount=-2 +kerning first=82 second=350 amount=-3 +kerning first=213 second=221 amount=-2 +kerning first=274 second=201 amount=-2 +kerning first=1056 second=1050 amount=-1 +kerning first=8222 second=377 amount=-1 +kerning first=216 second=207 amount=-2 +kerning first=371 second=246 amount=-3 +kerning first=202 second=201 amount=-2 +kerning first=8218 second=254 amount=-1 +kerning first=100 second=252 amount=-1 +kerning first=111 second=305 amount=-1 +kerning first=381 second=227 amount=-1 +kerning first=365 second=44 amount=-2 +kerning first=236 second=378 amount=-1 +kerning first=345 second=227 amount=-1 +kerning first=205 second=252 amount=-1 +kerning first=216 second=305 amount=-1 +kerning first=263 second=246 amount=-1 +kerning first=1059 second=1101 amount=-3 +kerning first=1091 second=1076 amount=-3 +kerning first=241 second=252 amount=-1 +kerning first=1057 second=1104 amount=-1 +kerning first=227 second=246 amount=-1 +kerning first=267 second=271 amount=-1 +kerning first=86 second=260 amount=-6 +kerning first=200 second=382 amount=-2 +kerning first=101 second=226 amount=-2 +kerning first=303 second=271 amount=-3 +kerning first=201 second=356 amount=-1 +kerning first=252 second=305 amount=-1 +kerning first=282 second=103 amount=-3 +kerning first=324 second=291 amount=-2 +kerning first=216 second=45 amount=-1 +kerning first=272 second=382 amount=-2 +kerning first=86 second=246 amount=-3 +kerning first=206 second=226 amount=-2 +kerning first=375 second=271 amount=-3 +kerning first=324 second=305 amount=-1 +kerning first=210 second=103 amount=-1 +kerning first=252 second=291 amount=-3 +kerning first=106 second=337 amount=-1 +kerning first=242 second=226 amount=-1 +kerning first=288 second=45 amount=-3 +kerning first=1101 second=1107 amount=-1 +kerning first=278 second=107 amount=-1 +kerning first=216 second=291 amount=-1 +kerning first=70 second=337 amount=-1 +kerning first=278 second=226 amount=-1 +kerning first=252 second=45 amount=-2 +kerning first=288 second=207 amount=-1 +kerning first=105 second=103 amount=-3 +kerning first=314 second=226 amount=-2 +kerning first=187 second=80 amount=-5 +kerning first=69 second=103 amount=-3 +kerning first=79 second=84 amount=-2 +kerning first=350 second=226 amount=-2 +kerning first=324 second=45 amount=-3 +kerning first=382 second=365 amount=-2 +kerning first=1087 second=1089 amount=-1 +kerning first=216 second=193 amount=-4 +kerning first=313 second=336 amount=-1 +kerning first=245 second=118 amount=-2 +kerning first=1098 second=1103 amount=-2 +kerning first=267 second=109 amount=-2 +kerning first=210 second=89 amount=-2 +kerning first=375 second=109 amount=-2 +kerning first=1045 second=1052 amount=-1 +kerning first=256 second=84 amount=-6 +kerning first=381 second=213 amount=-1 +kerning first=339 second=109 amount=-2 +kerning first=227 second=115 amount=-1 +kerning first=8222 second=117 amount=-1 +kerning first=101 second=8250 amount=-2 +kerning first=90 second=109 amount=-1 +kerning first=86 second=115 amount=-3 +kerning first=278 second=212 amount=-1 +kerning first=8216 second=194 amount=-8 +kerning first=122 second=115 amount=-2 +kerning first=187 second=90 amount=-4 +kerning first=354 second=103 amount=-4 +kerning first=257 second=44 amount=-1 +kerning first=335 second=115 amount=-2 +kerning first=223 second=104 amount=-1 +kerning first=278 second=78 amount=-2 +kerning first=221 second=44 amount=-5 +kerning first=282 second=364 amount=-2 +kerning first=371 second=115 amount=-2 +kerning first=187 second=104 amount=-1 +kerning first=79 second=70 amount=-2 +kerning first=118 second=104 amount=-2 +kerning first=286 second=117 amount=-1 +kerning first=371 second=232 amount=-3 +kerning first=82 second=104 amount=-3 +kerning first=80 second=44 amount=-4 +kerning first=201 second=213 amount=-1 +kerning first=282 second=89 amount=-1 +kerning first=367 second=104 amount=-2 +kerning first=122 second=232 amount=-1 +kerning first=263 second=232 amount=-1 +kerning first=1027 second=1085 amount=-2 +kerning first=227 second=232 amount=-1 +kerning first=259 second=104 amount=-1 +kerning first=266 second=325 amount=-3 +kerning first=256 second=98 amount=-2 +kerning first=369 second=8249 amount=-2 +kerning first=216 second=73 amount=-2 +kerning first=210 second=75 amount=-2 +kerning first=367 second=118 amount=-3 +kerning first=338 second=325 amount=-2 +kerning first=328 second=98 amount=-2 +kerning first=288 second=73 amount=-1 +kerning first=8222 second=307 amount=-1 +kerning first=218 second=103 amount=-4 +kerning first=69 second=75 amount=-2 +kerning first=269 second=303 amount=-2 +kerning first=259 second=118 amount=-3 +kerning first=365 second=252 amount=-1 +kerning first=354 second=75 amount=-1 +kerning first=75 second=235 amount=-2 +kerning first=305 second=303 amount=-1 +kerning first=223 second=118 amount=-2 +kerning first=307 second=120 amount=-1 +kerning first=89 second=283 amount=-3 +kerning first=366 second=216 amount=-1 +kerning first=363 second=250 amount=-1 +kerning first=313 second=280 amount=-2 +kerning first=331 second=118 amount=-3 +kerning first=282 second=75 amount=-2 +kerning first=274 second=354 amount=-1 +kerning first=233 second=303 amount=-2 +kerning first=115 second=98 amount=-2 +kerning first=295 second=118 amount=-3 +kerning first=201 second=328 amount=-1 +kerning first=82 second=118 amount=-3 +kerning first=302 second=283 amount=-2 +kerning first=1117 second=1108 amount=-1 +kerning first=284 second=196 amount=-3 +kerning first=266 second=283 amount=-2 +kerning first=187 second=118 amount=-3 +kerning first=381 second=328 amount=-1 +kerning first=1091 second=1104 amount=-2 +kerning first=1070 second=1070 amount=-1 +kerning first=356 second=196 amount=-6 +kerning first=202 second=45 amount=-2 +kerning first=118 second=118 amount=-1 +kerning first=194 second=283 amount=-1 +kerning first=1055 second=1104 amount=-1 +kerning first=201 second=370 amount=-2 +kerning first=369 second=311 amount=-2 +kerning first=71 second=196 amount=-3 +kerning first=381 second=241 amount=-1 +kerning first=374 second=283 amount=-3 +kerning first=212 second=196 amount=-4 +kerning first=103 second=314 amount=-3 +kerning first=205 second=266 amount=-2 +kerning first=115 second=112 amount=-3 +kerning first=75 second=87 amount=-2 +kerning first=370 second=286 amount=-1 +kerning first=338 second=311 amount=-1 +kerning first=222 second=362 amount=-1 +kerning first=79 second=112 amount=-1 +kerning first=1070 second=1042 amount=-1 +kerning first=262 second=286 amount=-3 +kerning first=258 second=362 amount=-3 +kerning first=1055 second=1090 amount=-1 +kerning first=298 second=286 amount=-2 +kerning first=266 second=311 amount=-1 +kerning first=1092 second=1095 amount=-1 +kerning first=356 second=210 amount=-3 +kerning first=1036 second=1059 amount=-3 +kerning first=280 second=314 amount=-1 +kerning first=120 second=8221 amount=-2 +kerning first=377 second=331 amount=-1 +kerning first=65 second=365 amount=-3 +kerning first=244 second=314 amount=-2 +kerning first=45 second=362 amount=-4 +kerning first=86 second=85 amount=-1 +kerning first=85 second=286 amount=-1 +kerning first=352 second=314 amount=-2 +kerning first=81 second=362 amount=-1 +kerning first=305 second=331 amount=-1 +kerning first=316 second=314 amount=-2 +kerning first=339 second=273 amount=-1 +kerning first=67 second=314 amount=-1 +kerning first=379 second=270 amount=-1 +kerning first=381 second=255 amount=-3 +kerning first=65 second=112 amount=-3 +kerning first=233 second=331 amount=-2 +kerning first=195 second=81 amount=-3 +kerning first=71 second=224 amount=-1 +kerning first=252 second=235 amount=-1 +kerning first=333 second=8221 amount=-2 +kerning first=269 second=331 amount=-2 +kerning first=328 second=369 amount=-1 +kerning first=225 second=8221 amount=-3 +kerning first=364 second=112 amount=-2 +kerning first=261 second=8221 amount=-3 +kerning first=328 second=112 amount=-1 +kerning first=195 second=67 amount=-3 +kerning first=233 second=345 amount=-1 +kerning first=288 second=221 amount=-3 +kerning first=107 second=224 amount=-2 +kerning first=1070 second=1056 amount=-1 +kerning first=1059 second=1087 amount=-4 +kerning first=381 second=269 amount=-1 +kerning first=1050 second=1058 amount=-3 +kerning first=269 second=345 amount=-1 +kerning first=248 second=224 amount=-1 +kerning first=266 second=363 amount=-2 +kerning first=90 second=67 amount=-1 +kerning first=216 second=221 amount=-2 +kerning first=368 second=256 amount=-4 +kerning first=212 second=224 amount=-1 +kerning first=369 second=8221 amount=-3 +kerning first=220 second=112 amount=-2 +kerning first=75 second=221 amount=-2 +kerning first=334 second=229 amount=-1 +kerning first=313 second=266 amount=-1 +kerning first=284 second=224 amount=-1 +kerning first=81 second=205 amount=-2 +kerning first=86 second=302 amount=-1 +kerning first=194 second=255 amount=-3 +kerning first=283 second=250 amount=-2 +kerning first=187 second=116 amount=-1 +kerning first=252 second=347 amount=-2 +kerning first=106 second=281 amount=-1 +kerning first=356 second=224 amount=-4 +kerning first=89 second=255 amount=-3 +kerning first=355 second=250 amount=-1 +kerning first=111 second=378 amount=-2 +kerning first=380 second=326 amount=-2 +kerning first=111 second=347 amount=-2 +kerning first=1042 second=1033 amount=-1 +kerning first=8217 second=353 amount=-2 +kerning first=105 second=307 amount=-1 +kerning first=75 second=347 amount=-1 +kerning first=187 second=204 amount=-5 +kerning first=333 second=371 amount=-1 +kerning first=70 second=250 amount=-1 +kerning first=67 second=328 amount=-1 +kerning first=369 second=371 amount=-1 +kerning first=363 second=248 amount=-1 +kerning first=234 second=101 amount=-1 +kerning first=200 second=326 amount=-1 +kerning first=379 second=352 amount=-1 +kerning first=246 second=307 amount=-1 +kerning first=236 second=326 amount=-2 +kerning first=316 second=328 amount=-1 +kerning first=120 second=371 amount=-3 +kerning first=1057 second=1097 amount=-1 +kerning first=278 second=366 amount=-2 +kerning first=280 second=328 amount=-1 +kerning first=274 second=257 amount=-1 +kerning first=209 second=333 amount=-2 +kerning first=72 second=212 amount=-2 +kerning first=244 second=328 amount=-1 +kerning first=378 second=101 amount=-1 +kerning first=326 second=8221 amount=-4 +kerning first=261 second=371 amount=-1 +kerning first=202 second=257 amount=-1 +kerning first=281 second=333 amount=-1 +kerning first=252 second=378 amount=-2 +kerning first=1030 second=1073 amount=-1 +kerning first=284 second=8220 amount=-1 +kerning first=216 second=378 amount=-2 +kerning first=97 second=257 amount=-1 +kerning first=248 second=8220 amount=-2 +kerning first=324 second=378 amount=-1 +kerning first=1056 second=1092 amount=-1 +kerning first=350 second=366 amount=-3 +kerning first=324 second=347 amount=-1 +kerning first=352 second=328 amount=-1 +kerning first=194 second=252 amount=-3 +kerning first=364 second=288 amount=-1 +kerning first=107 second=8220 amount=-2 +kerning first=286 second=217 amount=-1 +kerning first=1048 second=1090 amount=-1 +kerning first=121 second=113 amount=-3 +kerning first=195 second=243 amount=-1 +kerning first=314 second=106 amount=-3 +kerning first=85 second=113 amount=-2 +kerning first=231 second=243 amount=-1 +kerning first=350 second=106 amount=-1 +kerning first=267 second=243 amount=-1 +kerning first=315 second=80 amount=-2 +kerning first=220 second=288 amount=-1 +kerning first=68 second=87 amount=-2 +kerning first=298 second=113 amount=-2 +kerning first=65 second=366 amount=-3 +kerning first=121 second=345 amount=-1 +kerning first=262 second=113 amount=-2 +kerning first=226 second=113 amount=-1 +kerning first=256 second=288 amount=-3 +kerning first=90 second=243 amount=-1 +kerning first=8220 second=289 amount=-4 +kerning first=313 second=210 amount=-1 +kerning first=262 second=345 amount=-1 +kerning first=260 second=45 amount=-4 +kerning first=8217 second=121 amount=-1 +kerning first=221 second=262 amount=-3 +kerning first=350 second=198 amount=-4 +kerning first=205 second=210 amount=-2 +kerning first=66 second=368 amount=-3 +kerning first=235 second=120 amount=-2 +kerning first=370 second=345 amount=-1 +kerning first=303 second=243 amount=-3 +kerning first=283 second=281 amount=-1 +kerning first=302 second=255 amount=-2 +kerning first=315 second=368 amount=-3 +kerning first=1101 second=1113 amount=-2 +kerning first=8222 second=237 amount=-1 +kerning first=339 second=243 amount=-1 +kerning first=266 second=255 amount=-1 +kerning first=375 second=243 amount=-3 +kerning first=214 second=217 amount=-1 +kerning first=230 second=255 amount=-2 +kerning first=1039 second=1094 amount=-1 +kerning first=8250 second=296 amount=-5 +kerning first=97 second=229 amount=-1 +kerning first=374 second=227 amount=-5 +kerning first=79 second=366 amount=-1 +kerning first=89 second=196 amount=-6 +kerning first=338 second=227 amount=-1 +kerning first=80 second=234 amount=-1 +kerning first=1030 second=1101 amount=-1 +kerning first=233 second=99 amount=-1 +kerning first=302 second=227 amount=-2 +kerning first=213 second=219 amount=-1 +kerning first=197 second=99 amount=-1 +kerning first=266 second=227 amount=-2 +kerning first=200 second=354 amount=-1 +kerning first=1058 second=1099 amount=-2 +kerning first=264 second=44 amount=-1 +kerning first=235 second=324 amount=-2 +kerning first=90 second=289 amount=-3 +kerning first=228 second=44 amount=-1 +kerning first=199 second=324 amount=-1 +kerning first=269 second=99 amount=-1 +kerning first=272 second=354 amount=-2 +kerning first=336 second=44 amount=-3 +kerning first=202 second=229 amount=-1 +kerning first=117 second=233 amount=-1 +kerning first=111 second=104 amount=-1 +kerning first=75 second=104 amount=-1 +kerning first=344 second=354 amount=-3 +kerning first=362 second=267 amount=-2 +kerning first=338 second=197 amount=-2 +kerning first=99 second=335 amount=-1 +kerning first=101 second=106 amount=-2 +kerning first=365 second=234 amount=-1 +kerning first=67 second=356 amount=-1 +kerning first=346 second=229 amount=-2 +kerning first=84 second=111 amount=-3 +kerning first=382 second=229 amount=-1 +kerning first=258 second=233 amount=-1 +kerning first=242 second=106 amount=-2 +kerning first=245 second=44 amount=-3 +kerning first=338 second=109 amount=-1 +kerning first=221 second=234 amount=-3 +kerning first=330 second=233 amount=-2 +kerning first=354 second=279 amount=-3 +kerning first=334 second=317 amount=-2 +kerning first=1052 second=1060 amount=-1 +kerning first=111 second=353 amount=-2 +kerning first=317 second=87 amount=-3 +kerning first=261 second=171 amount=-2 +kerning first=89 second=227 amount=-5 +kerning first=67 second=110 amount=-1 +kerning first=317 second=361 amount=-2 +kerning first=115 second=316 amount=-2 +kerning first=352 second=82 amount=-3 +kerning first=103 second=110 amount=-1 +kerning first=281 second=361 amount=-2 +kerning first=77 second=267 amount=-2 +kerning first=1056 second=1064 amount=-1 +kerning first=1101 second=1085 amount=-1 +kerning first=369 second=111 amount=-1 +kerning first=353 second=361 amount=-1 +kerning first=256 second=316 amount=-2 +kerning first=244 second=110 amount=-1 +kerning first=321 second=212 amount=-1 +kerning first=208 second=82 amount=-2 +kerning first=120 second=111 amount=-2 +kerning first=382 second=257 amount=-1 +kerning first=280 second=110 amount=-1 +kerning first=187 second=364 amount=-4 +kerning first=328 second=316 amount=-1 +kerning first=316 second=110 amount=-1 +kerning first=200 second=66 amount=-2 +kerning first=113 second=267 amount=-1 +kerning first=280 second=82 amount=-2 +kerning first=225 second=111 amount=-1 +kerning first=310 second=257 amount=-1 +kerning first=219 second=65 amount=-4 +kerning first=352 second=110 amount=-1 +kerning first=82 second=364 amount=-3 +kerning first=231 second=271 amount=-1 +kerning first=261 second=111 amount=-1 +kerning first=346 second=257 amount=-2 +kerning first=317 second=45 amount=-1 +kerning first=87 second=44 amount=-5 +kerning first=67 second=82 amount=-3 +kerning first=1065 second=1057 amount=-1 +kerning first=352 second=72 amount=-3 +kerning first=267 second=365 amount=-2 +kerning first=288 second=104 amount=-1 +kerning first=252 second=104 amount=-2 +kerning first=272 second=66 amount=-2 +kerning first=219 second=105 amount=-2 +kerning first=104 second=361 amount=-1 +kerning first=76 second=89 amount=-3 +kerning first=86 second=274 amount=-1 +kerning first=209 second=361 amount=-2 +kerning first=268 second=97 amount=-2 +kerning first=337 second=46 amount=-3 +kerning first=208 second=304 amount=-2 +kerning first=304 second=97 amount=-2 +kerning first=272 second=122 amount=-2 +kerning first=79 second=77 amount=-2 +kerning first=236 second=122 amount=-1 +kerning first=377 second=71 amount=-1 +kerning first=313 second=121 amount=-3 +kerning first=264 second=72 amount=-3 +kerning first=287 second=102 amount=-1 +kerning first=232 second=97 amount=-2 +kerning first=200 second=122 amount=-2 +kerning first=197 second=71 amount=-3 +kerning first=277 second=121 amount=-2 +kerning first=337 second=225 amount=-1 +kerning first=241 second=121 amount=-2 +kerning first=336 second=72 amount=-2 +kerning first=229 second=46 amount=-1 +kerning first=205 second=121 amount=-2 +kerning first=211 second=77 amount=-2 +kerning first=74 second=102 amount=-1 +kerning first=380 second=122 amount=-2 +kerning first=110 second=102 amount=-1 +kerning first=76 second=377 amount=-3 +kerning first=376 second=97 amount=-5 +kerning first=302 second=199 amount=-2 +kerning first=338 second=199 amount=-1 +kerning first=192 second=375 amount=-3 +kerning first=374 second=199 amount=-3 +kerning first=84 second=200 amount=-1 +kerning first=89 second=249 amount=-1 +kerning first=217 second=377 amount=-1 +kerning first=88 second=46 amount=-1 +kerning first=232 second=245 amount=-1 +kerning first=87 second=332 amount=-3 +kerning first=282 second=199 amount=-1 +kerning first=253 second=117 amount=-1 +kerning first=376 second=214 amount=-3 +kerning first=1050 second=1077 amount=-2 +kerning first=217 second=117 amount=-1 +kerning first=69 second=363 amount=-2 +kerning first=325 second=117 amount=-2 +kerning first=105 second=363 amount=-1 +kerning first=98 second=287 amount=-2 +kerning first=289 second=117 amount=-1 +kerning first=87 second=72 amount=-1 +kerning first=264 second=332 amount=-3 +kerning first=1024 second=1058 amount=-1 +kerning first=70 second=194 amount=-3 +kerning first=109 second=347 amount=-1 +kerning first=350 second=310 amount=-3 +kerning first=203 second=287 amount=-3 +kerning first=196 second=214 amount=-3 +kerning first=347 second=259 amount=-1 +kerning first=73 second=242 amount=-2 +kerning first=278 second=310 amount=-2 +kerning first=304 second=214 amount=-2 +kerning first=72 second=240 amount=-2 +kerning first=275 second=287 amount=-3 +kerning first=1064 second=1114 amount=-1 +kerning first=268 second=214 amount=-3 +kerning first=108 second=240 amount=-1 +kerning first=8217 second=266 amount=-2 +kerning first=347 second=287 amount=-3 +kerning first=192 second=220 amount=-3 +kerning first=315 second=284 amount=-1 +kerning first=364 second=250 amount=-1 +kerning first=311 second=287 amount=-2 +kerning first=250 second=242 amount=-1 +kerning first=1077 second=1075 amount=-1 +kerning first=207 second=284 amount=-2 +kerning first=249 second=240 amount=-1 +kerning first=311 second=259 amount=-2 +kerning first=87 second=220 amount=-1 +kerning first=66 second=197 amount=-5 +kerning first=275 second=259 amount=-2 +kerning first=378 second=375 amount=-2 +kerning first=260 second=369 amount=-3 +kerning first=336 second=304 amount=-2 +kerning first=224 second=369 amount=-1 +kerning first=86 second=330 amount=-1 +kerning first=258 second=116 amount=-1 +kerning first=264 second=304 amount=-3 +kerning first=1025 second=1081 amount=-1 +kerning first=296 second=369 amount=-2 +kerning first=98 second=259 amount=-1 +kerning first=45 second=116 amount=-1 +kerning first=83 second=369 amount=-1 +kerning first=1024 second=1030 amount=-1 +kerning first=113 second=45 amount=-2 +kerning first=302 second=335 amount=-2 +kerning first=315 second=197 amount=-2 +kerning first=113 second=119 amount=-3 +kerning first=117 second=116 amount=-1 +kerning first=87 second=304 amount=-1 +kerning first=211 second=194 amount=-4 +kerning first=1067 second=1075 amount=-1 +kerning first=218 second=119 amount=-2 +kerning first=119 second=369 amount=-1 +kerning first=221 second=203 amount=-1 +kerning first=368 second=223 amount=-2 +kerning first=1071 second=1100 amount=-1 +kerning first=1031 second=1075 amount=-1 +kerning first=254 second=119 amount=-2 +kerning first=337 second=253 amount=-3 +kerning first=1036 second=1095 amount=-3 +kerning first=225 second=228 amount=-1 +kerning first=1036 second=1105 amount=-2 +kerning first=290 second=119 amount=-1 +kerning first=326 second=119 amount=-3 +kerning first=120 second=228 amount=-2 +kerning first=313 second=311 amount=-2 +kerning first=362 second=119 amount=-2 +kerning first=1104 second=1080 amount=-1 +kerning first=234 second=375 amount=-2 +kerning first=264 second=248 amount=-2 +kerning first=84 second=228 amount=-4 +kerning first=80 second=203 amount=-1 +kerning first=232 second=273 amount=-1 +kerning first=321 second=268 amount=-1 +kerning first=192 second=248 amount=-1 +kerning first=228 second=248 amount=-1 +kerning first=291 second=8249 amount=-3 +kerning first=231 second=355 amount=-1 +kerning first=365 second=345 amount=-1 +kerning first=195 second=355 amount=-1 +kerning first=200 second=298 amount=-2 +kerning first=119 second=223 amount=-1 +kerning first=346 second=313 amount=-3 +kerning first=201 second=68 amount=-2 +kerning first=339 second=328 amount=-2 +kerning first=88 second=253 amount=-3 +kerning first=83 second=223 amount=-1 +kerning first=370 second=113 amount=-2 +kerning first=90 second=355 amount=-1 +kerning first=272 second=298 amount=-2 +kerning first=274 second=313 amount=-2 +kerning first=375 second=355 amount=-1 +kerning first=193 second=253 amount=-3 +kerning first=339 second=355 amount=-1 +kerning first=74 second=324 amount=-1 +kerning first=229 second=253 amount=-3 +kerning first=66 second=80 amount=-4 +kerning first=202 second=313 amount=-2 +kerning first=303 second=355 amount=-1 +kerning first=381 second=68 amount=-1 +kerning first=267 second=355 amount=-1 +kerning first=72 second=268 amount=-2 +kerning first=221 second=290 amount=-3 +kerning first=1078 second=1086 amount=-2 +kerning first=279 second=108 amount=-3 +kerning first=334 second=85 amount=-1 +kerning first=243 second=108 amount=-2 +kerning first=246 second=363 amount=-1 +kerning first=333 second=105 amount=-1 +kerning first=65 second=338 amount=-3 +kerning first=351 second=108 amount=-2 +kerning first=282 second=363 amount=-2 +kerning first=200 second=270 amount=-2 +kerning first=262 second=85 amount=-2 +kerning first=116 second=318 amount=-1 +kerning first=219 second=103 amount=-4 +kerning first=230 second=8217 amount=-2 +kerning first=315 second=108 amount=-2 +kerning first=221 second=286 amount=-3 +kerning first=355 second=105 amount=-1 +kerning first=84 second=315 amount=-1 +kerning first=269 second=8221 amount=-2 +kerning first=354 second=363 amount=-2 +kerning first=370 second=351 amount=-2 +kerning first=257 second=318 amount=-1 +kerning first=283 second=105 amount=-2 +kerning first=200 second=313 amount=-2 +kerning first=354 second=335 amount=-3 +kerning first=87 second=248 amount=-3 +kerning first=211 second=105 amount=-1 +kerning first=365 second=318 amount=-2 +kerning first=307 second=380 amount=-1 +kerning first=229 second=225 amount=-1 +kerning first=105 second=335 amount=-1 +kerning first=106 second=105 amount=-1 +kerning first=1100 second=1083 amount=-1 +kerning first=1061 second=1108 amount=-2 +kerning first=275 second=231 amount=-1 +kerning first=379 second=380 amount=-3 +kerning first=311 second=231 amount=-3 +kerning first=102 second=108 amount=3 +kerning first=272 second=270 amount=-2 +kerning first=278 second=338 amount=-1 +kerning first=369 second=228 amount=-1 +kerning first=66 second=108 amount=-3 +kerning first=333 second=228 amount=-1 +kerning first=199 second=380 amount=-2 +kerning first=88 second=225 amount=-1 +kerning first=272 second=278 amount=-2 +kerning first=8217 second=210 amount=-2 +kerning first=206 second=338 amount=-2 +kerning first=1105 second=1113 amount=-2 +kerning first=235 second=380 amount=-2 +kerning first=82 second=275 amount=-3 +kerning first=213 second=296 amount=-2 +kerning first=243 second=225 amount=-1 +kerning first=119 second=251 amount=-1 +kerning first=1089 second=1103 amount=-1 +kerning first=321 second=296 amount=-2 +kerning first=279 second=225 amount=-2 +kerning first=83 second=251 amount=-1 +kerning first=326 second=228 amount=-1 +kerning first=224 second=251 amount=-1 +kerning first=290 second=228 amount=-1 +kerning first=195 second=305 amount=-1 +kerning first=249 second=98 amount=-2 +kerning first=254 second=228 amount=-1 +kerning first=66 second=225 amount=-3 +kerning first=296 second=251 amount=-2 +kerning first=286 second=270 amount=-1 +kerning first=209 second=235 amount=-2 +kerning first=99 second=303 amount=-2 +kerning first=218 second=228 amount=-3 +kerning first=102 second=225 amount=-2 +kerning first=260 second=251 amount=-3 +kerning first=1046 second=1058 amount=-3 +kerning first=1114 second=1100 amount=-1 +kerning first=321 second=98 amount=-2 +kerning first=281 second=235 amount=-1 +kerning first=113 second=228 amount=-2 +kerning first=207 second=225 amount=-2 +kerning first=66 second=314 amount=-3 +kerning first=77 second=228 amount=-2 +kerning first=1056 second=1025 amount=-1 +kerning first=251 second=46 amount=-2 +kerning first=261 second=273 amount=-1 +kerning first=229 second=102 amount=-1 +kerning first=287 second=46 amount=-3 +kerning first=266 second=370 amount=-2 +kerning first=225 second=273 amount=-1 +kerning first=323 second=46 amount=-1 +kerning first=374 second=370 amount=-1 +kerning first=379 second=206 amount=-1 +kerning first=338 second=370 amount=-2 +kerning first=187 second=325 amount=-5 +kerning first=120 second=273 amount=-2 +kerning first=1051 second=1107 amount=-1 +kerning first=74 second=46 amount=-1 +kerning first=8250 second=73 amount=-5 +kerning first=367 second=263 amount=-1 +kerning first=110 second=46 amount=-1 +kerning first=109 second=98 amount=-2 +kerning first=8220 second=110 amount=-1 +kerning first=1031 second=1087 amount=-1 +kerning first=203 second=83 amount=-2 +kerning first=347 second=363 amount=-1 +kerning first=249 second=112 amount=-2 +kerning first=250 second=318 amount=-2 +kerning first=68 second=221 amount=-2 +kerning first=213 second=112 amount=-1 +kerning first=286 second=318 amount=-1 +kerning first=337 second=102 amount=-1 +kerning first=288 second=8249 amount=-3 +kerning first=362 second=214 amount=-1 +kerning first=367 second=311 amount=-2 +kerning first=108 second=112 amount=-1 +kerning first=1062 second=1072 amount=-1 +kerning first=72 second=112 amount=-1 +kerning first=198 second=266 amount=-1 +kerning first=1077 second=1096 amount=-1 +kerning first=8250 second=87 amount=-4 +kerning first=218 second=214 amount=-1 +kerning first=369 second=259 amount=-1 +kerning first=368 second=67 amount=-1 +kerning first=333 second=259 amount=-1 +kerning first=313 second=260 amount=-2 +kerning first=108 second=98 amount=-1 +kerning first=296 second=67 amount=-2 +kerning first=202 second=81 amount=-1 +kerning first=365 second=254 amount=-2 +kerning first=260 second=67 amount=-3 +kerning first=225 second=259 amount=-1 +kerning first=317 second=221 amount=-3 +kerning first=366 second=379 amount=-1 +kerning first=240 second=105 amount=-1 +kerning first=274 second=81 amount=-1 +kerning first=99 second=105 amount=-2 +kerning first=77 second=214 amount=-2 +kerning first=261 second=259 amount=-1 +kerning first=321 second=112 amount=-2 +kerning first=1077 second=1098 amount=-1 +kerning first=291 second=230 amount=-3 +kerning first=295 second=249 amount=-1 +kerning first=264 second=346 amount=-3 +kerning first=250 second=100 amount=-1 +kerning first=327 second=230 amount=-2 +kerning first=332 second=327 amount=-2 +kerning first=331 second=249 amount=-1 +kerning first=219 second=230 amount=-3 +kerning first=223 second=249 amount=-1 +kerning first=192 second=346 amount=-3 +kerning first=352 second=275 amount=-1 +kerning first=89 second=325 amount=-1 +kerning first=1037 second=1079 amount=-1 +kerning first=1113 second=1098 amount=-1 +kerning first=255 second=230 amount=-3 +kerning first=1088 second=1095 amount=-1 +kerning first=259 second=249 amount=-1 +kerning first=194 second=350 amount=-3 +kerning first=114 second=230 amount=-1 +kerning first=1052 second=1095 amount=-1 +kerning first=74 second=334 amount=-2 +kerning first=73 second=100 amount=-2 +kerning first=1025 second=1102 amount=-1 +kerning first=316 second=275 amount=-1 +kerning first=89 second=350 amount=-3 +kerning first=367 second=249 amount=-1 +kerning first=336 second=346 amount=-1 +kerning first=8220 second=328 amount=-1 +kerning first=78 second=230 amount=-2 +kerning first=338 second=350 amount=-2 +kerning first=327 second=339 amount=-2 +kerning first=282 second=362 amount=-2 +kerning first=118 second=305 amount=-2 +kerning first=374 second=350 amount=-3 +kerning first=363 second=339 amount=-1 +kerning first=66 second=211 amount=-3 +kerning first=282 second=223 amount=-1 +kerning first=214 second=256 amount=-4 +kerning first=266 second=350 amount=-3 +kerning first=223 second=305 amount=-1 +kerning first=277 second=107 amount=-2 +kerning first=302 second=350 amount=-2 +kerning first=187 second=305 amount=-1 +kerning first=354 second=223 amount=-3 +kerning first=207 second=211 amount=-2 +kerning first=232 second=279 amount=-1 +kerning first=118 second=249 amount=-1 +kerning first=310 second=311 amount=-1 +kerning first=259 second=305 amount=-1 +kerning first=105 second=223 amount=-1 +kerning first=363 second=230 amount=-1 +kerning first=367 second=305 amount=-1 +kerning first=100 second=107 amount=-1 +kerning first=246 second=223 amount=-1 +kerning first=379 second=268 amount=-1 +kerning first=331 second=305 amount=-1 +kerning first=198 second=260 amount=-2 +kerning first=286 second=256 amount=-3 +kerning first=352 second=289 amount=-3 +kerning first=204 second=365 amount=-2 +kerning first=199 second=268 amount=-3 +kerning first=219 second=244 amount=-2 +kerning first=1113 second=1084 amount=-1 +kerning first=255 second=244 amount=-3 +kerning first=259 second=263 amount=-1 +kerning first=99 second=365 amount=-2 +kerning first=1061 second=1060 amount=-4 +kerning first=1077 second=1084 amount=-1 +kerning first=1089 second=1117 amount=-1 +kerning first=332 second=313 amount=-2 +kerning first=291 second=244 amount=-2 +kerning first=89 second=199 amount=-3 +kerning first=355 second=259 amount=-1 +kerning first=376 second=232 amount=-3 +kerning first=1053 second=1117 amount=-1 +kerning first=216 second=8217 amount=-2 +kerning first=327 second=244 amount=-2 +kerning first=203 second=192 amount=-2 +kerning first=363 second=353 amount=-2 +kerning first=252 second=8217 amount=-3 +kerning first=363 second=244 amount=-1 +kerning first=354 second=237 amount=-2 +kerning first=288 second=8217 amount=-1 +kerning first=78 second=339 amount=-2 +kerning first=82 second=263 amount=-3 +kerning first=1050 second=1091 amount=-2 +kerning first=8218 second=366 amount=-3 +kerning first=8220 second=219 amount=-1 +kerning first=324 second=8217 amount=-4 +kerning first=266 second=199 amount=-3 +kerning first=118 second=263 amount=-3 +kerning first=1086 second=1091 amount=-1 +kerning first=1119 second=1072 amount=-1 +kerning first=282 second=237 amount=-1 +kerning first=100 second=121 amount=-2 +kerning first=374 second=302 amount=-1 +kerning first=246 second=237 amount=-1 +kerning first=103 second=275 amount=-2 +kerning first=219 second=353 amount=-2 +kerning first=83 second=313 amount=-3 +kerning first=67 second=289 amount=-3 +kerning first=269 second=369 amount=-2 +kerning first=210 second=237 amount=-1 +kerning first=255 second=353 amount=-3 +kerning first=1050 second=1105 amount=-2 +kerning first=1118 second=1072 amount=-2 +kerning first=103 second=289 amount=-2 +kerning first=214 second=270 amount=-2 +kerning first=323 second=334 amount=-2 +kerning first=288 second=117 amount=-1 +kerning first=291 second=353 amount=-3 +kerning first=83 second=327 amount=-3 +kerning first=105 second=237 amount=-1 +kerning first=326 second=97 amount=-1 +kerning first=327 second=353 amount=-2 +kerning first=208 second=289 amount=-1 +kerning first=69 second=237 amount=-1 +kerning first=325 second=363 amount=-2 +kerning first=244 second=289 amount=-2 +kerning first=1025 second=1060 amount=-1 +kerning first=8250 second=347 amount=-1 +kerning first=78 second=353 amount=-2 +kerning first=199 second=282 amount=-3 +kerning first=280 second=289 amount=-3 +kerning first=78 second=244 amount=-2 +kerning first=8218 second=380 amount=-3 +kerning first=114 second=353 amount=-1 +kerning first=1082 second=1072 amount=-1 +kerning first=316 second=289 amount=-3 +kerning first=240 second=365 amount=-1 +kerning first=1046 second=1072 amount=-2 +kerning first=352 second=255 amount=-2 +kerning first=281 second=277 amount=-1 +kerning first=1038 second=1081 amount=-4 +kerning first=220 second=232 amount=-2 +kerning first=321 second=302 amount=-2 +kerning first=83 second=257 amount=-2 +kerning first=109 second=326 amount=-1 +kerning first=8250 second=229 amount=-1 +kerning first=275 second=371 amount=-2 +kerning first=119 second=257 amount=-3 +kerning first=362 second=8249 amount=-5 +kerning first=382 second=347 amount=-2 +kerning first=213 second=302 amount=-2 +kerning first=99 second=99 amount=-1 +kerning first=377 second=202 amount=-1 +kerning first=290 second=8249 amount=-3 +kerning first=346 second=347 amount=-1 +kerning first=326 second=8249 amount=-3 +kerning first=209 second=277 amount=-2 +kerning first=352 second=380 amount=-2 +kerning first=204 second=99 amount=-2 +kerning first=98 second=371 amount=-1 +kerning first=225 second=267 amount=-1 +kerning first=326 second=351 amount=-1 +kerning first=261 second=267 amount=-1 +kerning first=219 second=79 amount=-1 +kerning first=45 second=261 amount=-1 +kerning first=120 second=267 amount=-2 +kerning first=198 second=336 amount=-1 +kerning first=78 second=79 amount=-2 +kerning first=81 second=261 amount=-1 +kerning first=220 second=71 amount=-1 +kerning first=362 second=351 amount=-2 +kerning first=241 second=367 amount=-1 +kerning first=369 second=267 amount=-1 +kerning first=327 second=79 amount=-2 +kerning first=332 second=257 amount=-1 +kerning first=277 second=367 amount=-2 +kerning first=199 second=212 amount=-3 +kerning first=1074 second=1081 amount=-1 +kerning first=113 second=351 amount=-2 +kerning first=368 second=257 amount=-3 +kerning first=250 second=114 amount=-1 +kerning first=254 second=351 amount=-2 +kerning first=281 second=113 amount=-1 +kerning first=84 second=69 amount=-1 +kerning first=218 second=351 amount=-2 +kerning first=296 second=257 amount=-2 +kerning first=351 second=382 amount=-2 +kerning first=209 second=291 amount=-3 +kerning first=113 second=337 amount=-1 +kerning first=330 second=261 amount=-2 +kerning first=119 second=271 amount=-3 +kerning first=77 second=337 amount=-2 +kerning first=366 second=261 amount=-3 +kerning first=197 second=216 amount=-3 +kerning first=104 second=291 amount=-2 +kerning first=224 second=271 amount=-1 +kerning first=68 second=291 amount=-1 +kerning first=1071 second=1047 amount=-1 +kerning first=117 second=261 amount=-1 +kerning first=110 second=314 amount=-1 +kerning first=207 second=382 amount=-1 +kerning first=84 second=267 amount=-3 +kerning first=243 second=382 amount=-2 +kerning first=222 second=261 amount=-1 +kerning first=369 second=281 amount=-1 +kerning first=279 second=382 amount=-2 +kerning first=218 second=337 amount=-2 +kerning first=1062 second=1104 amount=-1 +kerning first=1078 second=1092 amount=-2 +kerning first=315 second=382 amount=-3 +kerning first=199 second=226 amount=-2 +kerning first=287 second=314 amount=-3 +kerning first=1025 second=1116 amount=-1 +kerning first=274 second=347 amount=-1 +kerning first=70 second=227 amount=-2 +kerning first=103 second=269 amount=-2 +kerning first=196 second=8221 amount=-5 +kerning first=280 second=171 amount=-2 +kerning first=97 second=361 amount=-1 +kerning first=251 second=314 amount=-2 +kerning first=67 second=269 amount=-2 +kerning first=316 second=171 amount=-3 +kerning first=202 second=347 amount=-1 +kerning first=225 second=281 amount=-1 +kerning first=362 second=337 amount=-2 +kerning first=352 second=171 amount=-3 +kerning first=202 second=361 amount=-2 +kerning first=261 second=281 amount=-1 +kerning first=70 second=352 amount=-3 +kerning first=267 second=361 amount=-2 +kerning first=67 second=171 amount=-4 +kerning first=310 second=361 amount=-3 +kerning first=97 second=347 amount=-1 +kerning first=78 second=224 amount=-2 +kerning first=311 second=371 amount=-1 +kerning first=103 second=171 amount=-3 +kerning first=274 second=361 amount=-2 +kerning first=8216 second=267 amount=-3 +kerning first=108 second=316 amount=-2 +kerning first=347 second=371 amount=-1 +kerning first=232 second=8221 amount=-2 +kerning first=382 second=361 amount=-2 +kerning first=250 second=326 amount=-1 +kerning first=352 second=269 amount=-1 +kerning first=377 second=216 amount=-1 +kerning first=208 second=171 amount=-1 +kerning first=346 second=361 amount=-1 +kerning first=84 second=281 amount=-3 +kerning first=316 second=269 amount=-1 +kerning first=114 second=224 amount=-1 +kerning first=103 second=227 amount=-3 +kerning first=255 second=224 amount=-3 +kerning first=107 second=252 amount=-1 +kerning first=67 second=227 amount=-2 +kerning first=219 second=224 amount=-3 +kerning first=295 second=45 amount=-3 +kerning first=327 second=224 amount=-2 +kerning first=291 second=224 amount=-3 +kerning first=248 second=252 amount=-1 +kerning first=280 second=227 amount=-1 +kerning first=244 second=227 amount=-1 +kerning first=363 second=224 amount=-1 +kerning first=208 second=227 amount=-1 +kerning first=100 second=101 amount=-1 +kerning first=71 second=252 amount=-1 +kerning first=364 second=246 amount=-2 +kerning first=223 second=311 amount=-1 +kerning first=235 second=226 amount=-2 +kerning first=338 second=356 amount=-1 +kerning first=187 second=311 amount=-1 +kerning first=205 second=101 amount=-2 +kerning first=66 second=382 amount=-4 +kerning first=118 second=311 amount=-2 +kerning first=266 second=90 amount=-2 +kerning first=102 second=382 amount=-1 +kerning first=279 second=326 amount=-2 +kerning first=307 second=226 amount=-2 +kerning first=82 second=45 amount=-4 +kerning first=266 second=356 amount=-1 +kerning first=347 second=103 amount=-3 +kerning first=256 second=246 amount=-1 +kerning first=82 second=311 amount=-3 +kerning first=277 second=101 amount=-1 +kerning first=1052 second=1101 amount=-1 +kerning first=46 second=45 amount=-3 +kerning first=311 second=103 amount=-2 +kerning first=220 second=246 amount=-2 +kerning first=193 second=362 amount=-3 +kerning first=338 second=90 amount=-1 +kerning first=353 second=291 amount=-3 +kerning first=379 second=226 amount=-1 +kerning first=284 second=252 amount=-1 +kerning first=194 second=356 amount=-6 +kerning first=275 second=103 amount=-3 +kerning first=187 second=207 amount=-5 +kerning first=317 second=291 amount=-3 +kerning first=118 second=45 amount=-4 +kerning first=281 second=291 amount=-3 +kerning first=356 second=252 amount=-1 +kerning first=203 second=103 amount=-3 +kerning first=332 second=261 amount=-1 +kerning first=374 second=90 amount=-3 +kerning first=245 second=291 amount=-2 +kerning first=73 second=44 amount=-1 +kerning first=203 second=353 amount=-1 +kerning first=368 second=109 amount=-2 +kerning first=338 second=104 amount=-1 +kerning first=246 second=8250 amount=-2 +kerning first=335 second=109 amount=-1 +kerning first=280 second=213 amount=-1 +kerning first=266 second=104 amount=-1 +kerning first=224 second=109 amount=-1 +kerning first=89 second=370 amount=-1 +kerning first=203 second=89 amount=-1 +kerning first=379 second=212 amount=-1 +kerning first=89 second=90 amount=-3 +kerning first=187 second=193 amount=-4 +kerning first=194 second=370 amount=-3 +kerning first=83 second=109 amount=-1 +kerning first=234 second=115 amount=-2 +kerning first=1108 second=1113 amount=-1 +kerning first=113 second=8249 amount=-2 +kerning first=352 second=227 amount=-2 +kerning first=204 second=303 amount=-1 +kerning first=1036 second=1113 amount=-2 +kerning first=119 second=109 amount=-2 +kerning first=316 second=227 amount=-2 +kerning first=198 second=115 amount=-1 +kerning first=339 second=187 amount=-2 +kerning first=379 second=78 amount=-1 +kerning first=240 second=303 amount=-1 +kerning first=230 second=104 amount=-2 +kerning first=378 second=115 amount=-2 +kerning first=250 second=44 amount=-2 +kerning first=77 second=8249 amount=-4 +kerning first=256 second=232 amount=-1 +kerning first=90 second=187 amount=-1 +kerning first=214 second=44 amount=-3 +kerning first=214 second=368 amount=-1 +kerning first=86 second=70 amount=-1 +kerning first=364 second=345 amount=-1 +kerning first=364 second=232 amount=-2 +kerning first=199 second=78 amount=-3 +kerning first=67 second=213 amount=-3 +kerning first=278 second=120 amount=-1 +kerning first=76 second=75 amount=-2 +kerning first=84 second=323 amount=-1 +kerning first=314 second=120 amount=-1 +kerning first=235 second=289 amount=-3 +kerning first=286 second=203 amount=-1 +kerning first=350 second=120 amount=-3 +kerning first=1101 second=1103 amount=-2 +kerning first=99 second=116 amount=-1 +kerning first=313 second=115 amount=-1 +kerning first=228 second=241 amount=-1 +kerning first=198 second=70 amount=-2 +kerning first=286 second=368 amount=-1 +kerning first=214 second=203 amount=-2 +kerning first=101 second=120 amount=-2 +kerning first=321 second=198 amount=-2 +kerning first=365 second=248 amount=-1 +kerning first=100 second=375 amount=-2 +kerning first=362 second=210 amount=-1 +kerning first=8216 second=111 amount=-3 +kerning first=1039 second=1080 amount=-1 +kerning first=242 second=120 amount=-3 +kerning first=317 second=73 amount=-2 +kerning first=252 second=118 amount=-3 +kerning first=117 second=253 amount=-3 +kerning first=332 second=201 amount=-2 +kerning first=68 second=73 amount=-2 +kerning first=71 second=356 amount=-3 +kerning first=200 second=278 amount=-2 +kerning first=324 second=118 amount=-3 +kerning first=88 second=233 amount=-2 +kerning first=288 second=118 amount=-1 +kerning first=67 second=68 amount=-3 +kerning first=233 second=113 amount=-1 +kerning first=258 second=253 amount=-3 +kerning first=187 second=84 amount=-4 +kerning first=229 second=233 amount=-1 +kerning first=75 second=118 amount=-3 +kerning first=280 second=68 amount=-2 +kerning first=193 second=233 amount=-1 +kerning first=374 second=241 amount=-3 +kerning first=330 second=253 amount=-2 +kerning first=249 second=246 amount=-1 +kerning first=366 second=253 amount=-1 +kerning first=83 second=201 amount=-3 +kerning first=1058 second=1085 amount=-2 +kerning first=200 second=80 amount=-2 +kerning first=382 second=291 amount=-2 +kerning first=111 second=118 amount=-2 +kerning first=313 second=196 amount=-2 +kerning first=377 second=113 amount=-1 +kerning first=316 second=283 amount=-1 +kerning first=253 second=335 amount=-3 +kerning first=266 second=241 amount=-1 +kerning first=109 second=108 amount=-1 +kerning first=1102 second=1087 amount=-1 +kerning first=106 second=305 amount=-2 +kerning first=289 second=335 amount=-2 +kerning first=230 second=241 amount=-2 +kerning first=1069 second=1040 amount=-3 +kerning first=74 second=110 amount=-1 +kerning first=325 second=335 amount=-2 +kerning first=8217 second=324 amount=-2 +kerning first=338 second=241 amount=-1 +kerning first=1030 second=1087 amount=-1 +kerning first=110 second=110 amount=-1 +kerning first=89 second=193 amount=-6 +kerning first=89 second=241 amount=-3 +kerning first=278 second=380 amount=-2 +kerning first=286 second=108 amount=-1 +kerning first=1079 second=1079 amount=-1 +kerning first=314 second=380 amount=-1 +kerning first=84 second=85 amount=-1 +kerning first=250 second=108 amount=-2 +kerning first=251 second=110 amount=-1 +kerning first=350 second=380 amount=-2 +kerning first=352 second=283 amount=-1 +kerning first=287 second=110 amount=-1 +kerning first=217 second=335 amount=-2 +kerning first=85 second=65 amount=-4 +kerning first=266 second=193 amount=-3 +kerning first=221 second=248 amount=-3 +kerning first=101 second=380 amount=-2 +kerning first=219 second=286 amount=-1 +kerning first=370 second=331 amount=-2 +kerning first=257 second=248 amount=-1 +kerning first=290 second=70 amount=-1 +kerning first=100 second=115 amount=-1 +kerning first=78 second=286 amount=-2 +kerning first=262 second=331 amount=-1 +kerning first=105 second=231 amount=-1 +kerning first=8220 second=275 amount=-3 +kerning first=250 second=375 amount=-3 +kerning first=242 second=380 amount=-2 +kerning first=262 second=65 amount=-3 +kerning first=354 second=231 amount=-3 +kerning first=241 second=115 amount=-1 +kerning first=226 second=331 amount=-1 +kerning first=80 second=248 amount=-1 +kerning first=277 second=115 amount=-2 +kerning first=334 second=65 amount=-4 +kerning first=106 second=250 amount=-1 +kerning first=1057 second=1083 amount=-1 +kerning first=338 second=193 amount=-2 +kerning first=85 second=331 amount=-2 +kerning first=370 second=65 amount=-4 +kerning first=379 second=338 amount=-1 +kerning first=374 second=193 amount=-6 +kerning first=121 second=331 amount=-2 +kerning first=205 second=115 amount=-2 +kerning first=1037 second=1073 amount=-1 +kerning first=110 second=347 amount=-1 +kerning first=331 second=255 amount=-2 +kerning first=98 second=307 amount=-1 +kerning first=102 second=326 amount=-1 +kerning first=336 second=352 amount=-1 +kerning first=295 second=255 amount=-2 +kerning first=259 second=255 amount=-3 +kerning first=353 second=347 amount=-3 +kerning first=223 second=255 amount=-3 +kerning first=321 second=366 amount=-3 +kerning first=243 second=326 amount=-1 +kerning first=317 second=347 amount=-1 +kerning first=77 second=281 amount=-2 +kerning first=1092 second=1078 amount=-1 +kerning first=79 second=302 amount=-2 +kerning first=187 second=255 amount=-3 +kerning first=73 second=262 amount=-2 +kerning first=275 second=307 amount=-2 +kerning first=281 second=347 amount=-2 +kerning first=240 second=250 amount=-1 +kerning first=245 second=347 amount=-2 +kerning first=82 second=255 amount=-3 +kerning first=347 second=307 amount=-2 +kerning first=232 second=371 amount=-2 +kerning first=209 second=347 amount=-2 +kerning first=1056 second=1078 amount=-1 +kerning first=66 second=326 amount=-3 +kerning first=1093 second=1077 amount=-2 +kerning first=99 second=250 amount=-2 +kerning first=259 second=378 amount=-1 +kerning first=206 second=212 amount=-2 +kerning first=339 second=257 amount=-2 +kerning first=75 second=333 amount=-2 +kerning first=8250 second=355 amount=-1 +kerning first=223 second=378 amount=-2 +kerning first=382 second=97 amount=-1 +kerning first=375 second=257 amount=-3 +kerning first=110 second=328 amount=-1 +kerning first=204 second=250 amount=-2 +kerning first=331 second=378 amount=-1 +kerning first=87 second=352 amount=-3 +kerning first=69 second=223 amount=-1 +kerning first=74 second=328 amount=-1 +kerning first=1057 second=1077 amount=-1 +kerning first=377 second=264 amount=-1 +kerning first=295 second=378 amount=-1 +kerning first=1025 second=1052 amount=-1 +kerning first=83 second=377 amount=-1 +kerning first=303 second=257 amount=-2 +kerning first=350 second=325 amount=-3 +kerning first=274 second=229 amount=-1 +kerning first=192 second=352 amount=-3 +kerning first=248 second=46 amount=-3 +kerning first=1098 second=1118 amount=-2 +kerning first=103 second=283 amount=-2 +kerning first=332 second=377 amount=-2 +kerning first=65 second=212 amount=-3 +kerning first=231 second=257 amount=-2 +kerning first=1086 second=1097 amount=-1 +kerning first=287 second=328 amount=-1 +kerning first=67 second=283 amount=-2 +kerning first=187 second=378 amount=-5 +kerning first=213 second=366 amount=-1 +kerning first=1042 second=1047 amount=-2 +kerning first=264 second=352 amount=-3 +kerning first=251 second=328 amount=-1 +kerning first=118 second=378 amount=-3 +kerning first=313 second=8220 amount=-4 +kerning first=249 second=106 amount=-2 +kerning first=277 second=8220 amount=-2 +kerning first=199 second=332 amount=-3 +kerning first=241 second=8220 amount=-4 +kerning first=278 second=103 amount=-3 +kerning first=310 second=87 amount=-2 +kerning first=368 second=377 amount=-1 +kerning first=90 second=325 amount=-1 +kerning first=105 second=287 amount=-3 +kerning first=1049 second=1092 amount=-1 +kerning first=8217 second=367 amount=-1 +kerning first=346 second=87 amount=-3 +kerning first=213 second=106 amount=-1 +kerning first=69 second=287 amount=-3 +kerning first=1085 second=1092 amount=-1 +kerning first=97 second=243 amount=-1 +kerning first=1077 second=1090 amount=-1 +kerning first=219 second=345 amount=-1 +kerning first=379 second=332 amount=-1 +kerning first=210 second=287 amount=-1 +kerning first=197 second=113 amount=-1 +kerning first=100 second=8220 amount=-2 +kerning first=255 second=345 amount=-1 +kerning first=367 second=378 amount=-2 +kerning first=377 second=268 amount=-1 +kerning first=291 second=345 amount=-1 +kerning first=321 second=106 amount=-2 +kerning first=8220 second=269 amount=-3 +kerning first=282 second=287 amount=-3 +kerning first=67 second=316 amount=-1 +kerning first=1113 second=1090 amount=-1 +kerning first=202 second=87 amount=-1 +kerning first=86 second=288 amount=-3 +kerning first=246 second=287 amount=-2 +kerning first=262 second=45 amount=-4 +kerning first=363 second=345 amount=-1 +kerning first=221 second=242 amount=-3 +kerning first=354 second=287 amount=-4 +kerning first=104 second=347 amount=-1 +kerning first=310 second=243 amount=-2 +kerning first=213 second=198 amount=-4 +kerning first=346 second=243 amount=-1 +kerning first=377 second=102 amount=-3 +kerning first=362 second=281 amount=-2 +kerning first=382 second=243 amount=-1 +kerning first=257 second=242 amount=-1 +kerning first=1102 second=1107 amount=-1 +kerning first=365 second=242 amount=-1 +kerning first=113 second=281 amount=-1 +kerning first=315 second=326 amount=-1 +kerning first=187 second=82 amount=-5 +kerning first=315 second=217 amount=-3 +kerning first=351 second=326 amount=-2 +kerning first=218 second=281 amount=-2 +kerning first=214 second=197 amount=-4 +kerning first=367 second=255 amount=-3 +kerning first=84 second=119 amount=-3 +kerning first=198 second=210 amount=-1 +kerning first=120 second=119 amount=-3 +kerning first=278 second=324 amount=-1 +kerning first=67 second=334 amount=-3 +kerning first=198 second=274 amount=-2 +kerning first=286 second=197 amount=-3 +kerning first=321 second=270 amount=-2 +kerning first=194 second=249 amount=-3 +kerning first=122 second=97 amount=-1 +kerning first=375 second=369 amount=-1 +kerning first=242 second=324 amount=-1 +kerning first=108 second=254 amount=-1 +kerning first=225 second=119 amount=-3 +kerning first=86 second=283 amount=-3 +kerning first=261 second=119 amount=-3 +kerning first=80 second=304 amount=-1 +kerning first=214 second=374 amount=-2 +kerning first=314 second=324 amount=-1 +kerning first=81 second=75 amount=-2 +kerning first=274 second=356 amount=-1 +kerning first=377 second=379 amount=-1 +kerning first=267 second=369 amount=-2 +kerning first=104 second=229 amount=-1 +kerning first=8217 second=101 amount=-3 +kerning first=231 second=369 amount=-2 +kerning first=1078 second=1098 amount=-1 +kerning first=240 second=257 amount=-1 +kerning first=369 second=119 amount=-3 +kerning first=339 second=369 amount=-2 +kerning first=200 second=74 amount=-1 +kerning first=1062 second=1054 amount=-1 +kerning first=1030 second=1079 amount=-1 +kerning first=266 second=249 amount=-2 +kerning first=8218 second=316 amount=-1 +kerning first=303 second=369 amount=-1 +kerning first=68 second=229 amount=-1 +kerning first=280 second=334 amount=-1 +kerning first=86 second=344 amount=-1 +kerning first=192 second=234 amount=-1 +kerning first=281 second=229 amount=-2 +kerning first=272 second=74 amount=-2 +kerning first=226 second=339 amount=-1 +kerning first=228 second=234 amount=-1 +kerning first=85 second=339 amount=-2 +kerning first=200 second=284 amount=-1 +kerning first=264 second=234 amount=-2 +kerning first=209 second=229 amount=-2 +kerning first=121 second=339 amount=-3 +kerning first=245 second=229 amount=-1 +kerning first=253 second=279 amount=-3 +kerning first=1091 second=1093 amount=-1 +kerning first=370 second=339 amount=-2 +kerning first=108 second=106 amount=-3 +kerning first=217 second=279 amount=-2 +kerning first=1072 second=1119 amount=-1 +kerning first=262 second=339 amount=-2 +kerning first=87 second=234 amount=-3 +kerning first=325 second=279 amount=-2 +kerning first=353 second=229 amount=-1 +kerning first=1108 second=1119 amount=-1 +kerning first=298 second=339 amount=-2 +kerning first=1048 second=1084 amount=-1 +kerning first=223 second=8217 amount=-2 +kerning first=280 second=219 amount=-2 +kerning first=196 second=111 amount=-1 +kerning first=259 second=8217 amount=-3 +kerning first=356 second=244 amount=-3 +kerning first=232 second=111 amount=-1 +kerning first=295 second=8217 amount=-4 +kerning first=1031 second=1089 amount=-1 +kerning first=286 second=374 amount=-3 +kerning first=208 second=219 amount=-1 +kerning first=268 second=111 amount=-2 +kerning first=331 second=8217 amount=-4 +kerning first=332 second=209 amount=-2 +kerning first=264 second=86 amount=-1 +kerning first=267 second=8221 amount=-2 +kerning first=85 second=332 amount=-1 +kerning first=66 second=66 amount=-4 +kerning first=82 second=8217 amount=-5 +kerning first=1067 second=1089 amount=-1 +kerning first=313 second=107 amount=-2 +kerning first=67 second=219 amount=-2 +kerning first=192 second=86 amount=-6 +kerning first=87 second=338 amount=-3 +kerning first=197 second=264 amount=-3 +kerning first=8250 second=291 amount=-3 +kerning first=379 second=72 amount=-1 +kerning first=1076 second=1092 amount=-1 +kerning first=201 second=289 amount=-3 +kerning first=1042 second=1041 amount=-2 +kerning first=234 second=121 amount=-2 +kerning first=194 second=364 amount=-3 +kerning first=83 second=209 amount=-3 +kerning first=315 second=298 amount=-2 +kerning first=196 second=254 amount=-2 +kerning first=201 second=82 amount=-2 +kerning first=280 second=326 amount=-1 +kerning first=89 second=364 amount=-1 +kerning first=107 second=244 amount=-3 +kerning first=304 second=111 amount=-2 +kerning first=1085 second=1086 amount=-1 +kerning first=366 second=90 amount=-1 +kerning first=284 second=368 amount=-1 +kerning first=338 second=364 amount=-2 +kerning first=249 second=254 amount=-2 +kerning first=376 second=111 amount=-3 +kerning first=274 second=278 amount=-2 +kerning first=79 second=296 amount=-2 +kerning first=315 second=66 amount=-2 +kerning first=266 second=364 amount=-2 +kerning first=321 second=254 amount=-2 +kerning first=82 second=199 amount=-3 +kerning first=193 second=354 amount=-6 +kerning first=379 second=110 amount=-1 +kerning first=98 second=97 amount=-1 +kerning first=380 second=225 amount=-1 +kerning first=260 second=117 amount=-3 +kerning first=102 second=122 amount=-1 +kerning first=45 second=102 amount=-1 +kerning first=224 second=117 amount=-1 +kerning first=268 second=200 amount=-3 +kerning first=66 second=122 amount=-4 +kerning first=90 second=251 amount=-3 +kerning first=117 second=102 amount=-1 +kerning first=8216 second=99 amount=-3 +kerning first=296 second=117 amount=-2 +kerning first=275 second=97 amount=-2 +kerning first=315 second=122 amount=-3 +kerning first=236 second=225 amount=-2 +kerning first=195 second=251 amount=-3 +kerning first=378 second=121 amount=-2 +kerning first=199 second=72 amount=-3 +kerning first=311 second=97 amount=-2 +kerning first=279 second=122 amount=-2 +kerning first=298 second=71 amount=-2 +kerning first=330 second=46 amount=-1 +kerning first=272 second=225 amount=-1 +kerning first=346 second=8249 amount=-3 +kerning first=368 second=117 amount=-1 +kerning first=203 second=97 amount=-1 +kerning first=243 second=122 amount=-2 +kerning first=366 second=46 amount=-5 +kerning first=267 second=251 amount=-2 +kerning first=376 second=200 amount=-1 +kerning first=207 second=122 amount=-1 +kerning first=344 second=225 amount=-2 +kerning first=231 second=251 amount=-2 +kerning first=117 second=46 amount=-2 +kerning first=339 second=251 amount=-2 +kerning first=287 second=275 amount=-2 +kerning first=1036 second=1063 amount=-4 +kerning first=366 second=102 amount=-1 +kerning first=303 second=251 amount=-1 +kerning first=364 second=240 amount=-2 +kerning first=347 second=97 amount=-1 +kerning first=222 second=46 amount=-3 +kerning first=97 second=246 amount=-1 +kerning first=98 second=363 amount=-1 +kerning first=256 second=240 amount=-1 +kerning first=375 second=251 amount=-1 +kerning first=203 second=363 amount=-2 +kerning first=83 second=117 amount=-1 +kerning first=311 second=245 amount=-3 +kerning first=278 second=206 amount=-2 +kerning first=258 second=102 amount=-1 +kerning first=275 second=245 amount=-1 +kerning first=275 second=363 amount=-2 +kerning first=352 second=219 amount=-3 +kerning first=81 second=46 amount=-3 +kerning first=74 second=103 amount=-3 +kerning first=1067 second=1084 amount=-1 +kerning first=350 second=206 amount=-3 +kerning first=119 second=117 amount=-1 +kerning first=69 second=83 amount=-2 +kerning first=382 second=355 amount=-1 +kerning first=213 second=310 amount=-2 +kerning first=72 second=284 amount=-2 +kerning first=351 second=249 amount=-1 +kerning first=346 second=355 amount=-1 +kerning first=310 second=355 amount=-1 +kerning first=210 second=83 amount=-1 +kerning first=291 second=289 amount=-2 +kerning first=8217 second=197 amount=-6 +kerning first=377 second=266 amount=-1 +kerning first=282 second=83 amount=-2 +kerning first=220 second=240 amount=-2 +kerning first=344 second=284 amount=-3 +kerning first=321 second=310 amount=-2 +kerning first=1056 second=1070 amount=-1 +kerning first=45 second=253 amount=-3 +kerning first=354 second=83 amount=-3 +kerning first=332 second=69 amount=-2 +kerning first=1071 second=1114 amount=-1 +kerning first=1116 second=1108 amount=-2 +kerning first=290 second=77 amount=-1 +kerning first=90 second=369 amount=-3 +kerning first=1024 second=1083 amount=-1 +kerning first=277 second=375 amount=-2 +kerning first=199 second=220 amount=-2 +kerning first=196 second=8220 amount=-5 +kerning first=241 second=375 amount=-2 +kerning first=262 second=71 amount=-3 +kerning first=75 second=269 amount=-2 +kerning first=195 second=369 amount=-3 +kerning first=304 second=259 amount=-2 +kerning first=205 second=375 amount=-2 +kerning first=351 second=122 amount=-2 +kerning first=268 second=259 amount=-2 +kerning first=1074 second=1075 amount=-1 +kerning first=198 second=330 amount=-2 +kerning first=115 second=45 amount=-1 +kerning first=85 second=71 amount=-1 +kerning first=8216 second=271 amount=-3 +kerning first=221 second=304 amount=-1 +kerning first=251 second=116 amount=-1 +kerning first=266 second=87 amount=-1 +kerning first=1089 second=1087 amount=-1 +kerning first=313 second=375 amount=-3 +kerning first=204 second=351 amount=-2 +kerning first=374 second=291 amount=-4 +kerning first=80 second=298 amount=-1 +kerning first=377 second=77 amount=-1 +kerning first=1090 second=1108 amount=-1 +kerning first=381 second=233 amount=-1 +kerning first=338 second=291 amount=-3 +kerning first=70 second=214 amount=-1 +kerning first=83 second=8249 amount=-3 +kerning first=70 second=71 amount=-1 +kerning first=278 second=220 amount=-2 +kerning first=381 second=90 amount=-1 +kerning first=105 second=97 amount=-2 +kerning first=110 second=227 amount=-1 +kerning first=266 second=291 amount=-3 +kerning first=221 second=298 amount=-1 +kerning first=211 second=317 amount=-2 +kerning first=98 second=8250 amount=-2 +kerning first=274 second=207 amount=-2 +kerning first=74 second=227 amount=-3 +kerning first=118 second=110 amount=-2 +kerning first=230 second=291 amount=-3 +kerning first=8217 second=286 amount=-2 +kerning first=187 second=110 amount=-2 +kerning first=65 second=84 amount=-6 +kerning first=350 second=330 amount=-3 +kerning first=346 second=207 amount=-3 +kerning first=69 second=97 amount=-1 +kerning first=223 second=110 amount=-1 +kerning first=278 second=65 amount=-2 +kerning first=66 second=304 amount=-4 +kerning first=1104 second=1088 amount=-1 +kerning first=282 second=97 amount=-1 +kerning first=259 second=110 amount=-1 +kerning first=89 second=291 amount=-4 +kerning first=233 second=337 amount=-1 +kerning first=193 second=8220 amount=-5 +kerning first=295 second=110 amount=-1 +kerning first=278 second=84 amount=-1 +kerning first=197 second=337 amount=-1 +kerning first=323 second=213 amount=-2 +kerning first=121 second=314 amount=-2 +kerning first=364 second=324 amount=-2 +kerning first=210 second=97 amount=-1 +kerning first=331 second=110 amount=-1 +kerning first=278 second=199 amount=-1 +kerning first=66 second=318 amount=-3 +kerning first=328 second=324 amount=-1 +kerning first=246 second=97 amount=-1 +kerning first=367 second=110 amount=-1 +kerning first=252 second=311 amount=-2 +kerning first=201 second=350 amount=-2 +kerning first=115 second=324 amount=-2 +kerning first=377 second=337 amount=-1 +kerning first=381 second=350 amount=-1 +kerning first=201 second=90 amount=-1 +kerning first=1070 second=1050 amount=-1 +kerning first=242 second=46 amount=-3 +kerning first=354 second=97 amount=-5 +kerning first=111 second=311 amount=-1 +kerning first=243 second=318 amount=-2 +kerning first=350 second=84 amount=-3 +kerning first=269 second=337 amount=-1 +kerning first=75 second=311 amount=-1 +kerning first=279 second=318 amount=-3 +kerning first=79 second=310 amount=-2 +kerning first=243 second=44 amount=-3 +kerning first=1058 second=1107 amount=-2 +kerning first=234 second=289 amount=-3 +kerning first=8220 second=233 amount=-3 +kerning first=201 second=104 amount=-1 +kerning first=221 second=284 amount=-3 +kerning first=111 second=187 amount=-2 +kerning first=314 second=234 amount=-1 +kerning first=262 second=381 amount=-2 +kerning first=355 second=303 amount=-1 +kerning first=210 second=221 amount=-2 +kerning first=1070 second=1025 amount=-1 +kerning first=279 second=44 amount=-3 +kerning first=74 second=213 amount=-2 +kerning first=65 second=234 amount=-1 +kerning first=334 second=381 amount=-2 +kerning first=374 second=277 amount=-3 +kerning first=66 second=44 amount=-4 +kerning first=379 second=374 amount=-2 +kerning first=101 second=234 amount=-1 +kerning first=370 second=381 amount=-1 +kerning first=8218 second=368 amount=-3 +kerning first=350 second=70 amount=-3 +kerning first=79 second=78 amount=-2 +kerning first=1117 second=1104 amount=-1 +kerning first=206 second=234 amount=-2 +kerning first=102 second=44 amount=-1 +kerning first=1059 second=1081 amount=-4 +kerning first=278 second=70 amount=-2 +kerning first=230 second=277 amount=-1 +kerning first=287 second=227 amount=-3 +kerning first=1065 second=1077 amount=-1 +kerning first=194 second=277 amount=-1 +kerning first=251 second=227 amount=-1 +kerning first=8222 second=259 amount=-2 +kerning first=302 second=277 amount=-2 +kerning first=233 second=351 amount=-2 +kerning first=266 second=277 amount=-2 +kerning first=197 second=351 amount=-2 +kerning first=288 second=201 amount=-1 +kerning first=283 second=303 amount=-2 +kerning first=1104 second=1074 amount=-1 +kerning first=268 second=377 amount=-2 +kerning first=351 second=44 amount=-2 +kerning first=216 second=201 amount=-2 +kerning first=370 second=367 amount=-1 +kerning first=105 second=111 amount=-1 +kerning first=211 second=303 amount=-1 +kerning first=65 second=220 amount=-3 +kerning first=89 second=277 amount=-3 +kerning first=252 second=283 amount=-1 +kerning first=106 second=345 amount=-1 +kerning first=376 second=377 amount=-3 +kerning first=101 second=248 amount=-1 +kerning first=221 second=380 amount=-3 +kerning first=197 second=105 amount=-1 +kerning first=257 second=380 amount=-1 +kerning first=269 second=8220 amount=-2 +kerning first=1058 second=1093 amount=-3 +kerning first=310 second=235 amount=-2 +kerning first=65 second=248 amount=-1 +kerning first=316 second=230 amount=-2 +kerning first=233 second=8220 amount=-2 +kerning first=283 second=345 amount=-1 +kerning first=346 second=235 amount=-1 +kerning first=364 second=338 amount=-1 +kerning first=350 second=98 amount=-2 +kerning first=197 second=8220 amount=-5 +kerning first=266 second=114 amount=-1 +kerning first=80 second=270 amount=-1 +kerning first=382 second=235 amount=-1 +kerning first=77 second=287 amount=-3 +kerning first=314 second=98 amount=-1 +kerning first=1045 second=1087 amount=-1 +kerning first=287 second=241 amount=-1 +kerning first=1049 second=1100 amount=-1 +kerning first=221 second=270 amount=-1 +kerning first=224 second=267 amount=-1 +kerning first=218 second=287 amount=-4 +kerning first=116 second=380 amount=-1 +kerning first=209 second=211 amount=-2 +kerning first=256 second=338 amount=-3 +kerning first=283 second=228 amount=-2 +kerning first=101 second=112 amount=-1 +kerning first=202 second=193 amount=-2 +kerning first=216 second=325 amount=-2 +kerning first=290 second=287 amount=-3 +kerning first=374 second=263 amount=-3 +kerning first=254 second=287 amount=-2 +kerning first=211 second=228 amount=-1 +kerning first=110 second=241 amount=-1 +kerning first=101 second=242 amount=-1 +kerning first=69 second=274 amount=-2 +kerning first=206 second=363 amount=-2 +kerning first=220 second=197 amount=-4 +kerning first=362 second=287 amount=-4 +kerning first=350 second=248 amount=-1 +kerning first=347 second=8249 amount=-1 +kerning first=251 second=241 amount=-1 +kerning first=326 second=287 amount=-2 +kerning first=106 second=228 amount=-2 +kerning first=194 second=263 amount=-1 +kerning first=346 second=193 amount=-4 +kerning first=70 second=228 amount=-1 +kerning first=45 second=197 amount=-4 +kerning first=230 second=263 amount=-1 +kerning first=8216 second=230 amount=-3 +kerning first=314 second=248 amount=-1 +kerning first=311 second=8249 amount=-3 +kerning first=266 second=263 amount=-2 +kerning first=274 second=193 amount=-2 +kerning first=97 second=235 amount=-1 +kerning first=206 second=248 amount=-2 +kerning first=203 second=8249 amount=-2 +kerning first=74 second=241 amount=-1 +kerning first=302 second=263 amount=-2 +kerning first=274 second=221 amount=-1 +kerning first=315 second=318 amount=-2 +kerning first=222 second=197 amount=-4 +kerning first=283 second=331 amount=-2 +kerning first=310 second=221 amount=-2 +kerning first=364 second=352 amount=-3 +kerning first=351 second=318 amount=-2 +kerning first=350 second=112 amount=-3 +kerning first=202 second=221 amount=-1 +kerning first=323 second=255 amount=-2 +kerning first=314 second=112 amount=-1 +kerning first=287 second=255 amount=-1 +kerning first=278 second=112 amount=-2 +kerning first=70 second=331 amount=-1 +kerning first=251 second=255 amount=-3 +kerning first=366 second=197 amount=-4 +kerning first=242 second=112 amount=-1 +kerning first=106 second=331 amount=-2 +kerning first=8222 second=369 amount=-1 +kerning first=206 second=262 amount=-2 +kerning first=1064 second=1072 amount=-1 +kerning first=67 second=74 amount=-2 +kerning first=206 second=112 amount=-1 +kerning first=278 second=318 amount=-1 +kerning first=45 second=314 amount=-1 +kerning first=211 second=200 amount=-2 +kerning first=110 second=255 amount=-2 +kerning first=278 second=262 amount=-1 +kerning first=8216 second=244 amount=-3 +kerning first=117 second=314 amount=-2 +kerning first=79 second=352 amount=-1 +kerning first=207 second=290 amount=-2 +kerning first=208 second=74 amount=-2 +kerning first=1088 second=1085 amount=-1 +kerning first=374 second=249 amount=-1 +kerning first=75 second=111 amount=-2 +kerning first=278 second=98 amount=-1 +kerning first=280 second=74 amount=-1 +kerning first=377 second=105 amount=-1 +kerning first=202 second=207 amount=-2 +kerning first=242 second=98 amount=-1 +kerning first=75 second=283 amount=-2 +kerning first=228 second=281 amount=-1 +kerning first=256 second=352 amount=-3 +kerning first=352 second=74 amount=-2 +kerning first=365 second=380 amount=-2 +kerning first=258 second=314 amount=-2 +kerning first=220 second=352 amount=-3 +kerning first=66 second=290 amount=-3 +kerning first=378 second=112 amount=-3 +kerning first=346 second=221 amount=-3 +kerning first=101 second=98 amount=-2 +kerning first=233 second=105 amount=-2 +kerning first=65 second=98 amount=-2 +kerning first=269 second=105 amount=-2 +kerning first=195 second=333 amount=-1 +kerning first=317 second=67 amount=-1 +kerning first=218 second=97 amount=-3 +kerning first=222 second=68 amount=-2 +kerning first=347 second=8221 amount=-2 +kerning first=222 second=80 amount=-2 +kerning first=267 second=333 amount=-1 +kerning first=81 second=68 amount=-2 +kerning first=231 second=333 amount=-1 +kerning first=209 second=67 amount=-2 +kerning first=121 second=224 amount=-3 +kerning first=87 second=282 amount=-1 +kerning first=233 second=287 amount=-3 +kerning first=275 second=8221 amount=-2 +kerning first=81 second=80 amount=-2 +kerning first=365 second=106 amount=-2 +kerning first=45 second=80 amount=-5 +kerning first=90 second=333 amount=-1 +kerning first=255 second=45 amount=-4 +kerning first=257 second=106 amount=-1 +kerning first=334 second=224 amount=-1 +kerning first=199 second=346 amount=-3 +kerning first=102 second=345 amount=-1 +kerning first=200 second=217 amount=-2 +kerning first=325 second=81 amount=-2 +kerning first=298 second=224 amount=-2 +kerning first=80 second=256 amount=-4 +kerning first=1079 second=1099 amount=-1 +kerning first=370 second=224 amount=-3 +kerning first=204 second=230 amount=-2 +kerning first=379 second=346 amount=-1 +kerning first=217 second=243 amount=-2 +kerning first=107 second=101 amount=-3 +kerning first=253 second=243 amount=-3 +kerning first=99 second=230 amount=-2 +kerning first=213 second=204 amount=-2 +kerning first=339 second=333 amount=-1 +kerning first=321 second=204 amount=-2 +kerning first=303 second=333 amount=-3 +kerning first=45 second=68 amount=-5 +kerning first=221 second=256 amount=-6 +kerning first=1043 second=1099 amount=-2 +kerning first=230 second=283 amount=-1 +kerning first=375 second=333 amount=-3 +kerning first=232 second=307 amount=-2 +kerning first=356 second=101 amount=-3 +kerning first=80 second=120 amount=-1 +kerning first=370 second=79 amount=-1 +kerning first=116 second=120 amount=-1 +kerning first=321 second=218 amount=-3 +kerning first=1039 second=1072 amount=-1 +kerning first=262 second=79 amount=-3 +kerning first=90 second=335 amount=-1 +kerning first=298 second=79 amount=-2 +kerning first=376 second=192 amount=-6 +kerning first=200 second=334 amount=-1 +kerning first=221 second=120 amount=-2 +kerning first=192 second=268 amount=-3 +kerning first=289 second=243 amount=-2 +kerning first=98 second=251 amount=-1 +kerning first=325 second=243 amount=-2 +kerning first=315 second=347 amount=-1 +kerning first=264 second=268 amount=-3 +kerning first=1092 second=1098 amount=-1 +kerning first=268 second=192 amount=-3 +kerning first=203 second=251 amount=-2 +kerning first=198 second=315 amount=-2 +kerning first=344 second=334 amount=-3 +kerning first=275 second=251 amount=-2 +kerning first=217 second=229 amount=-3 +kerning first=272 second=217 amount=-1 +kerning first=253 second=229 amount=-3 +kerning first=87 second=268 amount=-3 +kerning first=272 second=203 amount=-2 +kerning first=347 second=251 amount=-1 +kerning first=112 second=229 amount=-1 +kerning first=344 second=217 amount=-3 +kerning first=311 second=251 amount=-1 +kerning first=200 second=203 amount=-2 +kerning first=257 second=120 amount=-1 +kerning first=213 second=218 amount=-1 +kerning first=1075 second=1072 amount=-1 +kerning first=336 second=282 amount=-2 +kerning first=289 second=229 amount=-3 +kerning first=381 second=118 amount=-2 +kerning first=264 second=282 amount=-3 +kerning first=325 second=229 amount=-2 +kerning first=365 second=120 amount=-2 +kerning first=325 second=257 amount=-2 +kerning first=344 second=219 amount=-3 +kerning first=277 second=261 amount=-2 +kerning first=221 second=368 amount=-1 +kerning first=249 second=232 amount=-1 +kerning first=105 second=371 amount=-1 +kerning first=253 second=257 amount=-3 +kerning first=272 second=219 amount=-1 +kerning first=289 second=257 amount=-3 +kerning first=1024 second=1036 amount=-1 +kerning first=376 second=267 amount=-3 +kerning first=86 second=336 amount=-3 +kerning first=200 second=219 amount=-2 +kerning first=217 second=257 amount=-3 +kerning first=304 second=279 amount=-2 +kerning first=72 second=232 amount=-2 +kerning first=231 second=361 amount=-2 +kerning first=112 second=257 amount=-1 +kerning first=376 second=279 amount=-3 +kerning first=195 second=361 amount=-3 +kerning first=45 second=66 amount=-5 +kerning first=66 second=278 amount=-4 +kerning first=298 second=121 amount=-2 +kerning first=192 second=254 amount=-2 +kerning first=199 second=374 amount=-1 +kerning first=262 second=121 amount=-1 +kerning first=228 second=254 amount=-1 +kerning first=226 second=121 amount=-3 +kerning first=264 second=254 amount=-1 +kerning first=224 second=275 amount=-1 +kerning first=204 second=244 amount=-2 +kerning first=350 second=344 amount=-3 +kerning first=290 second=69 amount=-1 +kerning first=1060 second=1036 amount=-1 +kerning first=268 second=267 amount=-2 +kerning first=222 second=82 amount=-2 +kerning first=347 second=289 amount=-3 +kerning first=304 second=267 amount=-2 +kerning first=85 second=121 amount=-1 +kerning first=85 second=79 amount=-1 +kerning first=315 second=278 amount=-2 +kerning first=196 second=267 amount=-1 +kerning first=81 second=66 amount=-2 +kerning first=232 second=267 amount=-1 +kerning first=8217 second=260 amount=-6 +kerning first=1064 second=1047 amount=-1 +kerning first=304 second=281 amount=-2 +kerning first=214 second=382 amount=-2 +kerning first=45 second=82 amount=-5 +kerning first=196 second=117 amount=-3 +kerning first=250 second=382 amount=-2 +kerning first=108 second=246 amount=-1 +kerning first=253 second=271 amount=-3 +kerning first=376 second=281 amount=-3 +kerning first=286 second=382 amount=-1 +kerning first=72 second=246 amount=-2 +kerning first=289 second=271 amount=-2 +kerning first=1043 second=1057 amount=-1 +kerning first=268 second=117 amount=-2 +kerning first=121 second=107 amount=-2 +kerning first=232 second=117 amount=-2 +kerning first=1079 second=1085 amount=-1 +kerning first=196 second=281 amount=-1 +kerning first=73 second=382 amount=-1 +kerning first=272 second=205 amount=-2 +kerning first=1043 second=1085 amount=-2 +kerning first=304 second=117 amount=-2 +kerning first=232 second=281 amount=-1 +kerning first=109 second=382 amount=-1 +kerning first=240 second=230 amount=-1 +kerning first=370 second=121 amount=-1 +kerning first=268 second=281 amount=-2 +kerning first=376 second=117 amount=-2 +kerning first=72 second=352 amount=-2 +kerning first=264 second=240 amount=-2 +kerning first=339 second=347 amount=-2 +kerning first=303 second=347 amount=-2 +kerning first=234 second=8250 amount=-2 +kerning first=375 second=361 amount=-1 +kerning first=267 second=347 amount=-2 +kerning first=200 second=205 amount=-2 +kerning first=228 second=240 amount=-1 +kerning first=368 second=379 amount=-1 +kerning first=231 second=347 amount=-2 +kerning first=262 second=107 amount=-1 +kerning first=302 second=339 amount=-2 +kerning first=246 second=371 amount=-1 +kerning first=195 second=347 amount=-2 +kerning first=226 second=107 amount=-1 +kerning first=1067 second=1095 amount=-1 +kerning first=202 second=305 amount=-1 +kerning first=204 second=216 amount=-2 +kerning first=1031 second=1095 amount=-1 +kerning first=90 second=347 amount=-2 +kerning first=274 second=305 amount=-1 +kerning first=115 second=226 amount=-1 +kerning first=354 second=245 amount=-3 +kerning first=370 second=266 amount=-1 +kerning first=1050 second=1083 amount=-2 +kerning first=377 second=65 amount=-1 +kerning first=78 second=252 amount=-1 +kerning first=346 second=305 amount=-3 +kerning first=220 second=226 amount=-3 +kerning first=298 second=266 amount=-2 +kerning first=1037 second=1057 amount=-1 +kerning first=102 second=46 amount=-1 +kerning first=86 second=8250 amount=-3 +kerning first=220 second=336 amount=-1 +kerning first=256 second=336 amount=-3 +kerning first=382 second=305 amount=-2 +kerning first=109 second=122 amount=-1 +kerning first=207 second=112 amount=-1 +kerning first=328 second=226 amount=-1 +kerning first=335 second=8250 amount=-2 +kerning first=1070 second=1062 amount=-1 +kerning first=262 second=266 amount=-3 +kerning first=73 second=122 amount=-1 +kerning first=1116 second=1104 amount=-2 +kerning first=364 second=226 amount=-3 +kerning first=74 second=197 amount=-5 +kerning first=381 second=102 amount=-3 +kerning first=364 second=336 amount=-1 +kerning first=327 second=252 amount=-1 +kerning first=193 second=219 amount=-3 +kerning first=363 second=252 amount=-1 +kerning first=198 second=316 amount=-1 +kerning first=382 second=45 amount=-3 +kerning first=88 second=219 amount=-2 +kerning first=234 second=316 amount=-3 +kerning first=1064 second=1108 amount=-1 +kerning first=211 second=202 amount=-2 +kerning first=296 second=335 amount=-2 +kerning first=289 second=259 amount=-3 +kerning first=219 second=252 amount=-1 +kerning first=253 second=259 amount=-3 +kerning first=255 second=252 amount=-1 +kerning first=201 second=102 amount=-2 +kerning first=378 second=316 amount=-2 +kerning first=105 second=245 amount=-1 +kerning first=291 second=252 amount=-1 +kerning first=325 second=259 amount=-2 +kerning first=272 second=229 amount=-1 +kerning first=79 second=226 amount=-1 +kerning first=246 second=369 amount=-1 +kerning first=112 second=259 amount=-1 +kerning first=97 second=45 amount=-2 +kerning first=314 second=246 amount=-1 +kerning first=65 second=332 amount=-3 +kerning first=81 second=356 amount=-2 +kerning first=332 second=103 amount=-1 +kerning first=8216 second=85 amount=-1 +kerning first=103 second=116 amount=-1 +kerning first=45 second=356 amount=-4 +kerning first=116 second=382 amount=-1 +kerning first=217 second=259 amount=-3 +kerning first=244 second=116 amount=-1 +kerning first=356 second=375 amount=-3 +kerning first=83 second=328 amount=-1 +kerning first=282 second=369 amount=-2 +kerning first=260 second=103 amount=-3 +kerning first=1045 second=1103 amount=-2 +kerning first=206 second=246 amount=-2 +kerning first=69 second=369 amount=-2 +kerning first=224 second=103 amount=-2 +kerning first=110 second=253 amount=-2 +kerning first=274 second=45 amount=-2 +kerning first=8220 second=74 amount=-3 +kerning first=370 second=45 amount=-5 +kerning first=101 second=246 amount=-1 +kerning first=206 second=332 amount=-2 +kerning first=119 second=103 amount=-3 +kerning first=346 second=45 amount=-3 +kerning first=65 second=246 amount=-1 +kerning first=8250 second=221 amount=-4 +kerning first=105 second=369 amount=-1 +kerning first=83 second=103 amount=-3 +kerning first=251 second=253 amount=-3 +kerning first=310 second=45 amount=-4 +kerning first=278 second=332 amount=-1 +kerning first=102 second=120 amount=-1 +kerning first=365 second=382 amount=-2 +kerning first=253 second=109 amount=-2 +kerning first=107 second=375 amount=-1 +kerning first=1045 second=1075 amount=-1 +kerning first=217 second=109 amount=-2 +kerning first=286 second=122 amount=-1 +kerning first=346 second=196 amount=-4 +kerning first=85 second=266 amount=-1 +kerning first=268 second=279 amount=-2 +kerning first=250 second=122 amount=-2 +kerning first=289 second=109 amount=-1 +kerning first=214 second=122 amount=-2 +kerning first=352 second=68 amount=-3 +kerning first=87 second=242 amount=-3 +kerning first=221 second=382 amount=-3 +kerning first=76 second=109 amount=-1 +kerning first=70 second=97 amount=-2 +kerning first=316 second=116 amount=-1 +kerning first=8218 second=98 amount=-1 +kerning first=228 second=242 amount=-1 +kerning first=258 second=356 amount=-6 +kerning first=257 second=382 amount=-1 +kerning first=354 second=369 amount=-2 +kerning first=248 second=375 amount=-3 +kerning first=192 second=242 amount=-1 +kerning first=222 second=356 amount=-2 +kerning first=201 second=362 amount=-2 +kerning first=1056 second=1024 amount=-1 +kerning first=84 second=194 amount=-6 +kerning first=352 second=116 amount=-1 +kerning first=264 second=242 amount=-2 +kerning first=248 second=115 amount=-2 +kerning first=352 second=378 amount=-2 +kerning first=364 second=198 amount=-4 +kerning first=105 second=273 amount=-1 +kerning first=45 second=345 amount=-2 +kerning first=112 second=355 amount=-1 +kerning first=1056 second=1036 amount=-1 +kerning first=346 second=73 amount=-3 +kerning first=83 second=75 amount=-3 +kerning first=316 second=8217 amount=-3 +kerning first=220 second=198 amount=-4 +kerning first=196 second=119 amount=-3 +kerning first=352 second=8217 amount=-2 +kerning first=289 second=355 amount=-1 +kerning first=232 second=119 amount=-2 +kerning first=8222 second=97 amount=-2 +kerning first=356 second=115 amount=-3 +kerning first=253 second=355 amount=-1 +kerning first=268 second=119 amount=-1 +kerning first=315 second=203 amount=-2 +kerning first=112 second=228 amount=-1 +kerning first=288 second=313 amount=-1 +kerning first=304 second=119 amount=-2 +kerning first=287 second=253 amount=-1 +kerning first=350 second=74 amount=-2 +kerning first=257 second=108 amount=-1 +kerning first=70 second=230 amount=-2 +kerning first=323 second=253 amount=-2 +kerning first=221 second=73 amount=-1 +kerning first=216 second=313 amount=-2 +kerning first=211 second=315 amount=-2 +kerning first=365 second=108 amount=-2 +kerning first=274 second=73 amount=-2 +kerning first=368 second=381 amount=-1 +kerning first=371 second=171 amount=-2 +kerning first=1094 second=1105 amount=-1 +kerning first=332 second=75 amount=-2 +kerning first=118 second=269 amount=-3 +kerning first=1072 second=1082 amount=-1 +kerning first=350 second=246 amount=-1 +kerning first=82 second=269 amount=-3 +kerning first=119 second=335 amount=-3 +kerning first=198 second=196 amount=-2 +kerning first=251 second=225 amount=-1 +kerning first=224 second=335 amount=-1 +kerning first=289 second=231 amount=-2 +kerning first=287 second=225 amount=-3 +kerning first=260 second=335 amount=-1 +kerning first=325 second=231 amount=-2 +kerning first=259 second=269 amount=-1 +kerning first=116 second=108 amount=-1 +kerning first=381 second=221 amount=-2 +kerning first=367 second=269 amount=-1 +kerning first=1077 second=1100 amount=-1 +kerning first=83 second=363 amount=-1 +kerning first=74 second=225 amount=-3 +kerning first=119 second=363 amount=-1 +kerning first=110 second=225 amount=-1 +kerning first=83 second=335 amount=-1 +kerning first=366 second=328 amount=-2 +kerning first=224 second=363 amount=-1 +kerning first=1056 second=1086 amount=-1 +kerning first=260 second=363 amount=-3 +kerning first=356 second=286 amount=-3 +kerning first=8218 second=220 amount=-3 +kerning first=208 second=8217 amount=-2 +kerning first=296 second=363 amount=-2 +kerning first=8216 second=345 amount=-1 +kerning first=244 second=8217 amount=-2 +kerning first=8216 second=263 amount=-3 +kerning first=65 second=218 amount=-3 +kerning first=1057 second=1063 amount=-1 +kerning first=368 second=363 amount=-1 +kerning first=8220 second=255 amount=-1 +kerning first=350 second=218 amount=-3 +kerning first=107 second=115 amount=-2 +kerning first=253 second=231 amount=-3 +kerning first=66 second=203 amount=-4 +kerning first=243 second=46 amount=-3 +kerning first=1113 second=1076 amount=-2 +kerning first=278 second=218 amount=-2 +kerning first=279 second=46 amount=-3 +kerning first=1077 second=1076 amount=-1 +kerning first=98 second=8221 amount=-2 +kerning first=79 second=368 amount=-1 +kerning first=303 second=235 amount=-3 +kerning first=1105 second=1118 amount=-1 +kerning first=266 second=261 amount=-2 +kerning first=197 second=367 amount=-3 +kerning first=366 second=122 amount=-3 +kerning first=339 second=235 amount=-1 +kerning first=1069 second=1118 amount=-1 +kerning first=302 second=261 amount=-2 +kerning first=375 second=235 amount=-3 +kerning first=338 second=261 amount=-1 +kerning first=334 second=8220 amount=-2 +kerning first=86 second=296 amount=-1 +kerning first=1074 second=1117 amount=-1 +kerning first=8218 second=218 amount=-3 +kerning first=89 second=261 amount=-5 +kerning first=8250 second=193 amount=-4 +kerning first=330 second=211 amount=-2 +kerning first=68 second=327 amount=-2 +kerning first=1065 second=1072 amount=-1 +kerning first=226 second=8220 amount=-3 +kerning first=259 second=347 amount=-1 +kerning first=258 second=211 amount=-3 +kerning first=381 second=275 amount=-1 +kerning first=89 second=378 amount=-3 +kerning first=227 second=269 amount=-1 +kerning first=233 second=250 amount=-2 +kerning first=102 second=244 amount=-1 +kerning first=216 second=171 amount=-1 +kerning first=235 second=112 amount=-1 +kerning first=97 second=382 amount=-1 +kerning first=197 second=250 amount=-3 +kerning first=252 second=171 amount=-2 +kerning first=199 second=112 amount=-3 +kerning first=45 second=206 amount=-5 +kerning first=366 second=211 amount=-1 +kerning first=1086 second=1083 amount=-2 +kerning first=90 second=235 amount=-1 +kerning first=366 second=326 amount=-2 +kerning first=317 second=327 amount=-2 +kerning first=199 second=86 amount=-1 +kerning first=269 second=250 amount=-2 +kerning first=374 second=261 amount=-5 +kerning first=66 second=217 amount=-3 +kerning first=195 second=235 amount=-1 +kerning first=117 second=326 amount=-1 +kerning first=117 second=328 amount=-1 +kerning first=277 second=109 amount=-2 +kerning first=75 second=171 amount=-4 +kerning first=231 second=235 amount=-1 +kerning first=84 second=192 amount=-6 +kerning first=213 second=206 amount=-2 +kerning first=267 second=235 amount=-1 +kerning first=45 second=328 amount=-2 +kerning first=321 second=206 amount=-2 +kerning first=90 second=237 amount=-1 +kerning first=370 second=353 amount=-2 +kerning first=87 second=117 amount=-2 +kerning first=314 second=100 amount=-1 +kerning first=305 second=365 amount=-1 +kerning first=374 second=378 amount=-3 +kerning first=350 second=100 amount=-1 +kerning first=89 second=263 amount=-3 +kerning first=269 second=365 amount=-2 +kerning first=233 second=365 amount=-2 +kerning first=87 second=366 amount=-1 +kerning first=90 second=200 amount=-1 +kerning first=197 second=365 amount=-3 +kerning first=76 second=83 amount=-1 +kerning first=266 second=378 amount=-2 +kerning first=226 second=353 amount=-1 +kerning first=336 second=366 amount=-1 +kerning first=379 second=112 amount=-1 +kerning first=230 second=378 amount=-2 +kerning first=262 second=353 amount=-2 +kerning first=206 second=100 amount=-2 +kerning first=256 second=45 amount=-4 +kerning first=298 second=353 amount=-2 +kerning first=379 second=262 amount=-1 +kerning first=1025 second=1094 amount=-1 +kerning first=264 second=366 amount=-2 +kerning first=307 second=112 amount=-1 +kerning first=217 second=83 amount=-3 +kerning first=302 second=378 amount=-1 +kerning first=107 second=113 amount=-3 +kerning first=85 second=353 amount=-2 +kerning first=346 second=223 amount=-1 +kerning first=213 second=352 amount=-1 +kerning first=79 second=198 amount=-4 +kerning first=325 second=83 amount=-2 +kerning first=121 second=353 amount=-3 +kerning first=65 second=100 amount=-1 +kerning first=1027 second=1078 amount=-3 +kerning first=321 second=352 amount=-1 +kerning first=195 second=87 amount=-6 +kerning first=116 second=361 amount=-1 +kerning first=101 second=100 amount=-1 +kerning first=198 second=288 amount=-1 +kerning first=8250 second=305 amount=-1 +kerning first=90 second=87 amount=-2 +kerning first=1101 second=1091 amount=-1 +kerning first=202 second=223 amount=-1 +kerning first=67 second=233 amount=-2 +kerning first=377 second=365 amount=-3 +kerning first=76 second=356 amount=-3 +kerning first=274 second=223 amount=-1 +kerning first=370 second=379 amount=-1 +kerning first=1060 second=1040 amount=-3 +kerning first=286 second=304 amount=-1 +kerning first=108 second=324 amount=-1 +kerning first=363 second=99 amount=-1 +kerning first=334 second=379 amount=-2 +kerning first=377 second=339 amount=-1 +kerning first=269 second=339 amount=-1 +kerning first=214 second=304 amount=-2 +kerning first=89 second=289 amount=-4 +kerning first=101 second=305 amount=-2 +kerning first=316 second=233 amount=-1 +kerning first=195 second=89 amount=-6 +kerning first=199 second=114 amount=-1 +kerning first=201 second=249 amount=-2 +kerning first=194 second=289 amount=-3 +kerning first=235 second=114 amount=-1 +kerning first=230 second=289 amount=-3 +kerning first=352 second=233 amount=-1 +kerning first=266 second=289 amount=-3 +kerning first=78 second=99 amount=-2 +kerning first=1070 second=1064 amount=-1 +kerning first=89 second=110 amount=-3 +kerning first=67 second=350 amount=-3 +kerning first=313 second=274 amount=-2 +kerning first=375 second=237 amount=-2 +kerning first=379 second=84 amount=-2 +kerning first=339 second=237 amount=-2 +kerning first=1114 second=1114 amount=-1 +kerning first=85 second=379 amount=-1 +kerning first=230 second=110 amount=-2 +kerning first=303 second=237 amount=-1 +kerning first=255 second=99 amount=-3 +kerning first=266 second=110 amount=-1 +kerning first=267 second=237 amount=-2 +kerning first=1105 second=1116 amount=-1 +kerning first=197 second=339 amount=-1 +kerning first=223 second=187 amount=-2 +kerning first=219 second=99 amount=-2 +kerning first=231 second=237 amount=-2 +kerning first=280 second=350 amount=-2 +kerning first=233 second=339 amount=-1 +kerning first=249 second=324 amount=-1 +kerning first=327 second=99 amount=-2 +kerning first=85 second=381 amount=-1 +kerning first=338 second=110 amount=-1 +kerning first=195 second=237 amount=-1 +kerning first=291 second=99 amount=-2 +kerning first=262 second=379 amount=-2 +kerning first=1048 second=1060 amount=-1 +kerning first=374 second=110 amount=-3 +kerning first=208 second=350 amount=-1 +kerning first=321 second=324 amount=-1 +kerning first=381 second=277 amount=-1 +kerning first=86 second=212 amount=-3 +kerning first=379 second=234 amount=-1 +kerning first=1101 second=1119 amount=-1 +kerning first=45 second=326 amount=-2 +kerning first=352 second=350 amount=-1 +kerning first=1045 second=1101 amount=-1 +kerning first=313 second=302 amount=-2 +kerning first=8220 second=370 amount=-1 +kerning first=199 second=234 amount=-2 +kerning first=75 second=113 amount=-2 +kerning first=370 second=264 amount=-1 +kerning first=235 second=234 amount=-1 +kerning first=338 second=71 amount=-1 +kerning first=1038 second=1089 amount=-4 +kerning first=212 second=260 amount=-4 +kerning first=298 second=264 amount=-2 +kerning first=307 second=234 amount=-1 +kerning first=302 second=289 amount=-3 +kerning first=262 second=351 amount=-2 +kerning first=262 second=264 amount=-3 +kerning first=278 second=72 amount=-2 +kerning first=284 second=260 amount=-3 +kerning first=45 second=354 amount=-4 +kerning first=338 second=289 amount=-3 +kerning first=281 second=324 amount=-2 +kerning first=377 second=367 amount=-3 +kerning first=90 second=89 amount=-2 +kerning first=81 second=354 amount=-2 +kerning first=374 second=289 amount=-4 +kerning first=350 second=72 amount=-3 +kerning first=356 second=260 amount=-6 +kerning first=1055 second=1054 amount=-1 +kerning first=298 second=351 amount=-2 +kerning first=75 second=199 amount=-3 +kerning first=79 second=76 amount=-2 +kerning first=305 second=367 amount=-1 +kerning first=85 second=351 amount=-2 +kerning first=85 second=264 amount=-1 +kerning first=222 second=354 amount=-2 +kerning first=201 second=364 amount=-2 +kerning first=233 second=367 amount=-2 +kerning first=90 second=209 amount=-1 +kerning first=258 second=354 amount=-6 +kerning first=275 second=111 amount=-1 +kerning first=269 second=367 amount=-2 +kerning first=377 second=110 amount=-1 +kerning first=121 second=351 amount=-3 +kerning first=121 second=223 amount=-1 +kerning first=268 second=8249 amount=-4 +kerning first=119 second=361 amount=-1 +kerning first=275 second=267 amount=-1 +kerning first=78 second=264 amount=-2 +kerning first=108 second=226 amount=-2 +kerning first=78 second=121 amount=-2 +kerning first=83 second=361 amount=-1 +kerning first=311 second=267 amount=-3 +kerning first=118 second=277 amount=-3 +kerning first=327 second=367 amount=-2 +kerning first=1030 second=1095 amount=-1 +kerning first=224 second=361 amount=-1 +kerning first=82 second=277 amount=-3 +kerning first=203 second=377 amount=-1 +kerning first=363 second=367 amount=-1 +kerning first=1036 second=1077 amount=-2 +kerning first=255 second=367 amount=-1 +kerning first=296 second=361 amount=-2 +kerning first=199 second=254 amount=-1 +kerning first=99 second=351 amount=-2 +kerning first=253 second=111 amount=-3 +kerning first=354 second=257 amount=-5 +kerning first=291 second=367 amount=-1 +kerning first=260 second=361 amount=-3 +kerning first=235 second=254 amount=-2 +kerning first=240 second=351 amount=-2 +kerning first=289 second=111 amount=-2 +kerning first=84 second=287 amount=-4 +kerning first=264 second=114 amount=-1 +kerning first=368 second=361 amount=-1 +kerning first=314 second=45 amount=-3 +kerning first=325 second=111 amount=-2 +kerning first=282 second=257 amount=-1 +kerning first=219 second=367 amount=-1 +kerning first=280 second=364 amount=-2 +kerning first=307 second=254 amount=-1 +kerning first=1025 second=1074 amount=-1 +kerning first=212 second=274 amount=-2 +kerning first=244 second=261 amount=-1 +kerning first=78 second=367 amount=-2 +kerning first=347 second=117 amount=-1 +kerning first=336 second=374 amount=-2 +kerning first=120 second=287 amount=-2 +kerning first=280 second=261 amount=-1 +kerning first=269 second=244 amount=-1 +kerning first=311 second=117 amount=-1 +kerning first=261 second=287 amount=-1 +kerning first=87 second=114 amount=-1 +kerning first=363 second=121 amount=-3 +kerning first=352 second=104 amount=-2 +kerning first=1088 second=1081 amount=-1 +kerning first=264 second=374 amount=-1 +kerning first=71 second=274 amount=-1 +kerning first=225 second=287 amount=-2 +kerning first=352 second=261 amount=-2 +kerning first=327 second=121 amount=-2 +kerning first=316 second=104 amount=-1 +kerning first=67 second=274 amount=-3 +kerning first=356 second=274 amount=-1 +kerning first=333 second=287 amount=-2 +kerning first=67 second=261 amount=-2 +kerning first=377 second=244 amount=-1 +kerning first=291 second=121 amount=-1 +kerning first=213 second=344 amount=-2 +kerning first=192 second=374 amount=-6 +kerning first=327 second=250 amount=-2 +kerning first=103 second=261 amount=-3 +kerning first=219 second=381 amount=-1 +kerning first=332 second=237 amount=-1 +kerning first=284 second=274 amount=-1 +kerning first=219 second=121 amount=-1 +kerning first=116 second=351 amount=-1 +kerning first=296 second=237 amount=-1 +kerning first=369 second=287 amount=-3 +kerning first=208 second=261 amount=-1 +kerning first=321 second=344 amount=-2 +kerning first=224 second=347 amount=-1 +kerning first=255 second=107 amount=-2 +kerning first=219 second=250 amount=-1 +kerning first=1076 second=1104 amount=-1 +kerning first=103 second=378 amount=-3 +kerning first=266 second=171 amount=-4 +kerning first=1040 second=1104 amount=-2 +kerning first=119 second=347 amount=-3 +kerning first=291 second=250 amount=-1 +kerning first=289 second=289 amount=-2 +kerning first=83 second=347 amount=-1 +kerning first=275 second=281 amount=-1 +kerning first=291 second=107 amount=-2 +kerning first=379 second=240 amount=-1 +kerning first=255 second=250 amount=-1 +kerning first=338 second=171 amount=-2 +kerning first=339 second=271 amount=-1 +kerning first=1057 second=1047 amount=-1 +kerning first=305 second=250 amount=-1 +kerning first=89 second=171 amount=-5 +kerning first=67 second=378 amount=-2 +kerning first=74 second=354 amount=-1 +kerning first=275 second=117 amount=-2 +kerning first=377 second=230 amount=-1 +kerning first=78 second=250 amount=-2 +kerning first=194 second=171 amount=-4 +kerning first=1118 second=1108 amount=-2 +kerning first=74 second=74 amount=-2 +kerning first=253 second=371 amount=-1 +kerning first=210 second=257 amount=-1 +kerning first=289 second=371 amount=-1 +kerning first=69 second=257 amount=-1 +kerning first=327 second=264 amount=-2 +kerning first=105 second=257 amount=-2 +kerning first=368 second=347 amount=-2 +kerning first=374 second=171 amount=-5 +kerning first=375 second=110 amount=-2 +kerning first=363 second=107 amount=-2 +kerning first=192 second=100 amount=-1 +kerning first=307 second=240 amount=-1 +kerning first=88 second=314 amount=-1 +kerning first=219 second=264 amount=-1 +kerning first=296 second=347 amount=-2 +kerning first=228 second=100 amount=-1 +kerning first=199 second=240 amount=-2 +kerning first=229 second=314 amount=-1 +kerning first=260 second=347 amount=-2 +kerning first=323 second=74 amount=-1 +kerning first=264 second=100 amount=-2 +kerning first=235 second=240 amount=-1 +kerning first=202 second=102 amount=-2 +kerning first=193 second=314 amount=-2 +kerning first=213 second=220 amount=-1 +kerning first=208 second=90 amount=-2 +kerning first=214 second=298 amount=-2 +kerning first=204 second=71 amount=-2 +kerning first=213 second=330 amount=-2 +kerning first=1119 second=1108 amount=-1 +kerning first=280 second=90 amount=-1 +kerning first=286 second=298 amount=-1 +kerning first=1092 second=1114 amount=-1 +kerning first=317 second=207 amount=-2 +kerning first=290 second=317 amount=-1 +kerning first=68 second=201 amount=-2 +kerning first=204 second=214 amount=-2 +kerning first=337 second=314 amount=-2 +kerning first=321 second=330 amount=-2 +kerning first=68 second=207 amount=-2 +kerning first=1024 second=1024 amount=-1 +kerning first=367 second=291 amount=-3 +kerning first=1025 second=1075 amount=-1 +kerning first=331 second=291 amount=-2 +kerning first=362 second=194 amount=-4 +kerning first=1083 second=1108 amount=-1 +kerning first=321 second=220 amount=-3 +kerning first=90 second=221 amount=-2 +kerning first=258 second=213 amount=-3 +kerning first=269 second=224 amount=-2 +kerning first=259 second=291 amount=-2 +kerning first=99 second=337 amount=-1 +kerning first=122 second=324 amount=-2 +kerning first=290 second=200 amount=-1 +kerning first=233 second=224 amount=-2 +kerning first=272 second=304 amount=-2 +kerning first=86 second=324 amount=-3 +kerning first=217 second=97 amount=-3 +kerning first=200 second=318 amount=-1 +kerning first=187 second=291 amount=-3 +kerning first=227 second=324 amount=-1 +kerning first=305 second=224 amount=-1 +kerning first=118 second=291 amount=-3 +kerning first=112 second=97 amount=-1 +kerning first=82 second=291 amount=-3 +kerning first=1038 second=1101 amount=-3 +kerning first=325 second=97 amount=-2 +kerning first=321 second=84 amount=-3 +kerning first=78 second=101 amount=-2 +kerning first=366 second=213 amount=-1 +kerning first=377 second=224 amount=-1 +kerning first=275 second=109 amount=-2 +kerning first=235 second=251 amount=-2 +kerning first=8250 second=195 amount=-4 +kerning first=317 second=311 amount=-2 +kerning first=344 second=318 amount=-3 +kerning first=204 second=337 amount=-2 +kerning first=1025 second=1088 amount=-1 +kerning first=253 second=97 amount=-3 +kerning first=281 second=311 amount=-2 +kerning first=380 second=318 amount=-2 +kerning first=67 second=90 amount=-2 +kerning first=289 second=97 amount=-3 +kerning first=213 second=84 amount=-2 +kerning first=245 second=311 amount=-1 +kerning first=219 second=101 amount=-2 +kerning first=72 second=234 amount=-2 +kerning first=326 second=303 amount=-1 +kerning first=1036 second=1057 amount=-4 +kerning first=103 second=104 amount=-2 +kerning first=255 second=101 amount=-3 +kerning first=281 second=187 amount=-2 +kerning first=108 second=234 amount=-1 +kerning first=68 second=325 amount=-2 +kerning first=362 second=303 amount=-2 +kerning first=67 second=104 amount=-1 +kerning first=291 second=101 amount=-2 +kerning first=254 second=303 amount=-1 +kerning first=1057 second=1041 amount=-1 +kerning first=366 second=227 amount=-3 +kerning first=347 second=249 amount=-1 +kerning first=327 second=101 amount=-2 +kerning first=317 second=193 amount=-2 +kerning first=380 second=44 amount=-1 +kerning first=330 second=227 amount=-2 +kerning first=363 second=101 amount=-1 +kerning first=200 second=44 amount=-1 +kerning first=321 second=78 amount=-2 +kerning first=280 second=104 amount=-1 +kerning first=86 second=310 amount=-1 +kerning first=263 second=324 amount=-2 +kerning first=213 second=70 amount=-2 +kerning first=244 second=104 amount=-1 +kerning first=245 second=187 amount=-2 +kerning first=272 second=44 amount=-3 +kerning first=371 second=324 amount=-2 +kerning first=236 second=44 amount=-2 +kerning first=317 second=325 amount=-2 +kerning first=335 second=324 amount=-1 +kerning first=73 second=284 amount=-2 +kerning first=367 second=277 amount=-1 +kerning first=117 second=227 amount=-1 +kerning first=290 second=194 amount=-3 +kerning first=213 second=78 amount=-2 +kerning first=81 second=227 amount=-1 +kerning first=69 second=251 amount=-2 +kerning first=1060 second=1024 amount=-1 +kerning first=266 second=209 amount=-3 +kerning first=45 second=227 amount=-1 +kerning first=218 second=194 amount=-4 +kerning first=1092 second=1100 amount=-1 +kerning first=249 second=234 amount=-1 +kerning first=282 second=251 amount=-2 +kerning first=317 second=201 amount=-2 +kerning first=218 second=303 amount=-2 +kerning first=246 second=251 amount=-1 +kerning first=1101 second=1093 amount=-1 +kerning first=77 second=303 amount=-1 +kerning first=222 second=227 amount=-1 +kerning first=354 second=251 amount=-2 +kerning first=259 second=277 amount=-1 +kerning first=113 second=303 amount=-1 +kerning first=85 second=237 amount=-2 +kerning first=266 second=118 amount=-1 +kerning first=83 second=245 amount=-1 +kerning first=82 second=283 amount=-3 +kerning first=298 second=105 amount=-1 +kerning first=230 second=118 amount=-2 +kerning first=280 second=370 amount=-2 +kerning first=334 second=105 amount=-1 +kerning first=8250 second=327 amount=-5 +kerning first=255 second=226 amount=-3 +kerning first=226 second=105 amount=-1 +kerning first=264 second=270 amount=-3 +kerning first=302 second=118 amount=-2 +kerning first=352 second=370 amount=-3 +kerning first=262 second=105 amount=-1 +kerning first=89 second=118 amount=-3 +kerning first=260 second=245 amount=-1 +kerning first=259 second=283 amount=-1 +kerning first=192 second=368 amount=-3 +kerning first=1108 second=1083 amount=-1 +kerning first=121 second=105 amount=-2 +kerning first=310 second=335 amount=-2 +kerning first=71 second=280 amount=-1 +kerning first=224 second=245 amount=-1 +kerning first=1082 second=1079 amount=-1 +kerning first=346 second=335 amount=-1 +kerning first=194 second=118 amount=-3 +kerning first=87 second=368 amount=-1 +kerning first=382 second=335 amount=-1 +kerning first=87 second=270 amount=-1 +kerning first=323 second=268 amount=-2 +kerning first=118 second=283 amount=-3 +kerning first=85 second=105 amount=-2 +kerning first=212 second=280 amount=-2 +kerning first=316 second=241 amount=-1 +kerning first=336 second=368 amount=-1 +kerning first=200 second=45 amount=-2 +kerning first=218 second=193 amount=-4 +kerning first=68 second=193 amount=-4 +kerning first=280 second=241 amount=-1 +kerning first=367 second=283 amount=-1 +kerning first=67 second=370 amount=-2 +kerning first=67 second=223 amount=-1 +kerning first=228 second=108 amount=-1 +kerning first=264 second=368 amount=-2 +kerning first=1036 second=1083 amount=-2 +kerning first=352 second=241 amount=-1 +kerning first=192 second=108 amount=-2 +kerning first=8220 second=350 amount=-1 +kerning first=240 second=228 amount=-1 +kerning first=336 second=270 amount=-2 +kerning first=103 second=241 amount=-1 +kerning first=264 second=108 amount=-1 +kerning first=204 second=228 amount=-2 +kerning first=244 second=241 amount=-1 +kerning first=214 second=278 amount=-2 +kerning first=381 second=367 amount=-3 +kerning first=208 second=370 amount=-1 +kerning first=99 second=228 amount=-2 +kerning first=97 second=335 amount=-1 +kerning first=224 second=231 amount=-1 +kerning first=286 second=278 amount=-1 +kerning first=66 second=89 amount=-3 +kerning first=1072 second=1085 amount=-1 +kerning first=260 second=231 amount=-1 +kerning first=199 second=228 amount=-2 +kerning first=336 second=122 amount=-2 +kerning first=67 second=241 amount=-1 +kerning first=119 second=231 amount=-3 +kerning first=1072 second=1097 amount=-1 +kerning first=352 second=356 amount=-3 +kerning first=333 second=107 amount=-1 +kerning first=1108 second=1097 amount=-1 +kerning first=8250 second=313 amount=-5 +kerning first=231 second=241 amount=-2 +kerning first=264 second=122 amount=-2 +kerning first=368 second=231 amount=-2 +kerning first=280 second=356 amount=-1 +kerning first=240 second=331 amount=-1 +kerning first=336 second=73 amount=-2 +kerning first=316 second=255 amount=-3 +kerning first=374 second=116 amount=-1 +kerning first=296 second=231 amount=-2 +kerning first=336 second=256 amount=-4 +kerning first=1052 second=1073 amount=-1 +kerning first=229 second=235 amount=-1 +kerning first=1108 second=1085 amount=-1 +kerning first=244 second=255 amount=-3 +kerning first=368 second=245 amount=-2 +kerning first=296 second=81 amount=-2 +kerning first=99 second=331 amount=-2 +kerning first=310 second=220 amount=-2 +kerning first=103 second=255 amount=-1 +kerning first=296 second=245 amount=-2 +kerning first=368 second=81 amount=-1 +kerning first=67 second=255 amount=-1 +kerning first=356 second=280 amount=-1 +kerning first=99 second=345 amount=-1 +kerning first=228 second=122 amount=-1 +kerning first=1038 second=1095 amount=-3 +kerning first=83 second=231 amount=-1 +kerning first=315 second=290 amount=-1 +kerning first=1088 second=1087 amount=-1 +kerning first=370 second=105 amount=-2 +kerning first=277 second=8250 amount=-2 +kerning first=240 second=345 amount=-1 +kerning first=87 second=122 amount=-3 +kerning first=104 second=305 amount=-1 +kerning first=368 second=229 amount=-3 +kerning first=68 second=305 amount=-1 +kerning first=88 second=217 amount=-2 +kerning first=209 second=305 amount=-1 +kerning first=97 second=333 amount=-1 +kerning first=296 second=229 amount=-2 +kerning first=103 second=303 amount=-2 +kerning first=193 second=217 amount=-3 +kerning first=332 second=229 amount=-1 +kerning first=281 second=305 amount=-2 +kerning first=1046 second=1101 amount=-1 +kerning first=221 second=282 amount=-1 +kerning first=228 second=106 amount=-1 +kerning first=310 second=67 amount=-3 +kerning first=245 second=305 amount=-1 +kerning first=305 second=8220 amount=-2 +kerning first=264 second=106 amount=-1 +kerning first=274 second=67 amount=-1 +kerning first=353 second=305 amount=-2 +kerning first=65 second=346 amount=-3 +kerning first=260 second=81 amount=-3 +kerning first=317 second=305 amount=-2 +kerning first=228 second=8249 amount=-2 +kerning first=80 second=282 amount=-1 +kerning first=346 second=333 amount=-1 +kerning first=305 second=230 amount=-1 +kerning first=278 second=346 amount=-2 +kerning first=310 second=333 amount=-2 +kerning first=233 second=230 amount=-2 +kerning first=79 second=204 amount=-2 +kerning first=206 second=346 amount=-2 +kerning first=382 second=333 amount=-1 +kerning first=83 second=243 amount=-1 +kerning first=336 second=106 amount=-1 +kerning first=269 second=230 amount=-2 +kerning first=311 second=281 amount=-3 +kerning first=87 second=256 amount=-6 +kerning first=324 second=367 amount=-1 +kerning first=1108 second=1099 amount=-1 +kerning first=333 second=307 amount=-1 +kerning first=369 second=307 amount=-2 +kerning first=198 second=218 amount=-2 +kerning first=197 second=79 amount=-3 +kerning first=256 second=218 amount=-3 +kerning first=296 second=243 amount=-2 +kerning first=334 second=352 amount=-1 +kerning first=368 second=243 amount=-2 +kerning first=211 second=69 amount=-2 +kerning first=119 second=243 amount=-3 +kerning first=1039 second=1060 amount=-1 +kerning first=72 second=332 amount=-2 +kerning first=377 second=79 amount=-1 +kerning first=200 second=381 amount=-1 +kerning first=352 second=80 amount=-3 +kerning first=224 second=243 amount=-1 +kerning first=109 second=228 amount=-1 +kerning first=260 second=243 amount=-1 +kerning first=88 second=255 amount=-3 +kerning first=1027 second=1098 amount=-1 +kerning first=311 second=171 amount=-3 +kerning first=101 second=244 amount=-1 +kerning first=83 second=229 amount=-2 +kerning first=336 second=120 amount=-1 +kerning first=221 second=268 amount=-3 +kerning first=321 second=332 amount=-1 +kerning first=1027 second=1084 amount=-2 +kerning first=88 second=334 amount=-3 +kerning first=79 second=218 amount=-1 +kerning first=87 second=120 amount=-2 +kerning first=374 second=118 amount=-3 +kerning first=356 second=8250 amount=-3 +kerning first=193 second=334 amount=-3 +kerning first=119 second=229 amount=-3 +kerning first=228 second=120 amount=-1 +kerning first=235 second=242 amount=-1 +kerning first=267 second=229 amount=-2 +kerning first=262 second=99 amount=-2 +kerning first=356 second=333 amount=-3 +kerning first=1101 second=1099 amount=-1 +kerning first=69 second=109 amount=-1 +kerning first=204 second=339 amount=-2 +kerning first=311 second=279 amount=-3 +kerning first=199 second=242 amount=-2 +kerning first=303 second=229 amount=-2 +kerning first=226 second=99 amount=-1 +kerning first=279 second=261 amount=-2 +kerning first=187 second=289 amount=-3 +kerning first=307 second=242 amount=-1 +kerning first=217 second=346 amount=-3 +kerning first=223 second=289 amount=-2 +kerning first=99 second=339 amount=-1 +kerning first=231 second=229 amount=-2 +kerning first=298 second=99 amount=-2 +kerning first=105 second=109 amount=-2 +kerning first=259 second=289 amount=-2 +kerning first=307 second=122 amount=-1 +kerning first=379 second=242 amount=-1 +kerning first=295 second=289 amount=-2 +kerning first=370 second=99 amount=-2 +kerning first=331 second=289 amount=-2 +kerning first=260 second=89 amount=-6 +kerning first=350 second=232 amount=-1 +kerning first=275 second=279 amount=-1 +kerning first=286 second=282 amount=-1 +kerning first=339 second=229 amount=-2 +kerning first=367 second=289 amount=-3 +kerning first=314 second=232 amount=-1 +kerning first=375 second=229 amount=-3 +kerning first=1057 second=1049 amount=-1 +kerning first=332 second=89 amount=-2 +kerning first=101 second=232 amount=-1 +kerning first=214 second=282 amount=-2 +kerning first=219 second=379 amount=-1 +kerning first=235 second=106 amount=-2 +kerning first=65 second=232 amount=-1 +kerning first=310 second=214 amount=-3 +kerning first=203 second=119 amount=-1 +kerning first=206 second=232 amount=-2 +kerning first=363 second=303 amount=-2 +kerning first=72 second=346 amount=-2 +kerning first=374 second=347 amount=-3 +kerning first=8216 second=261 amount=-3 +kerning first=97 second=339 amount=-1 +kerning first=338 second=75 amount=-2 +kerning first=72 second=111 amount=-2 +kerning first=226 second=275 amount=-1 +kerning first=85 second=99 amount=-2 +kerning first=321 second=346 amount=-1 +kerning first=345 second=289 amount=-2 +kerning first=311 second=119 amount=-1 +kerning first=347 second=119 amount=-3 +kerning first=222 second=364 amount=-1 +kerning first=307 second=106 amount=-2 +kerning first=264 second=361 amount=-2 +kerning first=213 second=346 amount=-1 +kerning first=82 second=289 amount=-3 +kerning first=277 second=113 amount=-1 +kerning first=202 second=209 amount=-2 +kerning first=220 second=212 amount=-1 +kerning first=256 second=212 amount=-3 +kerning first=8220 second=354 amount=-1 +kerning first=8217 second=288 amount=-2 +kerning first=89 second=269 amount=-3 +kerning first=82 second=8249 amount=-4 +kerning first=346 second=209 amount=-3 +kerning first=122 second=316 amount=-2 +kerning first=194 second=269 amount=-1 +kerning first=1058 second=1119 amount=-2 +kerning first=1061 second=1072 amount=-2 +kerning first=274 second=209 amount=-2 +kerning first=302 second=269 amount=-2 +kerning first=227 second=316 amount=-1 +kerning first=8216 second=364 amount=-1 +kerning first=8222 second=251 amount=-1 +kerning first=249 second=8220 amount=-3 +kerning first=266 second=269 amount=-2 +kerning first=263 second=316 amount=-3 +kerning first=204 second=79 amount=-2 +kerning first=374 second=269 amount=-3 +kerning first=330 second=288 amount=-2 +kerning first=67 second=229 amount=-2 +kerning first=321 second=76 amount=-2 +kerning first=83 second=89 amount=-3 +kerning first=8220 second=374 amount=-1 +kerning first=1070 second=1076 amount=-1 +kerning first=213 second=72 amount=-2 +kerning first=209 second=199 amount=-2 +kerning first=66 second=274 amount=-4 +kerning first=364 second=212 amount=-1 +kerning first=90 second=229 amount=-1 +kerning first=213 second=76 amount=-2 +kerning first=1117 second=1089 amount=-1 +kerning first=1081 second=1089 amount=-1 +kerning first=290 second=192 amount=-3 +kerning first=280 second=368 amount=-2 +kerning first=379 second=365 amount=-3 +kerning first=219 second=109 amount=-2 +kerning first=321 second=72 amount=-2 +kerning first=70 second=216 amount=-1 +kerning first=218 second=192 amount=-4 +kerning first=249 second=226 amount=-1 +kerning first=336 second=261 amount=-1 +kerning first=316 second=102 amount=-1 +kerning first=217 second=245 amount=-2 +kerning first=210 second=8221 amount=-2 +kerning first=205 second=286 amount=-2 +kerning first=236 second=46 amount=-2 +kerning first=321 second=336 amount=-1 +kerning first=272 second=46 amount=-3 +kerning first=230 second=237 amount=-2 +kerning first=1099 second=1086 amount=-1 +kerning first=325 second=245 amount=-2 +kerning first=246 second=8221 amount=-2 +kerning first=1043 second=1083 amount=-3 +kerning first=244 second=102 amount=-1 +kerning first=289 second=245 amount=-2 +kerning first=8250 second=201 amount=-5 +kerning first=8218 second=84 amount=-6 +kerning first=1027 second=1086 amount=-3 +kerning first=280 second=102 amount=-2 +kerning first=253 second=245 amount=-3 +kerning first=303 second=335 amount=-3 +kerning first=90 second=257 amount=-1 +kerning first=313 second=381 amount=-3 +kerning first=339 second=335 amount=-1 +kerning first=198 second=296 amount=-2 +kerning first=258 second=219 amount=-3 +kerning first=226 second=252 amount=-1 +kerning first=112 second=103 amount=-2 +kerning first=375 second=335 amount=-3 +kerning first=222 second=219 amount=-1 +kerning first=371 second=316 amount=-2 +kerning first=262 second=252 amount=-2 +kerning first=76 second=103 amount=-3 +kerning first=298 second=252 amount=-1 +kerning first=78 second=269 amount=-2 +kerning first=72 second=226 amount=-2 +kerning first=195 second=335 amount=-1 +kerning first=81 second=219 amount=-1 +kerning first=70 second=99 amount=-1 +kerning first=290 second=202 amount=-1 +kerning first=231 second=335 amount=-1 +kerning first=45 second=219 amount=-4 +kerning first=85 second=252 amount=-1 +kerning first=267 second=335 amount=-1 +kerning first=213 second=226 amount=-1 +kerning first=121 second=252 amount=-1 +kerning first=76 second=369 amount=-2 +kerning first=282 second=259 amount=-1 +kerning first=67 second=253 amount=-1 +kerning first=291 second=375 amount=-1 +kerning first=246 second=259 amount=-1 +kerning first=103 second=253 amount=-1 +kerning first=379 second=246 amount=-1 +kerning first=354 second=259 amount=-5 +kerning first=219 second=375 amount=-1 +kerning first=1058 second=1113 amount=-2 +kerning first=112 second=369 amount=-1 +kerning first=307 second=246 amount=-1 +kerning first=105 second=259 amount=-2 +kerning first=1088 second=1075 amount=-1 +kerning first=244 second=253 amount=-3 +kerning first=104 second=45 amount=-3 +kerning first=325 second=103 amount=-3 +kerning first=280 second=362 amount=-2 +kerning first=1025 second=1082 amount=-1 +kerning first=69 second=259 amount=-1 +kerning first=370 second=252 amount=-1 +kerning first=289 second=103 amount=-2 +kerning first=74 second=356 amount=-1 +kerning first=235 second=246 amount=-1 +kerning first=210 second=259 amount=-1 +kerning first=363 second=375 amount=-3 +kerning first=253 second=103 amount=-3 +kerning first=352 second=362 amount=-3 +kerning first=199 second=246 amount=-2 +kerning first=352 second=253 amount=-2 +kerning first=327 second=375 amount=-2 +kerning first=83 second=83 amount=-1 +kerning first=217 second=103 amount=-4 +kerning first=221 second=122 amount=-3 +kerning first=219 second=266 amount=-1 +kerning first=264 second=382 amount=-2 +kerning first=354 second=109 amount=-3 +kerning first=116 second=122 amount=-1 +kerning first=208 second=362 amount=-1 +kerning first=336 second=382 amount=-2 +kerning first=67 second=225 amount=-2 +kerning first=260 second=83 amount=-3 +kerning first=8216 second=331 amount=-1 +kerning first=253 second=369 amount=-1 +kerning first=246 second=109 amount=-1 +kerning first=365 second=122 amount=-2 +kerning first=211 second=323 amount=-2 +kerning first=364 second=256 amount=-4 +kerning first=87 second=382 amount=-3 +kerning first=217 second=369 amount=-1 +kerning first=72 second=336 amount=-2 +kerning first=8216 second=65 amount=-8 +kerning first=78 second=375 amount=-2 +kerning first=332 second=83 amount=-1 +kerning first=78 second=266 amount=-2 +kerning first=8220 second=364 amount=-1 +kerning first=325 second=369 amount=-2 +kerning first=368 second=83 amount=-3 +kerning first=289 second=369 amount=-1 +kerning first=282 second=109 amount=-1 +kerning first=257 second=122 amount=-1 +kerning first=67 second=362 amount=-2 +kerning first=228 second=382 amount=-1 +kerning first=231 second=223 amount=-1 +kerning first=67 second=89 amount=-1 +kerning first=231 second=289 amount=-3 +kerning first=78 second=115 amount=-2 +kerning first=311 second=273 amount=-3 +kerning first=203 second=104 amount=-1 +kerning first=8218 second=318 amount=-1 +kerning first=307 second=248 amount=-1 +kerning first=114 second=115 amount=-1 +kerning first=275 second=273 amount=-1 +kerning first=206 second=353 amount=-2 +kerning first=232 second=241 amount=-2 +kerning first=303 second=223 amount=-1 +kerning first=235 second=248 amount=-1 +kerning first=267 second=223 amount=-1 +kerning first=228 second=380 amount=-1 +kerning first=1065 second=1105 amount=-1 +kerning first=74 second=233 amount=-2 +kerning first=346 second=245 amount=-1 +kerning first=255 second=115 amount=-3 +kerning first=381 second=263 amount=-1 +kerning first=291 second=115 amount=-3 +kerning first=79 second=330 amount=-2 +kerning first=119 second=355 amount=-1 +kerning first=287 second=233 amount=-2 +kerning first=86 second=198 amount=-6 +kerning first=90 second=223 amount=-1 +kerning first=219 second=115 amount=-2 +kerning first=251 second=233 amount=-1 +kerning first=88 second=213 amount=-3 +kerning first=90 second=75 amount=-1 +kerning first=317 second=313 amount=-2 +kerning first=323 second=233 amount=-2 +kerning first=121 second=365 amount=-1 +kerning first=327 second=115 amount=-2 +kerning first=8216 second=337 amount=-3 +kerning first=193 second=213 amount=-3 +kerning first=85 second=365 amount=-1 +kerning first=363 second=115 amount=-2 +kerning first=260 second=355 amount=-1 +kerning first=74 second=350 amount=-1 +kerning first=1027 second=1090 amount=-1 +kerning first=201 second=110 amount=-1 +kerning first=379 second=248 amount=-1 +kerning first=68 second=313 amount=-2 +kerning first=202 second=325 amount=-2 +kerning first=229 second=328 amount=-1 +kerning first=76 second=363 amount=-2 +kerning first=225 second=303 amount=-1 +kerning first=1046 second=1038 amount=-3 +kerning first=197 second=85 amount=-3 +kerning first=45 second=225 amount=-1 +kerning first=112 second=363 amount=-1 +kerning first=274 second=325 amount=-2 +kerning first=84 second=303 amount=-2 +kerning first=81 second=225 amount=-1 +kerning first=120 second=303 amount=-1 +kerning first=363 second=8220 amount=-3 +kerning first=117 second=225 amount=-1 +kerning first=381 second=110 amount=-1 +kerning first=217 second=363 amount=-1 +kerning first=346 second=325 amount=-3 +kerning first=333 second=303 amount=-1 +kerning first=253 second=363 amount=-1 +kerning first=369 second=303 amount=-2 +kerning first=337 second=328 amount=-1 +kerning first=289 second=363 amount=-1 +kerning first=195 second=221 amount=-6 +kerning first=261 second=303 amount=-1 +kerning first=323 second=350 amount=-2 +kerning first=376 second=302 amount=-1 +kerning first=83 second=235 amount=-1 +kerning first=290 second=315 amount=-1 +kerning first=8250 second=207 amount=-5 +kerning first=321 second=338 amount=-1 +kerning first=201 second=45 amount=-2 +kerning first=330 second=225 amount=-2 +kerning first=1073 second=1094 amount=-1 +kerning first=73 second=290 amount=-2 +kerning first=307 second=98 amount=-1 +kerning first=366 second=225 amount=-3 +kerning first=67 second=102 amount=-2 +kerning first=86 second=196 amount=-6 +kerning first=219 second=260 amount=-4 +kerning first=103 second=102 amount=-1 +kerning first=264 second=380 amount=-2 +kerning first=199 second=98 amount=-1 +kerning first=313 second=286 amount=-1 +kerning first=344 second=46 amount=-2 +kerning first=222 second=225 amount=-1 +kerning first=1025 second=1080 amount=-1 +kerning first=72 second=338 amount=-2 +kerning first=8220 second=362 amount=-1 +kerning first=380 second=46 amount=-1 +kerning first=116 second=353 amount=-1 +kerning first=69 second=377 amount=-1 +kerning first=298 second=367 amount=-2 +kerning first=1043 second=1077 amount=-3 +kerning first=364 second=210 amount=-1 +kerning first=226 second=367 amount=-1 +kerning first=65 second=352 amount=-3 +kerning first=201 second=261 amount=-1 +kerning first=350 second=86 amount=-3 +kerning first=242 second=331 amount=-1 +kerning first=206 second=352 amount=-2 +kerning first=121 second=367 amount=-1 +kerning first=256 second=210 amount=-3 +kerning first=354 second=111 amount=-3 +kerning first=354 second=325 amount=-1 +kerning first=202 second=327 amount=-2 +kerning first=282 second=377 amount=-1 +kerning first=269 second=351 amount=-2 +kerning first=220 second=210 amount=-1 +kerning first=337 second=326 amount=-1 +kerning first=278 second=352 amount=-2 +kerning first=377 second=351 amount=-2 +kerning first=302 second=291 amount=-3 +kerning first=210 second=377 amount=-2 +kerning first=85 second=367 amount=-1 +kerning first=88 second=211 amount=-3 +kerning first=119 second=235 amount=-3 +kerning first=381 second=261 amount=-1 +kerning first=370 second=250 amount=-1 +kerning first=346 second=327 amount=-3 +kerning first=119 second=365 amount=-1 +kerning first=1027 second=1092 amount=-3 +kerning first=46 second=171 amount=-3 +kerning first=336 second=112 amount=-1 +kerning first=224 second=235 amount=-1 +kerning first=1072 second=1090 amount=-1 +kerning first=1063 second=1092 amount=-1 +kerning first=82 second=171 amount=-4 +kerning first=65 second=86 amount=-6 +kerning first=260 second=235 amount=-1 +kerning first=1099 second=1092 amount=-1 +kerning first=118 second=171 amount=-4 +kerning first=264 second=112 amount=-3 +kerning first=198 second=302 amount=-2 +kerning first=296 second=235 amount=-2 +kerning first=196 second=287 amount=-3 +kerning first=226 second=250 amount=-1 +kerning first=278 second=86 amount=-1 +kerning first=368 second=235 amount=-2 +kerning first=268 second=287 amount=-3 +kerning first=298 second=250 amount=-2 +kerning first=1074 second=1103 amount=-2 +kerning first=232 second=287 amount=-3 +kerning first=345 second=261 amount=-1 +kerning first=87 second=112 amount=-2 +kerning first=262 second=250 amount=-2 +kerning first=65 second=219 amount=-3 +kerning first=260 second=237 amount=-1 +kerning first=89 second=275 amount=-3 +kerning first=269 second=353 amount=-2 +kerning first=331 second=171 amount=-3 +kerning first=1072 second=1091 amount=-1 +kerning first=224 second=237 amount=-1 +kerning first=274 second=103 amount=-3 +kerning first=304 second=287 amount=-3 +kerning first=255 second=113 amount=-3 +kerning first=305 second=353 amount=-1 +kerning first=367 second=171 amount=-2 +kerning first=194 second=311 amount=-2 +kerning first=219 second=113 amount=-2 +kerning first=121 second=250 amount=-1 +kerning first=119 second=237 amount=-2 +kerning first=376 second=287 amount=-4 +kerning first=377 second=353 amount=-2 +kerning first=85 second=250 amount=-1 +kerning first=370 second=365 amount=-1 +kerning first=83 second=237 amount=-3 +kerning first=307 second=100 amount=-1 +kerning first=298 second=365 amount=-2 +kerning first=363 second=113 amount=-1 +kerning first=197 second=353 amount=-2 +kerning first=200 second=197 amount=-2 +kerning first=259 second=171 amount=-2 +kerning first=379 second=100 amount=-1 +kerning first=201 second=378 amount=-2 +kerning first=262 second=365 amount=-2 +kerning first=199 second=366 amount=-2 +kerning first=327 second=113 amount=-2 +kerning first=233 second=353 amount=-2 +kerning first=295 second=171 amount=-3 +kerning first=226 second=365 amount=-1 +kerning first=350 second=352 amount=-1 +kerning first=1031 second=1117 amount=-1 +kerning first=272 second=197 amount=-4 +kerning first=332 second=87 amount=-2 +kerning first=258 second=45 amount=-4 +kerning first=199 second=100 amount=-2 +kerning first=244 second=249 amount=-1 +kerning first=235 second=100 amount=-1 +kerning first=260 second=87 amount=-6 +kerning first=103 second=249 amount=-1 +kerning first=87 second=262 amount=-3 +kerning first=374 second=275 amount=-3 +kerning first=1067 second=1117 amount=-1 +kerning first=1119 second=1104 amount=-1 +kerning first=313 second=288 amount=-1 +kerning first=375 second=223 amount=-1 +kerning first=266 second=275 amount=-2 +kerning first=45 second=74 amount=-4 +kerning first=352 second=249 amount=-1 +kerning first=192 second=262 amount=-3 +kerning first=339 second=223 amount=-1 +kerning first=78 second=113 amount=-2 +kerning first=81 second=74 amount=-2 +kerning first=8222 second=257 amount=-2 +kerning first=381 second=378 amount=-3 +kerning first=194 second=275 amount=-1 +kerning first=83 second=87 amount=-3 +kerning first=280 second=249 amount=-2 +kerning first=205 second=288 amount=-2 +kerning first=264 second=262 amount=-3 +kerning first=229 second=283 amount=-1 +kerning first=230 second=275 amount=-1 +kerning first=1070 second=1078 amount=-1 +kerning first=316 second=249 amount=-2 +kerning first=1036 second=1091 amount=-2 +kerning first=364 second=262 amount=-1 +kerning first=200 second=314 amount=-1 +kerning first=222 second=217 amount=-1 +kerning first=264 second=288 amount=-3 +kerning first=258 second=217 amount=-3 +kerning first=89 second=243 amount=-3 +kerning first=187 second=196 amount=-4 +kerning first=281 second=101 amount=-1 +kerning first=76 second=87 amount=-3 +kerning first=236 second=314 amount=-2 +kerning first=194 second=243 amount=-1 +kerning first=344 second=314 amount=-3 +kerning first=379 second=80 amount=-1 +kerning first=325 second=333 amount=-2 +kerning first=261 second=113 amount=-1 +kerning first=97 second=269 amount=-1 +kerning first=289 second=333 amount=-2 +kerning first=87 second=288 amount=-3 +kerning first=225 second=113 amount=-1 +kerning first=1053 second=1072 amount=-1 +kerning first=380 second=314 amount=-2 +kerning first=192 second=288 amount=-3 +kerning first=120 second=113 amount=-2 +kerning first=66 second=366 amount=-3 +kerning first=245 second=307 amount=-1 +kerning first=310 second=269 amount=-2 +kerning first=108 second=224 amount=-2 +kerning first=8216 second=121 amount=-1 +kerning first=354 second=281 amount=-3 +kerning first=281 second=307 amount=-2 +kerning first=382 second=255 amount=-2 +kerning first=72 second=224 amount=-2 +kerning first=204 second=210 amount=-2 +kerning first=346 second=255 amount=-2 +kerning first=213 second=224 amount=-1 +kerning first=313 second=198 amount=-2 +kerning first=353 second=307 amount=-2 +kerning first=346 second=269 amount=-1 +kerning first=220 second=262 amount=-1 +kerning first=335 second=314 amount=-2 +kerning first=230 second=243 amount=-1 +kerning first=256 second=262 amount=-3 +kerning first=379 second=326 amount=-1 +kerning first=81 second=217 amount=-1 +kerning first=351 second=120 amount=-3 +kerning first=225 second=99 amount=-1 +kerning first=336 second=274 amount=-2 +kerning first=230 second=229 amount=-2 +kerning first=85 second=101 amount=-2 +kerning first=222 second=203 amount=-2 +kerning first=89 second=229 amount=-5 +kerning first=121 second=101 amount=-3 +kerning first=264 second=274 amount=-3 +kerning first=261 second=99 amount=-1 +kerning first=323 second=118 amount=-2 +kerning first=338 second=229 amount=-1 +kerning first=369 second=99 amount=-1 +kerning first=226 second=101 amount=-1 +kerning first=290 second=75 amount=-1 +kerning first=1056 second=1076 amount=-1 +kerning first=364 second=248 amount=-2 +kerning first=287 second=118 amount=-1 +kerning first=243 second=120 amount=-3 +kerning first=374 second=229 amount=-5 +kerning first=262 second=101 amount=-2 +kerning first=45 second=203 amount=-5 +kerning first=256 second=248 amount=-1 +kerning first=279 second=120 amount=-2 +kerning first=266 second=229 amount=-2 +kerning first=298 second=101 amount=-2 +kerning first=81 second=203 amount=-2 +kerning first=66 second=284 amount=-3 +kerning first=315 second=120 amount=-1 +kerning first=302 second=229 amount=-2 +kerning first=339 second=121 amount=-2 +kerning first=200 second=68 amount=-2 +kerning first=370 second=101 amount=-2 +kerning first=199 second=80 amount=-3 +kerning first=110 second=118 amount=-3 +kerning first=328 second=8220 amount=-4 +kerning first=280 second=316 amount=-1 +kerning first=354 second=267 amount=-3 +kerning first=251 second=118 amount=-3 +kerning first=8220 second=85 amount=-1 +kerning first=66 second=106 amount=-3 +kerning first=194 second=242 amount=-1 +kerning first=76 second=73 amount=-2 +kerning first=256 second=8220 amount=-5 +kerning first=346 second=241 amount=-1 +kerning first=315 second=106 amount=-2 +kerning first=351 second=106 amount=-1 +kerning first=74 second=118 amount=-1 +kerning first=120 second=99 amount=-2 +kerning first=115 second=8220 amount=-2 +kerning first=243 second=106 amount=-2 +kerning first=307 second=116 amount=-1 +kerning first=84 second=99 amount=-3 +kerning first=382 second=241 amount=-2 +kerning first=79 second=8220 amount=-2 +kerning first=279 second=106 amount=-2 +kerning first=253 second=361 amount=-1 +kerning first=105 second=267 amount=-1 +kerning first=233 second=111 amount=-1 +kerning first=316 second=363 amount=-2 +kerning first=269 second=111 amount=-1 +kerning first=325 second=361 amount=-2 +kerning first=289 second=361 amount=-1 +kerning first=192 second=316 amount=-2 +kerning first=228 second=316 amount=-1 +kerning first=199 second=66 amount=-3 +kerning first=1055 second=1116 amount=-1 +kerning first=264 second=316 amount=-1 +kerning first=369 second=248 amount=-1 +kerning first=67 second=368 amount=-2 +kerning first=313 second=212 amount=-1 +kerning first=246 second=8220 amount=-2 +kerning first=374 second=257 amount=-5 +kerning first=278 second=350 amount=-2 +kerning first=205 second=212 amount=-2 +kerning first=197 second=111 amount=-1 +kerning first=208 second=368 amount=-1 +kerning first=287 second=104 amount=-2 +kerning first=115 second=44 amount=-2 +kerning first=251 second=104 amount=-2 +kerning first=69 second=323 amount=-2 +kerning first=200 second=82 amount=-2 +kerning first=220 second=44 amount=-5 +kerning first=1030 second=1057 amount=-1 +kerning first=76 second=361 amount=-2 +kerning first=377 second=111 amount=-1 +kerning first=352 second=368 amount=-3 +kerning first=8216 second=339 amount=-3 +kerning first=311 second=228 amount=-2 +kerning first=79 second=44 amount=-3 +kerning first=290 second=89 amount=-3 +kerning first=112 second=361 amount=-1 +kerning first=210 second=323 amount=-2 +kerning first=379 second=66 amount=-1 +kerning first=87 second=274 amount=-1 +kerning first=1102 second=1113 amount=-2 +kerning first=324 second=171 amount=-3 +kerning first=356 second=250 amount=-2 +kerning first=199 second=326 amount=-1 +kerning first=187 second=205 amount=-5 +kerning first=80 second=278 amount=-1 +kerning first=282 second=323 amount=-2 +kerning first=1102 second=1099 amount=-1 +kerning first=377 second=97 amount=-1 +kerning first=235 second=326 amount=-2 +kerning first=325 second=347 amount=-2 +kerning first=221 second=278 amount=-1 +kerning first=74 second=378 amount=-1 +kerning first=87 second=302 amount=-1 +kerning first=269 second=97 amount=-2 +kerning first=289 second=347 amount=-3 +kerning first=105 second=281 amount=-1 +kerning first=354 second=323 amount=-1 +kerning first=84 second=362 amount=-1 +kerning first=305 second=97 amount=-1 +kerning first=307 second=326 amount=-2 +kerning first=253 second=347 amount=-3 +kerning first=233 second=371 amount=-2 +kerning first=217 second=347 amount=-2 +kerning first=82 second=231 amount=-3 +kerning first=269 second=371 amount=-2 +kerning first=82 second=233 amount=-3 +kerning first=8216 second=353 amount=-2 +kerning first=284 second=250 amount=-1 +kerning first=305 second=371 amount=-1 +kerning first=112 second=347 amount=-2 +kerning first=248 second=250 amount=-1 +kerning first=1030 second=1099 amount=-1 +kerning first=76 second=347 amount=-1 +kerning first=323 second=378 amount=-1 +kerning first=302 second=257 amount=-2 +kerning first=254 second=103 amount=-2 +kerning first=287 second=378 amount=-3 +kerning first=338 second=257 amount=-1 +kerning first=259 second=233 amount=-1 +kerning first=230 second=271 amount=-1 +kerning first=379 second=354 amount=-2 +kerning first=107 second=250 amount=-1 +kerning first=230 second=257 amount=-2 +kerning first=253 second=333 amount=-3 +kerning first=367 second=233 amount=-1 +kerning first=71 second=250 amount=-1 +kerning first=100 second=226 amount=-1 +kerning first=266 second=257 amount=-2 +kerning first=217 second=333 amount=-2 +kerning first=1102 second=1085 amount=-1 +kerning first=1048 second=1092 amount=-1 +kerning first=336 second=302 amount=-2 +kerning first=361 second=45 amount=-2 +kerning first=77 second=103 amount=-3 +kerning first=187 second=219 amount=-4 +kerning first=1084 second=1092 amount=-1 +kerning first=356 second=264 amount=-3 +kerning first=205 second=226 amount=-2 +kerning first=325 second=45 amount=-4 +kerning first=1030 second=1085 amount=-1 +kerning first=251 second=378 amount=-2 +kerning first=264 second=302 amount=-3 +kerning first=241 second=226 amount=-1 +kerning first=82 second=219 amount=-3 +kerning first=277 second=226 amount=-2 +kerning first=89 second=257 amount=-5 +kerning first=200 second=110 amount=-1 +kerning first=113 second=363 amount=-2 +kerning first=8216 second=196 amount=-8 +kerning first=212 second=194 amount=-4 +kerning first=79 second=220 amount=-1 +kerning first=70 second=65 amount=-3 +kerning first=236 second=110 amount=-2 +kerning first=1063 second=1114 amount=-1 +kerning first=277 second=240 amount=-1 +kerning first=356 second=212 amount=-3 +kerning first=71 second=194 amount=-3 +kerning first=218 second=363 amount=-1 +kerning first=1059 second=1089 amount=-4 +kerning first=254 second=363 amount=-1 +kerning first=8220 second=221 amount=-1 +kerning first=205 second=240 amount=-2 +kerning first=315 second=310 amount=-2 +kerning first=1114 second=1078 amount=-2 +kerning first=211 second=65 amount=-4 +kerning first=290 second=363 amount=-1 +kerning first=303 second=259 amount=-2 +kerning first=115 second=318 amount=-2 +kerning first=256 second=220 amount=-3 +kerning first=8217 second=225 amount=-6 +kerning first=379 second=284 amount=-1 +kerning first=380 second=110 amount=-2 +kerning first=326 second=363 amount=-1 +kerning first=267 second=259 amount=-2 +kerning first=77 second=117 amount=-2 +kerning first=362 second=363 amount=-1 +kerning first=375 second=259 amount=-3 +kerning first=197 second=214 amount=-3 +kerning first=8250 second=241 amount=-2 +kerning first=339 second=259 amount=-2 +kerning first=256 second=318 amount=-2 +kerning first=354 second=77 amount=-1 +kerning first=264 second=330 amount=-3 +kerning first=250 second=116 amount=-1 +kerning first=90 second=259 amount=-1 +kerning first=328 second=318 amount=-1 +kerning first=282 second=77 amount=-2 +kerning first=370 second=375 amount=-1 +kerning first=66 second=324 amount=-3 +kerning first=268 second=369 amount=-2 +kerning first=231 second=259 amount=-2 +kerning first=232 second=369 amount=-2 +kerning first=356 second=194 amount=-6 +kerning first=100 second=240 amount=-1 +kerning first=1025 second=1030 amount=-1 +kerning first=336 second=330 amount=-2 +kerning first=284 second=194 amount=-3 +kerning first=100 second=254 amount=-1 +kerning first=315 second=324 amount=-1 +kerning first=258 second=374 amount=-6 +kerning first=8250 second=255 amount=-3 +kerning first=85 second=375 amount=-1 +kerning first=79 second=304 amount=-2 +kerning first=279 second=324 amount=-2 +kerning first=222 second=374 amount=-2 +kerning first=8220 second=235 amount=-3 +kerning first=303 second=273 amount=-3 +kerning first=365 second=335 amount=-1 +kerning first=241 second=254 amount=-2 +kerning first=351 second=324 amount=-2 +kerning first=209 second=279 amount=-2 +kerning first=1059 second=1103 amount=-5 +kerning first=381 second=253 amount=-3 +kerning first=298 second=375 amount=-2 +kerning first=87 second=330 amount=-1 +kerning first=231 second=273 amount=-1 +kerning first=81 second=374 amount=-2 +kerning first=218 second=377 amount=-1 +kerning first=262 second=375 amount=-1 +kerning first=102 second=324 amount=-1 +kerning first=336 second=344 amount=-2 +kerning first=304 second=369 amount=-2 +kerning first=226 second=375 amount=-3 +kerning first=243 second=324 amount=-1 +kerning first=376 second=369 amount=-2 +kerning first=256 second=234 amount=-1 +kerning first=199 second=284 amount=-3 +kerning first=1061 second=1058 amount=-3 +kerning first=362 second=377 amount=-1 +kerning first=88 second=332 amount=-3 +kerning first=380 second=171 amount=-3 +kerning first=66 second=310 amount=-4 +kerning first=199 second=298 amount=-3 +kerning first=232 second=355 amount=-1 +kerning first=1076 second=1108 amount=-1 +kerning first=209 second=45 amount=-4 +kerning first=262 second=367 amount=-2 +kerning first=193 second=332 amount=-3 +kerning first=196 second=355 amount=-1 +kerning first=1055 second=1074 amount=-1 +kerning first=264 second=344 amount=-3 +kerning first=90 second=287 amount=-3 +kerning first=110 second=250 amount=-1 +kerning first=1027 second=1100 amount=-2 +kerning first=281 second=279 amount=-1 +kerning first=376 second=355 amount=-1 +kerning first=1063 second=1100 amount=-1 +kerning first=1051 second=1077 amount=-1 +kerning first=195 second=287 amount=-3 +kerning first=379 second=298 amount=-1 +kerning first=220 second=234 amount=-2 +kerning first=87 second=344 amount=-1 +kerning first=1087 second=1077 amount=-1 +kerning first=77 second=363 amount=-2 +kerning first=316 second=108 amount=-2 +kerning first=203 second=313 amount=-2 +kerning first=267 second=287 amount=-3 +kerning first=195 second=8217 amount=-5 +kerning first=280 second=108 amount=-1 +kerning first=220 second=290 amount=-1 +kerning first=362 second=335 amount=-2 +kerning first=231 second=287 amount=-3 +kerning first=231 second=8217 amount=-2 +kerning first=256 second=290 amount=-3 +kerning first=339 second=287 amount=-3 +kerning first=267 second=8217 amount=-2 +kerning first=352 second=108 amount=-2 +kerning first=303 second=287 amount=-1 +kerning first=351 second=380 amount=-2 +kerning first=282 second=105 amount=-1 +kerning first=66 second=338 amount=-3 +kerning first=67 second=197 amount=-3 +kerning first=218 second=335 amount=-2 +kerning first=375 second=287 amount=-3 +kerning first=314 second=242 amount=-1 +kerning first=210 second=105 amount=-1 +kerning first=246 second=105 amount=-1 +kerning first=83 second=315 amount=-3 +kerning first=208 second=197 amount=-4 +kerning first=207 second=380 amount=-1 +kerning first=105 second=105 amount=-1 +kerning first=1055 second=1060 amount=-1 +kerning first=220 second=248 amount=-2 +kerning first=1059 second=1117 amount=-4 +kerning first=350 second=242 amount=-1 +kerning first=243 second=380 amount=-2 +kerning first=280 second=197 amount=-2 +kerning first=279 second=380 amount=-2 +kerning first=201 second=225 amount=-1 +kerning first=77 second=335 amount=-2 +kerning first=339 second=231 amount=-1 +kerning first=377 second=228 amount=-1 +kerning first=315 second=380 amount=-3 +kerning first=69 second=105 amount=-1 +kerning first=113 second=335 amount=-1 +kerning first=1040 second=1038 amount=-4 +kerning first=375 second=231 amount=-3 +kerning first=352 second=197 amount=-4 +kerning first=199 second=270 amount=-3 +kerning first=339 second=8217 amount=-2 +kerning first=305 second=228 amount=-1 +kerning first=103 second=108 amount=-3 +kerning first=66 second=380 amount=-4 +kerning first=332 second=315 amount=-2 +kerning first=219 second=119 amount=-2 +kerning first=269 second=228 amount=-2 +kerning first=244 second=108 amount=-2 +kerning first=102 second=380 amount=-1 +kerning first=80 second=74 amount=-3 +kerning first=255 second=119 amount=-1 +kerning first=233 second=228 amount=-2 +kerning first=291 second=119 amount=-1 +kerning first=365 second=46 amount=-2 +kerning first=244 second=122 amount=-2 +kerning first=90 second=231 amount=-1 +kerning first=109 second=102 amount=-1 +kerning first=66 second=352 amount=-4 +kerning first=221 second=74 amount=-4 +kerning first=208 second=122 amount=-2 +kerning first=363 second=119 amount=-3 +kerning first=1006 second=1007 amount=-2 +kerning first=366 second=346 amount=-3 +kerning first=103 second=122 amount=-3 +kerning first=221 second=46 amount=-5 +kerning first=210 second=77 amount=-2 +kerning first=267 second=231 amount=-1 +kerning first=104 second=307 amount=-1 +kerning first=90 second=204 amount=-1 +kerning first=352 second=122 amount=-2 +kerning first=303 second=231 amount=-3 +kerning first=199 second=256 amount=-3 +kerning first=345 second=225 amount=-1 +kerning first=316 second=122 amount=-1 +kerning first=195 second=231 amount=-1 +kerning first=69 second=77 amount=-2 +kerning first=315 second=352 amount=-1 +kerning first=1101 second=1097 amount=-1 +kerning first=381 second=225 amount=-1 +kerning first=280 second=122 amount=-2 +kerning first=84 second=344 amount=-1 +kerning first=75 second=350 amount=-2 +kerning first=267 second=245 amount=-1 +kerning first=80 second=46 amount=-4 +kerning first=379 second=256 amount=-1 +kerning first=231 second=245 amount=-1 +kerning first=315 second=366 amount=-3 +kerning first=195 second=245 amount=-1 +kerning first=45 second=331 amount=-2 +kerning first=205 second=367 amount=-2 +kerning first=266 second=45 amount=-4 +kerning first=8250 second=230 amount=-1 +kerning first=201 second=211 amount=-1 +kerning first=250 second=102 amount=-1 +kerning first=381 second=211 amount=-1 +kerning first=67 second=122 amount=-2 +kerning first=286 second=102 amount=-2 +kerning first=375 second=245 amount=-3 +kerning first=1063 second=1086 amount=-1 +kerning first=8250 second=227 amount=-1 +kerning first=8220 second=193 amount=-8 +kerning first=303 second=245 amount=-3 +kerning first=199 second=248 amount=-2 +kerning first=221 second=112 amount=-2 +kerning first=283 second=107 amount=-2 +kerning first=76 second=8221 amount=-4 +kerning first=193 second=171 amount=-4 +kerning first=258 second=86 amount=-6 +kerning first=116 second=112 amount=-1 +kerning first=229 second=171 amount=-2 +kerning first=222 second=86 amount=-2 +kerning first=8220 second=368 amount=-1 +kerning first=106 second=107 amount=-1 +kerning first=112 second=8221 amount=-2 +kerning first=347 second=105 amount=-2 +kerning first=1056 second=1038 amount=-1 +kerning first=88 second=171 amount=-4 +kerning first=361 second=8221 amount=-3 +kerning first=275 second=105 amount=-2 +kerning first=1090 second=1072 amount=-1 +kerning first=316 second=235 amount=-1 +kerning first=75 second=352 amount=-2 +kerning first=8222 second=87 amount=-6 +kerning first=304 second=67 amount=-2 +kerning first=317 second=209 amount=-2 +kerning first=352 second=235 amount=-1 +kerning first=268 second=67 amount=-3 +kerning first=203 second=105 amount=-1 +kerning first=203 second=81 amount=-1 +kerning first=267 second=45 amount=-2 +kerning first=226 second=227 amount=-1 +kerning first=229 second=100 amount=-1 +kerning first=282 second=85 amount=-2 +kerning first=196 second=67 amount=-3 +kerning first=98 second=105 amount=-1 +kerning first=1098 second=1098 amount=-1 +kerning first=1052 second=1117 amount=-1 +kerning first=214 second=296 amount=-2 +kerning first=1062 second=1098 amount=-1 +kerning first=369 second=375 amount=-3 +kerning first=111 second=251 amount=-1 +kerning first=81 second=86 amount=-2 +kerning first=370 second=228 amount=-3 +kerning first=75 second=251 amount=-3 +kerning first=45 second=86 amount=-4 +kerning first=259 second=275 amount=-1 +kerning first=99 second=353 amount=-2 +kerning first=1100 second=1097 amount=-1 +kerning first=369 second=122 amount=-2 +kerning first=1036 second=1079 amount=-1 +kerning first=368 second=249 amount=-1 +kerning first=88 second=100 amount=-2 +kerning first=353 second=46 amount=-2 +kerning first=1072 second=1079 amount=-1 +kerning first=204 second=353 amount=-2 +kerning first=288 second=251 amount=-1 +kerning first=193 second=100 amount=-1 +kerning first=86 second=206 amount=-1 +kerning first=220 second=350 amount=-3 +kerning first=1080 second=1105 amount=-1 +kerning first=203 second=379 amount=-1 +kerning first=118 second=275 amount=-3 +kerning first=370 second=248 amount=-2 +kerning first=262 second=204 amount=-3 +kerning first=73 second=334 amount=-2 +kerning first=45 second=311 amount=-1 +kerning first=376 second=67 amount=-3 +kerning first=1044 second=1105 amount=-1 +kerning first=334 second=204 amount=-2 +kerning first=354 second=365 amount=-2 +kerning first=378 second=230 amount=-1 +kerning first=111 second=223 amount=-1 +kerning first=67 second=211 amount=-3 +kerning first=218 second=237 amount=-2 +kerning first=83 second=249 amount=-1 +kerning first=8217 second=212 amount=-2 +kerning first=68 second=304 amount=-2 +kerning first=313 second=268 amount=-1 +kerning first=350 second=277 amount=-1 +kerning first=234 second=230 amount=-2 +kerning first=224 second=249 amount=-1 +kerning first=204 second=83 amount=-2 +kerning first=187 second=307 amount=-1 +kerning first=260 second=249 amount=-3 +kerning first=280 second=211 amount=-1 +kerning first=119 second=249 amount=-1 +kerning first=205 second=268 amount=-2 +kerning first=367 second=275 amount=-1 +kerning first=198 second=230 amount=-1 +kerning first=1025 second=1055 amount=-1 +kerning first=350 second=256 amount=-4 +kerning first=288 second=289 amount=-3 +kerning first=86 second=244 amount=-3 +kerning first=381 second=187 amount=-1 +kerning first=199 second=106 amount=-1 +kerning first=117 second=114 amount=-1 +kerning first=122 second=244 amount=-1 +kerning first=203 second=109 amount=-1 +kerning first=352 second=374 amount=-3 +kerning first=211 second=192 amount=-4 +kerning first=278 second=284 amount=-1 +kerning first=45 second=114 amount=-2 +kerning first=227 second=244 amount=-1 +kerning first=1105 second=1084 amount=-1 +kerning first=80 second=344 amount=-1 +kerning first=263 second=244 amount=-1 +kerning first=317 second=237 amount=-2 +kerning first=206 second=284 amount=-2 +kerning first=88 second=199 amount=-3 +kerning first=370 second=232 amount=-2 +kerning first=283 second=339 amount=-1 +kerning first=70 second=192 amount=-3 +kerning first=281 second=237 amount=-2 +kerning first=8250 second=311 amount=-1 +kerning first=245 second=237 amount=-1 +kerning first=193 second=199 amount=-3 +kerning first=371 second=244 amount=-3 +kerning first=115 second=114 amount=-1 +kerning first=69 second=89 amount=-1 +kerning first=249 second=351 amount=-2 +kerning first=98 second=109 amount=-1 +kerning first=262 second=232 amount=-2 +kerning first=116 second=116 amount=-1 +kerning first=226 second=232 amount=-1 +kerning first=8222 second=361 amount=-1 +kerning first=8217 second=264 amount=-2 +kerning first=368 second=277 amount=-2 +kerning first=104 second=237 amount=-1 +kerning first=221 second=116 amount=-1 +kerning first=203 second=365 amount=-2 +kerning first=68 second=237 amount=-1 +kerning first=350 second=279 amount=-1 +kerning first=298 second=232 amount=-2 +kerning first=111 second=289 amount=-2 +kerning first=198 second=282 amount=-2 +kerning first=193 second=346 amount=-3 +kerning first=260 second=277 amount=-1 +kerning first=97 second=305 amount=-1 +kerning first=219 second=194 amount=-4 +kerning first=216 second=289 amount=-1 +kerning first=317 second=110 amount=-1 +kerning first=328 second=8217 amount=-4 +kerning first=1047 second=1034 amount=-2 +kerning first=121 second=232 amount=-3 +kerning first=296 second=277 amount=-2 +kerning first=81 second=350 amount=-1 +kerning first=83 second=277 amount=-1 +kerning first=268 second=327 amount=-3 +kerning first=203 second=351 amount=-1 +kerning first=198 second=202 amount=-2 +kerning first=311 second=351 amount=-2 +kerning first=45 second=350 amount=-3 +kerning first=378 second=254 amount=-1 +kerning first=379 second=278 amount=-1 +kerning first=119 second=277 amount=-3 +kerning first=275 second=351 amount=-2 +kerning first=8217 second=117 amount=-1 +kerning first=258 second=350 amount=-3 +kerning first=376 second=327 amount=-1 +kerning first=70 second=79 amount=-1 +kerning first=1098 second=1102 amount=-1 +kerning first=355 second=367 amount=-1 +kerning first=99 second=121 amount=-2 +kerning first=1044 second=1095 amount=-3 +kerning first=198 second=254 amount=-1 +kerning first=119 second=305 amount=-2 +kerning first=222 second=350 amount=-1 +kerning first=283 second=367 amount=-2 +kerning first=234 second=254 amount=-2 +kerning first=70 second=233 amount=-1 +kerning first=68 second=209 amount=-2 +kerning first=224 second=305 amount=-1 +kerning first=113 second=117 amount=-2 +kerning first=216 second=261 amount=-1 +kerning first=65 second=284 amount=-3 +kerning first=230 second=269 amount=-1 +kerning first=330 second=350 amount=-2 +kerning first=254 second=117 amount=-1 +kerning first=252 second=261 amount=-1 +kerning first=70 second=367 amount=-1 +kerning first=1051 second=1119 amount=-1 +kerning first=327 second=286 amount=-2 +kerning first=296 second=305 amount=-1 +kerning first=366 second=350 amount=-3 +kerning first=350 second=76 amount=-3 +kerning first=218 second=117 amount=-1 +kerning first=288 second=261 amount=-1 +kerning first=106 second=367 amount=-1 +kerning first=260 second=305 amount=-1 +kerning first=199 second=260 amount=-3 +kerning first=326 second=117 amount=-1 +kerning first=368 second=305 amount=-2 +kerning first=278 second=76 amount=-2 +kerning first=290 second=117 amount=-1 +kerning first=332 second=305 amount=-1 +kerning first=347 second=351 amount=-3 +kerning first=75 second=261 amount=-1 +kerning first=1052 second=1089 amount=-1 +kerning first=221 second=344 amount=-1 +kerning first=193 second=374 amount=-6 +kerning first=362 second=117 amount=-1 +kerning first=111 second=261 amount=-1 +kerning first=8216 second=115 amount=-2 +kerning first=112 second=291 amount=-2 +kerning first=1091 second=1101 amount=-1 +kerning first=274 second=311 amount=-1 +kerning first=84 second=317 amount=-1 +kerning first=286 second=362 amount=-1 +kerning first=76 second=291 amount=-3 +kerning first=198 second=286 amount=-1 +kerning first=105 second=337 amount=-1 +kerning first=8217 second=268 amount=-2 +kerning first=376 second=331 amount=-3 +kerning first=202 second=311 amount=-1 +kerning first=118 second=271 amount=-3 +kerning first=379 second=260 amount=-1 +kerning first=104 second=241 amount=-1 +kerning first=194 second=240 amount=-1 +kerning first=354 second=337 amount=-3 +kerning first=280 second=382 amount=-2 +kerning first=365 second=316 amount=-2 +kerning first=316 second=382 amount=-1 +kerning first=272 second=356 amount=-2 +kerning first=352 second=382 amount=-2 +kerning first=214 second=362 amount=-1 +kerning first=268 second=331 amount=-1 +kerning first=69 second=361 amount=-2 +kerning first=310 second=100 amount=-2 +kerning first=65 second=252 amount=-3 +kerning first=253 second=337 amount=-3 +kerning first=1077 second=1082 amount=-1 +kerning first=101 second=252 amount=-2 +kerning first=105 second=361 amount=-1 +kerning first=74 second=221 amount=-1 +kerning first=246 second=361 amount=-1 +kerning first=120 second=45 amount=-3 +kerning first=321 second=266 amount=-1 +kerning first=8218 second=121 amount=-1 +kerning first=1069 second=1056 amount=-1 +kerning first=382 second=311 amount=-2 +kerning first=1051 second=1087 amount=-1 +kerning first=282 second=361 amount=-2 +kerning first=116 second=316 amount=-1 +kerning first=70 second=103 amount=-3 +kerning first=350 second=252 amount=-1 +kerning first=310 second=227 amount=-1 +kerning first=332 second=45 amount=-1 +kerning first=1058 second=1101 amount=-1 +kerning first=374 second=201 amount=-1 +kerning first=208 second=207 amount=-2 +kerning first=274 second=227 amount=-1 +kerning first=66 second=78 amount=-4 +kerning first=336 second=70 amount=-2 +kerning first=254 second=226 amount=-1 +kerning first=338 second=201 amount=-2 +kerning first=280 second=207 amount=-2 +kerning first=202 second=227 amount=-1 +kerning first=328 second=44 amount=-1 +kerning first=206 second=252 amount=-1 +kerning first=1113 second=1078 amount=-2 +kerning first=224 second=121 amount=-3 +kerning first=284 second=8249 amount=-3 +kerning first=242 second=252 amount=-1 +kerning first=363 second=246 amount=-1 +kerning first=278 second=252 amount=-2 +kerning first=67 second=207 amount=-3 +kerning first=382 second=227 amount=-1 +kerning first=307 second=353 amount=-2 +kerning first=364 second=44 amount=-5 +kerning first=314 second=252 amount=-2 +kerning first=346 second=227 amount=-2 +kerning first=1043 second=1095 amount=-3 +kerning first=291 second=246 amount=-2 +kerning first=8222 second=378 amount=-3 +kerning first=231 second=109 amount=-2 +kerning first=89 second=201 amount=-1 +kerning first=200 second=356 amount=-1 +kerning first=1099 second=1104 amount=-1 +kerning first=80 second=84 amount=-1 +kerning first=103 second=382 amount=-3 +kerning first=255 second=246 amount=-3 +kerning first=198 second=226 amount=-1 +kerning first=355 second=103 amount=-2 +kerning first=65 second=336 amount=-3 +kerning first=222 second=90 amount=-2 +kerning first=1063 second=1104 amount=-1 +kerning first=1045 second=1107 amount=-1 +kerning first=219 second=246 amount=-2 +kerning first=234 second=226 amount=-2 +kerning first=80 second=267 amount=-1 +kerning first=1027 second=1104 amount=-3 +kerning first=208 second=382 amount=-2 +kerning first=283 second=103 amount=-3 +kerning first=325 second=291 amount=-3 +kerning first=244 second=382 amount=-2 +kerning first=224 second=45 amount=-2 +kerning first=206 second=336 amount=-2 +kerning first=289 second=291 amount=-2 +kerning first=78 second=246 amount=-2 +kerning first=1047 second=1062 amount=-2 +kerning first=211 second=103 amount=-1 +kerning first=352 second=207 amount=-3 +kerning first=97 second=227 amount=-1 +kerning first=253 second=291 amount=-3 +kerning first=347 second=109 amount=-2 +kerning first=378 second=226 amount=-1 +kerning first=278 second=336 amount=-1 +kerning first=217 second=291 amount=-4 +kerning first=106 second=103 amount=-3 +kerning first=67 second=382 amount=-2 +kerning first=1074 second=1116 amount=-1 +kerning first=259 second=243 amount=-1 +kerning first=102 second=314 amount=3 +kerning first=317 second=213 amount=-1 +kerning first=74 second=193 amount=-5 +kerning first=121 second=115 amount=-3 +kerning first=81 second=90 amount=-2 +kerning first=253 second=263 amount=-3 +kerning first=45 second=90 amount=-4 +kerning first=82 second=243 amount=-3 +kerning first=289 second=263 amount=-2 +kerning first=279 second=314 amount=-3 +kerning first=118 second=243 amount=-3 +kerning first=325 second=263 amount=-2 +kerning first=367 second=100 amount=-1 +kerning first=243 second=314 amount=-2 +kerning first=85 second=115 amount=-2 +kerning first=88 second=370 amount=-2 +kerning first=76 second=117 amount=-2 +kerning first=87 second=70 amount=-1 +kerning first=351 second=314 amount=-2 +kerning first=298 second=115 amount=-2 +kerning first=200 second=120 amount=-1 +kerning first=315 second=314 amount=-2 +kerning first=236 second=120 amount=-1 +kerning first=282 second=365 amount=-2 +kerning first=376 second=303 amount=-2 +kerning first=226 second=115 amount=-1 +kerning first=272 second=120 amount=-1 +kerning first=246 second=365 amount=-1 +kerning first=268 second=303 amount=-1 +kerning first=76 second=8249 amount=-1 +kerning first=209 second=269 amount=-2 +kerning first=262 second=115 amount=-2 +kerning first=217 second=263 amount=-2 +kerning first=315 second=78 amount=-2 +kerning first=304 second=303 amount=-1 +kerning first=264 second=70 amount=-3 +kerning first=198 second=198 amount=-2 +kerning first=367 second=243 amount=-1 +kerning first=210 second=45 amount=-1 +kerning first=8250 second=122 amount=-5 +kerning first=281 second=269 amount=-1 +kerning first=369 second=345 amount=-1 +kerning first=105 second=365 amount=-1 +kerning first=115 second=224 amount=-1 +kerning first=209 second=213 amount=-2 +kerning first=370 second=115 amount=-2 +kerning first=69 second=365 amount=-2 +kerning first=338 second=338 amount=-1 +kerning first=8217 second=240 amount=-3 +kerning first=220 second=224 amount=-3 +kerning first=330 second=118 amount=-2 +kerning first=97 second=255 amount=-3 +kerning first=192 second=98 amount=-2 +kerning first=339 second=101 amount=-1 +kerning first=1119 second=1086 amount=-1 +kerning first=328 second=224 amount=-1 +kerning first=8250 second=307 amount=-1 +kerning first=264 second=98 amount=-1 +kerning first=361 second=8249 amount=-2 +kerning first=211 second=75 amount=-2 +kerning first=366 second=118 amount=-2 +kerning first=228 second=98 amount=-1 +kerning first=8220 second=227 amount=-3 +kerning first=278 second=280 amount=-2 +kerning first=364 second=224 amount=-3 +kerning first=103 second=235 amount=-2 +kerning first=236 second=328 amount=-2 +kerning first=289 second=8249 amount=-3 +kerning first=252 second=244 amount=-1 +kerning first=196 second=303 amount=-1 +kerning first=117 second=118 amount=-3 +kerning first=200 second=328 amount=-1 +kerning first=325 second=8249 amount=-4 +kerning first=1090 second=1076 amount=-2 +kerning first=350 second=280 amount=-3 +kerning first=380 second=120 amount=-1 +kerning first=232 second=303 amount=-2 +kerning first=258 second=118 amount=-3 +kerning first=199 second=232 amount=-2 +kerning first=1054 second=1076 amount=-1 +kerning first=212 second=65 amount=-4 +kerning first=253 second=8249 amount=-4 +kerning first=197 second=101 amount=-1 +kerning first=1088 second=1093 amount=-1 +kerning first=83 second=73 amount=-3 +kerning first=380 second=328 amount=-2 +kerning first=233 second=101 amount=-1 +kerning first=353 second=241 amount=-2 +kerning first=1092 second=1118 amount=-1 +kerning first=269 second=101 amount=-1 +kerning first=8216 second=83 amount=-1 +kerning first=193 second=370 amount=-3 +kerning first=314 second=250 amount=-2 +kerning first=196 second=84 amount=-6 +kerning first=45 second=118 amount=-3 +kerning first=1058 second=1073 amount=-1 +kerning first=97 second=283 amount=-1 +kerning first=311 second=226 amount=-2 +kerning first=245 second=241 amount=-1 +kerning first=377 second=101 amount=-1 +kerning first=382 second=283 amount=-1 +kerning first=82 second=249 amount=-2 +kerning first=67 second=324 amount=-1 +kerning first=346 second=283 amount=-1 +kerning first=317 second=241 amount=-1 +kerning first=310 second=283 amount=-2 +kerning first=70 second=196 amount=-3 +kerning first=281 second=241 amount=-2 +kerning first=1059 second=1082 amount=-4 +kerning first=8250 second=223 amount=-2 +kerning first=339 second=241 amount=-2 +kerning first=213 second=8220 amount=-2 +kerning first=45 second=193 amount=-4 +kerning first=225 second=335 amount=-1 +kerning first=344 second=338 amount=-3 +kerning first=303 second=241 amount=-2 +kerning first=261 second=335 amount=-1 +kerning first=67 second=118 amount=-1 +kerning first=287 second=108 amount=-3 +kerning first=86 second=290 amount=-3 +kerning first=108 second=8220 amount=-3 +kerning first=8218 second=117 amount=-1 +kerning first=251 second=108 amount=-2 +kerning first=375 second=241 amount=-2 +kerning first=113 second=345 amount=-1 +kerning first=290 second=85 amount=-1 +kerning first=214 second=380 amount=-2 +kerning first=222 second=193 amount=-4 +kerning first=200 second=338 amount=-1 +kerning first=218 second=345 amount=-1 +kerning first=81 second=193 amount=-4 +kerning first=84 second=335 amount=-3 +kerning first=286 second=380 amount=-1 +kerning first=365 second=355 amount=-1 +kerning first=267 second=241 amount=-2 +kerning first=254 second=345 amount=-1 +kerning first=120 second=335 amount=-2 +kerning first=364 second=286 amount=-1 +kerning first=1101 second=1087 amount=-1 +kerning first=256 second=286 amount=-3 +kerning first=1069 second=1038 amount=-3 +kerning first=366 second=193 amount=-4 +kerning first=73 second=380 amount=-1 +kerning first=362 second=345 amount=-1 +kerning first=326 second=331 amount=-1 +kerning first=109 second=380 amount=-1 +kerning first=113 second=361 amount=-2 +kerning first=90 second=241 amount=-1 +kerning first=69 second=304 amount=-2 +kerning first=362 second=331 amount=-2 +kerning first=249 second=248 amount=-1 +kerning first=220 second=286 amount=-1 +kerning first=1058 second=1083 amount=-2 +kerning first=1073 second=1113 amount=-2 +kerning first=254 second=331 amount=-1 +kerning first=108 second=248 amount=-1 +kerning first=305 second=115 amount=-1 +kerning first=8216 second=97 amount=-3 +kerning first=272 second=78 amount=-2 +kerning first=76 second=323 amount=-2 +kerning first=110 second=108 amount=-1 +kerning first=346 second=231 amount=-1 +kerning first=233 second=115 amount=-2 +kerning first=218 second=331 amount=-2 +kerning first=72 second=248 amount=-2 +kerning first=382 second=231 amount=-1 +kerning first=269 second=115 amount=-2 +kerning first=74 second=122 amount=-1 +kerning first=267 second=255 amount=-2 +kerning first=272 second=352 amount=-1 +kerning first=231 second=255 amount=-2 +kerning first=113 second=331 amount=-2 +kerning first=382 second=245 amount=-1 +kerning first=195 second=255 amount=-3 +kerning first=344 second=352 amount=-3 +kerning first=97 second=307 amount=-1 +kerning first=115 second=252 amount=-1 +kerning first=310 second=245 amount=-2 +kerning first=332 second=73 amount=-2 +kerning first=251 second=122 amount=-2 +kerning first=90 second=255 amount=-3 +kerning first=264 second=298 amount=-3 +kerning first=97 second=231 amount=-1 +kerning first=76 second=77 amount=-2 +kerning first=362 second=71 amount=-1 +kerning first=87 second=278 amount=-1 +kerning first=110 second=122 amount=-1 +kerning first=222 second=207 amount=-2 +kerning first=97 second=245 amount=-1 +kerning first=243 second=328 amount=-1 +kerning first=364 second=252 amount=-1 +kerning first=89 second=233 amount=-3 +kerning first=98 second=8220 amount=-2 +kerning first=264 second=278 amount=-3 +kerning first=356 second=192 amount=-6 +kerning first=1058 second=1097 amount=-2 +kerning first=194 second=233 amount=-1 +kerning first=336 second=278 amount=-2 +kerning first=102 second=328 amount=-1 +kerning first=335 second=316 amount=-2 +kerning first=45 second=207 amount=-5 +kerning first=302 second=233 amount=-2 +kerning first=220 second=252 amount=-1 +kerning first=1025 second=1040 amount=-2 +kerning first=81 second=207 amount=-2 +kerning first=369 second=335 amount=-1 +kerning first=351 second=328 amount=-2 +kerning first=256 second=252 amount=-3 +kerning first=374 second=233 amount=-3 +kerning first=200 second=352 amount=-2 +kerning first=315 second=328 amount=-1 +kerning first=1065 second=1073 amount=-1 +kerning first=279 second=328 amount=-2 +kerning first=328 second=252 amount=-1 +kerning first=66 second=110 amount=-3 +kerning first=102 second=110 amount=-1 +kerning first=296 second=333 amount=-2 +kerning first=250 second=106 amount=-2 +kerning first=326 second=318 amount=-1 +kerning first=240 second=46 amount=-3 +kerning first=286 second=106 amount=-1 +kerning first=282 second=87 amount=-1 +kerning first=199 second=288 amount=-3 +kerning first=291 second=259 amount=-3 +kerning first=368 second=333 amount=-2 +kerning first=243 second=110 amount=-1 +kerning first=330 second=378 amount=-1 +kerning first=210 second=87 amount=-2 +kerning first=279 second=110 amount=-2 +kerning first=119 second=333 amount=-3 +kerning first=69 second=87 amount=-1 +kerning first=315 second=110 amount=-1 +kerning first=260 second=333 amount=-1 +kerning first=107 second=118 amount=-1 +kerning first=351 second=110 amount=-2 +kerning first=366 second=378 amount=-3 +kerning first=224 second=333 amount=-1 +kerning first=71 second=198 amount=-3 +kerning first=217 second=281 amount=-2 +kerning first=376 second=99 amount=-3 +kerning first=218 second=65 amount=-4 +kerning first=8220 second=225 amount=-3 +kerning first=253 second=281 amount=-3 +kerning first=1030 second=1081 amount=-1 +kerning first=382 second=307 amount=-1 +kerning first=1057 second=1033 amount=-1 +kerning first=1059 second=1099 amount=-4 +kerning first=8216 second=192 amount=-8 +kerning first=105 second=347 amount=-2 +kerning first=289 second=281 amount=-2 +kerning first=290 second=65 amount=-3 +kerning first=212 second=198 amount=-4 +kerning first=381 second=243 amount=-1 +kerning first=321 second=262 amount=-1 +kerning first=69 second=347 amount=-1 +kerning first=325 second=281 amount=-2 +kerning first=242 second=326 amount=-1 +kerning first=362 second=65 amount=-4 +kerning first=197 second=210 amount=-3 +kerning first=278 second=326 amount=-1 +kerning first=379 second=288 amount=-1 +kerning first=314 second=326 amount=-1 +kerning first=8250 second=237 amount=-1 +kerning first=350 second=326 amount=-1 +kerning first=230 second=249 amount=-2 +kerning first=105 second=351 amount=-2 +kerning first=214 second=120 amount=-1 +kerning first=250 second=120 amount=-2 +kerning first=199 second=274 amount=-3 +kerning first=282 second=261 amount=-1 +kerning first=87 second=80 amount=-1 +kerning first=291 second=291 amount=-2 +kerning first=315 second=68 amount=-2 +kerning first=282 second=73 amount=-2 +kerning first=201 second=229 amount=-1 +kerning first=232 second=99 amount=-1 +kerning first=284 second=198 amount=-3 +kerning first=379 second=274 amount=-1 +kerning first=220 second=346 amount=-3 +kerning first=84 second=377 amount=-3 +kerning first=109 second=120 amount=-1 +kerning first=354 second=73 amount=-1 +kerning first=84 second=255 amount=-3 +kerning first=304 second=99 amount=-2 +kerning first=356 second=198 amount=-6 +kerning first=268 second=99 amount=-2 +kerning first=116 second=365 amount=-1 +kerning first=287 second=273 amount=-2 +kerning first=289 second=267 amount=-2 +kerning first=316 second=118 amount=-3 +kerning first=232 second=113 amount=-1 +kerning first=325 second=267 amount=-2 +kerning first=336 second=80 amount=-2 +kerning first=219 second=235 amount=-2 +kerning first=280 second=118 amount=-1 +kerning first=80 second=263 amount=-1 +kerning first=66 second=68 amount=-4 +kerning first=196 second=113 amount=-1 +kerning first=210 second=73 amount=-2 +kerning first=217 second=267 amount=-2 +kerning first=1058 second=1077 amount=-1 +kerning first=253 second=267 amount=-3 +kerning first=352 second=118 amount=-3 +kerning first=1094 second=1077 amount=-1 +kerning first=376 second=113 amount=-3 +kerning first=214 second=106 amount=-1 +kerning first=103 second=118 amount=-1 +kerning first=321 second=8220 amount=-4 +kerning first=252 second=333 amount=-1 +kerning first=287 second=107 amount=-2 +kerning first=244 second=118 amount=-2 +kerning first=304 second=113 amount=-2 +kerning first=109 second=106 amount=-2 +kerning first=69 second=73 amount=-2 +kerning first=200 second=332 amount=-1 +kerning first=264 second=80 amount=-3 +kerning first=377 second=196 amount=-1 +kerning first=266 second=65 amount=-3 +kerning first=97 second=287 amount=-2 +kerning first=216 second=219 amount=-1 +kerning first=256 second=244 amount=-1 +kerning first=99 second=111 amount=-1 +kerning first=313 second=264 amount=-1 +kerning first=304 second=74 amount=-1 +kerning first=202 second=287 amount=-3 +kerning first=204 second=111 amount=-2 +kerning first=1073 second=1119 amount=-1 +kerning first=344 second=332 amount=-3 +kerning first=75 second=219 amount=-2 +kerning first=364 second=244 amount=-2 +kerning first=200 second=86 amount=-1 +kerning first=8217 second=83 amount=-3 +kerning first=77 second=339 amount=-2 +kerning first=108 second=242 amount=-1 +kerning first=274 second=287 amount=-3 +kerning first=263 second=234 amount=-1 +kerning first=258 second=199 amount=-3 +kerning first=81 second=364 amount=-1 +kerning first=113 second=339 amount=-1 +kerning first=205 second=264 amount=-2 +kerning first=224 second=8217 amount=-3 +kerning first=45 second=364 amount=-4 +kerning first=8222 second=291 amount=-1 +kerning first=346 second=287 amount=-3 +kerning first=260 second=8217 amount=-5 +kerning first=330 second=199 amount=-2 +kerning first=310 second=287 amount=-2 +kerning first=371 second=234 amount=-3 +kerning first=197 second=121 amount=-3 +kerning first=104 second=289 amount=-2 +kerning first=315 second=334 amount=-1 +kerning first=74 second=374 amount=-1 +kerning first=258 second=364 amount=-3 +kerning first=249 second=242 amount=-1 +kerning first=382 second=287 amount=-2 +kerning first=209 second=289 amount=-3 +kerning first=106 second=333 amount=-1 +kerning first=1105 second=1094 amount=-1 +kerning first=245 second=289 amount=-2 +kerning first=107 second=254 amount=-1 +kerning first=281 second=289 amount=-3 +kerning first=350 second=66 amount=-3 +kerning first=317 second=289 amount=-3 +kerning first=353 second=289 amount=-3 +kerning first=187 second=209 amount=-5 +kerning first=278 second=66 amount=-2 +kerning first=85 second=119 amount=-2 +kerning first=248 second=254 amount=-1 +kerning first=121 second=119 amount=-1 +kerning first=220 second=244 amount=-2 +kerning first=333 second=117 amount=-1 +kerning first=8220 second=231 amount=-3 +kerning first=78 second=8249 amount=-4 +kerning first=71 second=330 amount=-1 +kerning first=339 second=261 amount=-2 +kerning first=204 second=97 amount=-2 +kerning first=288 second=205 amount=-1 +kerning first=364 second=230 amount=-3 +kerning first=226 second=119 amount=-3 +kerning first=240 second=97 amount=-1 +kerning first=192 second=354 amount=-6 +kerning first=262 second=119 amount=-1 +kerning first=99 second=97 amount=-2 +kerning first=199 second=76 amount=-3 +kerning first=1058 second=1080 amount=-2 +kerning first=200 second=72 amount=-2 +kerning first=298 second=119 amount=-2 +kerning first=264 second=354 amount=-1 +kerning first=221 second=243 amount=-3 +kerning first=313 second=250 amount=-2 +kerning first=305 second=121 amount=-2 +kerning first=272 second=72 amount=-2 +kerning first=8216 second=103 amount=-4 +kerning first=220 second=230 amount=-3 +kerning first=370 second=119 amount=-2 +kerning first=336 second=354 amount=-2 +kerning first=277 second=250 amount=-2 +kerning first=245 second=8220 amount=-2 +kerning first=269 second=121 amount=-2 +kerning first=281 second=275 amount=-1 +kerning first=79 second=230 amount=-1 +kerning first=1061 second=1054 amount=-4 +kerning first=264 second=74 amount=-2 +kerning first=233 second=121 amount=-2 +kerning first=116 second=369 amount=-1 +kerning first=115 second=230 amount=-1 +kerning first=1025 second=1054 amount=-1 +kerning first=344 second=86 amount=-3 +kerning first=366 second=199 amount=-1 +kerning first=269 second=107 amount=-2 +kerning first=336 second=74 amount=-2 +kerning first=311 second=100 amount=-3 +kerning first=117 second=378 amount=-2 +kerning first=233 second=107 amount=-2 +kerning first=100 second=250 amount=-1 +kerning first=272 second=86 amount=-2 +kerning first=84 second=117 amount=-2 +kerning first=83 second=333 amount=-1 +kerning first=241 second=250 amount=-1 +kerning first=83 second=8217 amount=-2 +kerning first=222 second=378 amount=-2 +kerning first=356 second=240 amount=-3 +kerning first=205 second=250 amount=-2 +kerning first=8217 second=350 amount=-3 +kerning first=120 second=117 amount=-3 +kerning first=379 second=76 amount=-1 +kerning first=261 second=117 amount=-1 +kerning first=81 second=378 amount=-2 +kerning first=197 second=107 amount=-2 +kerning first=288 second=219 amount=-1 +kerning first=121 second=45 amount=-4 +kerning first=225 second=117 amount=-1 +kerning first=45 second=378 amount=-5 +kerning first=283 second=363 amount=-2 +kerning first=286 second=310 amount=-1 +kerning first=66 second=116 amount=-2 +kerning first=313 second=194 amount=-2 +kerning first=108 second=318 amount=-2 +kerning first=107 second=240 amount=-3 +kerning first=355 second=363 amount=-1 +kerning first=214 second=310 amount=-2 +kerning first=379 second=330 amount=-1 +kerning first=347 second=355 amount=-2 +kerning first=102 second=116 amount=-1 +kerning first=1030 second=1089 amount=-1 +kerning first=249 second=318 amount=-2 +kerning first=298 second=214 amount=-2 +kerning first=8249 second=221 amount=-3 +kerning first=86 second=220 amount=-1 +kerning first=87 second=298 amount=-1 +kerning first=1048 second=1088 amount=-1 +kerning first=321 second=318 amount=-2 +kerning first=370 second=214 amount=-1 +kerning first=296 second=259 amount=-2 +kerning first=218 second=71 amount=-1 +kerning first=85 second=214 amount=-1 +kerning first=351 second=116 amount=-2 +kerning first=305 second=375 amount=-2 +kerning first=323 second=122 amount=-1 +kerning first=98 second=369 amount=-1 +kerning first=368 second=259 amount=-3 +kerning first=269 second=375 amount=-2 +kerning first=283 second=231 amount=-1 +kerning first=287 second=122 amount=-3 +kerning first=332 second=259 amount=-1 +kerning first=233 second=375 amount=-2 +kerning first=77 second=71 amount=-2 +kerning first=369 second=337 amount=-1 +kerning first=119 second=259 amount=-3 +kerning first=243 second=116 amount=-1 +kerning first=80 second=296 amount=-1 +kerning first=83 second=259 amount=-2 +kerning first=199 second=330 amount=-3 +kerning first=224 second=259 amount=-1 +kerning first=1030 second=1075 amount=-1 +kerning first=321 second=304 amount=-2 +kerning first=279 second=116 amount=-1 +kerning first=377 second=375 amount=-3 +kerning first=334 second=228 amount=-1 +kerning first=213 second=304 amount=-2 +kerning first=82 second=251 amount=-2 +kerning first=347 second=369 amount=-1 +kerning first=374 second=253 amount=-3 +kerning first=8217 second=115 amount=-2 +kerning first=298 second=228 amount=-2 +kerning first=379 second=344 amount=-1 +kerning first=311 second=369 amount=-1 +kerning first=221 second=296 amount=-1 +kerning first=262 second=228 amount=-2 +kerning first=75 second=279 amount=-2 +kerning first=187 second=251 amount=-1 +kerning first=226 second=228 amount=-1 +kerning first=71 second=254 amount=-1 +kerning first=250 second=324 amount=-1 +kerning first=1039 second=1089 amount=-1 +kerning first=199 second=344 amount=-3 +kerning first=252 second=351 amount=-2 +kerning first=259 second=251 amount=-1 +kerning first=203 second=369 amount=-2 +kerning first=197 second=375 amount=-3 +kerning first=121 second=228 amount=-3 +kerning first=223 second=251 amount=-1 +kerning first=85 second=228 amount=-3 +kerning first=331 second=251 amount=-1 +kerning first=275 second=369 amount=-2 +kerning first=109 second=324 amount=-1 +kerning first=1043 second=1097 amount=-2 +kerning first=295 second=251 amount=-1 +kerning first=224 second=273 amount=-1 +kerning first=368 second=100 amount=-2 +kerning first=86 second=234 amount=-3 +kerning first=198 second=206 amount=-2 +kerning first=367 second=251 amount=-1 +kerning first=98 second=355 amount=-1 +kerning first=119 second=273 amount=-3 +kerning first=122 second=234 amount=-1 +kerning first=89 second=253 amount=-3 +kerning first=374 second=252 amount=-1 +kerning first=70 second=363 amount=-1 +kerning first=227 second=234 amount=-1 +kerning first=194 second=253 amount=-3 +kerning first=192 second=284 amount=-3 +kerning first=106 second=363 amount=-1 +kerning first=311 second=355 amount=-1 +kerning first=1047 second=1024 amount=-2 +kerning first=230 second=253 amount=-2 +kerning first=211 second=45 amount=-1 +kerning first=275 second=355 amount=-1 +kerning first=266 second=253 amount=-1 +kerning first=252 second=279 amount=-1 +kerning first=87 second=284 amount=-3 +kerning first=70 second=83 amount=-3 +kerning first=302 second=253 amount=-2 +kerning first=8220 second=382 amount=-1 +kerning first=1048 second=1074 amount=-1 +kerning first=242 second=318 amount=-2 +kerning first=45 second=370 amount=-4 +kerning first=296 second=263 amount=-2 +kerning first=98 second=365 amount=-1 +kerning first=75 second=213 amount=-3 +kerning first=211 second=83 amount=-1 +kerning first=376 second=313 amount=-1 +kerning first=80 second=310 amount=-1 +kerning first=314 second=318 amount=-2 +kerning first=198 second=268 amount=-1 +kerning first=268 second=313 amount=-3 +kerning first=368 second=263 amount=-2 +kerning first=81 second=370 amount=-1 +kerning first=90 second=315 amount=-1 +kerning first=83 second=263 amount=-1 +kerning first=356 second=216 amount=-3 +kerning first=222 second=370 amount=-1 +kerning first=8222 second=105 amount=-1 +kerning first=221 second=310 amount=-1 +kerning first=224 second=263 amount=-1 +kerning first=258 second=370 amount=-3 +kerning first=354 second=355 amount=-1 +kerning first=256 second=268 amount=-3 +kerning first=1087 second=1105 amount=-1 +kerning first=203 second=303 amount=-1 +kerning first=283 second=353 amount=-2 +kerning first=75 second=275 amount=-2 +kerning first=278 second=270 amount=-2 +kerning first=98 second=303 amount=-1 +kerning first=355 second=353 amount=-1 +kerning first=1051 second=1105 amount=-1 +kerning first=103 second=225 amount=-3 +kerning first=347 second=365 amount=-1 +kerning first=1062 second=1060 amount=-1 +kerning first=311 second=365 amount=-1 +kerning first=347 second=303 amount=-2 +kerning first=106 second=353 amount=-2 +kerning first=1039 second=1087 amount=-1 +kerning first=212 second=45 amount=-1 +kerning first=275 second=365 amount=-2 +kerning first=203 second=250 amount=-2 +kerning first=198 second=220 amount=-2 +kerning first=316 second=225 amount=-2 +kerning first=1105 second=1098 amount=-1 +kerning first=1025 second=1048 amount=-1 +kerning first=352 second=225 amount=-2 +kerning first=1051 second=1095 amount=-1 +kerning first=290 second=257 amount=-1 +kerning first=365 second=98 amount=-2 +kerning first=1037 second=1105 amount=-1 +kerning first=379 second=280 amount=-1 +kerning first=290 second=259 amount=-1 +kerning first=363 second=228 amount=-1 +kerning first=225 second=8249 amount=-2 +kerning first=362 second=74 amount=-3 +kerning first=350 second=270 amount=-3 +kerning first=327 second=228 amount=-2 +kerning first=116 second=98 amount=-1 +kerning first=8220 second=217 amount=-1 +kerning first=208 second=225 amount=-1 +kerning first=298 second=212 amount=-2 +kerning first=193 second=350 amount=-3 +kerning first=291 second=228 amount=-3 +kerning first=257 second=98 amount=-1 +kerning first=244 second=225 amount=-1 +kerning first=255 second=228 amount=-3 +kerning first=280 second=225 amount=-1 +kerning first=353 second=44 amount=-2 +kerning first=88 second=350 amount=-2 +kerning first=381 second=235 amount=-1 +kerning first=257 second=102 amount=-1 +kerning first=214 second=46 amount=-3 +kerning first=334 second=218 amount=-1 +kerning first=1105 second=1102 amount=-1 +kerning first=99 second=363 amount=-2 +kerning first=250 second=46 amount=-2 +kerning first=114 second=228 amount=-1 +kerning first=289 second=273 amount=-2 +kerning first=187 second=218 amount=-4 +kerning first=286 second=46 amount=-3 +kerning first=262 second=218 amount=-2 +kerning first=78 second=228 amount=-2 +kerning first=253 second=273 amount=-3 +kerning first=365 second=102 amount=-1 +kerning first=204 second=363 amount=-2 +kerning first=90 second=305 amount=-1 +kerning first=240 second=363 amount=-1 +kerning first=65 second=318 amount=-2 +kerning first=1062 second=1108 amount=-1 +kerning first=203 second=252 amount=-2 +kerning first=73 second=46 amount=-1 +kerning first=101 second=318 amount=-3 +kerning first=332 second=325 amount=-2 +kerning first=105 second=355 amount=-1 +kerning first=109 second=46 amount=-1 +kerning first=303 second=305 amount=-2 +kerning first=199 second=280 amount=-3 +kerning first=1057 second=1025 amount=-1 +kerning first=221 second=102 amount=-1 +kerning first=267 second=305 amount=-2 +kerning first=282 second=81 amount=-1 +kerning first=193 second=86 amount=-6 +kerning first=198 second=216 amount=-1 +kerning first=375 second=305 amount=-2 +kerning first=331 second=261 amount=-1 +kerning first=323 second=211 amount=-2 +kerning first=339 second=305 amount=-2 +kerning first=235 second=291 amount=-3 +kerning first=8250 second=287 amount=-3 +kerning first=367 second=261 amount=-1 +kerning first=1045 second=1117 amount=-1 +kerning first=286 second=112 amount=-1 +kerning first=84 second=67 amount=-3 +kerning first=88 second=86 amount=-2 +kerning first=250 second=112 amount=-2 +kerning first=253 second=230 amount=-3 +kerning first=8217 second=198 amount=-6 +kerning first=278 second=260 amount=-2 +kerning first=214 second=112 amount=-1 +kerning first=203 second=381 amount=-1 +kerning first=187 second=261 amount=-1 +kerning first=108 second=232 amount=-1 +kerning first=8222 second=103 amount=-1 +kerning first=350 second=260 amount=-4 +kerning first=223 second=261 amount=-1 +kerning first=192 second=240 amount=-1 +kerning first=78 second=119 amount=-2 +kerning first=259 second=261 amount=-1 +kerning first=1114 second=1076 amount=-2 +kerning first=295 second=261 amount=-1 +kerning first=216 second=209 amount=-2 +kerning first=344 second=171 amount=-4 +kerning first=84 second=327 amount=-1 +kerning first=283 second=121 amount=-2 +kerning first=377 second=204 amount=-1 +kerning first=376 second=105 amount=-2 +kerning first=268 second=105 amount=-1 +kerning first=277 second=254 amount=-2 +kerning first=246 second=331 amount=-1 +kerning first=330 second=100 amount=-2 +kerning first=69 second=81 amount=-1 +kerning first=304 second=105 amount=-1 +kerning first=200 second=171 amount=-2 +kerning first=313 second=254 amount=-2 +kerning first=366 second=100 amount=-2 +kerning first=196 second=105 amount=-1 +kerning first=236 second=171 amount=-3 +kerning first=288 second=209 amount=-1 +kerning first=232 second=105 amount=-2 +kerning first=272 second=171 amount=-1 +kerning first=227 second=230 amount=-1 +kerning first=231 second=249 amount=-2 +kerning first=200 second=346 amount=-2 +kerning first=263 second=230 amount=-2 +kerning first=267 second=249 amount=-2 +kerning first=86 second=282 amount=-1 +kerning first=122 second=230 amount=-1 +kerning first=66 second=334 amount=-3 +kerning first=268 second=379 amount=-2 +kerning first=258 second=100 amount=-1 +kerning first=195 second=249 amount=-3 +kerning first=70 second=353 amount=-2 +kerning first=375 second=249 amount=-1 +kerning first=344 second=346 amount=-3 +kerning first=86 second=230 amount=-5 +kerning first=353 second=223 amount=-1 +kerning first=252 second=275 amount=-1 +kerning first=1065 second=1079 amount=-1 +kerning first=303 second=249 amount=-1 +kerning first=272 second=346 amount=-1 +kerning first=68 second=289 amount=-1 +kerning first=1088 second=1103 amount=-2 +kerning first=207 second=334 amount=-2 +kerning first=376 second=379 amount=-3 +kerning first=1056 second=1072 amount=-1 +kerning first=117 second=100 amount=-1 +kerning first=245 second=223 amount=-1 +kerning first=99 second=107 amount=-2 +kerning first=302 second=305 amount=-1 +kerning first=231 second=113 amount=-1 +kerning first=317 second=223 amount=-1 +kerning first=218 second=339 amount=-2 +kerning first=1054 second=1058 amount=-1 +kerning first=281 second=223 amount=-1 +kerning first=193 second=244 amount=-1 +kerning first=371 second=230 amount=-2 +kerning first=321 second=256 amount=-2 +kerning first=90 second=249 amount=-3 +kerning first=1052 second=1054 amount=-1 +kerning first=260 second=252 amount=-3 +kerning first=74 second=211 amount=-2 +kerning first=362 second=339 amount=-2 +kerning first=213 second=256 amount=-4 +kerning first=8217 second=250 amount=-1 +kerning first=211 second=89 amount=-2 +kerning first=76 second=69 amount=-2 +kerning first=289 second=255 amount=-1 +kerning first=251 second=114 amount=-1 +kerning first=72 second=44 amount=-1 +kerning first=350 second=374 amount=-3 +kerning first=192 second=84 amount=-6 +kerning first=376 second=109 amount=-3 +kerning first=362 second=79 amount=-1 +kerning first=374 second=187 amount=-3 +kerning first=74 second=114 amount=-1 +kerning first=268 second=109 amount=-1 +kerning first=382 second=237 amount=-1 +kerning first=109 second=314 amount=-1 +kerning first=113 second=114 amount=-1 +kerning first=232 second=109 amount=-2 +kerning first=346 second=237 amount=-3 +kerning first=282 second=8249 amount=-2 +kerning first=1098 second=1116 amount=-1 +kerning first=117 second=104 amount=-2 +kerning first=230 second=187 amount=-2 +kerning first=363 second=232 amount=-1 +kerning first=274 second=237 amount=-1 +kerning first=311 second=99 amount=-3 +kerning first=210 second=8249 amount=-1 +kerning first=45 second=104 amount=-1 +kerning first=286 second=314 amount=-1 +kerning first=275 second=99 amount=-1 +kerning first=280 second=217 amount=-2 +kerning first=1105 second=1119 amount=-1 +kerning first=202 second=237 amount=-1 +kerning first=250 second=314 amount=-2 +kerning first=353 second=227 amount=-1 +kerning first=105 second=8249 amount=-3 +kerning first=255 second=232 amount=-3 +kerning first=8220 second=261 amount=-3 +kerning first=352 second=217 amount=-3 +kerning first=258 second=104 amount=-2 +kerning first=97 second=237 amount=-1 +kerning first=249 second=44 amount=-2 +kerning first=327 second=232 amount=-2 +kerning first=86 second=224 amount=-4 +kerning first=69 second=8249 amount=-2 +kerning first=291 second=232 amount=-2 +kerning first=252 second=269 amount=-1 +kerning first=89 second=187 amount=-3 +kerning first=78 second=232 amount=-2 +kerning first=253 second=277 amount=-3 +kerning first=69 second=351 amount=-1 +kerning first=71 second=203 amount=-1 +kerning first=82 second=257 amount=-2 +kerning first=101 second=326 amount=-2 +kerning first=217 second=277 amount=-2 +kerning first=122 second=224 amount=-1 +kerning first=1047 second=1076 amount=-2 +kerning first=325 second=277 amount=-2 +kerning first=263 second=224 amount=-2 +kerning first=1043 second=1051 amount=-5 +kerning first=289 second=277 amount=-2 +kerning first=221 second=302 amount=-1 +kerning first=227 second=224 amount=-1 +kerning first=8250 second=104 amount=-1 +kerning first=354 second=347 amount=-3 +kerning first=335 second=224 amount=-1 +kerning first=99 second=371 amount=-2 +kerning first=313 second=202 amount=-2 +kerning first=354 second=8249 amount=-5 +kerning first=282 second=347 amount=-1 +kerning first=80 second=302 amount=-1 +kerning first=98 second=361 amount=-1 +kerning first=371 second=224 amount=-2 +kerning first=99 second=101 amount=-1 +kerning first=77 second=79 amount=-2 +kerning first=354 second=351 amount=-3 +kerning first=8217 second=194 amount=-6 +kerning first=204 second=101 amount=-2 +kerning first=107 second=333 amount=-3 +kerning first=83 second=267 amount=-1 +kerning first=198 second=212 amount=-1 +kerning first=331 second=257 amount=-1 +kerning first=82 second=261 amount=-2 +kerning first=240 second=367 amount=-1 +kerning first=119 second=267 amount=-3 +kerning first=367 second=257 amount=-1 +kerning first=118 second=261 amount=-3 +kerning first=1113 second=1096 amount=-1 +kerning first=246 second=351 amount=-2 +kerning first=259 second=257 amount=-1 +kerning first=1043 second=1047 amount=-1 +kerning first=368 second=267 amount=-2 +kerning first=295 second=257 amount=-1 +kerning first=204 second=367 amount=-2 +kerning first=260 second=267 amount=-1 +kerning first=228 second=103 amount=-2 +kerning first=187 second=257 amount=-1 +kerning first=287 second=114 amount=-1 +kerning first=290 second=364 amount=-1 +kerning first=350 second=8220 amount=-2 +kerning first=218 second=79 amount=-1 +kerning first=282 second=351 amount=-1 +kerning first=223 second=257 amount=-1 +kerning first=99 second=367 amount=-2 +kerning first=107 second=246 amount=-3 +kerning first=282 second=291 amount=-3 +kerning first=202 second=241 amount=-1 +kerning first=287 second=382 amount=-3 +kerning first=67 second=221 amount=-1 +kerning first=246 second=291 amount=-2 +kerning first=323 second=382 amount=-1 +kerning first=278 second=266 amount=-1 +kerning first=1058 second=1087 amount=-2 +kerning first=375 second=311 amount=-2 +kerning first=252 second=271 amount=-1 +kerning first=210 second=291 amount=-1 +kerning first=274 second=241 amount=-1 +kerning first=339 second=311 amount=-2 +kerning first=221 second=362 amount=-1 +kerning first=206 second=266 amount=-2 +kerning first=1044 second=1057 amount=-1 +kerning first=331 second=8221 amount=-4 +kerning first=280 second=352 amount=-2 +kerning first=303 second=311 amount=-1 +kerning first=105 second=291 amount=-3 +kerning first=217 second=337 amount=-2 +kerning first=110 second=382 amount=-1 +kerning first=122 second=226 amount=-1 +kerning first=65 second=266 amount=-3 +kerning first=83 second=8221 amount=-2 +kerning first=267 second=311 amount=-2 +kerning first=69 second=291 amount=-3 +kerning first=231 second=311 amount=-2 +kerning first=97 second=241 amount=-1 +kerning first=369 second=331 amount=-1 +kerning first=227 second=226 amount=-1 +kerning first=1069 second=1042 amount=-1 +kerning first=195 second=311 amount=-2 +kerning first=251 second=382 amount=-2 +kerning first=84 second=113 amount=-3 +kerning first=224 second=8221 amount=-3 +kerning first=260 second=8221 amount=-5 +kerning first=203 second=361 amount=-2 +kerning first=325 second=337 amount=-2 +kerning first=333 second=331 amount=-1 +kerning first=311 second=361 amount=-1 +kerning first=289 second=337 amount=-2 +kerning first=225 second=331 amount=-1 +kerning first=1048 second=1082 amount=-1 +kerning first=275 second=361 amount=-2 +kerning first=109 second=316 amount=-1 +kerning first=261 second=331 amount=-1 +kerning first=352 second=221 amount=-3 +kerning first=120 second=331 amount=-1 +kerning first=81 second=368 amount=-1 +kerning first=347 second=361 amount=-1 +kerning first=280 second=221 amount=-1 +kerning first=250 second=316 amount=-2 +kerning first=332 second=8221 amount=-2 +kerning first=122 second=45 amount=-3 +kerning first=286 second=316 amount=-1 +kerning first=84 second=331 amount=-3 +kerning first=208 second=221 amount=-2 +kerning first=45 second=368 amount=-4 +kerning first=200 second=78 amount=-2 +kerning first=240 second=103 amount=-2 +kerning first=258 second=368 amount=-3 +kerning first=219 second=97 amount=-3 +kerning first=204 second=103 amount=-3 +kerning first=249 second=252 amount=-1 +kerning first=104 second=227 amount=-1 +kerning first=231 second=45 amount=-2 +kerning first=199 second=70 amount=-3 +kerning first=1102 second=1081 amount=-1 +kerning first=83 second=323 amount=-3 +kerning first=68 second=227 amount=-1 +kerning first=195 second=353 amount=-2 +kerning first=99 second=103 amount=-3 +kerning first=222 second=368 amount=-1 +kerning first=376 second=317 amount=-1 +kerning first=1051 second=1101 amount=-1 +kerning first=1048 second=1119 amount=-1 +kerning first=202 second=379 amount=-1 +kerning first=281 second=227 amount=-2 +kerning first=375 second=45 amount=-4 +kerning first=307 second=244 amount=-1 +kerning first=108 second=252 amount=-2 +kerning first=245 second=227 amount=-1 +kerning first=379 second=70 amount=-1 +kerning first=86 second=257 amount=-5 +kerning first=209 second=227 amount=-2 +kerning first=332 second=323 amount=-2 +kerning first=303 second=307 amount=-1 +kerning first=199 second=336 amount=-3 +kerning first=377 second=381 amount=-1 +kerning first=268 second=317 amount=-3 +kerning first=335 second=226 amount=-1 +kerning first=1052 second=1107 amount=-1 +kerning first=356 second=246 amount=-3 +kerning first=194 second=246 amount=-1 +kerning first=187 second=201 amount=-5 +kerning first=371 second=226 amount=-2 +kerning first=255 second=339 amount=-3 +kerning first=193 second=356 amount=-6 +kerning first=199 second=278 amount=-3 +kerning first=74 second=382 amount=-1 +kerning first=90 second=45 amount=-3 +kerning first=1088 second=1107 amount=-1 +kerning first=88 second=356 amount=-2 +kerning first=379 second=336 amount=-1 +kerning first=354 second=291 amount=-4 +kerning first=195 second=45 amount=-4 +kerning first=280 second=223 amount=-1 +kerning first=1024 second=1057 amount=-1 +kerning first=214 second=356 amount=-2 +kerning first=1059 second=1095 amount=-3 +kerning first=117 second=382 amount=-2 +kerning first=236 second=116 amount=-1 +kerning first=203 second=45 amount=-2 +kerning first=113 second=369 amount=-2 +kerning first=268 second=103 amount=-3 +kerning first=205 second=246 amount=-2 +kerning first=279 second=103 amount=-3 +kerning first=281 second=259 amount=-2 +kerning first=218 second=369 amount=-1 +kerning first=196 second=103 amount=-3 +kerning first=100 second=246 amount=-1 +kerning first=1047 second=1056 amount=-2 +kerning first=338 second=249 amount=-2 +kerning first=344 second=362 amount=-3 +kerning first=347 second=45 amount=-1 +kerning first=82 second=253 amount=-3 +kerning first=311 second=45 amount=-3 +kerning first=77 second=369 amount=-2 +kerning first=104 second=259 amount=-1 +kerning first=199 second=262 amount=-3 +kerning first=81 second=382 amount=-2 +kerning first=187 second=253 amount=-3 +kerning first=90 second=279 amount=-1 +kerning first=326 second=109 amount=-1 +kerning first=245 second=303 amount=-1 +kerning first=204 second=375 amount=-2 +kerning first=200 second=362 amount=-2 +kerning first=69 second=67 amount=-1 +kerning first=363 second=226 amount=-1 +kerning first=84 second=65 amount=-6 +kerning first=196 second=363 amount=-3 +kerning first=222 second=122 amount=-2 +kerning first=1069 second=1076 amount=-1 +kerning first=1077 second=1102 amount=-1 +kerning first=195 second=279 amount=-1 +kerning first=232 second=363 amount=-2 +kerning first=99 second=375 amount=-2 +kerning first=272 second=362 amount=-1 +kerning first=1113 second=1102 amount=-1 +kerning first=1037 second=1075 amount=-1 +kerning first=268 second=363 amount=-2 +kerning first=117 second=122 amount=-2 +kerning first=362 second=109 amount=-2 +kerning first=230 second=113 amount=-1 +kerning first=86 second=266 amount=-3 +kerning first=304 second=363 amount=-2 +kerning first=326 second=369 amount=-1 +kerning first=380 second=116 amount=-1 +kerning first=290 second=369 amount=-1 +kerning first=330 second=382 amount=-1 +kerning first=98 second=305 amount=-1 +kerning first=344 second=116 amount=-3 +kerning first=286 second=356 amount=-3 +kerning first=376 second=363 amount=-2 +kerning first=330 second=122 amount=-1 +kerning first=366 second=382 amount=-3 +kerning first=254 second=109 amount=-1 +kerning first=1055 second=1082 amount=-1 +kerning first=362 second=369 amount=-1 +kerning first=203 second=305 amount=-1 +kerning first=218 second=109 amount=-2 +kerning first=240 second=375 amount=-3 +kerning first=66 second=298 amount=-4 +kerning first=8222 second=287 amount=-1 +kerning first=254 second=355 amount=-1 +kerning first=1039 second=1095 amount=-1 +kerning first=1025 second=1036 amount=-1 +kerning first=275 second=305 amount=-2 +kerning first=240 second=115 amount=-2 +kerning first=214 second=370 amount=-1 +kerning first=87 second=336 amount=-3 +kerning first=1047 second=1070 amount=-2 +kerning first=347 second=305 amount=-2 +kerning first=113 second=355 amount=-1 +kerning first=267 second=279 amount=-1 +kerning first=286 second=370 amount=-1 +kerning first=205 second=232 amount=-2 +kerning first=192 second=336 amount=-3 +kerning first=231 second=279 amount=-1 +kerning first=105 second=339 amount=-1 +kerning first=196 second=89 amount=-6 +kerning first=8250 second=261 amount=-1 +kerning first=339 second=279 amount=-1 +kerning first=1055 second=1096 amount=-1 +kerning first=277 second=232 amount=-1 +kerning first=264 second=336 amount=-3 +kerning first=303 second=279 amount=-3 +kerning first=268 second=89 amount=-1 +kerning first=223 second=253 amount=-3 +kerning first=259 second=253 amount=-3 +kerning first=87 second=380 amount=-3 +kerning first=295 second=253 amount=-2 +kerning first=100 second=232 amount=-1 +kerning first=252 second=248 amount=-1 +kerning first=331 second=253 amount=-2 +kerning first=1073 second=1103 amount=-2 +kerning first=367 second=253 amount=-3 +kerning first=286 second=82 amount=-1 +kerning first=80 second=66 amount=-1 +kerning first=66 second=332 amount=-3 +kerning first=366 second=230 amount=-3 +kerning first=277 second=246 amount=-1 +kerning first=82 second=225 amount=-2 +kerning first=45 second=108 amount=-1 +kerning first=118 second=225 amount=-3 +kerning first=262 second=196 amount=-3 +kerning first=187 second=225 amount=-1 +kerning first=370 second=196 amount=-4 +kerning first=117 second=108 amount=-2 +kerning first=223 second=225 amount=-1 +kerning first=196 second=335 amount=-1 +kerning first=376 second=75 amount=-1 +kerning first=207 second=332 amount=-2 +kerning first=315 second=332 amount=-1 +kerning first=282 second=315 amount=-2 +kerning first=85 second=196 amount=-4 +kerning first=354 second=315 amount=-1 +kerning first=258 second=108 amount=-2 +kerning first=280 second=203 amount=-2 +kerning first=379 second=46 amount=-1 +kerning first=245 second=8217 amount=-2 +kerning first=206 second=45 amount=-4 +kerning first=208 second=203 amount=-2 +kerning first=86 second=280 amount=-1 +kerning first=321 second=286 amount=-1 +kerning first=220 second=242 amount=-2 +kerning first=220 second=326 amount=-2 +kerning first=317 second=8217 amount=-4 +kerning first=200 second=102 amount=-2 +kerning first=281 second=273 amount=-1 +kerning first=313 second=218 amount=-3 +kerning first=259 second=225 amount=-1 +kerning first=281 second=231 amount=-1 +kerning first=371 second=112 amount=-1 +kerning first=235 second=46 amount=-3 +kerning first=204 second=115 amount=-2 +kerning first=295 second=225 amount=-1 +kerning first=97 second=8221 amount=-3 +kerning first=86 second=269 amount=-3 +kerning first=68 second=8217 amount=-2 +kerning first=256 second=242 amount=-1 +kerning first=331 second=225 amount=-1 +kerning first=209 second=231 amount=-2 +kerning first=307 second=46 amount=-2 +kerning first=364 second=242 amount=-2 +kerning first=99 second=115 amount=-2 +kerning first=367 second=225 amount=-1 +kerning first=67 second=203 amount=-3 +kerning first=218 second=81 amount=-1 +kerning first=72 second=286 amount=-2 +kerning first=281 second=245 amount=-1 +kerning first=217 second=67 amount=-1 +kerning first=231 second=307 amount=-2 +kerning first=267 second=307 amount=-2 +kerning first=209 second=245 amount=-2 +kerning first=197 second=119 amount=-3 +kerning first=199 second=46 amount=-1 +kerning first=85 second=210 amount=-1 +kerning first=76 second=67 amount=-1 +kerning first=81 second=122 amount=-2 +kerning first=233 second=119 amount=-2 +kerning first=8250 second=289 amount=-3 +kerning first=107 second=232 amount=-3 +kerning first=227 second=261 amount=-1 +kerning first=236 second=102 amount=-2 +kerning first=45 second=122 amount=-5 +kerning first=269 second=119 amount=-2 +kerning first=375 second=307 amount=-2 +kerning first=67 second=217 amount=-2 +kerning first=305 second=119 amount=-3 +kerning first=310 second=8221 amount=-2 +kerning first=65 second=8217 amount=-5 +kerning first=263 second=252 amount=-2 +kerning first=376 second=335 amount=-3 +kerning first=377 second=119 amount=-2 +kerning first=1056 second=1062 amount=-1 +kerning first=1047 second=1042 amount=-2 +kerning first=1046 second=1113 amount=-2 +kerning first=335 second=252 amount=-1 +kerning first=313 second=204 amount=-2 +kerning first=371 second=252 amount=-1 +kerning first=310 second=250 amount=-3 +kerning first=86 second=252 amount=-1 +kerning first=232 second=335 amount=-1 +kerning first=353 second=259 amount=-1 +kerning first=119 second=269 amount=-3 +kerning first=122 second=252 amount=-2 +kerning first=268 second=335 amount=-2 +kerning first=1067 second=1086 amount=-1 +kerning first=83 second=269 amount=-1 +kerning first=325 second=67 amount=-2 +kerning first=304 second=335 amount=-2 +kerning first=224 second=269 amount=-1 +kerning first=1051 second=1097 amount=-1 +kerning first=77 second=81 amount=-2 +kerning first=227 second=252 amount=-1 +kerning first=109 second=328 amount=-1 +kerning first=1070 second=1118 amount=-1 +kerning first=333 second=353 amount=-2 +kerning first=296 second=269 amount=-2 +kerning first=337 second=378 amount=-2 +kerning first=369 second=365 amount=-1 +kerning first=369 second=353 amount=-2 +kerning first=260 second=269 amount=-1 +kerning first=333 second=365 amount=-1 +kerning first=346 second=378 amount=-2 +kerning first=283 second=113 amount=-1 +kerning first=368 second=269 amount=-2 +kerning first=193 second=366 amount=-3 +kerning first=198 second=262 amount=-1 +kerning first=261 second=365 amount=-1 +kerning first=351 second=112 amount=-3 +kerning first=251 second=171 amount=-2 +kerning first=225 second=365 amount=-1 +kerning first=315 second=112 amount=-2 +kerning first=225 second=353 amount=-1 +kerning first=287 second=171 amount=-3 +kerning first=279 second=100 amount=-1 +kerning first=8217 second=244 amount=-3 +kerning first=279 second=112 amount=-1 +kerning first=261 second=353 amount=-1 +kerning first=323 second=171 amount=-4 +kerning first=120 second=365 amount=-3 +kerning first=243 second=112 amount=-1 +kerning first=229 second=378 amount=-1 +kerning first=1057 second=1072 amount=-1 +kerning first=382 second=249 amount=-2 +kerning first=66 second=100 amount=-1 +kerning first=278 second=288 amount=-1 +kerning first=382 second=275 amount=-1 +kerning first=203 second=87 amount=-1 +kerning first=102 second=100 amount=-1 +kerning first=1084 second=1086 amount=-1 +kerning first=310 second=249 amount=-3 +kerning first=84 second=353 amount=-3 +kerning first=1048 second=1086 amount=-1 +kerning first=346 second=249 amount=-1 +kerning first=120 second=353 amount=-3 +kerning first=1102 second=1091 amount=-1 +kerning first=207 second=100 amount=-2 +kerning first=80 second=354 amount=-1 +kerning first=221 second=352 amount=-3 +kerning first=370 second=210 amount=-1 +kerning first=263 second=171 amount=-2 +kerning first=82 second=211 amount=-3 +kerning first=88 second=366 amount=-2 +kerning first=266 second=223 amount=-1 +kerning first=97 second=275 amount=-1 +kerning first=106 second=248 amount=-1 +kerning first=374 second=223 amount=-3 +kerning first=298 second=210 amount=-2 +kerning first=206 second=288 amount=-2 +kerning first=70 second=113 amount=-1 +kerning first=338 second=223 amount=-1 +kerning first=262 second=210 amount=-3 +kerning first=87 second=296 amount=-1 +kerning first=279 second=114 amount=-1 +kerning first=97 second=249 amount=-1 +kerning first=234 second=248 amount=-1 +kerning first=89 second=223 amount=-3 +kerning first=230 second=223 amount=-1 +kerning first=229 second=380 amount=-1 +kerning first=270 second=8220 amount=-2 +kerning first=369 second=339 amount=-1 +kerning first=243 second=114 amount=-1 +kerning first=234 second=8220 amount=-2 +kerning first=264 second=296 amount=-3 +kerning first=102 second=114 amount=-1 +kerning first=278 second=274 amount=-2 +kerning first=274 second=249 amount=-2 +kerning first=97 second=289 amount=-2 +kerning first=1058 second=1079 amount=-1 +kerning first=336 second=296 amount=-2 +kerning first=1073 second=1117 amount=-1 +kerning first=202 second=249 amount=-2 +kerning first=202 second=289 amount=-3 +kerning first=76 second=327 amount=-2 +kerning first=66 second=114 amount=-3 +kerning first=1037 second=1117 amount=-1 +kerning first=219 second=198 amount=-4 +kerning first=84 second=365 amount=-2 +kerning first=374 second=237 amount=-2 +kerning first=310 second=263 amount=-2 +kerning first=382 second=8249 amount=-3 +kerning first=338 second=237 amount=-1 +kerning first=346 second=263 amount=-1 +kerning first=274 second=8249 amount=-2 +kerning first=109 second=363 amount=-1 +kerning first=302 second=237 amount=-1 +kerning first=231 second=275 amount=-1 +kerning first=350 second=274 amount=-3 +kerning first=382 second=263 amount=-1 +kerning first=310 second=8249 amount=-4 +kerning first=210 second=315 amount=-2 +kerning first=266 second=237 amount=-1 +kerning first=1091 second=1079 amount=-1 +kerning first=97 second=263 amount=-1 +kerning first=202 second=8249 amount=-2 +kerning first=367 second=232 amount=-1 +kerning first=261 second=339 amount=-1 +kerning first=1030 second=1105 amount=-1 +kerning first=283 second=99 amount=-1 +kerning first=76 second=313 amount=-2 +kerning first=84 second=379 amount=-3 +kerning first=194 second=237 amount=-1 +kerning first=97 second=8249 amount=-2 +kerning first=69 second=315 amount=-2 +kerning first=313 second=206 amount=-2 +kerning first=268 second=75 amount=-3 +kerning first=89 second=237 amount=-2 +kerning first=203 second=73 amount=-2 +kerning first=8217 second=216 amount=-2 +kerning first=84 second=381 amount=-3 +kerning first=1102 second=1119 amount=-1 +kerning first=234 second=44 amount=-3 +kerning first=1058 second=1081 amount=-2 +kerning first=378 second=234 amount=-1 +kerning first=77 second=83 amount=-2 +kerning first=78 second=212 amount=-2 +kerning first=323 second=199 amount=-2 +kerning first=70 second=111 amount=-1 +kerning first=310 second=277 amount=-2 +kerning first=1058 second=1051 amount=-4 +kerning first=66 second=86 amount=-3 +kerning first=374 second=209 amount=-1 +kerning first=228 second=263 amount=-1 +kerning first=8217 second=246 amount=-3 +kerning first=350 second=302 amount=-3 +kerning first=234 second=234 amount=-1 +kerning first=338 second=209 amount=-2 +kerning first=382 second=277 amount=-1 +kerning first=1030 second=1119 amount=-1 +kerning first=346 second=277 amount=-1 +kerning first=278 second=302 amount=-2 +kerning first=315 second=72 amount=-2 +kerning first=225 second=351 amount=-1 +kerning first=268 second=323 amount=-3 +kerning first=198 second=264 amount=-1 +kerning first=283 second=111 amount=-1 +kerning first=362 second=83 amount=-3 +kerning first=97 second=277 amount=-1 +kerning first=274 second=289 amount=-3 +kerning first=87 second=76 amount=-1 +kerning first=310 second=289 amount=-2 +kerning first=261 second=351 amount=-1 +kerning first=346 second=289 amount=-3 +kerning first=89 second=209 amount=-1 +kerning first=382 second=289 amount=-2 +kerning first=106 second=111 amount=-1 +kerning first=327 second=212 amount=-2 +kerning first=74 second=199 amount=-2 +kerning first=376 second=323 amount=-1 +kerning first=120 second=351 amount=-3 +kerning first=219 second=212 amount=-1 +kerning first=351 second=114 amount=-1 +kerning first=333 second=367 amount=-1 +kerning first=84 second=351 amount=-3 +kerning first=193 second=364 amount=-3 +kerning first=225 second=367 amount=-1 +kerning first=346 second=291 amount=-3 +kerning first=202 second=261 amount=-1 +kerning first=261 second=367 amount=-1 +kerning first=98 second=311 amount=-1 +kerning first=209 second=233 amount=-2 +kerning first=78 second=226 amount=-2 +kerning first=120 second=367 amount=-3 +kerning first=274 second=291 amount=-3 +kerning first=114 second=226 amount=-1 +kerning first=274 second=261 amount=-1 +kerning first=281 second=233 amount=-1 +kerning first=212 second=8217 amount=-2 +kerning first=336 second=76 amount=-2 +kerning first=211 second=97 amount=-1 +kerning first=369 second=351 amount=-2 +kerning first=202 second=291 amount=-3 +kerning first=120 second=337 amount=-2 +kerning first=1058 second=1074 amount=-2 +kerning first=219 second=226 amount=-3 +kerning first=84 second=367 amount=-2 +kerning first=365 second=326 amount=-1 +kerning first=45 second=110 amount=-2 +kerning first=333 second=351 amount=-2 +kerning first=84 second=337 amount=-3 +kerning first=264 second=76 amount=-3 +kerning first=106 second=97 amount=-2 +kerning first=311 second=242 amount=-3 +kerning first=97 second=291 amount=-2 +kerning first=291 second=226 amount=-3 +kerning first=97 second=261 amount=-1 +kerning first=117 second=110 amount=-1 +kerning first=327 second=226 amount=-2 +kerning first=355 second=97 amount=-1 +kerning first=1054 second=1040 amount=-3 +kerning first=74 second=171 amount=-4 +kerning first=65 second=316 amount=-2 +kerning first=8217 second=232 amount=-3 +kerning first=221 second=326 amount=-3 +kerning first=110 second=171 amount=-3 +kerning first=200 second=350 amount=-2 +kerning first=101 second=316 amount=-3 +kerning first=283 second=97 amount=-2 +kerning first=257 second=326 amount=-1 +kerning first=225 second=337 amount=-1 +kerning first=171 second=86 amount=-3 +kerning first=1069 second=1050 amount=-1 +kerning first=224 second=229 amount=-1 +kerning first=1062 second=1092 amount=-1 +kerning first=1057 second=1064 amount=-1 +kerning first=310 second=261 amount=-1 +kerning first=242 second=316 amount=-2 +kerning first=346 second=261 amount=-2 +kerning first=346 second=370 amount=-3 +kerning first=366 second=110 amount=-2 +kerning first=344 second=350 amount=-3 +kerning first=278 second=316 amount=-1 +kerning first=382 second=261 amount=-1 +kerning first=1113 second=1116 amount=-1 +kerning first=314 second=316 amount=-2 +kerning first=234 second=250 amount=-2 +kerning first=315 second=86 amount=-3 +kerning first=1077 second=1116 amount=-1 +kerning first=272 second=350 amount=-1 +kerning first=350 second=316 amount=-2 +kerning first=198 second=250 amount=-2 +kerning first=212 second=200 amount=-2 +kerning first=281 second=271 amount=-1 +kerning first=1051 second=1057 amount=-1 +kerning first=99 second=117 amount=-2 +kerning first=290 second=381 amount=-2 +kerning first=69 second=331 amount=-1 +kerning first=362 second=381 amount=-1 +kerning first=376 second=337 amount=-3 +kerning first=211 second=8217 amount=-2 +kerning first=356 second=200 amount=-1 +kerning first=282 second=352 amount=-2 +kerning first=90 second=291 amount=-3 +kerning first=1051 second=1081 amount=-1 +kerning first=213 second=260 amount=-4 +kerning first=240 second=117 amount=-1 +kerning first=284 second=200 amount=-1 +kerning first=321 second=260 amount=-2 +kerning first=75 second=85 amount=-2 +kerning first=376 second=361 amount=-2 +kerning first=97 second=8220 amount=-3 +kerning first=227 second=240 amount=-1 +kerning first=105 second=331 amount=-2 +kerning first=282 second=115 amount=-1 +kerning first=86 second=240 amount=-3 +kerning first=327 second=214 amount=-2 +kerning first=266 second=207 amount=-3 +kerning first=122 second=240 amount=-1 +kerning first=335 second=237 amount=-1 +kerning first=236 second=382 amount=-1 +kerning first=78 second=214 amount=-2 +kerning first=371 second=240 amount=-3 +kerning first=263 second=240 amount=-1 +kerning first=199 second=290 amount=-3 +kerning first=89 second=207 amount=-1 +kerning first=272 second=90 amount=-2 +kerning first=66 second=84 amount=-3 +kerning first=288 second=378 amount=-1 +kerning first=350 second=304 amount=-3 +kerning first=214 second=330 amount=-2 +kerning first=377 second=194 amount=-1 +kerning first=313 second=220 amount=-3 +kerning first=330 second=67 amount=-2 +kerning first=69 second=71 amount=-1 +kerning first=213 second=298 amount=-2 +kerning first=278 second=304 amount=-2 +kerning first=67 second=201 amount=-3 +kerning first=375 second=291 amount=-3 +kerning first=216 second=227 amount=-1 +kerning first=339 second=291 amount=-3 +kerning first=76 second=287 amount=-3 +kerning first=1047 second=1030 amount=-2 +kerning first=338 second=207 amount=-2 +kerning first=303 second=291 amount=-1 +kerning first=77 second=97 amount=-2 +kerning first=321 second=298 amount=-2 +kerning first=374 second=207 amount=-1 +kerning first=1037 second=1077 amount=-1 +kerning first=171 second=84 amount=-3 +kerning first=286 second=330 amount=-1 +kerning first=75 second=227 amount=-1 +kerning first=1047 second=1058 amount=-1 +kerning first=231 second=291 amount=-3 +kerning first=108 second=116 amount=-1 +kerning first=259 second=122 amount=-1 +kerning first=195 second=291 amount=-3 +kerning first=196 second=337 amount=-1 +kerning first=253 second=287 amount=-3 +kerning first=264 second=290 amount=-3 +kerning first=77 second=350 amount=-2 +kerning first=365 second=324 amount=-1 +kerning first=282 second=71 amount=-1 +kerning first=254 second=97 amount=-1 +kerning first=217 second=287 amount=-4 +kerning first=260 second=311 amount=-2 +kerning first=1044 second=1101 amount=-1 +kerning first=315 second=84 amount=-3 +kerning first=113 second=97 amount=-2 +kerning first=1105 second=1088 amount=-1 +kerning first=224 second=311 amount=-1 +kerning first=203 second=317 amount=-2 +kerning first=84 second=77 amount=-1 +kerning first=354 second=71 amount=-3 +kerning first=289 second=287 amount=-2 +kerning first=1116 second=1101 amount=-1 +kerning first=362 second=97 amount=-3 +kerning first=119 second=311 amount=-2 +kerning first=221 second=324 amount=-3 +kerning first=304 second=337 amount=-2 +kerning first=83 second=311 amount=-2 +kerning first=200 second=90 amount=-1 +kerning first=290 second=97 amount=-1 +kerning first=218 second=381 amount=-1 +kerning first=232 second=337 amount=-1 +kerning first=354 second=204 amount=-1 +kerning first=257 second=324 amount=-1 +kerning first=117 second=120 amount=-2 +kerning first=90 second=263 amount=-1 +kerning first=268 second=365 amount=-2 +kerning first=232 second=365 amount=-2 +kerning first=222 second=120 amount=-1 +kerning first=195 second=263 amount=-1 +kerning first=196 second=365 amount=-3 +kerning first=381 second=193 amount=-1 +kerning first=231 second=263 amount=-1 +kerning first=76 second=325 amount=-2 +kerning first=354 second=303 amount=-2 +kerning first=266 second=197 amount=-3 +kerning first=106 second=339 amount=-1 +kerning first=86 second=268 amount=-3 +kerning first=226 second=241 amount=-1 +kerning first=326 second=353 amount=-1 +kerning first=286 second=70 amount=-1 +kerning first=82 second=213 amount=-3 +kerning first=45 second=120 amount=-3 +kerning first=87 second=310 amount=-1 +kerning first=362 second=353 amount=-2 +kerning first=8218 second=107 amount=-1 +kerning first=66 second=74 amount=-4 +kerning first=81 second=120 amount=-1 +kerning first=221 second=78 amount=-1 +kerning first=214 second=70 amount=-2 +kerning first=336 second=310 amount=-2 +kerning first=1048 second=1100 amount=-1 +kerning first=80 second=78 amount=-1 +kerning first=370 second=262 amount=-1 +kerning first=209 second=275 amount=-2 +kerning first=113 second=353 amount=-2 +kerning first=196 second=248 amount=-1 +kerning first=1007 second=1003 amount=-2 +kerning first=105 second=303 amount=-1 +kerning first=344 second=118 amount=-3 +kerning first=228 second=109 amount=-1 +kerning first=99 second=113 amount=-1 +kerning first=207 second=74 amount=-1 +kerning first=264 second=310 amount=-3 +kerning first=218 second=353 amount=-2 +kerning first=1055 second=1080 amount=-1 +kerning first=116 second=314 amount=-1 +kerning first=254 second=353 amount=-2 +kerning first=352 second=201 amount=-3 +kerning first=203 second=85 amount=-2 +kerning first=246 second=303 amount=-1 +kerning first=236 second=118 amount=-3 +kerning first=315 second=74 amount=-1 +kerning first=376 second=365 amount=-2 +kerning first=282 second=303 amount=-1 +kerning first=200 second=118 amount=-1 +kerning first=280 second=201 amount=-2 +kerning first=366 second=120 amount=-2 +kerning first=286 second=366 amount=-1 +kerning first=304 second=365 amount=-2 +kerning first=210 second=303 amount=-1 +kerning first=77 second=353 amount=-2 +kerning first=257 second=314 amount=-1 +kerning first=208 second=201 amount=-2 +kerning first=1102 second=1093 amount=-1 +kerning first=266 second=235 amount=-2 +kerning first=195 second=8249 amount=-4 +kerning first=365 second=314 amount=-2 +kerning first=119 second=283 amount=-3 +kerning first=302 second=235 amount=-2 +kerning first=330 second=380 amount=-1 +kerning first=231 second=8249 amount=-2 +kerning first=367 second=241 amount=-1 +kerning first=83 second=283 amount=-1 +kerning first=8216 second=227 amount=-3 +kerning first=366 second=380 amount=-3 +kerning first=90 second=8249 amount=-3 +kerning first=120 second=105 amount=-1 +kerning first=258 second=355 amount=-1 +kerning first=374 second=235 amount=-3 +kerning first=213 second=270 amount=-2 +kerning first=198 second=224 amount=-1 +kerning first=117 second=380 amount=-2 +kerning first=339 second=249 amount=-2 +kerning first=1073 second=1087 amount=-1 +kerning first=259 second=241 amount=-1 +kerning first=296 second=283 amount=-2 +kerning first=264 second=338 amount=-3 +kerning first=250 second=98 amount=-2 +kerning first=223 second=241 amount=-1 +kerning first=260 second=283 amount=-1 +kerning first=222 second=380 amount=-2 +kerning first=331 second=241 amount=-1 +kerning first=224 second=283 amount=-1 +kerning first=234 second=224 amount=-2 +kerning first=356 second=228 amount=-4 +kerning first=192 second=338 amount=-3 +kerning first=1037 second=1087 amount=-1 +kerning first=295 second=241 amount=-1 +kerning first=378 second=171 amount=-3 +kerning first=284 second=228 amount=-1 +kerning first=277 second=248 amount=-1 +kerning first=248 second=228 amount=-1 +kerning first=45 second=380 amount=-5 +kerning first=187 second=241 amount=-2 +kerning first=70 second=101 amount=-1 +kerning first=368 second=283 amount=-2 +kerning first=66 second=112 amount=-4 +kerning first=378 second=224 amount=-1 +kerning first=212 second=228 amount=-1 +kerning first=81 second=380 amount=-2 +kerning first=251 second=102 amount=-1 +kerning first=118 second=241 amount=-2 +kerning first=106 second=101 amount=-1 +kerning first=267 second=263 amount=-1 +kerning first=205 second=248 amount=-2 +kerning first=89 second=235 amount=-3 +kerning first=235 second=318 amount=-3 +kerning first=303 second=263 amount=-3 +kerning first=354 second=331 amount=-3 +kerning first=107 second=228 amount=-2 +kerning first=375 second=8249 amount=-4 +kerning first=201 second=193 amount=-2 +kerning first=339 second=263 amount=-1 +kerning first=100 second=248 amount=-1 +kerning first=71 second=228 amount=-1 +kerning first=307 second=318 amount=-2 +kerning first=267 second=8249 amount=-2 +kerning first=1061 second=1038 amount=-3 +kerning first=375 second=263 amount=-3 +kerning first=282 second=331 amount=-1 +kerning first=230 second=235 amount=-1 +kerning first=283 second=101 amount=-1 +kerning first=368 second=281 amount=-2 +kerning first=1040 second=1072 amount=-1 +kerning first=281 second=97 amount=-2 +kerning first=1036 second=1047 amount=-2 +kerning first=352 second=205 amount=-3 +kerning first=252 second=231 amount=-1 +kerning first=220 second=256 amount=-4 +kerning first=356 second=230 amount=-5 +kerning first=80 second=82 amount=-1 +kerning first=224 second=281 amount=-1 +kerning first=248 second=230 amount=-1 +kerning first=1044 second=1073 amount=-1 +kerning first=1048 second=1098 amount=-1 +kerning first=260 second=281 amount=-1 +kerning first=208 second=205 amount=-2 +kerning first=284 second=230 amount=-1 +kerning first=252 second=255 amount=-3 +kerning first=296 second=281 amount=-2 +kerning first=97 second=251 amount=-1 +kerning first=88 second=108 amount=-1 +kerning first=8220 second=253 amount=-1 +kerning first=212 second=230 amount=-1 +kerning first=311 second=347 amount=-2 +kerning first=67 second=205 amount=-3 +kerning first=111 second=255 amount=-3 +kerning first=202 second=251 amount=-2 +kerning first=75 second=8217 amount=-2 +kerning first=275 second=347 amount=-2 +kerning first=83 second=281 amount=-1 +kerning first=75 second=255 amount=-3 +kerning first=111 second=8217 amount=-2 +kerning first=119 second=281 amount=-3 +kerning first=274 second=251 amount=-2 +kerning first=85 second=378 amount=-3 +kerning first=203 second=347 amount=-1 +kerning first=8222 second=303 amount=-1 +kerning first=369 second=107 amount=-2 +kerning first=205 second=216 amount=-2 +kerning first=346 second=251 amount=-1 +kerning first=369 second=105 amount=-2 +kerning first=98 second=347 amount=-2 +kerning first=310 second=251 amount=-3 +kerning first=283 second=371 amount=-2 +kerning first=210 second=193 amount=-4 +kerning first=313 second=216 amount=-1 +kerning first=75 second=231 amount=-2 +kerning first=225 second=107 amount=-1 +kerning first=382 second=251 amount=-2 +kerning first=355 second=371 amount=-1 +kerning first=88 second=106 amount=-1 +kerning first=88 second=368 amount=-2 +kerning first=268 second=333 amount=-2 +kerning first=286 second=68 amount=-1 +kerning first=232 second=333 amount=-1 +kerning first=354 second=67 amount=-3 +kerning first=275 second=345 amount=-1 +kerning first=214 second=68 amount=-2 +kerning first=84 second=81 amount=-3 +kerning first=221 second=80 amount=-1 +kerning first=304 second=333 amount=-2 +kerning first=282 second=67 amount=-1 +kerning first=347 second=345 amount=-1 +kerning first=88 second=374 amount=-2 +kerning first=207 second=346 amount=-2 +kerning first=201 second=217 amount=-2 +kerning first=79 second=282 amount=-2 +kerning first=352 second=203 amount=-3 +kerning first=193 second=368 amount=-3 +kerning first=196 second=333 amount=-1 +kerning first=364 second=102 amount=-1 +kerning first=229 second=106 amount=-1 +kerning first=66 second=346 amount=-4 +kerning first=209 second=243 amount=-2 +kerning first=71 second=230 amount=-1 +kerning first=71 second=204 amount=-1 +kerning first=199 second=244 amount=-2 +kerning first=107 second=230 amount=-2 +kerning first=315 second=346 amount=-1 +kerning first=212 second=204 amount=-2 +kerning first=281 second=243 amount=-1 +kerning first=337 second=106 amount=-2 +kerning first=119 second=307 amount=-2 +kerning first=8216 second=101 amount=-3 +kerning first=284 second=204 amount=-1 +kerning first=1063 second=1090 amount=-1 +kerning first=224 second=307 amount=-1 +kerning first=376 second=333 amount=-3 +kerning first=356 second=204 amount=-1 +kerning first=278 second=278 amount=-2 +kerning first=79 second=256 amount=-4 +kerning first=210 second=69 amount=-2 +kerning first=283 second=369 amount=-2 +kerning first=346 second=380 amount=-2 +kerning first=315 second=344 amount=-2 +kerning first=192 second=334 amount=-3 +kerning first=101 second=44 amount=-3 +kerning first=229 second=104 amount=-1 +kerning first=355 second=369 amount=-1 +kerning first=111 second=259 amount=-1 +kerning first=242 second=44 amount=-3 +kerning first=193 second=104 amount=-2 +kerning first=75 second=259 amount=-1 +kerning first=206 second=44 amount=-1 +kerning first=1025 second=1034 amount=-1 +kerning first=333 second=109 amount=-1 +kerning first=106 second=369 amount=-1 +kerning first=315 second=374 amount=-3 +kerning first=69 second=69 amount=-2 +kerning first=70 second=369 amount=-1 +kerning first=377 second=192 amount=-1 +kerning first=337 second=104 amount=-1 +kerning first=369 second=109 amount=-1 +kerning first=100 second=244 amount=-1 +kerning first=260 second=279 amount=-1 +kerning first=111 second=229 amount=-1 +kerning first=324 second=227 amount=-1 +kerning first=120 second=109 amount=-1 +kerning first=288 second=227 amount=-1 +kerning first=261 second=109 amount=-1 +kerning first=252 second=227 amount=-1 +kerning first=296 second=279 amount=-2 +kerning first=364 second=284 amount=-1 +kerning first=1051 second=1085 amount=-1 +kerning first=75 second=229 amount=-1 +kerning first=1055 second=1084 amount=-1 +kerning first=83 second=279 amount=-1 +kerning first=256 second=284 amount=-3 +kerning first=356 second=232 amount=-3 +kerning first=1057 second=1054 amount=-1 +kerning first=288 second=229 amount=-1 +kerning first=278 second=44 amount=-1 +kerning first=324 second=229 amount=-1 +kerning first=105 second=305 amount=-2 +kerning first=84 second=109 amount=-3 +kerning first=216 second=229 amount=-1 +kerning first=69 second=305 amount=-1 +kerning first=119 second=279 amount=-3 +kerning first=220 second=284 amount=-1 +kerning first=87 second=334 amount=-3 +kerning first=350 second=44 amount=-4 +kerning first=252 second=229 amount=-1 +kerning first=210 second=305 amount=-1 +kerning first=339 second=267 amount=-1 +kerning first=252 second=257 amount=-1 +kerning first=225 second=249 amount=-1 +kerning first=268 second=65 amount=-3 +kerning first=375 second=267 amount=-3 +kerning first=106 second=371 amount=-1 +kerning first=288 second=257 amount=-1 +kerning first=282 second=305 amount=-1 +kerning first=267 second=267 amount=-1 +kerning first=255 second=118 amount=-1 +kerning first=246 second=305 amount=-1 +kerning first=303 second=267 amount=-3 +kerning first=216 second=257 amount=-1 +kerning first=8216 second=113 amount=-3 +kerning first=354 second=305 amount=-2 +kerning first=376 second=65 amount=-6 +kerning first=235 second=8250 amount=-2 +kerning first=232 second=361 amount=-2 +kerning first=75 second=257 amount=-1 +kerning first=212 second=202 amount=-2 +kerning first=368 second=279 amount=-2 +kerning first=196 second=361 amount=-3 +kerning first=111 second=257 amount=-1 +kerning first=71 second=202 amount=-1 +kerning first=201 second=219 amount=-2 +kerning first=304 second=361 amount=-2 +kerning first=347 second=347 amount=-3 +kerning first=214 second=209 amount=-2 +kerning first=268 second=361 amount=-2 +kerning first=171 second=374 amount=-3 +kerning first=362 second=121 amount=-1 +kerning first=356 second=202 amount=-1 +kerning first=256 second=254 amount=-2 +kerning first=205 second=244 amount=-2 +kerning first=326 second=121 amount=-2 +kerning first=66 second=374 amount=-3 +kerning first=284 second=202 amount=-1 +kerning first=328 second=254 amount=-2 +kerning first=277 second=244 amount=-1 +kerning first=254 second=121 amount=-3 +kerning first=84 second=79 amount=-3 +kerning first=354 second=69 amount=-1 +kerning first=286 second=66 amount=-1 +kerning first=195 second=267 amount=-1 +kerning first=231 second=267 amount=-1 +kerning first=115 second=254 amount=-2 +kerning first=282 second=69 amount=-2 +kerning first=214 second=66 amount=-2 +kerning first=90 second=267 amount=-1 +kerning first=113 second=121 amount=-1 +kerning first=324 second=257 amount=-1 +kerning first=77 second=121 amount=-2 +kerning first=1048 second=1116 amount=-1 +kerning first=315 second=82 amount=-2 +kerning first=87 second=66 amount=-1 +kerning first=257 second=353 amount=-1 +kerning first=73 second=332 amount=-2 +kerning first=8220 second=115 amount=-2 +kerning first=369 second=250 amount=-1 +kerning first=270 second=8221 amount=-2 +kerning first=203 second=69 amount=-2 +kerning first=264 second=66 amount=-3 +kerning first=201 second=209 amount=-2 +kerning first=379 second=302 amount=-1 +kerning first=199 second=316 amount=-1 +kerning first=338 second=205 amount=-2 +kerning first=366 second=347 amount=-2 +kerning first=214 second=72 amount=-2 +kerning first=78 second=216 amount=-2 +kerning first=67 second=199 amount=-3 +kerning first=370 second=192 amount=-4 +kerning first=1098 second=1096 amount=-1 +kerning first=221 second=76 amount=-1 +kerning first=286 second=72 amount=-1 +kerning first=376 second=79 amount=-3 +kerning first=334 second=192 amount=-4 +kerning first=374 second=205 amount=-1 +kerning first=66 second=82 amount=-4 +kerning first=193 second=339 amount=-1 +kerning first=336 second=66 amount=-2 +kerning first=122 second=242 amount=-1 +kerning first=187 second=229 amount=-1 +kerning first=262 second=192 amount=-3 +kerning first=86 second=242 amount=-3 +kerning first=223 second=229 amount=-1 +kerning first=80 second=76 amount=-1 +kerning first=266 second=205 amount=-3 +kerning first=227 second=242 amount=-1 +kerning first=82 second=229 amount=-2 +kerning first=280 second=199 amount=-1 +kerning first=118 second=229 amount=-3 +kerning first=310 second=8217 amount=-2 +kerning first=1037 second=1099 amount=-1 +kerning first=212 second=226 amount=-1 +kerning first=263 second=242 amount=-1 +kerning first=74 second=8249 amount=-4 +kerning first=248 second=226 amount=-1 +kerning first=290 second=382 amount=-1 +kerning first=89 second=205 amount=-1 +kerning first=371 second=242 amount=-3 +kerning first=284 second=226 amount=-1 +kerning first=68 second=8221 amount=-2 +kerning first=286 second=86 amount=-3 +kerning first=374 second=219 amount=-1 +kerning first=281 second=8221 amount=-2 +kerning first=219 second=216 amount=-1 +kerning first=356 second=226 amount=-5 +kerning first=99 second=119 amount=-2 +kerning first=338 second=219 amount=-2 +kerning first=317 second=8221 amount=-4 +kerning first=228 second=326 amount=-1 +kerning first=1043 second=1033 amount=-5 +kerning first=264 second=326 amount=-1 +kerning first=204 second=119 amount=-2 +kerning first=266 second=219 amount=-2 +kerning first=245 second=8221 amount=-2 +kerning first=327 second=216 amount=-2 +kerning first=240 second=119 amount=-2 +kerning first=235 second=316 amount=-3 +kerning first=1055 second=1092 amount=-1 +kerning first=84 second=103 amount=-4 +kerning first=194 second=219 amount=-3 +kerning first=1091 second=1092 amount=-2 +kerning first=381 second=209 amount=-1 +kerning first=354 second=333 amount=-3 +kerning first=307 second=316 amount=-2 +kerning first=87 second=326 amount=-3 +kerning first=89 second=219 amount=-1 +kerning first=199 second=302 amount=-3 +kerning first=105 second=333 amount=-1 +kerning first=214 second=86 amount=-2 +kerning first=71 second=226 amount=-1 +kerning first=8218 second=237 amount=-1 +kerning first=221 second=334 amount=-3 +kerning first=107 second=226 amount=-2 +kerning first=346 second=259 amount=-2 +kerning first=296 second=289 amount=-3 +kerning first=8217 second=231 amount=-3 +kerning first=378 second=246 amount=-1 +kerning first=310 second=259 amount=-1 +kerning first=1073 second=1085 amount=-1 +kerning first=337 second=116 amount=-1 +kerning first=369 second=103 amount=-3 +kerning first=315 second=356 amount=-3 +kerning first=84 second=369 amount=-2 +kerning first=1037 second=1085 amount=-1 +kerning first=75 second=253 amount=-3 +kerning first=283 second=375 amount=-2 +kerning first=333 second=103 amount=-2 +kerning first=231 second=269 amount=-1 +kerning first=84 second=363 amount=-2 +kerning first=382 second=259 amount=-1 +kerning first=371 second=363 amount=-1 +kerning first=111 second=253 amount=-3 +kerning first=337 second=122 amount=-2 +kerning first=69 second=45 amount=-2 +kerning first=195 second=269 amount=-1 +kerning first=120 second=363 amount=-3 +kerning first=287 second=263 amount=-2 +kerning first=1098 second=1082 amount=-1 +kerning first=261 second=103 amount=-1 +kerning first=234 second=246 amount=-1 +kerning first=303 second=269 amount=-3 +kerning first=109 second=112 amount=-1 +kerning first=193 second=116 amount=-1 +kerning first=225 second=103 amount=-2 +kerning first=267 second=269 amount=-1 +kerning first=225 second=363 amount=-1 +kerning first=274 second=259 amount=-1 +kerning first=252 second=253 amount=-3 +kerning first=282 second=45 amount=-2 +kerning first=375 second=269 amount=-3 +kerning first=261 second=363 amount=-1 +kerning first=378 second=252 amount=-2 +kerning first=120 second=103 amount=-2 +kerning first=8250 second=251 amount=-1 +kerning first=339 second=269 amount=-1 +kerning first=66 second=362 amount=-3 +kerning first=333 second=369 amount=-1 +kerning first=1055 second=1086 amount=-1 +kerning first=333 second=363 amount=-1 +kerning first=337 second=382 amount=-2 +kerning first=346 second=275 amount=-1 +kerning first=369 second=363 amount=-1 +kerning first=97 second=259 amount=-1 +kerning first=220 second=266 amount=-1 +kerning first=369 second=369 amount=-1 +kerning first=256 second=266 amount=-3 +kerning first=1044 second=1089 amount=-1 +kerning first=120 second=369 amount=-3 +kerning first=261 second=369 amount=-1 +kerning first=229 second=382 amount=-1 +kerning first=106 second=375 amount=-3 +kerning first=1116 second=1089 amount=-2 +kerning first=229 second=122 amount=-1 +kerning first=225 second=369 amount=-1 +kerning first=1080 second=1089 amount=-1 +kerning first=321 second=284 amount=-1 +kerning first=120 second=355 amount=-1 +kerning first=313 second=361 amount=-2 +kerning first=310 second=279 amount=-2 +kerning first=84 second=355 amount=-1 +kerning first=106 second=109 amount=-2 +kerning first=221 second=336 amount=-3 +kerning first=70 second=115 amount=-2 +kerning first=315 second=370 amount=-3 +kerning first=382 second=279 amount=-1 +kerning first=97 second=273 amount=-1 +kerning first=106 second=115 amount=-2 +kerning first=346 second=279 amount=-1 +kerning first=330 second=213 amount=-2 +kerning first=8217 second=214 amount=-2 +kerning first=261 second=355 amount=-1 +kerning first=355 second=115 amount=-1 +kerning first=97 second=279 amount=-1 +kerning first=70 second=109 amount=-1 +kerning first=79 second=280 amount=-2 +kerning first=378 second=232 amount=-1 +kerning first=283 second=115 amount=-2 +kerning first=199 second=296 amount=-3 +kerning first=1060 second=1070 amount=-1 +kerning first=1091 second=1086 amount=-2 +kerning first=1039 second=1097 amount=-1 +kerning first=229 second=108 amount=-1 +kerning first=324 second=253 amount=-2 +kerning first=193 second=108 amount=-2 +kerning first=89 second=380 amount=-3 +kerning first=8250 second=361 amount=-1 +kerning first=369 second=355 amount=-1 +kerning first=1045 second=1119 amount=-1 +kerning first=379 second=296 amount=-1 +kerning first=234 second=232 amount=-1 +kerning first=88 second=116 amount=-1 +kerning first=71 second=206 amount=-1 +kerning first=66 second=370 amount=-3 +kerning first=337 second=108 amount=-2 +kerning first=66 second=296 amount=-4 +kerning first=45 second=323 amount=-5 +kerning first=211 second=193 amount=-4 +kerning first=90 second=46 amount=-1 +kerning first=73 second=338 amount=-2 +kerning first=212 second=206 amount=-2 +kerning first=289 second=303 amount=-2 +kerning first=321 second=290 amount=-1 +kerning first=257 second=328 amount=-1 +kerning first=73 second=83 amount=-2 +kerning first=200 second=98 amount=-1 +kerning first=221 second=328 amount=-3 +kerning first=284 second=206 amount=-1 +kerning first=217 second=303 amount=-2 +kerning first=282 second=325 amount=-2 +kerning first=356 second=206 amount=-1 +kerning first=89 second=213 amount=-3 +kerning first=325 second=303 amount=-1 +kerning first=84 second=83 amount=-3 +kerning first=365 second=328 amount=-1 +kerning first=1073 second=1107 amount=-1 +kerning first=1037 second=1107 amount=-1 +kerning first=333 second=328 amount=-1 +kerning first=266 second=225 amount=-2 +kerning first=380 second=380 amount=-2 +kerning first=380 second=98 amount=-1 +kerning first=1067 second=1102 amount=-1 +kerning first=344 second=364 amount=-3 +kerning first=79 second=344 amount=-2 +kerning first=302 second=225 amount=-2 +kerning first=219 second=196 amount=-4 +kerning first=376 second=85 amount=-1 +kerning first=203 second=323 amount=-2 +kerning first=338 second=225 amount=-1 +kerning first=1091 second=1077 amount=-2 +kerning first=72 second=290 amount=-2 +kerning first=1030 second=1117 amount=-1 +kerning first=374 second=225 amount=-5 +kerning first=382 second=273 amount=-1 +kerning first=310 second=108 amount=-1 +kerning first=89 second=225 amount=-5 +kerning first=236 second=380 amount=-1 +kerning first=236 second=98 amount=-1 +kerning first=1073 second=1093 amount=-2 +kerning first=268 second=85 amount=-2 +kerning first=379 second=290 amount=-1 +kerning first=278 second=286 amount=-1 +kerning first=272 second=380 amount=-2 +kerning first=344 second=98 amount=-3 +kerning first=69 second=325 amount=-2 +kerning first=196 second=85 amount=-3 +kerning first=230 second=225 amount=-2 +kerning first=75 second=233 amount=-2 +kerning first=206 second=286 amount=-2 +kerning first=246 second=311 amount=-1 +kerning first=203 second=77 amount=-2 +kerning first=243 second=102 amount=-1 +kerning first=268 second=71 amount=-3 +kerning first=228 second=46 amount=-1 +kerning first=89 second=211 amount=-3 +kerning first=279 second=102 amount=-2 +kerning first=327 second=210 amount=-2 +kerning first=379 second=282 amount=-1 +kerning first=1105 second=1080 amount=-1 +kerning first=1113 second=1118 amount=-2 +kerning first=214 second=8217 amount=-2 +kerning first=105 second=311 amount=-1 +kerning first=351 second=102 amount=-2 +kerning first=304 second=71 amount=-2 +kerning first=336 second=46 amount=-3 +kerning first=252 second=233 amount=-1 +kerning first=69 second=311 amount=-1 +kerning first=1047 second=1040 amount=-2 +kerning first=66 second=102 amount=-3 +kerning first=219 second=210 amount=-1 +kerning first=65 second=286 amount=-3 +kerning first=73 second=352 amount=-2 +kerning first=266 second=211 amount=-3 +kerning first=102 second=102 amount=-1 +kerning first=87 second=46 amount=-5 +kerning first=214 second=352 amount=-1 +kerning first=196 second=71 amount=-3 +kerning first=76 second=317 amount=-2 +kerning first=194 second=211 amount=-3 +kerning first=78 second=210 amount=-2 +kerning first=187 second=221 amount=-4 +kerning first=374 second=211 amount=-3 +kerning first=264 second=45 amount=-4 +kerning first=82 second=235 amount=-3 +kerning first=272 second=112 amount=-1 +kerning first=1098 second=1090 amount=-1 +kerning first=82 second=221 amount=-3 +kerning first=118 second=235 amount=-3 +kerning first=302 second=211 amount=-2 +kerning first=198 second=252 amount=-2 +kerning first=236 second=112 amount=-1 +kerning first=344 second=366 amount=-3 +kerning first=338 second=211 amount=-1 +kerning first=234 second=252 amount=-2 +kerning first=200 second=112 amount=-2 +kerning first=207 second=350 amount=-2 +kerning first=259 second=235 amount=-1 +kerning first=334 second=200 amount=-2 +kerning first=376 second=71 amount=-3 +kerning first=364 second=234 amount=-2 +kerning first=229 second=110 amount=-1 +kerning first=66 second=350 amount=-4 +kerning first=1062 second=1090 amount=-1 +kerning first=1065 second=1086 amount=-1 +kerning first=282 second=311 amount=-1 +kerning first=262 second=200 amount=-3 +kerning first=195 second=275 amount=-1 +kerning first=196 second=353 amount=-2 +kerning first=315 second=350 amount=-1 +kerning first=187 second=237 amount=-1 +kerning first=122 second=250 amount=-2 +kerning first=337 second=110 amount=-1 +kerning first=200 second=378 amount=-2 +kerning first=232 second=353 amount=-2 +kerning first=118 second=237 amount=-2 +kerning first=86 second=250 amount=-2 +kerning first=218 second=113 amount=-2 +kerning first=330 second=171 amount=-4 +kerning first=256 second=112 amount=-3 +kerning first=90 second=275 amount=-1 +kerning first=268 second=353 amount=-2 +kerning first=227 second=250 amount=-1 +kerning first=366 second=171 amount=-5 +kerning first=272 second=378 amount=-2 +kerning first=304 second=353 amount=-2 +kerning first=113 second=113 amount=-1 +kerning first=79 second=260 amount=-4 +kerning first=380 second=100 amount=-1 +kerning first=117 second=171 amount=-2 +kerning first=362 second=113 amount=-2 +kerning first=362 second=365 amount=-1 +kerning first=1031 second=1073 amount=-1 +kerning first=380 second=112 amount=-3 +kerning first=213 second=8221 amount=-2 +kerning first=222 second=171 amount=-1 +kerning first=326 second=365 amount=-1 +kerning first=200 second=366 amount=-2 +kerning first=344 second=112 amount=-1 +kerning first=258 second=171 amount=-4 +kerning first=290 second=365 amount=-1 +kerning first=245 second=249 amount=-1 +kerning first=286 second=352 amount=-2 +kerning first=236 second=100 amount=-1 +kerning first=279 second=235 amount=-1 +kerning first=268 second=87 amount=-1 +kerning first=281 second=249 amount=-2 +kerning first=220 second=260 amount=-4 +kerning first=362 second=228 amount=-3 +kerning first=196 second=87 amount=-6 +kerning first=209 second=249 amount=-1 +kerning first=344 second=100 amount=-3 +kerning first=1098 second=1076 amount=-2 +kerning first=339 second=275 amount=-1 +kerning first=194 second=100 amount=-1 +kerning first=1069 second=1078 amount=-1 +kerning first=8250 second=257 amount=-1 +kerning first=77 second=113 amount=-2 +kerning first=1048 second=1102 amount=-1 +kerning first=375 second=275 amount=-3 +kerning first=364 second=260 amount=-4 +kerning first=286 second=354 amount=-3 +kerning first=86 second=262 amount=-3 +kerning first=1047 second=1052 amount=-2 +kerning first=267 second=275 amount=-1 +kerning first=1073 second=1091 amount=-2 +kerning first=303 second=275 amount=-3 +kerning first=72 second=288 amount=-2 +kerning first=1116 second=1077 amount=-2 +kerning first=85 second=198 amount=-4 +kerning first=268 second=339 amount=-2 +kerning first=371 second=248 amount=-3 +kerning first=211 second=377 amount=-2 +kerning first=272 second=364 amount=-1 +kerning first=304 second=339 amount=-2 +kerning first=263 second=248 amount=-1 +kerning first=367 second=223 amount=-1 +kerning first=1044 second=1077 amount=-1 +kerning first=196 second=339 amount=-1 +kerning first=362 second=99 amount=-2 +kerning first=1080 second=1077 amount=-1 +kerning first=195 second=289 amount=-3 +kerning first=232 second=339 amount=-1 +kerning first=69 second=327 amount=-2 +kerning first=118 second=223 amount=-1 +kerning first=371 second=8220 amount=-3 +kerning first=104 second=249 amount=-1 +kerning first=335 second=8220 amount=-2 +kerning first=1102 second=1117 amount=-1 +kerning first=267 second=289 amount=-3 +kerning first=321 second=288 amount=-1 +kerning first=86 second=248 amount=-3 +kerning first=223 second=223 amount=-1 +kerning first=303 second=289 amount=-1 +kerning first=210 second=327 amount=-2 +kerning first=122 second=248 amount=-1 +kerning first=187 second=223 amount=-2 +kerning first=45 second=84 amount=-4 +kerning first=263 second=8220 amount=-2 +kerning first=236 second=114 amount=-1 +kerning first=376 second=339 amount=-3 +kerning first=74 second=223 amount=-1 +kerning first=83 second=287 amount=-3 +kerning first=354 second=313 amount=-1 +kerning first=376 second=73 amount=-1 +kerning first=254 second=365 amount=-1 +kerning first=282 second=327 amount=-2 +kerning first=209 second=263 amount=-2 +kerning first=218 second=365 amount=-1 +kerning first=213 second=274 amount=-2 +kerning first=77 second=99 amount=-2 +kerning first=282 second=313 amount=-2 +kerning first=76 second=315 amount=-2 +kerning first=354 second=327 amount=-1 +kerning first=119 second=287 amount=-3 +kerning first=367 second=237 amount=-2 +kerning first=281 second=263 amount=-1 +kerning first=113 second=365 amount=-2 +kerning first=290 second=379 amount=-2 +kerning first=260 second=287 amount=-3 +kerning first=331 second=237 amount=-1 +kerning first=210 second=313 amount=-2 +kerning first=262 second=198 amount=-3 +kerning first=203 second=75 amount=-2 +kerning first=77 second=365 amount=-2 +kerning first=376 second=353 amount=-3 +kerning first=224 second=287 amount=-2 +kerning first=113 second=99 amount=-1 +kerning first=295 second=237 amount=-1 +kerning first=268 second=73 amount=-3 +kerning first=362 second=379 amount=-1 +kerning first=332 second=287 amount=-1 +kerning first=259 second=237 amount=-1 +kerning first=334 second=198 amount=-4 +kerning first=225 second=109 amount=-1 +kerning first=321 second=274 amount=-2 +kerning first=296 second=287 amount=-3 +kerning first=218 second=99 amount=-2 +kerning first=223 second=237 amount=-1 +kerning first=370 second=198 amount=-4 +kerning first=1102 second=1103 amount=-2 +kerning first=324 second=237 amount=-1 +kerning first=244 second=187 amount=-2 +kerning first=200 second=104 amount=-1 +kerning first=368 second=287 amount=-4 +kerning first=205 second=234 amount=-2 +kerning first=252 second=237 amount=-2 +kerning first=216 second=237 amount=-1 +kerning first=277 second=234 amount=-1 +kerning first=1055 second=1094 amount=-1 +kerning first=1116 second=1091 amount=-2 +kerning first=66 second=354 amount=-3 +kerning first=344 second=104 amount=-3 +kerning first=111 second=237 amount=-1 +kerning first=171 second=354 amount=-3 +kerning first=45 second=226 amount=-1 +kerning first=82 second=117 amount=-2 +kerning first=235 second=44 amount=-3 +kerning first=1116 second=1072 amount=-1 +kerning first=344 second=374 amount=-3 +kerning first=100 second=234 amount=-1 +kerning first=234 second=244 amount=-1 +kerning first=1098 second=1084 amount=-1 +kerning first=199 second=44 amount=-1 +kerning first=236 second=104 amount=-1 +kerning first=303 second=277 amount=-3 +kerning first=223 second=227 amount=-1 +kerning first=113 second=111 amount=-1 +kerning first=267 second=277 amount=-1 +kerning first=274 second=77 amount=-2 +kerning first=111 second=120 amount=-3 +kerning first=187 second=227 amount=-1 +kerning first=280 second=237 amount=-1 +kerning first=262 second=194 amount=-3 +kerning first=251 second=100 amount=-1 +kerning first=315 second=354 amount=-3 +kerning first=118 second=227 amount=-3 +kerning first=218 second=111 amount=-2 +kerning first=339 second=277 amount=-1 +kerning first=8250 second=259 amount=-1 +kerning first=73 second=74 amount=-1 +kerning first=82 second=227 amount=-2 +kerning first=367 second=227 amount=-1 +kerning first=90 second=277 amount=-1 +kerning first=331 second=227 amount=-1 +kerning first=1040 second=1054 amount=-3 +kerning first=85 second=194 amount=-4 +kerning first=231 second=277 amount=-1 +kerning first=192 second=314 amount=-2 +kerning first=214 second=74 amount=-2 +kerning first=295 second=227 amount=-1 +kerning first=1084 second=1104 amount=-1 +kerning first=195 second=277 amount=-1 +kerning first=259 second=227 amount=-1 +kerning first=77 second=111 amount=-2 +kerning first=1048 second=1104 amount=-1 +kerning first=376 second=351 amount=-3 +kerning first=264 second=314 amount=-1 +kerning first=286 second=74 amount=-1 +kerning first=332 second=8249 amount=-1 +kerning first=227 second=249 amount=-1 +kerning first=120 second=361 amount=-3 +kerning first=228 second=314 amount=-1 +kerning first=261 second=361 amount=-1 +kerning first=97 second=267 amount=-1 +kerning first=314 second=122 amount=-1 +kerning first=68 second=261 amount=-1 +kerning first=290 second=367 amount=-1 +kerning first=260 second=8249 amount=-4 +kerning first=106 second=121 amount=-3 +kerning first=66 second=364 amount=-3 +kerning first=203 second=327 amount=-2 +kerning first=353 second=257 amount=-1 +kerning first=104 second=261 amount=-1 +kerning first=326 second=367 amount=-1 +kerning first=1037 second=1089 amount=-1 +kerning first=1105 second=1074 amount=-1 +kerning first=333 second=361 amount=-1 +kerning first=346 second=267 amount=-1 +kerning first=245 second=257 amount=-1 +kerning first=218 second=367 amount=-1 +kerning first=263 second=254 amount=-2 +kerning first=315 second=364 amount=-3 +kerning first=196 second=351 amount=-2 +kerning first=281 second=257 amount=-2 +kerning first=254 second=367 amount=-1 +kerning first=224 second=8249 amount=-2 +kerning first=304 second=351 amount=-2 +kerning first=100 second=224 amount=-1 +kerning first=337 second=114 amount=-1 +kerning first=113 second=367 amount=-2 +kerning first=202 second=260 amount=-2 +kerning first=362 second=111 amount=-2 +kerning first=335 second=254 amount=-1 +kerning first=369 second=361 amount=-1 +kerning first=268 second=351 amount=-2 +kerning first=209 second=257 amount=-2 +kerning first=119 second=8249 amount=-4 +kerning first=371 second=254 amount=-1 +kerning first=45 second=327 amount=-5 +kerning first=205 second=224 amount=-2 +kerning first=1101 second=1117 amount=-1 +kerning first=283 second=117 amount=-2 +kerning first=272 second=374 amount=-2 +kerning first=353 second=261 amount=-1 +kerning first=77 second=367 amount=-2 +kerning first=78 second=105 amount=-1 +kerning first=8222 second=255 amount=-1 +kerning first=122 second=254 amount=-1 +kerning first=277 second=224 amount=-2 +kerning first=355 second=117 amount=-1 +kerning first=200 second=374 amount=-1 +kerning first=241 second=224 amount=-1 +kerning first=378 second=244 amount=-1 +kerning first=81 second=171 amount=-1 +kerning first=380 second=104 amount=-2 +kerning first=227 second=254 amount=-1 +kerning first=286 second=344 amount=-1 +kerning first=88 second=114 amount=1 +kerning first=1058 second=1057 amount=-1 +kerning first=209 second=261 amount=-2 +kerning first=263 second=250 amount=-2 +kerning first=84 second=361 amount=-2 +kerning first=245 second=261 amount=-1 +kerning first=371 second=250 amount=-1 +kerning first=281 second=261 amount=-2 +kerning first=335 second=250 amount=-1 +kerning first=77 second=101 amount=-2 +kerning first=338 second=221 amount=-1 +kerning first=113 second=101 amount=-1 +kerning first=311 second=337 amount=-3 +kerning first=378 second=240 amount=-1 +kerning first=347 second=331 amount=-2 +kerning first=275 second=337 amount=-1 +kerning first=266 second=221 amount=-1 +kerning first=333 second=97 amount=-1 +kerning first=218 second=101 amount=-2 +kerning first=275 second=331 amount=-2 +kerning first=1054 second=1038 amount=-3 +kerning first=369 second=97 amount=-1 +kerning first=1030 second=1107 amount=-1 +kerning first=278 second=290 amount=-1 +kerning first=194 second=221 amount=-6 +kerning first=106 second=117 amount=-1 +kerning first=70 second=117 amount=-1 +kerning first=362 second=101 amount=-2 +kerning first=98 second=331 amount=-1 +kerning first=279 second=98 amount=-2 +kerning first=1057 second=1062 amount=-1 +kerning first=97 second=271 amount=-1 +kerning first=221 second=338 amount=-3 +kerning first=243 second=98 amount=-1 +kerning first=356 second=214 amount=-3 +kerning first=206 second=290 amount=-2 +kerning first=104 second=251 amount=-1 +kerning first=351 second=98 amount=-2 +kerning first=364 second=264 amount=-1 +kerning first=328 second=8221 amount=-4 +kerning first=315 second=98 amount=-2 +kerning first=209 second=251 amount=-2 +kerning first=102 second=98 amount=4 +kerning first=234 second=240 amount=-1 +kerning first=66 second=98 amount=-3 +kerning first=337 second=380 amount=-2 +kerning first=281 second=251 amount=-2 +kerning first=1100 second=1113 amount=-1 +kerning first=256 second=264 amount=-3 +kerning first=1063 second=1084 amount=-1 +kerning first=65 second=290 amount=-3 +kerning first=245 second=251 amount=-1 +kerning first=220 second=264 amount=-1 +kerning first=283 second=109 amount=-2 +kerning first=382 second=271 amount=-1 +kerning first=80 second=330 amount=-1 +kerning first=290 second=378 amount=-1 +kerning first=278 second=298 amount=-2 +kerning first=112 second=311 amount=-1 +kerning first=282 second=317 amount=-2 +kerning first=317 second=251 amount=-2 +kerning first=66 second=90 amount=-4 +kerning first=1098 second=1080 amount=-1 +kerning first=76 second=311 amount=-2 +kerning first=284 second=249 amount=-1 +kerning first=201 second=201 amount=-2 +kerning first=350 second=298 amount=-3 +kerning first=203 second=71 amount=-1 +kerning first=268 second=77 amount=-3 +kerning first=381 second=207 amount=-1 +kerning first=354 second=317 amount=-1 +kerning first=71 second=220 amount=-1 +kerning first=379 second=310 amount=-1 +kerning first=284 second=220 amount=-1 +kerning first=370 second=194 amount=-4 +kerning first=201 second=207 amount=-2 +kerning first=212 second=220 amount=-1 +kerning first=351 second=46 amount=-2 +kerning first=210 second=317 amount=-2 +kerning first=368 second=291 amount=-4 +kerning first=221 second=330 amount=-1 +kerning first=376 second=77 amount=-1 +kerning first=334 second=194 amount=-4 +kerning first=332 second=291 amount=-1 +kerning first=194 second=213 amount=-3 +kerning first=228 second=324 amount=-1 +kerning first=272 second=368 amount=-1 +kerning first=84 second=97 amount=-5 +kerning first=296 second=291 amount=-3 +kerning first=362 second=226 amount=-3 +kerning first=214 second=84 amount=-2 +kerning first=120 second=97 amount=-2 +kerning first=260 second=291 amount=-3 +kerning first=266 second=213 amount=-3 +kerning first=356 second=220 amount=-1 +kerning first=200 second=368 amount=-2 +kerning first=310 second=347 amount=-1 +kerning first=224 second=291 amount=-2 +kerning first=264 second=324 amount=-1 +kerning first=274 second=316 amount=-1 +kerning first=211 second=381 amount=-2 +kerning first=69 second=317 amount=-2 +kerning first=338 second=213 amount=-1 +kerning first=119 second=45 amount=-4 +kerning first=261 second=97 amount=-1 +kerning first=289 second=311 amount=-2 +kerning first=119 second=291 amount=-3 +kerning first=302 second=213 amount=-2 +kerning first=352 second=187 amount=-1 +kerning first=1037 second=1101 amount=-1 +kerning first=253 second=311 amount=-2 +kerning first=83 second=291 amount=-3 +kerning first=344 second=368 amount=-3 +kerning first=1098 second=1088 amount=-1 +kerning first=374 second=213 amount=-3 +kerning first=87 second=324 amount=-3 +kerning first=286 second=84 amount=-3 +kerning first=225 second=97 amount=-1 +kerning first=213 second=278 amount=-2 +kerning first=218 second=375 amount=-1 +kerning first=100 second=228 amount=-1 +kerning first=280 second=193 amount=-2 +kerning first=209 second=253 amount=-2 +kerning first=284 second=218 amount=-1 +kerning first=8220 second=111 amount=-3 +kerning first=97 second=311 amount=-1 +kerning first=245 second=253 amount=-3 +kerning first=113 second=375 amount=-1 +kerning first=344 second=263 amount=-3 +kerning first=208 second=193 amount=-4 +kerning first=281 second=253 amount=-2 +kerning first=77 second=375 amount=-2 +kerning first=212 second=218 amount=-1 +kerning first=1051 second=1075 amount=-1 +kerning first=317 second=253 amount=-3 +kerning first=362 second=375 amount=-1 +kerning first=80 second=70 amount=-1 +kerning first=321 second=278 amount=-2 +kerning first=353 second=253 amount=-3 +kerning first=326 second=375 amount=-2 +kerning first=252 second=243 amount=-1 +kerning first=362 second=103 amount=-4 +kerning first=310 second=242 amount=-2 +kerning first=286 second=78 amount=-1 +kerning first=352 second=193 amount=-4 +kerning first=326 second=103 amount=-2 +kerning first=254 second=375 amount=-3 +kerning first=356 second=218 amount=-1 +kerning first=76 second=45 amount=-1 +kerning first=290 second=103 amount=-3 +kerning first=381 second=203 amount=-1 +kerning first=214 second=78 amount=-2 +kerning first=337 second=120 amount=-3 +kerning first=199 second=310 amount=-3 +kerning first=1073 second=1095 amount=-1 +kerning first=208 second=45 amount=-1 +kerning first=1037 second=1095 amount=-1 +kerning first=221 second=70 amount=-1 +kerning first=1055 second=1100 amount=-1 +kerning first=381 second=201 amount=-1 +kerning first=232 second=345 amount=-1 +kerning first=70 second=213 amount=-1 +kerning first=229 second=120 amount=-1 +kerning first=71 second=218 amount=-1 +kerning first=228 second=253 amount=-3 +kerning first=196 second=104 amount=-2 +kerning first=171 second=356 amount=-3 +kerning first=104 second=253 amount=-2 +kerning first=201 second=203 amount=-2 +kerning first=380 second=108 amount=-2 +kerning first=362 second=105 amount=-2 +kerning first=229 second=118 amount=-3 +kerning first=344 second=370 amount=-3 +kerning first=344 second=108 amount=-3 +kerning first=193 second=118 amount=-3 +kerning first=112 second=305 amount=-1 +kerning first=75 second=245 amount=-2 +kerning first=203 second=65 amount=-2 +kerning first=76 second=305 amount=-2 +kerning first=326 second=105 amount=-1 +kerning first=217 second=305 amount=-2 +kerning first=195 second=283 amount=-1 +kerning first=1084 second=1108 amount=-1 +kerning first=218 second=105 amount=-2 +kerning first=79 second=270 amount=-2 +kerning first=213 second=280 amount=-2 +kerning first=1048 second=1108 amount=-1 +kerning first=254 second=105 amount=-1 +kerning first=289 second=305 amount=-1 +kerning first=252 second=245 amount=-1 +kerning first=90 second=283 amount=-1 +kerning first=364 second=266 amount=-1 +kerning first=113 second=105 amount=-1 +kerning first=339 second=245 amount=-1 +kerning first=253 second=305 amount=-2 +kerning first=1047 second=1048 amount=-2 +kerning first=88 second=118 amount=-3 +kerning first=192 second=318 amount=-2 +kerning first=252 second=241 amount=-1 +kerning first=339 second=283 amount=-1 +kerning first=1051 second=1073 amount=-1 +kerning first=275 second=335 amount=-1 +kerning first=77 second=105 amount=-1 +kerning first=311 second=335 amount=-3 +kerning first=324 second=241 amount=-1 +kerning first=267 second=283 amount=-1 +kerning first=202 second=365 amount=-2 +kerning first=231 second=283 amount=-1 +kerning first=277 second=228 amount=-2 +kerning first=236 second=108 amount=-2 +kerning first=200 second=370 amount=-2 +kerning first=200 second=108 amount=-1 +kerning first=307 second=230 amount=-2 +kerning first=205 second=228 amount=-2 +kerning first=225 second=105 amount=-1 +kerning first=111 second=241 amount=-1 +kerning first=375 second=283 amount=-3 +kerning first=67 second=193 amount=-3 +kerning first=231 second=281 amount=-1 +kerning first=367 second=242 amount=-1 +kerning first=45 second=224 amount=-1 +kerning first=113 second=107 amount=-2 +kerning first=303 second=281 amount=-3 +kerning first=86 second=256 amount=-6 +kerning first=254 second=107 amount=-1 +kerning first=221 second=66 amount=-1 +kerning first=339 second=281 amount=-1 +kerning first=118 second=231 amount=-3 +kerning first=1073 second=1097 amount=-1 +kerning first=90 second=281 amount=-1 +kerning first=230 second=261 amount=-2 +kerning first=1065 second=1047 amount=-1 +kerning first=353 second=255 amount=-3 +kerning first=259 second=231 amount=-1 +kerning first=381 second=205 amount=-1 +kerning first=1037 second=1097 amount=-1 +kerning first=221 second=332 amount=-3 +kerning first=321 second=280 amount=-2 +kerning first=201 second=205 amount=-2 +kerning first=242 second=8250 amount=-2 +kerning first=268 second=81 amount=-3 +kerning first=281 second=255 amount=-2 +kerning first=326 second=371 amount=-1 +kerning first=104 second=257 amount=-1 +kerning first=1055 second=1098 amount=-1 +kerning first=203 second=67 amount=-1 +kerning first=245 second=255 amount=-3 +kerning first=376 second=347 amount=-3 +kerning first=209 second=255 amount=-2 +kerning first=304 second=81 amount=-2 +kerning first=310 second=345 amount=1 +kerning first=304 second=347 amount=-2 +kerning first=113 second=371 amount=-2 +kerning first=67 second=304 amount=-3 +kerning first=104 second=255 amount=-2 +kerning first=268 second=347 amount=-2 +kerning first=290 second=107 amount=-1 +kerning first=376 second=81 amount=-3 +kerning first=232 second=347 amount=-2 +kerning first=196 second=347 amount=-2 +kerning first=254 second=371 amount=-1 +kerning first=350 second=8250 amount=-1 +kerning first=331 second=229 amount=-1 +kerning first=80 second=68 amount=-1 +kerning first=295 second=291 amount=-2 +kerning first=85 second=192 amount=-4 +kerning first=367 second=229 amount=-1 +kerning first=376 second=345 amount=-1 +kerning first=194 second=217 amount=-3 +kerning first=286 second=80 amount=-1 +kerning first=75 second=334 amount=-3 +kerning first=259 second=229 amount=-1 +kerning first=234 second=242 amount=-1 +kerning first=295 second=229 amount=-1 +kerning first=321 second=282 amount=-2 +kerning first=266 second=217 amount=-2 +kerning first=73 second=346 amount=-2 +kerning first=8217 second=224 amount=-6 +kerning first=274 second=318 amount=-1 +kerning first=338 second=217 amount=-2 +kerning first=213 second=282 amount=-2 +kerning first=196 second=81 amount=-3 +kerning first=374 second=217 amount=-1 +kerning first=214 second=8221 amount=-2 +kerning first=221 second=68 amount=-1 +kerning first=214 second=80 amount=-2 +kerning first=241 second=230 amount=-1 +kerning first=70 second=119 amount=-1 +kerning first=214 second=346 amount=-1 +kerning first=75 second=243 amount=-2 +kerning first=344 second=106 amount=-1 +kerning first=277 second=230 amount=-2 +kerning first=106 second=119 amount=-3 +kerning first=253 second=307 amount=-2 +kerning first=197 second=244 amount=-1 +kerning first=289 second=307 amount=-2 +kerning first=8250 second=116 amount=-1 +kerning first=272 second=106 amount=-1 +kerning first=205 second=230 amount=-2 +kerning first=275 second=333 amount=-1 +kerning first=375 second=281 amount=-3 +kerning first=365 second=339 amount=-1 +kerning first=100 second=230 amount=-1 +kerning first=283 second=119 amount=-2 +kerning first=380 second=106 amount=-2 +kerning first=311 second=333 amount=-3 +kerning first=286 second=346 amount=-2 +kerning first=89 second=217 amount=-1 +kerning first=355 second=119 amount=-1 +kerning first=314 second=275 amount=-1 +kerning first=382 second=119 amount=-2 +kerning first=89 second=100 amount=-3 +kerning first=112 second=230 amount=-1 +kerning first=367 second=44 amount=-2 +kerning first=367 second=45 amount=-2 +kerning first=66 second=46 amount=-4 +kerning first=350 second=275 amount=-1 +kerning first=80 second=353 amount=-1 +kerning first=356 second=346 amount=-3 +kerning first=333 second=249 amount=-1 +kerning first=213 second=65 amount=-4 +kerning first=66 second=69 amount=-4 +kerning first=321 second=70 amount=-2 +kerning first=66 second=72 amount=-4 +kerning first=84 second=73 amount=-1 +kerning first=78 second=74 amount=-1 +kerning first=98 second=353 amount=-2 +kerning first=66 second=79 amount=-3 +kerning first=321 second=80 amount=-2 +kerning first=76 second=81 amount=-1 +kerning first=199 second=82 amount=-3 +kerning first=381 second=199 amount=-1 +kerning first=193 second=84 amount=-6 +kerning first=213 second=86 amount=-2 +kerning first=66 second=87 amount=-3 +kerning first=363 second=97 amount=-1 +kerning first=110 second=98 amount=-2 +kerning first=235 second=99 amount=-1 +kerning first=377 second=100 amount=-1 +kerning first=66 second=101 amount=-1 +kerning first=193 second=102 amount=-1 +kerning first=351 second=307 amount=-2 +kerning first=88 second=104 amount=-1 +kerning first=187 second=105 amount=-1 +kerning first=102 second=106 amount=-1 +kerning first=66 second=107 amount=-3 +kerning first=235 second=108 amount=-3 +kerning first=8217 second=109 amount=-2 +kerning first=263 second=110 amount=-2 +kerning first=311 second=111 amount=-3 +kerning first=355 second=112 amount=-1 +kerning first=269 second=113 amount=-1 +kerning first=197 second=115 amount=-2 +kerning first=287 second=116 amount=-1 +kerning first=100 second=117 amount=-1 +kerning first=221 second=118 amount=-3 +kerning first=249 second=119 amount=-3 +kerning first=313 second=120 amount=-1 +kerning first=355 second=122 amount=-1 +kerning first=198 second=256 amount=-2 +kerning first=205 second=67 amount=-2 +kerning first=65 second=275 amount=-1 +kerning first=101 second=275 amount=-1 +kerning first=66 second=187 amount=-2 +kerning first=84 second=249 amount=-1 +kerning first=219 second=192 amount=-4 +kerning first=221 second=194 amount=-6 +kerning first=187 second=195 amount=-4 +kerning first=66 second=196 amount=-5 +kerning first=68 second=197 amount=-4 +kerning first=84 second=198 amount=-6 +kerning first=272 second=370 amount=-1 +kerning first=86 second=201 amount=-1 +kerning first=317 second=204 amount=-2 +kerning first=80 second=207 amount=-1 +kerning first=193 second=211 amount=-3 +kerning first=76 second=212 amount=-1 +kerning first=313 second=213 amount=-1 +kerning first=84 second=214 amount=-3 +kerning first=251 second=8217 amount=-3 +kerning first=315 second=218 amount=-3 +kerning first=197 second=219 amount=-3 +kerning first=351 second=223 amount=-1 +kerning first=249 second=224 amount=-1 +kerning first=323 second=225 amount=-2 +kerning first=211 second=227 amount=-1 +kerning first=86 second=228 amount=-4 +kerning first=243 second=229 amount=-1 +kerning first=325 second=230 amount=-2 +kerning first=217 second=231 amount=-2 +kerning first=235 second=233 amount=-1 +kerning first=303 second=234 amount=-3 +kerning first=261 second=235 amount=-1 +kerning first=72 second=237 amount=-1 +kerning first=330 second=45 amount=-4 +kerning first=120 second=240 amount=-2 +kerning first=80 second=242 amount=-1 +kerning first=365 second=243 amount=-1 +kerning first=8217 second=245 amount=-3 +kerning first=112 second=316 amount=-2 +kerning first=291 second=248 amount=-2 +kerning first=317 second=249 amount=-2 +kerning first=76 second=251 amount=-2 +kerning first=235 second=252 amount=-2 +kerning first=106 second=253 amount=-3 +kerning first=305 second=254 amount=-2 +kerning first=351 second=255 amount=-3 +kerning first=251 second=259 amount=-1 +kerning first=84 second=260 amount=-6 +kerning first=74 second=261 amount=-3 +kerning first=86 second=263 amount=-3 +kerning first=379 second=266 amount=-1 +kerning first=106 second=267 amount=-1 +kerning first=315 second=268 amount=-1 +kerning first=377 second=269 amount=-1 +kerning first=84 second=270 amount=-1 +kerning first=76 second=274 amount=-2 +kerning first=263 second=275 amount=-1 +kerning first=229 second=277 amount=-1 +kerning first=76 second=278 amount=-2 +kerning first=289 second=279 amount=-2 +kerning first=377 second=280 amount=-1 +kerning first=279 second=281 amount=-1 +kerning first=68 second=282 amount=-2 +kerning first=195 second=284 amount=-3 +kerning first=86 second=286 amount=-3 +kerning first=112 second=287 amount=-2 +kerning first=76 second=288 amount=-1 +kerning first=229 second=289 amount=-2 +kerning first=114 second=291 amount=-2 +kerning first=1078 second=1095 amount=-1 +kerning first=217 second=230 amount=-3 +kerning first=76 second=302 amount=-2 +kerning first=377 second=303 amount=-1 +kerning first=379 second=304 amount=-1 +kerning first=321 second=305 amount=-2 +kerning first=225 second=307 amount=-1 +kerning first=353 second=311 amount=-1 +kerning first=321 second=313 amount=-2 +kerning first=263 second=314 amount=-3 +kerning first=249 second=316 amount=-2 +kerning first=224 second=289 amount=-2 +kerning first=314 second=116 amount=-1 +kerning first=313 second=323 amount=-2 +kerning first=261 second=324 amount=-1 +kerning first=347 second=326 amount=-2 +kerning first=313 second=327 amount=-2 +kerning first=350 second=379 amount=-1 +kerning first=337 second=331 amount=-1 +kerning first=86 second=332 amount=-3 +kerning first=371 second=333 amount=-3 +kerning first=323 second=335 amount=-2 +kerning first=8217 second=336 amount=-2 +kerning first=205 second=338 amount=-2 +kerning first=225 second=339 amount=-1 +kerning first=370 second=237 amount=-2 +kerning first=98 second=345 amount=-1 +kerning first=8217 second=346 amount=-3 +kerning first=120 second=347 amount=-3 +kerning first=221 second=350 amount=-3 +kerning first=305 second=351 amount=-1 +kerning first=201 second=352 amount=-2 +kerning first=365 second=353 amount=-2 +kerning first=199 second=354 amount=-1 +kerning first=333 second=355 amount=-1 +kerning first=195 second=356 amount=-6 +kerning first=334 second=237 amount=-1 +kerning first=78 second=361 amount=-2 +kerning first=66 second=363 amount=-3 +kerning first=68 second=364 amount=-1 +kerning first=321 second=365 amount=-2 +kerning first=100 second=367 amount=-1 +kerning first=86 second=368 amount=-1 +kerning first=249 second=371 amount=-1 +kerning first=222 second=313 amount=-2 +kerning first=66 second=375 amount=-3 +kerning first=379 second=378 amount=-3 +kerning first=76 second=382 amount=-3 +kerning first=311 second=339 amount=-3 +kerning first=291 second=303 amount=-2 +kerning first=81 second=313 amount=-2 +kerning first=1062 second=1086 amount=-1 +kerning first=262 second=237 amount=-1 +kerning first=1088 second=1091 amount=-1 +kerning first=235 second=244 amount=-1 +kerning first=207 second=263 amount=-2 +kerning first=226 second=237 amount=-1 +kerning first=69 second=199 amount=-1 +kerning first=1079 second=1084 amount=-1 +kerning first=275 second=339 amount=-1 +kerning first=279 second=263 amount=-1 +kerning first=45 second=313 amount=-5 +kerning first=72 second=334 amount=-2 +kerning first=274 second=379 amount=-1 +kerning first=364 second=365 amount=-1 +kerning first=71 second=346 amount=-2 +kerning first=288 second=270 amount=-1 +kerning first=86 second=225 amount=-5 +kerning first=328 second=365 amount=-1 +kerning first=346 second=379 amount=-1 +kerning first=122 second=225 amount=-1 +kerning first=66 second=263 amount=-1 +kerning first=1080 second=1072 amount=-1 +kerning first=75 second=268 amount=-3 +kerning first=102 second=263 amount=-1 +kerning first=256 second=365 amount=-3 +kerning first=1044 second=1072 amount=-1 +kerning first=1061 second=1098 amount=-3 +kerning first=103 second=251 amount=-1 +kerning first=83 second=289 amount=-3 +kerning first=67 second=251 amount=-2 +kerning first=212 second=346 amount=-1 +kerning first=119 second=289 amount=-3 +kerning first=115 second=365 amount=-1 +kerning first=1045 second=1060 amount=-1 +kerning first=1105 second=1117 amount=-1 +kerning first=216 second=270 amount=-2 +kerning first=377 second=296 amount=-1 +kerning first=311 second=8221 amount=-2 +kerning first=313 second=315 amount=-2 +kerning first=212 second=374 amount=-2 +kerning first=280 second=251 amount=-2 +kerning first=374 second=72 amount=-1 +kerning first=257 second=121 amount=-3 +kerning first=244 second=251 amount=-1 +kerning first=120 second=277 amount=-2 +kerning first=338 second=72 amount=-2 +kerning first=251 second=254 amount=-2 +kerning first=221 second=121 amount=-3 +kerning first=352 second=251 amount=-1 +kerning first=261 second=277 amount=-1 +kerning first=287 second=254 amount=-1 +kerning first=71 second=374 amount=-3 +kerning first=316 second=251 amount=-2 +kerning first=225 second=277 amount=-1 +kerning first=202 second=351 amount=-1 +kerning first=374 second=120 amount=-2 +kerning first=89 second=231 amount=-3 +kerning first=218 second=245 amount=-2 +kerning first=116 second=121 amount=-1 +kerning first=1027 second=1074 amount=-2 +kerning first=266 second=381 amount=-2 +kerning first=1063 second=1074 amount=-1 +kerning first=203 second=79 amount=-1 +kerning first=84 second=277 amount=-3 +kerning first=311 second=367 amount=-1 +kerning first=110 second=254 amount=-2 +kerning first=1025 second=1118 amount=-1 +kerning first=1057 second=1105 amount=-1 +kerning first=83 second=261 amount=-2 +kerning first=219 second=117 amount=-1 +kerning first=1052 second=1119 amount=-1 +kerning first=379 second=244 amount=-1 +kerning first=356 second=114 amount=-1 +kerning first=275 second=367 amount=-2 +kerning first=376 second=76 amount=-1 +kerning first=1108 second=1081 amount=-1 +kerning first=221 second=381 amount=-3 +kerning first=248 second=114 amount=-1 +kerning first=291 second=117 amount=-1 +kerning first=224 second=261 amount=-1 +kerning first=203 second=367 amount=-2 +kerning first=255 second=117 amount=-1 +kerning first=89 second=72 amount=-1 +kerning first=205 second=83 amount=-2 +kerning first=310 second=351 amount=-1 +kerning first=381 second=192 amount=-1 +kerning first=268 second=76 amount=-3 +kerning first=354 second=199 amount=-3 +kerning first=307 second=232 amount=-1 +kerning first=98 second=367 amount=-1 +kerning first=327 second=117 amount=-2 +kerning first=196 second=336 amount=-3 +kerning first=284 second=374 amount=-3 +kerning first=365 second=121 amount=-3 +kerning first=1114 second=1096 amount=-1 +kerning first=382 second=351 amount=-2 +kerning first=1072 second=1081 amount=-1 +kerning first=194 second=108 amount=-2 +kerning first=313 second=83 amount=-1 +kerning first=346 second=351 amount=-1 +kerning first=266 second=72 amount=-3 +kerning first=194 second=8217 amount=-5 +kerning first=268 second=336 amount=-3 +kerning first=66 second=291 amount=-4 +kerning first=212 second=86 amount=-2 +kerning first=347 second=107 amount=-1 +kerning first=256 second=337 amount=-1 +kerning first=8217 second=234 amount=-3 +kerning first=275 second=102 amount=-2 +kerning first=221 second=249 amount=-1 +kerning first=220 second=337 amount=-2 +kerning first=233 second=240 amount=-1 +kerning first=1045 second=1088 amount=-1 +kerning first=210 second=171 amount=-1 +kerning first=269 second=240 amount=-1 +kerning first=317 second=382 amount=-3 +kerning first=203 second=107 amount=-1 +kerning first=353 second=382 amount=-2 +kerning first=8216 second=243 amount=-3 +kerning first=296 second=261 amount=-2 +kerning first=364 second=337 amount=-2 +kerning first=377 second=240 amount=-1 +kerning first=336 second=196 amount=-4 +kerning first=275 second=107 amount=-2 +kerning first=368 second=261 amount=-3 +kerning first=199 second=216 amount=-3 +kerning first=8222 second=370 amount=-3 +kerning first=78 second=117 amount=-2 +kerning first=1108 second=1116 amount=-1 +kerning first=262 second=209 amount=-3 +kerning first=1069 second=1024 amount=-1 +kerning first=1069 second=1025 amount=-1 +kerning first=1069 second=1030 amount=-1 +kerning first=1069 second=1031 amount=-1 +kerning first=1059 second=1033 amount=-5 +kerning first=1069 second=1034 amount=-1 +kerning first=1047 second=1036 amount=-2 +kerning first=1069 second=1037 amount=-1 +kerning first=71 second=86 amount=-3 +kerning first=1069 second=1039 amount=-1 +kerning first=1059 second=1040 amount=-6 +kerning first=1069 second=1041 amount=-1 +kerning first=1069 second=1043 amount=-1 +kerning first=1045 second=1045 amount=-1 +kerning first=379 second=216 amount=-1 +kerning first=1069 second=1048 amount=-1 +kerning first=1069 second=1049 amount=-1 +kerning first=266 second=100 amount=-2 +kerning first=1059 second=1051 amount=-5 +kerning first=1069 second=1052 amount=-1 +kerning first=78 second=382 amount=-1 +kerning first=1059 second=1054 amount=-3 +kerning first=1069 second=1055 amount=-1 +kerning first=1045 second=1056 amount=-1 +kerning first=1059 second=1057 amount=-3 +kerning first=1025 second=1058 amount=-1 +kerning first=1069 second=1059 amount=-3 +kerning first=1043 second=1060 amount=-1 +kerning first=1069 second=1062 amount=-1 +kerning first=1069 second=1063 amount=-2 +kerning first=282 second=171 amount=-2 +kerning first=302 second=100 amount=-2 +kerning first=1025 second=1067 amount=-1 +kerning first=197 second=240 amount=-1 +kerning first=1069 second=1070 amount=-1 +kerning first=1059 second=1072 amount=-4 +kerning first=1059 second=1073 amount=-3 +kerning first=1039 second=1074 amount=-1 +kerning first=1059 second=1075 amount=-4 +kerning first=1059 second=1076 amount=-5 +kerning first=1059 second=1077 amount=-4 +kerning first=1059 second=1078 amount=-3 +kerning first=1059 second=1079 amount=-3 +kerning first=1059 second=1080 amount=-4 +kerning first=1077 second=1081 amount=-1 +kerning first=1113 second=1082 amount=-1 +kerning first=76 second=202 amount=-2 +kerning first=1059 second=1084 amount=-4 +kerning first=1059 second=1085 amount=-4 +kerning first=1059 second=1086 amount=-4 +kerning first=334 second=209 amount=-2 +kerning first=1055 second=1088 amount=-1 +kerning first=1119 second=1089 amount=-1 +kerning first=1047 second=1090 amount=-1 +kerning first=1069 second=1091 amount=-1 +kerning first=1059 second=1092 amount=-4 +kerning first=1059 second=1093 amount=-3 +kerning first=1105 second=1095 amount=-1 +kerning first=1059 second=1096 amount=-4 +kerning first=354 second=171 amount=-5 +kerning first=374 second=100 amount=-3 +kerning first=1055 second=1099 amount=-1 +kerning first=1113 second=1100 amount=-1 +kerning first=1027 second=1101 amount=-1 +kerning first=1027 second=1102 amount=-2 +kerning first=1057 second=1103 amount=-1 +kerning first=1059 second=1104 amount=-4 +kerning first=1061 second=1105 amount=-2 +kerning first=1059 second=1107 amount=-4 +kerning first=1039 second=1108 amount=-1 +kerning first=246 second=227 amount=-1 +kerning first=1059 second=1113 amount=-5 +kerning first=1059 second=1114 amount=-4 +kerning first=1059 second=1116 amount=-4 +kerning first=268 second=252 amount=-2 +kerning first=214 second=350 amount=-1 +kerning first=1057 second=1119 amount=-1 +kerning first=353 second=254 amount=-2 +kerning first=210 second=227 amount=-1 +kerning first=304 second=252 amount=-1 +kerning first=73 second=350 amount=-2 +kerning first=105 second=227 amount=-2 +kerning first=376 second=252 amount=-1 +kerning first=120 second=305 amount=-1 +kerning first=362 second=246 amount=-2 +kerning first=1057 second=1031 amount=-1 +kerning first=84 second=305 amount=-2 +kerning first=365 second=8217 amount=-3 +kerning first=354 second=227 amount=-5 +kerning first=374 second=44 amount=-5 +kerning first=225 second=305 amount=-1 +kerning first=1118 second=1076 amount=-3 +kerning first=196 second=252 amount=-3 +kerning first=286 second=350 amount=-2 +kerning first=66 second=207 amount=-4 +kerning first=315 second=206 amount=-2 +kerning first=282 second=227 amount=-1 +kerning first=232 second=252 amount=-2 +kerning first=8217 second=287 amount=-4 +kerning first=264 second=356 amount=-1 +kerning first=218 second=246 amount=-2 +kerning first=74 second=226 amount=-3 +kerning first=261 second=305 amount=-1 +kerning first=209 second=382 amount=-1 +kerning first=351 second=291 amount=-3 +kerning first=332 second=317 amount=-2 +kerning first=110 second=226 amount=-1 +kerning first=369 second=305 amount=-1 +kerning first=200 second=260 amount=-2 +kerning first=245 second=382 amount=-2 +kerning first=315 second=291 amount=-3 +kerning first=225 second=45 amount=-2 +kerning first=192 second=356 amount=-6 +kerning first=218 second=121 amount=-1 +kerning first=113 second=246 amount=-1 +kerning first=333 second=305 amount=-1 +kerning first=281 second=382 amount=-2 +kerning first=279 second=291 amount=-3 +kerning first=112 second=44 amount=-3 +kerning first=201 second=103 amount=-3 +kerning first=77 second=246 amount=-2 +kerning first=272 second=260 amount=-4 +kerning first=243 second=291 amount=-2 +kerning first=321 second=362 amount=-3 +kerning first=69 second=227 amount=-1 +kerning first=251 second=226 amount=-1 +kerning first=207 second=291 amount=-3 +kerning first=315 second=207 amount=-2 +kerning first=261 second=45 amount=-2 +kerning first=287 second=226 amount=-3 +kerning first=68 second=382 amount=-2 +kerning first=369 second=45 amount=-2 +kerning first=323 second=226 amount=-2 +kerning first=104 second=382 amount=-1 +kerning first=102 second=291 amount=-2 +kerning first=304 second=336 amount=-2 +kerning first=8220 second=195 amount=-8 +kerning first=193 second=232 amount=-1 +kerning first=366 second=109 amount=-2 +kerning first=376 second=336 amount=-3 +kerning first=368 second=365 amount=-1 +kerning first=200 second=115 amount=-1 +kerning first=117 second=109 amount=-1 +kerning first=236 second=115 amount=-2 +kerning first=283 second=187 amount=-2 +kerning first=377 second=212 amount=-1 +kerning first=381 second=103 amount=-3 +kerning first=214 second=90 amount=-2 +kerning first=345 second=103 amount=-2 +kerning first=1027 second=1103 amount=-4 +kerning first=344 second=115 amount=-2 +kerning first=232 second=104 amount=-2 +kerning first=380 second=115 amount=-2 +kerning first=230 second=44 amount=-3 +kerning first=350 second=303 amount=-3 +kerning first=380 second=232 amount=-1 +kerning first=197 second=8221 amount=-5 +kerning first=87 second=213 amount=-3 +kerning first=344 second=232 amount=-3 +kerning first=192 second=213 amount=-3 +kerning first=89 second=44 amount=-5 +kerning first=200 second=259 amount=-1 +kerning first=8217 second=259 amount=-6 +kerning first=236 second=232 amount=-1 +kerning first=264 second=213 amount=-3 +kerning first=369 second=277 amount=-1 +kerning first=268 second=104 amount=-1 +kerning first=378 second=8249 amount=-3 +kerning first=101 second=303 amount=-2 +kerning first=87 second=328 amount=-3 +kerning first=201 second=75 amount=-2 +kerning first=187 second=315 amount=-5 +kerning first=65 second=303 amount=-1 +kerning first=283 second=98 amount=-2 +kerning first=1056 second=1048 amount=-1 +kerning first=250 second=118 amount=-3 +kerning first=381 second=75 amount=-1 +kerning first=1043 second=1104 amount=-3 +kerning first=278 second=303 amount=-1 +kerning first=270 second=8249 amount=-1 +kerning first=264 second=328 amount=-1 +kerning first=66 second=235 amount=-1 +kerning first=314 second=303 amount=-1 +kerning first=268 second=280 amount=-3 +kerning first=228 second=328 amount=-1 +kerning first=206 second=303 amount=-1 +kerning first=346 second=337 amount=-1 +kerning first=286 second=118 amount=-1 +kerning first=370 second=120 amount=-2 +kerning first=242 second=303 amount=-1 +kerning first=106 second=98 amount=-1 +kerning first=73 second=118 amount=-2 +kerning first=275 second=283 amount=-1 +kerning first=193 second=89 amount=-6 +kerning first=1118 second=1104 amount=-2 +kerning first=1082 second=1104 amount=-2 +kerning first=1089 second=1107 amount=-1 +kerning first=109 second=118 amount=-3 +kerning first=1046 second=1104 amount=-2 +kerning first=210 second=370 amount=-1 +kerning first=290 second=218 amount=-1 +kerning first=1053 second=1107 amount=-1 +kerning first=8220 second=223 amount=-1 +kerning first=80 second=325 amount=-1 +kerning first=266 second=233 amount=-2 +kerning first=84 second=193 amount=-6 +kerning first=264 second=241 amount=-1 +kerning first=260 second=263 amount=-1 +kerning first=355 second=98 amount=-1 +kerning first=282 second=370 amount=-2 +kerning first=218 second=83 amount=-3 +kerning first=203 second=196 amount=-2 +kerning first=234 second=122 amount=-2 +kerning first=90 second=269 amount=-1 +kerning first=378 second=305 amount=-2 +kerning first=311 second=283 amount=-3 +kerning first=102 second=104 amount=3 +kerning first=354 second=370 amount=-1 +kerning first=1025 second=1042 amount=-1 +kerning first=76 second=314 amount=-2 +kerning first=87 second=241 amount=-3 +kerning first=347 second=311 amount=-1 +kerning first=171 second=87 amount=-3 +kerning first=213 second=362 amount=-1 +kerning first=289 second=246 amount=-2 +kerning first=68 second=370 amount=-1 +kerning first=73 second=266 amount=-2 +kerning first=275 second=311 amount=-2 +kerning first=83 second=317 amount=-3 +kerning first=325 second=286 amount=-2 +kerning first=112 second=314 amount=-2 +kerning first=350 second=331 amount=-1 +kerning first=87 second=269 amount=-3 +kerning first=217 second=286 amount=-1 +kerning first=253 second=314 amount=-2 +kerning first=203 second=311 amount=-1 +kerning first=219 second=8249 amount=-5 +kerning first=231 second=261 amount=-2 +kerning first=278 second=331 amount=-1 +kerning first=1046 second=1108 amount=-2 +kerning first=336 second=356 amount=-2 +kerning first=314 second=331 amount=-1 +kerning first=1093 second=1118 amount=-2 +kerning first=1057 second=1059 amount=-1 +kerning first=289 second=314 amount=-3 +kerning first=354 second=255 amount=-3 +kerning first=207 second=235 amount=-2 +kerning first=83 second=345 amount=-2 +kerning first=212 second=237 amount=-1 +kerning first=267 second=328 amount=-2 +kerning first=264 second=269 amount=-2 +kerning first=376 second=280 amount=-1 +kerning first=119 second=345 amount=-1 +kerning first=228 second=269 amount=-1 +kerning first=76 second=286 amount=-1 +kerning first=258 second=81 amount=-3 +kerning first=101 second=331 amount=-2 +kerning first=222 second=196 amount=-4 +kerning first=246 second=255 amount=-3 +kerning first=98 second=224 amount=-1 +kerning first=337 second=112 amount=-1 +kerning first=330 second=81 amount=-2 +kerning first=1100 second=1090 amount=-1 +kerning first=1086 second=1087 amount=-1 +kerning first=1064 second=1090 amount=-1 +kerning first=203 second=224 amount=-1 +kerning first=105 second=255 amount=-3 +kerning first=311 second=224 amount=-2 +kerning first=366 second=81 amount=-1 +kerning first=368 second=345 amount=-1 +kerning first=275 second=224 amount=-2 +kerning first=193 second=112 amount=-3 +kerning first=281 second=326 amount=-2 +kerning first=66 second=378 amount=-4 +kerning first=1058 second=1078 amount=-3 +kerning first=90 second=205 amount=-1 +kerning first=317 second=326 amount=-1 +kerning first=256 second=250 amount=-3 +kerning first=243 second=347 amount=-2 +kerning first=347 second=224 amount=-1 +kerning first=353 second=326 amount=-2 +kerning first=207 second=347 amount=-2 +kerning first=98 second=255 amount=-3 +kerning first=8218 second=303 amount=-1 +kerning first=228 second=257 amount=-1 +kerning first=328 second=250 amount=-1 +kerning first=102 second=378 amount=-1 +kerning first=220 second=281 amount=-2 +kerning first=84 second=101 amount=-3 +kerning first=104 second=326 amount=-1 +kerning first=115 second=250 amount=-1 +kerning first=102 second=347 amount=-2 +kerning first=120 second=101 amount=-2 +kerning first=1069 second=1033 amount=-3 +kerning first=298 second=352 amount=-2 +kerning first=66 second=347 amount=-3 +kerning first=76 second=344 amount=-2 +kerning first=378 second=371 amount=-2 +kerning first=220 second=250 amount=-1 +kerning first=264 second=71 amount=-3 +kerning first=225 second=101 amount=-1 +kerning first=245 second=326 amount=-1 +kerning first=107 second=231 amount=-3 +kerning first=261 second=101 amount=-1 +kerning first=229 second=257 amount=-1 +kerning first=218 second=333 amount=-2 +kerning first=1119 second=1092 amount=-1 +kerning first=307 second=328 amount=-2 +kerning first=121 second=237 amount=-2 +kerning first=351 second=378 amount=-2 +kerning first=282 second=76 amount=-2 +kerning first=105 second=283 amount=-1 +kerning first=283 second=114 amount=-1 +kerning first=268 second=366 amount=-2 +kerning first=347 second=8220 amount=-2 +kerning first=369 second=101 amount=-1 +kerning first=1058 second=1047 amount=-1 +kerning first=235 second=328 amount=-2 +kerning first=311 second=8220 amount=-2 +kerning first=1030 second=1097 amount=-1 +kerning first=199 second=328 amount=-1 +kerning first=243 second=378 amount=-2 +kerning first=275 second=8220 amount=-2 +kerning first=290 second=302 amount=-1 +kerning first=351 second=345 amount=-1 +kerning first=88 second=257 amount=-1 +kerning first=207 second=378 amount=-1 +kerning first=1039 second=1073 amount=-1 +kerning first=85 second=352 amount=-3 +kerning first=113 second=333 amount=-1 +kerning first=379 second=328 amount=-1 +kerning first=77 second=333 amount=-2 +kerning first=1083 second=1092 amount=-1 +kerning first=1093 second=1090 amount=-1 +kerning first=8220 second=114 amount=-1 +kerning first=204 second=243 amount=-2 +kerning first=272 second=87 amount=-2 +kerning first=316 second=120 amount=-1 +kerning first=97 second=353 amount=-1 +kerning first=200 second=87 amount=-1 +kerning first=74 second=198 amount=-5 +kerning first=362 second=333 amount=-2 +kerning first=87 second=68 amount=-1 +kerning first=325 second=113 amount=-2 +kerning first=112 second=345 amount=-1 +kerning first=289 second=113 amount=-2 +kerning first=193 second=288 amount=-3 +kerning first=45 second=194 amount=-4 +kerning first=253 second=113 amount=-3 +kerning first=99 second=243 amount=-1 +kerning first=217 second=345 amount=-1 +kerning first=217 second=113 amount=-2 +kerning first=85 second=120 amount=-2 +kerning first=1030 second=1094 amount=-1 +kerning first=253 second=345 amount=-1 +kerning first=1039 second=1119 amount=-1 +kerning first=121 second=120 amount=-1 +kerning first=225 second=110 amount=-1 +kerning first=289 second=345 amount=-1 +kerning first=198 second=368 amount=-2 +kerning first=226 second=120 amount=-1 +kerning first=331 second=45 amount=-3 +kerning first=82 second=217 amount=-3 +kerning first=256 second=281 amount=-1 +kerning first=347 second=255 amount=-3 +kerning first=268 second=113 amount=-2 +kerning first=311 second=255 amount=-1 +kerning first=1059 second=1090 amount=-3 +kerning first=356 second=262 amount=-3 +kerning first=209 second=214 amount=-2 +kerning first=1102 second=1094 amount=-1 +kerning first=275 second=255 amount=-2 +kerning first=1074 second=1113 amount=-1 +kerning first=73 second=210 amount=-2 +kerning first=1079 second=1095 amount=-1 +kerning first=364 second=281 amount=-2 +kerning first=101 second=99 amount=-1 +kerning first=68 second=354 amount=-2 +kerning first=88 second=229 amount=-1 +kerning first=269 second=347 amount=-2 +kerning first=381 second=44 amount=-1 +kerning first=347 second=227 amount=-1 +kerning first=1024 second=1054 amount=-1 +kerning first=370 second=324 amount=-2 +kerning first=290 second=274 amount=-1 +kerning first=1039 second=1101 amount=-1 +kerning first=206 second=99 amount=-2 +kerning first=317 second=323 amount=-2 +kerning first=311 second=227 amount=-2 +kerning first=275 second=227 amount=-2 +kerning first=107 second=234 amount=-3 +kerning first=262 second=324 amount=-1 +kerning first=1049 second=1099 amount=-1 +kerning first=226 second=324 amount=-1 +kerning first=345 second=44 amount=-4 +kerning first=350 second=99 amount=-1 +kerning first=317 second=354 amount=-3 +kerning first=314 second=99 amount=-1 +kerning first=229 second=229 amount=-1 +kerning first=90 second=233 amount=-1 +kerning first=113 second=120 amount=-1 +kerning first=231 second=233 amount=-1 +kerning first=356 second=234 amount=-3 +kerning first=195 second=233 amount=-1 +kerning first=110 second=106 amount=-2 +kerning first=281 second=267 amount=-1 +kerning first=337 second=229 amount=-1 +kerning first=303 second=233 amount=-3 +kerning first=267 second=233 amount=-1 +kerning first=381 second=279 amount=-1 +kerning first=375 second=233 amount=-3 +kerning first=251 second=106 amount=-2 +kerning first=79 second=382 amount=-2 +kerning first=203 second=227 amount=-1 +kerning first=104 second=380 amount=-1 +kerning first=283 second=291 amount=-3 +kerning first=339 second=233 amount=-1 +kerning first=98 second=227 amount=-1 +kerning first=344 second=87 amount=-3 +kerning first=76 second=110 amount=-1 +kerning first=326 second=361 amount=-1 +kerning first=1047 second=1064 amount=-2 +kerning first=71 second=45 amount=-3 +kerning first=68 second=66 amount=-2 +kerning first=302 second=243 amount=-2 +kerning first=88 second=316 amount=-1 +kerning first=112 second=110 amount=-1 +kerning first=290 second=361 amount=-1 +kerning first=378 second=111 amount=-1 +kerning first=193 second=316 amount=-2 +kerning first=217 second=110 amount=-2 +kerning first=1074 second=1085 amount=-1 +kerning first=362 second=361 amount=-1 +kerning first=229 second=316 amount=-1 +kerning first=195 second=264 amount=-3 +kerning first=204 second=212 amount=-2 +kerning first=209 second=267 amount=-2 +kerning first=87 second=65 amount=-6 +kerning first=99 second=271 amount=-1 +kerning first=196 second=364 amount=-3 +kerning first=289 second=110 amount=-1 +kerning first=90 second=264 amount=-1 +kerning first=234 second=111 amount=-1 +kerning first=337 second=316 amount=-2 +kerning first=337 second=257 amount=-1 +kerning first=333 second=104 amount=-1 +kerning first=264 second=65 amount=-3 +kerning first=1065 second=1098 amount=-1 +kerning first=262 second=89 amount=-1 +kerning first=1038 second=1057 amount=-3 +kerning first=261 second=104 amount=-1 +kerning first=77 second=361 amount=-2 +kerning first=330 second=336 amount=-2 +kerning first=336 second=65 amount=-4 +kerning first=317 second=66 amount=-2 +kerning first=268 second=364 amount=-2 +kerning first=76 second=82 amount=-2 +kerning first=225 second=104 amount=-1 +kerning first=334 second=89 amount=-2 +kerning first=254 second=361 amount=-1 +kerning first=369 second=104 amount=-2 +kerning first=1116 second=1090 amount=-1 +kerning first=218 second=361 amount=-1 +kerning first=376 second=364 amount=-1 +kerning first=259 second=97 amount=-1 +kerning first=317 second=122 amount=-3 +kerning first=295 second=97 amount=-1 +kerning first=370 second=117 amount=-1 +kerning first=201 second=72 amount=-2 +kerning first=281 second=122 amount=-2 +kerning first=328 second=46 amount=-1 +kerning first=187 second=97 amount=-1 +kerning first=69 second=370 amount=-2 +kerning first=242 second=102 amount=-1 +kerning first=1063 second=1102 amount=-1 +kerning first=245 second=122 amount=-2 +kerning first=364 second=46 amount=-5 +kerning first=223 second=97 amount=-1 +kerning first=278 second=102 amount=-2 +kerning first=209 second=122 amount=-1 +kerning first=85 second=377 amount=-1 +kerning first=206 second=71 amount=-2 +kerning first=364 second=225 amount=-3 +kerning first=381 second=72 amount=-1 +kerning first=84 second=76 amount=-1 +kerning first=339 second=116 amount=-1 +kerning first=250 second=121 amount=-3 +kerning first=87 second=227 amount=-5 +kerning first=303 second=116 amount=-1 +kerning first=331 second=97 amount=-1 +kerning first=278 second=71 amount=-1 +kerning first=65 second=102 amount=-1 +kerning first=220 second=46 amount=-5 +kerning first=367 second=97 amount=-1 +kerning first=101 second=102 amount=-2 +kerning first=353 second=122 amount=-2 +kerning first=375 second=116 amount=-1 +kerning first=109 second=121 amount=-2 +kerning first=262 second=377 amount=-2 +kerning first=85 second=117 amount=-1 +kerning first=350 second=219 amount=-3 +kerning first=259 second=245 amount=-1 +kerning first=1058 second=1103 amount=-4 +kerning first=121 second=117 amount=-1 +kerning first=79 second=46 amount=-3 +kerning first=278 second=219 amount=-2 +kerning first=314 second=102 amount=-1 +kerning first=262 second=117 amount=-2 +kerning first=201 second=332 amount=-1 +kerning first=350 second=102 amount=-3 +kerning first=226 second=117 amount=-1 +kerning first=104 second=122 amount=-1 +kerning first=334 second=377 amount=-2 +kerning first=104 second=8217 amount=-4 +kerning first=107 second=287 amount=-2 +kerning first=68 second=122 amount=-2 +kerning first=71 second=287 amount=-3 +kerning first=367 second=245 amount=-1 +kerning first=198 second=200 amount=-2 +kerning first=352 second=364 amount=-3 +kerning first=381 second=332 amount=-1 +kerning first=212 second=287 amount=-1 +kerning first=1077 second=1114 amount=-1 +kerning first=204 second=240 amount=-2 +kerning first=356 second=259 amount=-5 +kerning first=82 second=242 amount=-3 +kerning first=284 second=287 amount=-3 +kerning first=248 second=287 amount=-2 +kerning first=278 second=249 amount=-2 +kerning first=99 second=240 amount=-1 +kerning first=1055 second=1114 amount=-1 +kerning first=356 second=287 amount=-4 +kerning first=108 second=8221 amount=-3 +kerning first=1074 second=1088 amount=-1 +kerning first=201 second=220 amount=-2 +kerning first=118 second=242 amount=-3 +kerning first=212 second=259 amount=-1 +kerning first=259 second=242 amount=-1 +kerning first=381 second=304 amount=-1 +kerning first=68 second=298 amount=-2 +kerning first=198 second=284 amount=-1 +kerning first=82 second=214 amount=-3 +kerning first=284 second=259 amount=-1 +kerning first=261 second=8220 amount=-3 +kerning first=305 second=8221 amount=-2 +kerning first=251 second=369 amount=-1 +kerning first=85 second=324 amount=-2 +kerning first=195 second=116 amount=-1 +kerning first=250 second=380 amount=-2 +kerning first=351 second=375 amount=-3 +kerning first=116 second=8249 amount=-1 +kerning first=315 second=375 amount=-3 +kerning first=323 second=369 amount=-2 +kerning first=267 second=116 amount=-1 +kerning first=198 second=197 amount=-2 +kerning first=377 second=377 amount=-1 +kerning first=364 second=194 amount=-4 +kerning first=65 second=71 amount=-3 +kerning first=279 second=375 amount=-2 +kerning first=287 second=369 amount=-1 +kerning first=121 second=324 amount=-2 +kerning first=231 second=116 amount=-1 +kerning first=82 second=97 amount=-2 +kerning first=104 second=119 amount=-3 +kerning first=217 second=45 amount=-5 +kerning first=118 second=97 amount=-3 +kerning first=256 second=350 amount=-3 +kerning first=201 second=304 amount=-2 +kerning first=209 second=119 amount=-2 +kerning first=90 second=116 amount=-1 +kerning first=220 second=194 amount=-4 +kerning first=245 second=119 amount=-2 +kerning first=110 second=369 amount=-1 +kerning first=290 second=330 amount=-1 +kerning first=281 second=119 amount=-2 +kerning first=381 second=248 amount=-1 +kerning first=79 second=74 amount=-2 +kerning first=234 second=228 amount=-2 +kerning first=1027 second=1105 amount=-3 +kerning first=328 second=253 amount=-2 +kerning first=317 second=119 amount=-3 +kerning first=284 second=203 amount=-1 +kerning first=192 second=232 amount=-1 +kerning first=198 second=228 amount=-1 +kerning first=364 second=253 amount=-1 +kerning first=367 second=273 amount=-1 +kerning first=220 second=74 amount=-3 +kerning first=243 second=375 amount=-3 +kerning first=1077 second=1080 amount=-1 +kerning first=259 second=273 amount=-1 +kerning first=287 second=223 amount=-1 +kerning first=251 second=223 amount=-1 +kerning first=1099 second=1105 amount=-1 +kerning first=102 second=375 amount=-1 +kerning first=364 second=74 amount=-3 +kerning first=240 second=355 amount=-1 +kerning first=118 second=273 amount=-3 +kerning first=264 second=68 amount=-3 +kerning first=268 second=328 amount=-1 +kerning first=204 second=268 amount=-2 +kerning first=259 second=244 amount=-1 +kerning first=221 second=196 amount=-6 +kerning first=99 second=355 amount=-1 +kerning first=198 second=80 amount=-2 +kerning first=115 second=253 amount=-3 +kerning first=317 second=298 amount=-2 +kerning first=220 second=253 amount=-1 +kerning first=336 second=68 amount=-2 +kerning first=256 second=253 amount=-3 +kerning first=356 second=203 amount=-1 +kerning first=201 second=363 amount=-2 +kerning first=68 second=270 amount=-2 +kerning first=381 second=335 amount=-1 +kerning first=98 second=8217 amount=-2 +kerning first=234 second=108 amount=-3 +kerning first=274 second=298 amount=-2 +kerning first=74 second=338 amount=-2 +kerning first=208 second=381 amount=-2 +kerning first=356 second=290 amount=-3 +kerning first=364 second=105 amount=-2 +kerning first=381 second=363 amount=-3 +kerning first=118 second=245 amount=-3 +kerning first=335 second=249 amount=-1 +kerning first=378 second=108 amount=-2 +kerning first=248 second=318 amount=-2 +kerning first=82 second=245 amount=-3 +kerning first=284 second=318 amount=-1 +kerning first=328 second=105 amount=-1 +kerning first=76 second=85 amount=-3 +kerning first=262 second=380 amount=-2 +kerning first=256 second=105 amount=-1 +kerning first=356 second=231 amount=-3 +kerning first=8218 second=362 amount=-3 +kerning first=290 second=318 amount=-1 +kerning first=298 second=380 amount=-1 +kerning first=115 second=105 amount=-2 +kerning first=1038 second=1060 amount=-3 +kerning first=334 second=380 amount=-2 +kerning first=1091 second=1083 amount=-3 +kerning first=108 second=331 amount=-1 +kerning first=328 second=225 amount=-1 +kerning first=307 second=8217 amount=-2 +kerning first=370 second=380 amount=-3 +kerning first=111 second=316 amount=-2 +kerning first=85 second=380 amount=-3 +kerning first=323 second=338 amount=-2 +kerning first=378 second=228 amount=-1 +kerning first=79 second=105 amount=-1 +kerning first=275 second=8217 amount=-2 +kerning first=79 second=225 amount=-1 +kerning first=98 second=119 amount=-2 +kerning first=121 second=380 amount=-3 +kerning first=317 second=270 amount=-2 +kerning first=115 second=225 amount=-1 +kerning first=198 second=108 amount=-1 +kerning first=347 second=8217 amount=-2 +kerning first=313 second=350 amount=-1 +kerning first=226 second=380 amount=-1 +kerning first=330 second=351 amount=-2 +kerning first=234 second=225 amount=-2 +kerning first=201 second=221 amount=-1 +kerning first=110 second=251 amount=-1 +kerning first=371 second=228 amount=-2 +kerning first=8217 second=262 amount=-2 +kerning first=251 second=251 amount=-1 +kerning first=335 second=228 amount=-1 +kerning first=376 second=282 amount=-1 +kerning first=1051 second=1100 amount=-1 +kerning first=108 second=303 amount=-1 +kerning first=240 second=98 amount=-1 +kerning first=323 second=251 amount=-2 +kerning first=263 second=228 amount=-2 +kerning first=236 second=235 amount=-1 +kerning first=1114 second=1093 amount=-2 +kerning first=287 second=251 amount=-1 +kerning first=227 second=228 amount=-1 +kerning first=278 second=192 amount=-2 +kerning first=1042 second=1093 amount=-3 +kerning first=72 second=303 amount=-1 +kerning first=122 second=228 amount=-1 +kerning first=198 second=225 amount=-1 +kerning first=278 second=46 amount=-1 +kerning first=252 second=273 amount=-1 +kerning first=220 second=102 amount=-1 +kerning first=262 second=206 amount=-3 +kerning first=256 second=102 amount=-1 +kerning first=350 second=46 amount=-4 +kerning first=8216 second=87 amount=-1 +kerning first=214 second=325 amount=-2 +kerning first=334 second=206 amount=-2 +kerning first=109 second=365 amount=-1 +kerning first=328 second=102 amount=-1 +kerning first=101 second=46 amount=-3 +kerning first=71 second=83 amount=-2 +kerning first=45 second=310 amount=-5 +kerning first=378 second=225 amount=-1 +kerning first=286 second=325 amount=-1 +kerning first=84 second=280 amount=-1 +kerning first=206 second=46 amount=-1 +kerning first=277 second=287 amount=-3 +kerning first=115 second=102 amount=-2 +kerning first=212 second=83 amount=-1 +kerning first=106 second=355 amount=-1 +kerning first=315 second=266 amount=-1 +kerning first=338 second=363 amount=-2 +kerning first=258 second=112 amount=-3 +kerning first=290 second=46 amount=-3 +kerning first=284 second=83 amount=-2 +kerning first=374 second=363 amount=-2 +kerning first=222 second=112 amount=-1 +kerning first=241 second=318 amount=-1 +kerning first=280 second=378 amount=-2 +kerning first=79 second=362 amount=-1 +kerning first=277 second=318 amount=-3 +kerning first=356 second=83 amount=-3 +kerning first=117 second=112 amount=-2 +kerning first=313 second=318 amount=-2 +kerning first=250 second=289 amount=-3 +kerning first=81 second=112 amount=-1 +kerning first=317 second=214 amount=-1 +kerning first=207 second=266 amount=-2 +kerning first=45 second=112 amount=-2 +kerning first=377 second=210 amount=-1 +kerning first=66 second=266 amount=-3 +kerning first=268 second=311 amount=-1 +kerning first=344 second=235 amount=-3 +kerning first=378 second=259 amount=-1 +kerning first=321 second=105 amount=-2 +kerning first=380 second=235 amount=-1 +kerning first=1025 second=1084 amount=-1 +kerning first=88 second=81 amount=-3 +kerning first=249 second=105 amount=-2 +kerning first=99 second=98 amount=-2 +kerning first=378 second=248 amount=-1 +kerning first=234 second=259 amount=-2 +kerning first=198 second=259 amount=-1 +kerning first=213 second=105 amount=-1 +kerning first=366 second=112 amount=-2 +kerning first=197 second=67 amount=-3 +kerning first=1037 second=1081 amount=-1 +kerning first=72 second=105 amount=-1 +kerning first=330 second=112 amount=-1 +kerning first=108 second=105 amount=-1 +kerning first=282 second=230 amount=-1 +kerning first=1064 second=1079 amount=-1 +kerning first=66 second=204 amount=-4 +kerning first=259 second=100 amount=-1 +kerning first=67 second=282 amount=-3 +kerning first=304 second=249 amount=-1 +kerning first=90 second=379 amount=-1 +kerning first=1118 second=1079 amount=-1 +kerning first=219 second=346 amount=-3 +kerning first=210 second=230 amount=-1 +kerning first=377 second=327 amount=-1 +kerning first=1064 second=1075 amount=-1 +kerning first=232 second=249 amount=-2 +kerning first=246 second=230 amount=-1 +kerning first=1046 second=1079 amount=-1 +kerning first=1104 second=1098 amount=-1 +kerning first=268 second=249 amount=-2 +kerning first=307 second=275 amount=-1 +kerning first=105 second=230 amount=-2 +kerning first=65 second=334 amount=-3 +kerning first=82 second=100 amount=-3 +kerning first=1061 second=1095 amount=-3 +kerning first=118 second=100 amount=-3 +kerning first=1025 second=1095 amount=-2 +kerning first=235 second=275 amount=-1 +kerning first=315 second=204 amount=-2 +kerning first=376 second=249 amount=-1 +kerning first=327 second=346 amount=-2 +kerning first=69 second=230 amount=-1 +kerning first=196 second=107 amount=-2 +kerning first=381 second=256 amount=-1 +kerning first=354 second=339 amount=-3 +kerning first=217 second=8249 amount=-5 +kerning first=381 second=223 amount=-1 +kerning first=232 second=305 amount=-2 +kerning first=268 second=107 amount=-1 +kerning first=196 second=305 amount=-1 +kerning first=232 second=107 amount=-2 +kerning first=84 second=333 amount=-3 +kerning first=304 second=305 amount=-1 +kerning first=66 second=260 amount=-5 +kerning first=298 second=268 amount=-2 +kerning first=8218 second=250 amount=-1 +kerning first=268 second=305 amount=-1 +kerning first=354 second=230 amount=-5 +kerning first=313 second=256 amount=-2 +kerning first=376 second=305 amount=-2 +kerning first=75 second=211 amount=-3 +kerning first=257 second=316 amount=-1 +kerning first=201 second=223 amount=-1 +kerning first=370 second=268 amount=-1 +kerning first=1025 second=1039 amount=-1 +kerning first=369 second=8217 amount=-3 +kerning first=192 second=244 amount=-1 +kerning first=374 second=192 amount=-6 +kerning first=228 second=244 amount=-1 +kerning first=338 second=192 amount=-2 +kerning first=250 second=263 amount=-1 +kerning first=108 second=365 amount=-2 +kerning first=1086 second=1084 amount=-1 +kerning first=1098 second=1117 amount=-1 +kerning first=262 second=268 amount=-3 +kerning first=71 second=315 amount=-1 +kerning first=264 second=244 amount=-2 +kerning first=72 second=365 amount=-2 +kerning first=315 second=260 amount=-2 +kerning first=8220 second=226 amount=-3 +kerning first=266 second=192 amount=-3 +kerning first=363 second=237 amount=-2 +kerning first=84 second=218 amount=-1 +kerning first=327 second=237 amount=-1 +kerning first=203 second=199 amount=-1 +kerning first=261 second=8217 amount=-3 +kerning first=73 second=263 amount=-2 +kerning first=291 second=237 amount=-2 +kerning first=255 second=237 amount=-2 +kerning first=333 second=8217 amount=-2 +kerning first=89 second=192 amount=-6 +kerning first=228 second=353 amount=-1 +kerning first=219 second=237 amount=-2 +kerning first=214 second=366 amount=-1 +kerning first=73 second=121 amount=-2 +kerning first=199 second=275 amount=-2 +kerning first=264 second=353 amount=-2 +kerning first=206 second=334 amount=-2 +kerning first=375 second=101 amount=-3 +kerning first=284 second=315 amount=-1 +kerning first=112 second=289 amount=-2 +kerning first=278 second=334 amount=-1 +kerning first=78 second=237 amount=-1 +kerning first=280 second=282 amount=-2 +kerning first=356 second=315 amount=-1 +kerning first=1057 second=1034 amount=-1 +kerning first=217 second=289 amount=-4 +kerning first=78 second=346 amount=-2 +kerning first=87 second=353 amount=-3 +kerning first=8250 second=354 amount=-4 +kerning first=208 second=282 amount=-2 +kerning first=87 second=244 amount=-3 +kerning first=220 second=268 amount=-1 +kerning first=1060 second=1051 amount=-3 +kerning first=88 second=232 amount=-2 +kerning first=104 second=351 amount=-1 +kerning first=72 second=99 amount=-2 +kerning first=248 second=371 amount=-1 +kerning first=74 second=257 amount=-3 +kerning first=229 second=232 amount=-1 +kerning first=1025 second=1065 amount=-1 +kerning first=362 second=277 amount=-2 +kerning first=110 second=257 amount=-1 +kerning first=279 second=249 amount=-2 +kerning first=1103 second=1089 amount=-1 +kerning first=371 second=8249 amount=-2 +kerning first=113 second=277 amount=-1 +kerning first=108 second=99 amount=-1 +kerning first=214 second=381 amount=-2 +kerning first=71 second=8249 amount=-3 +kerning first=70 second=361 amount=-1 +kerning first=337 second=347 amount=-2 +kerning first=332 second=202 amount=-2 +kerning first=218 second=277 amount=-2 +kerning first=107 second=371 amount=-1 +kerning first=286 second=381 amount=-2 +kerning first=84 second=336 amount=-3 +kerning first=353 second=351 amount=-3 +kerning first=252 second=267 amount=-1 +kerning first=288 second=69 amount=-1 +kerning first=376 second=367 amount=-2 +kerning first=317 second=351 amount=-1 +kerning first=370 second=212 amount=-1 +kerning first=77 second=277 amount=-2 +kerning first=69 second=79 amount=-1 +kerning first=262 second=212 amount=-3 +kerning first=216 second=69 amount=-2 +kerning first=304 second=367 amount=-2 +kerning first=1118 second=1113 amount=-3 +kerning first=1049 second=1096 amount=-1 +kerning first=1101 second=1081 amount=-1 +kerning first=209 second=351 amount=-2 +kerning first=323 second=257 amount=-2 +kerning first=232 second=367 amount=-2 +kerning first=354 second=79 amount=-3 +kerning first=268 second=367 amount=-2 +kerning first=281 second=351 amount=-2 +kerning first=85 second=212 amount=-1 +kerning first=251 second=257 amount=-1 +kerning first=1037 second=1100 amount=-1 +kerning first=277 second=114 amount=-1 +kerning first=245 second=351 amount=-2 +kerning first=282 second=79 amount=-1 +kerning first=287 second=257 amount=-3 +kerning first=196 second=367 amount=-3 +kerning first=236 second=291 amount=-3 +kerning first=122 second=337 amount=-1 +kerning first=258 second=316 amount=-2 +kerning first=267 second=261 amount=-2 +kerning first=200 second=291 amount=-3 +kerning first=86 second=337 amount=-3 +kerning first=261 second=229 amount=-1 +kerning first=303 second=261 amount=-2 +kerning first=206 second=216 amount=-2 +kerning first=8250 second=298 amount=-5 +kerning first=375 second=261 amount=-3 +kerning first=119 second=314 amount=-2 +kerning first=75 second=267 amount=-2 +kerning first=67 second=226 amount=-2 +kerning first=233 second=271 amount=-1 +kerning first=90 second=261 amount=-1 +kerning first=216 second=382 amount=-2 +kerning first=263 second=337 amount=-1 +kerning first=83 second=314 amount=-2 +kerning first=103 second=226 amount=-3 +kerning first=269 second=271 amount=-1 +kerning first=252 second=382 amount=-2 +kerning first=227 second=337 amount=-1 +kerning first=224 second=314 amount=-1 +kerning first=1045 second=1057 amount=-1 +kerning first=378 second=281 amount=-1 +kerning first=288 second=382 amount=-1 +kerning first=1053 second=1104 amount=-1 +kerning first=65 second=216 amount=-3 +kerning first=208 second=226 amount=-1 +kerning first=324 second=382 amount=-1 +kerning first=295 second=326 amount=-1 +kerning first=253 second=171 amount=-4 +kerning first=260 second=314 amount=-2 +kerning first=106 second=361 amount=-1 +kerning first=331 second=326 amount=-1 +kerning first=229 second=347 amount=-1 +kerning first=289 second=171 amount=-3 +kerning first=371 second=337 amount=-3 +kerning first=1067 second=1082 amount=-1 +kerning first=367 second=326 amount=-1 +kerning first=1088 second=1116 amount=-1 +kerning first=193 second=347 amount=-2 +kerning first=234 second=281 amount=-1 +kerning first=325 second=171 amount=-4 +kerning first=45 second=316 amount=-1 +kerning first=1052 second=1116 amount=-1 +kerning first=361 second=171 amount=-2 +kerning first=106 second=255 amount=-3 +kerning first=88 second=288 amount=-3 +kerning first=278 second=216 amount=-1 +kerning first=69 second=224 amount=-1 +kerning first=118 second=326 amount=-2 +kerning first=76 second=171 amount=-1 +kerning first=83 second=202 amount=-3 +kerning first=283 second=361 amount=-2 +kerning first=117 second=316 amount=-2 +kerning first=187 second=326 amount=-2 +kerning first=235 second=269 amount=-1 +kerning first=1042 second=1037 amount=-2 +kerning first=241 second=8221 amount=-4 +kerning first=223 second=326 amount=-1 +kerning first=105 second=224 amount=-2 +kerning first=355 second=361 amount=-1 +kerning first=259 second=326 amount=-1 +kerning first=307 second=269 amount=-1 +kerning first=217 second=171 amount=-5 +kerning first=304 second=45 amount=-4 +kerning first=246 second=224 amount=-1 +kerning first=268 second=45 amount=-4 +kerning first=8220 second=279 amount=-3 +kerning first=210 second=224 amount=-1 +kerning first=379 second=269 amount=-1 +kerning first=89 second=103 amount=-4 +kerning first=98 second=115 amount=-2 +kerning first=229 second=371 amount=-1 +kerning first=67 second=78 amount=-3 +kerning first=275 second=252 amount=-2 +kerning first=282 second=224 amount=-1 +kerning first=1108 second=1082 amount=-1 +kerning first=253 second=227 amount=-3 +kerning first=354 second=224 amount=-4 +kerning first=217 second=227 amount=-3 +kerning first=317 second=206 amount=-2 +kerning first=98 second=252 amount=-1 +kerning first=222 second=201 amount=-2 +kerning first=112 second=227 amount=-1 +kerning first=286 second=207 amount=-1 +kerning first=244 second=226 amount=-1 +kerning first=232 second=101 amount=-1 +kerning first=280 second=226 amount=-1 +kerning first=283 second=246 amount=-1 +kerning first=268 second=101 amount=-2 +kerning first=81 second=201 amount=-2 +kerning first=1025 second=1101 amount=-1 +kerning first=316 second=226 amount=-2 +kerning first=374 second=103 amount=-4 +kerning first=114 second=44 amount=-4 +kerning first=304 second=101 amount=-2 +kerning first=45 second=201 amount=-5 +kerning first=1061 second=1101 amount=-1 +kerning first=221 second=90 amount=-3 +kerning first=338 second=103 amount=-3 +kerning first=110 second=316 amount=-1 +kerning first=311 second=252 amount=-1 +kerning first=302 second=103 amount=-3 +kerning first=344 second=291 amount=-3 +kerning first=347 second=252 amount=-1 +kerning first=376 second=101 amount=-3 +kerning first=266 second=103 amount=-3 +kerning first=106 second=246 amount=-1 +kerning first=214 second=207 amount=-2 +kerning first=90 second=317 amount=-1 +kerning first=256 second=362 amount=-3 +kerning first=230 second=103 amount=-3 +kerning first=1116 second=1105 amount=-2 +kerning first=196 second=45 amount=-4 +kerning first=80 second=356 amount=-1 +kerning first=194 second=103 amount=-3 +kerning first=82 second=44 amount=-2 +kerning first=199 second=213 amount=-3 +kerning first=200 second=84 amount=-1 +kerning first=347 second=104 amount=-1 +kerning first=1047 second=1067 amount=-2 +kerning first=212 second=89 amount=-2 +kerning first=368 second=74 amount=-3 +kerning first=118 second=44 amount=-5 +kerning first=354 second=283 amount=-3 +kerning first=284 second=89 amount=-3 +kerning first=228 second=367 amount=-1 +kerning first=287 second=109 amount=-1 +kerning first=71 second=89 amount=-3 +kerning first=344 second=84 amount=-3 +kerning first=362 second=338 amount=-1 +kerning first=66 second=115 amount=-3 +kerning first=8217 second=111 amount=-3 +kerning first=344 second=356 amount=-3 +kerning first=268 second=193 amount=-3 +kerning first=203 second=370 amount=-2 +kerning first=272 second=84 amount=-2 +kerning first=379 second=213 amount=-1 +kerning first=207 second=115 amount=-2 +kerning first=110 second=109 amount=-1 +kerning first=321 second=303 amount=-2 +kerning first=243 second=115 amount=-2 +kerning first=240 second=187 amount=-2 +kerning first=74 second=109 amount=-1 +kerning first=352 second=78 amount=-3 +kerning first=213 second=303 amount=-1 +kerning first=102 second=115 amount=-2 +kerning first=122 second=8249 amount=-3 +kerning first=325 second=227 amount=-2 +kerning first=249 second=303 amount=-2 +kerning first=1045 second=1113 amount=-1 +kerning first=289 second=227 amount=-3 +kerning first=280 second=78 amount=-2 +kerning first=351 second=115 amount=-3 +kerning first=259 second=44 amount=-1 +kerning first=256 second=346 amount=-3 +kerning first=223 second=44 amount=-3 +kerning first=8216 second=240 amount=-3 +kerning first=86 second=8249 amount=-5 +kerning first=208 second=78 amount=-2 +kerning first=279 second=115 amount=-2 +kerning first=331 second=44 amount=-1 +kerning first=315 second=115 amount=-1 +kerning first=295 second=44 amount=-1 +kerning first=67 second=75 amount=-3 +kerning first=69 second=374 amount=-1 +kerning first=313 second=368 amount=-3 +kerning first=305 second=120 amount=-1 +kerning first=201 second=78 amount=-2 +kerning first=279 second=378 amount=-2 +kerning first=313 second=203 amount=-2 +kerning first=234 second=46 amount=-3 +kerning first=379 second=68 amount=-1 +kerning first=73 second=375 amount=-2 +kerning first=374 second=248 amount=-3 +kerning first=1069 second=1064 amount=-1 +kerning first=367 second=361 amount=-1 +kerning first=351 second=118 amount=-3 +kerning first=208 second=75 amount=-2 +kerning first=216 second=323 amount=-2 +kerning first=8218 second=105 amount=-1 +kerning first=218 second=8249 amount=-5 +kerning first=8222 second=230 amount=-2 +kerning first=366 second=198 amount=-4 +kerning first=302 second=248 amount=-2 +kerning first=233 second=120 amount=-2 +kerning first=86 second=278 amount=-1 +kerning first=288 second=323 amount=-1 +kerning first=269 second=120 amount=-2 +kerning first=210 second=85 amount=-1 +kerning first=108 second=253 amount=-3 +kerning first=243 second=118 amount=-2 +kerning first=1031 second=1085 amount=-1 +kerning first=296 second=113 amount=-2 +kerning first=207 second=118 amount=-2 +kerning first=346 second=298 amount=-3 +kerning first=352 second=75 amount=-3 +kerning first=376 second=196 amount=-6 +kerning first=8220 second=257 amount=-3 +kerning first=315 second=118 amount=-3 +kerning first=224 second=113 amount=-1 +kerning first=249 second=253 amount=-3 +kerning first=279 second=118 amount=-2 +kerning first=280 second=75 amount=-2 +kerning first=97 second=233 amount=-1 +kerning first=66 second=118 amount=-3 +kerning first=77 second=382 amount=-1 +kerning first=268 second=196 amount=-3 +kerning first=365 second=112 amount=-2 +kerning first=321 second=253 amount=-3 +kerning first=86 second=80 amount=-1 +kerning first=310 second=233 amount=-2 +kerning first=199 second=68 amount=-3 +kerning first=368 second=113 amount=-2 +kerning first=1067 second=1085 amount=-1 +kerning first=100 second=108 amount=-1 +kerning first=382 second=233 amount=-1 +kerning first=78 second=290 amount=-2 +kerning first=1057 second=1087 amount=-1 +kerning first=325 second=283 amount=-2 +kerning first=316 second=335 amount=-1 +kerning first=257 second=241 amount=-1 +kerning first=346 second=233 amount=-1 +kerning first=280 second=338 amount=-1 +kerning first=289 second=283 amount=-2 +kerning first=352 second=335 amount=-1 +kerning first=365 second=241 amount=-1 +kerning first=253 second=283 amount=-3 +kerning first=1042 second=1040 amount=-2 +kerning first=350 second=328 amount=-1 +kerning first=83 second=110 amount=-1 +kerning first=219 second=290 amount=-1 +kerning first=217 second=283 amount=-2 +kerning first=354 second=85 amount=-1 +kerning first=277 second=108 amount=-3 +kerning first=103 second=335 amount=-2 +kerning first=119 second=110 amount=-2 +kerning first=269 second=380 amount=-2 +kerning first=354 second=286 amount=-3 +kerning first=241 second=108 amount=-1 +kerning first=8220 second=220 amount=-1 +kerning first=105 second=251 amount=-1 +kerning first=305 second=380 amount=-1 +kerning first=204 second=67 amount=-2 +kerning first=221 second=241 amount=-3 +kerning first=224 second=110 amount=-1 +kerning first=282 second=286 amount=-1 +kerning first=313 second=108 amount=-2 +kerning first=377 second=380 amount=-3 +kerning first=73 second=115 amount=-2 +kerning first=230 second=248 amount=-1 +kerning first=219 second=231 amount=-2 +kerning first=379 second=331 amount=-1 +kerning first=109 second=115 amount=-1 +kerning first=199 second=65 amount=-3 +kerning first=255 second=231 amount=-3 +kerning first=69 second=286 amount=-1 +kerning first=368 second=110 amount=-2 +kerning first=1072 second=1102 amount=-1 +kerning first=307 second=331 amount=-2 +kerning first=67 second=335 amount=-2 +kerning first=203 second=193 amount=-2 +kerning first=194 second=248 amount=-1 +kerning first=233 second=380 amount=-2 +kerning first=199 second=331 amount=-1 +kerning first=250 second=115 amount=-2 +kerning first=363 second=231 amount=-1 +kerning first=235 second=331 amount=-2 +kerning first=84 second=70 amount=-1 +kerning first=89 second=248 amount=-3 +kerning first=379 second=65 amount=-1 +kerning first=291 second=231 amount=-2 +kerning first=381 second=78 amount=-1 +kerning first=327 second=231 amount=-2 +kerning first=1046 second=1073 amount=-3 +kerning first=304 second=255 amount=-2 +kerning first=111 second=326 amount=-1 +kerning first=380 second=347 amount=-2 +kerning first=211 second=302 amount=-2 +kerning first=1082 second=1073 amount=-1 +kerning first=81 second=257 amount=-1 +kerning first=344 second=347 amount=-2 +kerning first=379 second=324 amount=-1 +kerning first=1118 second=1073 amount=-1 +kerning first=332 second=205 amount=-2 +kerning first=232 second=255 amount=-2 +kerning first=8217 second=196 amount=-6 +kerning first=1075 second=1076 amount=-2 +kerning first=229 second=242 amount=-1 +kerning first=230 second=307 amount=-2 +kerning first=252 second=326 amount=-1 +kerning first=1061 second=1113 amount=-2 +kerning first=83 second=205 amount=-3 +kerning first=249 second=289 amount=-3 +kerning first=249 second=250 amount=-1 +kerning first=236 second=347 amount=-2 +kerning first=8222 second=289 amount=-1 +kerning first=78 second=231 amount=-2 +kerning first=200 second=347 amount=-1 +kerning first=337 second=8250 amount=-2 +kerning first=205 second=262 amount=-2 +kerning first=241 second=371 amount=-1 +kerning first=321 second=250 amount=-2 +kerning first=277 second=371 amount=-2 +kerning first=8250 second=316 amount=-1 +kerning first=1084 second=1077 amount=-1 +kerning first=366 second=257 amount=-3 +kerning first=250 second=378 amount=-2 +kerning first=197 second=212 amount=-3 +kerning first=72 second=250 amount=-2 +kerning first=280 second=196 amount=-2 +kerning first=214 second=378 amount=-2 +kerning first=101 second=328 amount=-2 +kerning first=81 second=366 amount=-1 +kerning first=1070 second=1052 amount=-1 +kerning first=78 second=352 amount=-2 +kerning first=45 second=366 amount=-4 +kerning first=100 second=371 amount=-1 +kerning first=330 second=257 amount=-2 +kerning first=286 second=378 amount=-1 +kerning first=108 second=250 amount=-2 +kerning first=107 second=361 amount=-1 +kerning first=67 second=332 amount=-3 +kerning first=222 second=257 amount=-1 +kerning first=73 second=378 amount=-1 +kerning first=314 second=328 amount=-1 +kerning first=1059 second=1097 amount=-4 +kerning first=278 second=328 amount=-1 +kerning first=258 second=366 amount=-3 +kerning first=117 second=257 amount=-1 +kerning first=242 second=328 amount=-1 +kerning first=222 second=366 amount=-1 +kerning first=1051 second=1047 amount=-1 +kerning first=219 second=352 amount=-3 +kerning first=109 second=378 amount=-1 +kerning first=246 second=119 amount=-2 +kerning first=1025 second=1045 amount=-1 +kerning first=352 second=254 amount=-2 +kerning first=369 second=333 amount=-1 +kerning first=200 second=288 amount=-1 +kerning first=232 second=8220 amount=-2 +kerning first=122 second=98 amount=-1 +kerning first=105 second=345 amount=-1 +kerning first=1040 second=1092 amount=-2 +kerning first=70 second=243 amount=-1 +kerning first=1031 second=1107 amount=-1 +kerning first=114 second=287 amount=-2 +kerning first=222 second=106 amount=-1 +kerning first=280 second=332 amount=-1 +kerning first=106 second=243 amount=-1 +kerning first=78 second=287 amount=-3 +kerning first=261 second=333 amount=-1 +kerning first=1086 second=1090 amount=-1 +kerning first=246 second=345 amount=-1 +kerning first=119 second=113 amount=-3 +kerning first=76 second=378 amount=-3 +kerning first=225 second=333 amount=-1 +kerning first=1050 second=1090 amount=-3 +kerning first=83 second=113 amount=-1 +kerning first=89 second=242 amount=-3 +kerning first=291 second=287 amount=-2 +kerning first=1045 second=1116 amount=-1 +kerning first=354 second=345 amount=-1 +kerning first=263 second=281 amount=-1 +kerning first=75 second=217 amount=-2 +kerning first=1058 second=1105 amount=-1 +kerning first=363 second=287 amount=-3 +kerning first=313 second=262 amount=-1 +kerning first=327 second=287 amount=-3 +kerning first=196 second=255 amount=-3 +kerning first=266 second=242 amount=-2 +kerning first=222 second=198 amount=-4 +kerning first=371 second=281 amount=-3 +kerning first=216 second=217 amount=-1 +kerning first=230 second=242 amount=-1 +kerning first=86 second=281 amount=-3 +kerning first=219 second=287 amount=-4 +kerning first=315 second=210 amount=-1 +kerning first=122 second=281 amount=-1 +kerning first=288 second=217 amount=-1 +kerning first=302 second=242 amount=-2 +kerning first=8222 second=224 amount=-2 +kerning first=344 second=288 amount=-3 +kerning first=105 second=8217 amount=-2 +kerning first=324 second=326 amount=-1 +kerning first=1061 second=1090 amount=-3 +kerning first=376 second=255 amount=-3 +kerning first=227 second=281 amount=-1 +kerning first=75 second=119 amount=-3 +kerning first=81 second=198 amount=-4 +kerning first=283 second=243 amount=-1 +kerning first=313 second=197 amount=-2 +kerning first=111 second=119 amount=-2 +kerning first=67 second=279 amount=-2 +kerning first=202 second=354 amount=-1 +kerning first=45 second=254 amount=-1 +kerning first=72 second=45 amount=-4 +kerning first=269 second=324 amount=-2 +kerning first=313 second=374 amount=-3 +kerning first=203 second=249 amount=-2 +kerning first=233 second=324 amount=-2 +kerning first=84 second=274 amount=-1 +kerning first=284 second=291 amount=-3 +kerning first=332 second=379 amount=-2 +kerning first=117 second=254 amount=-2 +kerning first=252 second=119 amount=-3 +kerning first=103 second=279 amount=-2 +kerning first=310 second=354 amount=-2 +kerning first=98 second=249 amount=-1 +kerning first=86 second=74 amount=-4 +kerning first=288 second=119 amount=-1 +kerning first=346 second=354 amount=-3 +kerning first=1053 second=1054 amount=-1 +kerning first=324 second=119 amount=-3 +kerning first=258 second=369 amount=-3 +kerning first=199 second=334 amount=-3 +kerning first=272 second=344 amount=-2 +kerning first=8217 second=256 amount=-6 +kerning first=366 second=369 amount=-1 +kerning first=65 second=233 amount=-1 +kerning first=8250 second=351 amount=-1 +kerning first=330 second=369 amount=-2 +kerning first=1039 second=1079 amount=-1 +kerning first=105 second=289 amount=-3 +kerning first=377 second=214 amount=-1 +kerning first=74 second=264 amount=-2 +kerning first=352 second=279 amount=-1 +kerning first=8217 second=371 amount=-1 +kerning first=217 second=339 amount=-2 +kerning first=219 second=234 amount=-2 +kerning first=1092 second=1074 amount=-1 +kerning first=255 second=234 amount=-3 +kerning first=200 second=229 amount=-1 +kerning first=200 second=344 amount=-2 +kerning first=379 second=86 amount=-2 +kerning first=236 second=229 amount=-2 +kerning first=81 second=106 amount=-1 +kerning first=107 second=255 amount=-1 +kerning first=325 second=339 amount=-2 +kerning first=86 second=284 amount=-3 +kerning first=117 second=106 amount=-2 +kerning first=377 second=324 amount=-1 +kerning first=368 second=97 amount=-3 +kerning first=316 second=279 amount=-1 +kerning first=253 second=339 amount=-3 +kerning first=78 second=234 amount=-2 +kerning first=344 second=229 amount=-2 +kerning first=45 second=106 amount=-2 +kerning first=289 second=339 amount=-2 +kerning first=1057 second=1084 amount=-1 +kerning first=380 second=229 amount=-1 +kerning first=232 second=8217 amount=-2 +kerning first=205 second=111 amount=-2 +kerning first=365 second=244 amount=-1 +kerning first=196 second=199 amount=-3 +kerning first=199 second=219 amount=-2 +kerning first=368 second=264 amount=-1 +kerning first=377 second=209 amount=-1 +kerning first=277 second=111 amount=-1 +kerning first=268 second=199 amount=-3 +kerning first=296 second=264 amount=-2 +kerning first=8216 second=246 amount=-3 +kerning first=1076 second=1089 amount=-1 +kerning first=304 second=199 amount=-2 +kerning first=327 second=234 amount=-2 +kerning first=205 second=339 amount=-2 +kerning first=260 second=264 amount=-3 +kerning first=1040 second=1089 amount=-2 +kerning first=354 second=82 amount=-1 +kerning first=363 second=234 amount=-1 +kerning first=376 second=199 amount=-3 +kerning first=196 second=8217 amount=-5 +kerning first=100 second=111 amount=-1 +kerning first=379 second=334 amount=-1 +kerning first=243 second=121 amount=-3 +kerning first=203 second=364 amount=-2 +kerning first=252 second=251 amount=-1 +kerning first=210 second=289 amount=-1 +kerning first=207 second=121 amount=-2 +kerning first=210 second=82 amount=-2 +kerning first=216 second=66 amount=-2 +kerning first=1114 second=1099 amount=-1 +kerning first=246 second=289 amount=-2 +kerning first=80 second=244 amount=-1 +kerning first=282 second=289 amount=-3 +kerning first=282 second=82 amount=-2 +kerning first=1076 second=1086 amount=-1 +kerning first=354 second=289 amount=-4 +kerning first=221 second=244 amount=-3 +kerning first=258 second=254 amount=-2 +kerning first=257 second=244 amount=-1 +kerning first=69 second=82 amount=-2 +kerning first=288 second=66 amount=-1 +kerning first=371 second=225 amount=-2 +kerning first=269 second=117 amount=-2 +kerning first=67 second=72 amount=-3 +kerning first=89 second=97 amount=-5 +kerning first=211 second=296 amount=-2 +kerning first=233 second=117 amount=-2 +kerning first=313 second=200 amount=-2 +kerning first=111 second=122 amount=-2 +kerning first=290 second=76 amount=-1 +kerning first=108 second=102 amount=-1 +kerning first=374 second=245 amount=-3 +kerning first=45 second=251 amount=-1 +kerning first=227 second=225 amount=-1 +kerning first=266 second=97 amount=-2 +kerning first=314 second=244 amount=-1 +kerning first=85 second=227 amount=-3 +kerning first=324 second=122 amount=-1 +kerning first=263 second=225 amount=-2 +kerning first=377 second=117 amount=-3 +kerning first=208 second=72 amount=-2 +kerning first=302 second=97 amount=-2 +kerning first=86 second=77 amount=-1 +kerning first=351 second=121 amount=-3 +kerning first=117 second=251 amount=-1 +kerning first=288 second=122 amount=-1 +kerning first=328 second=347 amount=-1 +kerning first=379 second=71 amount=-1 +kerning first=315 second=121 amount=-3 +kerning first=258 second=251 amount=-3 +kerning first=252 second=122 amount=-2 +kerning first=335 second=225 amount=-1 +kerning first=280 second=72 amount=-2 +kerning first=279 second=121 amount=-2 +kerning first=216 second=122 amount=-2 +kerning first=194 second=245 amount=-1 +kerning first=330 second=251 amount=-2 +kerning first=213 second=46 amount=-3 +kerning first=338 second=97 amount=-1 +kerning first=89 second=245 amount=-3 +kerning first=89 second=363 amount=-2 +kerning first=1045 second=1063 amount=-2 +kerning first=374 second=97 amount=-5 +kerning first=283 second=240 amount=-1 +kerning first=8222 second=371 amount=-1 +kerning first=366 second=251 amount=-1 +kerning first=375 second=44 amount=-5 +kerning first=8222 second=227 amount=-2 +kerning first=302 second=245 amount=-2 +kerning first=230 second=363 amount=-2 +kerning first=249 second=102 amount=-1 +kerning first=197 second=117 amount=-3 +kerning first=377 second=206 amount=-1 +kerning first=266 second=245 amount=-2 +kerning first=327 second=290 amount=-2 +kerning first=72 second=46 amount=-1 +kerning first=100 second=318 amount=-1 +kerning first=230 second=245 amount=-1 +kerning first=302 second=363 amount=-2 +kerning first=222 second=310 amount=-2 +kerning first=78 second=83 amount=-2 +kerning first=355 second=355 amount=-1 +kerning first=83 second=116 amount=-1 +kerning first=1060 second=1033 amount=-3 +kerning first=283 second=355 amount=-1 +kerning first=81 second=310 amount=-2 +kerning first=219 second=83 amount=-3 +kerning first=1057 second=1048 amount=-1 +kerning first=213 second=194 amount=-4 +kerning first=117 second=267 amount=-1 +kerning first=202 second=298 amount=-2 +kerning first=70 second=240 amount=-1 +kerning first=310 second=255 amount=-3 +kerning first=327 second=83 amount=-2 +kerning first=1098 second=1114 amount=-1 +kerning first=72 second=253 amount=-2 +kerning first=1042 second=1043 amount=-2 +kerning first=106 second=240 amount=-1 +kerning first=117 second=369 amount=-1 +kerning first=241 second=259 amount=-1 +kerning first=8218 second=382 amount=-3 +kerning first=1067 second=1088 amount=-1 +kerning first=84 second=330 amount=-1 +kerning first=208 second=220 amount=-1 +kerning first=205 second=259 amount=-2 +kerning first=67 second=220 amount=-2 +kerning first=218 second=230 amount=-3 +kerning first=1059 second=1094 amount=-4 +kerning first=374 second=304 amount=-1 +kerning first=1101 second=1075 amount=-1 +kerning first=109 second=375 amount=-2 +kerning first=277 second=259 amount=-2 +kerning first=199 second=71 amount=-3 +kerning first=75 second=214 amount=-3 +kerning first=1031 second=1088 amount=-1 +kerning first=286 second=219 amount=-1 +kerning first=352 second=220 amount=-3 +kerning first=119 second=116 amount=-1 +kerning first=338 second=304 amount=-2 +kerning first=45 second=369 amount=-1 +kerning first=260 second=116 amount=-1 +kerning first=1070 second=1049 amount=-1 +kerning first=321 second=194 amount=-2 +kerning first=280 second=220 amount=-2 +kerning first=1077 second=1095 amount=-1 +kerning first=266 second=304 amount=-3 +kerning first=336 second=90 amount=-2 +kerning first=66 second=201 amount=-4 +kerning first=1027 second=1108 amount=-3 +kerning first=346 second=317 amount=-3 +kerning first=89 second=298 amount=-1 +kerning first=365 second=291 amount=-3 +kerning first=76 second=76 amount=-2 +kerning first=1114 second=1082 amount=-1 +kerning first=1099 second=1108 amount=-1 +kerning first=278 second=77 amount=-2 +kerning first=67 second=290 amount=-3 +kerning first=1063 second=1108 amount=-1 +kerning first=119 second=227 amount=-3 +kerning first=78 second=240 amount=-2 +kerning first=1057 second=1037 amount=-1 +kerning first=257 second=291 amount=-2 +kerning first=65 second=337 amount=-1 +kerning first=202 second=317 amount=-2 +kerning first=83 second=227 amount=-2 +kerning first=288 second=304 amount=-1 +kerning first=266 second=298 amount=-3 +kerning first=87 second=350 amount=-3 +kerning first=201 second=97 amount=-1 +kerning first=221 second=291 amount=-4 +kerning first=377 second=330 amount=-1 +kerning first=298 second=100 amount=-2 +kerning first=269 second=279 amount=-1 +kerning first=274 second=317 amount=-2 +kerning first=216 second=304 amount=-2 +kerning first=338 second=298 amount=-2 +kerning first=283 second=324 amount=-2 +kerning first=232 second=110 amount=-2 +kerning first=80 second=291 amount=-3 +kerning first=264 second=350 amount=-3 +kerning first=345 second=97 amount=-1 +kerning first=268 second=110 amount=-1 +kerning first=333 second=311 amount=-1 +kerning first=87 second=90 amount=-3 +kerning first=284 second=280 amount=-1 +kerning first=104 second=8221 amount=-4 +kerning first=101 second=337 amount=-1 +kerning first=261 second=311 amount=-1 +kerning first=333 second=187 amount=-2 +kerning first=106 second=324 amount=-2 +kerning first=376 second=110 amount=-3 +kerning first=225 second=311 amount=-1 +kerning first=70 second=324 amount=-1 +kerning first=198 second=318 amount=-1 +kerning first=350 second=337 amount=-1 +kerning first=264 second=90 amount=-2 +kerning first=107 second=259 amount=-2 +kerning first=234 second=318 amount=-3 +kerning first=381 second=97 amount=-1 +kerning first=314 second=337 amount=-1 +kerning first=336 second=350 amount=-1 +kerning first=256 second=71 amount=-3 +kerning first=65 second=213 amount=-3 +kerning first=233 second=234 amount=-1 +kerning first=246 second=104 amount=-1 +kerning first=1067 second=1107 amount=-1 +kerning first=289 second=250 amount=-1 +kerning first=199 second=381 amount=-2 +kerning first=269 second=234 amount=-1 +kerning first=68 second=374 amount=-2 +kerning first=354 second=334 amount=-3 +kerning first=288 second=44 amount=-3 +kerning first=364 second=303 amount=-2 +kerning first=105 second=104 amount=-1 +kerning first=214 second=260 amount=-4 +kerning first=206 second=213 amount=-2 +kerning first=286 second=260 amount=-3 +kerning first=379 second=381 amount=-1 +kerning first=66 second=325 amount=-4 +kerning first=8218 second=356 amount=-6 +kerning first=84 second=187 amount=-3 +kerning first=111 second=44 amount=-3 +kerning first=1086 second=1081 amount=-1 +kerning first=305 second=289 amount=-2 +kerning first=278 second=213 amount=-1 +kerning first=282 second=104 amount=-1 +kerning first=262 second=374 amount=-1 +kerning first=274 second=85 amount=-2 +kerning first=119 second=351 amount=-3 +kerning first=296 second=227 amount=-2 +kerning first=374 second=298 amount=-1 +kerning first=275 second=241 amount=-2 +kerning first=219 second=111 amount=-2 +kerning first=115 second=303 amount=-2 +kerning first=83 second=351 amount=-1 +kerning first=198 second=194 amount=-2 +kerning first=255 second=111 amount=-3 +kerning first=202 second=85 amount=-2 +kerning first=224 second=351 amount=-1 +kerning first=224 second=227 amount=-1 +kerning first=377 second=70 amount=-1 +kerning first=315 second=201 amount=-2 +kerning first=291 second=111 amount=-2 +kerning first=275 second=277 amount=-1 +kerning first=327 second=111 amount=-2 +kerning first=79 second=303 amount=-1 +kerning first=69 second=104 amount=-1 +kerning first=1077 second=1074 amount=-1 +kerning first=44 second=8217 amount=-5 +kerning first=324 second=44 amount=-1 +kerning first=356 second=284 amount=-3 +kerning first=346 second=204 amount=-3 +kerning first=78 second=111 amount=-2 +kerning first=1113 second=1074 amount=-1 +kerning first=368 second=227 amount=-3 +kerning first=220 second=303 amount=-2 +kerning first=332 second=227 amount=-1 +kerning first=335 second=355 amount=-1 +kerning first=256 second=303 amount=-1 +kerning first=248 second=380 amount=-2 +kerning first=107 second=8249 amount=-3 +kerning first=376 second=362 amount=-1 +kerning first=332 second=8220 amount=-2 +kerning first=261 second=283 amount=-1 +kerning first=284 second=380 amount=-1 +kerning first=266 second=270 amount=-3 +kerning first=8222 second=252 amount=-1 +kerning first=87 second=118 amount=-3 +kerning first=206 second=105 amount=-1 +kerning first=225 second=283 amount=-1 +kerning first=374 second=270 amount=-1 +kerning first=228 second=118 amount=-3 +kerning first=65 second=105 amount=-1 +kerning first=260 second=8220 amount=-5 +kerning first=313 second=377 amount=-3 +kerning first=74 second=248 amount=-2 +kerning first=356 second=380 amount=-3 +kerning first=338 second=270 amount=-2 +kerning first=192 second=118 amount=-3 +kerning first=101 second=105 amount=-2 +kerning first=224 second=8220 amount=-3 +kerning first=120 second=283 amount=-2 +kerning first=71 second=380 amount=-1 +kerning first=314 second=241 amount=-1 +kerning first=376 second=206 amount=-1 +kerning first=122 second=287 amount=-2 +kerning first=89 second=270 amount=-1 +kerning first=364 second=228 amount=-3 +kerning first=278 second=241 amount=-1 +kerning first=369 second=283 amount=-1 +kerning first=86 second=287 amount=-4 +kerning first=346 second=85 amount=-3 +kerning first=259 second=105 amount=-1 +kerning first=328 second=228 amount=-1 +kerning first=83 second=8220 amount=-2 +kerning first=227 second=287 amount=-2 +kerning first=310 second=85 amount=-2 +kerning first=212 second=380 amount=-2 +kerning first=350 second=241 amount=-1 +kerning first=1058 second=1100 amount=-2 +kerning first=110 second=112 amount=-1 +kerning first=198 second=44 amount=-1 +kerning first=365 second=263 amount=-1 +kerning first=1108 second=1074 amount=-1 +kerning first=74 second=112 amount=-2 +kerning first=220 second=228 amount=-3 +kerning first=101 second=241 amount=-2 +kerning first=263 second=287 amount=-3 +kerning first=70 second=193 amount=-3 +kerning first=242 second=241 amount=-1 +kerning first=371 second=287 amount=-1 +kerning first=1073 second=1102 amount=-1 +kerning first=115 second=228 amount=-1 +kerning first=315 second=325 amount=-2 +kerning first=335 second=287 amount=-2 +kerning first=287 second=248 amount=-2 +kerning first=79 second=228 amount=-1 +kerning first=221 second=263 amount=-3 +kerning first=257 second=263 amount=-1 +kerning first=98 second=104 amount=-1 +kerning first=212 second=8249 amount=-1 +kerning first=88 second=235 amount=-2 +kerning first=229 second=103 amount=-2 +kerning first=328 second=331 amount=-1 +kerning first=251 second=248 amount=-1 +kerning first=213 second=197 amount=-4 +kerning first=364 second=331 amount=-2 +kerning first=307 second=365 amount=-1 +kerning first=368 second=255 amount=-1 +kerning first=374 second=366 amount=-1 +kerning first=79 second=200 amount=-2 +kerning first=211 second=221 amount=-2 +kerning first=321 second=197 amount=-2 +kerning first=378 second=318 amount=-2 +kerning first=296 second=255 amount=-2 +kerning first=323 second=112 amount=-1 +kerning first=260 second=255 amount=-3 +kerning first=266 second=366 amount=-2 +kerning first=220 second=331 amount=-2 +kerning first=197 second=262 amount=-3 +kerning first=248 second=289 amount=-2 +kerning first=224 second=255 amount=-3 +kerning first=251 second=112 amount=-2 +kerning first=115 second=331 amount=-2 +kerning first=83 second=255 amount=-2 +kerning first=198 second=290 amount=-1 +kerning first=199 second=74 amount=-2 +kerning first=193 second=338 amount=-3 +kerning first=197 second=98 amount=-2 +kerning first=1050 second=1063 amount=-4 +kerning first=305 second=98 amount=-2 +kerning first=231 second=314 amount=-3 +kerning first=88 second=338 amount=-3 +kerning first=1072 second=1087 amount=-1 +kerning first=290 second=352 amount=-2 +kerning first=269 second=98 amount=-2 +kerning first=195 second=314 amount=-2 +kerning first=1108 second=1087 amount=-1 +kerning first=202 second=214 amount=-1 +kerning first=303 second=314 amount=-2 +kerning first=89 second=65 amount=-6 +kerning first=314 second=105 amount=-1 +kerning first=1063 second=1080 amount=-1 +kerning first=84 second=283 amount=-3 +kerning first=325 second=214 amount=-2 +kerning first=267 second=314 amount=-3 +kerning first=211 second=352 amount=-1 +kerning first=350 second=105 amount=-3 +kerning first=194 second=366 amount=-3 +kerning first=1027 second=1080 amount=-2 +kerning first=274 second=214 amount=-1 +kerning first=375 second=314 amount=-2 +kerning first=242 second=105 amount=-1 +kerning first=339 second=314 amount=-3 +kerning first=278 second=105 amount=-1 +kerning first=89 second=366 amount=-1 +kerning first=8217 second=114 amount=-2 +kerning first=259 second=307 amount=-1 +kerning first=204 second=333 amount=-2 +kerning first=85 second=346 amount=-3 +kerning first=230 second=106 amount=-2 +kerning first=213 second=68 amount=-2 +kerning first=295 second=307 amount=-1 +kerning first=213 second=80 amount=-2 +kerning first=248 second=8221 amount=-2 +kerning first=331 second=307 amount=-1 +kerning first=284 second=8221 amount=-1 +kerning first=112 second=224 amount=-1 +kerning first=367 second=307 amount=-2 +kerning first=218 second=67 amount=-1 +kerning first=298 second=346 amount=-2 +kerning first=253 second=224 amount=-3 +kerning first=321 second=68 amount=-2 +kerning first=68 second=217 amount=-1 +kerning first=1047 second=1059 amount=-3 +kerning first=262 second=346 amount=-3 +kerning first=217 second=224 amount=-3 +kerning first=280 second=81 amount=-1 +kerning first=266 second=106 amount=-1 +kerning first=325 second=224 amount=-2 +kerning first=99 second=333 amount=-1 +kerning first=77 second=67 amount=-2 +kerning first=326 second=45 amount=-3 +kerning first=71 second=256 amount=-3 +kerning first=85 second=243 amount=-2 +kerning first=231 second=230 amount=-2 +kerning first=121 second=243 amount=-3 +kerning first=370 second=346 amount=-3 +kerning first=90 second=230 amount=-1 +kerning first=334 second=346 amount=-1 +kerning first=197 second=369 amount=-3 +kerning first=226 second=243 amount=-1 +kerning first=212 second=256 amount=-4 +kerning first=118 second=307 amount=-2 +kerning first=275 second=101 amount=-1 +kerning first=1088 second=1097 amount=-1 +kerning first=67 second=81 amount=-3 +kerning first=311 second=101 amount=-3 +kerning first=1118 second=1105 amount=-2 +kerning first=1074 second=1095 amount=-1 +kerning first=101 second=361 amount=-2 +kerning first=362 second=67 amount=-1 +kerning first=262 second=109 amount=-1 +kerning first=327 second=268 amount=-2 +kerning first=86 second=334 amount=-3 +kerning first=1042 second=1034 amount=-2 +kerning first=1059 second=1060 amount=-3 +kerning first=316 second=229 amount=-2 +kerning first=68 second=69 amount=-2 +kerning first=212 second=120 amount=-1 +kerning first=1030 second=1072 amount=-1 +kerning first=89 second=251 amount=-2 +kerning first=262 second=243 amount=-2 +kerning first=255 second=225 amount=-3 +kerning first=8218 second=225 amount=-2 +kerning first=298 second=243 amount=-2 +kerning first=81 second=204 amount=-2 +kerning first=194 second=251 amount=-3 +kerning first=219 second=268 amount=-1 +kerning first=45 second=204 amount=-5 +kerning first=236 second=246 amount=-1 +kerning first=370 second=243 amount=-2 +kerning first=187 second=192 amount=-4 +kerning first=266 second=251 amount=-2 +kerning first=1063 second=1098 amount=-1 +kerning first=230 second=251 amount=-2 +kerning first=244 second=229 amount=-1 +kerning first=268 second=79 amount=-3 +kerning first=78 second=268 amount=-2 +kerning first=317 second=217 amount=-3 +kerning first=338 second=251 amount=-2 +kerning first=103 second=229 amount=-3 +kerning first=368 second=380 amount=-3 +kerning first=302 second=251 amount=-2 +kerning first=381 second=282 amount=-1 +kerning first=248 second=120 amount=-3 +kerning first=1101 second=1084 amount=-1 +kerning first=352 second=229 amount=-2 +kerning first=8220 second=100 amount=-3 +kerning first=264 second=118 amount=-1 +kerning first=374 second=251 amount=-2 +kerning first=86 second=203 amount=-1 +kerning first=280 second=229 amount=-1 +kerning first=207 second=244 amount=-2 +kerning first=1045 second=1047 amount=-1 +kerning first=356 second=120 amount=-2 +kerning first=316 second=257 amount=-2 +kerning first=258 second=232 amount=-1 +kerning first=90 second=202 amount=-1 +kerning first=212 second=368 amount=-1 +kerning first=1092 second=1096 amount=-1 +kerning first=352 second=257 amount=-2 +kerning first=366 second=232 amount=-2 +kerning first=278 second=264 amount=-1 +kerning first=85 second=231 amount=-2 +kerning first=244 second=257 amount=-1 +kerning first=330 second=232 amount=-2 +kerning first=367 second=267 amount=-1 +kerning first=280 second=257 amount=-1 +kerning first=117 second=232 amount=-1 +kerning first=77 second=336 amount=-2 +kerning first=325 second=79 amount=-2 +kerning first=356 second=368 amount=-1 +kerning first=208 second=257 amount=-1 +kerning first=86 second=219 amount=-1 +kerning first=66 second=8250 amount=-2 +kerning first=240 second=361 amount=-1 +kerning first=67 second=257 amount=-2 +kerning first=367 second=279 amount=-1 +kerning first=218 second=336 amount=-1 +kerning first=204 second=361 amount=-2 +kerning first=103 second=257 amount=-3 +kerning first=72 second=244 amount=-2 +kerning first=307 second=121 amount=-3 +kerning first=82 second=267 amount=-3 +kerning first=201 second=254 amount=-1 +kerning first=108 second=244 amount=-1 +kerning first=118 second=267 amount=-3 +kerning first=198 second=278 amount=-2 +kerning first=235 second=121 amount=-2 +kerning first=8222 second=116 amount=-2 +kerning first=362 second=336 amount=-1 +kerning first=199 second=121 amount=-1 +kerning first=236 second=318 amount=-2 +kerning first=1025 second=1031 amount=-1 +kerning first=249 second=244 amount=-1 +kerning first=259 second=267 amount=-1 +kerning first=317 second=69 amount=-2 +kerning first=217 second=79 amount=-1 +kerning first=76 second=79 amount=-1 +kerning first=90 second=66 amount=-1 +kerning first=205 second=117 amount=-2 +kerning first=204 second=246 amount=-2 +kerning first=76 second=107 amount=-2 +kerning first=223 second=382 amount=-2 +kerning first=90 second=82 amount=-1 +kerning first=45 second=347 amount=-1 +kerning first=259 second=382 amount=-1 +kerning first=1052 second=1057 amount=-1 +kerning first=277 second=117 amount=-2 +kerning first=99 second=246 amount=-1 +kerning first=1045 second=1085 amount=-1 +kerning first=295 second=382 amount=-1 +kerning first=8218 second=253 amount=-1 +kerning first=72 second=216 amount=-2 +kerning first=241 second=117 amount=-1 +kerning first=112 second=107 amount=-1 +kerning first=331 second=382 amount=-1 +kerning first=339 second=230 amount=-2 +kerning first=313 second=117 amount=-2 +kerning first=375 second=230 amount=-3 +kerning first=1052 second=1085 amount=-1 +kerning first=205 second=281 amount=-2 +kerning first=267 second=230 amount=-2 +kerning first=379 second=121 amount=-3 +kerning first=118 second=382 amount=-3 +kerning first=317 second=205 amount=-2 +kerning first=303 second=230 amount=-2 +kerning first=1037 second=1047 amount=-1 +kerning first=303 second=115 amount=-2 +kerning first=277 second=281 amount=-1 +kerning first=187 second=382 amount=-5 +kerning first=255 second=240 amount=-3 +kerning first=321 second=216 amount=-1 +kerning first=68 second=205 amount=-2 +kerning first=291 second=240 amount=-2 +kerning first=363 second=371 amount=-1 +kerning first=330 second=347 amount=-2 +kerning first=243 second=8250 amount=-2 +kerning first=313 second=217 amount=-3 +kerning first=219 second=240 amount=-2 +kerning first=100 second=281 amount=-1 +kerning first=310 second=89 amount=-2 +kerning first=279 second=8250 amount=-2 +kerning first=258 second=347 amount=-2 +kerning first=354 second=81 amount=-3 +kerning first=253 second=107 amount=-2 +kerning first=367 second=382 amount=-2 +kerning first=8250 second=217 amount=-4 +kerning first=327 second=240 amount=-2 +kerning first=1074 second=1082 amount=-1 +kerning first=255 second=371 amount=-1 +kerning first=121 second=271 amount=-3 +kerning first=363 second=240 amount=-1 +kerning first=1040 second=1095 amount=-3 +kerning first=117 second=347 amount=-2 +kerning first=289 second=107 amount=-2 +kerning first=291 second=371 amount=-1 +kerning first=80 second=80 amount=-1 +kerning first=88 second=226 amount=-1 +kerning first=70 second=336 amount=-1 +kerning first=211 second=305 amount=-1 +kerning first=350 second=65 amount=-4 +kerning first=69 second=252 amount=-2 +kerning first=8220 second=84 amount=-1 +kerning first=1077 second=1083 amount=-1 +kerning first=229 second=226 amount=-1 +kerning first=105 second=252 amount=-1 +kerning first=283 second=305 amount=-2 +kerning first=187 second=122 amount=-5 +kerning first=275 second=249 amount=-2 +kerning first=278 second=207 amount=-2 +kerning first=118 second=122 amount=-3 +kerning first=337 second=226 amount=-1 +kerning first=256 second=219 amount=-3 +kerning first=115 second=305 amount=-2 +kerning first=199 second=266 amount=-3 +kerning first=381 second=245 amount=-1 +kerning first=8218 second=365 amount=-1 +kerning first=354 second=252 amount=-1 +kerning first=274 second=202 amount=-2 +kerning first=88 second=261 amount=-1 +kerning first=243 second=316 amount=-2 +kerning first=79 second=219 amount=-1 +kerning first=279 second=316 amount=-3 +kerning first=202 second=202 amount=-2 +kerning first=298 second=259 amount=-2 +kerning first=315 second=316 amount=-2 +kerning first=365 second=8221 amount=-3 +kerning first=262 second=259 amount=-2 +kerning first=351 second=316 amount=-2 +kerning first=331 second=98 amount=-2 +kerning first=370 second=259 amount=-3 +kerning first=346 second=69 amount=-3 +kerning first=246 second=252 amount=-1 +kerning first=282 second=252 amount=-2 +kerning first=346 second=202 amount=-3 +kerning first=121 second=259 amount=-3 +kerning first=74 second=332 amount=-2 +kerning first=106 second=45 amount=-3 +kerning first=201 second=369 amount=-2 +kerning first=85 second=259 amount=-3 +kerning first=112 second=116 amount=-1 +kerning first=88 second=364 amount=-2 +kerning first=89 second=382 amount=-3 +kerning first=269 second=246 amount=-1 +kerning first=1045 second=1082 amount=-1 +kerning first=70 second=45 amount=-3 +kerning first=287 second=103 amount=-2 +kerning first=253 second=116 amount=-1 +kerning first=233 second=246 amount=-1 +kerning first=365 second=375 amount=-3 +kerning first=251 second=103 amount=-3 +kerning first=197 second=246 amount=-1 +kerning first=101 second=253 amount=-2 +kerning first=352 second=109 amount=-1 +kerning first=231 second=231 amount=-1 +kerning first=110 second=103 amount=-2 +kerning first=194 second=266 amount=-3 +kerning first=323 second=332 amount=-2 +kerning first=206 second=253 amount=-2 +kerning first=355 second=45 amount=-1 +kerning first=1052 second=1074 amount=-1 +kerning first=1108 second=1075 amount=-1 +kerning first=242 second=253 amount=-3 +kerning first=244 second=109 amount=-1 +kerning first=331 second=122 amount=-1 +kerning first=1072 second=1075 amount=-1 +kerning first=374 second=382 amount=-3 +kerning first=264 second=362 amount=-2 +kerning first=116 second=375 amount=-1 +kerning first=118 second=279 amount=-3 +kerning first=295 second=122 amount=-1 +kerning first=8218 second=378 amount=-3 +kerning first=8222 second=364 amount=-3 +kerning first=202 second=331 amount=-1 +kerning first=259 second=279 amount=-1 +kerning first=314 second=101 amount=-1 +kerning first=336 second=362 amount=-1 +kerning first=280 second=109 amount=-1 +kerning first=223 second=122 amount=-2 +kerning first=321 second=356 amount=-3 +kerning first=105 second=8221 amount=-2 +kerning first=67 second=109 amount=-1 +kerning first=381 second=369 amount=-3 +kerning first=230 second=382 amount=-2 +kerning first=87 second=362 amount=-1 +kerning first=289 second=116 amount=-1 +kerning first=266 second=382 amount=-2 +kerning first=257 second=375 amount=-3 +kerning first=274 second=351 amount=-1 +kerning first=82 second=279 amount=-3 +kerning first=1100 second=1081 amount=-1 +kerning first=213 second=356 amount=-2 +kerning first=302 second=382 amount=-1 +kerning first=222 second=302 amount=-2 +kerning first=192 second=362 amount=-3 +kerning first=221 second=375 amount=-3 +kerning first=367 second=122 amount=-2 +kerning first=338 second=382 amount=-2 +kerning first=368 second=213 amount=-1 +kerning first=381 second=242 amount=-1 +kerning first=257 second=115 amount=-1 +kerning first=67 second=374 amount=-1 +kerning first=350 second=68 amount=-3 +kerning first=79 second=80 amount=-2 +kerning first=1116 second=1086 amount=-2 +kerning first=260 second=370 amount=-3 +kerning first=278 second=68 amount=-2 +kerning first=221 second=115 amount=-3 +kerning first=82 second=119 amount=-3 +kerning first=315 second=313 amount=-2 +kerning first=118 second=119 amount=-1 +kerning first=8216 second=352 amount=-1 +kerning first=187 second=119 amount=-3 +kerning first=368 second=225 amount=-3 +kerning first=361 second=8217 amount=-3 +kerning first=223 second=119 amount=-2 +kerning first=69 second=280 amount=-2 +kerning first=365 second=115 amount=-2 +kerning first=259 second=119 amount=-3 +kerning first=284 second=108 amount=-1 +kerning first=350 second=318 amount=-2 +kerning first=1079 second=1090 amount=-1 +kerning first=295 second=119 amount=-3 +kerning first=248 second=108 amount=-2 +kerning first=8218 second=257 amount=-2 +kerning first=1043 second=1090 amount=-1 +kerning first=314 second=253 amount=-3 +kerning first=211 second=73 amount=-2 +kerning first=66 second=313 amount=-4 +kerning first=350 second=253 amount=-2 +kerning first=367 second=119 amount=-3 +kerning first=1085 second=1105 amount=-1 +kerning first=79 second=315 amount=-2 +kerning first=8220 second=112 amount=-1 +kerning first=254 second=369 amount=-1 +kerning first=83 second=370 amount=-3 +kerning first=377 second=246 amount=-1 +kerning first=73 second=269 amount=-2 +kerning first=1049 second=1105 amount=-1 +kerning first=381 second=71 amount=-1 +kerning first=370 second=231 amount=-2 +kerning first=1060 second=1041 amount=-1 +kerning first=1052 second=1097 amount=-1 +kerning first=321 second=328 amount=-1 +kerning first=206 second=225 amount=-2 +kerning first=1100 second=1093 amount=-2 +kerning first=242 second=225 amount=-1 +kerning first=251 second=335 amount=-1 +kerning first=250 second=269 amount=-1 +kerning first=1040 second=1098 amount=-2 +kerning first=249 second=328 amount=-1 +kerning first=226 second=371 amount=-1 +kerning first=278 second=225 amount=-1 +kerning first=84 second=196 amount=-6 +kerning first=71 second=108 amount=-1 +kerning first=110 second=363 amount=-1 +kerning first=74 second=335 amount=-2 +kerning first=101 second=225 amount=-2 +kerning first=198 second=203 amount=-2 +kerning first=251 second=363 amount=-1 +kerning first=197 second=218 amount=-3 +kerning first=378 second=46 amount=-1 +kerning first=287 second=363 amount=-1 +kerning first=1083 second=1086 amount=-1 +kerning first=192 second=102 amount=-1 +kerning first=195 second=8221 amount=-5 +kerning first=216 second=8249 amount=-1 +kerning first=109 second=44 amount=-1 +kerning first=210 second=280 amount=-2 +kerning first=323 second=363 amount=-2 +kerning first=228 second=102 amount=-1 +kerning first=264 second=102 amount=-2 +kerning first=338 second=378 amount=-2 +kerning first=1113 second=1083 amount=-1 +kerning first=198 second=46 amount=-1 +kerning first=282 second=280 amount=-2 +kerning first=226 second=231 amount=-1 +kerning first=80 second=115 amount=-1 +kerning first=314 second=225 amount=-2 +kerning first=212 second=8221 amount=-2 +kerning first=313 second=82 amount=-2 +kerning first=262 second=231 amount=-2 +kerning first=116 second=115 amount=-1 +kerning first=350 second=225 amount=-2 +kerning first=71 second=8221 amount=-1 +kerning first=270 second=46 amount=-3 +kerning first=354 second=280 amount=-1 +kerning first=121 second=231 amount=-3 +kerning first=1104 second=1076 amount=-2 +kerning first=107 second=8221 amount=-2 +kerning first=76 second=8217 amount=-4 +kerning first=87 second=102 amount=-1 +kerning first=330 second=235 amount=-2 +kerning first=203 second=261 amount=-1 +kerning first=119 second=367 amount=-1 +kerning first=1114 second=1118 amount=-2 +kerning first=195 second=211 amount=-3 +kerning first=366 second=235 amount=-2 +kerning first=1078 second=1118 amount=-2 +kerning first=224 second=257 amount=-1 +kerning first=200 second=210 amount=-1 +kerning first=275 second=261 amount=-2 +kerning first=90 second=211 amount=-1 +kerning first=311 second=261 amount=-2 +kerning first=83 second=367 amount=-1 +kerning first=361 second=8220 amount=-3 +kerning first=375 second=326 amount=-2 +kerning first=350 second=250 amount=-1 +kerning first=1061 second=1092 amount=-2 +kerning first=290 second=296 amount=-1 +kerning first=98 second=261 amount=-1 +kerning first=1097 second=1092 amount=-1 +kerning first=356 second=235 amount=-3 +kerning first=244 second=112 amount=-1 +kerning first=231 second=326 amount=-2 +kerning first=242 second=250 amount=-1 +kerning first=230 second=227 amount=-2 +kerning first=208 second=112 amount=-1 +kerning first=267 second=326 amount=-2 +kerning first=206 second=250 amount=-2 +kerning first=225 second=171 amount=-2 +kerning first=344 second=231 amount=-3 +kerning first=303 second=326 amount=-2 +kerning first=290 second=327 amount=-1 +kerning first=76 second=8220 amount=-4 +kerning first=103 second=112 amount=-1 +kerning first=117 second=235 amount=-1 +kerning first=339 second=326 amount=-2 +kerning first=278 second=250 amount=-2 +kerning first=116 second=378 amount=-1 +kerning first=8217 second=120 amount=-1 +kerning first=67 second=112 amount=-3 +kerning first=65 second=250 amount=-3 +kerning first=347 second=261 amount=-1 +kerning first=90 second=201 amount=-1 +kerning first=90 second=326 amount=-1 +kerning first=108 second=328 amount=-1 +kerning first=258 second=235 amount=-1 +kerning first=1044 second=1047 amount=-1 +kerning first=334 second=86 amount=-2 +kerning first=101 second=250 amount=-2 +kerning first=120 second=171 amount=-3 +kerning first=99 second=237 amount=-2 +kerning first=66 second=288 amount=-3 +kerning first=323 second=100 amount=-2 +kerning first=350 second=365 amount=-1 +kerning first=1043 second=1093 amount=-3 +kerning first=201 second=366 amount=-2 +kerning first=365 second=378 amount=-2 +kerning first=314 second=365 amount=-2 +kerning first=278 second=365 amount=-2 +kerning first=311 second=113 amount=-3 +kerning first=262 second=262 amount=-3 +kerning first=242 second=365 amount=-1 +kerning first=85 second=83 amount=-3 +kerning first=298 second=262 amount=-2 +kerning first=257 second=378 amount=-1 +kerning first=206 second=365 amount=-2 +kerning first=1060 second=1113 amount=-2 +kerning first=352 second=112 amount=-3 +kerning first=221 second=378 amount=-3 +kerning first=369 second=171 amount=-2 +kerning first=222 second=76 amount=-2 +kerning first=316 second=112 amount=-1 +kerning first=90 second=323 amount=-1 +kerning first=8250 second=69 amount=-5 +kerning first=287 second=100 amount=-2 +kerning first=262 second=83 amount=-3 +kerning first=222 second=87 amount=-2 +kerning first=327 second=45 amount=-4 +kerning first=264 second=275 amount=-2 +kerning first=298 second=83 amount=-2 +kerning first=258 second=87 amount=-6 +kerning first=354 second=249 amount=-1 +kerning first=1057 second=1065 amount=-1 +kerning first=337 second=223 amount=-1 +kerning first=204 second=352 amount=-2 +kerning first=334 second=83 amount=-1 +kerning first=288 second=193 amount=-3 +kerning first=246 second=249 amount=-1 +kerning first=8222 second=84 amount=-6 +kerning first=74 second=100 amount=-2 +kerning first=192 second=275 amount=-1 +kerning first=370 second=83 amount=-3 +kerning first=282 second=249 amount=-2 +kerning first=203 second=286 amount=-1 +kerning first=228 second=275 amount=-1 +kerning first=199 second=353 amount=-2 +kerning first=207 second=210 amount=-2 +kerning first=45 second=87 amount=-4 +kerning first=275 second=113 amount=-1 +kerning first=1074 second=1091 amount=-2 +kerning first=87 second=275 amount=-3 +kerning first=81 second=87 amount=-2 +kerning first=207 second=288 amount=-2 +kerning first=379 second=203 amount=-1 +kerning first=315 second=288 amount=-1 +kerning first=344 second=210 amount=-3 +kerning first=197 second=316 amount=-2 +kerning first=85 second=262 amount=-1 +kerning first=370 second=114 amount=-1 +kerning first=99 second=324 amount=-2 +kerning first=354 second=364 amount=-1 +kerning first=368 second=339 amount=-2 +kerning first=67 second=84 amount=-1 +kerning first=253 second=233 amount=-3 +kerning first=260 second=339 amount=-1 +kerning first=217 second=233 amount=-2 +kerning first=228 second=337 amount=-1 +kerning first=98 second=289 amount=-2 +kerning first=296 second=339 amount=-2 +kerning first=325 second=233 amount=-2 +kerning first=262 second=114 amount=-1 +kerning first=289 second=233 amount=-2 +kerning first=203 second=289 amount=-3 +kerning first=121 second=114 amount=-1 +kerning first=208 second=84 amount=-2 +kerning first=105 second=249 amount=-1 +kerning first=275 second=289 amount=-3 +kerning first=98 second=110 amount=-1 +kerning first=87 second=99 amount=-3 +kerning first=85 second=234 amount=-2 +kerning first=121 second=234 amount=-3 +kerning first=45 second=205 amount=-5 +kerning first=268 second=274 amount=-3 +kerning first=203 second=110 amount=-1 +kerning first=1024 second=1116 amount=-1 +kerning first=192 second=99 amount=-1 +kerning first=352 second=84 amount=-3 +kerning first=381 second=86 amount=-2 +kerning first=76 second=379 amount=-3 +kerning first=217 second=379 amount=-1 +kerning first=275 second=110 amount=-2 +kerning first=264 second=99 amount=-2 +kerning first=240 second=237 amount=-1 +kerning first=240 second=324 amount=-1 +kerning first=228 second=99 amount=-1 +kerning first=224 second=339 amount=-1 +kerning first=204 second=237 amount=-1 +kerning first=347 second=110 amount=-2 +kerning first=83 second=339 amount=-1 +kerning first=199 second=350 amount=-3 +kerning first=376 second=274 amount=-1 +kerning first=232 second=187 amount=-2 +kerning first=119 second=339 amount=-3 +kerning first=370 second=234 amount=-2 +kerning first=379 second=350 amount=-1 +kerning first=77 second=212 amount=-2 +kerning first=354 second=277 amount=-3 +kerning first=1074 second=1119 amount=-1 +kerning first=89 second=197 amount=-6 +kerning first=80 second=260 amount=-4 +kerning first=107 second=111 amount=-3 +kerning first=226 second=234 amount=-1 +kerning first=8220 second=229 amount=-3 +kerning first=262 second=234 amount=-2 +kerning first=268 second=302 amount=-3 +kerning first=298 second=234 amount=-2 +kerning first=66 second=316 amount=-3 +kerning first=102 second=316 amount=3 +kerning first=325 second=264 amount=-2 +kerning first=221 second=260 amount=-6 +kerning first=1025 second=1064 amount=-1 +kerning first=211 second=76 amount=-2 +kerning first=69 second=364 amount=-2 +kerning first=289 second=351 amount=-3 +kerning first=311 second=289 amount=-2 +kerning first=356 second=111 amount=-3 +kerning first=253 second=351 amount=-3 +kerning first=330 second=8249 amount=-4 +kerning first=90 second=354 amount=-2 +kerning first=217 second=264 amount=-1 +kerning first=368 second=367 amount=-1 +kerning first=1049 second=1102 amount=-1 +kerning first=1046 second=1054 amount=-4 +kerning first=105 second=277 amount=-1 +kerning first=325 second=351 amount=-2 +kerning first=84 second=199 amount=-3 +kerning first=195 second=354 amount=-6 +kerning first=112 second=351 amount=-2 +kerning first=71 second=377 amount=-2 +kerning first=296 second=367 amount=-2 +kerning first=1043 second=1081 amount=-2 +kerning first=8220 second=109 amount=-1 +kerning first=210 second=364 amount=-1 +kerning first=76 second=351 amount=-1 +kerning first=76 second=264 amount=-1 +kerning first=106 second=259 amount=-2 +kerning first=379 second=267 amount=-1 +kerning first=217 second=351 amount=-2 +kerning first=224 second=367 amount=-1 +kerning first=1117 second=1105 amount=-1 +kerning first=218 second=212 amount=-1 +kerning first=260 second=367 amount=-3 +kerning first=266 second=267 amount=-2 +kerning first=316 second=254 amount=-1 +kerning first=241 second=8249 amount=-3 +kerning first=370 second=111 amount=-2 +kerning first=69 second=264 amount=-1 +kerning first=303 second=351 amount=-2 +kerning first=302 second=267 amount=-2 +kerning first=8222 second=249 amount=-1 +kerning first=87 second=121 amount=-3 +kerning first=284 second=377 amount=-2 +kerning first=68 second=45 amount=-1 +kerning first=267 second=351 amount=-2 +kerning first=197 second=361 amount=-3 +kerning first=194 second=267 amount=-1 +kerning first=381 second=257 amount=-1 +kerning first=354 second=367 amount=-2 +kerning first=1099 second=1077 amount=-1 +kerning first=375 second=351 amount=-3 +kerning first=230 second=267 amount=-1 +kerning first=370 second=44 amount=-5 +kerning first=212 second=377 amount=-2 +kerning first=339 second=351 amount=-2 +kerning first=269 second=361 amount=-2 +kerning first=88 second=246 amount=-2 +kerning first=282 second=367 amount=-2 +kerning first=226 second=111 amount=-1 +kerning first=1027 second=1077 amount=-3 +kerning first=233 second=361 amount=-2 +kerning first=345 second=257 amount=-1 +kerning first=100 second=8249 amount=-2 +kerning first=262 second=111 amount=-2 +kerning first=1063 second=1077 amount=-1 +kerning first=363 second=114 amount=-1 +kerning first=90 second=351 amount=-2 +kerning first=244 second=254 amount=-1 +kerning first=344 second=337 amount=-3 +kerning first=298 second=111 amount=-2 +kerning first=255 second=114 amount=-1 +kerning first=231 second=351 amount=-2 +kerning first=305 second=361 amount=-1 +kerning first=374 second=267 amount=-3 +kerning first=280 second=254 amount=-1 +kerning first=246 second=367 amount=-1 +kerning first=356 second=377 amount=-3 +kerning first=291 second=114 amount=-1 +kerning first=195 second=351 amount=-2 +kerning first=261 second=105 amount=-1 +kerning first=253 second=261 amount=-3 +kerning first=206 second=244 amount=-2 +kerning first=356 second=117 amount=-2 +kerning first=289 second=261 amount=-3 +kerning first=203 second=274 amount=-2 +kerning first=219 second=114 amount=-1 +kerning first=104 second=44 amount=-1 +kerning first=67 second=254 amount=-1 +kerning first=325 second=261 amount=-2 +kerning first=87 second=381 amount=-3 +kerning first=234 second=287 amount=-3 +kerning first=289 second=104 amount=-2 +kerning first=103 second=254 amount=-1 +kerning first=119 second=120 amount=-1 +kerning first=69 second=367 amount=-2 +kerning first=198 second=287 amount=-3 +kerning first=222 second=344 amount=-2 +kerning first=350 second=244 amount=-1 +kerning first=8220 second=103 amount=-4 +kerning first=220 second=351 amount=-2 +kerning first=112 second=261 amount=-1 +kerning first=1074 second=1094 amount=-1 +kerning first=213 second=374 amount=-2 +kerning first=8220 second=232 amount=-3 +kerning first=313 second=8249 amount=-1 +kerning first=228 second=121 amount=-3 +kerning first=264 second=381 amount=-2 +kerning first=378 second=287 amount=-2 +kerning first=217 second=261 amount=-3 +kerning first=305 second=237 amount=-1 +kerning first=363 second=271 amount=-1 +kerning first=246 second=107 amount=-1 +kerning first=203 second=171 amount=-2 +kerning first=1067 second=1104 amount=-1 +kerning first=192 second=250 amount=-3 +kerning first=1031 second=1104 amount=-1 +kerning first=1056 second=1037 amount=-1 +kerning first=235 second=378 amount=-2 +kerning first=219 second=249 amount=-1 +kerning first=107 second=117 amount=-1 +kerning first=370 second=240 amount=-2 +kerning first=264 second=250 amount=-2 +kerning first=74 second=347 amount=-2 +kerning first=282 second=107 amount=-1 +kerning first=71 second=117 amount=-1 +kerning first=69 second=107 amount=-1 +kerning first=8218 second=219 amount=-3 +kerning first=368 second=230 amount=-3 +kerning first=83 second=354 amount=-3 +kerning first=284 second=117 amount=-1 +kerning first=87 second=250 amount=-2 +kerning first=107 second=281 amount=-3 +kerning first=105 second=107 amount=-1 +kerning first=248 second=117 amount=-1 +kerning first=85 second=240 amount=-2 +kerning first=377 second=361 amount=-3 +kerning first=121 second=240 amount=-3 +kerning first=201 second=257 amount=-1 +kerning first=354 second=264 amount=-3 +kerning first=381 second=100 amount=-1 +kerning first=221 second=288 amount=-3 +kerning first=260 second=354 amount=-6 +kerning first=379 second=263 amount=-1 +kerning first=1030 second=1047 amount=-1 +kerning first=282 second=264 amount=-1 +kerning first=257 second=339 amount=-1 +kerning first=262 second=240 amount=-2 +kerning first=307 second=378 amount=-1 +kerning first=206 second=74 amount=-1 +kerning first=347 second=171 amount=-1 +kerning first=76 second=364 amount=-3 +kerning first=332 second=354 amount=-2 +kerning first=377 second=67 amount=-1 +kerning first=298 second=240 amount=-2 +kerning first=255 second=271 amount=-3 +kerning first=323 second=347 amount=-2 +kerning first=97 second=314 amount=-1 +kerning first=121 second=371 amount=-1 +kerning first=291 second=271 amount=-2 +kerning first=287 second=347 amount=-3 +kerning first=278 second=74 amount=-1 +kerning first=226 second=240 amount=-1 +kerning first=251 second=347 amount=-2 +kerning first=321 second=252 amount=-2 +kerning first=1103 second=1104 amount=-1 +kerning first=204 second=105 amount=-1 +kerning first=199 second=90 amount=-2 +kerning first=310 second=314 amount=-1 +kerning first=113 second=311 amount=-2 +kerning first=272 second=207 amount=-2 +kerning first=274 second=314 amount=-1 +kerning first=222 second=220 amount=-1 +kerning first=200 second=201 amount=-2 +kerning first=382 second=314 amount=-2 +kerning first=81 second=220 amount=-1 +kerning first=213 second=77 amount=-2 +kerning first=317 second=317 amount=-2 +kerning first=195 second=214 amount=-3 +kerning first=346 second=314 amount=-2 +kerning first=225 second=371 amount=-1 +kerning first=302 second=338 amount=-2 +kerning first=8250 second=202 amount=-5 +kerning first=119 second=224 amount=-3 +kerning first=1057 second=1040 amount=-2 +kerning first=68 second=317 amount=-2 +kerning first=83 second=224 amount=-1 +kerning first=317 second=304 amount=-2 +kerning first=258 second=220 amount=-3 +kerning first=224 second=224 amount=-1 +kerning first=72 second=71 amount=-2 +kerning first=379 second=90 amount=-1 +kerning first=286 second=291 amount=-3 +kerning first=200 second=207 amount=-2 +kerning first=321 second=77 amount=-2 +kerning first=250 second=291 amount=-3 +kerning first=72 second=337 amount=-2 +kerning first=122 second=318 amount=-2 +kerning first=296 second=224 amount=-2 +kerning first=214 second=291 amount=-1 +kerning first=113 second=324 amount=-2 +kerning first=208 second=97 amount=-1 +kerning first=110 second=44 amount=-1 +kerning first=321 second=213 amount=-1 +kerning first=81 second=84 amount=-2 +kerning first=254 second=324 amount=-1 +kerning first=227 second=318 amount=-1 +kerning first=67 second=97 amount=-2 +kerning first=368 second=224 amount=-3 +kerning first=109 second=291 amount=-2 +kerning first=218 second=324 amount=-2 +kerning first=263 second=318 amount=-3 +kerning first=332 second=224 amount=-1 +kerning first=1047 second=1101 amount=-2 +kerning first=1088 second=1088 amount=-1 +kerning first=8250 second=66 amount=-5 +kerning first=73 second=291 amount=-3 +kerning first=249 second=337 amount=-1 +kerning first=316 second=97 amount=-2 +kerning first=321 second=71 amount=-1 +kerning first=290 second=311 amount=-1 +kerning first=200 second=380 amount=-2 +kerning first=335 second=318 amount=-2 +kerning first=352 second=97 amount=-2 +kerning first=254 second=311 amount=-1 +kerning first=74 second=196 amount=-5 +kerning first=258 second=84 amount=-6 +kerning first=66 second=328 amount=-3 +kerning first=105 second=101 amount=-1 +kerning first=244 second=97 amount=-1 +kerning first=382 second=267 amount=-1 +kerning first=187 second=298 amount=-5 +kerning first=1052 second=1088 amount=-1 +kerning first=222 second=84 amount=-2 +kerning first=108 second=337 amount=-1 +kerning first=280 second=97 amount=-1 +kerning first=76 second=104 amount=-2 +kerning first=313 second=284 amount=-1 +kerning first=362 second=193 amount=-4 +kerning first=336 second=381 amount=-2 +kerning first=81 second=344 amount=-2 +kerning first=99 second=234 amount=-1 +kerning first=335 second=303 amount=-1 +kerning first=290 second=193 amount=-3 +kerning first=375 second=227 amount=-3 +kerning first=339 second=227 amount=-2 +kerning first=204 second=234 amount=-2 +kerning first=263 second=303 amount=-2 +kerning first=253 second=104 amount=-2 +kerning first=72 second=213 amount=-2 +kerning first=200 second=325 amount=-2 +kerning first=326 second=324 amount=-1 +kerning first=354 second=101 amount=-3 +kerning first=205 second=284 amount=-2 +kerning first=1038 second=1107 amount=-4 +kerning first=281 second=44 amount=-3 +kerning first=222 second=78 amount=-2 +kerning first=254 second=187 amount=-2 +kerning first=112 second=104 amount=-1 +kerning first=362 second=324 amount=-2 +kerning first=272 second=310 amount=-2 +kerning first=8216 second=253 amount=-1 +kerning first=90 second=227 amount=-1 +kerning first=85 second=111 amount=-2 +kerning first=304 second=277 amount=-2 +kerning first=257 second=335 amount=-1 +kerning first=201 second=251 amount=-2 +kerning first=200 second=310 amount=-2 +kerning first=121 second=111 amount=-3 +kerning first=45 second=78 amount=-5 +kerning first=1101 second=1100 amount=-1 +kerning first=81 second=78 amount=-2 +kerning first=376 second=277 amount=-3 +kerning first=303 second=227 amount=-2 +kerning first=86 second=194 amount=-6 +kerning first=122 second=303 amount=-1 +kerning first=196 second=277 amount=-1 +kerning first=267 second=227 amount=-2 +kerning first=45 second=220 amount=-4 +kerning first=68 second=381 amount=-2 +kerning first=195 second=85 amount=-3 +kerning first=231 second=227 amount=-2 +kerning first=1092 second=1093 amount=-1 +kerning first=268 second=277 amount=-2 +kerning first=1056 second=1093 amount=-1 +kerning first=86 second=303 amount=-2 +kerning first=232 second=277 amount=-1 +kerning first=272 second=201 amount=-2 +kerning first=267 second=345 amount=-1 +kerning first=307 second=105 amount=-1 +kerning first=74 second=245 amount=-2 +kerning first=381 second=251 amount=-3 +kerning first=303 second=345 amount=-1 +kerning first=257 second=118 amount=-3 +kerning first=339 second=345 amount=-1 +kerning first=235 second=105 amount=-2 +kerning first=365 second=118 amount=-3 +kerning first=201 second=270 amount=-2 +kerning first=375 second=345 amount=-1 +kerning first=268 second=283 amount=-2 +kerning first=251 second=245 amount=-1 +kerning first=232 second=283 amount=-1 +kerning first=199 second=105 amount=-1 +kerning first=196 second=283 amount=-1 +kerning first=326 second=328 amount=-1 +kerning first=203 second=280 amount=-2 +kerning first=307 second=241 amount=-2 +kerning first=376 second=283 amount=-3 +kerning first=193 second=335 amount=-1 +kerning first=8220 second=87 amount=-1 +kerning first=1063 second=1105 amount=-1 +kerning first=229 second=335 amount=-1 +kerning first=255 second=108 amount=-2 +kerning first=1027 second=1083 amount=-3 +kerning first=76 second=370 amount=-3 +kerning first=304 second=283 amount=-2 +kerning first=249 second=228 amount=-1 +kerning first=213 second=228 amount=-1 +kerning first=291 second=108 amount=-3 +kerning first=381 second=270 amount=-1 +kerning first=108 second=228 amount=-2 +kerning first=235 second=241 amount=-2 +kerning first=72 second=228 amount=-2 +kerning first=88 second=335 amount=-2 +kerning first=356 second=330 amount=-1 +kerning first=363 second=108 amount=-2 +kerning first=199 second=241 amount=-1 +kerning first=90 second=73 amount=-1 +kerning first=233 second=231 amount=-1 +kerning first=381 second=122 amount=-3 +kerning first=219 second=256 amount=-4 +kerning first=350 second=362 amount=-3 +kerning first=269 second=231 amount=-1 +kerning first=206 second=305 amount=-1 +kerning first=321 second=331 amount=-1 +kerning first=313 second=278 amount=-2 +kerning first=197 second=231 amount=-1 +kerning first=8222 second=379 amount=-1 +kerning first=377 second=231 amount=-1 +kerning first=249 second=331 amount=-1 +kerning first=1045 second=1097 amount=-1 +kerning first=325 second=255 amount=-2 +kerning first=1061 second=1073 amount=-3 +kerning first=334 second=196 amount=-4 +kerning first=347 second=116 amount=-2 +kerning first=199 second=356 amount=-1 +kerning first=278 second=362 amount=-2 +kerning first=311 second=116 amount=-1 +kerning first=1043 second=1087 amount=-2 +kerning first=323 second=81 amount=-2 +kerning first=217 second=255 amount=-1 +kerning first=1079 second=1087 amount=-1 +kerning first=65 second=362 amount=-3 +kerning first=323 second=245 amount=-2 +kerning first=70 second=67 amount=-1 +kerning first=214 second=8249 amount=-1 +kerning first=112 second=255 amount=-3 +kerning first=1047 second=1095 amount=-2 +kerning first=287 second=245 amount=-2 +kerning first=76 second=255 amount=-3 +kerning first=221 second=266 amount=-3 +kerning first=78 second=211 amount=-2 +kerning first=201 second=122 amount=-2 +kerning first=379 second=105 amount=-1 +kerning first=231 second=345 amount=-1 +kerning first=374 second=282 amount=-1 +kerning first=113 second=305 amount=-2 +kerning first=253 second=316 amount=-2 +kerning first=338 second=282 amount=-2 +kerning first=77 second=305 amount=-1 +kerning first=350 second=80 amount=-3 +kerning first=1027 second=1099 amount=-2 +kerning first=323 second=229 amount=-2 +kerning first=218 second=305 amount=-2 +kerning first=74 second=81 amount=-2 +kerning first=70 second=333 amount=-1 +kerning first=266 second=282 amount=-3 +kerning first=202 second=217 amount=-2 +kerning first=321 second=65 amount=-2 +kerning first=254 second=305 amount=-1 +kerning first=274 second=217 amount=-2 +kerning first=362 second=305 amount=-2 +kerning first=79 second=68 amount=-2 +kerning first=310 second=217 amount=-2 +kerning first=364 second=216 amount=-1 +kerning first=89 second=282 amount=-1 +kerning first=326 second=305 amount=-1 +kerning first=346 second=217 amount=-3 +kerning first=278 second=80 amount=-2 +kerning first=296 second=230 amount=-2 +kerning first=111 second=307 amount=-1 +kerning first=332 second=230 amount=-1 +kerning first=8222 second=367 amount=-1 +kerning first=224 second=230 amount=-1 +kerning first=197 second=346 amount=-3 +kerning first=119 second=230 amount=-3 +kerning first=356 second=281 amount=-3 +kerning first=283 second=333 amount=-1 +kerning first=324 second=307 amount=-1 +kerning first=68 second=90 amount=-2 +kerning first=83 second=230 amount=-2 +kerning first=274 second=69 amount=-2 +kerning first=221 second=257 amount=-5 +kerning first=211 second=218 amount=-1 +kerning first=192 second=112 amount=-3 +kerning first=260 second=79 amount=-3 +kerning first=377 second=243 amount=-1 +kerning first=202 second=69 amount=-2 +kerning first=79 second=203 amount=-2 +kerning first=364 second=334 amount=-1 +kerning first=374 second=109 amount=-3 +kerning first=1030 second=1060 amount=-1 +kerning first=1045 second=1040 amount=-2 +kerning first=368 second=79 amount=-1 +kerning first=197 second=243 amount=-1 +kerning first=65 second=244 amount=-1 +kerning first=233 second=243 amount=-1 +kerning first=296 second=79 amount=-2 +kerning first=356 second=268 amount=-3 +kerning first=269 second=243 amount=-1 +kerning first=74 second=229 amount=-3 +kerning first=8217 second=290 amount=-2 +kerning first=355 second=228 amount=-1 +kerning first=255 second=120 amount=-1 +kerning first=258 second=332 amount=-3 +kerning first=1108 second=1084 amount=-1 +kerning first=110 second=229 amount=-1 +kerning first=291 second=120 amount=-2 +kerning first=288 second=192 amount=-3 +kerning first=1072 second=1084 amount=-1 +kerning first=8250 second=314 amount=-1 +kerning first=330 second=332 amount=-2 +kerning first=363 second=120 amount=-2 +kerning first=216 second=192 amount=-4 +kerning first=251 second=229 amount=-1 +kerning first=46 second=8217 amount=-5 +kerning first=67 second=242 amount=-2 +kerning first=287 second=229 amount=-3 +kerning first=366 second=332 amount=-1 +kerning first=220 second=334 amount=-1 +kerning first=219 second=120 amount=-2 +kerning first=103 second=242 amount=-2 +kerning first=231 second=339 amount=-1 +kerning first=1114 second=1090 amount=-1 +kerning first=1092 second=1099 amount=-1 +kerning first=374 second=279 amount=-3 +kerning first=8218 second=314 amount=-1 +kerning first=267 second=339 amount=-1 +kerning first=232 second=289 amount=-3 +kerning first=68 second=192 amount=-4 +kerning first=316 second=242 amount=-1 +kerning first=268 second=289 amount=-3 +kerning first=195 second=339 amount=-1 +kerning first=288 second=291 amount=-3 +kerning first=222 second=229 amount=-1 +kerning first=304 second=289 amount=-3 +kerning first=375 second=339 amount=-3 +kerning first=287 second=232 amount=-2 +kerning first=1063 second=1096 amount=-1 +kerning first=67 second=106 amount=-1 +kerning first=230 second=279 amount=-1 +kerning first=379 second=99 amount=-1 +kerning first=251 second=232 amount=-1 +kerning first=194 second=279 amount=-1 +kerning first=352 second=242 amount=-1 +kerning first=376 second=289 amount=-4 +kerning first=303 second=339 amount=-3 +kerning first=330 second=229 amount=-2 +kerning first=377 second=89 amount=-2 +kerning first=302 second=279 amount=-2 +kerning first=8222 second=261 amount=-2 +kerning first=339 second=339 amount=-1 +kerning first=323 second=232 amount=-2 +kerning first=366 second=229 amount=-3 +kerning first=1027 second=1096 amount=-2 +kerning first=89 second=119 amount=-3 +kerning first=266 second=279 amount=-2 +kerning first=210 second=379 amount=-2 +kerning first=244 second=106 amount=-2 +kerning first=187 second=282 amount=-5 +kerning first=74 second=232 amount=-1 +kerning first=194 second=119 amount=-3 +kerning first=278 second=200 amount=-2 +kerning first=282 second=379 amount=-1 +kerning first=230 second=119 amount=-2 +kerning first=8216 second=221 amount=-1 +kerning first=380 second=263 amount=-1 +kerning first=1050 second=1059 amount=-3 +kerning first=208 second=106 amount=-1 +kerning first=266 second=119 amount=-1 +kerning first=354 second=379 amount=-3 +kerning first=302 second=119 amount=-2 +kerning first=1061 second=1079 amount=-1 +kerning first=90 second=339 amount=-1 +kerning first=338 second=119 amount=-1 +kerning first=316 second=106 amount=-3 +kerning first=374 second=119 amount=-3 +kerning first=204 second=346 amount=-2 +kerning first=352 second=106 amount=-1 +kerning first=1025 second=1079 amount=-1 +kerning first=211 second=209 amount=-2 +kerning first=202 second=66 amount=-2 +kerning first=90 second=79 amount=-1 +kerning first=317 second=202 amount=-2 +kerning first=80 second=269 amount=-1 +kerning first=305 second=8217 amount=-2 +kerning first=221 second=269 amount=-3 +kerning first=1025 second=1076 amount=-2 +kerning first=1071 second=1087 amount=-1 +kerning first=200 second=316 amount=-1 +kerning first=346 second=66 amount=-3 +kerning first=236 second=316 amount=-2 +kerning first=1067 second=1119 amount=-1 +kerning first=257 second=269 amount=-1 +kerning first=274 second=66 amount=-2 +kerning first=195 second=79 amount=-3 +kerning first=274 second=205 amount=-2 +kerning first=77 second=199 amount=-2 +kerning first=365 second=269 amount=-1 +kerning first=90 second=69 amount=-1 +kerning first=8217 second=281 amount=-3 +kerning first=81 second=72 amount=-2 +kerning first=346 second=205 amount=-3 +kerning first=222 second=72 amount=-2 +kerning first=220 second=216 amount=-1 +kerning first=218 second=199 amount=-1 +kerning first=1061 second=1076 amount=-1 +kerning first=197 second=89 amount=-6 +kerning first=256 second=216 amount=-3 +kerning first=81 second=229 amount=-1 +kerning first=317 second=192 amount=-2 +kerning first=1090 second=1089 amount=-1 +kerning first=117 second=229 amount=-1 +kerning first=115 second=109 amount=-2 +kerning first=202 second=205 amount=-2 +kerning first=210 second=8217 amount=-2 +kerning first=201 second=282 amount=-2 +kerning first=362 second=199 amount=-1 +kerning first=45 second=229 amount=-1 +kerning first=246 second=8217 amount=-2 +kerning first=232 second=103 amount=-3 +kerning first=307 second=102 amount=-2 +kerning first=196 second=286 amount=-3 +kerning first=330 second=226 amount=-2 +kerning first=192 second=353 amount=-2 +kerning first=379 second=102 amount=-3 +kerning first=103 second=245 amount=-2 +kerning first=263 second=46 amount=-3 +kerning first=381 second=382 amount=-3 +kerning first=352 second=245 amount=-1 +kerning first=1090 second=1086 amount=-1 +kerning first=199 second=102 amount=-2 +kerning first=363 second=8221 amount=-3 +kerning first=316 second=245 amount=-1 +kerning first=8220 second=248 amount=-3 +kerning first=235 second=102 amount=-2 +kerning first=45 second=72 amount=-5 +kerning first=1070 second=1083 amount=-2 +kerning first=1086 second=1088 amount=-1 +kerning first=86 second=46 amount=-5 +kerning first=208 second=103 amount=-1 +kerning first=321 second=219 amount=-3 +kerning first=290 second=45 amount=-3 +kerning first=68 second=202 amount=-2 +kerning first=344 second=316 amount=-3 +kerning first=217 second=252 amount=-1 +kerning first=330 second=335 amount=-2 +kerning first=8250 second=317 amount=-5 +kerning first=380 second=316 amount=-2 +kerning first=235 second=303 amount=-2 +kerning first=103 second=103 amount=-2 +kerning first=196 second=213 amount=-3 +kerning first=253 second=252 amount=-1 +kerning first=366 second=335 amount=-2 +kerning first=67 second=103 amount=-3 +kerning first=289 second=252 amount=-1 +kerning first=81 second=226 amount=-1 +kerning first=117 second=335 amount=-1 +kerning first=117 second=226 amount=-1 +kerning first=363 second=259 amount=-1 +kerning first=76 second=252 amount=-2 +kerning first=112 second=252 amount=-1 +kerning first=258 second=335 amount=-1 +kerning first=278 second=356 amount=-1 +kerning first=211 second=206 amount=-2 +kerning first=67 second=369 amount=-2 +kerning first=255 second=259 amount=-3 +kerning first=1079 second=1114 amount=-1 +kerning first=264 second=375 amount=-1 +kerning first=219 second=259 amount=-3 +kerning first=199 second=253 amount=-1 +kerning first=228 second=375 amount=-3 +kerning first=370 second=246 amount=-2 +kerning first=327 second=259 amount=-2 +kerning first=354 second=116 amount=-1 +kerning first=374 second=122 amount=-3 +kerning first=235 second=253 amount=-2 +kerning first=103 second=369 amount=-1 +kerning first=1052 second=1082 amount=-1 +kerning first=352 second=103 amount=-3 +kerning first=1079 second=1075 amount=-1 +kerning first=325 second=252 amount=-1 +kerning first=298 second=246 amount=-2 +kerning first=78 second=259 amount=-2 +kerning first=105 second=116 amount=-1 +kerning first=65 second=356 amount=-6 +kerning first=316 second=103 amount=-3 +kerning first=1043 second=1075 amount=-2 +kerning first=307 second=253 amount=-3 +kerning first=77 second=45 amount=-4 +kerning first=262 second=246 amount=-2 +kerning first=246 second=116 amount=-1 +kerning first=111 second=97 amount=-1 +kerning first=217 second=241 amount=-2 +kerning first=280 second=103 amount=-3 +kerning first=218 second=45 amount=-5 +kerning first=226 second=246 amount=-1 +kerning first=244 second=103 amount=-2 +kerning first=1102 second=1097 amount=-1 +kerning first=114 second=259 amount=-1 +kerning first=268 second=83 amount=-3 +kerning first=1037 second=1119 amount=-1 +kerning first=8220 second=378 amount=-1 +kerning first=121 second=246 amount=-3 +kerning first=264 second=266 amount=-3 +kerning first=85 second=246 amount=-2 +kerning first=197 second=83 amount=-3 +kerning first=89 second=122 amount=-3 +kerning first=1057 second=1056 amount=-1 +kerning first=192 second=266 amount=-3 +kerning first=89 second=279 amount=-3 +kerning first=338 second=122 amount=-2 +kerning first=244 second=369 amount=-1 +kerning first=202 second=323 amount=-2 +kerning first=201 second=109 amount=-1 +kerning first=302 second=122 amount=-1 +kerning first=87 second=266 amount=-3 +kerning first=87 second=375 amount=-3 +kerning first=350 second=356 amount=-3 +kerning first=316 second=369 amount=-2 +kerning first=274 second=323 amount=-2 +kerning first=201 second=382 amount=-2 +kerning first=377 second=83 amount=-1 +kerning first=230 second=122 amount=-2 +kerning first=335 second=117 amount=-1 +kerning first=280 second=369 amount=-2 +kerning first=204 second=336 amount=-2 +kerning first=87 second=115 amount=-3 +kerning first=207 second=305 amount=-1 +kerning first=230 second=46 amount=-3 +kerning first=78 second=380 amount=-1 +kerning first=346 second=323 amount=-3 +kerning first=316 second=248 amount=-1 +kerning first=364 second=213 amount=-1 +kerning first=83 second=233 amount=-1 +kerning first=272 second=198 amount=-4 +kerning first=230 second=273 amount=-1 +kerning first=1056 second=1105 amount=-1 +kerning first=192 second=115 amount=-2 +kerning first=219 second=380 amount=-3 +kerning first=264 second=115 amount=-2 +kerning first=233 second=355 amount=-1 +kerning first=103 second=248 amount=-2 +kerning first=45 second=223 amount=-2 +kerning first=119 second=233 amount=-3 +kerning first=197 second=355 amount=-1 +kerning first=211 second=330 amount=-2 +kerning first=8220 second=97 amount=-3 +kerning first=260 second=233 amount=-1 +kerning first=364 second=259 amount=-3 +kerning first=70 second=102 amount=-1 +kerning first=117 second=223 amount=-1 +kerning first=224 second=233 amount=-1 +kerning first=366 second=338 amount=-1 +kerning first=67 second=248 amount=-2 +kerning first=278 second=90 amount=-1 +kerning first=377 second=355 amount=-1 +kerning first=192 second=8217 amount=-5 +kerning first=199 second=365 amount=-2 +kerning first=86 second=315 amount=-1 +kerning first=296 second=233 amount=-2 +kerning first=264 second=263 amount=-2 +kerning first=45 second=75 amount=-5 +kerning first=261 second=244 amount=-1 +kerning first=368 second=233 amount=-2 +kerning first=269 second=355 amount=-1 +kerning first=69 second=110 amount=-1 +kerning first=272 second=313 amount=-2 +kerning first=65 second=350 amount=-3 +kerning first=105 second=110 amount=-2 +kerning first=1036 second=1090 amount=-3 +kerning first=256 second=213 amount=-3 +kerning first=8220 second=245 amount=-3 +kerning first=87 second=263 amount=-3 +kerning first=220 second=213 amount=-1 +kerning first=216 second=298 amount=-2 +kerning first=222 second=75 amount=-2 +kerning first=1108 second=1090 amount=-1 +kerning first=246 second=110 amount=-1 +kerning first=288 second=298 amount=-1 +kerning first=220 second=328 amount=-2 +kerning first=282 second=110 amount=-1 +kerning first=362 second=196 amount=-4 +kerning first=198 second=303 amount=-1 +kerning first=252 second=316 amount=-2 +kerning first=67 second=363 amount=-2 +kerning first=234 second=303 amount=-2 +kerning first=115 second=328 amount=-2 +kerning first=354 second=110 amount=-3 +kerning first=103 second=363 amount=-1 +kerning first=72 second=225 amount=-2 +kerning first=206 second=350 amount=-2 +kerning first=83 second=85 amount=-3 +kerning first=108 second=225 amount=-2 +kerning first=364 second=328 amount=-2 +kerning first=205 second=290 amount=-2 +kerning first=218 second=196 amount=-4 +kerning first=328 second=328 amount=-1 +kerning first=244 second=363 amount=-1 +kerning first=378 second=303 amount=-1 +kerning first=86 second=200 amount=-1 +kerning first=87 second=260 amount=-6 +kerning first=280 second=363 amount=-2 +kerning first=290 second=196 amount=-3 +kerning first=350 second=350 amount=-1 +kerning first=313 second=290 amount=-1 +kerning first=74 second=235 amount=-1 +kerning first=1090 second=1103 amount=-2 +kerning first=330 second=338 amount=-2 +kerning first=352 second=363 amount=-1 +kerning first=264 second=260 amount=-3 +kerning first=258 second=338 amount=-3 +kerning first=272 second=45 amount=-1 +kerning first=376 second=286 amount=-3 +kerning first=196 second=369 amount=-3 +kerning first=85 second=345 amount=-1 +kerning first=264 second=256 amount=-3 +kerning first=336 second=260 amount=-4 +kerning first=255 second=380 amount=-3 +kerning first=304 second=286 amount=-2 +kerning first=1027 second=1093 amount=-3 +kerning first=291 second=380 amount=-3 +kerning first=332 second=85 amount=-1 +kerning first=213 second=225 amount=-1 +kerning first=121 second=98 amount=-1 +kerning first=8220 second=242 amount=-3 +kerning first=327 second=380 amount=-1 +kerning first=371 second=46 amount=-2 +kerning first=249 second=225 amount=-1 +kerning first=262 second=98 amount=-1 +kerning first=363 second=380 amount=-2 +kerning first=260 second=85 amount=-3 +kerning first=268 second=286 amount=-3 +kerning first=1092 second=1102 amount=-1 +kerning first=69 second=261 amount=-1 +kerning first=289 second=367 amount=-1 +kerning first=105 second=261 amount=-2 +kerning first=325 second=367 amount=-2 +kerning first=74 second=87 amount=-1 +kerning first=217 second=367 amount=-1 +kerning first=377 second=86 amount=-2 +kerning first=210 second=261 amount=-1 +kerning first=253 second=367 amount=-1 +kerning first=112 second=367 amount=-1 +kerning first=274 second=326 amount=-1 +kerning first=8216 second=333 amount=-3 +kerning first=363 second=111 amount=-1 +kerning first=260 second=351 amount=-2 +kerning first=211 second=327 amount=-2 +kerning first=202 second=211 amount=-1 +kerning first=197 second=352 amount=-3 +kerning first=368 second=351 amount=-2 +kerning first=193 second=210 amount=-3 +kerning first=346 second=326 amount=-1 +kerning first=328 second=230 amount=-1 +kerning first=76 second=367 amount=-2 +kerning first=219 second=377 amount=-1 +kerning first=382 second=326 amount=-2 +kerning first=88 second=210 amount=-3 +kerning first=381 second=112 amount=-1 +kerning first=8217 second=284 amount=-2 +kerning first=352 second=366 amount=-3 +kerning first=345 second=112 amount=1 +kerning first=210 second=8220 amount=-2 +kerning first=202 second=326 amount=-1 +kerning first=1090 second=1092 amount=-1 +kerning first=280 second=366 amount=-2 +kerning first=251 second=235 amount=-1 +kerning first=274 second=211 amount=-1 +kerning first=246 second=261 amount=-1 +kerning first=105 second=8220 amount=-2 +kerning first=287 second=235 amount=-2 +kerning first=235 second=250 amount=-2 +kerning first=323 second=263 amount=-2 +kerning first=323 second=235 amount=-2 +kerning first=199 second=250 amount=-2 +kerning first=84 second=302 amount=-1 +kerning first=1057 second=1053 amount=-1 +kerning first=201 second=112 amount=-2 +kerning first=307 second=250 amount=-1 +kerning first=354 second=261 amount=-5 +kerning first=197 second=86 amount=-6 +kerning first=241 second=287 amount=-2 +kerning first=67 second=366 amount=-2 +kerning first=72 second=245 amount=-2 +kerning first=80 second=275 amount=-1 +kerning first=242 second=353 amount=-2 +kerning first=269 second=237 amount=-2 +kerning first=264 second=378 amount=-2 +kerning first=313 second=287 amount=-3 +kerning first=278 second=353 amount=-1 +kerning first=327 second=262 amount=-2 +kerning first=233 second=237 amount=-2 +kerning first=1067 second=1116 amount=-1 +kerning first=314 second=353 amount=-2 +kerning first=197 second=237 amount=-1 +kerning first=336 second=378 amount=-2 +kerning first=350 second=353 amount=-1 +kerning first=196 second=171 amount=-4 +kerning first=316 second=100 amount=-1 +kerning first=65 second=353 amount=-2 +kerning first=86 second=197 amount=-6 +kerning first=87 second=378 amount=-3 +kerning first=208 second=366 amount=-1 +kerning first=352 second=100 amount=-1 +kerning first=8222 second=107 amount=-1 +kerning first=101 second=353 amount=-2 +kerning first=228 second=378 amount=-1 +kerning first=268 second=171 amount=-4 +kerning first=69 second=379 amount=-1 +kerning first=304 second=171 amount=-4 +kerning first=45 second=198 amount=-4 +kerning first=354 second=113 amount=-3 +kerning first=235 second=365 amount=-2 +kerning first=262 second=248 amount=-2 +kerning first=377 second=352 amount=-1 +kerning first=217 second=249 amount=-1 +kerning first=8216 second=218 amount=-1 +kerning first=201 second=44 amount=-1 +kerning first=76 second=249 amount=-2 +kerning first=112 second=249 amount=-1 +kerning first=374 second=346 amount=-3 +kerning first=365 second=275 amount=-1 +kerning first=78 second=262 amount=-2 +kerning first=325 second=249 amount=-1 +kerning first=73 second=288 amount=-2 +kerning first=257 second=275 amount=-1 +kerning first=72 second=74 amount=-1 +kerning first=366 second=223 amount=-2 +kerning first=8250 second=205 amount=-5 +kerning first=1038 second=1104 amount=-4 +kerning first=105 second=113 amount=-1 +kerning first=253 second=249 amount=-1 +kerning first=67 second=100 amount=-2 +kerning first=219 second=262 amount=-1 +kerning first=1043 second=1078 amount=-3 +kerning first=289 second=249 amount=-1 +kerning first=103 second=100 amount=-2 +kerning first=221 second=275 amount=-3 +kerning first=213 second=74 amount=-2 +kerning first=1045 second=1091 amount=-1 +kerning first=1079 second=1078 amount=-1 +kerning first=195 second=217 amount=-3 +kerning first=208 second=87 amount=-2 +kerning first=104 second=314 amount=-1 +kerning first=67 second=87 amount=-1 +kerning first=381 second=288 amount=-1 +kerning first=245 second=314 amount=-2 +kerning first=8222 second=218 amount=-3 +kerning first=252 second=113 amount=-1 +kerning first=260 second=217 amount=-3 +kerning first=298 second=333 amount=-2 +kerning first=317 second=314 amount=-2 +kerning first=262 second=333 amount=-2 +kerning first=88 second=269 amount=-2 +kerning first=281 second=314 amount=-3 +kerning first=334 second=80 amount=-2 +kerning first=321 second=210 amount=-1 +kerning first=75 second=366 amount=-2 +kerning first=370 second=333 amount=-2 +kerning first=229 second=269 amount=-1 +kerning first=8250 second=192 amount=-4 +kerning first=281 second=46 amount=-3 +kerning first=193 second=269 amount=-1 +kerning first=201 second=288 amount=-1 +kerning first=353 second=314 amount=-2 +kerning first=327 second=281 amount=-2 +kerning first=236 second=307 amount=-1 +kerning first=214 second=198 amount=-4 +kerning first=363 second=281 amount=-1 +kerning first=70 second=262 amount=-1 +kerning first=99 second=224 amount=-2 +kerning first=355 second=255 amount=-1 +kerning first=286 second=198 amount=-3 +kerning first=240 second=224 amount=-1 +kerning first=204 second=224 amount=-2 +kerning first=72 second=210 amount=-2 +kerning first=380 second=307 amount=-1 +kerning first=283 second=255 amount=-2 +kerning first=193 second=369 amount=-3 +kerning first=352 second=326 amount=-1 +kerning first=219 second=281 amount=-2 +kerning first=275 second=243 amount=-1 +kerning first=255 second=281 amount=-3 +kerning first=311 second=243 amount=-3 +kerning first=291 second=281 amount=-2 +kerning first=8220 second=263 amount=-3 +kerning first=1039 second=1054 amount=-1 +kerning first=378 second=120 amount=-1 +kerning first=334 second=73 amount=-2 +kerning first=321 second=203 amount=-2 +kerning first=221 second=229 amount=-5 +kerning first=68 second=75 amount=-2 +kerning first=213 second=203 amount=-2 +kerning first=80 second=229 amount=-1 +kerning first=234 second=99 amount=-1 +kerning first=116 second=229 amount=-1 +kerning first=314 second=118 amount=-3 +kerning first=198 second=120 amount=-1 +kerning first=317 second=75 amount=-2 +kerning first=217 second=101 amount=-2 +kerning first=278 second=118 amount=-1 +kerning first=234 second=120 amount=-2 +kerning first=253 second=101 amount=-3 +kerning first=274 second=382 amount=-2 +kerning first=229 second=248 amount=-1 +kerning first=257 second=229 amount=-1 +kerning first=350 second=118 amount=-3 +kerning first=262 second=73 amount=-3 +kerning first=378 second=99 amount=-1 +kerning first=325 second=101 amount=-2 +kerning first=101 second=118 amount=-2 +kerning first=216 second=106 amount=-1 +kerning first=315 second=90 amount=-3 +kerning first=242 second=118 amount=-2 +kerning first=375 second=347 amount=-3 +kerning first=283 second=8220 amount=-2 +kerning first=75 second=106 amount=-1 +kerning first=86 second=68 amount=-1 +kerning first=206 second=118 amount=-2 +kerning first=381 second=267 amount=-1 +kerning first=111 second=106 amount=-2 +kerning first=211 second=8220 amount=-2 +kerning first=324 second=106 amount=-2 +kerning first=337 second=241 amount=-1 +kerning first=121 second=355 amount=-1 +kerning first=352 second=87 amount=-3 +kerning first=65 second=118 amount=-3 +kerning first=268 second=121 amount=-1 +kerning first=106 second=8220 amount=-2 +kerning first=252 second=106 amount=-2 +kerning first=117 second=240 amount=-1 +kerning first=288 second=106 amount=-1 +kerning first=280 second=87 amount=-1 +kerning first=262 second=361 amount=-2 +kerning first=83 second=364 amount=-3 +kerning first=226 second=361 amount=-1 +kerning first=203 second=264 amount=-1 +kerning first=236 second=333 amount=-1 +kerning first=8220 second=291 amount=-4 +kerning first=376 second=212 amount=-3 +kerning first=298 second=361 amount=-2 +kerning first=227 second=303 amount=-1 +kerning first=65 second=111 amount=-1 +kerning first=260 second=364 amount=-3 +kerning first=201 second=316 amount=-1 +kerning first=304 second=212 amount=-2 +kerning first=370 second=361 amount=-1 +kerning first=101 second=111 amount=-1 +kerning first=196 second=212 amount=-3 +kerning first=365 second=257 amount=-1 +kerning first=67 second=66 amount=-3 +kerning first=206 second=111 amount=-2 +kerning first=65 second=8249 amount=-4 +kerning first=199 second=368 amount=-2 +kerning first=68 second=82 amount=-2 +kerning first=260 second=104 amount=-2 +kerning first=280 second=66 amount=-2 +kerning first=266 second=335 amount=-2 +kerning first=332 second=364 amount=-1 +kerning first=224 second=104 amount=-1 +kerning first=229 second=44 amount=-1 +kerning first=1039 second=1057 amount=-1 +kerning first=208 second=66 amount=-2 +kerning first=85 second=361 amount=-1 +kerning first=88 second=44 amount=-1 +kerning first=121 second=361 amount=-1 +kerning first=201 second=323 amount=-2 +kerning first=376 second=205 amount=-1 +kerning first=352 second=66 amount=-3 +kerning first=352 second=347 amount=-1 +kerning first=332 second=97 amount=-1 +kerning first=316 second=347 amount=-2 +kerning first=1057 second=1078 amount=-1 +kerning first=374 second=8250 amount=-3 +kerning first=71 second=278 amount=-1 +kerning first=244 second=326 amount=-1 +kerning first=280 second=347 amount=-1 +kerning first=78 second=281 amount=-2 +kerning first=381 second=323 amount=-1 +kerning first=268 second=205 amount=-3 +kerning first=212 second=278 amount=-2 +kerning first=67 second=354 amount=-1 +kerning first=244 second=347 amount=-2 +kerning first=264 second=351 amount=-2 +kerning first=296 second=97 amount=-2 +kerning first=316 second=326 amount=-1 +kerning first=365 second=250 amount=-1 +kerning first=242 second=371 amount=-1 +kerning first=284 second=278 amount=-1 +kerning first=208 second=354 amount=-2 +kerning first=116 second=250 amount=-1 +kerning first=103 second=347 amount=-3 +kerning first=356 second=278 amount=-1 +kerning first=103 second=326 amount=-1 +kerning first=257 second=250 amount=-1 +kerning first=67 second=347 amount=-2 +kerning first=1057 second=1099 amount=-1 +kerning first=280 second=354 amount=-1 +kerning first=221 second=250 amount=-2 +kerning first=268 second=233 amount=-2 +kerning first=121 second=333 amount=-3 +kerning first=314 second=378 amount=-1 +kerning first=245 second=103 amount=-2 +kerning first=1059 second=1047 amount=-3 +kerning first=232 second=233 amount=-1 +kerning first=266 second=82 amount=-3 +kerning first=101 second=371 amount=-2 +kerning first=85 second=333 amount=-2 +kerning first=278 second=378 amount=-2 +kerning first=350 second=90 amount=-1 +kerning first=209 second=103 amount=-3 +kerning first=352 second=354 amount=-3 +kerning first=73 second=226 amount=-2 +kerning first=275 second=271 amount=-1 +kerning first=226 second=333 amount=-1 +kerning first=304 second=233 amount=-2 +kerning first=109 second=226 amount=-1 +kerning first=311 second=271 amount=-3 +kerning first=350 second=378 amount=-2 +kerning first=104 second=103 amount=-2 +kerning first=100 second=365 amount=-1 +kerning first=116 second=257 amount=-1 +kerning first=214 second=219 amount=-1 +kerning first=377 second=203 amount=-1 +kerning first=68 second=103 amount=-1 +kerning first=376 second=233 amount=-3 +kerning first=214 second=226 amount=-1 +kerning first=1075 second=1092 amount=-1 +kerning first=230 second=8250 amount=-2 +kerning first=101 second=378 amount=-2 +kerning first=334 second=45 amount=-1 +kerning first=250 second=226 amount=-1 +kerning first=89 second=8250 amount=-3 +kerning first=242 second=378 amount=-2 +kerning first=222 second=204 amount=-2 +kerning first=1039 second=1085 amount=-1 +kerning first=104 second=110 amount=-1 +kerning first=286 second=226 amount=-1 +kerning first=80 second=257 amount=-1 +kerning first=206 second=378 amount=-1 +kerning first=104 second=363 amount=-1 +kerning first=232 second=240 amount=-1 +kerning first=296 second=214 amount=-2 +kerning first=88 second=220 amount=-2 +kerning first=268 second=240 amount=-2 +kerning first=260 second=214 amount=-3 +kerning first=245 second=110 amount=-1 +kerning first=209 second=363 amount=-2 +kerning first=84 second=72 amount=-1 +kerning first=79 second=65 amount=-4 +kerning first=368 second=214 amount=-1 +kerning first=281 second=110 amount=-2 +kerning first=245 second=363 amount=-1 +kerning first=196 second=240 amount=-1 +kerning first=200 second=304 amount=-2 +kerning first=281 second=363 amount=-2 +kerning first=73 second=257 amount=-2 +kerning first=106 second=318 amount=-2 +kerning first=317 second=363 amount=-2 +kerning first=1085 second=1108 amount=-1 +kerning first=220 second=65 amount=-4 +kerning first=370 second=284 amount=-1 +kerning first=353 second=363 amount=-1 +kerning first=304 second=240 amount=-2 +kerning first=262 second=284 amount=-3 +kerning first=193 second=220 amount=-3 +kerning first=187 second=270 amount=-5 +kerning first=337 second=371 amount=-1 +kerning first=90 second=334 amount=-1 +kerning first=298 second=284 amount=-2 +kerning first=187 second=369 amount=-1 +kerning first=283 second=318 amount=-3 +kerning first=364 second=65 amount=-4 +kerning first=118 second=117 amount=-1 +kerning first=118 second=369 amount=-1 +kerning first=99 second=259 amount=-2 +kerning first=223 second=116 amount=-1 +kerning first=198 second=71 amount=-1 +kerning first=379 second=375 amount=-3 +kerning first=259 second=369 amount=-1 +kerning first=240 second=259 amount=-1 +kerning first=355 second=318 amount=-1 +kerning first=223 second=369 amount=-1 +kerning first=204 second=259 amount=-2 +kerning first=112 second=8217 amount=-2 +kerning first=82 second=116 amount=-3 +kerning first=1070 second=1030 amount=-1 +kerning first=224 second=97 amount=-1 +kerning first=82 second=369 amount=-2 +kerning first=83 second=97 amount=-2 +kerning first=118 second=116 amount=-1 +kerning first=206 second=228 amount=-2 +kerning first=109 second=254 amount=-2 +kerning first=1064 second=1102 amount=-1 +kerning first=1086 second=1075 amount=-1 +kerning first=264 second=253 amount=-1 +kerning first=1100 second=1102 amount=-1 +kerning first=1056 second=1055 amount=-1 +kerning first=101 second=228 amount=-2 +kerning first=236 second=279 amount=-1 +kerning first=8222 second=382 amount=-3 +kerning first=250 second=254 amount=-2 +kerning first=378 second=324 amount=-2 +kerning first=1100 second=1074 amount=-1 +kerning first=307 second=375 amount=-3 +kerning first=331 second=369 amount=-1 +kerning first=198 second=324 amount=-1 +kerning first=8220 second=326 amount=-1 +kerning first=100 second=355 amount=-1 +kerning first=90 second=81 amount=-1 +kerning first=295 second=369 amount=-1 +kerning first=1050 second=1104 amount=-2 +kerning first=117 second=273 amount=-1 +kerning first=86 second=377 amount=-3 +kerning first=235 second=375 amount=-2 +kerning first=381 second=344 amount=-1 +kerning first=199 second=375 amount=-1 +kerning first=367 second=369 amount=-1 +kerning first=234 second=324 amount=-2 +kerning first=67 second=298 amount=-3 +kerning first=187 second=380 amount=-5 +kerning first=277 second=355 amount=-1 +kerning first=283 second=234 amount=-1 +kerning first=201 second=344 amount=-2 +kerning first=1049 second=1108 amount=-1 +kerning first=85 second=284 amount=-1 +kerning first=1064 second=1074 amount=-1 +kerning first=1086 second=1103 amount=-2 +kerning first=208 second=298 amount=-2 +kerning first=99 second=287 amount=-3 +kerning first=90 second=224 amount=-1 +kerning first=70 second=234 amount=-1 +kerning first=274 second=332 amount=-1 +kerning first=87 second=253 amount=-3 +kerning first=106 second=234 amount=-1 +kerning first=280 second=298 amount=-2 +kerning first=1053 second=1119 amount=-1 +kerning first=216 second=310 amount=-2 +kerning first=1072 second=1100 amount=-1 +kerning first=380 second=279 amount=-1 +kerning first=8218 second=371 amount=-1 +kerning first=1108 second=1100 amount=-1 +kerning first=344 second=279 amount=-3 +kerning first=192 second=253 amount=-3 +kerning first=1070 second=1058 amount=-1 +kerning first=310 second=332 amount=-3 +kerning first=352 second=298 amount=-3 +kerning first=67 second=249 amount=-2 +kerning first=8217 second=67 amount=-2 +kerning first=74 second=242 amount=-1 +kerning first=288 second=85 amount=-1 +kerning first=240 second=287 amount=-2 +kerning first=8218 second=90 amount=-1 +kerning first=307 second=108 amount=-2 +kerning first=240 second=8217 amount=-2 +kerning first=77 second=46 amount=-1 +kerning first=216 second=85 amount=-1 +kerning first=1049 second=1086 amount=-1 +kerning first=67 second=270 amount=-3 +kerning first=251 second=242 amount=-1 +kerning first=291 second=105 amount=-2 +kerning first=75 second=338 amount=-3 +kerning first=368 second=210 amount=-1 +kerning first=327 second=105 amount=-1 +kerning first=209 second=335 amount=-2 +kerning first=378 second=380 amount=-2 +kerning first=323 second=242 amount=-2 +kerning first=70 second=290 amount=-1 +kerning first=99 second=8217 amount=-2 +kerning first=287 second=242 amount=-2 +kerning first=255 second=105 amount=-2 +kerning first=281 second=335 amount=-1 +kerning first=218 second=382 amount=-3 +kerning first=350 second=333 amount=-1 +kerning first=1104 second=1117 amount=-1 +kerning first=1046 second=1060 amount=-4 +kerning first=1092 second=1083 amount=-2 +kerning first=1067 second=1094 amount=-1 +kerning first=199 second=197 amount=-3 +kerning first=198 second=380 amount=-2 +kerning first=352 second=270 amount=-3 +kerning first=193 second=248 amount=-1 +kerning first=1031 second=1094 amount=-1 +kerning first=234 second=380 amount=-2 +kerning first=228 second=225 amount=-1 +kerning first=69 second=119 amount=-1 +kerning first=264 second=225 amount=-2 +kerning first=88 second=248 amount=-2 +kerning first=105 second=119 amount=-3 +kerning first=350 second=228 amount=-1 +kerning first=199 second=108 amount=-1 +kerning first=208 second=270 amount=-2 +kerning first=314 second=228 amount=-2 +kerning first=379 second=197 amount=-1 +kerning first=1042 second=1049 amount=-2 +kerning first=278 second=228 amount=-1 +kerning first=71 second=74 amount=-1 +kerning first=280 second=270 amount=-2 +kerning first=242 second=228 amount=-1 +kerning first=118 second=351 amount=-3 +kerning first=87 second=225 amount=-5 +kerning first=1056 second=1083 amount=-2 +kerning first=296 second=103 amount=-3 +kerning first=282 second=119 amount=-1 +kerning first=8216 second=283 amount=-3 +kerning first=253 second=122 amount=-3 +kerning first=118 second=98 amount=-1 +kerning first=356 second=46 amount=-5 +kerning first=100 second=102 amount=-1 +kerning first=99 second=231 amount=-1 +kerning first=350 second=200 amount=-3 +kerning first=217 second=122 amount=-3 +kerning first=354 second=119 amount=-3 +kerning first=212 second=74 amount=-2 +kerning first=85 second=256 amount=-4 +kerning first=198 second=352 amount=-2 +kerning first=317 second=199 amount=-1 +kerning first=112 second=122 amount=-2 +kerning first=284 second=74 amount=-1 +kerning first=1049 second=1080 amount=-1 +kerning first=69 second=211 amount=-1 +kerning first=212 second=46 amount=-3 +kerning first=336 second=225 amount=-1 +kerning first=352 second=119 amount=-3 +kerning first=367 second=116 amount=-1 +kerning first=262 second=256 amount=-3 +kerning first=325 second=122 amount=-1 +kerning first=1074 second=1097 amount=-1 +kerning first=284 second=46 amount=-3 +kerning first=8217 second=334 amount=-2 +kerning first=204 second=231 amount=-2 +kerning first=282 second=318 amount=-1 +kerning first=289 second=122 amount=-3 +kerning first=258 second=245 amount=-1 +kerning first=288 second=366 amount=-1 +kerning first=282 second=211 amount=-1 +kerning first=187 second=379 amount=-4 +kerning first=119 second=316 amount=-2 +kerning first=71 second=46 amount=-3 +kerning first=244 second=380 amount=-2 +kerning first=107 second=46 amount=-1 +kerning first=370 second=256 amount=-4 +kerning first=216 second=366 amount=-1 +kerning first=117 second=245 amount=-1 +kerning first=334 second=256 amount=-4 +kerning first=241 second=102 amount=-1 +kerning first=76 second=122 amount=-3 +kerning first=277 second=102 amount=-2 +kerning first=366 second=245 amount=-2 +kerning first=90 second=80 amount=-1 +kerning first=330 second=245 amount=-2 +kerning first=8218 second=118 amount=-3 +kerning first=354 second=211 amount=-3 +kerning first=230 second=112 amount=-1 +kerning first=321 second=86 amount=-3 +kerning first=352 second=337 amount=-1 +kerning first=310 second=107 amount=-1 +kerning first=194 second=112 amount=-3 +kerning first=374 second=81 amount=-3 +kerning first=374 second=198 amount=-6 +kerning first=274 second=107 amount=-1 +kerning first=202 second=171 amount=-2 +kerning first=344 second=216 amount=-3 +kerning first=1061 second=1086 amount=-2 +kerning first=382 second=107 amount=-2 +kerning first=325 second=211 amount=-2 +kerning first=1025 second=1117 amount=-1 +kerning first=89 second=112 amount=-2 +kerning first=346 second=107 amount=-2 +kerning first=274 second=171 amount=-2 +kerning first=333 second=261 amount=-1 +kerning first=369 second=261 amount=-1 +kerning first=97 second=107 amount=-1 +kerning first=226 second=8221 amount=-3 +kerning first=200 second=216 amount=-1 +kerning first=356 second=105 amount=-2 +kerning first=8249 second=87 amount=-3 +kerning first=202 second=107 amount=-1 +kerning first=97 second=171 amount=-2 +kerning first=89 second=81 amount=-3 +kerning first=334 second=8221 amount=-2 +kerning first=1081 second=1072 amount=-1 +kerning first=346 second=100 amount=-1 +kerning first=313 second=67 amount=-1 +kerning first=307 second=235 amount=-1 +kerning first=1053 second=1098 amount=-1 +kerning first=290 second=209 amount=-1 +kerning first=212 second=105 amount=-1 +kerning first=266 second=336 amount=-3 +kerning first=1098 second=1074 amount=-1 +kerning first=248 second=105 amount=-1 +kerning first=379 second=235 amount=-1 +kerning first=1117 second=1072 amount=-1 +kerning first=374 second=112 amount=-2 +kerning first=266 second=81 amount=-3 +kerning first=66 second=251 amount=-3 +kerning first=376 second=203 amount=-1 +kerning first=310 second=171 amount=-4 +kerning first=338 second=112 amount=-2 +kerning first=346 second=171 amount=-3 +kerning first=8250 second=75 amount=-5 +kerning first=302 second=112 amount=-1 +kerning first=338 second=81 amount=-1 +kerning first=8249 second=354 amount=-3 +kerning first=382 second=171 amount=-3 +kerning first=313 second=296 amount=-2 +kerning first=266 second=112 amount=-3 +kerning first=302 second=81 amount=-2 +kerning first=1045 second=1041 amount=-1 +kerning first=102 second=251 amount=-1 +kerning first=379 second=228 amount=-1 +kerning first=250 second=275 amount=-1 +kerning first=108 second=353 amount=-2 +kerning first=243 second=251 amount=-1 +kerning first=1045 second=1079 amount=-1 +kerning first=207 second=251 amount=-2 +kerning first=84 second=230 amount=-5 +kerning first=269 second=249 amount=-2 +kerning first=89 second=379 amount=-3 +kerning first=97 second=100 amount=-1 +kerning first=76 second=204 amount=-2 +kerning first=305 second=249 amount=-1 +kerning first=8216 second=231 amount=-3 +kerning first=199 second=204 amount=-3 +kerning first=249 second=353 amount=-2 +kerning first=279 second=251 amount=-2 +kerning first=279 second=223 amount=-1 +kerning first=1071 second=1105 amount=-1 +kerning first=195 second=281 amount=-1 +kerning first=73 second=275 amount=-2 +kerning first=243 second=223 amount=-1 +kerning first=1107 second=1105 amount=-1 +kerning first=351 second=251 amount=-1 +kerning first=266 second=379 amount=-2 +kerning first=379 second=204 amount=-1 +kerning first=290 second=206 amount=-1 +kerning first=315 second=223 amount=-1 +kerning first=72 second=353 amount=-2 +kerning first=66 second=8249 amount=-3 +kerning first=363 second=365 amount=-1 +kerning first=102 second=223 amount=-1 +kerning first=304 second=268 amount=-2 +kerning first=382 second=339 amount=-1 +kerning first=76 second=211 amount=-1 +kerning first=369 second=230 amount=-1 +kerning first=66 second=223 amount=-3 +kerning first=268 second=268 amount=-3 +kerning first=376 second=268 amount=-3 +kerning first=310 second=339 amount=-2 +kerning first=8250 second=323 amount=-5 +kerning first=122 second=229 amount=-1 +kerning first=72 second=83 amount=-2 +kerning first=333 second=230 amount=-1 +kerning first=197 second=249 amount=-3 +kerning first=338 second=313 amount=-2 +kerning first=225 second=230 amount=-1 +kerning first=233 second=249 amount=-2 +kerning first=374 second=313 amount=-1 +kerning first=219 second=291 amount=-4 +kerning first=261 second=230 amount=-1 +kerning first=213 second=83 amount=-1 +kerning first=266 second=313 amount=-3 +kerning first=377 second=256 amount=-1 +kerning first=120 second=230 amount=-2 +kerning first=196 second=268 amount=-3 +kerning first=217 second=211 amount=-1 +kerning first=86 second=76 amount=-1 +kerning first=377 second=284 amount=-1 +kerning first=80 second=283 amount=-1 +kerning first=230 second=109 amount=-2 +kerning first=333 second=289 amount=-2 +kerning first=321 second=83 amount=-1 +kerning first=355 second=375 amount=-1 +kerning first=1097 second=1089 amount=-1 +kerning first=274 second=192 amount=-2 +kerning first=369 second=289 amount=-3 +kerning first=338 second=84 amount=-1 +kerning first=89 second=344 amount=-1 +kerning first=266 second=109 amount=-1 +kerning first=236 second=244 amount=-1 +kerning first=202 second=192 amount=-2 +kerning first=263 second=97 amount=-2 +kerning first=326 second=237 amount=-1 +kerning first=1024 second=1091 amount=-1 +kerning first=246 second=187 amount=-2 +kerning first=379 second=232 amount=-1 +kerning first=1060 second=1091 amount=-1 +kerning first=254 second=237 amount=-1 +kerning first=344 second=244 amount=-3 +kerning first=110 second=324 amount=-1 +kerning first=197 second=284 amount=-3 +kerning first=202 second=199 amount=-1 +kerning first=89 second=109 amount=-3 +kerning first=380 second=244 amount=-1 +kerning first=338 second=379 amount=-1 +kerning first=336 second=194 amount=-4 +kerning first=97 second=250 amount=-1 +kerning first=315 second=282 amount=-2 +kerning first=89 second=116 amount=-1 +kerning first=235 second=232 amount=-1 +kerning first=377 second=277 amount=-1 +kerning first=113 second=237 amount=-1 +kerning first=230 second=116 amount=-1 +kerning first=264 second=194 amount=-3 +kerning first=315 second=89 amount=-3 +kerning first=77 second=237 amount=-1 +kerning first=205 second=334 amount=-2 +kerning first=194 second=116 amount=-1 +kerning first=84 second=289 amount=-4 +kerning first=120 second=289 amount=-2 +kerning first=269 second=277 amount=-1 +kerning first=233 second=277 amount=-1 +kerning first=87 second=194 amount=-6 +kerning first=225 second=289 amount=-2 +kerning first=1056 second=1034 amount=-1 +kerning first=79 second=346 amount=-1 +kerning first=66 second=282 amount=-4 +kerning first=261 second=289 amount=-1 +kerning first=8216 second=259 amount=-3 +kerning first=230 second=351 amount=-2 +kerning first=279 second=254 amount=-2 +kerning first=8250 second=103 amount=-3 +kerning first=79 second=374 amount=-2 +kerning first=321 second=121 amount=-3 +kerning first=194 second=351 amount=-2 +kerning first=274 second=72 amount=-2 +kerning first=315 second=254 amount=-2 +kerning first=197 second=277 amount=-1 +kerning first=302 second=351 amount=-2 +kerning first=351 second=254 amount=-2 +kerning first=249 second=121 amount=-3 +kerning first=266 second=351 amount=-2 +kerning first=72 second=350 amount=-2 +kerning first=288 second=325 amount=-1 +kerning first=1071 second=1102 amount=-1 +kerning first=102 second=254 amount=4 +kerning first=382 second=367 amount=-2 +kerning first=1089 second=1095 amount=-1 +kerning first=321 second=350 amount=-1 +kerning first=108 second=121 amount=-3 +kerning first=274 second=367 amount=-2 +kerning first=1053 second=1095 amount=-1 +kerning first=213 second=350 amount=-1 +kerning first=72 second=121 amount=-2 +kerning first=310 second=367 amount=-3 +kerning first=1071 second=1074 amount=-1 +kerning first=89 second=351 amount=-3 +kerning first=243 second=254 amount=-1 +kerning first=233 second=305 amount=-2 +kerning first=202 second=367 amount=-2 +kerning first=1079 second=1096 amount=-1 +kerning first=122 second=117 amount=-2 +kerning first=315 second=213 amount=-1 +kerning first=197 second=305 amount=-1 +kerning first=338 second=344 amount=-2 +kerning first=274 second=199 amount=-1 +kerning first=225 second=261 amount=-1 +kerning first=274 second=79 amount=-1 +kerning first=86 second=117 amount=-2 +kerning first=1024 second=1119 amount=-1 +kerning first=305 second=305 amount=-1 +kerning first=374 second=344 amount=-1 +kerning first=332 second=366 amount=-1 +kerning first=261 second=261 amount=-1 +kerning first=97 second=367 amount=-1 +kerning first=227 second=117 amount=-1 +kerning first=269 second=305 amount=-2 +kerning first=67 second=260 amount=-3 +kerning first=202 second=79 amount=-1 +kerning first=1043 second=1096 amount=-2 +kerning first=377 second=76 amount=-1 +kerning first=66 second=254 amount=-3 +kerning first=377 second=305 amount=-1 +kerning first=208 second=260 amount=-4 +kerning first=249 second=114 amount=-1 +kerning first=374 second=351 amount=-3 +kerning first=256 second=374 amount=-6 +kerning first=338 second=351 amount=-1 +kerning first=263 second=117 amount=-2 +kerning first=81 second=192 amount=-4 +kerning first=280 second=260 amount=-2 +kerning first=84 second=261 amount=-5 +kerning first=310 second=79 amount=-3 +kerning first=371 second=117 amount=-1 +kerning first=1061 second=1089 amount=-2 +kerning first=252 second=44 amount=-2 +kerning first=209 second=117 amount=-2 +kerning first=266 second=344 amount=-3 +kerning first=356 second=379 amount=-3 +kerning first=120 second=261 amount=-2 +kerning first=202 second=72 amount=-2 +kerning first=241 second=228 amount=-1 +kerning first=346 second=192 amount=-4 +kerning first=219 second=337 amount=-2 +kerning first=194 second=316 amount=-2 +kerning first=103 second=291 amount=-2 +kerning first=377 second=336 amount=-1 +kerning first=283 second=311 amount=-2 +kerning first=363 second=361 amount=-1 +kerning first=230 second=316 amount=-3 +kerning first=67 second=291 amount=-3 +kerning first=366 second=44 amount=-5 +kerning first=313 second=362 amount=-3 +kerning first=266 second=316 amount=-1 +kerning first=78 second=337 amount=-2 +kerning first=245 second=361 amount=-1 +kerning first=363 second=337 amount=-1 +kerning first=253 second=382 amount=-3 +kerning first=338 second=316 amount=-1 +kerning first=313 second=331 amount=-1 +kerning first=327 second=337 amount=-2 +kerning first=289 second=382 amount=-3 +kerning first=106 second=311 amount=-1 +kerning first=232 second=271 amount=-1 +kerning first=291 second=337 amount=-2 +kerning first=115 second=8221 amount=-2 +kerning first=67 second=267 amount=-2 +kerning first=241 second=331 amount=-1 +kerning first=66 second=226 amount=-3 +kerning first=255 second=337 amount=-3 +kerning first=1046 second=1057 amount=-4 +kerning first=103 second=267 amount=-2 +kerning first=277 second=331 amount=-2 +kerning first=84 second=286 amount=-3 +kerning first=102 second=226 amount=-2 +kerning first=260 second=221 amount=-6 +kerning first=1104 second=1082 amount=-1 +kerning first=8222 second=119 amount=-3 +kerning first=288 second=310 amount=-1 +kerning first=330 second=266 amount=-2 +kerning first=100 second=331 amount=-1 +kerning first=366 second=266 amount=-1 +kerning first=1114 second=1087 amount=-1 +kerning first=255 second=361 amount=-1 +kerning first=83 second=221 amount=-3 +kerning first=258 second=266 amount=-3 +kerning first=1042 second=1056 amount=-2 +kerning first=1070 second=1037 amount=-1 +kerning first=219 second=361 amount=-1 +kerning first=327 second=361 amount=-2 +kerning first=1089 second=1119 amount=-1 +kerning first=291 second=361 amount=-1 +kerning first=1031 second=1101 amount=-1 +kerning first=199 second=207 amount=-3 +kerning first=377 second=45 amount=-3 +kerning first=1067 second=1101 amount=-1 +kerning first=283 second=227 amount=-2 +kerning first=377 second=252 amount=-3 +kerning first=337 second=44 amount=-3 +kerning first=197 second=252 amount=-3 +kerning first=119 second=104 amount=-2 +kerning first=221 second=201 amount=-1 +kerning first=233 second=252 amount=-2 +kerning first=83 second=104 amount=-2 +kerning first=269 second=252 amount=-2 +kerning first=354 second=246 amount=-3 +kerning first=355 second=227 amount=-1 +kerning first=8216 second=234 amount=-3 +kerning first=305 second=252 amount=-1 +kerning first=298 second=231 amount=-2 +kerning first=80 second=201 amount=-1 +kerning first=213 second=381 amount=-2 +kerning first=1090 second=1104 amount=-1 +kerning first=382 second=103 amount=-2 +kerning first=112 second=382 amount=-2 +kerning first=213 second=90 amount=-2 +kerning first=207 second=226 amount=-2 +kerning first=346 second=103 amount=-3 +kerning first=8250 second=72 amount=-5 +kerning first=321 second=90 amount=-3 +kerning first=243 second=226 amount=-1 +kerning first=310 second=103 amount=-2 +kerning first=352 second=291 amount=-3 +kerning first=217 second=382 amount=-3 +kerning first=321 second=381 amount=-3 +kerning first=8250 second=363 amount=-1 +kerning first=316 second=291 amount=-3 +kerning first=197 second=336 amount=-3 +kerning first=216 second=317 amount=-2 +kerning first=266 second=84 amount=-1 +kerning first=262 second=78 amount=-3 +kerning first=105 second=246 amount=-1 +kerning first=1064 second=1081 amount=-1 +kerning first=280 second=291 amount=-3 +kerning first=379 second=207 amount=-1 +kerning first=106 second=227 amount=-2 +kerning first=197 second=45 amount=-4 +kerning first=351 second=226 amount=-1 +kerning first=202 second=103 amount=-3 +kerning first=244 second=291 amount=-2 +kerning first=66 second=105 amount=-3 +kerning first=288 second=317 amount=-1 +kerning first=194 second=84 amount=-6 +kerning first=208 second=291 amount=-1 +kerning first=269 second=45 amount=-2 +kerning first=97 second=103 amount=-2 +kerning first=232 second=243 amount=-1 +kerning first=374 second=288 amount=-3 +kerning first=268 second=243 amount=-2 +kerning first=66 second=198 amount=-5 +kerning first=111 second=314 amount=-2 +kerning first=1092 second=1090 amount=-1 +kerning first=304 second=243 amount=-2 +kerning first=344 second=213 amount=-3 +kerning first=1070 second=1065 amount=-1 +kerning first=75 second=314 amount=-1 +kerning first=83 second=193 amount=-4 +kerning first=266 second=288 amount=-3 +kerning first=1086 second=1096 amount=-1 +kerning first=282 second=218 amount=-2 +kerning first=332 second=193 amount=-4 +kerning first=338 second=288 amount=-1 +kerning first=288 second=314 amount=-1 +kerning first=75 second=345 amount=1 +kerning first=316 second=263 amount=-1 +kerning first=328 second=249 amount=-1 +kerning first=302 second=288 amount=-2 +kerning first=252 second=314 amount=-2 +kerning first=111 second=345 amount=-1 +kerning first=352 second=263 amount=-1 +kerning first=210 second=218 amount=-1 +kerning first=8220 second=347 amount=-2 +kerning first=121 second=8249 amount=-4 +kerning first=67 second=263 amount=-2 +kerning first=327 second=365 amount=-2 +kerning first=324 second=314 amount=-1 +kerning first=307 second=115 amount=-2 +kerning first=227 second=120 amount=-1 +kerning first=103 second=263 amount=-2 +kerning first=291 second=365 amount=-1 +kerning first=288 second=78 amount=-1 +kerning first=277 second=303 amount=-2 +kerning first=199 second=115 amount=-2 +kerning first=263 second=120 amount=-2 +kerning first=252 second=345 amount=-1 +kerning first=255 second=365 amount=-1 +kerning first=70 second=224 amount=-1 +kerning first=368 second=193 amount=-4 +kerning first=85 second=8249 amount=-5 +kerning first=313 second=303 amount=-2 +kerning first=235 second=115 amount=-2 +kerning first=219 second=365 amount=-1 +kerning first=236 second=269 amount=-1 +kerning first=216 second=78 amount=-2 +kerning first=376 second=243 amount=-3 +kerning first=344 second=269 amount=-3 +kerning first=321 second=353 amount=-1 +kerning first=106 second=224 amount=-2 +kerning first=232 second=326 amount=-2 +kerning first=86 second=120 amount=-2 +kerning first=377 second=73 amount=-1 +kerning first=380 second=335 amount=-1 +kerning first=200 second=213 amount=-1 +kerning first=379 second=115 amount=-2 +kerning first=122 second=120 amount=-1 +kerning first=380 second=269 amount=-1 +kerning first=211 second=224 amount=-1 +kerning first=315 second=198 amount=-2 +kerning first=274 second=75 amount=-2 +kerning first=283 second=224 amount=-2 +kerning first=321 second=118 amount=-3 +kerning first=370 second=8249 amount=-5 +kerning first=255 second=98 amount=-1 +kerning first=78 second=46 amount=-1 +kerning first=202 second=75 amount=-2 +kerning first=303 second=365 amount=-1 +kerning first=355 second=224 amount=-1 +kerning first=1045 second=1048 amount=-1 +kerning first=205 second=303 amount=-1 +kerning first=83 second=101 amount=-1 +kerning first=335 second=120 amount=-3 +kerning first=227 second=328 amount=-1 +kerning first=334 second=8249 amount=-1 +kerning first=241 second=303 amount=-1 +kerning first=119 second=101 amount=-3 +kerning first=377 second=221 amount=-2 +kerning first=371 second=120 amount=-1 +kerning first=226 second=8249 amount=-2 +kerning first=100 second=303 amount=-1 +kerning first=199 second=235 amount=-2 +kerning first=332 second=221 amount=-2 +kerning first=122 second=328 amount=-2 +kerning first=346 second=75 amount=-3 +kerning first=262 second=8249 amount=-4 +kerning first=8217 second=355 amount=-1 +kerning first=224 second=101 amount=-1 +kerning first=235 second=235 amount=-1 +kerning first=1045 second=1076 amount=-2 +kerning first=249 second=118 amount=-3 +kerning first=86 second=328 amount=-3 +kerning first=380 second=241 amount=-2 +kerning first=260 second=101 amount=-1 +kerning first=8222 second=122 amount=-3 +kerning first=371 second=328 amount=-2 +kerning first=45 second=325 amount=-5 +kerning first=296 second=101 amount=-2 +kerning first=202 second=370 amount=-2 +kerning first=1101 second=1118 amount=-1 +kerning first=335 second=328 amount=-1 +kerning first=81 second=325 amount=-2 +kerning first=106 second=283 amount=-1 +kerning first=1056 second=1031 amount=-1 +kerning first=310 second=370 amount=-2 +kerning first=108 second=118 amount=-3 +kerning first=368 second=101 amount=-2 +kerning first=70 second=283 amount=-1 +kerning first=274 second=370 amount=-2 +kerning first=354 second=218 amount=-1 +kerning first=72 second=118 amount=-2 +kerning first=263 second=328 amount=-2 +kerning first=236 second=241 amount=-2 +kerning first=222 second=325 amount=-2 +kerning first=291 second=98 amount=-1 +kerning first=283 second=283 amount=-1 +kerning first=379 second=241 amount=-1 +kerning first=363 second=98 amount=-2 +kerning first=269 second=263 amount=-1 +kerning first=252 second=335 amount=-1 +kerning first=317 second=338 amount=-1 +kerning first=362 second=283 amount=-2 +kerning first=77 second=290 amount=-2 +kerning first=99 second=8220 amount=-2 +kerning first=1024 second=1045 amount=-1 +kerning first=278 second=108 amount=-1 +kerning first=366 second=241 amount=-2 +kerning first=317 second=85 amount=-3 +kerning first=1060 second=1045 amount=-1 +kerning first=242 second=108 amount=-2 +kerning first=1027 second=1114 amount=-2 +kerning first=209 second=338 amount=-2 +kerning first=350 second=108 amount=-2 +kerning first=314 second=289 amount=-3 +kerning first=75 second=335 amount=-2 +kerning first=117 second=241 amount=-1 +kerning first=72 second=363 amount=-2 +kerning first=314 second=108 amount=-2 +kerning first=241 second=380 amount=-1 +kerning first=8217 second=365 amount=-1 +kerning first=245 second=345 amount=-1 +kerning first=83 second=196 amount=-4 +kerning first=277 second=380 amount=-2 +kerning first=1049 second=1090 amount=-1 +kerning first=90 second=193 amount=-1 +kerning first=281 second=345 amount=-1 +kerning first=313 second=380 amount=-3 +kerning first=1060 second=1038 amount=-3 +kerning first=65 second=368 amount=-3 +kerning first=206 second=115 amount=-2 +kerning first=353 second=345 amount=-1 +kerning first=330 second=248 amount=-2 +kerning first=352 second=352 amount=-1 +kerning first=281 second=283 amount=-1 +kerning first=65 second=115 amount=-2 +kerning first=100 second=380 amount=-1 +kerning first=352 second=228 amount=-1 +kerning first=371 second=331 amount=-2 +kerning first=101 second=115 amount=-2 +kerning first=45 second=241 amount=-2 +kerning first=258 second=248 amount=-1 +kerning first=263 second=331 amount=-2 +kerning first=70 second=286 amount=-1 +kerning first=314 second=115 amount=-2 +kerning first=117 second=248 amount=-1 +kerning first=350 second=115 amount=-1 +kerning first=278 second=368 amount=-2 +kerning first=221 second=366 amount=-1 +kerning first=242 second=115 amount=-2 +kerning first=67 second=323 amount=-3 +kerning first=101 second=108 amount=-3 +kerning first=227 second=331 amount=-1 +kerning first=317 second=78 amount=-2 +kerning first=278 second=115 amount=-1 +kerning first=1024 second=1038 amount=-3 +kerning first=65 second=108 amount=-2 +kerning first=86 second=331 amount=-3 +kerning first=240 second=255 amount=-3 +kerning first=83 second=122 amount=-2 +kerning first=106 second=252 amount=-1 +kerning first=204 second=255 amount=-2 +kerning first=213 second=200 amount=-2 +kerning first=208 second=323 amount=-2 +kerning first=99 second=255 amount=-2 +kerning first=350 second=368 amount=-3 +kerning first=229 second=307 amount=-1 +kerning first=106 second=231 amount=-1 +kerning first=1042 second=1052 amount=-2 +kerning first=280 second=323 amount=-2 +kerning first=224 second=122 amount=-1 +kerning first=337 second=307 amount=-1 +kerning first=321 second=200 amount=-2 +kerning first=119 second=122 amount=-3 +kerning first=70 second=231 amount=-1 +kerning first=8220 second=260 amount=-8 +kerning first=1104 second=1085 amount=-1 +kerning first=234 second=328 amount=-2 +kerning first=213 second=207 amount=-2 +kerning first=88 second=245 amount=-2 +kerning first=362 second=290 amount=-1 +kerning first=198 second=328 amount=-1 +kerning first=187 second=366 amount=-4 +kerning first=1031 second=1097 amount=-1 +kerning first=1072 second=1118 amount=-1 +kerning first=376 second=346 amount=-3 +kerning first=256 second=214 amount=-3 +kerning first=1067 second=1097 amount=-1 +kerning first=1092 second=1080 amount=-1 +kerning first=1036 second=1118 amount=-2 +kerning first=321 second=207 amount=-2 +kerning first=82 second=366 amount=-3 +kerning first=1070 second=1040 amount=-3 +kerning first=86 second=352 amount=-3 +kerning first=378 second=328 amount=-2 +kerning first=311 second=233 amount=-3 +kerning first=218 second=290 amount=-1 +kerning first=283 second=252 amount=-2 +kerning first=229 second=326 amount=-1 +kerning first=218 second=283 amount=-2 +kerning first=275 second=233 amount=-1 +kerning first=229 second=245 amount=-1 +kerning first=1038 second=1073 amount=-3 +kerning first=193 second=245 amount=-1 +kerning first=1052 second=1105 amount=-1 +kerning first=355 second=252 amount=-1 +kerning first=113 second=283 amount=-1 +kerning first=332 second=217 amount=-1 +kerning first=218 second=257 amount=-3 +kerning first=331 second=106 amount=-2 +kerning first=367 second=106 amount=-2 +kerning first=111 second=110 amount=-1 +kerning first=316 second=324 amount=-1 +kerning first=259 second=106 amount=-1 +kerning first=377 second=333 amount=-1 +kerning first=295 second=106 amount=-2 +kerning first=82 second=113 amount=-3 +kerning first=197 second=333 amount=-1 +kerning first=321 second=378 amount=-3 +kerning first=370 second=281 amount=-2 +kerning first=86 second=65 amount=-6 +kerning first=252 second=110 amount=-1 +kerning first=201 second=87 amount=-1 +kerning first=67 second=288 amount=-3 +kerning first=98 second=107 amount=-1 +kerning first=233 second=333 amount=-1 +kerning first=324 second=110 amount=-1 +kerning first=204 second=262 amount=-2 +kerning first=80 second=198 amount=-4 +kerning first=201 second=347 amount=-1 +kerning first=226 second=281 amount=-1 +kerning first=8218 second=374 amount=-6 +kerning first=262 second=281 amount=-2 +kerning first=1100 second=1078 amount=-2 +kerning first=83 second=217 amount=-3 +kerning first=298 second=281 amount=-2 +kerning first=221 second=198 amount=-6 +kerning first=278 second=210 amount=-1 +kerning first=354 second=243 amount=-3 +kerning first=66 second=120 amount=-3 +kerning first=280 second=288 amount=-1 +kerning first=251 second=326 amount=-1 +kerning first=85 second=281 amount=-2 +kerning first=206 second=210 amount=-2 +kerning first=105 second=243 amount=-1 +kerning first=99 second=361 amount=-2 +kerning first=202 second=218 amount=-2 +kerning first=287 second=326 amount=-1 +kerning first=121 second=281 amount=-3 +kerning first=262 second=274 amount=-3 +kerning first=241 second=120 amount=-1 +kerning first=1042 second=1031 amount=-2 +kerning first=277 second=120 amount=-2 +kerning first=350 second=203 amount=-3 +kerning first=100 second=99 amount=-1 +kerning first=278 second=203 amount=-2 +kerning first=205 second=99 amount=-2 +kerning first=100 second=120 amount=-1 +kerning first=228 second=229 amount=-1 +kerning first=315 second=304 amount=-2 +kerning first=366 second=248 amount=-2 +kerning first=334 second=274 amount=-2 +kerning first=87 second=229 amount=-5 +kerning first=277 second=99 amount=-1 +kerning first=198 second=377 amount=-1 +kerning first=259 second=113 amount=-1 +kerning first=307 second=118 amount=-3 +kerning first=316 second=267 amount=-1 +kerning first=336 second=229 amount=-1 +kerning first=288 second=75 amount=-1 +kerning first=352 second=267 amount=-1 +kerning first=120 second=8249 amount=-3 +kerning first=187 second=345 amount=-2 +kerning first=1085 second=1077 amount=-1 +kerning first=379 second=118 amount=-2 +kerning first=264 second=229 amount=-2 +kerning first=118 second=113 amount=-3 +kerning first=216 second=75 amount=-2 +kerning first=332 second=196 amount=-4 +kerning first=1049 second=1077 amount=-1 +kerning first=367 second=113 amount=-1 +kerning first=223 second=106 amount=-2 +kerning first=235 second=118 amount=-2 +kerning first=82 second=106 amount=-1 +kerning first=381 second=87 amount=-2 +kerning first=209 second=332 amount=-2 +kerning first=198 second=68 amount=-2 +kerning first=199 second=118 amount=-1 +kerning first=321 second=316 amount=-2 +kerning first=240 second=8220 amount=-2 +kerning first=118 second=106 amount=-2 +kerning first=317 second=332 amount=-1 +kerning first=376 second=264 amount=-3 +kerning first=376 second=209 amount=-1 +kerning first=106 second=287 amount=-3 +kerning first=249 second=365 amount=-1 +kerning first=108 second=111 amount=-1 +kerning first=90 second=199 amount=-1 +kerning first=70 second=287 amount=-3 +kerning first=304 second=264 amount=-2 +kerning first=211 second=287 amount=-1 +kerning first=66 second=219 amount=-3 +kerning first=268 second=264 amount=-3 +kerning first=195 second=199 amount=-3 +kerning first=268 second=209 amount=-3 +kerning first=66 second=121 amount=-3 +kerning first=283 second=287 amount=-3 +kerning first=196 second=264 amount=-3 +kerning first=352 second=224 amount=-1 +kerning first=377 second=347 amount=-2 +kerning first=1024 second=1094 amount=-1 +kerning first=362 second=234 amount=-2 +kerning first=233 second=8217 amount=-2 +kerning first=355 second=287 amount=-2 +kerning first=117 second=242 amount=-1 +kerning first=269 second=8217 amount=-2 +kerning first=258 second=242 amount=-1 +kerning first=77 second=289 amount=-3 +kerning first=65 second=374 amount=-6 +kerning first=274 second=82 amount=-2 +kerning first=347 second=314 amount=-2 +kerning first=101 second=121 amount=-2 +kerning first=259 second=8221 amount=-3 +kerning first=330 second=242 amount=-2 +kerning first=65 second=121 amount=-3 +kerning first=195 second=364 amount=-3 +kerning first=218 second=289 amount=-4 +kerning first=346 second=82 amount=-3 +kerning first=249 second=111 amount=-1 +kerning first=116 second=254 amount=-1 +kerning first=254 second=289 amount=-2 +kerning first=88 second=244 amount=-2 +kerning first=352 second=223 amount=-1 +kerning first=366 second=242 amount=-2 +kerning first=76 second=119 amount=-3 +kerning first=290 second=289 amount=-3 +kerning first=112 second=119 amount=-2 +kerning first=326 second=289 amount=-2 +kerning first=290 second=73 amount=-1 +kerning first=366 second=67 amount=-1 +kerning first=278 second=197 amount=-2 +kerning first=257 second=254 amount=-1 +kerning first=362 second=289 amount=-4 +kerning first=229 second=244 amount=-1 +kerning first=202 second=82 amount=-2 +kerning first=8218 second=381 amount=-1 +kerning first=355 second=230 amount=-1 +kerning first=217 second=119 amount=-2 +kerning first=350 second=197 amount=-4 +kerning first=231 second=97 amount=-2 +kerning first=262 second=76 amount=-3 +kerning first=253 second=119 amount=-1 +kerning first=8217 second=99 amount=-3 +kerning first=201 second=354 amount=-1 +kerning first=90 second=97 amount=-1 +kerning first=283 second=230 amount=-2 +kerning first=289 second=119 amount=-1 +kerning first=378 second=117 amount=-2 +kerning first=350 second=121 amount=-2 +kerning first=339 second=97 amount=-2 +kerning first=211 second=230 amount=-1 +kerning first=317 second=72 amount=-2 +kerning first=344 second=275 amount=-3 +kerning first=314 second=121 amount=-3 +kerning first=219 second=74 amount=-3 +kerning first=84 second=205 amount=-1 +kerning first=286 second=250 amount=-1 +kerning first=380 second=275 amount=-1 +kerning first=267 second=97 amount=-2 +kerning first=106 second=230 amount=-2 +kerning first=381 second=354 amount=-2 +kerning first=242 second=121 amount=-3 +kerning first=303 second=97 amount=-2 +kerning first=206 second=121 amount=-2 +kerning first=327 second=74 amount=-1 +kerning first=1051 second=1108 amount=-1 +kerning first=232 second=311 amount=-2 +kerning first=260 second=107 amount=-2 +kerning first=109 second=250 amount=-1 +kerning first=108 second=378 amount=-1 +kerning first=224 second=107 amount=-1 +kerning first=311 second=240 amount=-3 +kerning first=334 second=366 amount=-1 +kerning first=250 second=250 amount=-1 +kerning first=249 second=378 amount=-2 +kerning first=213 second=378 amount=-2 +kerning first=198 second=117 amount=-2 +kerning first=83 second=107 amount=-2 +kerning first=315 second=219 amount=-3 +kerning first=68 second=72 amount=-2 +kerning first=202 second=89 amount=-1 +kerning first=73 second=250 amount=-2 +kerning first=72 second=378 amount=-1 +kerning first=334 second=76 amount=-2 +kerning first=234 second=117 amount=-2 +kerning first=119 second=107 amount=-2 +kerning first=75 second=116 amount=-1 +kerning first=274 second=363 amount=-2 +kerning first=99 second=318 amount=-3 +kerning first=338 second=302 amount=-2 +kerning first=8220 second=267 amount=-3 +kerning first=310 second=363 amount=-3 +kerning first=379 second=355 amount=-1 +kerning first=346 second=363 amount=-1 +kerning first=334 second=330 amount=-2 +kerning first=356 second=355 amount=-1 +kerning first=111 second=116 amount=-1 +kerning first=286 second=194 amount=-3 +kerning first=382 second=363 amount=-2 +kerning first=187 second=310 amount=-5 +kerning first=240 second=318 amount=-2 +kerning first=8222 second=221 amount=-6 +kerning first=275 second=240 amount=-1 +kerning first=214 second=194 amount=-4 +kerning first=1025 second=1114 amount=-1 +kerning first=1075 second=1089 amount=-1 +kerning first=201 second=298 amount=-2 +kerning first=314 second=375 amount=-3 +kerning first=305 second=259 amount=-1 +kerning first=76 second=214 amount=-1 +kerning first=248 second=259 amount=-1 +kerning first=269 second=259 amount=-2 +kerning first=368 second=122 amount=-3 +kerning first=1039 second=1088 amount=-1 +kerning first=217 second=214 amount=-1 +kerning first=242 second=375 amount=-3 +kerning first=332 second=122 amount=-2 +kerning first=206 second=375 amount=-2 +kerning first=200 second=220 amount=-2 +kerning first=89 second=369 amount=-2 +kerning first=296 second=122 amount=-1 +kerning first=252 second=116 amount=-1 +kerning first=71 second=296 amount=-1 +kerning first=262 second=330 amount=-3 +kerning first=334 second=77 amount=-2 +kerning first=1057 second=1075 amount=-1 +kerning first=233 second=259 amount=-2 +kerning first=262 second=77 amount=-3 +kerning first=350 second=375 amount=-2 +kerning first=344 second=220 amount=-3 +kerning first=86 second=71 amount=-3 +kerning first=365 second=253 amount=-3 +kerning first=374 second=369 amount=-2 +kerning first=222 second=304 amount=-2 +kerning first=73 second=251 amount=-2 +kerning first=377 second=237 amount=-1 +kerning first=338 second=369 amount=-2 +kerning first=1043 second=1100 amount=-2 +kerning first=352 second=344 amount=-3 +kerning first=212 second=296 amount=-2 +kerning first=307 second=228 amount=-2 +kerning first=66 second=279 amount=-1 +kerning first=323 second=351 amount=-2 +kerning first=1079 second=1100 amount=-1 +kerning first=277 second=324 amount=-2 +kerning first=1086 second=1099 amount=-1 +kerning first=278 second=374 amount=-1 +kerning first=235 second=228 amount=-2 +kerning first=241 second=324 amount=-1 +kerning first=230 second=369 amount=-2 +kerning first=250 second=251 amount=-1 +kerning first=101 second=375 amount=-2 +kerning first=194 second=369 amount=-3 +kerning first=119 second=245 amount=-3 +kerning first=208 second=344 amount=-2 +kerning first=8216 second=255 amount=-1 +kerning first=356 second=296 amount=-1 +kerning first=81 second=304 amount=-2 +kerning first=65 second=375 amount=-3 +kerning first=302 second=369 amount=-2 +kerning first=1052 second=1104 amount=-1 +kerning first=100 second=324 amount=-1 +kerning first=84 second=206 amount=-1 +kerning first=266 second=369 amount=-2 +kerning first=251 second=273 amount=-1 +kerning first=280 second=344 amount=-2 +kerning first=286 second=251 amount=-1 +kerning first=376 second=240 amount=-3 +kerning first=113 second=234 amount=-1 +kerning first=327 second=284 amount=-2 +kerning first=279 second=279 amount=-1 +kerning first=107 second=355 amount=-1 +kerning first=68 second=85 amount=-1 +kerning first=218 second=234 amount=-2 +kerning first=116 second=253 amount=-1 +kerning first=67 second=344 amount=-3 +kerning first=221 second=253 amount=-3 +kerning first=381 second=298 amount=-1 +kerning first=97 second=363 amount=-1 +kerning first=102 second=279 amount=-1 +kerning first=257 second=253 amount=-3 +kerning first=219 second=284 amount=-1 +kerning first=313 second=324 amount=-1 +kerning first=248 second=355 amount=-1 +kerning first=79 second=83 amount=-1 +kerning first=78 second=284 amount=-2 +kerning first=202 second=363 amount=-2 +kerning first=77 second=234 amount=-2 +kerning first=207 second=279 amount=-2 +kerning first=1072 second=1080 amount=-1 +kerning first=1057 second=1074 amount=-1 +kerning first=233 second=318 amount=-3 +kerning first=107 second=365 amount=-1 +kerning first=84 second=268 amount=-3 +kerning first=269 second=318 amount=-3 +kerning first=71 second=365 amount=-1 +kerning first=220 second=83 amount=-3 +kerning first=291 second=355 amount=-1 +kerning first=89 second=310 amount=-1 +kerning first=66 second=213 amount=-3 +kerning first=305 second=318 amount=-1 +kerning first=336 second=298 amount=-2 +kerning first=256 second=83 amount=-3 +kerning first=255 second=355 amount=-1 +kerning first=207 second=213 amount=-2 +kerning first=74 second=263 amount=-2 +kerning first=195 second=370 amount=-3 +kerning first=187 second=313 amount=-5 +kerning first=364 second=83 amount=-3 +kerning first=266 second=310 amount=-3 +kerning first=1047 second=1063 amount=-3 +kerning first=76 second=218 amount=-3 +kerning first=363 second=355 amount=-1 +kerning first=66 second=275 amount=-1 +kerning first=66 second=220 amount=-3 +kerning first=1078 second=1105 amount=-2 +kerning first=212 second=303 amount=-1 +kerning first=102 second=275 amount=-1 +kerning first=328 second=353 amount=-1 +kerning first=248 second=303 amount=-1 +kerning first=364 second=353 amount=-2 +kerning first=356 second=365 amount=-2 +kerning first=1070 second=1055 amount=-1 +kerning first=374 second=310 amount=-1 +kerning first=211 second=8249 amount=-1 +kerning first=338 second=310 amount=-2 +kerning first=115 second=353 amount=-3 +kerning first=284 second=365 amount=-1 +kerning first=1053 second=1060 amount=-1 +kerning first=356 second=303 amount=-2 +kerning first=248 second=365 amount=-1 +kerning first=101 second=365 amount=-2 +kerning first=379 second=82 amount=-1 +kerning first=220 second=353 amount=-2 +kerning first=256 second=353 amount=-2 +kerning first=240 second=8250 amount=-2 +kerning first=284 second=98 amount=-1 +kerning first=334 second=280 amount=-2 +kerning first=100 second=105 amount=-1 +kerning first=192 second=235 amount=-1 +kerning first=379 second=225 amount=-1 +kerning first=228 second=235 amount=-1 +kerning first=1024 second=1095 amount=-2 +kerning first=71 second=102 amount=-2 +kerning first=264 second=235 amount=-2 +kerning first=1086 second=1093 amount=-1 +kerning first=1073 second=1083 amount=-2 +kerning first=336 second=228 amount=-1 +kerning first=303 second=361 amount=-1 +kerning first=199 second=225 amount=-2 +kerning first=107 second=98 amount=-1 +kerning first=235 second=225 amount=-2 +kerning first=248 second=98 amount=-1 +kerning first=264 second=228 amount=-2 +kerning first=1086 second=1100 amount=-1 +kerning first=8218 second=375 amount=-1 +kerning first=79 second=350 amount=-1 +kerning first=228 second=228 amount=-1 +kerning first=90 second=363 amount=-3 +kerning first=316 second=273 amount=-1 +kerning first=284 second=102 amount=-2 +kerning first=241 second=46 amount=-1 +kerning first=1114 second=1102 amount=-1 +kerning first=1046 second=1063 amount=-4 +kerning first=1101 second=1078 amount=-1 +kerning first=277 second=46 amount=-3 +kerning first=195 second=363 amount=-3 +kerning first=87 second=228 amount=-4 +kerning first=356 second=102 amount=-1 +kerning first=107 second=44 amount=-1 +kerning first=231 second=363 amount=-2 +kerning first=99 second=305 amount=-2 +kerning first=346 second=311 amount=-2 +kerning first=1045 second=1081 amount=-1 +kerning first=267 second=363 amount=-2 +kerning first=240 second=305 amount=-1 +kerning first=1107 second=1108 amount=-1 +kerning first=303 second=363 amount=-1 +kerning first=103 second=273 amount=-2 +kerning first=204 second=305 amount=-1 +kerning first=1071 second=1108 amount=-1 +kerning first=339 second=363 amount=-2 +kerning first=8250 second=345 amount=-2 +kerning first=74 second=260 amount=-5 +kerning first=262 second=280 amount=-3 +kerning first=375 second=363 amount=-1 +kerning first=248 second=102 amount=-1 +kerning first=1038 second=1054 amount=-3 +kerning first=367 second=112 amount=-2 +kerning first=1024 second=1107 amount=-1 +kerning first=198 second=67 amount=-1 +kerning first=260 second=211 amount=-3 +kerning first=331 second=112 amount=-1 +kerning first=376 second=261 amount=-5 +kerning first=207 second=216 amount=-2 +kerning first=296 second=211 amount=-2 +kerning first=79 second=86 amount=-2 +kerning first=295 second=112 amount=-1 +kerning first=68 second=171 amount=-1 +kerning first=104 second=171 amount=-3 +kerning first=303 second=107 amount=-1 +kerning first=223 second=112 amount=-1 +kerning first=350 second=243 amount=-1 +kerning first=267 second=107 amount=-2 +kerning first=187 second=112 amount=-2 +kerning first=381 second=81 amount=-1 +kerning first=8220 second=287 amount=-4 +kerning first=232 second=261 amount=-2 +kerning first=256 second=86 amount=-6 +kerning first=375 second=107 amount=-2 +kerning first=118 second=112 amount=-2 +kerning first=268 second=261 amount=-2 +kerning first=66 second=216 amount=-3 +kerning first=339 second=107 amount=-2 +kerning first=82 second=112 amount=-1 +kerning first=304 second=261 amount=-2 +kerning first=368 second=211 amount=-1 +kerning first=243 second=345 amount=-1 +kerning first=317 second=171 amount=-1 +kerning first=354 second=232 amount=-3 +kerning first=278 second=204 amount=-2 +kerning first=353 second=171 amount=-1 +kerning first=377 second=346 amount=-1 +kerning first=224 second=279 amount=-1 +kerning first=313 second=105 amount=-2 +kerning first=350 second=204 amount=-3 +kerning first=84 second=209 amount=-1 +kerning first=198 second=327 amount=-2 +kerning first=339 second=100 amount=-1 +kerning first=315 second=216 amount=-1 +kerning first=286 second=254 amount=-1 +kerning first=8250 second=82 amount=-5 +kerning first=241 second=105 amount=-1 +kerning first=375 second=100 amount=-3 +kerning first=277 second=105 amount=-2 +kerning first=209 second=171 amount=-4 +kerning first=327 second=263 amount=-2 +kerning first=201 second=81 amount=-1 +kerning first=1024 second=1098 amount=-3 +kerning first=205 second=105 amount=-1 +kerning first=1043 second=1103 amount=-4 +kerning first=195 second=100 amount=-1 +kerning first=254 second=230 amount=-1 +kerning first=231 second=100 amount=-1 +kerning first=113 second=230 amount=-2 +kerning first=1074 second=1079 amount=-1 +kerning first=267 second=100 amount=-1 +kerning first=86 second=346 amount=-3 +kerning first=303 second=100 amount=-3 +kerning first=204 second=249 amount=-1 +kerning first=279 second=275 amount=-1 +kerning first=77 second=230 amount=-2 +kerning first=1038 second=1079 amount=-3 +kerning first=90 second=100 amount=-1 +kerning first=207 second=275 amount=-2 +kerning first=1079 second=1103 amount=-2 +kerning first=236 second=223 amount=-1 +kerning first=281 second=339 amount=-1 +kerning first=231 second=107 amount=-2 +kerning first=264 second=78 amount=-3 +kerning first=195 second=107 amount=-2 +kerning first=209 second=339 amount=-2 +kerning first=362 second=230 amount=-3 +kerning first=1060 second=1039 amount=-1 +kerning first=99 second=249 amount=-2 +kerning first=290 second=230 amount=-1 +kerning first=200 second=223 amount=-1 +kerning first=1024 second=1039 amount=-1 +kerning first=326 second=230 amount=-1 +kerning first=242 second=114 amount=-1 +kerning first=367 second=109 amount=-1 +kerning first=83 second=325 amount=-3 +kerning first=67 second=69 amount=-3 +kerning first=331 second=109 amount=-1 +kerning first=317 second=79 amount=-1 +kerning first=375 second=104 amount=-2 +kerning first=201 second=84 amount=-1 +kerning first=81 second=44 amount=-3 +kerning first=256 second=89 amount=-6 +kerning first=339 second=104 amount=-2 +kerning first=1097 second=1104 amount=-1 +kerning first=223 second=109 amount=-1 +kerning first=101 second=114 amount=-1 +kerning first=1061 second=1104 amount=-2 +kerning first=381 second=84 amount=-2 +kerning first=187 second=109 amount=-2 +kerning first=353 second=119 amount=-3 +kerning first=355 second=237 amount=-1 +kerning first=118 second=314 amount=-2 +kerning first=295 second=109 amount=-1 +kerning first=79 second=89 amount=-2 +kerning first=82 second=314 amount=-3 +kerning first=1052 second=1108 amount=-1 +kerning first=90 second=192 amount=-1 +kerning first=283 second=237 amount=-2 +kerning first=223 second=314 amount=-2 +kerning first=1089 second=1116 amount=-1 +kerning first=330 second=44 amount=-1 +kerning first=377 second=262 amount=-1 +kerning first=290 second=72 amount=-1 +kerning first=187 second=314 amount=-1 +kerning first=1053 second=1116 amount=-1 +kerning first=327 second=8249 amount=-4 +kerning first=211 second=237 amount=-1 +kerning first=295 second=314 amount=-1 +kerning first=118 second=109 amount=-2 +kerning first=102 second=269 amount=-1 +kerning first=325 second=336 amount=-2 +kerning first=259 second=314 amount=-1 +kerning first=275 second=187 amount=-2 +kerning first=255 second=8249 amount=-4 +kerning first=66 second=269 amount=-1 +kerning first=378 second=245 amount=-1 +kerning first=106 second=237 amount=-1 +kerning first=367 second=314 amount=-2 +kerning first=228 second=232 amount=-1 +kerning first=303 second=104 amount=-1 +kerning first=114 second=8249 amount=-1 +kerning first=207 second=269 amount=-2 +kerning first=331 second=314 amount=-1 +kerning first=267 second=104 amount=-2 +kerning first=272 second=282 amount=-2 +kerning first=356 second=99 amount=-3 +kerning first=117 second=44 amount=-2 +kerning first=77 second=224 amount=-2 +kerning first=231 second=104 amount=-2 +kerning first=279 second=269 amount=-1 +kerning first=98 second=380 amount=-2 +kerning first=264 second=232 amount=-2 +kerning first=195 second=104 amount=-2 +kerning first=200 second=282 amount=-2 +kerning first=98 second=187 amount=-2 +kerning first=222 second=44 amount=-3 +kerning first=262 second=277 amount=-2 +kerning first=214 second=344 amount=-2 +kerning first=109 second=257 amount=-1 +kerning first=377 second=317 amount=-1 +kerning first=226 second=277 amount=-1 +kerning first=284 second=302 amount=-1 +kerning first=113 second=224 amount=-2 +kerning first=74 second=326 amount=-1 +kerning first=201 second=351 amount=-1 +kerning first=254 second=224 amount=-1 +kerning first=110 second=326 amount=-1 +kerning first=298 second=277 amount=-2 +kerning first=212 second=302 amount=-2 +kerning first=218 second=224 amount=-3 +kerning first=87 second=232 amount=-3 +kerning first=381 second=347 amount=-2 +kerning first=85 second=277 amount=-2 +kerning first=326 second=224 amount=-1 +kerning first=71 second=361 amount=-1 +kerning first=108 second=371 amount=-2 +kerning first=290 second=224 amount=-1 +kerning first=71 second=302 amount=-1 +kerning first=375 second=367 amount=-1 +kerning first=363 second=8249 amount=-2 +kerning first=268 second=202 amount=-3 +kerning first=121 second=277 amount=-3 +kerning first=362 second=224 amount=-3 +kerning first=107 second=99 amount=-3 +kerning first=90 second=101 amount=-1 +kerning first=375 second=97 amount=-3 +kerning first=303 second=367 amount=-1 +kerning first=352 second=69 amount=-3 +kerning first=381 second=351 amount=-2 +kerning first=339 second=367 amount=-2 +kerning first=195 second=101 amount=-1 +kerning first=376 second=202 amount=-1 +kerning first=231 second=367 amount=-2 +kerning first=280 second=69 amount=-2 +kerning first=231 second=101 amount=-1 +kerning first=267 second=367 amount=-2 +kerning first=267 second=101 amount=-1 +kerning first=286 second=257 amount=-1 +kerning first=208 second=69 amount=-2 +kerning first=323 second=267 amount=-2 +kerning first=84 second=212 amount=-3 +kerning first=303 second=101 amount=-3 +kerning first=1052 second=1047 amount=-1 +kerning first=195 second=367 amount=-3 +kerning first=380 second=226 amount=-1 +kerning first=345 second=351 amount=-1 +kerning first=214 second=257 amount=-1 +kerning first=350 second=114 amount=-2 +kerning first=209 second=79 amount=-2 +kerning first=356 second=302 amount=-1 +kerning first=250 second=257 amount=-1 +kerning first=90 second=367 amount=-3 +kerning first=287 second=267 amount=-2 +kerning first=331 second=316 amount=-1 +kerning first=229 second=241 amount=-1 +kerning first=76 second=221 amount=-3 +kerning first=120 second=271 amount=-2 +kerning first=71 second=362 amount=-1 +kerning first=296 second=382 amount=-1 +kerning first=367 second=316 amount=-2 +kerning first=332 second=382 amount=-2 +kerning first=225 second=271 amount=-1 +kerning first=201 second=291 amount=-3 +kerning first=1049 second=1087 amount=-1 +kerning first=368 second=382 amount=-3 +kerning first=362 second=286 amount=-1 +kerning first=261 second=271 amount=-1 +kerning first=212 second=362 amount=-1 +kerning first=1053 second=1057 amount=-1 +kerning first=74 second=266 amount=-2 +kerning first=226 second=337 amount=-1 +kerning first=119 second=382 amount=-3 +kerning first=303 second=255 amount=-2 +kerning first=200 second=226 amount=-1 +kerning first=1024 second=1042 amount=-1 +kerning first=240 second=311 amount=-1 +kerning first=369 second=271 amount=-1 +kerning first=121 second=337 amount=-3 +kerning first=224 second=382 amount=-1 +kerning first=218 second=286 amount=-1 +kerning first=1060 second=1042 amount=-1 +kerning first=378 second=331 amount=-2 +kerning first=272 second=226 amount=-1 +kerning first=296 second=119 amount=-2 +kerning first=85 second=337 amount=-2 +kerning first=77 second=286 amount=-2 +kerning first=1089 second=1113 amount=-1 +kerning first=233 second=8221 amount=-2 +kerning first=248 second=361 amount=-1 +kerning first=203 second=331 amount=-1 +kerning first=109 second=289 amount=-2 +kerning first=228 second=318 amount=-1 +kerning first=71 second=98 amount=-1 +kerning first=82 second=316 amount=-3 +kerning first=198 second=331 amount=-1 +kerning first=298 second=337 amount=-2 +kerning first=118 second=316 amount=-2 +kerning first=234 second=331 amount=-2 +kerning first=284 second=361 amount=-1 +kerning first=262 second=337 amount=-2 +kerning first=187 second=316 amount=-1 +kerning first=223 second=316 amount=-2 +kerning first=356 second=361 amount=-2 +kerning first=259 second=316 amount=-1 +kerning first=323 second=266 amount=-2 +kerning first=295 second=316 amount=-1 +kerning first=231 second=103 amount=-3 +kerning first=218 second=256 amount=-4 +kerning first=204 second=252 amount=-1 +kerning first=226 second=45 amount=-2 +kerning first=364 second=90 amount=-1 +kerning first=195 second=103 amount=-3 +kerning first=113 second=227 amount=-2 +kerning first=334 second=70 amount=-2 +kerning first=240 second=252 amount=-1 +kerning first=77 second=227 amount=-2 +kerning first=90 second=103 amount=-3 +kerning first=381 second=229 amount=-1 +kerning first=213 second=368 amount=-1 +kerning first=262 second=70 amount=-3 +kerning first=1103 second=1086 amount=-1 +kerning first=326 second=227 amount=-1 +kerning first=1024 second=1101 amount=-1 +kerning first=68 second=78 amount=-2 +kerning first=290 second=227 amount=-1 +kerning first=278 second=381 amount=-1 +kerning first=85 second=336 amount=-1 +kerning first=338 second=65 amount=-2 +kerning first=321 second=368 amount=-3 +kerning first=99 second=252 amount=-2 +kerning first=286 second=201 amount=-1 +kerning first=218 second=227 amount=-3 +kerning first=79 second=90 amount=-2 +kerning first=214 second=201 amount=-2 +kerning first=99 second=311 amount=-2 +kerning first=262 second=278 amount=-3 +kerning first=262 second=336 amount=-3 +kerning first=256 second=356 amount=-6 +kerning first=1025 second=1107 amount=-1 +kerning first=311 second=246 amount=-3 +kerning first=298 second=336 amount=-2 +kerning first=83 second=382 amount=-2 +kerning first=275 second=246 amount=-1 +kerning first=105 second=171 amount=-3 +kerning first=334 second=278 amount=-2 +kerning first=220 second=90 amount=-1 +kerning first=339 second=103 amount=-3 +kerning first=370 second=336 amount=-1 +kerning first=105 second=233 amount=-1 +kerning first=1074 second=1084 amount=-1 +kerning first=284 second=362 amount=-1 +kerning first=303 second=103 amount=-1 +kerning first=79 second=356 amount=-2 +kerning first=187 second=317 amount=-5 +kerning first=345 second=291 amount=-2 +kerning first=8220 second=273 amount=-3 +kerning first=356 second=362 amount=-1 +kerning first=295 second=103 amount=-2 +kerning first=268 second=246 amount=-2 +kerning first=245 second=116 amount=-1 +kerning first=104 second=369 amount=-1 +kerning first=259 second=103 amount=-2 +kerning first=232 second=246 amount=-1 +kerning first=245 second=369 amount=-1 +kerning first=223 second=103 amount=-2 +kerning first=196 second=246 amount=-1 +kerning first=231 second=382 amount=-2 +kerning first=209 second=369 amount=-2 +kerning first=254 second=259 amount=-1 +kerning first=281 second=116 amount=-1 +kerning first=267 second=382 amount=-2 +kerning first=118 second=103 amount=-3 +kerning first=1070 second=1043 amount=-1 +kerning first=1056 second=1056 amount=-1 +kerning first=82 second=103 amount=-3 +kerning first=73 second=253 amount=-2 +kerning first=113 second=259 amount=-2 +kerning first=82 second=363 amount=-2 +kerning first=109 second=253 amount=-2 +kerning first=77 second=259 amount=-2 +kerning first=1047 second=1078 amount=-3 +kerning first=118 second=363 amount=-1 +kerning first=90 second=382 amount=-3 +kerning first=1046 second=1089 amount=-2 +kerning first=267 second=122 amount=-2 +kerning first=317 second=109 amount=-1 +kerning first=187 second=363 amount=-1 +kerning first=1056 second=1108 amount=-1 +kerning first=231 second=122 amount=-2 +kerning first=281 second=109 amount=-2 +kerning first=200 second=266 amount=-1 +kerning first=223 second=363 amount=-1 +kerning first=90 second=338 amount=-1 +kerning first=1060 second=1076 amount=-1 +kerning first=330 second=367 amount=-2 +kerning first=1086 second=1102 amount=-1 +kerning first=8250 second=364 amount=-4 +kerning first=259 second=363 amount=-1 +kerning first=1024 second=1076 amount=-2 +kerning first=108 second=375 amount=-3 +kerning first=1082 second=1089 amount=-2 +kerning first=353 second=109 amount=-2 +kerning first=295 second=363 amount=-1 +kerning first=198 second=65 amount=-2 +kerning first=72 second=375 amount=-2 +kerning first=317 second=369 amount=-2 +kerning first=331 second=363 amount=-1 +kerning first=303 second=382 amount=-1 +kerning first=86 second=362 amount=-1 +kerning first=375 second=122 amount=-3 +kerning first=353 second=116 amount=-2 +kerning first=313 second=356 amount=-3 +kerning first=367 second=363 amount=-1 +kerning first=315 second=67 amount=-1 +kerning first=8250 second=357 amount=-1 +kerning first=339 second=382 amount=-2 +kerning first=321 second=375 amount=-3 +kerning first=339 second=122 amount=-2 +kerning first=367 second=103 amount=-3 +kerning first=245 second=109 amount=-1 +kerning first=375 second=382 amount=-3 +kerning first=248 second=305 amount=-1 +kerning first=303 second=122 amount=-1 +kerning first=331 second=103 amount=-2 +kerning first=1104 second=1095 amount=-1 +kerning first=212 second=305 amount=-1 +kerning first=249 second=375 amount=-3 +kerning first=82 second=370 amount=-3 +kerning first=263 second=355 amount=-1 +kerning first=321 second=115 amount=-1 +kerning first=83 second=76 amount=-3 +kerning first=8250 second=97 amount=-1 +kerning first=1073 second=1075 amount=-1 +kerning first=361 second=44 amount=-2 +kerning first=187 second=370 amount=-4 +kerning first=78 second=336 amount=-2 +kerning first=249 second=115 amount=-2 +kerning first=122 second=355 amount=-1 +kerning first=356 second=305 amount=-2 +kerning first=1070 second=1036 amount=-1 +kerning first=1042 second=1062 amount=-2 +kerning first=371 second=355 amount=-1 +kerning first=219 second=336 amount=-1 +kerning first=258 second=279 amount=-1 +kerning first=313 second=89 amount=-3 +kerning first=366 second=279 amount=-2 +kerning first=330 second=279 amount=-2 +kerning first=323 second=248 amount=-2 +kerning first=327 second=336 amount=-2 +kerning first=321 second=108 amount=-2 +kerning first=250 second=253 amount=-3 +kerning first=73 second=232 amount=-2 +kerning first=1042 second=1055 amount=-2 +kerning first=100 second=259 amount=-1 +kerning first=1100 second=1103 amount=-2 +kerning first=376 second=246 amount=-3 +kerning first=89 second=66 amount=-1 +kerning first=75 second=332 amount=-3 +kerning first=1060 second=1048 amount=-1 +kerning first=304 second=246 amount=-2 +kerning first=1024 second=1048 amount=-1 +kerning first=73 second=225 amount=-2 +kerning first=82 second=335 amount=-3 +kerning first=109 second=225 amount=-1 +kerning first=1053 second=1086 amount=-1 +kerning first=118 second=335 amount=-3 +kerning first=108 second=108 amount=-2 +kerning first=376 second=218 amount=-1 +kerning first=362 second=231 amount=-2 +kerning first=313 second=328 amount=-1 +kerning first=1071 second=1072 amount=-1 +kerning first=214 second=225 amount=-1 +kerning first=66 second=344 amount=-4 +kerning first=249 second=108 amount=-2 +kerning first=380 second=273 amount=-1 +kerning first=254 second=8217 amount=-2 +kerning first=86 second=102 amount=-1 +kerning first=88 second=242 amount=-2 +kerning first=290 second=8217 amount=-1 +kerning first=122 second=102 amount=-2 +kerning first=76 second=196 amount=-2 +kerning first=199 second=203 amount=-3 +kerning first=326 second=8217 amount=-4 +kerning first=193 second=242 amount=-1 +kerning first=77 second=231 amount=-2 +kerning first=262 second=46 amount=-1 +kerning first=86 second=355 amount=-1 +kerning first=236 second=273 amount=-1 +kerning first=250 second=225 amount=-1 +kerning first=268 second=218 amount=-2 +kerning first=106 second=8221 amount=-2 +kerning first=286 second=225 amount=-1 +kerning first=290 second=280 amount=-1 +kerning first=113 second=8217 amount=-3 +kerning first=218 second=231 amount=-2 +kerning first=72 second=115 amount=-2 +kerning first=196 second=218 amount=-3 +kerning first=370 second=46 amount=-5 +kerning first=204 second=286 amount=-2 +kerning first=108 second=115 amount=-2 +kerning first=73 second=279 amount=-2 +kerning first=1042 second=1083 amount=-1 +kerning first=209 second=81 amount=-2 +kerning first=371 second=102 amount=-2 +kerning first=262 second=67 amount=-3 +kerning first=196 second=211 amount=-3 +kerning first=83 second=119 amount=-3 +kerning first=121 second=46 amount=-5 +kerning first=199 second=210 amount=-3 +kerning first=283 second=8221 amount=-2 +kerning first=1114 second=1083 amount=-1 +kerning first=236 second=245 amount=-1 +kerning first=226 second=46 amount=-1 +kerning first=211 second=8221 amount=-2 +kerning first=90 second=122 amount=-3 +kerning first=224 second=119 amount=-3 +kerning first=227 second=102 amount=-1 +kerning first=85 second=67 amount=-1 +kerning first=260 second=119 amount=-3 +kerning first=317 second=81 amount=-1 +kerning first=1056 second=1049 amount=-1 +kerning first=344 second=266 amount=-3 +kerning first=263 second=102 amount=-2 +kerning first=376 second=211 amount=-3 +kerning first=380 second=245 amount=-1 +kerning first=76 second=217 amount=-3 +kerning first=268 second=211 amount=-3 +kerning first=344 second=245 amount=-3 +kerning first=335 second=102 amount=-1 +kerning first=304 second=211 amount=-2 +kerning first=367 second=335 amount=-1 +kerning first=368 second=119 amount=-2 +kerning first=100 second=328 amount=-1 +kerning first=254 second=252 amount=-1 +kerning first=230 second=311 amount=-2 +kerning first=290 second=252 amount=-1 +kerning first=214 second=204 amount=-2 +kerning first=326 second=252 amount=-1 +kerning first=311 second=8217 amount=-2 +kerning first=1078 second=1090 amount=-1 +kerning first=362 second=252 amount=-1 +kerning first=286 second=204 amount=-1 +kerning first=1042 second=1090 amount=-1 +kerning first=362 second=259 amount=-3 +kerning first=277 second=328 amount=-2 +kerning first=77 second=252 amount=-1 +kerning first=259 second=335 amount=-1 +kerning first=326 second=259 amount=-1 +kerning first=241 second=328 amount=-1 +kerning first=113 second=252 amount=-2 +kerning first=370 second=67 amount=-1 +kerning first=74 second=269 amount=-2 +kerning first=1079 second=1118 amount=-2 +kerning first=1024 second=1097 amount=-1 +kerning first=266 second=248 amount=-2 +kerning first=218 second=252 amount=-1 +kerning first=298 second=67 amount=-2 +kerning first=364 second=378 amount=-3 +kerning first=84 second=262 amount=-3 +kerning first=382 second=113 amount=-1 +kerning first=287 second=269 amount=-2 +kerning first=328 second=378 amount=-1 +kerning first=346 second=113 amount=-1 +kerning first=274 second=366 amount=-2 +kerning first=378 second=365 amount=-2 +kerning first=251 second=269 amount=-1 +kerning first=74 second=288 amount=-2 +kerning first=66 second=250 amount=-3 +kerning first=310 second=113 amount=-2 +kerning first=378 second=353 amount=-2 +kerning first=120 second=249 amount=-3 +kerning first=1060 second=1030 amount=-1 +kerning first=202 second=366 amount=-2 +kerning first=88 second=263 amount=-2 +kerning first=323 second=269 amount=-2 +kerning first=275 second=378 amount=-2 +kerning first=220 second=378 amount=-3 +kerning first=260 second=171 amount=-4 +kerning first=252 second=100 amount=-1 +kerning first=324 second=112 amount=-1 +kerning first=338 second=87 amount=-1 +kerning first=288 second=112 amount=-1 +kerning first=198 second=353 amount=-1 +kerning first=234 second=365 amount=-2 +kerning first=332 second=171 amount=-1 +kerning first=252 second=112 amount=-2 +kerning first=234 second=353 amount=-2 +kerning first=198 second=365 amount=-2 +kerning first=368 second=171 amount=-5 +kerning first=216 second=112 amount=-1 +kerning first=346 second=366 amount=-3 +kerning first=75 second=100 amount=-2 +kerning first=323 second=288 amount=-2 +kerning first=272 second=366 amount=-1 +kerning first=194 second=87 amount=-6 +kerning first=1045 second=1054 amount=-1 +kerning first=355 second=249 amount=-1 +kerning first=212 second=352 amount=-1 +kerning first=1075 second=1086 amount=-1 +kerning first=193 second=275 amount=-1 +kerning first=379 second=210 amount=-1 +kerning first=76 second=192 amount=-2 +kerning first=229 second=275 amount=-1 +kerning first=284 second=352 amount=-2 +kerning first=194 second=354 amount=-6 +kerning first=88 second=275 amount=-2 +kerning first=1071 second=1080 amount=-1 +kerning first=328 second=121 amount=-2 +kerning first=97 second=113 amount=-1 +kerning first=356 second=352 amount=-3 +kerning first=314 second=8221 amount=-3 +kerning first=207 second=248 amount=-2 +kerning first=264 second=198 amount=-3 +kerning first=121 second=97 amount=-3 +kerning first=220 second=380 amount=-3 +kerning first=8217 second=193 amount=-6 +kerning first=106 second=249 amount=-1 +kerning first=288 second=379 amount=-2 +kerning first=70 second=8249 amount=-3 +kerning first=369 second=8220 amount=-3 +kerning first=234 second=114 amount=-1 +kerning first=336 second=198 amount=-4 +kerning first=221 second=223 amount=-3 +kerning first=1093 second=1105 amount=-2 +kerning first=333 second=8220 amount=-2 +kerning first=120 second=248 amount=-2 +kerning first=346 second=364 amount=-3 +kerning first=381 second=116 amount=-1 +kerning first=87 second=198 amount=-6 +kerning first=70 second=289 amount=-3 +kerning first=66 second=248 amount=-1 +kerning first=374 second=338 amount=-3 +kerning first=283 second=249 amount=-2 +kerning first=378 second=98 amount=-1 +kerning first=225 second=8220 amount=-3 +kerning first=79 second=380 amount=-2 +kerning first=1067 second=1079 amount=-1 +kerning first=354 second=361 amount=-2 +kerning first=115 second=380 amount=-2 +kerning first=211 second=289 amount=-1 +kerning first=352 second=313 amount=-3 +kerning first=120 second=8220 amount=-2 +kerning first=1025 second=1113 amount=-1 +kerning first=347 second=237 amount=-2 +kerning first=187 second=75 amount=-5 +kerning first=75 second=339 amount=-2 +kerning first=377 second=274 amount=-1 +kerning first=1031 second=1079 amount=-1 +kerning first=284 second=73 amount=-1 +kerning first=280 second=313 amount=-2 +kerning first=275 second=237 amount=-2 +kerning first=334 second=46 amount=-3 +kerning first=256 second=99 amount=-1 +kerning first=8216 second=256 amount=-8 +kerning first=356 second=73 amount=-1 +kerning first=220 second=99 amount=-2 +kerning first=208 second=313 amount=-2 +kerning first=203 second=237 amount=-1 +kerning first=71 second=73 amount=-1 +kerning first=252 second=339 amount=-1 +kerning first=67 second=313 amount=-3 +kerning first=193 second=263 amount=-1 +kerning first=334 second=327 amount=-2 +kerning first=279 second=248 amount=-1 +kerning first=98 second=237 amount=-1 +kerning first=229 second=263 amount=-1 +kerning first=106 second=8249 amount=-3 +kerning first=268 second=206 amount=-3 +kerning first=216 second=379 amount=-2 +kerning first=212 second=73 amount=-2 +kerning first=364 second=99 amount=-2 +kerning first=83 second=187 amount=-1 +kerning first=1049 second=1081 amount=-1 +kerning first=260 second=199 amount=-3 +kerning first=211 second=350 amount=-1 +kerning first=198 second=381 amount=-1 +kerning first=369 second=234 amount=-1 +kerning first=203 second=209 amount=-2 +kerning first=69 second=212 amount=-1 +kerning first=296 second=199 amount=-2 +kerning first=86 second=83 amount=-3 +kerning first=258 second=67 amount=-3 +kerning first=120 second=234 amount=-2 +kerning first=377 second=302 amount=-1 +kerning first=368 second=199 amount=-1 +kerning first=283 second=277 amount=-1 +kerning first=225 second=234 amount=-1 +kerning first=236 second=227 amount=-2 +kerning first=187 second=323 amount=-5 +kerning first=261 second=234 amount=-1 +kerning first=256 second=111 amount=-1 +kerning first=106 second=277 amount=-1 +kerning first=288 second=72 amount=-1 +kerning first=283 second=289 amount=-3 +kerning first=8217 second=333 amount=-3 +kerning first=364 second=111 amount=-2 +kerning first=8250 second=198 amount=-4 +kerning first=84 second=264 amount=-3 +kerning first=355 second=289 amount=-2 +kerning first=310 second=364 amount=-2 +kerning first=77 second=233 amount=-2 +kerning first=274 second=364 amount=-2 +kerning first=354 second=212 amount=-3 +kerning first=70 second=277 amount=-1 +kerning first=111 second=351 amount=-2 +kerning first=288 second=367 amount=-1 +kerning first=220 second=111 amount=-2 +kerning first=202 second=364 amount=-2 +kerning first=113 second=233 amount=-1 +kerning first=282 second=212 amount=-1 +kerning first=266 second=354 amount=-1 +kerning first=106 second=261 amount=-2 +kerning first=79 second=287 amount=-1 +kerning first=218 second=233 amount=-2 +kerning first=87 second=226 amount=-5 +kerning first=252 second=367 amount=-1 +kerning first=338 second=354 amount=-1 +kerning first=315 second=220 amount=-3 +kerning first=211 second=261 amount=-1 +kerning first=111 second=367 amount=-1 +kerning first=229 second=291 amount=-2 +kerning first=380 second=105 amount=-1 +kerning first=202 second=97 amount=-1 +kerning first=338 second=326 amount=-1 +kerning first=228 second=226 amount=-1 +kerning first=193 second=291 amount=-3 +kerning first=324 second=351 amount=-1 +kerning first=374 second=326 amount=-3 +kerning first=362 second=233 amount=-2 +kerning first=264 second=226 amount=-2 +kerning first=75 second=367 amount=-3 +kerning first=97 second=97 amount=-1 +kerning first=90 second=110 amount=-1 +kerning first=88 second=291 amount=-2 +kerning first=216 second=72 amount=-2 +kerning first=336 second=226 amount=-1 +kerning first=70 second=261 amount=-2 +kerning first=83 second=171 amount=-3 +kerning first=346 second=97 amount=-2 +kerning first=315 second=250 amount=-2 +kerning first=70 second=267 amount=-1 +kerning first=119 second=171 amount=-4 +kerning first=264 second=83 amount=-3 +kerning first=230 second=326 amount=-2 +kerning first=279 second=250 amount=-2 +kerning first=198 second=86 amount=-1 +kerning first=115 second=378 amount=-2 +kerning first=1042 second=1050 amount=-2 +kerning first=266 second=326 amount=-1 +kerning first=267 second=110 amount=-2 +kerning first=234 second=337 amount=-1 +kerning first=380 second=248 amount=-1 +kerning first=79 second=378 amount=-2 +kerning first=224 second=171 amount=-2 +kerning first=86 second=350 amount=-3 +kerning first=310 second=97 amount=-1 +kerning first=351 second=250 amount=-1 +kerning first=251 second=316 amount=-2 +kerning first=339 second=110 amount=-2 +kerning first=283 second=261 amount=-2 +kerning first=287 second=316 amount=-3 +kerning first=102 second=250 amount=-1 +kerning first=291 second=234 amount=-2 +kerning first=89 second=326 amount=-3 +kerning first=243 second=250 amount=-1 +kerning first=1104 second=1116 amount=-1 +kerning first=355 second=261 amount=-1 +kerning first=378 second=337 amount=-1 +kerning first=207 second=250 amount=-2 +kerning first=108 second=117 amount=-2 +kerning first=221 second=200 amount=-1 +kerning first=81 second=260 amount=-4 +kerning first=1104 second=1107 amount=-1 +kerning first=72 second=117 amount=-2 +kerning first=315 second=75 amount=-2 +kerning first=120 second=339 amount=-2 +kerning first=1070 second=1031 amount=-1 +kerning first=80 second=200 amount=-1 +kerning first=249 second=117 amount=-1 +kerning first=69 second=221 amount=-1 +kerning first=222 second=260 amount=-4 +kerning first=90 second=330 amount=-1 +kerning first=262 second=317 amount=-3 +kerning first=321 second=117 amount=-2 +kerning first=1114 second=1081 amount=-1 +kerning first=362 second=264 amount=-1 +kerning first=262 second=290 amount=-3 +kerning first=282 second=214 amount=-1 +kerning first=298 second=290 amount=-2 +kerning first=366 second=260 amount=-4 +kerning first=241 second=98 amount=-2 +kerning first=77 second=240 amount=-2 +kerning first=354 second=214 amount=-3 +kerning first=221 second=207 amount=-1 +kerning first=370 second=290 amount=-1 +kerning first=113 second=240 amount=-1 +kerning first=218 second=264 amount=-1 +kerning first=85 second=290 amount=-1 +kerning first=113 second=271 amount=-1 +kerning first=362 second=240 amount=-2 +kerning first=69 second=214 amount=-1 +kerning first=213 second=377 amount=-2 +kerning first=240 second=118 amount=-2 +kerning first=282 second=221 amount=-1 +kerning first=77 second=264 amount=-2 +kerning first=75 second=84 amount=-2 +kerning first=321 second=377 amount=-3 +kerning first=222 second=298 amount=-2 +kerning first=328 second=110 amount=-1 +kerning first=366 second=291 amount=-4 +kerning first=350 second=194 amount=-4 +kerning first=214 second=220 amount=-1 +kerning first=330 second=291 amount=-3 +kerning first=68 second=97 amount=-1 +kerning first=266 second=317 amount=-3 +kerning first=216 second=84 amount=-2 +kerning first=104 second=97 amount=-1 +kerning first=278 second=194 amount=-2 +kerning first=120 second=227 amount=-2 +kerning first=313 second=330 amount=-2 +kerning first=240 second=353 amount=-2 +kerning first=368 second=289 amount=-4 +kerning first=258 second=291 amount=-3 +kerning first=121 second=287 amount=-3 +kerning first=84 second=227 amount=-5 +kerning first=338 second=317 amount=-2 +kerning first=1064 second=1077 amount=-1 +kerning first=222 second=291 amount=-1 +kerning first=85 second=287 amount=-4 +kerning first=374 second=317 amount=-1 +kerning first=356 second=324 amount=-3 +kerning first=245 second=97 amount=-1 +kerning first=226 second=287 amount=-2 +kerning first=89 second=317 amount=-1 +kerning first=117 second=291 amount=-3 +kerning first=100 second=337 amount=-1 +kerning first=269 second=311 amount=-2 +kerning first=81 second=291 amount=-1 +kerning first=298 second=287 amount=-3 +kerning first=233 second=311 amount=-2 +kerning first=288 second=84 amount=-3 +kerning first=84 second=234 amount=-3 +kerning first=327 second=71 amount=-2 +kerning first=209 second=97 amount=-2 +kerning first=262 second=287 amount=-3 +kerning first=197 second=311 amount=-2 +kerning first=1024 second=1088 amount=-1 +kerning first=86 second=90 amount=-3 +kerning first=370 second=287 amount=-4 +kerning first=86 second=381 amount=-3 +kerning first=78 second=71 amount=-2 +kerning first=277 second=337 amount=-1 +kerning first=334 second=287 amount=-1 +kerning first=1053 second=1094 amount=-1 +kerning first=80 second=197 amount=-4 +kerning first=45 second=298 amount=-5 +kerning first=219 second=71 amount=-1 +kerning first=198 second=77 amount=-2 +kerning first=248 second=324 amount=-1 +kerning first=81 second=298 amount=-2 +kerning first=205 second=337 amount=-2 +kerning first=277 second=365 amount=-2 +kerning first=374 second=78 amount=-1 +kerning first=222 second=382 amount=-2 +kerning first=117 second=263 amount=-1 +kerning first=241 second=365 amount=-1 +kerning first=221 second=197 amount=-6 +kerning first=218 second=268 amount=-1 +kerning first=213 second=120 amount=-1 +kerning first=205 second=365 amount=-2 +kerning first=73 second=213 amount=-2 +kerning first=354 second=193 amount=-6 +kerning first=1024 second=1060 amount=-1 +kerning first=249 second=120 amount=-2 +kerning first=375 second=113 amount=-3 +kerning first=379 second=230 amount=-1 +kerning first=327 second=303 amount=-1 +kerning first=201 second=310 amount=-2 +kerning first=367 second=8217 amount=-3 +kerning first=77 second=268 amount=-2 +kerning first=266 second=78 amount=-3 +kerning first=335 second=353 amount=-2 +kerning first=362 second=243 amount=-2 +kerning first=208 second=325 amount=-2 +kerning first=371 second=353 amount=-2 +kerning first=1089 second=1094 amount=-1 +kerning first=108 second=120 amount=-1 +kerning first=338 second=85 amount=-2 +kerning first=195 second=113 amount=-1 +kerning first=371 second=118 amount=-3 +kerning first=45 second=270 amount=-5 +kerning first=122 second=353 amount=-2 +kerning first=335 second=118 amount=-2 +kerning first=89 second=78 amount=-1 +kerning first=78 second=303 amount=-1 +kerning first=236 second=275 amount=-1 +kerning first=266 second=85 amount=-2 +kerning first=1064 second=1080 amount=-1 +kerning first=198 second=74 amount=-1 +kerning first=313 second=70 amount=-2 +kerning first=335 second=46 amount=-3 +kerning first=379 second=201 amount=-1 +kerning first=350 second=227 amount=-2 +kerning first=1056 second=1065 amount=-1 +kerning first=81 second=270 amount=-2 +kerning first=263 second=353 amount=-2 +kerning first=194 second=85 amount=-3 +kerning first=339 second=113 amount=-1 +kerning first=227 second=118 amount=-3 +kerning first=230 second=314 amount=-3 +kerning first=219 second=303 amount=-2 +kerning first=321 second=120 amount=-1 +kerning first=1100 second=1080 amount=-1 +kerning first=194 second=314 amount=-2 +kerning first=255 second=303 amount=-2 +kerning first=89 second=345 amount=-1 +kerning first=89 second=85 amount=-1 +kerning first=267 second=113 amount=-1 +kerning first=8250 second=206 amount=-5 +kerning first=249 second=273 amount=-1 +kerning first=313 second=365 amount=-2 +kerning first=263 second=118 amount=-2 +kerning first=381 second=310 amount=-1 +kerning first=266 second=314 amount=-1 +kerning first=199 second=201 amount=-3 +kerning first=86 second=353 amount=-3 +kerning first=353 second=251 amount=-1 +kerning first=234 second=105 amount=-2 +kerning first=257 second=235 amount=-1 +kerning first=197 second=283 amount=-1 +kerning first=1057 second=1093 amount=-1 +kerning first=381 second=338 amount=-1 +kerning first=8250 second=209 amount=-5 +kerning first=338 second=314 amount=-1 +kerning first=8222 second=217 amount=-3 +kerning first=321 second=380 amount=-3 +kerning first=84 second=224 amount=-4 +kerning first=122 second=118 amount=-2 +kerning first=317 second=324 amount=-1 +kerning first=86 second=118 amount=-3 +kerning first=198 second=105 amount=-1 +kerning first=365 second=235 amount=-1 +kerning first=313 second=98 amount=-2 +kerning first=222 second=270 amount=-2 +kerning first=1064 second=1087 amount=-1 +kerning first=250 second=241 amount=-1 +kerning first=108 second=380 amount=-1 +kerning first=277 second=98 amount=-2 +kerning first=120 second=224 amount=-2 +kerning first=1100 second=1087 amount=-1 +kerning first=261 second=224 amount=-1 +kerning first=365 second=228 amount=-1 +kerning first=201 second=338 amount=-1 +kerning first=71 second=352 amount=-2 +kerning first=200 second=198 amount=-2 +kerning first=269 second=283 amount=-1 +kerning first=213 second=380 amount=-2 +kerning first=374 second=85 amount=-1 +kerning first=225 second=224 amount=-1 +kerning first=1042 second=1063 amount=-3 +kerning first=233 second=283 amount=-1 +kerning first=249 second=380 amount=-2 +kerning first=333 second=224 amount=-1 +kerning first=280 second=325 amount=-2 +kerning first=260 second=86 amount=-6 +kerning first=89 second=338 amount=-3 +kerning first=257 second=228 amount=-1 +kerning first=111 second=112 amount=-1 +kerning first=1057 second=1108 amount=-1 +kerning first=221 second=228 amount=-4 +kerning first=8250 second=369 amount=-1 +kerning first=121 second=318 amount=-2 +kerning first=352 second=325 amount=-3 +kerning first=369 second=224 amount=-1 +kerning first=69 second=193 amount=-2 +kerning first=109 second=241 amount=-1 +kerning first=377 second=283 amount=-1 +kerning first=72 second=380 amount=-1 +kerning first=278 second=45 amount=-2 +kerning first=352 second=8250 amount=-1 +kerning first=116 second=228 amount=-1 +kerning first=226 second=318 amount=-1 +kerning first=97 second=101 amount=-1 +kerning first=80 second=235 amount=-1 +kerning first=363 second=331 amount=-1 +kerning first=80 second=228 amount=-1 +kerning first=262 second=318 amount=-1 +kerning first=88 second=84 amount=-2 +kerning first=250 second=248 amount=-1 +kerning first=330 second=263 amount=-2 +kerning first=255 second=331 amount=-2 +kerning first=313 second=209 amount=-2 +kerning first=366 second=263 amount=-2 +kerning first=291 second=331 amount=-1 +kerning first=221 second=235 amount=-3 +kerning first=1089 second=1097 amount=-1 +kerning first=377 second=281 amount=-1 +kerning first=378 second=237 amount=-1 +kerning first=73 second=216 amount=-2 +kerning first=118 second=101 amount=-3 +kerning first=310 second=101 amount=-2 +kerning first=1103 second=1072 amount=-1 +kerning first=347 second=230 amount=-1 +kerning first=225 second=231 amount=-1 +kerning first=346 second=101 amount=-1 +kerning first=369 second=255 amount=-3 +kerning first=211 second=256 amount=-4 +kerning first=1067 second=1072 amount=-1 +kerning first=261 second=231 amount=-1 +kerning first=1053 second=1097 amount=-1 +kerning first=89 second=82 amount=-1 +kerning first=382 second=101 amount=-1 +kerning first=333 second=255 amount=-3 +kerning first=1053 second=1073 amount=-1 +kerning first=275 second=230 amount=-2 +kerning first=233 second=281 amount=-1 +kerning first=1031 second=1114 amount=-1 +kerning first=311 second=230 amount=-2 +kerning first=1039 second=1098 amount=-1 +kerning first=269 second=281 amount=-1 +kerning first=289 second=224 amount=-3 +kerning first=261 second=255 amount=-2 +kerning first=88 second=251 amount=-3 +kerning first=203 second=230 amount=-1 +kerning first=115 second=108 amount=-2 +kerning first=369 second=231 amount=-1 +kerning first=225 second=255 amount=-3 +kerning first=193 second=251 amount=-3 +kerning first=338 second=347 amount=-1 +kerning first=78 second=67 amount=-2 +kerning first=120 second=255 amount=-3 +kerning first=99 second=8221 amount=-2 +kerning first=302 second=347 amount=-2 +kerning first=211 second=280 amount=-2 +kerning first=288 second=107 amount=-1 +kerning first=288 second=311 amount=-1 +kerning first=266 second=347 amount=-2 +kerning first=120 second=8217 amount=-2 +kerning first=229 second=251 amount=-1 +kerning first=76 second=205 amount=-2 +kerning first=230 second=347 amount=-2 +kerning first=197 second=281 amount=-1 +kerning first=337 second=251 amount=-1 +kerning first=120 second=231 amount=-2 +kerning first=194 second=347 amount=-2 +kerning first=378 second=105 amount=-1 +kerning first=111 second=107 amount=-1 +kerning first=83 second=318 amount=-2 +kerning first=89 second=347 amount=-3 +kerning first=328 second=371 amount=-1 +kerning first=252 second=107 amount=-2 +kerning first=84 second=231 amount=-3 +kerning first=97 second=106 amount=-1 +kerning first=212 second=80 amount=-2 +kerning first=277 second=333 amount=-1 +kerning first=75 second=81 amount=-3 +kerning first=230 second=345 amount=-1 +kerning first=266 second=345 amount=-1 +kerning first=284 second=80 amount=-1 +kerning first=187 second=357 amount=-1 +kerning first=327 second=67 amount=-2 +kerning first=69 second=217 amount=-2 +kerning first=256 second=368 amount=-3 +kerning first=100 second=333 amount=-1 +kerning first=374 second=345 amount=-1 +kerning first=198 second=346 amount=-2 +kerning first=310 second=106 amount=-1 +kerning first=219 second=67 amount=-1 +kerning first=210 second=217 amount=-1 +kerning first=313 second=68 amount=-2 +kerning first=205 second=333 amount=-2 +kerning first=71 second=80 amount=-1 +kerning first=282 second=217 amount=-2 +kerning first=216 second=256 amount=-4 +kerning first=98 second=230 amount=-1 +kerning first=80 second=204 amount=-1 +kerning first=218 second=243 amount=-2 +kerning first=346 second=106 amount=-1 +kerning first=381 second=249 amount=-3 +kerning first=8217 second=328 amount=-2 +kerning first=382 second=106 amount=-2 +kerning first=263 second=335 amount=-1 +kerning first=1113 second=1117 amount=-1 +kerning first=110 second=307 amount=-1 +kerning first=356 second=80 amount=-1 +kerning first=362 second=268 amount=-1 +kerning first=221 second=204 amount=-1 +kerning first=71 second=260 amount=-3 +kerning first=70 second=256 amount=-3 +kerning first=251 second=307 amount=-2 +kerning first=334 second=374 amount=-2 +kerning first=77 second=243 amount=-2 +kerning first=8216 second=289 amount=-4 +kerning first=83 second=65 amount=-4 +kerning first=287 second=307 amount=-2 +kerning first=1056 second=1033 amount=-2 +kerning first=113 second=243 amount=-1 +kerning first=201 second=69 amount=-2 +kerning first=310 second=104 amount=-1 +kerning first=310 second=369 amount=-3 +kerning first=219 second=334 amount=-1 +kerning first=70 second=284 amount=-1 +kerning first=274 second=104 amount=-1 +kerning first=274 second=369 amount=-2 +kerning first=288 second=344 amount=-1 +kerning first=382 second=369 amount=-2 +kerning first=120 second=259 amount=-2 +kerning first=251 second=44 amount=-2 +kerning first=377 second=278 amount=-1 +kerning first=202 second=104 amount=-1 +kerning first=346 second=369 amount=-1 +kerning first=84 second=259 amount=-5 +kerning first=324 second=109 amount=-1 +kerning first=1024 second=1085 amount=-1 +kerning first=368 second=192 amount=-4 +kerning first=327 second=334 amount=-2 +kerning first=382 second=104 amount=-2 +kerning first=332 second=192 amount=-4 +kerning first=74 second=44 amount=-1 +kerning first=1070 second=1034 amount=-1 +kerning first=355 second=108 amount=-1 +kerning first=73 second=244 amount=-2 +kerning first=202 second=369 amount=-2 +kerning first=216 second=344 amount=-2 +kerning first=251 second=279 amount=-1 +kerning first=333 second=227 amount=-1 +kerning first=111 second=109 amount=-1 +kerning first=207 second=229 amount=-2 +kerning first=354 second=217 amount=-1 +kerning first=323 second=279 amount=-2 +kerning first=66 second=229 amount=-3 +kerning first=261 second=227 amount=-1 +kerning first=1100 second=1084 amount=-1 +kerning first=287 second=279 amount=-2 +kerning first=102 second=229 amount=-2 +kerning first=225 second=227 amount=-1 +kerning first=1064 second=1084 amount=-1 +kerning first=74 second=279 amount=-2 +kerning first=83 second=192 amount=-4 +kerning first=323 second=44 amount=-1 +kerning first=365 second=232 amount=-1 +kerning first=351 second=229 amount=-1 +kerning first=97 second=104 amount=-1 +kerning first=287 second=44 amount=-3 +kerning first=1049 second=1074 amount=-1 +kerning first=78 second=305 amount=-1 +kerning first=8250 second=366 amount=-4 +kerning first=279 second=229 amount=-2 +kerning first=78 second=334 amount=-2 +kerning first=369 second=227 amount=-1 +kerning first=330 second=267 amount=-2 +kerning first=243 second=257 amount=-1 +kerning first=221 second=232 amount=-3 +kerning first=212 second=344 amount=-2 +kerning first=77 second=283 amount=-2 +kerning first=366 second=267 amount=-2 +kerning first=115 second=371 amount=-1 +kerning first=279 second=257 amount=-2 +kerning first=202 second=67 amount=-1 +kerning first=100 second=361 amount=-1 +kerning first=258 second=267 amount=-1 +kerning first=313 second=65 amount=-2 +kerning first=255 second=305 amount=-2 +kerning first=336 second=219 amount=-1 +kerning first=219 second=305 amount=-2 +kerning first=207 second=257 amount=-2 +kerning first=257 second=232 amount=-1 +kerning first=205 second=361 amount=-2 +kerning first=327 second=305 amount=-1 +kerning first=66 second=257 amount=-3 +kerning first=264 second=219 amount=-2 +kerning first=244 second=8250 amount=-2 +kerning first=203 second=202 amount=-2 +kerning first=291 second=305 amount=-1 +kerning first=102 second=257 amount=-2 +kerning first=277 second=361 amount=-2 +kerning first=203 second=324 amount=-1 +kerning first=266 second=230 amount=-2 +kerning first=192 second=219 amount=-3 +kerning first=241 second=361 amount=-1 +kerning first=363 second=305 amount=-1 +kerning first=80 second=232 amount=-1 +kerning first=382 second=252 amount=-2 +kerning first=199 second=206 amount=-3 +kerning first=87 second=219 amount=-1 +kerning first=335 second=121 amount=-3 +kerning first=338 second=82 amount=-2 +kerning first=374 second=82 amount=-1 +kerning first=1079 second=1083 amount=-1 +kerning first=337 second=254 amount=-1 +kerning first=263 second=121 amount=-2 +kerning first=227 second=121 amount=-3 +kerning first=381 second=69 amount=-1 +kerning first=88 second=254 amount=-1 +kerning first=122 second=121 amount=-2 +kerning first=1071 second=1099 amount=-1 +kerning first=197 second=8217 amount=-5 +kerning first=187 second=66 amount=-5 +kerning first=193 second=254 amount=-2 +kerning first=351 second=257 amount=-1 +kerning first=75 second=79 amount=-3 +kerning first=288 second=82 amount=-1 +kerning first=338 second=69 amount=-2 +kerning first=1039 second=1116 amount=-1 +kerning first=69 second=209 amount=-2 +kerning first=374 second=69 amount=-1 +kerning first=266 second=69 amount=-3 +kerning first=203 second=212 amount=-1 +kerning first=82 second=332 amount=-3 +kerning first=86 second=326 amount=-3 +kerning first=106 second=8217 amount=-2 +kerning first=82 second=79 amount=-3 +kerning first=282 second=209 amount=-2 +kerning first=103 second=316 amount=-3 +kerning first=1104 second=1119 amount=-1 +kerning first=210 second=209 amount=-2 +kerning first=216 second=82 amount=-2 +kerning first=89 second=69 amount=-1 +kerning first=201 second=66 amount=-2 +kerning first=187 second=72 amount=-5 +kerning first=284 second=76 amount=-1 +kerning first=198 second=89 amount=-1 +kerning first=87 second=216 amount=-3 +kerning first=76 second=199 amount=-1 +kerning first=8217 second=71 amount=-2 +kerning first=1071 second=1096 amount=-1 +kerning first=381 second=66 amount=-1 +kerning first=212 second=76 amount=-2 +kerning first=8216 second=281 amount=-3 +kerning first=192 second=216 amount=-3 +kerning first=203 second=205 amount=-2 +kerning first=217 second=199 amount=-1 +kerning first=214 second=229 amount=-1 +kerning first=217 second=192 amount=-4 +kerning first=71 second=76 amount=-1 +kerning first=73 second=229 amount=-2 +kerning first=236 second=242 amount=-1 +kerning first=283 second=8217 amount=-2 +kerning first=109 second=229 amount=-1 +kerning first=202 second=70 amount=-2 +kerning first=1048 second=1077 amount=-1 +kerning first=325 second=199 amount=-2 +kerning first=381 second=326 amount=-1 +kerning first=221 second=226 amount=-5 +kerning first=113 second=8221 amount=-3 +kerning first=313 second=86 amount=-3 +kerning first=257 second=226 amount=-1 +kerning first=1100 second=1099 amount=-1 +kerning first=380 second=242 amount=-1 +kerning first=68 second=257 amount=-1 +kerning first=1064 second=1099 amount=-1 +kerning first=344 second=242 amount=-3 +kerning first=201 second=326 amount=-1 +kerning first=254 second=8221 amount=-2 +kerning first=365 second=226 amount=-1 +kerning first=290 second=8221 amount=-1 +kerning first=264 second=216 amount=-3 +kerning first=90 second=119 amount=-2 +kerning first=356 second=76 amount=-1 +kerning first=1070 second=1033 amount=-3 +kerning first=195 second=119 amount=-3 +kerning first=291 second=333 amount=-2 +kerning first=244 second=316 amount=-2 +kerning first=86 second=216 amount=-3 +kerning first=111 second=103 amount=-2 +kerning first=1082 second=1092 amount=-2 +kerning first=231 second=119 amount=-2 +kerning first=255 second=333 amount=-3 +kerning first=75 second=103 amount=-2 +kerning first=221 second=219 amount=-1 +kerning first=210 second=202 amount=-2 +kerning first=1118 second=1092 amount=-2 +kerning first=334 second=302 amount=-2 +kerning first=267 second=119 amount=-2 +kerning first=363 second=333 amount=-1 +kerning first=316 second=316 amount=-2 +kerning first=69 second=202 amount=-2 +kerning first=303 second=119 amount=-3 +kerning first=352 second=316 amount=-2 +kerning first=262 second=302 amount=-3 +kerning first=339 second=119 amount=-2 +kerning first=375 second=119 amount=-1 +kerning first=354 second=202 amount=-1 +kerning first=219 second=333 amount=-2 +kerning first=80 second=226 amount=-1 +kerning first=1031 second=1119 amount=-1 +kerning first=337 second=291 amount=-2 +kerning first=116 second=226 amount=-1 +kerning first=282 second=202 amount=-2 +kerning first=382 second=116 amount=-1 +kerning first=117 second=269 amount=-1 +kerning first=369 second=246 amount=-1 +kerning first=364 second=375 amount=-1 +kerning first=75 second=284 amount=-3 +kerning first=382 second=122 amount=-2 +kerning first=66 second=253 amount=-3 +kerning first=328 second=375 amount=-2 +kerning first=283 second=259 amount=-2 +kerning first=346 second=122 amount=-2 +kerning first=102 second=253 amount=-1 +kerning first=75 second=369 amount=-3 +kerning first=114 second=45 amount=-1 +kerning first=75 second=363 amount=-3 +kerning first=324 second=103 amount=-2 +kerning first=261 second=246 amount=-1 +kerning first=256 second=375 amount=-3 +kerning first=1053 second=1082 amount=-1 +kerning first=78 second=45 amount=-4 +kerning first=198 second=356 amount=-1 +kerning first=111 second=363 amount=-1 +kerning first=288 second=103 amount=-3 +kerning first=225 second=246 amount=-1 +kerning first=207 second=253 amount=-2 +kerning first=261 second=252 amount=-1 +kerning first=1089 second=1082 amount=-1 +kerning first=219 second=45 amount=-5 +kerning first=258 second=269 amount=-1 +kerning first=252 second=103 amount=-3 +kerning first=243 second=253 amount=-3 +kerning first=310 second=116 amount=-1 +kerning first=366 second=269 amount=-2 +kerning first=216 second=103 amount=-1 +kerning first=120 second=246 amount=-2 +kerning first=1071 second=1075 amount=-1 +kerning first=279 second=253 amount=-2 +kerning first=333 second=252 amount=-1 +kerning first=291 second=45 amount=-3 +kerning first=330 second=269 amount=-2 +kerning first=252 second=363 amount=-1 +kerning first=84 second=246 amount=-3 +kerning first=315 second=253 amount=-3 +kerning first=369 second=252 amount=-1 +kerning first=211 second=259 amount=-1 +kerning first=288 second=363 amount=-1 +kerning first=97 second=122 amount=-1 +kerning first=1046 second=1086 amount=-2 +kerning first=324 second=369 amount=-1 +kerning first=324 second=363 amount=-1 +kerning first=346 second=382 amount=-2 +kerning first=288 second=369 amount=-1 +kerning first=382 second=382 amount=-2 +kerning first=70 second=259 amount=-2 +kerning first=198 second=362 amount=-2 +kerning first=274 second=122 amount=-2 +kerning first=220 second=375 amount=-1 +kerning first=1053 second=1089 amount=-1 +kerning first=193 second=266 amount=-3 +kerning first=202 second=382 amount=-2 +kerning first=274 second=109 amount=-1 +kerning first=8217 second=331 amount=-2 +kerning first=111 second=369 amount=-1 +kerning first=262 second=327 amount=-3 +kerning first=202 second=122 amount=-2 +kerning first=382 second=109 amount=-2 +kerning first=115 second=375 amount=-3 +kerning first=252 second=369 amount=-1 +kerning first=88 second=266 amount=-3 +kerning first=45 second=278 amount=-5 +kerning first=346 second=109 amount=-1 +kerning first=119 second=97 amount=-3 +kerning first=229 second=273 amount=-1 +kerning first=220 second=115 amount=-2 +kerning first=216 second=370 amount=-1 +kerning first=97 second=109 amount=-1 +kerning first=8222 second=311 amount=-1 +kerning first=115 second=115 amount=-3 +kerning first=288 second=370 amount=-1 +kerning first=202 second=109 amount=-1 +kerning first=8217 second=352 amount=-3 +kerning first=328 second=115 amount=-1 +kerning first=364 second=115 amount=-2 +kerning first=88 second=279 amount=-2 +kerning first=234 second=355 amount=-1 +kerning first=356 second=336 amount=-3 +kerning first=256 second=115 amount=-2 +kerning first=1118 second=1086 amount=-2 +kerning first=229 second=279 amount=-1 +kerning first=1082 second=1086 amount=-2 +kerning first=193 second=279 amount=-1 +kerning first=245 second=259 amount=-1 +kerning first=207 second=232 amount=-2 +kerning first=351 second=253 amount=-3 +kerning first=262 second=296 amount=-3 +kerning first=378 second=355 amount=-1 +kerning first=279 second=232 amount=-1 +kerning first=334 second=296 amount=-2 +kerning first=356 second=353 amount=-3 +kerning first=256 second=108 amount=-2 +kerning first=8217 second=337 amount=-3 +kerning first=75 second=370 amount=-2 +kerning first=328 second=108 amount=-1 +kerning first=83 second=69 amount=-3 +kerning first=263 second=8249 amount=-2 +kerning first=203 second=206 amount=-2 +kerning first=66 second=232 amount=-1 +kerning first=313 second=8221 amount=-4 +kerning first=334 second=315 amount=-2 +kerning first=187 second=85 amount=-4 +kerning first=262 second=303 amount=-1 +kerning first=82 second=338 amount=-3 +kerning first=248 second=328 amount=-1 +kerning first=298 second=303 amount=-1 +kerning first=1104 second=1113 amount=-2 +kerning first=82 second=85 amount=-3 +kerning first=201 second=325 amount=-2 +kerning first=266 second=75 amount=-3 +kerning first=226 second=303 amount=-1 +kerning first=282 second=196 amount=-2 +kerning first=204 second=290 amount=-2 +kerning first=356 second=328 amount=-3 +kerning first=262 second=315 amount=-3 +kerning first=354 second=196 amount=-6 +kerning first=334 second=303 amount=-1 +kerning first=268 second=221 amount=-1 +kerning first=381 second=325 amount=-1 +kerning first=370 second=303 amount=-2 +kerning first=198 second=83 amount=-2 +kerning first=257 second=225 amount=-1 +kerning first=243 second=261 amount=-1 +kerning first=89 second=323 amount=-1 +kerning first=69 second=196 amount=-2 +kerning first=371 second=380 amount=-1 +kerning first=371 second=98 amount=-1 +kerning first=1039 second=1117 amount=-1 +kerning first=210 second=196 amount=-4 +kerning first=8217 second=65 amount=-6 +kerning first=365 second=225 amount=-1 +kerning first=85 second=303 amount=-2 +kerning first=263 second=98 amount=-2 +kerning first=363 second=46 amount=-2 +kerning first=80 second=225 amount=-1 +kerning first=377 second=286 amount=-1 +kerning first=266 second=323 amount=-3 +kerning first=227 second=380 amount=-1 +kerning first=227 second=98 amount=-1 +kerning first=116 second=225 amount=-1 +kerning first=374 second=323 amount=-1 +kerning first=263 second=380 amount=-2 +kerning first=335 second=98 amount=-1 +kerning first=338 second=323 amount=-2 +kerning first=221 second=225 amount=-5 +kerning first=262 second=226 amount=-2 +kerning first=255 second=311 amount=-2 +kerning first=219 second=46 amount=-5 +kerning first=212 second=77 amount=-2 +kerning first=1050 second=1118 amount=-2 +kerning first=255 second=46 amount=-5 +kerning first=264 second=210 amount=-3 +kerning first=208 second=317 amount=-2 +kerning first=291 second=46 amount=-3 +kerning first=313 second=71 amount=-1 +kerning first=120 second=233 amount=-2 +kerning first=327 second=46 amount=-1 +kerning first=71 second=77 amount=-1 +kerning first=197 second=286 amount=-3 +kerning first=1086 second=1118 amount=-1 +kerning first=261 second=233 amount=-1 +kerning first=192 second=210 amount=-3 +kerning first=356 second=77 amount=-1 +kerning first=1056 second=1040 amount=-4 +kerning first=225 second=233 amount=-1 +kerning first=1114 second=1080 amount=-1 +kerning first=205 second=71 amount=-2 +kerning first=87 second=210 amount=-3 +kerning first=114 second=46 amount=-4 +kerning first=284 second=77 amount=-1 +kerning first=1105 second=1078 amount=-1 +kerning first=203 second=211 amount=-1 +kerning first=198 second=102 amount=-2 +kerning first=67 second=317 amount=-3 +kerning first=79 second=197 amount=-4 +kerning first=205 second=352 amount=-2 +kerning first=73 second=235 amount=-2 +kerning first=84 second=252 amount=-1 +kerning first=317 second=112 amount=-2 +kerning first=196 second=221 amount=-6 +kerning first=369 second=233 amount=-1 +kerning first=120 second=252 amount=-3 +kerning first=281 second=112 amount=-1 +kerning first=199 second=200 amount=-3 +kerning first=97 second=110 amount=-1 +kerning first=245 second=112 amount=-1 +kerning first=225 second=252 amount=-1 +kerning first=209 second=112 amount=-1 +kerning first=202 second=110 amount=-1 +kerning first=378 second=102 amount=-2 +kerning first=250 second=235 amount=-1 +kerning first=379 second=200 amount=-1 +kerning first=198 second=350 amount=-2 +kerning first=363 second=311 amount=-2 +kerning first=104 second=112 amount=-1 +kerning first=274 second=110 amount=-1 +kerning first=1071 second=1090 amount=-1 +kerning first=68 second=112 amount=-1 +kerning first=291 second=311 amount=-2 +kerning first=81 second=196 amount=-4 +kerning first=196 second=237 amount=-1 +kerning first=346 second=110 amount=-1 +kerning first=227 second=378 amount=-1 +kerning first=205 second=353 amount=-2 +kerning first=267 second=171 amount=-2 +kerning first=218 second=262 amount=-1 +kerning first=382 second=110 amount=-2 +kerning first=241 second=353 amount=-1 +kerning first=209 second=113 amount=-2 +kerning first=236 second=250 amount=-1 +kerning first=277 second=353 amount=-2 +kerning first=68 second=366 amount=-1 +kerning first=223 second=291 amount=-2 +kerning first=122 second=249 amount=-2 +kerning first=200 second=250 amount=-2 +kerning first=263 second=378 amount=-2 +kerning first=313 second=353 amount=-1 +kerning first=375 second=171 amount=-4 +kerning first=362 second=262 amount=-1 +kerning first=1089 second=1076 amount=-1 +kerning first=284 second=65 amount=-3 +kerning first=371 second=365 amount=-1 +kerning first=253 second=289 amount=-3 +kerning first=122 second=378 amount=-2 +kerning first=100 second=353 amount=-1 +kerning first=195 second=171 amount=-4 +kerning first=335 second=365 amount=-1 +kerning first=86 second=378 amount=-3 +kerning first=231 second=171 amount=-2 +kerning first=353 second=112 amount=-3 +kerning first=381 second=109 amount=-1 +kerning first=82 second=354 amount=-3 +kerning first=254 second=249 amount=-1 +kerning first=313 second=352 amount=-1 +kerning first=281 second=100 amount=-1 +kerning first=290 second=249 amount=-1 +kerning first=258 second=288 amount=-3 +kerning first=187 second=354 amount=-4 +kerning first=1053 second=1101 amount=-1 +kerning first=218 second=249 amount=-1 +kerning first=330 second=275 amount=-2 +kerning first=1042 second=1078 amount=-3 +kerning first=1057 second=1102 amount=-1 +kerning first=335 second=378 amount=-2 +kerning first=1046 second=1091 amount=-2 +kerning first=187 second=87 amount=-4 +kerning first=77 second=262 amount=-2 +kerning first=1056 second=1052 amount=-1 +kerning first=1082 second=1091 amount=-2 +kerning first=209 second=100 amount=-2 +kerning first=362 second=249 amount=-1 +kerning first=82 second=87 amount=-3 +kerning first=344 second=248 amount=-3 +kerning first=1064 second=1105 amount=-1 +kerning first=317 second=364 amount=-3 +kerning first=1107 second=1077 amount=-1 +kerning first=99 second=289 amount=-3 +kerning first=220 second=377 amount=-1 +kerning first=250 second=223 amount=-1 +kerning first=86 second=380 amount=-3 +kerning first=79 second=377 amount=-2 +kerning first=335 second=114 amount=-1 +kerning first=199 second=198 amount=-3 +kerning first=204 second=289 amount=-3 +kerning first=259 second=339 amount=-1 +kerning first=8250 second=106 amount=-2 +kerning first=122 second=380 amount=-2 +kerning first=75 second=45 amount=-4 +kerning first=1071 second=1077 amount=-1 +kerning first=1042 second=1065 amount=-2 +kerning first=371 second=114 amount=-1 +kerning first=240 second=289 amount=-2 +kerning first=89 second=330 amount=-1 +kerning first=77 second=249 amount=-1 +kerning first=263 second=114 amount=-1 +kerning first=326 second=8220 amount=-4 +kerning first=236 second=248 amount=-1 +kerning first=364 second=377 amount=-1 +kerning first=367 second=339 amount=-1 +kerning first=290 second=8220 amount=-1 +kerning first=366 second=288 amount=-1 +kerning first=254 second=8220 amount=-2 +kerning first=1025 second=1103 amount=-2 +kerning first=263 second=365 amount=-2 +kerning first=86 second=114 amount=-1 +kerning first=381 second=313 amount=-1 +kerning first=68 second=379 amount=-2 +kerning first=227 second=365 amount=-1 +kerning first=1024 second=1064 amount=-1 +kerning first=86 second=99 amount=-3 +kerning first=8217 second=291 amount=-4 +kerning first=113 second=8220 amount=-3 +kerning first=8250 second=107 amount=-1 +kerning first=197 second=287 amount=-3 +kerning first=236 second=263 amount=-1 +kerning first=1060 second=1064 amount=-1 +kerning first=376 second=237 amount=-2 +kerning first=196 second=289 amount=-3 +kerning first=122 second=365 amount=-2 +kerning first=118 second=339 amount=-3 +kerning first=201 second=313 amount=-2 +kerning first=317 second=82 amount=-2 +kerning first=269 second=287 amount=-3 +kerning first=86 second=365 amount=-2 +kerning first=122 second=99 amount=-1 +kerning first=304 second=237 amount=-1 +kerning first=334 second=378 amount=-2 +kerning first=1024 second=1079 amount=-1 +kerning first=236 second=234 amount=-1 +kerning first=263 second=99 amount=-1 +kerning first=268 second=237 amount=-1 +kerning first=1051 second=1094 amount=-1 +kerning first=89 second=75 amount=-1 +kerning first=227 second=99 amount=-1 +kerning first=82 second=339 amount=-3 +kerning first=1088 second=1119 amount=-1 +kerning first=317 second=379 amount=-3 +kerning first=305 second=287 amount=-2 +kerning first=208 second=229 amount=-1 +kerning first=379 second=198 amount=-1 +kerning first=280 second=44 amount=-1 +kerning first=356 second=334 amount=-3 +kerning first=333 second=237 amount=-1 +kerning first=187 second=344 amount=-5 +kerning first=377 second=287 amount=-3 +kerning first=196 second=234 amount=-1 +kerning first=352 second=44 amount=-4 +kerning first=87 second=197 amount=-6 +kerning first=232 second=234 amount=-1 +kerning first=261 second=237 amount=-1 +kerning first=66 second=244 amount=-1 +kerning first=307 second=44 amount=-2 +kerning first=204 second=284 amount=-2 +kerning first=268 second=234 amount=-2 +kerning first=225 second=237 amount=-1 +kerning first=317 second=104 amount=-2 +kerning first=103 second=44 amount=-3 +kerning first=363 second=324 amount=-1 +kerning first=75 second=354 amount=-2 +kerning first=281 second=104 amount=-2 +kerning first=120 second=237 amount=-1 +kerning first=218 second=267 amount=-2 +kerning first=245 second=104 amount=-1 +kerning first=208 second=44 amount=-3 +kerning first=264 second=197 amount=-3 +kerning first=84 second=237 amount=-2 +kerning first=112 second=187 amount=-2 +kerning first=216 second=354 amount=-2 +kerning first=232 second=227 amount=-2 +kerning first=1071 second=1084 amount=-1 +kerning first=336 second=197 amount=-4 +kerning first=199 second=194 amount=-3 +kerning first=122 second=111 amount=-1 +kerning first=90 second=337 amount=-1 +kerning first=288 second=354 amount=-3 +kerning first=227 second=111 amount=-1 +kerning first=209 second=237 amount=-1 +kerning first=82 second=351 amount=-2 +kerning first=376 second=227 amount=-5 +kerning first=1067 second=1054 amount=-1 +kerning first=304 second=234 amount=-2 +kerning first=99 second=277 amount=-1 +kerning first=1031 second=1054 amount=-1 +kerning first=205 second=74 amount=-1 +kerning first=288 second=87 amount=-3 +kerning first=304 second=227 amount=-2 +kerning first=376 second=234 amount=-3 +kerning first=1075 second=1104 amount=-1 +kerning first=204 second=277 amount=-2 +kerning first=268 second=227 amount=-2 +kerning first=216 second=87 amount=-2 +kerning first=86 second=111 amount=-3 +kerning first=353 second=367 amount=-1 +kerning first=380 second=254 amount=-1 +kerning first=198 second=361 amount=-2 +kerning first=193 second=267 amount=-1 +kerning first=220 second=121 amount=-1 +kerning first=313 second=74 amount=-1 +kerning first=367 second=351 amount=-2 +kerning first=380 second=257 amount=-1 +kerning first=229 second=267 amount=-1 +kerning first=331 second=351 amount=-1 +kerning first=201 second=314 amount=-1 +kerning first=77 second=261 amount=-2 +kerning first=281 second=367 amount=-2 +kerning first=88 second=267 amount=-2 +kerning first=115 second=121 amount=-3 +kerning first=75 second=364 amount=-2 +kerning first=70 second=264 amount=-1 +kerning first=113 second=261 amount=-2 +kerning first=317 second=367 amount=-2 +kerning first=234 second=361 amount=-2 +kerning first=269 second=8249 amount=-2 +kerning first=212 second=327 amount=-2 +kerning first=1114 second=1074 amount=-1 +kerning first=344 second=257 amount=-2 +kerning first=209 second=367 amount=-2 +kerning first=236 second=254 amount=-1 +kerning first=223 second=351 amount=-2 +kerning first=236 second=257 amount=-2 +kerning first=1042 second=1059 amount=-3 +kerning first=245 second=367 amount=-1 +kerning first=197 second=8249 amount=-4 +kerning first=284 second=327 amount=-1 +kerning first=288 second=364 amount=-1 +kerning first=187 second=351 amount=-1 +kerning first=272 second=257 amount=-1 +kerning first=104 second=367 amount=-1 +kerning first=8250 second=109 amount=-2 +kerning first=295 second=351 amount=-1 +kerning first=344 second=254 amount=-3 +kerning first=378 second=361 amount=-2 +kerning first=356 second=327 amount=-1 +kerning first=364 second=114 amount=-1 +kerning first=216 second=364 amount=-1 +kerning first=259 second=351 amount=-1 +kerning first=200 second=257 amount=-1 +kerning first=326 second=261 amount=-1 +kerning first=279 second=244 amount=-1 +kerning first=232 second=224 amount=-2 +kerning first=362 second=261 amount=-3 +kerning first=106 second=289 amount=-3 +kerning first=1055 second=1108 amount=-1 +kerning first=256 second=117 amount=-3 +kerning first=304 second=224 amount=-2 +kerning first=353 second=104 amount=-1 +kerning first=200 second=254 amount=-1 +kerning first=220 second=114 amount=-1 +kerning first=1038 second=1051 amount=-5 +kerning first=328 second=117 amount=-1 +kerning first=364 second=121 amount=-1 +kerning first=1067 second=1057 amount=-1 +kerning first=376 second=224 amount=-4 +kerning first=218 second=261 amount=-3 +kerning first=121 second=347 amount=-3 +kerning first=1031 second=1057 amount=-1 +kerning first=254 second=261 amount=-1 +kerning first=380 second=250 amount=-2 +kerning first=377 second=8249 amount=-3 +kerning first=290 second=261 amount=-1 +kerning first=344 second=250 amount=-2 +kerning first=211 second=274 amount=-2 +kerning first=369 second=237 amount=-2 +kerning first=356 second=337 amount=-3 +kerning first=369 second=240 amount=-1 +kerning first=1053 second=1088 amount=-1 +kerning first=356 second=331 amount=-3 +kerning first=209 second=101 amount=-2 +kerning first=324 second=97 amount=-1 +kerning first=1049 second=1082 amount=-1 +kerning first=1045 second=1038 amount=-3 +kerning first=1039 second=1107 amount=-1 +kerning first=274 second=268 amount=-1 +kerning first=8220 second=197 amount=-8 +kerning first=203 second=221 amount=-1 +kerning first=115 second=117 amount=-1 +kerning first=220 second=117 amount=-1 +kerning first=87 second=200 amount=-1 +kerning first=377 second=290 amount=-1 +kerning first=106 second=271 amount=-1 +kerning first=1024 second=1067 amount=-1 +kerning first=1045 second=1067 amount=-1 +kerning first=234 second=98 amount=-2 +kerning first=84 second=240 amount=-3 +kerning first=194 second=338 amount=-3 +kerning first=197 second=290 amount=-3 +kerning first=67 second=114 amount=-1 +kerning first=87 second=207 amount=-1 +kerning first=256 second=199 amount=-3 +kerning first=283 second=271 amount=-1 +kerning first=225 second=240 amount=-1 +kerning first=364 second=380 amount=-3 +kerning first=203 second=214 amount=-1 +kerning first=346 second=219 amount=-3 +kerning first=261 second=240 amount=-1 +kerning first=198 second=98 amount=-1 +kerning first=236 second=251 amount=-1 +kerning first=1060 second=1067 amount=-1 +kerning first=344 second=251 amount=-2 +kerning first=336 second=207 amount=-2 +kerning first=313 second=77 amount=-2 +kerning first=264 second=201 amount=-3 +kerning first=381 second=317 amount=-1 +kerning first=380 second=251 amount=-2 +kerning first=1107 second=1086 amount=-1 +kerning first=198 second=90 amount=-1 +kerning first=82 second=84 amount=-3 +kerning first=1070 second=1024 amount=-1 +kerning first=352 second=304 amount=-3 +kerning first=284 second=330 amount=-1 +kerning first=379 second=194 amount=-1 +kerning first=87 second=201 amount=-1 +kerning first=221 second=220 amount=-1 +kerning first=201 second=317 amount=-2 +kerning first=280 second=304 amount=-2 +kerning first=264 second=207 amount=-3 +kerning first=323 second=291 amount=-3 +kerning first=1118 second=1101 amount=-1 +kerning first=219 second=324 amount=-2 +kerning first=79 second=381 amount=-2 +kerning first=1071 second=1081 amount=-1 +kerning first=75 second=97 amount=-1 +kerning first=336 second=200 amount=-2 +kerning first=8250 second=110 amount=-2 +kerning first=287 second=291 amount=-2 +kerning first=350 second=234 amount=-1 +kerning first=240 second=107 amount=-1 +kerning first=251 second=291 amount=-3 +kerning first=291 second=324 amount=-1 +kerning first=260 second=213 amount=-3 +kerning first=264 second=200 amount=-3 +kerning first=221 second=213 amount=-3 +kerning first=255 second=324 amount=-2 +kerning first=220 second=381 amount=-1 +kerning first=118 second=233 amount=-3 +kerning first=262 second=311 amount=-1 +kerning first=252 second=97 amount=-1 +kerning first=226 second=311 amount=-1 +kerning first=110 second=291 amount=-2 +kerning first=288 second=97 amount=-1 +kerning first=74 second=291 amount=-3 +kerning first=107 second=337 amount=-3 +kerning first=1089 second=1088 amount=-1 +kerning first=356 second=71 amount=-3 +kerning first=121 second=311 amount=-2 +kerning first=1082 second=1101 amount=-1 +kerning first=364 second=381 amount=-1 +kerning first=1039 second=1114 amount=-1 +kerning first=216 second=97 amount=-1 +kerning first=263 second=226 amount=-2 +kerning first=369 second=243 amount=-1 +kerning first=227 second=375 amount=-3 +kerning first=87 second=203 amount=-1 +kerning first=73 second=228 amount=-2 +kerning first=228 second=8220 amount=-3 +kerning first=217 second=193 amount=-4 +kerning first=236 second=253 amount=-3 +kerning first=122 second=375 amount=-2 +kerning first=79 second=120 amount=-1 +kerning first=1086 second=1114 amount=-1 +kerning first=86 second=375 amount=-3 +kerning first=203 second=218 amount=-2 +kerning first=115 second=120 amount=-3 +kerning first=225 second=243 amount=-1 +kerning first=71 second=70 amount=-1 +kerning first=371 second=375 amount=-2 +kerning first=261 second=243 amount=-1 +kerning first=1089 second=1085 amount=-1 +kerning first=344 second=253 amount=-3 +kerning first=335 second=375 amount=-3 +kerning first=353 second=103 amount=-3 +kerning first=1053 second=1085 amount=-1 +kerning first=380 second=253 amount=-2 +kerning first=317 second=103 amount=-3 +kerning first=1031 second=1060 amount=-1 +kerning first=263 second=375 amount=-2 +kerning first=326 second=249 amount=-1 +kerning first=281 second=103 amount=-3 +kerning first=1067 second=1060 amount=-1 +kerning first=208 second=310 amount=-2 +kerning first=70 second=268 amount=-1 +kerning first=268 second=245 amount=-2 +kerning first=328 second=120 amount=-1 +kerning first=284 second=70 amount=-1 +kerning first=364 second=120 amount=-2 +kerning first=1082 second=1095 amount=-1 +kerning first=336 second=203 amount=-2 +kerning first=1046 second=1095 amount=-3 +kerning first=67 second=310 amount=-3 +kerning first=212 second=70 amount=-2 +kerning first=356 second=68 amount=-1 +kerning first=187 second=78 amount=-5 +kerning first=352 second=310 amount=-3 +kerning first=1064 second=1100 amount=-1 +kerning first=264 second=203 amount=-3 +kerning first=364 second=118 amount=-2 +kerning first=223 second=345 amount=-1 +kerning first=1100 second=1100 amount=-1 +kerning first=194 second=286 amount=-3 +kerning first=328 second=118 amount=-3 +kerning first=220 second=120 amount=-2 +kerning first=280 second=310 amount=-2 +kerning first=356 second=70 amount=-1 +kerning first=80 second=196 amount=-4 +kerning first=1056 second=1043 amount=-1 +kerning first=336 second=201 amount=-2 +kerning first=371 second=105 amount=-1 +kerning first=220 second=118 amount=-2 +kerning first=102 second=245 amount=-1 +kerning first=371 second=108 amount=-2 +kerning first=8250 second=112 amount=-2 +kerning first=121 second=305 amount=-2 +kerning first=66 second=245 amount=-1 +kerning first=85 second=305 amount=-2 +kerning first=335 second=105 amount=-1 +kerning first=199 second=304 amount=-3 +kerning first=256 second=118 amount=-3 +kerning first=204 second=283 amount=-2 +kerning first=226 second=305 amount=-1 +kerning first=227 second=105 amount=-1 +kerning first=45 second=379 amount=-4 +kerning first=374 second=335 amount=-3 +kerning first=1058 second=1117 amount=-2 +kerning first=263 second=105 amount=-2 +kerning first=279 second=245 amount=-1 +kerning first=351 second=241 amount=-2 +kerning first=99 second=283 amount=-1 +kerning first=298 second=305 amount=-1 +kerning first=122 second=105 amount=-1 +kerning first=115 second=118 amount=-3 +kerning first=1107 second=1083 amount=-3 +kerning first=262 second=305 amount=-1 +kerning first=356 second=65 amount=-6 +kerning first=207 second=245 amount=-2 +kerning first=89 second=334 amount=-3 +kerning first=370 second=305 amount=-2 +kerning first=262 second=86 amount=-1 +kerning first=230 second=335 amount=-1 +kerning first=243 second=241 amount=-1 +kerning first=334 second=305 amount=-1 +kerning first=86 second=105 amount=-2 +kerning first=255 second=318 amount=-2 +kerning first=376 second=231 amount=-3 +kerning first=325 second=244 amount=-2 +kerning first=291 second=318 amount=-3 +kerning first=315 second=241 amount=-1 +kerning first=1024 second=1070 amount=-1 +kerning first=122 second=108 amount=-2 +kerning first=279 second=241 amount=-2 +kerning first=286 second=228 amount=-1 +kerning first=263 second=108 amount=-3 +kerning first=363 second=318 amount=-2 +kerning first=66 second=241 amount=-3 +kerning first=250 second=228 amount=-1 +kerning first=227 second=108 amount=-1 +kerning first=89 second=335 amount=-3 +kerning first=214 second=228 amount=-1 +kerning first=335 second=108 amount=-2 +kerning first=76 second=193 amount=-2 +kerning first=194 second=335 amount=-1 +kerning first=102 second=241 amount=-1 +kerning first=118 second=347 amount=-3 +kerning first=82 second=347 amount=-2 +kerning first=266 second=66 amount=-3 +kerning first=1042 second=1058 amount=-1 +kerning first=354 second=205 amount=-1 +kerning first=304 second=231 amount=-2 +kerning first=376 second=230 amount=-5 +kerning first=362 second=256 amount=-4 +kerning first=8250 second=379 amount=-4 +kerning first=362 second=380 amount=-3 +kerning first=99 second=281 amount=-1 +kerning first=1038 second=1047 amount=-3 +kerning first=362 second=255 amount=-1 +kerning first=232 second=231 amount=-1 +kerning first=374 second=66 amount=-1 +kerning first=304 second=230 amount=-2 +kerning first=89 second=332 amount=-3 +kerning first=290 second=256 amount=-3 +kerning first=326 second=255 amount=-2 +kerning first=268 second=231 amount=-2 +kerning first=103 second=307 amount=-2 +kerning first=338 second=66 amount=-2 +kerning first=210 second=205 amount=-2 +kerning first=221 second=216 amount=-3 +kerning first=1082 second=1098 amount=-1 +kerning first=194 second=332 amount=-3 +kerning first=263 second=371 amount=-2 +kerning first=254 second=255 amount=-3 +kerning first=8217 second=74 amount=-3 +kerning first=1046 second=1098 amount=-3 +kerning first=218 second=255 amount=-1 +kerning first=367 second=347 amount=-2 +kerning first=336 second=45 amount=-1 +kerning first=266 second=332 amount=-3 +kerning first=335 second=371 amount=-1 +kerning first=380 second=102 amount=-2 +kerning first=331 second=347 amount=-1 +kerning first=371 second=371 amount=-1 +kerning first=241 second=112 amount=-1 +kerning first=113 second=255 amount=-1 +kerning first=295 second=347 amount=-1 +kerning first=317 second=107 amount=-2 +kerning first=338 second=332 amount=-1 +kerning first=77 second=255 amount=-2 +kerning first=381 second=346 amount=-1 +kerning first=281 second=107 amount=-2 +kerning first=1052 second=1094 amount=-1 +kerning first=302 second=332 amount=-2 +kerning first=122 second=371 amount=-2 +kerning first=66 second=242 amount=-1 +kerning first=223 second=347 amount=-2 +kerning first=69 second=205 amount=-2 +kerning first=187 second=347 amount=-1 +kerning first=353 second=107 amount=-1 +kerning first=374 second=332 amount=-3 +kerning first=227 second=371 amount=-1 +kerning first=71 second=68 amount=-1 +kerning first=66 second=249 amount=-3 +kerning first=264 second=204 amount=-3 +kerning first=367 second=345 amount=-1 +kerning first=203 second=217 amount=-2 +kerning first=1027 second=1033 amount=-5 +kerning first=250 second=229 amount=-1 +kerning first=8216 second=277 amount=-3 +kerning first=336 second=204 amount=-2 +kerning first=207 second=242 amount=-2 +kerning first=286 second=229 amount=-1 +kerning first=356 second=67 amount=-3 +kerning first=104 second=106 amount=-2 +kerning first=82 second=81 amount=-3 +kerning first=279 second=242 amount=-1 +kerning first=252 second=289 amount=-3 +kerning first=284 second=68 amount=-1 +kerning first=222 second=282 amount=-2 +kerning first=68 second=106 amount=-1 +kerning first=212 second=68 amount=-2 +kerning first=281 second=106 amount=-2 +kerning first=232 second=230 amount=-2 +kerning first=81 second=282 amount=-2 +kerning first=84 second=243 amount=-3 +kerning first=205 second=346 amount=-2 +kerning first=317 second=106 amount=-2 +kerning first=268 second=230 amount=-2 +kerning first=97 second=119 amount=-3 +kerning first=45 second=282 amount=-5 +kerning first=120 second=243 amount=-2 +kerning first=244 second=307 amount=-1 +kerning first=245 second=106 amount=-2 +kerning first=202 second=119 amount=-1 +kerning first=316 second=307 amount=-1 +kerning first=109 second=8217 amount=-4 +kerning first=87 second=204 amount=-1 +kerning first=223 second=287 amount=-2 +kerning first=274 second=119 amount=-1 +kerning first=313 second=346 amount=-1 +kerning first=353 second=106 amount=-1 +kerning first=310 second=119 amount=-3 +kerning first=1039 second=1047 amount=-1 +kerning first=346 second=119 amount=-3 +kerning first=90 second=361 amount=-3 +kerning first=103 second=230 amount=-3 +kerning first=213 second=327 amount=-2 +kerning first=233 second=275 amount=-1 +kerning first=89 second=353 amount=-3 +kerning first=310 second=199 amount=-3 +kerning first=378 second=249 amount=-2 +kerning first=269 second=275 amount=-1 +kerning first=67 second=230 amount=-2 +kerning first=321 second=327 amount=-2 +kerning first=307 second=223 amount=-1 +kerning first=1107 second=1072 amount=-1 +kerning first=197 second=275 amount=-1 +kerning first=248 second=229 amount=-1 +kerning first=84 second=45 amount=-5 +kerning first=8250 second=302 amount=-5 +kerning first=72 second=81 amount=-2 +kerning first=321 second=67 amount=-1 +kerning first=310 second=111 amount=-2 +kerning first=84 second=256 amount=-6 +kerning first=199 second=223 amount=-1 +kerning first=368 second=268 amount=-1 +kerning first=218 second=211 amount=-1 +kerning first=374 second=339 amount=-3 +kerning first=77 second=211 amount=-2 +kerning first=352 second=230 amount=-2 +kerning first=235 second=223 amount=-1 +kerning first=86 second=264 amount=-3 +kerning first=88 second=87 amount=-2 +kerning first=280 second=230 amount=-1 +kerning first=8250 second=368 amount=-4 +kerning first=296 second=268 amount=-2 +kerning first=198 second=249 amount=-2 +kerning first=377 second=275 amount=-1 +kerning first=208 second=230 amount=-1 +kerning first=260 second=268 amount=-3 +kerning first=234 second=249 amount=-2 +kerning first=244 second=230 amount=-1 +kerning first=68 second=204 amount=-2 +kerning first=86 second=209 amount=-1 +kerning first=233 second=289 amount=-3 +kerning first=379 second=237 amount=-1 +kerning first=68 second=218 amount=-1 +kerning first=269 second=289 amount=-3 +kerning first=194 second=339 amount=-1 +kerning first=119 second=380 amount=-3 +kerning first=67 second=244 amount=-2 +kerning first=378 second=263 amount=-1 +kerning first=214 second=315 amount=-2 +kerning first=307 second=237 amount=-1 +kerning first=1053 second=1081 amount=-1 +kerning first=1025 second=1091 amount=-1 +kerning first=103 second=244 amount=-2 +kerning first=213 second=313 amount=-2 +kerning first=89 second=339 amount=-3 +kerning first=1061 second=1091 amount=-2 +kerning first=68 second=259 amount=-1 +kerning first=377 second=289 amount=-3 +kerning first=235 second=237 amount=-2 +kerning first=1101 second=1088 amount=-1 +kerning first=199 second=237 amount=-1 +kerning first=234 second=263 amount=-1 +kerning first=230 second=339 amount=-1 +kerning first=78 second=199 amount=-2 +kerning first=332 second=282 amount=-2 +kerning first=1052 second=1084 amount=-1 +kerning first=266 second=339 amount=-2 +kerning first=316 second=244 amount=-1 +kerning first=338 second=353 amount=-1 +kerning first=337 second=365 amount=-1 +kerning first=374 second=353 amount=-3 +kerning first=83 second=296 amount=-3 +kerning first=350 second=361 amount=-1 +kerning first=102 second=8249 amount=-3 +kerning first=77 second=225 amount=-2 +kerning first=204 second=334 amount=-2 +kerning first=113 second=225 amount=-2 +kerning first=377 second=249 amount=-3 +kerning first=1097 second=1105 amount=-1 +kerning first=1069 second=1065 amount=-1 +kerning first=229 second=365 amount=-1 +kerning first=1052 second=1098 amount=-1 +kerning first=194 second=353 amount=-2 +kerning first=83 second=282 amount=-3 +kerning first=193 second=365 amount=-3 +kerning first=240 second=8221 amount=-2 +kerning first=230 second=353 amount=-2 +kerning first=203 second=346 amount=-2 +kerning first=266 second=353 amount=-2 +kerning first=88 second=365 amount=-3 +kerning first=1062 second=1079 amount=-1 +kerning first=197 second=289 amount=-3 +kerning first=302 second=353 amount=-2 +kerning first=332 second=296 amount=-2 +kerning first=352 second=202 amount=-3 +kerning first=335 second=305 amount=-1 +kerning first=193 second=351 amount=-2 +kerning first=307 second=251 amount=-1 +kerning first=203 second=374 amount=-1 +kerning first=266 second=121 amount=-1 +kerning first=224 second=254 amount=-1 +kerning first=45 second=105 amount=-1 +kerning first=230 second=121 amount=-2 +kerning first=280 second=202 amount=-2 +kerning first=260 second=254 amount=-2 +kerning first=210 second=206 amount=-2 +kerning first=194 second=121 amount=-3 +kerning first=234 second=277 amount=-1 +kerning first=229 second=351 amount=-1 +kerning first=282 second=206 amount=-2 +kerning first=89 second=121 amount=-3 +kerning first=1072 second=1074 amount=-1 +kerning first=194 second=79 amount=-3 +kerning first=83 second=254 amount=-2 +kerning first=338 second=367 amount=-2 +kerning first=354 second=206 amount=-1 +kerning first=1042 second=1103 amount=-2 +kerning first=89 second=381 amount=-3 +kerning first=119 second=254 amount=-1 +kerning first=286 second=69 amount=-1 +kerning first=374 second=367 amount=-2 +kerning first=89 second=79 amount=-3 +kerning first=266 second=367 amount=-2 +kerning first=302 second=79 amount=-2 +kerning first=352 second=244 amount=-1 +kerning first=228 second=117 amount=-1 +kerning first=274 second=344 amount=-2 +kerning first=214 second=69 amount=-2 +kerning first=302 second=367 amount=-2 +kerning first=338 second=79 amount=-1 +kerning first=219 second=199 amount=-1 +kerning first=1051 second=1096 amount=-1 +kerning first=347 second=114 amount=-1 +kerning first=192 second=117 amount=-3 +kerning first=194 second=367 amount=-3 +kerning first=209 second=234 amount=-2 +kerning first=8220 second=99 amount=-3 +kerning first=346 second=344 amount=-3 +kerning first=84 second=284 amount=-3 +kerning first=233 second=261 amount=-2 +kerning first=230 second=367 amount=-2 +kerning first=266 second=79 amount=-3 +kerning first=82 second=336 amount=-3 +kerning first=275 second=114 amount=-1 +kerning first=264 second=117 amount=-2 +kerning first=203 second=72 amount=-2 +kerning first=214 second=83 amount=-1 +kerning first=268 second=255 amount=-1 +kerning first=89 second=367 amount=-2 +kerning first=327 second=199 amount=-2 +kerning first=338 second=381 amount=-1 +kerning first=336 second=192 amount=-4 +kerning first=374 second=121 amount=-3 +kerning first=286 second=83 amount=-2 +kerning first=187 second=76 amount=-5 +kerning first=204 second=121 amount=-2 +kerning first=374 second=79 amount=-3 +kerning first=1063 second=1081 amount=-1 +kerning first=202 second=344 amount=-2 +kerning first=1025 second=1119 amount=-1 +kerning first=364 second=71 amount=-1 +kerning first=264 second=192 amount=-3 +kerning first=1027 second=1081 amount=-2 +kerning first=98 second=114 amount=-1 +kerning first=302 second=121 amount=-2 +kerning first=1078 second=1089 amount=-2 +kerning first=1072 second=1088 amount=-1 +kerning first=296 second=240 amount=-2 +kerning first=1108 second=1088 amount=-1 +kerning first=338 second=107 amount=-1 +kerning first=78 second=171 amount=-4 +kerning first=229 second=337 amount=-1 +kerning first=280 second=216 amount=-1 +kerning first=114 second=171 amount=-1 +kerning first=193 second=337 amount=-1 +kerning first=224 second=240 amount=-1 +kerning first=203 second=86 amount=-1 +kerning first=8220 second=113 amount=-3 +kerning first=260 second=240 amount=-1 +kerning first=269 second=261 amount=-2 +kerning first=230 second=107 amount=-2 +kerning first=326 second=382 amount=-1 +kerning first=67 second=216 amount=-3 +kerning first=305 second=261 amount=-1 +kerning first=194 second=107 amount=-2 +kerning first=362 second=382 amount=-3 +kerning first=321 second=287 amount=-3 +kerning first=368 second=240 amount=-2 +kerning first=377 second=261 amount=-1 +kerning first=266 second=107 amount=-1 +kerning first=252 second=109 amount=-1 +kerning first=1027 second=1095 amount=-3 +kerning first=363 second=171 amount=-2 +kerning first=67 second=202 amount=-3 +kerning first=346 second=330 amount=-3 +kerning first=8250 second=274 amount=-5 +kerning first=199 second=209 amount=-3 +kerning first=274 second=330 amount=-2 +kerning first=208 second=202 amount=-2 +kerning first=219 second=171 amount=-5 +kerning first=275 second=100 amount=-1 +kerning first=119 second=240 amount=-3 +kerning first=255 second=171 amount=-4 +kerning first=1024 second=1117 amount=-1 +kerning first=379 second=209 amount=-1 +kerning first=291 second=171 amount=-3 +kerning first=1048 second=1075 amount=-1 +kerning first=327 second=171 amount=-4 +kerning first=83 second=240 amount=-1 +kerning first=1067 second=1099 amount=-1 +kerning first=295 second=252 amount=-1 +kerning first=69 second=206 amount=-2 +kerning first=255 second=227 amount=-3 +kerning first=1073 second=1076 amount=-1 +kerning first=205 second=350 amount=-2 +kerning first=331 second=252 amount=-1 +kerning first=219 second=227 amount=-3 +kerning first=353 second=8221 amount=-2 +kerning first=198 second=207 amount=-2 +kerning first=367 second=252 amount=-1 +kerning first=114 second=227 amount=-1 +kerning first=118 second=252 amount=-1 +kerning first=187 second=252 amount=-1 +kerning first=363 second=227 amount=-1 +kerning first=216 second=44 amount=-3 +kerning first=223 second=252 amount=-1 +kerning first=234 second=305 amount=-2 +kerning first=1051 second=1082 amount=-1 +kerning first=327 second=227 amount=-2 +kerning first=281 second=246 amount=-1 +kerning first=100 second=103 amount=-2 +kerning first=259 second=252 amount=-1 +kerning first=198 second=305 amount=-1 +kerning first=291 second=227 amount=-3 +kerning first=1039 second=1082 amount=-1 +kerning first=336 second=103 amount=-1 +kerning first=378 second=291 amount=-2 +kerning first=83 second=226 amount=-2 +kerning first=249 second=271 amount=-1 +kerning first=313 second=90 amount=-3 +kerning first=379 second=251 amount=-3 +kerning first=119 second=226 amount=-3 +kerning first=68 second=260 amount=-4 +kerning first=210 second=74 amount=-2 +kerning first=378 second=378 amount=-2 +kerning first=201 second=241 amount=-1 +kerning first=264 second=103 amount=-3 +kerning first=224 second=226 amount=-1 +kerning first=198 second=45 amount=-2 +kerning first=8250 second=344 amount=-5 +kerning first=78 second=227 amount=-2 +kerning first=192 second=103 amount=-3 +kerning first=234 second=291 amount=-3 +kerning first=88 second=337 amount=-2 +kerning first=198 second=291 amount=-3 +kerning first=296 second=226 amount=-2 +kerning first=270 second=45 amount=-1 +kerning first=87 second=103 amount=-4 +kerning first=332 second=226 amount=-1 +kerning first=378 second=45 amount=-3 +kerning first=113 second=382 amount=-2 +kerning first=235 second=230 amount=-2 +kerning first=368 second=226 amount=-3 +kerning first=317 second=260 amount=-2 +kerning first=307 second=324 amount=-2 +kerning first=346 second=84 amount=-3 +kerning first=327 second=213 amount=-2 +kerning first=249 second=109 amount=-1 +kerning first=310 second=84 amount=-2 +kerning first=274 second=84 amount=-1 +kerning first=192 second=89 amount=-6 +kerning first=321 second=109 amount=-1 +kerning first=105 second=271 amount=-1 +kerning first=108 second=109 amount=-1 +kerning first=209 second=115 amount=-2 +kerning first=368 second=212 amount=-1 +kerning first=245 second=115 amount=-2 +kerning first=260 second=212 amount=-3 +kerning first=104 second=115 amount=-1 +kerning first=208 second=196 amount=-4 +kerning first=296 second=212 amount=-2 +kerning first=275 second=44 amount=-3 +kerning first=353 second=115 amount=-3 +kerning first=332 second=84 amount=-2 +kerning first=332 second=78 amount=-2 +kerning first=281 second=232 amount=-1 +kerning first=100 second=104 amount=-1 +kerning first=1092 second=1076 amount=-2 +kerning first=347 second=44 amount=-2 +kerning first=323 second=303 amount=-1 +kerning first=281 second=115 amount=-2 +kerning first=78 second=213 amount=-2 +kerning first=311 second=44 amount=-1 +kerning first=317 second=115 amount=-1 +kerning first=8216 second=74 amount=-3 +kerning first=73 second=303 amount=-1 +kerning first=98 second=44 amount=-3 +kerning first=346 second=70 amount=-3 +kerning first=264 second=89 amount=-1 +kerning first=313 second=104 amount=-2 +kerning first=1052 second=1079 amount=-1 +kerning first=277 second=104 amount=-2 +kerning first=192 second=267 amount=-1 +kerning first=203 second=44 amount=-1 +kerning first=274 second=70 amount=-2 +kerning first=370 second=277 amount=-2 +kerning first=243 second=369 amount=-1 +kerning first=83 second=78 amount=-3 +kerning first=378 second=277 amount=-1 +kerning first=209 second=232 amount=-2 +kerning first=219 second=213 amount=-1 +kerning first=74 second=303 amount=-2 +kerning first=8218 second=355 amount=-2 +kerning first=284 second=325 amount=-1 +kerning first=110 second=303 amount=-1 +kerning first=202 second=98 amount=-1 +kerning first=286 second=98 amount=-1 +kerning first=310 second=98 amount=-1 +kerning first=315 second=8249 amount=-1 +kerning first=87 second=75 amount=-1 +kerning first=368 second=237 amount=-2 +kerning first=356 second=325 amount=-1 +kerning first=187 second=280 amount=-5 +kerning first=274 second=98 amount=-1 +kerning first=351 second=8249 amount=-1 +kerning first=107 second=283 amount=-3 +kerning first=251 second=303 amount=-2 +kerning first=277 second=118 amount=-2 +kerning first=289 second=120 amount=-2 +kerning first=374 second=196 amount=-6 +kerning first=336 second=75 amount=-2 +kerning first=287 second=303 amount=-2 +kerning first=1045 second=1025 amount=-1 +kerning first=241 second=118 amount=-3 +kerning first=255 second=328 amount=-2 +kerning first=8250 second=330 amount=-5 +kerning first=219 second=328 amount=-2 +kerning first=331 second=120 amount=-1 +kerning first=198 second=73 amount=-2 +kerning first=264 second=75 amount=-3 +kerning first=97 second=98 amount=-1 +kerning first=313 second=118 amount=-3 +kerning first=266 second=196 amount=-3 +kerning first=100 second=118 amount=-2 +kerning first=1098 second=1093 amount=-2 +kerning first=208 second=287 amount=-1 +kerning first=272 second=80 amount=-2 +kerning first=272 second=204 amount=-2 +kerning first=381 second=291 amount=-3 +kerning first=338 second=196 amount=-2 +kerning first=1098 second=1107 amount=-1 +kerning first=205 second=118 amount=-2 +kerning first=363 second=328 amount=-1 +kerning first=317 second=218 amount=-3 +kerning first=1037 second=1104 amount=-1 +kerning first=382 second=98 amount=-1 +kerning first=291 second=241 amount=-1 +kerning first=204 second=338 amount=-2 +kerning first=346 second=98 amount=-2 +kerning first=255 second=241 amount=-2 +kerning first=356 second=283 amount=-3 +kerning first=363 second=241 amount=-1 +kerning first=212 second=325 amount=-2 +kerning first=1037 second=1090 amount=-1 +kerning first=8218 second=369 amount=-1 +kerning first=280 second=286 amount=-1 +kerning first=82 second=266 amount=-3 +kerning first=1113 second=1087 amount=-1 +kerning first=219 second=241 amount=-2 +kerning first=284 second=311 amount=-1 +kerning first=374 second=210 amount=-3 +kerning first=248 second=311 amount=-1 +kerning first=102 second=8221 amount=3 +kerning first=226 second=314 amount=-1 +kerning first=302 second=210 amount=-2 +kerning first=287 second=331 amount=-1 +kerning first=89 second=304 amount=-1 +kerning first=288 second=171 amount=-3 +kerning first=266 second=210 amount=-3 +kerning first=83 second=353 amount=-1 +kerning first=66 second=8221 amount=-4 +kerning first=1102 second=1118 amount=-1 +kerning first=74 second=345 amount=-1 +kerning first=363 second=255 amount=-3 +kerning first=234 second=235 amount=-1 +kerning first=279 second=8221 amount=-2 +kerning first=194 second=210 amount=-3 +kerning first=251 second=331 amount=-1 +kerning first=327 second=255 amount=-2 +kerning first=258 second=334 amount=-3 +kerning first=315 second=8221 amount=-4 +kerning first=219 second=269 amount=-2 +kerning first=382 second=112 amount=-3 +kerning first=110 second=331 amount=-1 +kerning first=291 second=255 amount=-1 +kerning first=89 second=210 amount=-3 +kerning first=346 second=112 amount=-3 +kerning first=82 second=252 amount=-2 +kerning first=89 second=224 amount=-4 +kerning first=97 second=99 amount=-1 +kerning first=243 second=8221 amount=-2 +kerning first=291 second=269 amount=-2 +kerning first=310 second=112 amount=-1 +kerning first=251 second=345 amount=-1 +kerning first=321 second=81 amount=-1 +kerning first=219 second=255 amount=-1 +kerning first=230 second=224 amount=-2 +kerning first=378 second=235 amount=-1 +kerning first=208 second=378 amount=-2 +kerning first=274 second=112 amount=-2 +kerning first=72 second=67 amount=-2 +kerning first=287 second=345 amount=-1 +kerning first=198 second=221 amount=-1 +kerning first=1077 second=1087 amount=-1 +kerning first=363 second=269 amount=-1 +kerning first=302 second=224 amount=-2 +kerning first=351 second=8221 amount=-2 +kerning first=202 second=112 amount=-2 +kerning first=78 second=255 amount=-2 +kerning first=266 second=224 amount=-2 +kerning first=374 second=224 amount=-4 +kerning first=88 second=281 amount=-2 +kerning first=284 second=256 amount=-3 +kerning first=217 second=352 amount=-3 +kerning first=371 second=279 amount=-3 +kerning first=326 second=326 amount=-1 +kerning first=338 second=224 amount=-1 +kerning first=68 second=302 amount=-2 +kerning first=118 second=380 amount=-3 +kerning first=75 second=101 amount=-2 +kerning first=362 second=326 amount=-2 +kerning first=234 second=347 amount=-2 +kerning first=193 second=281 amount=-1 +kerning first=337 second=250 amount=-1 +kerning first=198 second=347 amount=-1 +kerning first=229 second=281 amount=-1 +kerning first=67 second=259 amount=-2 +kerning first=113 second=326 amount=-2 +kerning first=121 second=328 amount=-2 +kerning first=279 second=371 amount=-2 +kerning first=88 second=250 amount=-3 +kerning first=221 second=231 amount=-3 +kerning first=76 second=250 amount=-2 +kerning first=325 second=352 amount=-2 +kerning first=252 second=101 amount=-1 +kerning first=228 second=307 amount=-1 +kerning first=218 second=326 amount=-2 +kerning first=80 second=231 amount=-1 +kerning first=351 second=371 amount=-1 +kerning first=193 second=250 amount=-3 +kerning first=254 second=326 amount=-1 +kerning first=227 second=333 amount=-1 +kerning first=260 second=366 amount=-3 +kerning first=1073 second=1118 amount=-2 +kerning first=102 second=371 amount=-1 +kerning first=220 second=257 amount=-3 +kerning first=78 second=283 amount=-2 +kerning first=262 second=328 amount=-1 +kerning first=1031 second=1047 amount=-1 +kerning first=228 second=351 amount=-1 +kerning first=226 second=328 amount=-1 +kerning first=1067 second=1047 amount=-1 +kerning first=115 second=257 amount=-1 +kerning first=263 second=333 amount=-1 +kerning first=317 second=302 amount=-2 +kerning first=243 second=371 amount=-1 +kerning first=291 second=283 amount=-2 +kerning first=234 second=378 amount=-2 +kerning first=97 second=369 amount=-1 +kerning first=230 second=8220 amount=-2 +kerning first=255 second=283 amount=-3 +kerning first=198 second=378 amount=-2 +kerning first=1038 second=1092 amount=-4 +kerning first=1048 second=1073 amount=-1 +kerning first=79 second=257 amount=-1 +kerning first=122 second=333 amount=-1 +kerning first=194 second=8220 amount=-5 +kerning first=219 second=283 amount=-2 +kerning first=378 second=347 amount=-2 +kerning first=370 second=328 amount=-2 +kerning first=86 second=333 amount=-3 +kerning first=76 second=352 amount=-1 +kerning first=268 second=217 amount=-2 +kerning first=1102 second=1090 amount=-1 +kerning first=103 second=113 amount=-2 +kerning first=310 second=288 amount=-3 +kerning first=67 second=113 amount=-2 +kerning first=249 second=243 amount=-1 +kerning first=367 second=235 amount=-1 +kerning first=332 second=106 amount=-1 +kerning first=105 second=269 amount=-1 +kerning first=83 second=198 amount=-4 +kerning first=376 second=217 amount=-1 +kerning first=85 second=45 amount=-5 +kerning first=202 second=288 amount=-1 +kerning first=83 second=366 amount=-3 +kerning first=67 second=345 amount=-1 +kerning first=1118 second=1093 amount=-1 +kerning first=103 second=345 amount=-1 +kerning first=113 second=245 amount=-1 +kerning first=274 second=288 amount=-1 +kerning first=72 second=243 amount=-2 +kerning first=1030 second=1090 amount=-1 +kerning first=108 second=243 amount=-1 +kerning first=244 second=345 amount=-1 +kerning first=112 second=120 amount=-3 +kerning first=332 second=198 amount=-4 +kerning first=368 second=198 amount=-4 +kerning first=203 second=262 amount=-1 +kerning first=217 second=120 amount=-2 +kerning first=352 second=345 amount=-2 +kerning first=201 second=79 amount=-1 +kerning first=356 second=255 amount=-3 +kerning first=84 second=368 amount=-1 +kerning first=253 second=120 amount=-1 +kerning first=8250 second=218 amount=-4 +kerning first=196 second=217 amount=-3 +kerning first=248 second=255 amount=-3 +kerning first=1057 second=1094 amount=-1 +kerning first=1047 second=1113 amount=-1 +kerning first=76 second=120 amount=-1 +kerning first=317 second=274 amount=-2 +kerning first=1051 second=1054 amount=-1 +kerning first=228 second=279 amount=-1 +kerning first=79 second=229 amount=-1 +kerning first=74 second=99 amount=-2 +kerning first=356 second=227 amount=-5 +kerning first=192 second=279 amount=-1 +kerning first=200 second=323 amount=-2 +kerning first=115 second=229 amount=-1 +kerning first=1048 second=1101 amount=-1 +kerning first=284 second=227 amount=-1 +kerning first=264 second=279 amount=-2 +kerning first=272 second=323 amount=-2 +kerning first=287 second=99 amount=-2 +kerning first=198 second=104 amount=-1 +kerning first=211 second=278 amount=-2 +kerning first=282 second=44 amount=-1 +kerning first=253 second=324 amount=-2 +kerning first=251 second=99 amount=-1 +kerning first=106 second=273 amount=-1 +kerning first=246 second=44 amount=-3 +kerning first=217 second=324 amount=-2 +kerning first=99 second=233 amount=-1 +kerning first=290 second=354 amount=-3 +kerning first=354 second=44 amount=-5 +kerning first=323 second=99 amount=-2 +kerning first=87 second=279 amount=-3 +kerning first=289 second=324 amount=-1 +kerning first=204 second=233 amount=-2 +kerning first=71 second=227 amount=-1 +kerning first=380 second=267 amount=-1 +kerning first=83 second=106 amount=-1 +kerning first=311 second=234 amount=-3 +kerning first=119 second=106 amount=-2 +kerning first=325 second=382 amount=-1 +kerning first=66 second=111 amount=-1 +kerning first=328 second=229 amount=-1 +kerning first=344 second=267 amount=-3 +kerning first=102 second=111 amount=-1 +kerning first=364 second=229 amount=-3 +kerning first=86 second=226 amount=-5 +kerning first=248 second=227 amount=-1 +kerning first=280 second=317 amount=-2 +kerning first=212 second=227 amount=-1 +kerning first=352 second=317 amount=-3 +kerning first=112 second=117 amount=-1 +kerning first=107 second=227 amount=-2 +kerning first=85 second=110 amount=-2 +kerning first=1049 second=1075 amount=-1 +kerning first=224 second=106 amount=-1 +kerning first=275 second=234 amount=-1 +kerning first=121 second=110 amount=-2 +kerning first=335 second=361 amount=-1 +kerning first=97 second=316 amount=-1 +kerning first=334 second=82 amount=-2 +kerning first=258 second=264 amount=-3 +kerning first=226 second=110 amount=-1 +kerning first=202 second=316 amount=-1 +kerning first=262 second=110 amount=-1 +kerning first=371 second=361 amount=-1 +kerning first=195 second=212 amount=-3 +kerning first=236 second=267 amount=-1 +kerning first=364 second=257 amount=-3 +kerning first=282 second=290 amount=-1 +kerning first=286 second=224 amount=-1 +kerning first=310 second=316 amount=-1 +kerning first=108 second=271 amount=-1 +kerning first=207 second=111 amount=-2 +kerning first=201 second=65 amount=-2 +kerning first=370 second=110 amount=-2 +kerning first=90 second=212 amount=-1 +kerning first=346 second=316 amount=-2 +kerning first=262 second=82 amount=-3 +kerning first=1058 second=1040 amount=-3 +kerning first=382 second=316 amount=-2 +kerning first=279 second=111 amount=-1 +kerning first=328 second=257 amount=-1 +kerning first=105 second=44 amount=-2 +kerning first=313 second=364 amount=-3 +kerning first=69 second=44 amount=-1 +kerning first=379 second=89 amount=-2 +kerning first=86 second=361 amount=-2 +kerning first=210 second=44 amount=-3 +kerning first=381 second=65 amount=-1 +kerning first=234 second=104 amount=-2 +kerning first=290 second=66 amount=-1 +kerning first=76 second=381 amount=-3 +kerning first=99 second=261 amount=-2 +kerning first=122 second=361 amount=-2 +kerning first=68 second=274 amount=-2 +kerning first=263 second=361 amount=-2 +kerning first=199 second=89 amount=-1 +kerning first=378 second=104 amount=-2 +kerning first=227 second=361 amount=-1 +kerning first=250 second=97 amount=-1 +kerning first=290 second=122 amount=-1 +kerning first=323 second=71 amount=-2 +kerning first=283 second=46 amount=-3 +kerning first=379 second=117 amount=-3 +kerning first=197 second=102 amount=-1 +kerning first=286 second=97 amount=-1 +kerning first=254 second=122 amount=-2 +kerning first=367 second=121 amount=-3 +kerning first=210 second=72 amount=-2 +kerning first=216 second=76 amount=-2 +kerning first=233 second=102 amount=-2 +kerning first=218 second=122 amount=-3 +kerning first=118 second=251 amount=-1 +kerning first=331 second=121 amount=-2 +kerning first=339 second=8250 amount=-2 +kerning first=269 second=102 amount=-2 +kerning first=214 second=97 amount=-1 +kerning first=295 second=121 amount=-2 +kerning first=187 second=278 amount=-5 +kerning first=282 second=72 amount=-2 +kerning first=355 second=225 amount=-1 +kerning first=106 second=46 amount=-2 +kerning first=259 second=121 amount=-3 +kerning first=8250 second=98 amount=-1 +kerning first=223 second=121 amount=-3 +kerning first=354 second=72 amount=-1 +kerning first=211 second=46 amount=-3 +kerning first=187 second=121 amount=-3 +kerning first=326 second=122 amount=-1 +kerning first=82 second=98 amount=-3 +kerning first=1050 second=1108 amount=-2 +kerning first=90 second=8250 amount=-1 +kerning first=210 second=325 amount=-2 +kerning first=199 second=377 amount=-2 +kerning first=375 second=240 amount=-3 +kerning first=250 second=245 amount=-1 +kerning first=66 second=200 amount=-4 +kerning first=305 second=105 amount=-1 +kerning first=70 second=46 amount=-3 +kerning first=69 second=332 amount=-1 +kerning first=316 second=243 amount=-1 +kerning first=113 second=122 amount=-2 +kerning first=235 second=117 amount=-2 +kerning first=69 second=72 amount=-2 +kerning first=315 second=200 amount=-2 +kerning first=77 second=122 amount=-1 +kerning first=199 second=117 amount=-2 +kerning first=87 second=363 amount=-2 +kerning first=116 second=287 amount=-2 +kerning first=282 second=332 amount=-1 +kerning first=379 second=377 amount=-1 +kerning first=80 second=287 amount=-3 +kerning first=330 second=264 amount=-2 +kerning first=288 second=76 amount=-1 +kerning first=221 second=287 amount=-4 +kerning first=310 second=366 amount=-2 +kerning first=221 second=339 amount=-3 +kerning first=332 second=310 amount=-2 +kerning first=195 second=240 amount=-1 +kerning first=365 second=259 amount=-1 +kerning first=66 second=255 amount=-3 +kerning first=90 second=240 amount=-1 +kerning first=257 second=287 amount=-2 +kerning first=73 second=214 amount=-2 +kerning first=303 second=240 amount=-3 +kerning first=257 second=259 amount=-1 +kerning first=196 second=242 amount=-1 +kerning first=339 second=240 amount=-1 +kerning first=221 second=259 amount=-5 +kerning first=232 second=100 amount=-1 +kerning first=231 second=240 amount=-1 +kerning first=1060 second=1053 amount=-1 +kerning first=268 second=242 amount=-2 +kerning first=84 second=197 amount=-6 +kerning first=267 second=240 amount=-1 +kerning first=69 second=220 amount=-2 +kerning first=232 second=242 amount=-1 +kerning first=278 second=369 amount=-2 +kerning first=80 second=259 amount=-1 +kerning first=379 second=253 amount=-3 +kerning first=76 second=324 amount=-1 +kerning first=242 second=369 amount=-1 +kerning first=354 second=304 amount=-1 +kerning first=304 second=242 amount=-2 +kerning first=350 second=369 amount=-1 +kerning first=74 second=71 amount=-2 +kerning first=324 second=375 amount=-2 +kerning first=210 second=220 amount=-1 +kerning first=314 second=369 amount=-2 +kerning first=116 second=259 amount=-1 +kerning first=240 second=116 amount=-1 +kerning first=282 second=304 amount=-2 +kerning first=376 second=242 amount=-3 +kerning first=112 second=324 amount=-1 +kerning first=118 second=289 amount=-3 +kerning first=73 second=97 amount=-2 +kerning first=101 second=369 amount=-2 +kerning first=1042 second=1030 amount=-2 +kerning first=109 second=97 amount=-1 +kerning first=65 second=369 amount=-3 +kerning first=210 second=304 amount=-2 +kerning first=200 second=119 amount=-1 +kerning first=206 second=369 amount=-2 +kerning first=86 second=211 amount=-3 +kerning first=354 second=220 amount=-1 +kerning first=317 second=330 amount=-2 +kerning first=236 second=119 amount=-3 +kerning first=1089 second=1100 amount=-1 +kerning first=70 second=74 amount=-4 +kerning first=102 second=107 amount=3 +kerning first=75 second=375 amount=-3 +kerning first=350 second=223 amount=-1 +kerning first=350 second=89 amount=-3 +kerning first=243 second=228 amount=-1 +kerning first=344 second=119 amount=-3 +kerning first=8220 second=230 amount=-3 +kerning first=207 second=228 amount=-2 +kerning first=211 second=74 amount=-2 +kerning first=380 second=119 amount=-2 +kerning first=203 second=203 amount=-2 +kerning first=1086 second=1080 amount=-1 +kerning first=223 second=307 amount=-1 +kerning first=252 second=375 amount=-3 +kerning first=68 second=330 amount=-2 +kerning first=250 second=273 amount=-1 +kerning first=122 second=331 amount=-2 +kerning first=66 second=228 amount=-3 +kerning first=278 second=223 amount=-1 +kerning first=111 second=375 amount=-3 +kerning first=242 second=223 amount=-1 +kerning first=1090 second=1105 amount=-1 +kerning first=249 second=355 amount=-1 +kerning first=195 second=268 amount=-3 +kerning first=304 second=103 amount=-3 +kerning first=84 second=80 amount=-1 +kerning first=101 second=223 amount=-1 +kerning first=352 second=113 amount=-1 +kerning first=108 second=355 amount=-1 +kerning first=290 second=298 amount=-1 +kerning first=331 second=46 amount=-1 +kerning first=1053 second=1079 amount=-1 +kerning first=1053 second=1100 amount=-1 +kerning first=83 second=310 amount=-3 +kerning first=90 second=268 amount=-1 +kerning first=283 second=253 amount=-2 +kerning first=71 second=8217 amount=-1 +kerning first=261 second=108 amount=-1 +kerning first=192 second=363 amount=-3 +kerning first=352 second=85 amount=-3 +kerning first=1046 second=1092 amount=-2 +kerning first=284 second=296 amount=-1 +kerning first=107 second=8217 amount=-2 +kerning first=225 second=108 amount=-1 +kerning first=228 second=363 amount=-1 +kerning first=333 second=108 amount=-2 +kerning first=264 second=363 amount=-2 +kerning first=332 second=303 amount=-1 +kerning first=280 second=85 amount=-2 +kerning first=98 second=318 amount=-2 +kerning first=8220 second=345 amount=-1 +kerning first=79 second=313 amount=-2 +kerning first=315 second=315 amount=-2 +kerning first=1025 second=1063 amount=-2 +kerning first=264 second=335 amount=-2 +kerning first=208 second=85 amount=-1 +kerning first=203 second=318 amount=-1 +kerning first=337 second=105 amount=-1 +kerning first=369 second=108 amount=-2 +kerning first=8250 second=70 amount=-5 +kerning first=66 second=315 amount=-4 +kerning first=1057 second=1038 amount=-1 +kerning first=73 second=245 amount=-2 +kerning first=275 second=318 amount=-3 +kerning first=1061 second=1063 amount=-4 +kerning first=203 second=290 amount=-1 +kerning first=211 second=225 amount=-1 +kerning first=87 second=335 amount=-3 +kerning first=347 second=318 amount=-2 +kerning first=193 second=105 amount=-1 +kerning first=253 second=380 amount=-3 +kerning first=1046 second=1083 amount=-2 +kerning first=365 second=231 amount=-1 +kerning first=105 second=248 amount=-1 +kerning first=229 second=105 amount=-1 +kerning first=289 second=380 amount=-3 +kerning first=283 second=225 amount=-2 +kerning first=192 second=335 amount=-1 +kerning first=347 second=228 amount=-1 +kerning first=257 second=231 amount=-1 +kerning first=325 second=380 amount=-1 +kerning first=1118 second=1083 amount=-3 +kerning first=228 second=335 amount=-1 +kerning first=1065 second=1060 amount=-1 +kerning first=368 second=338 amount=-1 +kerning first=248 second=8217 amount=-2 +kerning first=345 second=45 amount=-1 +kerning first=76 second=380 amount=-3 +kerning first=284 second=8217 amount=-1 +kerning first=70 second=225 amount=-2 +kerning first=296 second=338 amount=-2 +kerning first=112 second=380 amount=-2 +kerning first=106 second=225 amount=-2 +kerning first=260 second=338 amount=-3 +kerning first=351 second=228 amount=-1 +kerning first=120 second=108 amount=-1 +kerning first=290 second=270 amount=-1 +kerning first=217 second=380 amount=-3 +kerning first=1107 second=1103 amount=-2 +kerning first=243 second=367 amount=-1 +kerning first=375 second=98 amount=-1 +kerning first=225 second=225 amount=-1 +kerning first=216 second=280 amount=-2 +kerning first=339 second=98 amount=-2 +kerning first=261 second=225 amount=-1 +kerning first=101 second=251 amount=-2 +kerning first=1024 second=1100 amount=-1 +kerning first=86 second=235 amount=-3 +kerning first=344 second=228 amount=-2 +kerning first=242 second=251 amount=-1 +kerning first=288 second=280 amount=-1 +kerning first=122 second=235 amount=-1 +kerning first=333 second=225 amount=-1 +kerning first=206 second=251 amount=-2 +kerning first=8216 second=233 amount=-3 +kerning first=117 second=303 amount=-2 +kerning first=231 second=98 amount=-2 +kerning first=272 second=228 amount=-1 +kerning first=314 second=251 amount=-2 +kerning first=76 second=206 amount=-2 +kerning first=227 second=235 amount=-1 +kerning first=1105 second=1093 amount=-1 +kerning first=195 second=98 amount=-2 +kerning first=236 second=228 amount=-2 +kerning first=84 second=225 amount=-5 +kerning first=278 second=251 amount=-2 +kerning first=268 second=270 amount=-3 +kerning first=263 second=235 amount=-1 +kerning first=45 second=303 amount=-1 +kerning first=303 second=98 amount=-1 +kerning first=200 second=228 amount=-1 +kerning first=120 second=225 amount=-2 +kerning first=376 second=270 amount=-1 +kerning first=81 second=303 amount=-1 +kerning first=267 second=98 amount=-2 +kerning first=350 second=251 amount=-1 +kerning first=8217 second=255 amount=-1 +kerning first=284 second=370 amount=-1 +kerning first=279 second=273 amount=-1 +kerning first=305 second=46 amount=-2 +kerning first=356 second=370 amount=-1 +kerning first=216 second=218 amount=-1 +kerning first=283 second=102 amount=-2 +kerning first=321 second=289 amount=-3 +kerning first=377 second=46 amount=-1 +kerning first=256 second=355 amount=-1 +kerning first=102 second=273 amount=-1 +kerning first=369 second=225 amount=-1 +kerning first=313 second=325 amount=-2 +kerning first=1045 second=1070 amount=-1 +kerning first=106 second=102 amount=-2 +kerning first=1105 second=1107 amount=-1 +kerning first=65 second=253 amount=-3 +kerning first=233 second=46 amount=-3 +kerning first=115 second=355 amount=-2 +kerning first=275 second=303 amount=-2 +kerning first=303 second=112 amount=-1 +kerning first=221 second=83 amount=-3 +kerning first=364 second=81 amount=-1 +kerning first=365 second=363 amount=-1 +kerning first=267 second=112 amount=-1 +kerning first=65 second=67 amount=-3 +kerning first=232 second=318 amount=-3 +kerning first=231 second=112 amount=-1 +kerning first=268 second=318 amount=-1 +kerning first=295 second=8221 amount=-4 +kerning first=195 second=112 amount=-3 +kerning first=344 second=214 amount=-3 +kerning first=90 second=112 amount=-1 +kerning first=1024 second=1114 amount=-1 +kerning first=75 second=266 amount=-3 +kerning first=234 second=102 amount=-2 +kerning first=330 second=105 amount=-1 +kerning first=200 second=214 amount=-1 +kerning first=351 second=259 amount=-1 +kerning first=371 second=235 amount=-3 +kerning first=366 second=105 amount=-2 +kerning first=84 second=296 amount=-1 +kerning first=258 second=105 amount=-1 +kerning first=8250 second=370 amount=-4 +kerning first=203 second=117 amount=-2 +kerning first=220 second=81 amount=-1 +kerning first=278 second=67 amount=-1 +kerning first=207 second=259 amount=-2 +kerning first=222 second=105 amount=-1 +kerning first=251 second=267 amount=-1 +kerning first=196 second=233 amount=-1 +kerning first=375 second=112 amount=-2 +kerning first=8217 second=241 amount=-2 +kerning first=81 second=105 amount=-1 +kerning first=206 second=67 amount=-2 +kerning first=279 second=259 amount=-2 +kerning first=376 second=304 amount=-1 +kerning first=256 second=81 amount=-3 +kerning first=117 second=105 amount=-2 +kerning first=243 second=259 amount=-1 +kerning first=277 second=249 amount=-2 +kerning first=282 second=346 amount=-2 +kerning first=268 second=100 amount=-2 +kerning first=1059 second=1098 amount=-3 +kerning first=70 second=246 amount=-1 +kerning first=1104 second=1094 amount=-1 +kerning first=313 second=249 amount=-2 +kerning first=304 second=100 amount=-2 +kerning first=1045 second=1050 amount=-1 +kerning first=71 second=350 amount=-2 +kerning first=350 second=327 amount=-3 +kerning first=205 second=249 amount=-1 +kerning first=210 second=346 amount=-1 +kerning first=370 second=275 amount=-2 +kerning first=201 second=230 amount=-1 +kerning first=241 second=249 amount=-1 +kerning first=376 second=100 amount=-3 +kerning first=1055 second=1079 amount=-1 +kerning first=86 second=45 amount=-5 +kerning first=212 second=350 amount=-1 +kerning first=216 second=204 amount=-2 +kerning first=222 second=379 amount=-2 +kerning first=1043 second=1102 amount=-2 +kerning first=354 second=346 amount=-3 +kerning first=196 second=100 amount=-1 +kerning first=102 second=103 amount=-2 +kerning first=1079 second=1102 amount=-1 +kerning first=288 second=204 amount=-1 +kerning first=262 second=275 amount=-2 +kerning first=1070 second=1053 amount=-1 +kerning first=223 second=107 amount=-1 +kerning first=356 second=350 amount=-3 +kerning first=1104 second=1091 amount=-1 +kerning first=100 second=305 amount=-1 +kerning first=187 second=107 amount=-1 +kerning first=241 second=305 amount=-1 +kerning first=284 second=350 amount=-2 +kerning first=205 second=305 amount=-1 +kerning first=259 second=107 amount=-1 +kerning first=313 second=305 amount=-2 +kerning first=376 second=256 amount=-6 +kerning first=325 second=268 amount=-2 +kerning first=277 second=305 amount=-2 +kerning first=205 second=336 amount=-2 +kerning first=216 second=260 amount=-4 +kerning first=118 second=107 amount=-2 +kerning first=264 second=223 amount=-1 +kerning first=381 second=339 amount=-1 +kerning first=84 second=211 amount=-3 +kerning first=345 second=230 amount=-1 +kerning first=1070 second=1039 amount=-1 +kerning first=82 second=107 amount=-3 +kerning first=268 second=256 amount=-3 +kerning first=381 second=230 amount=-1 +kerning first=288 second=260 amount=-3 +kerning first=334 second=289 amount=-1 +kerning first=205 second=263 amount=-2 +kerning first=370 second=289 amount=-4 +kerning first=221 second=210 amount=-3 +kerning first=381 second=79 amount=-1 +kerning first=87 second=223 amount=-3 +kerning first=277 second=263 amount=-1 +kerning first=117 second=365 amount=-1 +kerning first=350 second=313 amount=-3 +kerning first=217 second=268 amount=-1 +kerning first=381 second=353 amount=-2 +kerning first=234 second=8217 amount=-2 +kerning first=221 second=192 amount=-6 +kerning first=45 second=365 amount=-1 +kerning first=336 second=237 amount=-1 +kerning first=75 second=218 amount=-2 +kerning first=278 second=313 amount=-2 +kerning first=270 second=8217 amount=-2 +kerning first=381 second=244 amount=-1 +kerning first=100 second=263 amount=-1 +kerning first=76 second=268 amount=-1 +kerning first=264 second=237 amount=-1 +kerning first=80 second=192 amount=-4 +kerning first=228 second=237 amount=-1 +kerning first=121 second=275 amount=-3 +kerning first=82 second=121 amount=-3 +kerning first=197 second=334 amount=-3 +kerning first=192 second=237 amount=-1 +kerning first=85 second=289 amount=-4 +kerning first=379 second=249 amount=-3 +kerning first=85 second=275 amount=-2 +kerning first=345 second=353 amount=-1 +kerning first=121 second=289 amount=-3 +kerning first=377 second=334 amount=-1 +kerning first=366 second=365 amount=-1 +kerning first=69 second=346 amount=-2 +kerning first=80 second=315 amount=-1 +kerning first=226 second=289 amount=-2 +kerning first=1050 second=1079 amount=-1 +kerning first=330 second=365 amount=-2 +kerning first=221 second=315 amount=-1 +kerning first=262 second=289 amount=-3 +kerning first=1087 second=1104 amount=-1 +kerning first=201 second=353 amount=-1 +kerning first=298 second=289 amount=-3 +kerning first=258 second=365 amount=-3 +kerning first=278 second=327 amount=-2 +kerning first=206 second=257 amount=-2 +kerning first=97 second=232 amount=-1 +kerning first=242 second=257 amount=-1 +kerning first=1069 second=1051 amount=-3 +kerning first=257 second=371 amount=-1 +kerning first=101 second=257 amount=-2 +kerning first=371 second=277 amount=-3 +kerning first=117 second=99 amount=-1 +kerning first=380 second=8249 amount=-3 +kerning first=364 second=347 amount=-2 +kerning first=187 second=381 amount=-4 +kerning first=263 second=277 amount=-1 +kerning first=227 second=277 amount=-1 +kerning first=90 second=302 amount=-1 +kerning first=324 second=251 amount=-1 +kerning first=116 second=371 amount=-1 +kerning first=344 second=8249 amount=-4 +kerning first=339 second=307 amount=-2 +kerning first=75 second=336 amount=-3 +kerning first=344 second=351 amount=-2 +kerning first=367 second=367 amount=-1 +kerning first=1044 second=1104 amount=-1 +kerning first=364 second=267 amount=-2 +kerning first=315 second=69 amount=-2 +kerning first=279 second=267 amount=-1 +kerning first=86 second=277 amount=-3 +kerning first=376 second=114 amount=-1 +kerning first=295 second=367 amount=-1 +kerning first=380 second=351 amount=-2 +kerning first=331 second=367 amount=-1 +kerning first=207 second=267 amount=-2 +kerning first=200 second=351 amount=-1 +kerning first=1058 second=1096 amount=-2 +kerning first=350 second=257 amount=-2 +kerning first=223 second=367 amount=-1 +kerning first=106 second=113 amount=-1 +kerning first=259 second=367 amount=-1 +kerning first=8217 second=378 amount=-1 +kerning first=217 second=212 amount=-1 +kerning first=1092 second=1081 amount=-1 +kerning first=8217 second=249 amount=-1 +kerning first=278 second=257 amount=-1 +kerning first=232 second=114 amount=-1 +kerning first=118 second=367 amount=-1 +kerning first=236 second=351 amount=-2 +kerning first=314 second=257 amount=-2 +kerning first=268 second=114 amount=-1 +kerning first=1096 second=1092 amount=-1 +kerning first=333 second=382 amount=-2 +kerning first=227 second=291 amount=-2 +kerning first=267 second=316 amount=-3 +kerning first=74 second=216 amount=-2 +kerning first=103 second=109 amount=-1 +kerning first=369 second=382 amount=-2 +kerning first=303 second=316 amount=-2 +kerning first=82 second=367 amount=-2 +kerning first=101 second=271 amount=-1 +kerning first=122 second=291 amount=-2 +kerning first=339 second=316 amount=-3 +kerning first=86 second=291 amount=-4 +kerning first=375 second=316 amount=-2 +kerning first=1053 second=1047 amount=-1 +kerning first=356 second=367 amount=-2 +kerning first=8217 second=263 amount=-3 +kerning first=66 second=267 amount=-1 +kerning first=225 second=382 amount=-1 +kerning first=102 second=267 amount=-1 +kerning first=261 second=382 amount=-1 +kerning first=236 second=337 amount=-1 +kerning first=112 second=226 amount=-1 +kerning first=204 second=261 amount=-2 +kerning first=364 second=197 amount=-4 +kerning first=197 second=314 amount=-2 +kerning first=1097 second=1086 amount=-1 +kerning first=240 second=261 amount=-1 +kerning first=1080 second=1104 amount=-1 +kerning first=256 second=347 amount=-2 +kerning first=102 second=281 amount=-1 +kerning first=85 second=269 amount=-2 +kerning first=109 second=8221 amount=-4 +kerning first=262 second=171 amount=-4 +kerning first=269 second=314 amount=-3 +kerning first=220 second=347 amount=-2 +kerning first=231 second=228 amount=-2 +kerning first=115 second=361 amount=-1 +kerning first=233 second=314 amount=-3 +kerning first=207 second=281 amount=-2 +kerning first=380 second=337 amount=-1 +kerning first=1058 second=1082 amount=-2 +kerning first=334 second=171 amount=-1 +kerning first=256 second=361 amount=-3 +kerning first=376 second=326 amount=-3 +kerning first=1079 second=1116 amount=-1 +kerning first=115 second=347 amount=-3 +kerning first=121 second=269 amount=-3 +kerning first=370 second=171 amount=-5 +kerning first=220 second=361 amount=-1 +kerning first=305 second=314 amount=-1 +kerning first=1043 second=1116 amount=-2 +kerning first=262 second=269 amount=-2 +kerning first=286 second=8221 amount=-1 +kerning first=85 second=171 amount=-5 +kerning first=328 second=361 amount=-1 +kerning first=226 second=269 amount=-1 +kerning first=365 second=371 amount=-1 +kerning first=121 second=171 amount=-4 +kerning first=195 second=316 amount=-2 +kerning first=323 second=216 amount=-2 +kerning first=302 second=67 amount=-2 +kerning first=241 second=97 amount=-1 +kerning first=66 second=281 amount=-1 +kerning first=298 second=269 amount=-2 +kerning first=231 second=316 amount=-3 +kerning first=250 second=8221 amount=-3 +kerning first=226 second=171 amount=-2 +kerning first=364 second=361 amount=-1 +kerning first=8218 second=251 amount=-1 +kerning first=268 second=326 amount=-1 +kerning first=313 second=45 amount=-1 +kerning first=116 second=103 amount=-2 +kerning first=370 second=269 amount=-2 +kerning first=201 second=224 amount=-1 +kerning first=80 second=103 amount=-3 +kerning first=67 second=331 amount=-1 +kerning first=230 second=252 amount=-2 +kerning first=76 second=78 amount=-2 +kerning first=266 second=252 amount=-2 +kerning first=317 second=70 amount=-2 +kerning first=321 second=201 amount=-2 +kerning first=1057 second=1051 amount=-1 +kerning first=262 second=227 amount=-2 +kerning first=344 second=226 amount=-2 +kerning first=345 second=224 amount=-1 +kerning first=233 second=100 amount=-1 +kerning first=275 second=46 amount=-3 +kerning first=82 second=101 amount=-3 +kerning first=213 second=201 amount=-2 +kerning first=89 second=252 amount=-1 +kerning first=121 second=227 amount=-3 +kerning first=382 second=246 amount=-1 +kerning first=217 second=226 amount=-3 +kerning first=346 second=246 amount=-1 +kerning first=253 second=226 amount=-3 +kerning first=380 second=378 amount=-2 +kerning first=310 second=246 amount=-2 +kerning first=313 second=207 amount=-2 +kerning first=222 second=317 amount=-2 +kerning first=259 second=101 amount=-1 +kerning first=84 second=382 amount=-3 +kerning first=289 second=226 amount=-3 +kerning first=365 second=103 amount=-3 +kerning first=8216 second=248 amount=-3 +kerning first=212 second=90 amount=-2 +kerning first=120 second=382 amount=-2 +kerning first=325 second=226 amount=-2 +kerning first=284 second=356 amount=-3 +kerning first=100 second=311 amount=-1 +kerning first=211 second=362 amount=-1 +kerning first=371 second=291 amount=-1 +kerning first=302 second=252 amount=-1 +kerning first=284 second=90 amount=-2 +kerning first=335 second=291 amount=-2 +kerning first=338 second=252 amount=-2 +kerning first=212 second=356 amount=-2 +kerning first=257 second=103 amount=-2 +kerning first=45 second=317 amount=-5 +kerning first=241 second=45 amount=-3 +kerning first=221 second=103 amount=-4 +kerning first=289 second=45 amount=-3 +kerning first=81 second=317 amount=-2 +kerning first=85 second=224 amount=-3 +kerning first=263 second=291 amount=-3 +kerning first=1056 second=1067 amount=-1 +kerning first=298 second=213 amount=-2 +kerning first=363 second=283 amount=-1 +kerning first=8222 second=86 amount=-6 +kerning first=1105 second=1090 amount=-1 +kerning first=262 second=213 amount=-3 +kerning first=327 second=283 amount=-2 +kerning first=66 second=259 amount=-3 +kerning first=68 second=84 amount=-2 +kerning first=284 second=104 amount=-1 +kerning first=370 second=213 amount=-1 +kerning first=278 second=109 amount=-1 +kerning first=80 second=89 amount=-1 +kerning first=75 second=115 amount=-1 +kerning first=74 second=210 amount=-2 +kerning first=71 second=370 amount=-1 +kerning first=242 second=109 amount=-1 +kerning first=317 second=84 amount=-3 +kerning first=214 second=82 amount=-2 +kerning first=212 second=370 amount=-1 +kerning first=350 second=109 amount=-1 +kerning first=8222 second=220 amount=-3 +kerning first=314 second=109 amount=-1 +kerning first=101 second=109 amount=-2 +kerning first=71 second=104 amount=-1 +kerning first=330 second=303 amount=-1 +kerning first=68 second=70 amount=-2 +kerning first=272 second=8249 amount=-1 +kerning first=370 second=227 amount=-3 +kerning first=111 second=115 amount=-2 +kerning first=313 second=193 amount=-2 +kerning first=222 second=303 amount=-1 +kerning first=334 second=227 amount=-1 +kerning first=82 second=220 amount=-3 +kerning first=258 second=303 amount=-1 +kerning first=1054 second=1113 amount=-2 +kerning first=200 second=8249 amount=-2 +kerning first=298 second=227 amount=-2 +kerning first=203 second=334 amount=-1 +kerning first=310 second=232 amount=-2 +kerning first=232 second=44 amount=-3 +kerning first=248 second=104 amount=-1 +kerning first=196 second=368 amount=-3 +kerning first=1048 second=1096 amount=-1 +kerning first=72 second=339 amount=-2 +kerning first=382 second=232 amount=-1 +kerning first=304 second=44 amount=-1 +kerning first=366 second=303 amount=-2 +kerning first=346 second=232 amount=-1 +kerning first=85 second=213 amount=-1 +kerning first=268 second=44 amount=-1 +kerning first=367 second=115 amount=-2 +kerning first=66 second=323 amount=-4 +kerning first=1075 second=1113 amount=-3 +kerning first=282 second=78 amount=-2 +kerning first=1052 second=1081 amount=-1 +kerning first=295 second=115 amount=-1 +kerning first=368 second=120 amount=-2 +kerning first=102 second=318 amount=3 +kerning first=331 second=115 amount=-1 +kerning first=268 second=368 amount=-2 +kerning first=210 second=78 amount=-2 +kerning first=378 second=118 amount=-2 +kerning first=82 second=375 amount=-3 +kerning first=69 second=78 amount=-2 +kerning first=268 second=203 amount=-3 +kerning first=199 second=75 amount=-3 +kerning first=311 second=248 amount=-3 +kerning first=288 second=70 amount=-1 +kerning first=1057 second=1080 amount=-1 +kerning first=376 second=368 amount=-1 +kerning first=224 second=120 amount=-1 +kerning first=315 second=323 amount=-2 +kerning first=350 second=201 amount=-3 +kerning first=234 second=118 amount=-2 +kerning first=323 second=113 amount=-2 +kerning first=99 second=253 amount=-2 +kerning first=379 second=75 amount=-1 +kerning first=201 second=85 amount=-2 +kerning first=290 second=80 amount=-1 +kerning first=198 second=118 amount=-1 +kerning first=287 second=113 amount=-2 +kerning first=278 second=201 amount=-2 +kerning first=236 second=106 amount=-2 +kerning first=251 second=113 amount=-1 +kerning first=204 second=253 amount=-2 +kerning first=86 second=73 amount=-1 +kerning first=375 second=246 amount=-3 +kerning first=290 second=278 amount=-1 +kerning first=240 second=253 amount=-3 +kerning first=84 second=171 amount=-5 +kerning first=106 second=233 amount=-1 +kerning first=339 second=246 amount=-1 +kerning first=8218 second=307 amount=-1 +kerning first=303 second=246 amount=-3 +kerning first=334 second=68 amount=-2 +kerning first=1071 second=1101 amount=-1 +kerning first=267 second=246 amount=-1 +kerning first=197 second=233 amount=-1 +kerning first=231 second=246 amount=-1 +kerning first=262 second=68 amount=-3 +kerning first=283 second=233 amount=-1 +kerning first=69 second=290 amount=-1 +kerning first=1048 second=1087 amount=-1 +kerning first=307 second=335 amount=-1 +kerning first=248 second=241 amount=-1 +kerning first=1087 second=1108 amount=-1 +kerning first=298 second=283 amount=-2 +kerning first=356 second=241 amount=-3 +kerning first=196 second=108 amount=-2 +kerning first=217 second=338 amount=-1 +kerning first=262 second=283 amount=-2 +kerning first=379 second=335 amount=-1 +kerning first=377 second=328 amount=-1 +kerning first=226 second=283 amount=-1 +kerning first=258 second=275 amount=-1 +kerning first=296 second=380 amount=-1 +kerning first=268 second=108 amount=-1 +kerning first=71 second=193 amount=-3 +kerning first=332 second=380 amount=-2 +kerning first=232 second=108 amount=-3 +kerning first=76 second=338 amount=-1 +kerning first=8216 second=362 amount=-1 +kerning first=381 second=286 amount=-1 +kerning first=199 second=335 amount=-2 +kerning first=332 second=120 amount=-1 +kerning first=233 second=110 amount=-2 +kerning first=235 second=335 amount=-1 +kerning first=67 second=65 amount=-3 +kerning first=370 second=283 amount=-2 +kerning first=269 second=110 amount=-2 +kerning first=192 second=231 amount=-1 +kerning first=363 second=105 amount=-2 +kerning first=205 second=287 amount=-3 +kerning first=1040 second=1118 amount=-3 +kerning first=201 second=286 amount=-1 +kerning first=352 second=331 amount=-1 +kerning first=275 second=248 amount=-1 +kerning first=228 second=231 amount=-1 +kerning first=82 second=115 amount=-2 +kerning first=284 second=193 amount=-3 +kerning first=87 second=231 amount=-3 +kerning first=324 second=255 amount=-2 +kerning first=1050 second=1038 amount=-3 +kerning first=208 second=65 amount=-4 +kerning first=1063 second=1095 amount=-1 +kerning first=212 second=193 amount=-4 +kerning first=316 second=331 amount=-1 +kerning first=223 second=115 amount=-2 +kerning first=259 second=115 amount=-1 +kerning first=8218 second=305 amount=-1 +kerning first=244 second=331 amount=-1 +kerning first=264 second=231 amount=-2 +kerning first=118 second=115 amount=-3 +kerning first=352 second=65 amount=-4 +kerning first=1075 second=1083 amount=-3 +kerning first=103 second=331 amount=-1 +kerning first=83 second=380 amount=-2 +kerning first=187 second=115 amount=-1 +kerning first=325 second=338 amount=-2 +kerning first=354 second=78 amount=-1 +kerning first=356 second=193 amount=-6 +kerning first=116 second=307 amount=-1 +kerning first=120 second=326 amount=-1 +kerning first=122 second=257 amount=-1 +kerning first=274 second=302 amount=-2 +kerning first=72 second=257 amount=-2 +kerning first=371 second=347 amount=-2 +kerning first=75 second=210 amount=-3 +kerning first=1055 second=1073 amount=-1 +kerning first=366 second=250 amount=-1 +kerning first=277 second=255 amount=-2 +kerning first=225 second=326 amount=-1 +kerning first=335 second=347 amount=-2 +kerning first=1102 second=1076 amount=-2 +kerning first=1091 second=1073 amount=-1 +kerning first=374 second=8249 amount=-5 +kerning first=202 second=302 amount=-2 +kerning first=241 second=255 amount=-2 +kerning first=257 second=307 amount=-1 +kerning first=261 second=326 amount=-1 +kerning first=354 second=352 amount=-3 +kerning first=205 second=255 amount=-2 +kerning first=263 second=347 amount=-2 +kerning first=1074 second=1078 amount=-1 +kerning first=258 second=250 amount=-3 +kerning first=227 second=347 amount=-1 +kerning first=100 second=255 amount=-2 +kerning first=196 second=262 amount=-3 +kerning first=365 second=307 amount=-2 +kerning first=250 second=371 amount=-1 +kerning first=244 second=223 amount=-1 +kerning first=346 second=8250 amount=-1 +kerning first=330 second=250 amount=-2 +kerning first=84 second=326 amount=-3 +kerning first=122 second=347 amount=-2 +kerning first=251 second=109 amount=-1 +kerning first=1075 second=1077 amount=-1 +kerning first=241 second=378 amount=-1 +kerning first=45 second=250 amount=-1 +kerning first=205 second=378 amount=-1 +kerning first=69 second=352 amount=-2 +kerning first=1104 second=1097 amount=-1 +kerning first=313 second=378 amount=-3 +kerning first=1039 second=1077 amount=-1 +kerning first=117 second=250 amount=-1 +kerning first=277 second=378 amount=-2 +kerning first=278 second=377 amount=-1 +kerning first=76 second=332 amount=-1 +kerning first=213 second=257 amount=-1 +kerning first=1103 second=1092 amount=-1 +kerning first=249 second=257 amount=-1 +kerning first=305 second=328 amount=-1 +kerning first=367 second=8220 amount=-3 +kerning first=121 second=283 amount=-3 +kerning first=1024 second=1047 amount=-1 +kerning first=108 second=257 amount=-2 +kerning first=269 second=328 amount=-2 +kerning first=331 second=8220 amount=-4 +kerning first=85 second=283 amount=-2 +kerning first=1048 second=1094 amount=-1 +kerning first=346 second=302 amount=-3 +kerning first=1060 second=1047 amount=-2 +kerning first=210 second=352 amount=-1 +kerning first=233 second=328 amount=-2 +kerning first=295 second=8220 amount=-4 +kerning first=100 second=378 amount=-1 +kerning first=195 second=366 amount=-3 +kerning first=378 second=333 amount=-1 +kerning first=219 second=339 amount=-2 +kerning first=259 second=8220 amount=-3 +kerning first=267 second=106 amount=-2 +kerning first=217 second=332 amount=-1 +kerning first=1070 second=1045 amount=-1 +kerning first=223 second=8220 amount=-2 +kerning first=209 second=288 amount=-2 +kerning first=303 second=106 amount=3 +kerning first=350 second=377 amount=-1 +kerning first=325 second=332 amount=-2 +kerning first=1031 second=1092 amount=-1 +kerning first=317 second=288 amount=-1 +kerning first=226 second=98 amount=-1 +kerning first=87 second=287 amount=-4 +kerning first=1067 second=1092 amount=-1 +kerning first=231 second=106 amount=-2 +kerning first=228 second=287 amount=-2 +kerning first=234 second=333 amount=-1 +kerning first=82 second=8220 amount=-5 +kerning first=87 second=45 amount=-5 +kerning first=192 second=287 amount=-3 +kerning first=46 second=8220 amount=-5 +kerning first=256 second=87 amount=-6 +kerning first=74 second=113 amount=-2 +kerning first=1072 second=1116 amount=-1 +kerning first=339 second=106 amount=-2 +kerning first=264 second=287 amount=-3 +kerning first=375 second=106 amount=-2 +kerning first=86 second=347 amount=-3 +kerning first=84 second=217 amount=-1 +kerning first=304 second=262 amount=-2 +kerning first=336 second=287 amount=-1 +kerning first=258 second=99 amount=-1 +kerning first=364 second=243 amount=-2 +kerning first=79 second=87 amount=-2 +kerning first=87 second=100 amount=-3 +kerning first=275 second=242 amount=-1 +kerning first=344 second=281 amount=-3 +kerning first=376 second=262 amount=-3 +kerning first=330 second=99 amount=-2 +kerning first=380 second=281 amount=-1 +kerning first=83 second=120 amount=-3 +kerning first=192 second=263 amount=-1 +kerning first=1049 second=1098 amount=-1 +kerning first=333 second=326 amount=-1 +kerning first=220 second=243 amount=-2 +kerning first=8217 second=199 amount=-2 +kerning first=369 second=326 amount=-1 +kerning first=256 second=243 amount=-1 +kerning first=236 second=281 amount=-1 +kerning first=268 second=197 amount=-3 +kerning first=90 second=198 amount=-1 +kerning first=66 second=119 amount=-3 +kerning first=211 second=354 amount=-2 +kerning first=8220 second=331 amount=-1 +kerning first=224 second=324 amount=-1 +kerning first=268 second=374 amount=-1 +kerning first=376 second=197 amount=-6 +kerning first=71 second=249 amount=-1 +kerning first=207 second=119 amount=-2 +kerning first=85 second=334 amount=-1 +kerning first=107 second=249 amount=-1 +kerning first=195 second=254 amount=-2 +kerning first=243 second=119 amount=-2 +kerning first=196 second=374 amount=-6 +kerning first=83 second=324 amount=-1 +kerning first=77 second=74 amount=-1 +kerning first=1044 second=1054 amount=-1 +kerning first=279 second=119 amount=-2 +kerning first=249 second=369 amount=-1 +kerning first=288 second=274 amount=-1 +kerning first=315 second=119 amount=-3 +kerning first=298 second=334 amount=-2 +kerning first=78 second=289 amount=-3 +kerning first=317 second=344 amount=-2 +kerning first=351 second=119 amount=-3 +kerning first=321 second=369 amount=-2 +kerning first=119 second=324 amount=-2 +kerning first=262 second=334 amount=-3 +kerning first=218 second=74 amount=-3 +kerning first=1048 second=1079 amount=-1 +kerning first=379 second=279 amount=-1 +kerning first=68 second=344 amount=-2 +kerning first=335 second=229 amount=-1 +kerning first=333 second=46 amount=-3 +kerning first=227 second=229 amount=-1 +kerning first=8216 second=375 amount=-1 +kerning first=67 second=339 amount=-2 +kerning first=1101 second=1074 amount=-1 +kerning first=263 second=229 amount=-2 +kerning first=103 second=339 amount=-2 +kerning first=218 second=284 amount=-1 +kerning first=235 second=279 amount=-1 +kerning first=316 second=339 amount=-1 +kerning first=77 second=284 amount=-2 +kerning first=199 second=279 amount=-2 +kerning first=368 second=324 amount=-2 +kerning first=287 second=351 amount=-3 +kerning first=352 second=339 amount=-1 +kerning first=1051 second=1079 amount=-1 +kerning first=105 second=234 amount=-1 +kerning first=307 second=279 amount=-1 +kerning first=371 second=229 amount=-2 +kerning first=1057 second=1024 amount=-1 +kerning first=8222 second=226 amount=-2 +kerning first=262 second=219 amount=-2 +kerning first=302 second=244 amount=-2 +kerning first=1030 second=1084 amount=-1 +kerning first=241 second=8217 amount=-4 +kerning first=69 second=86 amount=-1 +kerning first=277 second=8217 amount=-2 +kerning first=205 second=199 amount=-2 +kerning first=374 second=244 amount=-3 +kerning first=250 second=111 amount=-1 +kerning first=313 second=8217 amount=-4 +kerning first=350 second=209 amount=-3 +kerning first=323 second=264 amount=-2 +kerning first=354 second=234 amount=-3 +kerning first=367 second=107 amount=-2 +kerning first=282 second=86 amount=-1 +kerning first=286 second=220 amount=-1 +kerning first=84 second=66 amount=-1 +kerning first=1085 second=1089 amount=-1 +kerning first=1045 second=1064 amount=-1 +kerning first=313 second=199 amount=-1 +kerning first=338 second=254 amount=-1 +kerning first=100 second=8217 amount=-2 +kerning first=1049 second=1089 amount=-1 +kerning first=210 second=86 amount=-2 +kerning first=73 second=111 amount=-2 +kerning first=370 second=334 amount=-1 +kerning first=252 second=121 amount=-3 +kerning first=272 second=82 amount=-2 +kerning first=68 second=76 amount=-2 +kerning first=212 second=364 amount=-1 +kerning first=375 second=254 amount=-1 +kerning first=219 second=289 amount=-4 +kerning first=206 second=289 amount=-3 +kerning first=200 second=241 amount=-1 +kerning first=255 second=289 amount=-3 +kerning first=1024 second=1041 amount=-1 +kerning first=89 second=244 amount=-3 +kerning first=111 second=121 amount=-3 +kerning first=1105 second=1099 amount=-1 +kerning first=71 second=364 amount=-1 +kerning first=377 second=205 amount=-1 +kerning first=75 second=121 amount=-3 +kerning first=356 second=364 amount=-1 +kerning first=231 second=254 amount=-2 +kerning first=278 second=209 amount=-2 +kerning first=194 second=244 amount=-1 +kerning first=363 second=289 amount=-3 +kerning first=267 second=254 amount=-2 +kerning first=230 second=244 amount=-1 +kerning first=284 second=364 amount=-1 +kerning first=303 second=254 amount=-1 +kerning first=261 second=8249 amount=-2 +kerning first=266 second=244 amount=-2 +kerning first=339 second=254 amount=-2 +kerning first=202 second=296 amount=-2 +kerning first=278 second=117 amount=-2 +kerning first=76 second=72 amount=-2 +kerning first=116 second=97 amount=-1 +kerning first=104 second=109 amount=-1 +kerning first=242 second=117 amount=-1 +kerning first=286 second=200 amount=-1 +kerning first=72 second=251 amount=-2 +kerning first=274 second=296 amount=-2 +kerning first=350 second=117 amount=-1 +kerning first=317 second=76 amount=-2 +kerning first=99 second=102 amount=-2 +kerning first=314 second=117 amount=-2 +kerning first=80 second=97 amount=-1 +kerning first=365 second=245 amount=-1 +kerning first=346 second=296 amount=-3 +kerning first=315 second=85 amount=-3 +kerning first=333 second=122 amount=-2 +kerning first=218 second=225 amount=-3 +kerning first=108 second=251 amount=-2 +kerning first=313 second=370 amount=-3 +kerning first=280 second=71 amount=-1 +kerning first=254 second=225 amount=-1 +kerning first=249 second=251 amount=-1 +kerning first=324 second=121 amount=-2 +kerning first=221 second=97 amount=-5 +kerning first=261 second=122 amount=-1 +kerning first=1096 second=1086 amount=-1 +kerning first=290 second=225 amount=-1 +kerning first=257 second=97 amount=-1 +kerning first=225 second=122 amount=-1 +kerning first=326 second=225 amount=-1 +kerning first=321 second=251 amount=-2 +kerning first=310 second=240 amount=-2 +kerning first=99 second=46 amount=-3 +kerning first=83 second=206 amount=-3 +kerning first=365 second=97 amount=-1 +kerning first=80 second=245 amount=-1 +kerning first=116 second=363 amount=-1 +kerning first=88 second=264 amount=-3 +kerning first=1054 second=1063 amount=-2 +kerning first=332 second=206 amount=-2 +kerning first=249 second=103 amount=-3 +kerning first=101 second=117 amount=-2 +kerning first=221 second=363 amount=-2 +kerning first=65 second=117 amount=-3 +kerning first=240 second=102 amount=-1 +kerning first=257 second=363 amount=-1 +kerning first=382 second=240 amount=-1 +kerning first=334 second=219 amount=-1 +kerning first=206 second=117 amount=-2 +kerning first=257 second=245 amount=-1 +kerning first=354 second=290 amount=-3 +kerning first=8250 second=84 amount=-4 +kerning first=221 second=245 amount=-3 +kerning first=87 second=83 amount=-3 +kerning first=315 second=214 amount=-1 +kerning first=98 second=223 amount=-1 +kerning first=288 second=330 amount=-1 +kerning first=192 second=83 amount=-3 +kerning first=222 second=194 amount=-4 +kerning first=90 second=310 amount=-1 +kerning first=207 second=214 amount=-2 +kerning first=81 second=194 amount=-4 +kerning first=211 second=298 amount=-2 +kerning first=1053 second=1114 amount=-1 +kerning first=8220 second=65 amount=-8 +kerning first=336 second=83 amount=-1 +kerning first=97 second=240 amount=-1 +kerning first=1089 second=1114 amount=-1 +kerning first=1038 second=1082 amount=-4 +kerning first=362 second=284 amount=-1 +kerning first=289 second=230 amount=-3 +kerning first=108 second=369 amount=-2 +kerning first=250 second=259 amount=-1 +kerning first=259 second=375 amount=-3 +kerning first=1058 second=1088 amount=-2 +kerning first=72 second=369 amount=-2 +kerning first=214 second=259 amount=-1 +kerning first=223 second=375 amount=-3 +kerning first=272 second=77 amount=-2 +kerning first=363 second=267 amount=-1 +kerning first=76 second=220 amount=-3 +kerning first=1086 second=1094 amount=-1 +kerning first=187 second=375 amount=-3 +kerning first=377 second=344 amount=-1 +kerning first=286 second=259 amount=-1 +kerning first=377 second=116 amount=-1 +kerning first=66 second=214 amount=-3 +kerning first=200 second=77 amount=-2 +kerning first=197 second=116 amount=-1 +kerning first=80 second=313 amount=-1 +kerning first=367 second=375 amount=-3 +kerning first=203 second=304 amount=-2 +kerning first=269 second=116 amount=-1 +kerning first=331 second=375 amount=-2 +kerning first=67 second=71 amount=-3 +kerning first=109 second=259 amount=-1 +kerning first=233 second=116 amount=-1 +kerning first=295 second=375 amount=-2 +kerning first=1025 second=1049 amount=-1 +kerning first=366 second=194 amount=-4 +kerning first=332 second=220 amount=-1 +kerning first=1036 second=1108 amount=-2 +kerning first=327 second=233 amount=-2 +kerning first=332 second=330 amount=-2 +kerning first=1057 second=1045 amount=-1 +kerning first=291 second=233 amount=-2 +kerning first=356 second=291 amount=-4 +kerning first=88 second=214 amount=-3 +kerning first=260 second=220 amount=-3 +kerning first=88 second=71 amount=-3 +kerning first=203 second=298 amount=-2 +kerning first=363 second=233 amount=-1 +kerning first=280 second=86 amount=-1 +kerning first=74 second=337 amount=-2 +kerning first=1043 second=1082 amount=-2 +kerning first=248 second=291 amount=-2 +kerning first=105 second=240 amount=-1 +kerning first=78 second=350 amount=-2 +kerning first=315 second=194 amount=-2 +kerning first=100 second=110 amount=-1 +kerning first=212 second=291 amount=-1 +kerning first=1057 second=1030 amount=-1 +kerning first=70 second=248 amount=-1 +kerning first=87 second=97 amount=-5 +kerning first=107 second=291 amount=-2 +kerning first=251 second=337 amount=-1 +kerning first=219 second=350 amount=-3 +kerning first=377 second=213 amount=-1 +kerning first=84 second=304 amount=-1 +kerning first=198 second=334 amount=-1 +kerning first=241 second=110 amount=-1 +kerning first=71 second=291 amount=-3 +kerning first=274 second=324 amount=-1 +kerning first=336 second=97 amount=-1 +kerning first=277 second=110 amount=-2 +kerning first=260 second=84 amount=-6 +kerning first=382 second=324 amount=-2 +kerning first=228 second=97 amount=-1 +kerning first=305 second=109 amount=-1 +kerning first=313 second=110 amount=-1 +kerning first=234 second=311 amount=-2 +kerning first=346 second=324 amount=-1 +kerning first=264 second=97 amount=-2 +kerning first=198 second=311 amount=-1 +kerning first=120 second=318 amount=-1 +kerning first=193 second=71 amount=-3 +kerning first=97 second=324 amount=-1 +kerning first=323 second=337 amount=-2 +kerning first=225 second=318 amount=-1 +kerning first=1067 second=1114 amount=-1 +kerning first=287 second=337 amount=-2 +kerning first=327 second=350 amount=-2 +kerning first=83 second=330 amount=-3 +kerning first=202 second=324 amount=-1 +kerning first=225 second=44 amount=-1 +kerning first=224 second=234 amount=-1 +kerning first=255 second=104 amount=-2 +kerning first=1113 second=1081 amount=-1 +kerning first=260 second=234 amount=-1 +kerning first=346 second=78 amount=-3 +kerning first=121 second=378 amount=-3 +kerning first=296 second=234 amount=-2 +kerning first=280 second=381 amount=-1 +kerning first=261 second=44 amount=-1 +kerning first=83 second=70 amount=-3 +kerning first=187 second=260 amount=-4 +kerning first=274 second=78 amount=-2 +kerning first=8218 second=363 amount=-1 +kerning first=234 second=187 amount=-2 +kerning first=352 second=381 amount=-1 +kerning first=356 second=277 amount=-3 +kerning first=332 second=70 amount=-2 +kerning first=197 second=213 amount=-3 +kerning first=83 second=234 amount=-1 +kerning first=363 second=104 amount=-2 +kerning first=202 second=78 amount=-2 +kerning first=202 second=310 amount=-2 +kerning first=120 second=44 amount=-1 +kerning first=119 second=234 amount=-3 +kerning first=83 second=344 amount=-3 +kerning first=275 second=116 amount=-1 +kerning first=84 second=44 amount=-5 +kerning first=198 second=325 amount=-2 +kerning first=291 second=104 amount=-2 +kerning first=192 second=111 amount=-1 +kerning first=110 second=351 amount=-1 +kerning first=269 second=227 amount=-2 +kerning first=228 second=111 amount=-1 +kerning first=193 second=303 amount=-1 +kerning first=346 second=310 amount=-3 +kerning first=74 second=351 amount=-2 +kerning first=233 second=227 amount=-2 +kerning first=264 second=111 amount=-2 +kerning first=193 second=85 amount=-3 +kerning first=66 second=194 amount=-5 +kerning first=198 second=81 amount=-1 +kerning first=274 second=310 amount=-2 +kerning first=214 second=377 amount=-2 +kerning first=369 second=44 amount=-2 +kerning first=263 second=119 amount=-2 +kerning first=368 second=234 amount=-2 +kerning first=1086 second=1074 amount=-1 +kerning first=88 second=85 amount=-2 +kerning first=333 second=44 amount=-3 +kerning first=337 second=303 amount=-1 +kerning first=198 second=201 amount=-2 +kerning first=211 second=70 amount=-2 +kerning first=377 second=227 amount=-1 +kerning first=87 second=111 amount=-3 +kerning first=229 second=303 amount=-1 +kerning first=83 second=220 amount=-3 +kerning first=107 second=277 amount=-3 +kerning first=352 second=367 amount=-1 +kerning first=284 second=45 amount=-3 +kerning first=305 second=227 amount=-1 +kerning first=1045 second=1094 amount=-1 +kerning first=119 second=248 amount=-3 +kerning first=80 second=8249 amount=-3 +kerning first=220 second=235 amount=-2 +kerning first=78 second=118 amount=-2 +kerning first=275 second=380 amount=-2 +kerning first=234 second=283 amount=-1 +kerning first=286 second=377 amount=-2 +kerning first=256 second=235 amount=-1 +kerning first=45 second=109 amount=-2 +kerning first=219 second=118 amount=-2 +kerning first=74 second=105 amount=-2 +kerning first=251 second=8220 amount=-3 +kerning first=83 second=248 amount=-1 +kerning first=44 second=8249 amount=-3 +kerning first=110 second=105 amount=-1 +kerning first=347 second=380 amount=-2 +kerning first=1027 second=1087 amount=-2 +kerning first=310 second=338 amount=-3 +kerning first=351 second=367 amount=-1 +kerning first=337 second=228 amount=-1 +kerning first=305 second=241 amount=-1 +kerning first=110 second=8220 amount=-4 +kerning first=378 second=283 amount=-1 +kerning first=337 second=345 amount=-1 +kerning first=236 second=287 amount=-3 +kerning first=1031 second=1100 amount=-1 +kerning first=1083 second=1077 amount=-1 +kerning first=200 second=287 amount=-3 +kerning first=377 second=241 amount=-1 +kerning first=203 second=380 amount=-2 +kerning first=1067 second=1100 amount=-1 +kerning first=203 second=270 amount=-2 +kerning first=82 second=218 amount=-3 +kerning first=229 second=228 amount=-1 +kerning first=204 second=287 amount=-3 +kerning first=356 second=263 amount=-3 +kerning first=272 second=287 amount=-1 +kerning first=233 second=108 amount=-3 +kerning first=220 second=193 amount=-4 +kerning first=380 second=287 amount=-2 +kerning first=368 second=248 amount=-2 +kerning first=269 second=241 amount=-2 +kerning first=269 second=44 amount=-3 +kerning first=79 second=193 amount=-4 +kerning first=344 second=287 amount=-3 +kerning first=88 second=228 amount=-1 +kerning first=233 second=241 amount=-2 +kerning first=1037 second=1074 amount=-1 +kerning first=296 second=248 amount=-2 +kerning first=257 second=8249 amount=-2 +kerning first=364 second=193 amount=-4 +kerning first=201 second=8249 amount=-2 +kerning first=224 second=248 amount=-1 +kerning first=1050 second=1073 amount=-3 +kerning first=260 second=248 amount=-1 +kerning first=221 second=8249 amount=-5 +kerning first=1108 second=1094 amount=-1 +kerning first=377 second=255 amount=-3 +kerning first=346 second=352 amount=-1 +kerning first=333 second=318 amount=-2 +kerning first=368 second=112 amount=-2 +kerning first=1072 second=1094 amount=-1 +kerning first=369 second=318 amount=-2 +kerning first=332 second=112 amount=-1 +kerning first=1027 second=1073 amount=-1 +kerning first=305 second=255 amount=-2 +kerning first=115 second=251 amount=-1 +kerning first=296 second=112 amount=-1 +kerning first=1063 second=1073 amount=-1 +kerning first=229 second=331 amount=-1 +kerning first=256 second=221 amount=-6 +kerning first=269 second=255 amount=-2 +kerning first=260 second=112 amount=-3 +kerning first=1051 second=1104 amount=-1 +kerning first=233 second=255 amount=-2 +kerning first=197 second=255 amount=-3 +kerning first=260 second=262 amount=-3 +kerning first=85 second=74 amount=-3 +kerning first=296 second=262 amount=-2 +kerning first=378 second=311 amount=-2 +kerning first=119 second=112 amount=-2 +kerning first=79 second=221 amount=-2 +kerning first=202 second=338 amount=-1 +kerning first=224 second=98 amount=-1 +kerning first=99 second=314 amount=-3 +kerning first=8218 second=377 amount=-1 +kerning first=79 second=207 amount=-2 +kerning first=240 second=314 amount=-2 +kerning first=262 second=74 amount=-2 +kerning first=260 second=98 amount=-2 +kerning first=298 second=74 amount=-1 +kerning first=193 second=214 amount=-3 +kerning first=79 second=379 amount=-2 +kerning first=334 second=74 amount=-2 +kerning first=323 second=105 amount=-1 +kerning first=202 second=352 amount=-2 +kerning first=370 second=74 amount=-3 +kerning first=203 second=366 amount=-2 +kerning first=310 second=352 amount=-2 +kerning first=119 second=98 amount=-1 +kerning first=251 second=105 amount=-2 +kerning first=1108 second=1080 amount=-1 +kerning first=274 second=352 amount=-2 +kerning first=83 second=98 amount=-2 +kerning first=287 second=105 amount=-2 +kerning first=88 second=345 amount=1 +kerning first=250 second=307 amount=-2 +kerning first=103 second=224 amount=-3 +kerning first=210 second=282 amount=-2 +kerning first=76 second=346 amount=-1 +kerning first=67 second=224 amount=-2 +kerning first=257 second=8221 amount=-3 +kerning first=72 second=242 amount=-2 +kerning first=98 second=106 amount=-2 +kerning first=208 second=224 amount=-1 +kerning first=1024 second=1113 amount=-1 +kerning first=249 second=333 amount=-1 +kerning first=277 second=345 amount=-1 +kerning first=199 second=81 amount=-3 +kerning first=69 second=282 amount=-2 +kerning first=347 second=106 amount=-1 +kerning first=280 second=224 amount=-1 +kerning first=233 second=98 amount=-2 +kerning first=244 second=224 amount=-1 +kerning first=235 second=355 amount=-1 +kerning first=108 second=333 amount=-1 +kerning first=86 second=67 amount=-3 +kerning first=379 second=81 amount=-1 +kerning first=275 second=106 amount=-2 +kerning first=72 second=333 amount=-2 +kerning first=311 second=106 amount=-1 +kerning first=316 second=224 amount=-2 +kerning first=222 second=230 amount=-1 +kerning first=289 second=232 amount=-2 +kerning first=226 second=224 amount=-1 +kerning first=199 second=243 amount=-2 +kerning first=89 second=101 amount=-3 +kerning first=117 second=230 amount=-1 +kerning first=325 second=346 amount=-2 +kerning first=235 second=243 amount=-1 +kerning first=8250 second=326 amount=-2 +kerning first=194 second=101 amount=-1 +kerning first=45 second=230 amount=-1 +kerning first=203 second=256 amount=-2 +kerning first=268 second=378 amount=-2 +kerning first=230 second=101 amount=-1 +kerning first=109 second=307 amount=-1 +kerning first=266 second=101 amount=-2 +kerning first=1025 second=1099 amount=-1 +kerning first=302 second=101 amount=-2 +kerning first=1050 second=1060 amount=-4 +kerning first=77 second=334 amount=-2 +kerning first=98 second=120 amount=-3 +kerning first=282 second=268 amount=-1 +kerning first=374 second=101 amount=-3 +kerning first=218 second=334 amount=-1 +kerning first=280 second=79 amount=-1 +kerning first=203 second=120 amount=-1 +kerning first=72 second=335 amount=-2 +kerning first=354 second=268 amount=-3 +kerning first=307 second=243 amount=-1 +kerning first=362 second=334 amount=-1 +kerning first=1074 second=1098 amount=-1 +kerning first=286 second=192 amount=-3 +kerning first=116 second=251 amount=-1 +kerning first=379 second=243 amount=-1 +kerning first=1038 second=1098 amount=-3 +kerning first=257 second=251 amount=-1 +kerning first=235 second=229 amount=-2 +kerning first=8216 second=354 amount=-1 +kerning first=214 second=192 amount=-4 +kerning first=221 second=251 amount=-2 +kerning first=290 second=217 amount=-1 +kerning first=69 second=268 amount=-1 +kerning first=290 second=203 amount=-1 +kerning first=199 second=229 amount=-2 +kerning first=8250 second=76 amount=-5 +kerning first=379 second=229 amount=-1 +kerning first=291 second=118 amount=-1 +kerning first=365 second=251 amount=-1 +kerning first=354 second=282 amount=-1 +kerning first=70 second=339 amount=-1 +kerning first=275 second=120 amount=-2 +kerning first=195 second=218 amount=-3 +kerning first=1093 second=1072 amount=-1 +kerning first=307 second=229 amount=-2 +kerning first=363 second=118 amount=-3 +kerning first=282 second=282 amount=-2 +kerning first=264 second=121 amount=-1 +kerning first=327 second=118 amount=-2 +kerning first=347 second=120 amount=-3 +kerning first=303 second=232 amount=-3 +kerning first=366 second=244 amount=-2 +kerning first=45 second=202 amount=-5 +kerning first=307 second=257 amount=-2 +kerning first=1101 second=1096 amount=-1 +kerning first=203 second=368 amount=-2 +kerning first=290 second=219 amount=-1 +kerning first=81 second=202 amount=-2 +kerning first=375 second=232 amount=-3 +kerning first=235 second=257 amount=-2 +kerning first=339 second=232 amount=-1 +kerning first=381 second=70 amount=-1 +kerning first=8217 second=110 amount=-2 +kerning first=108 second=361 amount=-2 +kerning first=353 second=369 amount=-1 +kerning first=222 second=202 amount=-2 +kerning first=72 second=361 amount=-2 +kerning first=90 second=232 amount=-1 +kerning first=199 second=257 amount=-2 +kerning first=231 second=232 amount=-1 +kerning first=290 second=205 amount=-1 +kerning first=209 second=336 amount=-2 +kerning first=195 second=232 amount=-1 +kerning first=111 second=8250 amount=-2 +kerning first=84 second=278 amount=-1 +kerning first=73 second=267 amount=-2 +kerning first=316 second=121 amount=-3 +kerning first=197 second=332 amount=-3 +kerning first=8218 second=103 amount=-1 +kerning first=67 second=79 amount=-3 +kerning first=317 second=336 amount=-1 +kerning first=117 second=244 amount=-1 +kerning first=244 second=121 amount=-3 +kerning first=246 second=254 amount=-1 +kerning first=1036 second=1072 amount=-2 +kerning first=282 second=254 amount=-1 +kerning first=250 second=267 amount=-1 +kerning first=76 second=374 amount=-3 +kerning first=332 second=344 amount=-2 +kerning first=272 second=69 amount=-2 +kerning first=1042 second=1036 amount=-2 +kerning first=366 second=275 amount=-2 +kerning first=258 second=244 amount=-1 +kerning first=103 second=121 amount=-1 +kerning first=67 second=121 amount=-1 +kerning first=69 second=254 amount=-1 +kerning first=379 second=257 amount=-1 +kerning first=200 second=69 amount=-2 +kerning first=8250 second=226 amount=-1 +kerning first=371 second=273 amount=-3 +kerning first=330 second=244 amount=-2 +kerning first=105 second=254 amount=-1 +kerning first=204 second=117 amount=-2 +kerning first=195 second=246 amount=-1 +kerning first=235 second=271 amount=-1 +kerning first=72 second=347 amount=-2 +kerning first=67 second=107 amount=-1 +kerning first=232 second=382 amount=-2 +kerning first=268 second=382 amount=-2 +kerning first=90 second=246 amount=-1 +kerning first=307 second=271 amount=-1 +kerning first=1061 second=1057 amount=-4 +kerning first=304 second=382 amount=-1 +kerning first=1025 second=1057 amount=-1 +kerning first=250 second=117 amount=-1 +kerning first=103 second=107 amount=-2 +kerning first=330 second=230 amount=-2 +kerning first=113 second=249 amount=-2 +kerning first=368 second=334 amount=-1 +kerning first=1025 second=1085 amount=-1 +kerning first=234 second=363 amount=-2 +kerning first=8220 second=339 amount=-3 +kerning first=8250 second=78 amount=-5 +kerning first=250 second=281 amount=-1 +kerning first=352 second=121 amount=-2 +kerning first=1046 second=1047 amount=-2 +kerning first=75 second=246 amount=-2 +kerning first=1063 second=1099 amount=-1 +kerning first=249 second=361 amount=-1 +kerning first=330 second=216 amount=-2 +kerning first=352 second=107 amount=-2 +kerning first=74 second=65 amount=-5 +kerning first=321 second=347 amount=-1 +kerning first=73 second=281 amount=-2 +kerning first=8217 second=375 amount=-1 +kerning first=321 second=361 amount=-2 +kerning first=200 second=336 amount=-1 +kerning first=249 second=347 amount=-2 +kerning first=244 second=107 amount=-1 +kerning first=376 second=382 amount=-3 +kerning first=228 second=371 amount=-1 +kerning first=109 second=117 amount=-1 +kerning first=316 second=107 amount=-1 +kerning first=8220 second=353 amount=-2 +kerning first=354 second=240 amount=-3 +kerning first=258 second=216 amount=-3 +kerning first=73 second=117 amount=-2 +kerning first=1049 second=1095 amount=-1 +kerning first=108 second=347 amount=-2 +kerning first=1101 second=1082 amount=-1 +kerning first=280 second=107 amount=-1 +kerning first=97 second=226 amount=-1 +kerning first=1031 second=1102 amount=-1 +kerning first=256 second=305 amount=-1 +kerning first=220 second=305 amount=-2 +kerning first=84 second=46 amount=-5 +kerning first=202 second=226 amount=-1 +kerning first=120 second=378 amount=-2 +kerning first=328 second=305 amount=-1 +kerning first=120 second=46 amount=-1 +kerning first=264 second=245 amount=-2 +kerning first=202 second=336 amount=-1 +kerning first=1104 second=1083 amount=-2 +kerning first=274 second=226 amount=-1 +kerning first=281 second=8250 amount=-2 +kerning first=83 second=72 amount=-3 +kerning first=346 second=76 amount=-3 +kerning first=291 second=102 amount=-1 +kerning first=310 second=226 amount=-1 +kerning first=280 second=266 amount=-1 +kerning first=364 second=305 amount=-2 +kerning first=346 second=226 amount=-2 +kerning first=274 second=76 amount=-2 +kerning first=310 second=336 amount=-3 +kerning first=363 second=102 amount=-1 +kerning first=211 second=219 amount=-1 +kerning first=382 second=226 amount=-1 +kerning first=245 second=8250 amount=-2 +kerning first=364 second=45 amount=-5 +kerning first=79 second=224 amount=-1 +kerning first=379 second=259 amount=-1 +kerning first=269 second=333 amount=-1 +kerning first=8218 second=86 amount=-6 +kerning first=381 second=252 amount=-3 +kerning first=288 second=316 amount=-1 +kerning first=8216 second=197 amount=-8 +kerning first=324 second=316 amount=-1 +kerning first=228 second=245 amount=-1 +kerning first=267 second=257 amount=-2 +kerning first=192 second=245 amount=-1 +kerning first=74 second=79 amount=-2 +kerning first=201 second=252 amount=-2 +kerning first=314 second=335 amount=-1 +kerning first=235 second=259 amount=-2 +kerning first=350 second=335 amount=-1 +kerning first=87 second=245 amount=-3 +kerning first=255 second=269 amount=-3 +kerning first=307 second=259 amount=-2 +kerning first=68 second=46 amount=-3 +kerning first=79 second=45 amount=-1 +kerning first=228 second=369 amount=-1 +kerning first=350 second=103 amount=-3 +kerning first=121 second=116 amount=-1 +kerning first=374 second=375 amount=-3 +kerning first=296 second=246 amount=-2 +kerning first=311 second=277 amount=-3 +kerning first=192 second=369 amount=-3 +kerning first=314 second=103 amount=-3 +kerning first=85 second=232 amount=-2 +kerning first=260 second=246 amount=-1 +kerning first=199 second=259 amount=-2 +kerning first=302 second=375 amount=-2 +kerning first=224 second=246 amount=-1 +kerning first=203 second=382 amount=-2 +kerning first=264 second=369 amount=-2 +kerning first=242 second=103 amount=-2 +kerning first=90 second=266 amount=-1 +kerning first=260 second=332 amount=-3 +kerning first=206 second=103 amount=-3 +kerning first=220 second=45 amount=-5 +kerning first=119 second=246 amount=-3 +kerning first=379 second=109 amount=-1 +kerning first=197 second=253 amount=-3 +kerning first=328 second=45 amount=-3 +kerning first=83 second=246 amount=-1 +kerning first=101 second=103 amount=-3 +kerning first=233 second=253 amount=-2 +kerning first=296 second=332 amount=-2 +kerning first=87 second=369 amount=-2 +kerning first=65 second=103 amount=-3 +kerning first=89 second=375 amount=-3 +kerning first=67 second=266 amount=-3 +kerning first=1063 second=1075 amount=-1 +kerning first=368 second=332 amount=-1 +kerning first=1027 second=1075 amount=-2 +kerning first=235 second=109 amount=-2 +kerning first=304 second=122 amount=-1 +kerning first=105 second=242 amount=-1 +kerning first=268 second=122 amount=-2 +kerning first=117 second=121 amount=-3 +kerning first=307 second=109 amount=-2 +kerning first=232 second=122 amount=-2 +kerning first=266 second=375 amount=-1 +kerning first=230 second=375 amount=-2 +kerning first=275 second=382 amount=-2 +kerning first=194 second=375 amount=-3 +kerning first=199 second=109 amount=-1 +kerning first=8220 second=224 amount=-3 +kerning first=240 second=371 amount=-1 +kerning first=347 second=382 amount=-2 +kerning first=376 second=122 amount=-3 +kerning first=354 second=242 amount=-3 +kerning first=266 second=115 amount=-2 +kerning first=197 second=370 amount=-3 +kerning first=302 second=115 amount=-2 +kerning first=346 second=198 amount=-4 +kerning first=211 second=80 amount=-2 +kerning first=220 second=345 amount=-1 +kerning first=194 second=115 amount=-2 +kerning first=377 second=121 amount=-3 +kerning first=115 second=223 amount=-1 +kerning first=230 second=115 amount=-2 +kerning first=338 second=220 amount=-2 +kerning first=73 second=119 amount=-2 +kerning first=375 second=289 amount=-3 +kerning first=109 second=119 amount=-3 +kerning first=334 second=8217 amount=-2 +kerning first=202 second=198 amount=-2 +kerning first=377 second=68 amount=-1 +kerning first=338 second=115 amount=-1 +kerning first=374 second=115 amount=-3 +kerning first=274 second=198 amount=-2 +kerning first=250 second=119 amount=-3 +kerning first=269 second=253 amount=-2 +kerning first=1052 second=1090 amount=-1 +kerning first=286 second=119 amount=-1 +kerning first=305 second=253 amount=-2 +kerning first=198 second=313 amount=-2 +kerning first=275 second=108 amount=-3 +kerning first=76 second=303 amount=-2 +kerning first=377 second=253 amount=-3 +kerning first=1088 second=1090 amount=-1 +kerning first=347 second=108 amount=-2 +kerning first=1070 second=1059 amount=-3 +kerning first=350 second=75 amount=-3 +kerning first=100 second=269 amount=-1 +kerning first=79 second=73 amount=-2 +kerning first=368 second=246 amount=-2 +kerning first=1076 second=1105 amount=-1 +kerning first=278 second=75 amount=-2 +kerning first=205 second=269 amount=-2 +kerning first=8250 second=310 amount=-5 +kerning first=101 second=335 amount=-1 +kerning first=379 second=231 amount=-1 +kerning first=216 second=196 amount=-4 +kerning first=277 second=269 amount=-1 +kerning first=1067 second=1098 amount=-1 +kerning first=233 second=225 amount=-2 +kerning first=206 second=335 amount=-2 +kerning first=310 second=71 amount=-3 +kerning first=240 second=328 amount=-1 +kerning first=269 second=225 amount=-2 +kerning first=288 second=196 amount=-3 +kerning first=213 second=44 amount=-3 +kerning first=65 second=363 amount=-3 +kerning first=98 second=108 amount=-2 +kerning first=101 second=363 amount=-2 +kerning first=262 second=253 amount=-1 +kerning first=374 second=286 amount=-3 +kerning first=203 second=108 amount=-1 +kerning first=65 second=335 amount=-1 +kerning first=302 second=286 amount=-2 +kerning first=261 second=249 amount=-1 +kerning first=242 second=363 amount=-1 +kerning first=338 second=286 amount=-1 +kerning first=44 second=8221 amount=-5 +kerning first=334 second=120 amount=-1 +kerning first=278 second=363 amount=-2 +kerning first=201 second=280 amount=-2 +kerning first=84 second=203 amount=-1 +kerning first=219 second=102 amount=-1 +kerning first=314 second=363 amount=-2 +kerning first=266 second=286 amount=-3 +kerning first=83 second=218 amount=-3 +kerning first=350 second=363 amount=-1 +kerning first=89 second=115 amount=-3 +kerning first=305 second=225 amount=-1 +kerning first=235 second=231 amount=-1 +kerning first=225 second=46 amount=-1 +kerning first=332 second=218 amount=-1 +kerning first=267 second=378 amount=-2 +kerning first=261 second=46 amount=-1 +kerning first=377 second=225 amount=-1 +kerning first=228 second=273 amount=-1 +kerning first=89 second=286 amount=-3 +kerning first=381 second=280 amount=-1 +kerning first=260 second=218 amount=-3 +kerning first=199 second=231 amount=-2 +kerning first=212 second=261 amount=-1 +kerning first=110 second=367 amount=-1 +kerning first=248 second=261 amount=-1 +kerning first=209 second=210 amount=-2 +kerning first=284 second=261 amount=-1 +kerning first=352 second=8220 amount=-2 +kerning first=68 second=296 amount=-2 +kerning first=316 second=8220 amount=-3 +kerning first=1052 second=1092 amount=-1 +kerning first=67 second=325 amount=-3 +kerning first=71 second=261 amount=-1 +kerning first=363 second=275 amount=-1 +kerning first=86 second=327 amount=-1 +kerning first=107 second=261 amount=-2 +kerning first=244 second=8220 amount=-2 +kerning first=204 second=211 amount=-2 +kerning first=261 second=251 amount=-1 +kerning first=1092 second=1117 amount=-1 +kerning first=90 second=352 amount=-1 +kerning first=208 second=8220 amount=-2 +kerning first=251 second=250 amount=-1 +kerning first=198 second=171 amount=-2 +kerning first=253 second=112 amount=-2 +kerning first=240 second=326 amount=-1 +kerning first=71 second=378 amount=-1 +kerning first=217 second=112 amount=-2 +kerning first=317 second=296 amount=-2 +kerning first=212 second=378 amount=-2 +kerning first=1042 second=1025 amount=-2 +kerning first=323 second=250 amount=-2 +kerning first=270 second=171 amount=-1 +kerning first=90 second=206 amount=-1 +kerning first=72 second=235 amount=-2 +kerning first=287 second=250 amount=-1 +kerning first=232 second=351 amount=-2 +kerning first=112 second=112 amount=-1 +kerning first=108 second=235 amount=-1 +kerning first=356 second=261 amount=-5 +kerning first=76 second=112 amount=-2 +kerning first=99 second=326 amount=-2 +kerning first=99 second=328 amount=-2 +kerning first=249 second=235 amount=-1 +kerning first=1104 second=1096 amount=-1 +kerning first=75 second=288 amount=-3 +kerning first=108 second=237 amount=-1 +kerning first=193 second=113 amount=-1 +kerning first=217 second=262 amount=-1 +kerning first=323 second=365 amount=-2 +kerning first=210 second=366 amount=-1 +kerning first=374 second=113 amount=-3 +kerning first=287 second=365 amount=-1 +kerning first=1057 second=1081 amount=-1 +kerning first=251 second=365 amount=-1 +kerning first=284 second=378 amount=-1 +kerning first=244 second=353 amount=-2 +kerning first=325 second=262 amount=-2 +kerning first=232 second=98 amount=-2 +kerning first=81 second=45 amount=-1 +kerning first=280 second=353 amount=-1 +kerning first=224 second=100 amount=-1 +kerning first=1079 second=1094 amount=-1 +kerning first=354 second=366 amount=-1 +kerning first=356 second=378 amount=-3 +kerning first=316 second=353 amount=-2 +kerning first=260 second=100 amount=-1 +kerning first=110 second=365 amount=-1 +kerning first=325 second=112 amount=-1 +kerning first=199 second=83 amount=-3 +kerning first=352 second=353 amount=-1 +kerning first=296 second=100 amount=-2 +kerning first=282 second=366 amount=-2 +kerning first=289 second=112 amount=-1 +kerning first=321 second=87 amount=-3 +kerning first=291 second=275 amount=-2 +kerning first=67 second=353 amount=-2 +kerning first=327 second=249 amount=-1 +kerning first=200 second=85 amount=-2 +kerning first=213 second=87 amount=-2 +kerning first=327 second=275 amount=-2 +kerning first=103 second=353 amount=-3 +kerning first=364 second=223 amount=-2 +kerning first=195 second=352 amount=-3 +kerning first=363 second=249 amount=-1 +kerning first=219 second=275 amount=-2 +kerning first=83 second=100 amount=-1 +kerning first=1045 second=1078 amount=-2 +kerning first=255 second=249 amount=-1 +kerning first=255 second=275 amount=-3 +kerning first=1047 second=1091 amount=-1 +kerning first=119 second=100 amount=-3 +kerning first=291 second=249 amount=-1 +kerning first=379 second=83 amount=-1 +kerning first=302 second=113 amount=-2 +kerning first=69 second=366 amount=-2 +kerning first=220 second=223 amount=-2 +kerning first=266 second=113 amount=-2 +kerning first=76 second=262 amount=-1 +kerning first=85 second=233 amount=-2 +kerning first=310 second=275 amount=-2 +kerning first=78 second=275 amount=-2 +kerning first=317 second=210 amount=-1 +kerning first=194 second=113 amount=-1 +kerning first=90 second=324 amount=-1 +kerning first=88 second=361 amount=-3 +kerning first=321 second=89 amount=-3 +kerning first=67 second=44 amount=-1 +kerning first=121 second=233 amount=-3 +kerning first=352 second=379 amount=-1 +kerning first=76 second=84 amount=-3 +kerning first=71 second=289 amount=-3 +kerning first=287 second=339 amount=-2 +kerning first=262 second=233 amount=-2 +kerning first=107 second=289 amount=-2 +kerning first=323 second=339 amount=-2 +kerning first=226 second=233 amount=-1 +kerning first=217 second=114 amount=-1 +kerning first=245 second=107 amount=-1 +kerning first=203 second=194 amount=-2 +kerning first=253 second=114 amount=-1 +kerning first=298 second=233 amount=-2 +kerning first=187 second=274 amount=-5 +kerning first=72 second=252 amount=-1 +kerning first=1100 second=1082 amount=-1 +kerning first=112 second=114 amount=-1 +kerning first=78 second=249 amount=-1 +kerning first=284 second=289 amount=-3 +kerning first=370 second=233 amount=-2 +kerning first=213 second=89 amount=-2 +kerning first=67 second=379 amount=-2 +kerning first=74 second=339 amount=-2 +kerning first=375 second=324 amount=-2 +kerning first=321 second=237 amount=-2 +kerning first=267 second=324 amount=-2 +kerning first=248 second=110 amount=-1 +kerning first=8250 second=83 amount=-3 +kerning first=262 second=350 amount=-3 +kerning first=251 second=339 amount=-1 +kerning first=231 second=324 amount=-2 +kerning first=67 second=381 amount=-2 +kerning first=249 second=237 amount=-2 +kerning first=1051 second=1116 amount=-1 +kerning first=277 second=187 amount=-2 +kerning first=339 second=324 amount=-2 +kerning first=213 second=237 amount=-1 +kerning first=303 second=324 amount=-2 +kerning first=280 second=379 amount=-1 +kerning first=356 second=110 amount=-3 +kerning first=370 second=350 amount=-3 +kerning first=321 second=209 amount=-2 +kerning first=363 second=277 amount=-1 +kerning first=333 second=345 amount=-1 +kerning first=346 second=8217 amount=-2 +kerning first=80 second=111 amount=-1 +kerning first=89 second=260 amount=-6 +kerning first=1093 second=1108 amount=-2 +kerning first=334 second=350 amount=-1 +kerning first=376 second=119 amount=-3 +kerning first=213 second=209 amount=-2 +kerning first=255 second=277 amount=-3 +kerning first=217 second=234 amount=-2 +kerning first=219 second=277 amount=-2 +kerning first=76 second=86 amount=-3 +kerning first=327 second=277 amount=-2 +kerning first=75 second=316 amount=-1 +kerning first=289 second=234 amount=-2 +kerning first=266 second=260 amount=-3 +kerning first=291 second=277 amount=-2 +kerning first=187 second=302 amount=-5 +kerning first=325 second=234 amount=-2 +kerning first=78 second=277 amount=-2 +kerning first=280 second=351 amount=-1 +kerning first=327 second=44 amount=-1 +kerning first=280 second=264 amount=-1 +kerning first=202 second=76 amount=-2 +kerning first=338 second=260 amount=-2 +kerning first=1037 second=1054 amount=-1 +kerning first=356 second=289 amount=-4 +kerning first=244 second=351 amount=-2 +kerning first=365 second=111 amount=-1 +kerning first=1056 second=1089 amount=-1 +kerning first=352 second=351 amount=-1 +kerning first=332 second=72 amount=-2 +kerning first=317 second=212 amount=-1 +kerning first=1037 second=1072 amount=-1 +kerning first=316 second=351 amount=-2 +kerning first=1058 second=1102 amount=-2 +kerning first=187 second=103 amount=-3 +kerning first=374 second=260 amount=-6 +kerning first=103 second=351 amount=-3 +kerning first=287 second=367 amount=-1 +kerning first=67 second=351 amount=-2 +kerning first=67 second=264 amount=-3 +kerning first=221 second=111 amount=-3 +kerning first=323 second=367 amount=-2 +kerning first=198 second=199 amount=-1 +kerning first=321 second=74 amount=-1 +kerning first=272 second=291 amount=-1 +kerning first=251 second=367 amount=-1 +kerning first=1052 second=1075 amount=-1 +kerning first=209 second=212 amount=-2 +kerning first=262 second=364 amount=-2 +kerning first=257 second=267 amount=-1 +kerning first=1043 second=1074 amount=-2 +kerning first=286 second=8249 amount=-3 +kerning first=65 second=361 amount=-3 +kerning first=258 second=351 amount=-2 +kerning first=206 second=361 amount=-2 +kerning first=100 second=277 amount=-1 +kerning first=366 second=351 amount=-2 +kerning first=1090 second=1077 amount=-1 +kerning first=8250 second=85 amount=-4 +kerning first=221 second=267 amount=-3 +kerning first=221 second=377 amount=-3 +kerning first=354 second=114 amount=-1 +kerning first=73 second=8249 amount=-4 +kerning first=278 second=361 amount=-2 +kerning first=117 second=351 amount=-2 +kerning first=235 second=111 amount=-1 +kerning first=109 second=8249 amount=-3 +kerning first=242 second=361 amount=-1 +kerning first=336 second=257 amount=-1 +kerning first=201 second=367 amount=-2 +kerning first=334 second=364 amount=-1 +kerning first=253 second=254 amount=-1 +kerning first=307 second=111 amount=-1 +kerning first=66 second=287 amount=-4 +kerning first=314 second=361 amount=-2 +kerning first=365 second=267 amount=-1 +kerning first=289 second=254 amount=-1 +kerning first=264 second=257 amount=-2 +kerning first=262 second=261 amount=-2 +kerning first=365 second=117 amount=-1 +kerning first=298 second=261 amount=-2 +kerning first=251 second=244 amount=-1 +kerning first=102 second=287 amount=-2 +kerning first=334 second=261 amount=-1 +kerning first=287 second=244 amount=-2 +kerning first=381 second=121 amount=-3 +kerning first=76 second=254 amount=-2 +kerning first=282 second=374 amount=-1 +kerning first=113 second=44 amount=-2 +kerning first=243 second=287 amount=-2 +kerning first=370 second=261 amount=-3 +kerning first=323 second=244 amount=-2 +kerning first=112 second=254 amount=-1 +kerning first=89 second=274 amount=-1 +kerning first=207 second=287 amount=-3 +kerning first=85 second=261 amount=-3 +kerning first=1101 second=1094 amount=-1 +kerning first=8217 second=269 amount=-3 +kerning first=210 second=374 amount=-2 +kerning first=369 second=273 amount=-1 +kerning first=374 second=274 amount=-1 +kerning first=315 second=287 amount=-3 +kerning first=121 second=261 amount=-3 +kerning first=201 second=381 amount=-1 +kerning first=279 second=287 amount=-3 +kerning first=88 second=112 amount=-1 +kerning first=350 second=237 amount=-3 +kerning first=226 second=261 amount=-1 +kerning first=338 second=210 amount=-1 +kerning first=314 second=237 amount=-1 +kerning first=8216 second=219 amount=-1 +kerning first=266 second=274 amount=-3 +kerning first=351 second=287 amount=-3 +kerning first=212 second=171 amount=-1 +kerning first=1058 second=1104 amount=-1 +kerning first=242 second=347 amount=-2 +kerning first=70 second=197 amount=-3 +kerning first=201 second=250 amount=-2 +kerning first=206 second=347 amount=-2 +kerning first=221 second=281 amount=-3 +kerning first=201 second=107 amount=-1 +kerning first=366 second=337 amount=-2 +kerning first=379 second=97 amount=-1 +kerning first=116 second=117 amount=-1 +kerning first=226 second=378 amount=-1 +kerning first=257 second=281 amount=-1 +kerning first=330 second=337 amount=-2 +kerning first=101 second=347 amount=-2 +kerning first=211 second=197 amount=-4 +kerning first=221 second=117 amount=-2 +kerning first=65 second=347 amount=-2 +kerning first=71 second=171 amount=-3 +kerning first=282 second=220 amount=-2 +kerning first=107 second=171 amount=-3 +kerning first=80 second=281 amount=-1 +kerning first=350 second=207 amount=-3 +kerning first=257 second=117 amount=-1 +kerning first=89 second=288 amount=-3 +kerning first=197 second=354 amount=-6 +kerning first=381 second=264 amount=-1 +kerning first=268 second=82 amount=-3 +kerning first=235 second=371 amount=-2 +kerning first=194 second=288 amount=-3 +kerning first=354 second=100 amount=-3 +kerning first=8218 second=229 amount=-2 +kerning first=81 second=379 amount=-2 +kerning first=307 second=371 amount=-1 +kerning first=87 second=257 amount=-5 +kerning first=356 second=171 amount=-5 +kerning first=290 second=304 amount=-1 +kerning first=228 second=271 amount=-1 +kerning first=298 second=378 amount=-1 +kerning first=105 second=100 amount=-1 +kerning first=289 second=240 amount=-2 +kerning first=106 second=314 amount=-2 +kerning first=350 second=347 amount=-1 +kerning first=377 second=354 amount=-2 +kerning first=325 second=240 amount=-2 +kerning first=201 second=264 amount=-1 +kerning first=314 second=347 amount=-2 +kerning first=374 second=243 amount=-3 +kerning first=217 second=240 amount=-2 +kerning first=1030 second=1054 amount=-1 +kerning first=114 second=289 amount=-2 +kerning first=1094 second=1104 amount=-1 +kerning first=278 second=347 amount=-1 +kerning first=253 second=240 amount=-3 +kerning first=200 second=317 amount=-2 +kerning first=195 second=220 amount=-3 +kerning first=222 second=77 amount=-2 +kerning first=284 second=379 amount=-2 +kerning first=283 second=314 amount=-3 +kerning first=258 second=214 amount=-3 +kerning first=272 second=317 amount=-2 +kerning first=268 second=298 amount=-3 +kerning first=258 second=71 amount=-3 +kerning first=355 second=314 amount=-1 +kerning first=262 second=90 amount=-2 +kerning first=86 second=207 amount=-1 +kerning first=370 second=90 amount=-1 +kerning first=110 second=224 amount=-1 +kerning first=1042 second=1024 amount=-2 +kerning first=74 second=224 amount=-2 +kerning first=376 second=298 amount=-1 +kerning first=1065 second=1108 amount=-1 +kerning first=313 second=291 amount=-3 +kerning first=1025 second=1024 amount=-1 +kerning first=277 second=291 amount=-3 +kerning first=195 second=84 amount=-6 +kerning first=113 second=318 amount=-2 +kerning first=287 second=224 amount=-3 +kerning first=241 second=291 amount=-2 +kerning first=199 second=97 amount=-2 +kerning first=204 second=213 amount=-2 +kerning first=251 second=224 amount=-1 +kerning first=205 second=291 amount=-3 +kerning first=104 second=324 amount=-1 +kerning first=259 second=287 amount=-2 +kerning first=90 second=84 amount=-2 +kerning first=256 second=85 amount=-3 +kerning first=245 second=324 amount=-1 +kerning first=200 second=200 amount=-2 +kerning first=371 second=311 amount=-1 +kerning first=254 second=318 amount=-2 +kerning first=323 second=224 amount=-2 +kerning first=100 second=291 amount=-2 +kerning first=307 second=97 amount=-2 +kerning first=81 second=77 amount=-2 +kerning first=366 second=71 amount=-1 +kerning first=335 second=311 amount=-1 +kerning first=258 second=337 amount=-1 +kerning first=1074 second=1114 amount=-1 +kerning first=45 second=77 amount=-5 +kerning first=330 second=71 amount=-2 +kerning first=376 second=245 amount=-3 +kerning first=235 second=97 amount=-2 +kerning first=263 second=311 amount=-2 +kerning first=1043 second=1088 amount=-2 +kerning first=227 second=311 amount=-1 +kerning first=85 second=90 amount=-1 +kerning first=117 second=337 amount=-1 +kerning first=1079 second=1088 amount=-1 +kerning first=81 second=85 amount=-1 +kerning first=304 second=284 amount=-2 +kerning first=1024 second=1025 amount=-1 +kerning first=335 second=187 amount=-2 +kerning first=362 second=44 amount=-5 +kerning first=45 second=85 amount=-4 +kerning first=90 second=344 amount=-1 +kerning first=90 second=234 amount=-1 +kerning first=326 second=44 amount=-1 +kerning first=381 second=381 amount=-1 +kerning first=107 second=271 amount=-3 +kerning first=86 second=325 amount=-1 +kerning first=236 second=303 amount=-1 +kerning first=268 second=284 amount=-3 +kerning first=1060 second=1025 amount=-1 +kerning first=1044 second=1086 amount=-1 +kerning first=195 second=234 amount=-1 +kerning first=1101 second=1090 amount=-1 +kerning first=262 second=104 amount=-1 +kerning first=218 second=44 amount=-5 +kerning first=226 second=104 amount=-1 +kerning first=196 second=284 amount=-3 +kerning first=68 second=310 amount=-2 +kerning first=381 second=101 amount=-1 +kerning first=290 second=44 amount=-3 +kerning first=380 second=303 amount=-1 +kerning first=90 second=70 amount=-1 +kerning first=121 second=104 amount=-2 +kerning first=310 second=81 amount=-3 +kerning first=254 second=44 amount=-3 +kerning first=272 second=194 amount=-4 +kerning first=87 second=251 amount=-2 +kerning first=375 second=234 amount=-3 +kerning first=99 second=227 amount=-2 +kerning first=1070 second=1067 amount=-1 +kerning first=200 second=194 amount=-2 +kerning first=192 second=251 amount=-3 +kerning first=45 second=351 amount=-1 +kerning first=86 second=187 amount=-3 +kerning first=1074 second=1100 amount=-1 +kerning first=199 second=111 amount=-2 +kerning first=258 second=85 amount=-3 +kerning first=264 second=251 amount=-2 +kerning first=205 second=277 amount=-2 +kerning first=231 second=234 amount=-1 +kerning first=222 second=85 amount=-1 +kerning first=228 second=251 amount=-1 +kerning first=267 second=234 amount=-1 +kerning first=200 second=303 amount=-1 +kerning first=286 second=45 amount=-3 +kerning first=240 second=227 amount=-1 +kerning first=376 second=284 amount=-3 +kerning first=277 second=277 amount=-1 +kerning first=204 second=227 amount=-2 +kerning first=317 second=310 amount=-2 +kerning first=339 second=234 amount=-1 +kerning first=1047 second=1093 amount=-3 +kerning first=316 second=105 amount=-1 +kerning first=8218 second=87 amount=-6 +kerning first=284 second=118 amount=-1 +kerning first=334 second=370 amount=-1 +kerning first=65 second=245 amount=-1 +kerning first=100 second=283 amount=-1 +kerning first=89 second=114 amount=-1 +kerning first=352 second=105 amount=-3 +kerning first=248 second=118 amount=-2 +kerning first=69 second=368 amount=-2 +kerning first=244 second=105 amount=-1 +kerning first=356 second=118 amount=-3 +kerning first=366 second=345 amount=-1 +kerning first=280 second=105 amount=-1 +kerning first=210 second=270 amount=-2 +kerning first=1090 second=1083 amount=-3 +kerning first=89 second=280 amount=-1 +kerning first=277 second=283 amount=-1 +kerning first=210 second=368 amount=-1 +kerning first=208 second=105 amount=-1 +kerning first=364 second=335 amount=-2 +kerning first=71 second=118 amount=-1 +kerning first=206 second=245 amount=-2 +kerning first=67 second=105 amount=-1 +kerning first=69 second=270 amount=-2 +kerning first=205 second=283 amount=-2 +kerning first=103 second=105 amount=-2 +kerning first=101 second=245 amount=-1 +kerning first=88 second=351 amount=-1 +kerning first=366 second=228 amount=-3 +kerning first=1098 second=1078 amount=-2 +kerning first=354 second=368 amount=-1 +kerning first=330 second=228 amount=-2 +kerning first=220 second=335 amount=-2 +kerning first=262 second=241 amount=-1 +kerning first=105 second=108 amount=-2 +kerning first=256 second=335 amount=-1 +kerning first=370 second=241 amount=-2 +kerning first=246 second=108 amount=-2 +kerning first=282 second=368 amount=-2 +kerning first=1054 second=1083 amount=-2 +kerning first=222 second=228 amount=-1 +kerning first=121 second=241 amount=-2 +kerning first=282 second=270 amount=-2 +kerning first=85 second=241 amount=-2 +kerning first=282 second=108 amount=-1 +kerning first=117 second=228 amount=-1 +kerning first=86 second=193 amount=-6 +kerning first=262 second=370 amount=-2 +kerning first=81 second=228 amount=-1 +kerning first=354 second=270 amount=-1 +kerning first=369 second=324 amount=-1 +kerning first=354 second=122 amount=-3 +kerning first=366 second=331 amount=-2 +kerning first=268 second=278 amount=-3 +kerning first=282 second=256 amount=-2 +kerning first=334 second=356 amount=-2 +kerning first=282 second=122 amount=-2 +kerning first=210 second=256 amount=-4 +kerning first=246 second=122 amount=-2 +kerning first=206 second=231 amount=-2 +kerning first=262 second=356 amount=-1 +kerning first=236 second=363 amount=-1 +kerning first=197 second=362 amount=-3 +kerning first=248 second=116 amount=-1 +kerning first=376 second=278 amount=-1 +kerning first=298 second=255 amount=-2 +kerning first=117 second=331 amount=-1 +kerning first=356 second=116 amount=-1 +kerning first=314 second=231 amount=-1 +kerning first=354 second=256 amount=-6 +kerning first=262 second=255 amount=-1 +kerning first=350 second=231 amount=-1 +kerning first=8222 second=98 amount=-1 +kerning first=226 second=255 amount=-3 +kerning first=266 second=280 amount=-3 +kerning first=338 second=266 amount=-1 +kerning first=278 second=81 amount=-1 +kerning first=350 second=245 amount=-1 +kerning first=374 second=266 amount=-3 +kerning first=338 second=280 amount=-2 +kerning first=314 second=245 amount=-1 +kerning first=266 second=266 amount=-3 +kerning first=85 second=255 amount=-1 +kerning first=374 second=280 amount=-1 +kerning first=1075 second=1103 amount=-2 +kerning first=302 second=266 amount=-2 +kerning first=210 second=122 amount=-2 +kerning first=65 second=231 amount=-1 +kerning first=117 second=345 amount=-1 +kerning first=1074 second=1101 amount=-1 +kerning first=367 second=271 amount=-1 +kerning first=1047 second=1098 amount=-1 +kerning first=101 second=231 amount=-1 +kerning first=45 second=65 amount=-4 +kerning first=105 second=122 amount=-1 +kerning first=81 second=65 amount=-4 +kerning first=89 second=266 amount=-3 +kerning first=366 second=214 amount=-1 +kerning first=69 second=122 amount=-2 +kerning first=8217 second=277 amount=-3 +kerning first=377 second=80 amount=-1 +kerning first=222 second=65 amount=-4 +kerning first=364 second=67 amount=-1 +kerning first=314 second=229 amount=-2 +kerning first=350 second=229 amount=-2 +kerning first=314 second=279 amount=-1 +kerning first=211 second=217 amount=-1 +kerning first=210 second=106 amount=-1 +kerning first=263 second=305 amount=-2 +kerning first=203 second=282 amount=-2 +kerning first=246 second=106 amount=-2 +kerning first=256 second=67 amount=-3 +kerning first=98 second=103 amount=-2 +kerning first=1043 second=1084 amount=-2 +kerning first=227 second=305 amount=-1 +kerning first=83 second=346 amount=-1 +kerning first=366 second=65 amount=-4 +kerning first=211 second=68 amount=-2 +kerning first=105 second=106 amount=-2 +kerning first=220 second=67 amount=-1 +kerning first=206 second=81 amount=-2 +kerning first=8222 second=380 amount=-3 +kerning first=8216 second=328 amount=-1 +kerning first=323 second=230 amount=-2 +kerning first=296 second=346 amount=-2 +kerning first=364 second=333 amount=-2 +kerning first=235 second=353 amount=-2 +kerning first=302 second=346 amount=-2 +kerning first=371 second=305 amount=-2 +kerning first=260 second=346 amount=-3 +kerning first=251 second=230 amount=-1 +kerning first=303 second=109 amount=-2 +kerning first=287 second=230 amount=-3 +kerning first=260 second=289 amount=-3 +kerning first=65 second=243 amount=-1 +kerning first=381 second=82 amount=-1 +kerning first=202 second=204 amount=-2 +kerning first=243 second=307 amount=-1 +kerning first=8217 second=289 amount=-4 +kerning first=365 second=281 amount=-1 +kerning first=69 second=256 amount=-2 +kerning first=74 second=230 amount=-3 +kerning first=274 second=204 amount=-2 +kerning first=368 second=346 amount=-3 +kerning first=311 second=275 amount=-3 +kerning first=1025 second=1070 amount=-1 +kerning first=209 second=259 amount=-2 +kerning first=110 second=230 amount=-1 +kerning first=332 second=346 amount=-1 +kerning first=256 second=333 amount=-1 +kerning first=8216 second=225 amount=-3 +kerning first=211 second=203 amount=-2 +kerning first=314 second=243 amount=-1 +kerning first=346 second=104 amount=-2 +kerning first=90 second=332 amount=-1 +kerning first=101 second=243 amount=-1 +kerning first=74 second=244 amount=-2 +kerning first=1057 second=1060 amount=-1 +kerning first=195 second=332 amount=-3 +kerning first=279 second=307 amount=-2 +kerning first=310 second=218 amount=-2 +kerning first=206 second=243 amount=-2 +kerning first=313 second=334 amount=-1 +kerning first=8217 second=275 amount=-3 +kerning first=323 second=79 amount=-2 +kerning first=274 second=218 amount=-2 +kerning first=246 second=120 amount=-3 +kerning first=315 second=192 amount=-2 +kerning first=198 second=374 amount=-1 +kerning first=282 second=120 amount=-1 +kerning first=101 second=229 amount=-2 +kerning first=327 second=333 amount=-2 +kerning first=1045 second=1084 amount=-1 +kerning first=354 second=120 amount=-2 +kerning first=251 second=263 amount=-1 +kerning first=203 second=268 amount=-1 +kerning first=69 second=120 amount=-1 +kerning first=105 second=120 amount=-1 +kerning first=278 second=229 amount=-1 +kerning first=70 second=334 amount=-1 +kerning first=8222 second=366 amount=-3 +kerning first=345 second=347 amount=-1 +kerning first=66 second=192 amount=-5 +kerning first=210 second=120 amount=-1 +kerning first=206 second=229 amount=-2 +kerning first=365 second=279 amount=-1 +kerning first=253 second=242 amount=-3 +kerning first=249 second=229 amount=-1 +kerning first=205 second=289 amount=-3 +kerning first=258 second=339 amount=-1 +kerning first=368 second=232 amount=-2 +kerning first=217 second=242 amount=-2 +kerning first=241 second=289 amount=-2 +kerning first=117 second=339 amount=-1 +kerning first=325 second=242 amount=-2 +kerning first=352 second=99 amount=-1 +kerning first=87 second=109 amount=-3 +kerning first=277 second=289 amount=-3 +kerning first=289 second=242 amount=-2 +kerning first=213 second=229 amount=-1 +kerning first=316 second=99 amount=-1 +kerning first=313 second=289 amount=-3 +kerning first=366 second=339 amount=-2 +kerning first=260 second=232 amount=-1 +kerning first=221 second=279 amount=-3 +kerning first=1072 second=1096 amount=-1 +kerning first=76 second=106 amount=-2 +kerning first=278 second=89 amount=-1 +kerning first=224 second=232 amount=-1 +kerning first=1108 second=1096 amount=-1 +kerning first=268 second=282 amount=-3 +kerning first=330 second=339 amount=-2 +kerning first=116 second=119 amount=-1 +kerning first=296 second=232 amount=-2 +kerning first=257 second=279 amount=-1 +kerning first=201 second=379 amount=-1 +kerning first=83 second=232 amount=-1 +kerning first=253 second=106 amount=-2 +kerning first=221 second=119 amount=-3 +kerning first=90 second=346 amount=-1 +kerning first=112 second=106 amount=-2 +kerning first=257 second=119 amount=-3 +kerning first=1038 second=1072 amount=-4 +kerning first=119 second=232 amount=-3 +kerning first=103 second=99 amount=-2 +kerning first=8220 second=218 amount=-1 +kerning first=365 second=119 amount=-3 +kerning first=8222 second=254 amount=-1 +kerning first=67 second=99 amount=-2 +kerning first=377 second=82 amount=-1 +kerning first=1058 second=1116 amount=-2 +kerning first=203 second=344 amount=-2 +kerning first=100 second=289 amount=-2 +kerning first=381 second=379 amount=-1 +kerning first=368 second=275 amount=-2 +kerning first=195 second=346 amount=-3 +kerning first=68 second=44 amount=-3 +kerning first=89 second=361 amount=-2 +kerning first=211 second=66 amount=-2 +kerning first=107 second=267 amount=-3 +kerning first=274 second=212 amount=-1 +kerning first=107 second=269 amount=-3 +kerning first=104 second=316 amount=-1 +kerning first=1043 second=1072 amount=-3 +kerning first=258 second=79 amount=-3 +kerning first=8222 second=381 amount=-1 +kerning first=222 second=69 amount=-2 +kerning first=245 second=316 amount=-2 +kerning first=90 second=72 amount=-1 +kerning first=81 second=69 amount=-2 +kerning first=366 second=79 amount=-1 +kerning first=86 second=199 amount=-3 +kerning first=193 second=216 amount=-3 +kerning first=356 second=269 amount=-3 +kerning first=1063 second=1089 amount=-1 +kerning first=1088 second=1076 amount=-2 +kerning first=363 second=8217 amount=-3 +kerning first=1027 second=1089 amount=-3 +kerning first=330 second=79 amount=-2 +kerning first=72 second=229 amount=-2 +kerning first=1099 second=1089 amount=-1 +kerning first=272 second=192 amount=-4 +kerning first=108 second=229 amount=-2 +kerning first=90 second=76 amount=-1 +kerning first=65 second=89 amount=-6 +kerning first=310 second=212 amount=-3 +kerning first=211 second=205 amount=-2 +kerning first=88 second=216 amount=-3 +kerning first=200 second=192 amount=-2 +kerning first=192 second=8221 amount=-5 +kerning first=235 second=245 amount=-1 +kerning first=267 second=226 amount=-2 +kerning first=8222 second=368 amount=-3 +kerning first=228 second=8221 amount=-3 +kerning first=218 second=46 amount=-5 +kerning first=199 second=245 amount=-2 +kerning first=303 second=226 amount=-2 +kerning first=370 second=102 amount=-1 +kerning first=8250 second=324 amount=-2 +kerning first=339 second=226 amount=-2 +kerning first=82 second=286 amount=-3 +kerning first=375 second=226 amount=-3 +kerning first=242 second=229 amount=-1 +kerning first=381 second=266 amount=-1 +kerning first=1117 second=1086 amount=-1 +kerning first=379 second=245 amount=-1 +kerning first=216 second=46 amount=-3 +kerning first=1081 second=1086 amount=-1 +kerning first=1025 second=1083 amount=-1 +kerning first=226 second=102 amount=-1 +kerning first=307 second=245 amount=-1 +kerning first=1061 second=1083 amount=-2 +kerning first=262 second=102 amount=-2 +kerning first=216 second=296 amount=-2 +kerning first=317 second=316 amount=-2 +kerning first=263 second=45 amount=-2 +kerning first=288 second=296 amount=-1 +kerning first=353 second=316 amount=-2 +kerning first=371 second=45 amount=-2 +kerning first=280 second=252 amount=-2 +kerning first=272 second=202 amount=-2 +kerning first=84 second=290 amount=-3 +kerning first=108 second=335 amount=-1 +kerning first=200 second=202 amount=-2 +kerning first=67 second=252 amount=-2 +kerning first=249 second=335 amount=-1 +kerning first=231 second=226 amount=-2 +kerning first=103 second=252 amount=-1 +kerning first=202 second=206 amount=-2 +kerning first=264 second=259 amount=-2 +kerning first=291 second=116 amount=-1 +kerning first=85 second=253 amount=-1 +kerning first=284 second=171 amount=-3 +kerning first=255 second=116 amount=-1 +kerning first=197 second=356 amount=-6 +kerning first=274 second=206 amount=-2 +kerning first=336 second=259 amount=-1 +kerning first=363 second=116 amount=-1 +kerning first=379 second=103 amount=-3 +kerning first=325 second=246 amount=-2 +kerning first=377 second=200 amount=-1 +kerning first=226 second=253 amount=-3 +kerning first=196 second=79 amount=-3 +kerning first=346 second=206 amount=-3 +kerning first=87 second=259 amount=-5 +kerning first=316 second=252 amount=-2 +kerning first=307 second=103 amount=-3 +kerning first=230 second=100 amount=-1 +kerning first=1079 second=1082 amount=-1 +kerning first=253 second=246 amount=-3 +kerning first=352 second=252 amount=-1 +kerning first=217 second=246 amount=-2 +kerning first=381 second=375 amount=-3 +kerning first=65 second=83 amount=-3 +kerning first=235 second=103 amount=-3 +kerning first=212 second=323 amount=-2 +kerning first=203 second=122 amount=-2 +kerning first=246 second=382 amount=-2 +kerning first=379 second=369 amount=-3 +kerning first=282 second=382 amount=-2 +kerning first=206 second=83 amount=-2 +kerning first=98 second=122 amount=-2 +kerning first=201 second=266 amount=-1 +kerning first=262 second=362 amount=-2 +kerning first=354 second=382 amount=-3 +kerning first=80 second=279 amount=-1 +kerning first=278 second=83 amount=-2 +kerning first=347 second=122 amount=-2 +kerning first=69 second=382 amount=-2 +kerning first=235 second=369 amount=-2 +kerning first=377 second=356 amount=-2 +kerning first=105 second=382 amount=-1 +kerning first=199 second=369 amount=-2 +kerning first=90 second=336 amount=-1 +kerning first=350 second=83 amount=-1 +kerning first=275 second=122 amount=-2 +kerning first=307 second=369 amount=-1 +kerning first=264 second=109 amount=-1 +kerning first=210 second=382 amount=-2 +kerning first=195 second=336 amount=-3 +kerning first=1119 second=1105 amount=-1 +kerning first=253 second=248 amount=-3 +kerning first=69 second=380 amount=-2 +kerning first=1079 second=1080 amount=-1 +kerning first=289 second=248 amount=-2 +kerning first=105 second=380 amount=-1 +kerning first=257 second=273 amount=-1 +kerning first=1083 second=1105 amount=-1 +kerning first=317 second=198 amount=-2 +kerning first=217 second=248 amount=-2 +kerning first=249 second=223 amount=-1 +kerning first=210 second=380 amount=-2 +kerning first=363 second=263 amount=-1 +kerning first=68 second=198 amount=-4 +kerning first=202 second=330 amount=-2 +kerning first=269 second=233 amount=-1 +kerning first=1077 second=1107 amount=-1 +kerning first=201 second=115 amount=-1 +kerning first=101 second=355 amount=-1 +kerning first=233 second=233 amount=-1 +kerning first=65 second=355 amount=-1 +kerning first=219 second=263 amount=-2 +kerning first=321 second=73 amount=-2 +kerning first=350 second=355 amount=-1 +kerning first=255 second=263 amount=-3 +kerning first=103 second=365 amount=-1 +kerning first=314 second=355 amount=-1 +kerning first=291 second=263 amount=-2 +kerning first=67 second=365 amount=-2 +kerning first=84 second=298 amount=-1 +kerning first=200 second=315 amount=-2 +kerning first=345 second=115 amount=-1 +kerning first=377 second=233 amount=-1 +kerning first=381 second=115 amount=-2 +kerning first=242 second=355 amount=-1 +kerning first=1045 second=1090 amount=-3 +kerning first=78 second=263 amount=-2 +kerning first=213 second=73 amount=-2 +kerning first=213 second=75 amount=-2 +kerning first=219 second=110 amount=-2 +kerning first=325 second=248 amount=-2 +kerning first=255 second=110 amount=-2 +kerning first=86 second=313 amount=-1 +kerning first=1044 second=1092 amount=-1 +kerning first=291 second=110 amount=-1 +kerning first=376 second=290 amount=-3 +kerning first=207 second=303 amount=-1 +kerning first=112 second=98 amount=-1 +kerning first=1091 second=1108 amount=-2 +kerning first=99 second=225 amount=-2 +kerning first=363 second=110 amount=-1 +kerning first=66 second=303 amount=-3 +kerning first=197 second=350 amount=-3 +kerning first=106 second=328 amount=-2 +kerning first=76 second=98 amount=-2 +kerning first=321 second=75 amount=-2 +kerning first=199 second=363 amount=-2 +kerning first=70 second=328 amount=-1 +kerning first=235 second=363 amount=-2 +kerning first=272 second=315 amount=-2 +kerning first=268 second=290 amount=-3 +kerning first=321 second=221 amount=-3 +kerning first=351 second=303 amount=-2 +kerning first=307 second=363 amount=-1 +kerning first=65 second=235 amount=-1 +kerning first=317 second=196 amount=-2 +kerning first=243 second=303 amount=-1 +kerning first=283 second=328 amount=-2 +kerning first=73 second=248 amount=-2 +kerning first=101 second=235 amount=-1 +kerning first=279 second=303 amount=-2 +kerning first=377 second=350 amount=-1 +kerning first=379 second=363 amount=-3 +kerning first=68 second=196 amount=-4 +kerning first=201 second=260 amount=-2 +kerning first=85 second=102 amount=-1 +kerning first=196 second=290 amount=-3 +kerning first=1054 second=1093 amount=-1 +kerning first=326 second=46 amount=-1 +kerning first=204 second=225 amount=-2 +kerning first=246 second=380 amount=-2 +kerning first=195 second=338 amount=-3 +kerning first=362 second=46 amount=-5 +kerning first=240 second=225 amount=-1 +kerning first=282 second=380 amount=-2 +kerning first=289 second=98 amount=-1 +kerning first=316 second=237 amount=-1 +kerning first=79 second=325 amount=-2 +kerning first=365 second=273 amount=-1 +kerning first=253 second=98 amount=-1 +kerning first=354 second=380 amount=-3 +kerning first=381 second=260 amount=-1 +kerning first=1101 second=1102 amount=-1 +kerning first=69 second=112 amount=-2 +kerning first=1061 second=1077 amount=-2 +kerning first=87 second=377 amount=-3 +kerning first=8222 second=374 amount=-6 +kerning first=280 second=367 amount=-2 +kerning first=1097 second=1077 amount=-1 +kerning first=65 second=87 amount=-6 +kerning first=78 second=261 amount=-2 +kerning first=316 second=367 amount=-2 +kerning first=196 second=318 amount=-2 +kerning first=79 second=327 amount=-2 +kerning first=114 second=261 amount=-1 +kerning first=8217 second=283 amount=-3 +kerning first=332 second=86 amount=-2 +kerning first=1057 second=1052 amount=-1 +kerning first=83 second=352 amount=-1 +kerning first=244 second=367 amount=-1 +kerning first=310 second=210 amount=-3 +kerning first=264 second=377 amount=-2 +kerning first=103 second=367 amount=-1 +kerning first=274 second=210 amount=-1 +kerning first=283 second=326 amount=-2 +kerning first=251 second=351 amount=-2 +kerning first=70 second=211 amount=-1 +kerning first=296 second=352 amount=-2 +kerning first=202 second=210 amount=-1 +kerning first=260 second=352 amount=-3 +kerning first=67 second=367 amount=-2 +kerning first=288 second=302 amount=-1 +kerning first=70 second=326 amount=-1 +kerning first=363 second=261 amount=-1 +kerning first=354 second=112 amount=-2 +kerning first=352 second=250 amount=-1 +kerning first=206 second=235 amount=-2 +kerning first=106 second=326 amount=-2 +kerning first=216 second=302 amount=-2 +kerning first=336 second=377 amount=-2 +kerning first=73 second=287 amount=-3 +kerning first=1081 second=1092 amount=-1 +kerning first=100 second=171 amount=-2 +kerning first=282 second=112 amount=-2 +kerning first=264 second=255 amount=-1 +kerning first=1117 second=1092 amount=-1 +kerning first=246 second=112 amount=-1 +kerning first=244 second=250 amount=-1 +kerning first=8216 second=217 amount=-1 +kerning first=314 second=235 amount=-1 +kerning first=219 second=261 amount=-3 +kerning first=210 second=112 amount=-1 +kerning first=350 second=235 amount=-1 +kerning first=109 second=287 amount=-2 +kerning first=255 second=261 amount=-3 +kerning first=316 second=250 amount=-2 +kerning first=1092 second=1103 amount=-2 +kerning first=250 second=287 amount=-3 +kerning first=291 second=261 amount=-3 +kerning first=105 second=112 amount=-1 +kerning first=280 second=250 amount=-2 +kerning first=1056 second=1103 amount=-3 +kerning first=214 second=287 amount=-1 +kerning first=118 second=257 amount=-3 +kerning first=67 second=250 amount=-2 +kerning first=291 second=378 amount=-3 +kerning first=76 second=366 amount=-3 +kerning first=282 second=262 amount=-1 +kerning first=278 second=237 amount=-1 +kerning first=251 second=353 amount=-2 +kerning first=255 second=378 amount=-3 +kerning first=242 second=237 amount=-1 +kerning first=286 second=287 amount=-3 +kerning first=107 second=275 amount=-3 +kerning first=287 second=353 amount=-3 +kerning first=363 second=378 amount=-2 +kerning first=354 second=262 amount=-3 +kerning first=206 second=237 amount=-1 +kerning first=323 second=353 amount=-2 +kerning first=103 second=250 amount=-1 +kerning first=327 second=378 amount=-1 +kerning first=352 second=365 amount=-1 +kerning first=325 second=100 amount=-2 +kerning first=352 second=369 amount=-1 +kerning first=316 second=365 amount=-2 +kerning first=101 second=237 amount=-2 +kerning first=74 second=353 amount=-2 +kerning first=1116 second=1095 amount=-1 +kerning first=78 second=378 amount=-1 +kerning first=280 second=365 amount=-2 +kerning first=83 second=45 amount=-3 +kerning first=65 second=237 amount=-1 +kerning first=199 second=277 amount=-2 +kerning first=110 second=353 amount=-1 +kerning first=241 second=171 amount=-3 +kerning first=219 second=378 amount=-3 +kerning first=244 second=365 amount=-1 +kerning first=381 second=113 amount=-1 +kerning first=218 second=197 amount=-4 +kerning first=313 second=171 amount=-1 +kerning first=350 second=87 amount=-3 +kerning first=368 second=352 amount=-3 +kerning first=1049 second=1117 amount=-1 +kerning first=217 second=100 amount=-2 +kerning first=198 second=85 amount=-2 +kerning first=226 second=249 amount=-1 +kerning first=332 second=352 amount=-1 +kerning first=315 second=338 amount=-1 +kerning first=290 second=197 amount=-3 +kerning first=253 second=100 amount=-3 +kerning first=278 second=87 amount=-1 +kerning first=85 second=249 amount=-1 +kerning first=289 second=100 amount=-2 +kerning first=121 second=249 amount=-1 +kerning first=69 second=262 amount=-1 +kerning first=356 second=275 amount=-3 +kerning first=362 second=197 amount=-4 +kerning first=1065 second=1104 amount=-1 +kerning first=82 second=288 amount=-3 +kerning first=370 second=249 amount=-1 +kerning first=263 second=115 amount=-2 +kerning first=321 second=223 amount=-1 +kerning first=262 second=249 amount=-2 +kerning first=1088 second=1078 amount=-1 +kerning first=298 second=249 amount=-1 +kerning first=1054 second=1091 amount=-1 +kerning first=204 second=74 amount=-1 +kerning first=282 second=288 amount=-1 +kerning first=66 second=113 amount=-1 +kerning first=199 second=87 amount=-1 +kerning first=1100 second=1096 amount=-1 +kerning first=107 second=243 amount=-3 +kerning first=113 second=314 amount=-2 +kerning first=354 second=288 amount=-3 +kerning first=369 second=106 amount=-2 +kerning first=254 second=314 amount=-2 +kerning first=8217 second=118 amount=-1 +kerning first=8216 second=114 amount=-1 +kerning first=1030 second=1092 amount=-1 +kerning first=307 second=333 amount=-1 +kerning first=326 second=314 amount=-1 +kerning first=69 second=288 amount=-1 +kerning first=207 second=113 amount=-2 +kerning first=290 second=314 amount=-1 +kerning first=366 second=210 amount=-1 +kerning first=379 second=333 amount=-1 +kerning first=267 second=281 amount=-1 +kerning first=84 second=366 amount=-1 +kerning first=256 second=269 amount=-1 +kerning first=330 second=210 amount=-2 +kerning first=1074 second=1118 amount=-2 +kerning first=102 second=113 amount=-1 +kerning first=220 second=269 amount=-2 +kerning first=227 second=307 amount=-1 +kerning first=263 second=307 amount=-2 +kerning first=364 second=255 amount=-1 +kerning first=8220 second=375 amount=-1 +kerning first=84 second=120 amount=-2 +kerning first=196 second=83 amount=-3 +kerning first=328 second=255 amount=-2 +kerning first=231 second=224 amount=-2 +kerning first=120 second=120 amount=-1 +kerning first=82 second=268 amount=-3 +kerning first=335 second=307 amount=-1 +kerning first=364 second=269 amount=-2 +kerning first=192 second=281 amount=-1 +kerning first=202 second=262 amount=-1 +kerning first=371 second=307 amount=-1 +kerning first=256 second=255 amount=-3 +kerning first=303 second=224 amount=-2 +kerning first=1086 second=1078 amount=-1 +kerning first=281 second=244 amount=-1 +kerning first=267 second=224 amount=-2 +kerning first=264 second=281 amount=-2 +kerning first=274 second=262 amount=-1 +kerning first=375 second=224 amount=-3 +kerning first=356 second=243 amount=-3 +kerning first=310 second=262 amount=-3 +kerning first=115 second=255 amount=-3 +kerning first=339 second=224 amount=-2 +kerning first=187 second=198 amount=-4 +kerning first=207 second=99 amount=-2 +kerning first=67 second=101 amount=-2 +kerning first=369 second=120 amount=-2 +kerning first=103 second=101 amount=-2 +kerning first=74 second=331 amount=-1 +kerning first=376 second=275 amount=-3 +kerning first=354 second=274 amount=-1 +kerning first=212 second=229 amount=-1 +kerning first=279 second=99 amount=-1 +kerning first=382 second=248 amount=-1 +kerning first=71 second=229 amount=-1 +kerning first=282 second=274 amount=-2 +kerning first=107 second=229 amount=-2 +kerning first=202 second=362 amount=-2 +kerning first=8216 second=100 amount=-3 +kerning first=8220 second=122 amount=-1 +kerning first=310 second=248 amount=-2 +kerning first=225 second=120 amount=-1 +kerning first=272 second=75 amount=-2 +kerning first=346 second=248 amount=-1 +kerning first=305 second=118 amount=-3 +kerning first=261 second=120 amount=-1 +kerning first=356 second=229 amount=-5 +kerning first=316 second=101 amount=-1 +kerning first=199 second=73 amount=-3 +kerning first=352 second=101 amount=-1 +kerning first=200 second=75 amount=-2 +kerning first=377 second=118 amount=-2 +kerning first=333 second=120 amount=-3 +kerning first=284 second=229 amount=-1 +kerning first=346 second=8220 amount=-2 +kerning first=197 second=118 amount=-3 +kerning first=310 second=8220 amount=-2 +kerning first=269 second=118 amount=-2 +kerning first=279 second=113 amount=-1 +kerning first=366 second=196 amount=-4 +kerning first=233 second=118 amount=-2 +kerning first=364 second=241 amount=-2 +kerning first=81 second=230 amount=-1 +kerning first=328 second=241 amount=-1 +kerning first=333 second=106 amount=-2 +kerning first=379 second=87 amount=-2 +kerning first=102 second=99 amount=-1 +kerning first=290 second=68 amount=-1 +kerning first=225 second=106 amount=-1 +kerning first=66 second=99 amount=-1 +kerning first=261 second=106 amount=3 +kerning first=76 second=80 amount=-2 +kerning first=374 second=364 amount=-1 +kerning first=259 second=271 amount=-1 +kerning first=227 second=248 amount=-1 +kerning first=251 second=111 amount=-1 +kerning first=259 second=109 amount=-1 +kerning first=235 second=361 amount=-2 +kerning first=69 second=316 amount=-1 +kerning first=194 second=264 amount=-3 +kerning first=287 second=111 amount=-2 +kerning first=105 second=316 amount=-2 +kerning first=323 second=111 amount=-2 +kerning first=307 second=361 amount=-1 +kerning first=89 second=264 amount=-3 +kerning first=1073 second=1116 amount=-1 +kerning first=74 second=111 amount=-2 +kerning first=1037 second=1116 amount=-1 +kerning first=379 second=361 amount=-3 +kerning first=246 second=316 amount=-2 +kerning first=290 second=82 amount=-1 +kerning first=337 second=118 amount=-2 +kerning first=197 second=364 amount=-3 +kerning first=228 second=267 amount=-1 +kerning first=76 second=66 amount=-2 +kerning first=356 second=257 amount=-5 +kerning first=264 second=267 amount=-2 +kerning first=269 second=104 amount=-2 +kerning first=75 second=351 amount=-1 +kerning first=1101 second=1116 amount=-1 +kerning first=202 second=44 amount=-1 +kerning first=344 second=89 amount=-3 +kerning first=233 second=104 amount=-2 +kerning first=1069 second=1093 amount=-1 +kerning first=197 second=104 amount=-2 +kerning first=274 second=44 amount=-1 +kerning first=1048 second=1057 amount=-1 +kerning first=8216 second=346 amount=-1 +kerning first=313 second=205 amount=-2 +kerning first=200 second=89 amount=-1 +kerning first=379 second=44 amount=-1 +kerning first=87 second=323 amount=-1 +kerning first=210 second=274 amount=-2 +kerning first=199 second=361 amount=-2 +kerning first=97 second=44 amount=-1 +kerning first=272 second=89 amount=-2 +kerning first=8216 second=86 amount=-1 +kerning first=334 second=368 amount=-1 +kerning first=323 second=97 amount=-2 +kerning first=217 second=326 amount=-2 +kerning first=338 second=250 amount=-2 +kerning first=210 second=302 amount=-2 +kerning first=331 second=226 amount=-1 +kerning first=253 second=326 amount=-2 +kerning first=307 second=347 amount=-2 +kerning first=264 second=323 amount=-3 +kerning first=302 second=250 amount=-2 +kerning first=367 second=226 amount=-1 +kerning first=1050 second=1054 amount=-4 +kerning first=251 second=97 amount=-1 +kerning first=289 second=326 amount=-1 +kerning first=87 second=281 amount=-3 +kerning first=203 second=278 amount=-2 +kerning first=76 second=354 amount=-3 +kerning first=275 second=8250 amount=-2 +kerning first=287 second=97 amount=-3 +kerning first=235 second=347 amount=-2 +kerning first=336 second=323 amount=-2 +kerning first=374 second=250 amount=-2 +kerning first=69 second=302 amount=-2 +kerning first=224 second=244 amount=-1 +kerning first=103 second=97 amount=-3 +kerning first=199 second=347 amount=-2 +kerning first=194 second=250 amount=-3 +kerning first=68 second=323 amount=-2 +kerning first=76 second=326 amount=-1 +kerning first=251 second=371 amount=-1 +kerning first=8216 second=374 amount=-1 +kerning first=112 second=326 amount=-1 +kerning first=205 second=233 amount=-2 +kerning first=266 second=250 amount=-2 +kerning first=287 second=371 amount=-1 +kerning first=1102 second=1078 amount=-1 +kerning first=230 second=250 amount=-2 +kerning first=1048 second=1099 amount=-1 +kerning first=277 second=233 amount=-1 +kerning first=82 second=212 amount=-3 +kerning first=272 second=103 amount=-1 +kerning first=231 second=110 amount=-2 +kerning first=377 second=90 amount=-1 +kerning first=284 second=257 amount=-1 +kerning first=236 second=103 amount=-3 +kerning first=269 second=378 amount=-2 +kerning first=199 second=45 amount=-4 +kerning first=235 second=333 amount=-1 +kerning first=200 second=103 amount=-3 +kerning first=313 second=219 amount=-3 +kerning first=89 second=250 amount=-2 +kerning first=377 second=378 amount=-3 +kerning first=82 second=226 amount=-2 +kerning first=212 second=257 amount=-1 +kerning first=199 second=333 amount=-2 +kerning first=118 second=226 amount=-3 +kerning first=248 second=257 amount=-1 +kerning first=374 second=264 amount=-3 +kerning first=354 second=302 amount=-1 +kerning first=187 second=226 amount=-1 +kerning first=379 second=45 amount=-3 +kerning first=338 second=264 amount=-1 +kerning first=223 second=226 amount=-1 +kerning first=113 second=110 amount=-2 +kerning first=1048 second=1085 amount=-1 +kerning first=302 second=264 amount=-2 +kerning first=233 second=378 amount=-2 +kerning first=282 second=302 amount=-2 +kerning first=259 second=226 amount=-1 +kerning first=379 second=347 amount=-2 +kerning first=266 second=264 amount=-3 +kerning first=97 second=8217 amount=-3 +kerning first=295 second=226 amount=-1 +kerning first=71 second=257 amount=-1 +kerning first=218 second=110 amount=-2 +kerning first=1045 second=1114 amount=-1 +kerning first=254 second=110 amount=-1 +kerning first=259 second=240 amount=-1 +kerning first=315 second=362 amount=-3 +kerning first=200 second=363 amount=-2 +kerning first=118 second=240 amount=-3 +kerning first=1073 second=1088 amount=-1 +kerning first=89 second=194 amount=-6 +kerning first=254 second=227 amount=-1 +kerning first=326 second=110 amount=-1 +kerning first=65 second=210 amount=-3 +kerning first=323 second=214 amount=-2 +kerning first=362 second=110 amount=-2 +kerning first=367 second=240 amount=-1 +kerning first=8216 second=351 amount=-2 +kerning first=202 second=220 amount=-2 +kerning first=206 second=275 amount=-2 +kerning first=1094 second=1108 amount=-1 +kerning first=1037 second=1088 amount=-1 +kerning first=74 second=214 amount=-2 +kerning first=8216 second=242 amount=-3 +kerning first=344 second=363 amount=-2 +kerning first=202 second=318 amount=-1 +kerning first=325 second=284 amount=-2 +kerning first=380 second=363 amount=-2 +kerning first=66 second=71 amount=-3 +kerning first=346 second=220 amount=-3 +kerning first=108 second=259 amount=-2 +kerning first=310 second=318 amount=-1 +kerning first=232 second=116 amount=-1 +kerning first=336 second=77 amount=-2 +kerning first=282 second=330 amount=-2 +kerning first=286 second=369 amount=-1 +kerning first=249 second=259 amount=-1 +kerning first=346 second=318 amount=-2 +kerning first=100 second=8221 amount=-2 +kerning first=274 second=220 amount=-2 +kerning first=84 second=324 amount=-3 +kerning first=250 second=369 amount=-1 +kerning first=213 second=259 amount=-1 +kerning first=382 second=318 amount=-2 +kerning first=264 second=77 amount=-3 +kerning first=352 second=375 amount=-2 +kerning first=346 second=304 amount=-3 +kerning first=210 second=330 amount=-2 +kerning first=338 second=194 amount=-2 +kerning first=82 second=240 amount=-3 +kerning first=374 second=194 amount=-6 +kerning first=274 second=304 amount=-2 +kerning first=74 second=97 amount=-3 +kerning first=109 second=369 amount=-1 +kerning first=72 second=259 amount=-2 +kerning first=196 second=116 amount=-1 +kerning first=266 second=194 amount=-3 +kerning first=110 second=97 amount=-1 +kerning first=73 second=369 amount=-2 +kerning first=202 second=304 amount=-2 +kerning first=354 second=330 amount=-1 +kerning first=1037 second=1102 amount=-1 +kerning first=122 second=279 amount=-1 +kerning first=118 second=254 amount=-1 +kerning first=333 second=324 amount=-1 +kerning first=86 second=279 amount=-3 +kerning first=291 second=253 amount=-1 +kerning first=103 second=375 amount=-1 +kerning first=187 second=254 amount=-1 +kerning first=227 second=279 amount=-1 +kerning first=327 second=253 amount=-2 +kerning first=67 second=375 amount=-1 +kerning first=1047 second=1055 amount=-2 +kerning first=110 second=228 amount=-1 +kerning first=223 second=254 amount=-1 +kerning first=363 second=253 amount=-3 +kerning first=74 second=228 amount=-2 +kerning first=259 second=254 amount=-1 +kerning first=200 second=377 amount=-1 +kerning first=194 second=81 amount=-3 +kerning first=316 second=375 amount=-3 +kerning first=69 second=330 amount=-2 +kerning first=354 second=344 amount=-1 +kerning first=120 second=324 amount=-1 +kerning first=244 second=375 amount=-3 +kerning first=108 second=273 amount=-1 +kerning first=364 second=117 amount=-1 +kerning first=82 second=254 amount=-3 +kerning first=225 second=324 amount=-1 +kerning first=217 second=284 amount=-1 +kerning first=316 second=253 amount=-3 +kerning first=76 second=298 amount=-2 +kerning first=310 second=234 amount=-2 +kerning first=210 second=344 amount=-2 +kerning first=84 second=310 amount=-1 +kerning first=315 second=251 amount=-2 +kerning first=70 second=332 amount=-1 +kerning first=250 second=355 amount=-1 +kerning first=346 second=234 amount=-1 +kerning first=1058 second=1108 amount=-1 +kerning first=272 second=377 amount=-2 +kerning first=1113 second=1103 amount=-2 +kerning first=382 second=234 amount=-1 +kerning first=282 second=344 amount=-2 +kerning first=1077 second=1103 amount=-1 +kerning first=371 second=378 amount=-1 +kerning first=97 second=234 amount=-1 +kerning first=108 second=287 amount=-3 +kerning first=78 second=253 amount=-2 +kerning first=1045 second=1100 amount=-1 +kerning first=263 second=279 amount=-1 +kerning first=76 second=284 amount=-1 +kerning first=72 second=287 amount=-3 +kerning first=69 second=344 amount=-2 +kerning first=213 second=287 amount=-1 +kerning first=198 second=8249 amount=-2 +kerning first=1098 second=1119 amount=-1 +kerning first=219 second=253 amount=-1 +kerning first=344 second=335 amount=-3 +kerning first=83 second=242 amount=-1 +kerning first=202 second=290 amount=-1 +kerning first=221 second=313 amount=-1 +kerning first=249 second=287 amount=-3 +kerning first=8250 second=249 amount=-1 +kerning first=213 second=8217 amount=-2 +kerning first=76 second=270 amount=-2 +kerning first=278 second=315 amount=-2 +kerning first=249 second=8217 amount=-3 +kerning first=112 second=109 amount=-1 +kerning first=274 second=290 amount=-1 +kerning first=84 second=338 amount=-3 +kerning first=310 second=121 amount=-3 +kerning first=119 second=242 amount=-3 +kerning first=260 second=242 amount=-1 +kerning first=336 second=105 amount=-1 +kerning first=236 second=335 amount=-1 +kerning first=196 second=101 amount=-1 +kerning first=224 second=242 amount=-1 +kerning first=369 second=380 amount=-2 +kerning first=228 second=105 amount=-1 +kerning first=347 second=367 amount=-1 +kerning first=85 second=197 amount=-4 +kerning first=264 second=105 amount=-1 +kerning first=1055 second=1057 amount=-1 +kerning first=108 second=8217 amount=-3 +kerning first=296 second=242 amount=-2 +kerning first=335 second=116 amount=-1 +kerning first=114 second=225 amount=-1 +kerning first=1037 second=1060 amount=-1 +kerning first=274 second=327 amount=-2 +kerning first=192 second=105 amount=-1 +kerning first=1058 second=1094 amount=-2 +kerning first=76 second=353 amount=-1 +kerning first=1077 second=1117 amount=-1 +kerning first=368 second=242 amount=-2 +kerning first=225 second=380 amount=-1 +kerning first=219 second=225 amount=-3 +kerning first=225 second=226 amount=-1 +kerning first=262 second=197 amount=-3 +kerning first=261 second=380 amount=-1 +kerning first=87 second=105 amount=-2 +kerning first=97 second=248 amount=-1 +kerning first=350 second=315 amount=-3 +kerning first=201 second=119 amount=-1 +kerning first=321 second=8217 amount=-4 +kerning first=334 second=197 amount=-4 +kerning first=323 second=228 amount=-2 +kerning first=370 second=197 amount=-4 +kerning first=287 second=228 amount=-3 +kerning first=262 second=108 amount=-1 +kerning first=84 second=380 amount=-3 +kerning first=78 second=225 amount=-2 +kerning first=8220 second=101 amount=-3 +kerning first=1047 second=1083 amount=-1 +kerning first=251 second=228 amount=-1 +kerning first=226 second=108 amount=-1 +kerning first=120 second=380 amount=-2 +kerning first=45 second=221 amount=-4 +kerning first=226 second=122 amount=-1 +kerning first=72 second=231 amount=-2 +kerning first=347 second=46 amount=-2 +kerning first=203 second=74 amount=-1 +kerning first=381 second=119 amount=-2 +kerning first=76 second=256 amount=-2 +kerning first=84 second=352 amount=-3 +kerning first=121 second=122 amount=-3 +kerning first=196 second=102 amount=-1 +kerning first=75 second=240 amount=-2 +kerning first=85 second=122 amount=-3 +kerning first=232 second=102 amount=-2 +kerning first=69 second=289 amount=-3 +kerning first=291 second=225 amount=-3 +kerning first=370 second=122 amount=-3 +kerning first=249 second=231 amount=-1 +kerning first=203 second=46 amount=-1 +kerning first=327 second=225 amount=-2 +kerning first=334 second=122 amount=-2 +kerning first=207 second=71 amount=-2 +kerning first=376 second=116 amount=-1 +kerning first=334 second=313 amount=-2 +kerning first=363 second=225 amount=-1 +kerning first=298 second=122 amount=-1 +kerning first=307 second=117 amount=-1 +kerning first=315 second=71 amount=-1 +kerning first=122 second=307 amount=-1 +kerning first=217 second=256 amount=-4 +kerning first=262 second=122 amount=-2 +kerning first=311 second=46 amount=-1 +kerning first=87 second=77 amount=-1 +kerning first=228 second=250 amount=-1 +kerning first=249 second=245 amount=-1 +kerning first=98 second=46 amount=-3 +kerning first=120 second=281 amount=-2 +kerning first=219 second=211 amount=-1 +kerning first=83 second=379 amount=-1 +kerning first=209 second=44 amount=-1 +kerning first=108 second=245 amount=-1 +kerning first=310 second=290 amount=-3 +kerning first=268 second=102 amount=-2 +kerning first=219 second=347 amount=-2 +kerning first=1045 second=1098 amount=-3 +kerning first=327 second=211 amount=-2 +kerning first=376 second=102 amount=-1 +kerning first=317 second=216 amount=-1 +kerning first=106 second=171 amount=-3 +kerning first=203 second=112 amount=-2 +kerning first=1052 second=1086 amount=-1 +kerning first=211 second=171 amount=-1 +kerning first=98 second=112 amount=-1 +kerning first=103 second=223 amount=-1 +kerning first=370 second=211 amount=-1 +kerning first=337 second=107 amount=-1 +kerning first=204 second=382 amount=-1 +kerning first=209 second=216 amount=-2 +kerning first=88 second=107 amount=-1 +kerning first=235 second=8221 amount=-2 +kerning first=229 second=107 amount=-1 +kerning first=70 second=171 amount=-3 +kerning first=193 second=107 amount=-2 +kerning first=365 second=105 amount=-2 +kerning first=377 second=257 amount=-1 +kerning first=298 second=235 amount=-2 +kerning first=257 second=105 amount=-1 +kerning first=67 second=70 amount=-3 +kerning first=1044 second=1098 amount=-1 +kerning first=370 second=235 amount=-2 +kerning first=307 second=8221 amount=-2 +kerning first=221 second=105 amount=-2 +kerning first=1116 second=1098 amount=-1 +kerning first=347 second=112 amount=-3 +kerning first=221 second=81 amount=-3 +kerning first=1056 second=1077 amount=-1 +kerning first=116 second=105 amount=-1 +kerning first=311 second=112 amount=-1 +kerning first=8222 second=354 amount=-6 +kerning first=355 second=171 amount=-1 +kerning first=283 second=100 amount=-1 +kerning first=275 second=112 amount=-1 +kerning first=268 second=296 amount=-3 +kerning first=1054 second=1041 amount=-1 +kerning first=73 second=67 amount=-2 +kerning first=214 second=327 amount=-2 +kerning first=350 second=249 amount=-1 +kerning first=376 second=296 amount=-1 +kerning first=234 second=251 amount=-2 +kerning first=277 second=275 amount=-1 +kerning first=117 second=353 amount=-2 +kerning first=198 second=251 amount=-2 +kerning first=8217 second=233 amount=-3 +kerning first=195 second=117 amount=-3 +kerning first=106 second=100 amount=-1 +kerning first=208 second=204 amount=-2 +kerning first=314 second=249 amount=-2 +kerning first=205 second=275 amount=-2 +kerning first=111 second=380 amount=-2 +kerning first=211 second=346 amount=-1 +kerning first=378 second=251 amount=-2 +kerning first=1062 second=1105 amount=-1 +kerning first=280 second=204 amount=-2 +kerning first=83 second=256 amount=-4 +kerning first=100 second=275 amount=-1 +kerning first=234 second=223 amount=-1 +kerning first=352 second=204 amount=-3 +kerning first=221 second=379 amount=-3 +kerning first=45 second=353 amount=-1 +kerning first=85 second=211 amount=-1 +kerning first=377 second=259 amount=-1 +kerning first=65 second=249 amount=-3 +kerning first=266 second=44 amount=-1 +kerning first=45 second=83 amount=-3 +kerning first=288 second=230 amount=-1 +kerning first=198 second=223 amount=-1 +kerning first=81 second=83 amount=-1 +kerning first=324 second=230 amount=-1 +kerning first=206 second=249 amount=-1 +kerning first=262 second=211 amount=-3 +kerning first=216 second=230 amount=-1 +kerning first=242 second=249 amount=-1 +kerning first=298 second=211 amount=-2 +kerning first=252 second=230 amount=-1 +kerning first=67 second=204 amount=-3 +kerning first=222 second=83 amount=-1 +kerning first=1073 second=1099 amount=-1 +kerning first=111 second=230 amount=-1 +kerning first=258 second=83 amount=-3 +kerning first=332 second=256 amount=-4 +kerning first=1113 second=1075 amount=-1 +kerning first=221 second=109 amount=-3 +kerning first=368 second=284 amount=-1 +kerning first=330 second=83 amount=-2 +kerning first=99 second=114 amount=-1 +kerning first=8217 second=271 amount=-3 +kerning first=366 second=83 amount=-3 +kerning first=371 second=237 amount=-1 +kerning first=296 second=284 amount=-2 +kerning first=209 second=244 amount=-2 +kerning first=257 second=109 amount=-1 +kerning first=378 second=289 amount=-2 +kerning first=70 second=199 amount=-1 +kerning first=229 second=339 amount=-1 +kerning first=1051 second=1084 amount=-1 +kerning first=263 second=237 amount=-2 +kerning first=260 second=284 amount=-3 +kerning first=352 second=232 amount=-1 +kerning first=203 second=362 amount=-2 +kerning first=227 second=237 amount=-1 +kerning first=1105 second=1091 amount=-1 +kerning first=1072 second=1095 amount=-2 +kerning first=122 second=237 amount=-1 +kerning first=196 second=334 amount=-3 +kerning first=98 second=116 amount=-1 +kerning first=86 second=237 amount=-2 +kerning first=346 second=274 amount=-3 +kerning first=288 second=282 amount=-1 +kerning first=381 second=194 amount=-1 +kerning first=316 second=232 amount=-1 +kerning first=268 second=334 amount=-3 +kerning first=84 second=345 amount=-1 +kerning first=216 second=282 amount=-2 +kerning first=67 second=232 amount=-2 +kerning first=201 second=194 amount=-2 +kerning first=192 second=350 amount=-3 +kerning first=304 second=334 amount=-2 +kerning first=198 second=289 amount=-3 +kerning first=70 second=346 amount=-3 +kerning first=314 second=277 amount=-1 +kerning first=103 second=232 amount=-2 +kerning first=376 second=334 amount=-3 +kerning first=288 second=202 amount=-1 +kerning first=252 second=254 amount=-2 +kerning first=101 second=277 amount=-1 +kerning first=257 second=351 amount=-1 +kerning first=330 second=121 amount=-2 +kerning first=288 second=254 amount=-1 +kerning first=65 second=277 amount=-1 +kerning first=221 second=351 amount=-3 +kerning first=286 second=327 amount=-1 +kerning first=324 second=254 amount=-2 +kerning first=206 second=277 amount=-2 +kerning first=258 second=121 amount=-3 +kerning first=1038 second=1090 amount=-3 +kerning first=337 second=367 amount=-1 +kerning first=75 second=254 amount=-1 +kerning first=65 second=305 amount=-1 +kerning first=80 second=351 amount=-1 +kerning first=277 second=311 amount=-2 +kerning first=113 second=273 amount=-1 +kerning first=111 second=254 amount=-1 +kerning first=1098 second=1095 amount=-2 +kerning first=204 second=350 amount=-2 +kerning first=117 second=275 amount=-1 +kerning first=350 second=69 amount=-3 +kerning first=1070 second=1113 amount=-2 +kerning first=45 second=121 amount=-3 +kerning first=198 second=261 amount=-1 +kerning first=193 second=367 amount=-3 +kerning first=242 second=305 amount=-1 +kerning first=307 second=99 amount=-1 +kerning first=1088 second=1096 amount=-1 +kerning first=234 second=261 amount=-2 +kerning first=229 second=367 amount=-1 +kerning first=278 second=69 amount=-2 +kerning first=88 second=367 amount=-3 +kerning first=314 second=305 amount=-1 +kerning first=1027 second=1076 amount=-3 +kerning first=196 second=245 amount=-1 +kerning first=236 second=117 amount=-1 +kerning first=193 second=79 amount=-3 +kerning first=8217 second=243 amount=-3 +kerning first=278 second=305 amount=-1 +kerning first=76 second=260 amount=-2 +kerning first=200 second=117 amount=-2 +kerning first=240 second=114 amount=-1 +kerning first=8216 second=224 amount=-3 +kerning first=217 second=260 amount=-4 +kerning first=332 second=76 amount=-2 +kerning first=350 second=305 amount=-3 +kerning first=365 second=351 amount=-2 +kerning first=211 second=72 amount=-2 +kerning first=211 second=374 amount=-2 +kerning first=380 second=117 amount=-2 +kerning first=367 second=101 amount=-1 +kerning first=344 second=117 amount=-2 +kerning first=203 second=316 amount=-1 +kerning first=1043 second=1094 amount=-2 +kerning first=66 second=317 amount=-4 +kerning first=368 second=336 amount=-1 +kerning first=192 second=337 amount=-1 +kerning first=268 second=362 amount=-2 +kerning first=275 second=316 amount=-3 +kerning first=256 second=311 amount=-2 +kerning first=122 second=241 amount=-2 +kerning first=87 second=337 amount=-3 +kerning first=100 second=271 amount=-1 +kerning first=86 second=241 amount=-3 +kerning first=370 second=378 amount=-3 +kerning first=347 second=316 amount=-2 +kerning first=262 second=382 amount=-2 +kerning first=82 second=248 amount=-3 +kerning first=290 second=356 amount=-3 +kerning first=298 second=382 amount=-1 +kerning first=115 second=311 amount=-1 +kerning first=199 second=267 amount=-2 +kerning first=334 second=382 amount=-2 +kerning first=75 second=226 amount=-1 +kerning first=264 second=337 amount=-2 +kerning first=250 second=331 amount=-1 +kerning first=75 second=286 amount=-3 +kerning first=111 second=226 amount=-1 +kerning first=277 second=271 amount=-1 +kerning first=196 second=362 amount=-3 +kerning first=109 second=331 amount=-1 +kerning first=87 second=361 amount=-2 +kerning first=197 second=221 amount=-6 +kerning first=192 second=361 amount=-3 +kerning first=83 second=252 amount=-1 +kerning first=119 second=252 amount=-1 +kerning first=1025 second=1037 amount=-1 +kerning first=1105 second=1087 amount=-1 +kerning first=228 second=361 amount=-1 +kerning first=98 second=316 amount=-2 +kerning first=195 second=266 amount=-3 +kerning first=107 second=263 amount=-3 +kerning first=328 second=227 amount=-1 +kerning first=1040 second=1101 amount=-1 +kerning first=84 second=78 amount=-1 +kerning first=366 second=121 amount=-1 +kerning first=368 second=252 amount=-1 +kerning first=262 second=207 amount=-3 +kerning first=354 second=70 amount=-1 +kerning first=356 second=201 amount=-1 +kerning first=220 second=227 amount=-3 +kerning first=45 second=381 amount=-4 +kerning first=346 second=44 amount=-4 +kerning first=284 second=201 amount=-1 +kerning first=81 second=381 amount=-2 +kerning first=381 second=246 amount=-1 +kerning first=310 second=44 amount=-1 +kerning first=224 second=252 amount=-1 +kerning first=1027 second=1107 amount=-2 +kerning first=212 second=201 amount=-2 +kerning first=364 second=227 amount=-3 +kerning first=382 second=44 amount=-1 +kerning first=296 second=252 amount=-1 +kerning first=222 second=381 amount=-2 +kerning first=1081 second=1104 amount=-1 +kerning first=85 second=382 amount=-3 +kerning first=65 second=45 amount=-4 +kerning first=1057 second=1036 amount=-1 +kerning first=1063 second=1107 amount=-1 +kerning first=121 second=382 amount=-3 +kerning first=216 second=226 amount=-1 +kerning first=337 second=103 amount=-2 +kerning first=71 second=201 amount=-1 +kerning first=379 second=291 amount=-3 +kerning first=252 second=226 amount=-1 +kerning first=226 second=382 amount=-1 +kerning first=288 second=226 amount=-1 +kerning first=366 second=381 amount=-1 +kerning first=307 second=291 amount=-3 +kerning first=365 second=109 amount=-1 +kerning first=263 second=259 amount=-2 +kerning first=324 second=226 amount=-1 +kerning first=1055 second=1081 amount=-1 +kerning first=110 second=378 amount=-1 +kerning first=115 second=227 amount=-1 +kerning first=193 second=103 amount=-3 +kerning first=260 second=336 amount=-3 +kerning first=79 second=227 amount=-1 +kerning first=203 second=84 amount=-1 +kerning first=315 second=317 amount=-2 +kerning first=296 second=336 amount=-2 +kerning first=199 second=291 amount=-3 +kerning first=88 second=103 amount=-2 +kerning first=201 second=218 amount=-2 +kerning first=277 second=243 amount=-1 +kerning first=1039 second=1092 amount=-1 +kerning first=1100 second=1094 amount=-1 +kerning first=8250 second=220 amount=-4 +kerning first=1065 second=1090 amount=-1 +kerning first=103 second=115 amount=-3 +kerning first=235 second=263 amount=-1 +kerning first=100 second=243 amount=-1 +kerning first=120 second=314 amount=-1 +kerning first=66 second=345 amount=-3 +kerning first=307 second=263 amount=-1 +kerning first=261 second=314 amount=-1 +kerning first=67 second=115 amount=-2 +kerning first=205 second=243 amount=-2 +kerning first=229 second=250 amount=-1 +kerning first=225 second=314 amount=-1 +kerning first=280 second=115 amount=-1 +kerning first=333 second=314 amount=-2 +kerning first=316 second=115 amount=-2 +kerning first=218 second=120 amount=-2 +kerning first=264 second=365 amount=-2 +kerning first=199 second=8249 amount=-4 +kerning first=122 second=269 amount=-1 +kerning first=377 second=193 amount=-1 +kerning first=254 second=120 amount=-3 +kerning first=228 second=365 amount=-1 +kerning first=263 second=269 amount=-1 +kerning first=244 second=115 amount=-2 +kerning first=279 second=345 amount=-1 +kerning first=199 second=263 amount=-2 +kerning first=192 second=365 amount=-3 +kerning first=350 second=278 amount=-3 +kerning first=196 second=338 amount=-3 +kerning first=69 second=70 amount=-2 +kerning first=369 second=314 amount=-2 +kerning first=216 second=198 amount=-4 +kerning first=258 second=353 amount=-2 +kerning first=282 second=70 amount=-2 +kerning first=86 second=213 amount=-3 +kerning first=204 second=113 amount=-2 +kerning first=350 second=73 amount=-3 +kerning first=87 second=365 amount=-2 +kerning first=97 second=224 amount=-1 +kerning first=352 second=115 amount=-1 +kerning first=1083 second=1072 amount=-1 +kerning first=352 second=45 amount=-3 +kerning first=330 second=353 amount=-2 +kerning first=210 second=70 amount=-2 +kerning first=202 second=224 amount=-1 +kerning first=366 second=353 amount=-2 +kerning first=371 second=269 amount=-3 +kerning first=321 second=325 amount=-2 +kerning first=310 second=224 amount=-1 +kerning first=274 second=224 amount=-1 +kerning first=105 second=98 amount=-1 +kerning first=382 second=224 amount=-1 +kerning first=246 second=98 amount=-1 +kerning first=379 second=8249 amount=-3 +kerning first=278 second=73 amount=-2 +kerning first=346 second=224 amount=-1 +kerning first=85 second=235 amount=-2 +kerning first=90 second=278 amount=-1 +kerning first=74 second=101 amount=-2 +kerning first=326 second=120 amount=-1 +kerning first=214 second=303 amount=-1 +kerning first=121 second=235 amount=-3 +kerning first=218 second=328 amount=-2 +kerning first=307 second=8249 amount=-3 +kerning first=362 second=120 amount=-2 +kerning first=219 second=331 amount=-2 +kerning first=250 second=303 amount=-2 +kerning first=1108 second=1076 amount=-1 +kerning first=332 second=280 amount=-2 +kerning first=346 second=367 amount=-1 +kerning first=109 second=303 amount=-1 +kerning first=226 second=235 amount=-1 +kerning first=113 second=328 amount=-2 +kerning first=69 second=98 amount=-1 +kerning first=262 second=235 amount=-2 +kerning first=1036 second=1076 amount=-1 +kerning first=251 second=101 amount=-1 +kerning first=220 second=283 amount=-2 +kerning first=211 second=370 amount=-1 +kerning first=371 second=241 amount=-2 +kerning first=287 second=101 amount=-2 +kerning first=368 second=103 amount=-4 +kerning first=335 second=241 amount=-1 +kerning first=323 second=101 amount=-2 +kerning first=1046 second=1118 amount=-2 +kerning first=99 second=118 amount=-2 +kerning first=254 second=328 amount=-1 +kerning first=364 second=283 amount=-2 +kerning first=227 second=241 amount=-1 +kerning first=113 second=109 amount=-2 +kerning first=213 second=325 amount=-2 +kerning first=282 second=98 amount=-1 +kerning first=256 second=283 amount=-1 +kerning first=263 second=241 amount=-2 +kerning first=83 second=280 amount=-3 +kerning first=207 second=335 amount=-2 +kerning first=197 second=108 amount=-2 +kerning first=376 second=380 amount=-3 +kerning first=371 second=283 amount=-3 +kerning first=195 second=8220 amount=-5 +kerning first=321 second=241 amount=-1 +kerning first=279 second=335 amount=-1 +kerning first=269 second=108 amount=-3 +kerning first=1077 second=1119 amount=-1 +kerning first=344 second=85 amount=-3 +kerning first=374 second=362 amount=-1 +kerning first=263 second=283 amount=-1 +kerning first=1069 second=1045 amount=-1 +kerning first=232 second=380 amount=-2 +kerning first=272 second=85 amount=-1 +kerning first=66 second=335 amount=-1 +kerning first=305 second=108 amount=-1 +kerning first=268 second=380 amount=-2 +kerning first=102 second=335 amount=-1 +kerning first=310 second=286 amount=-3 +kerning first=304 second=380 amount=-1 +kerning first=236 second=345 amount=-1 +kerning first=77 second=338 amount=-2 +kerning first=249 second=241 amount=-1 +kerning first=274 second=196 amount=-2 +kerning first=122 second=46 amount=-1 +kerning first=303 second=248 amount=-3 +kerning first=256 second=231 amount=-1 +kerning first=110 second=115 amount=-1 +kerning first=77 second=351 amount=-2 +kerning first=274 second=286 amount=-1 +kerning first=376 second=259 amount=-5 +kerning first=231 second=248 amount=-1 +kerning first=108 second=241 amount=-1 +kerning first=315 second=249 amount=-2 +kerning first=267 second=248 amount=-1 +kerning first=202 second=286 amount=-1 +kerning first=220 second=231 amount=-2 +kerning first=74 second=115 amount=-2 +kerning first=380 second=331 amount=-2 +kerning first=287 second=115 amount=-3 +kerning first=1091 second=1113 amount=-3 +kerning first=195 second=248 amount=-1 +kerning first=323 second=115 amount=-2 +kerning first=200 second=331 amount=-1 +kerning first=90 second=248 amount=-1 +kerning first=1114 second=1075 amount=-1 +kerning first=251 second=115 amount=-2 +kerning first=76 second=70 amount=-2 +kerning first=290 second=78 amount=-1 +kerning first=197 second=368 amount=-3 +kerning first=1063 second=1101 amount=-1 +kerning first=236 second=331 amount=-2 +kerning first=249 second=255 amount=-3 +kerning first=218 second=352 amount=-3 +kerning first=97 second=252 amount=-1 +kerning first=222 second=200 amount=-2 +kerning first=337 second=351 amount=-2 +kerning first=364 second=245 amount=-2 +kerning first=69 second=278 amount=-2 +kerning first=115 second=307 amount=-2 +kerning first=8216 second=350 amount=-1 +kerning first=376 second=366 amount=-1 +kerning first=202 second=252 amount=-2 +kerning first=199 second=323 amount=-3 +kerning first=108 second=255 amount=-3 +kerning first=84 second=328 amount=-3 +kerning first=354 second=8250 amount=-3 +kerning first=269 second=122 amount=-2 +kerning first=72 second=255 amount=-2 +kerning first=362 second=352 amount=-3 +kerning first=233 second=122 amount=-2 +kerning first=344 second=71 amount=-3 +kerning first=90 second=262 amount=-1 +kerning first=379 second=323 amount=-1 +kerning first=210 second=278 amount=-2 +kerning first=328 second=307 amount=-1 +kerning first=107 second=233 amount=-3 +kerning first=196 second=366 amount=-3 +kerning first=317 second=290 amount=-1 +kerning first=261 second=328 amount=-1 +kerning first=282 second=278 amount=-2 +kerning first=313 second=338 amount=-1 +kerning first=225 second=328 amount=-1 +kerning first=354 second=278 amount=-1 +kerning first=1101 second=1080 amount=-1 +kerning first=120 second=328 amount=-1 +kerning first=1045 second=1118 amount=-1 +kerning first=77 second=352 amount=-2 +kerning first=227 second=283 amount=-1 +kerning first=81 second=200 amount=-2 +kerning first=256 second=245 amount=-1 +kerning first=209 second=290 amount=-2 +kerning first=369 second=328 amount=-1 +kerning first=274 second=252 amount=-2 +kerning first=1043 second=1040 amount=-4 +kerning first=45 second=200 amount=-5 +kerning first=356 second=233 amount=-3 +kerning first=220 second=245 amount=-2 +kerning first=122 second=283 amount=-1 +kerning first=310 second=252 amount=-3 +kerning first=1113 second=1085 amount=-1 +kerning first=346 second=252 amount=-1 +kerning first=314 second=333 amount=-1 +kerning first=68 second=86 amount=-2 +kerning first=1057 second=1043 amount=-1 +kerning first=336 second=87 amount=-2 +kerning first=84 second=110 amount=-3 +kerning first=268 second=106 amount=-1 +kerning first=120 second=110 amount=-1 +kerning first=264 second=87 amount=-1 +kerning first=217 second=288 amount=-1 +kerning first=252 second=223 amount=-1 +kerning first=193 second=81 amount=-3 +kerning first=379 second=281 amount=-1 +kerning first=101 second=333 amount=-1 +kerning first=73 second=113 amount=-2 +kerning first=192 second=87 amount=-6 +kerning first=280 second=84 amount=-1 +kerning first=261 second=110 amount=-1 +kerning first=1069 second=1113 amount=-2 +kerning first=333 second=110 amount=-1 +kerning first=192 second=347 amount=-2 +kerning first=199 second=281 amount=-2 +kerning first=200 second=65 amount=-2 +kerning first=255 second=243 amount=-3 +kerning first=195 second=262 amount=-3 +kerning first=368 second=326 amount=-2 +kerning first=369 second=110 amount=-1 +kerning first=235 second=281 amount=-1 +kerning first=89 second=198 amount=-6 +kerning first=291 second=243 amount=-2 +kerning first=217 second=196 amount=-4 +kerning first=87 second=347 amount=-3 +kerning first=272 second=65 amount=-4 +kerning first=1077 second=1099 amount=-1 +kerning first=323 second=210 amount=-2 +kerning first=327 second=243 amount=-2 +kerning first=307 second=281 amount=-1 +kerning first=289 second=114 amount=-1 +kerning first=363 second=243 amount=-1 +kerning first=116 second=291 amount=-2 +kerning first=197 second=217 amount=-3 +kerning first=78 second=243 amount=-2 +kerning first=325 second=288 amount=-2 +kerning first=224 second=326 amount=-1 +kerning first=1058 second=1076 amount=-2 +kerning first=321 second=255 amount=-3 +kerning first=69 second=354 amount=-1 +kerning first=219 second=243 amount=-2 +kerning first=232 second=120 amount=-2 +kerning first=78 second=229 amount=-2 +kerning first=1050 second=1047 amount=-2 +kerning first=199 second=269 amount=-2 +kerning first=378 second=275 amount=-1 +kerning first=73 second=99 amount=-2 +kerning first=69 second=80 amount=-2 +kerning first=219 second=229 amount=-3 +kerning first=264 second=73 amount=-3 +kerning first=8217 second=351 amount=-2 +kerning first=255 second=229 amount=-3 +kerning first=66 second=377 amount=-4 +kerning first=266 second=198 amount=-3 +kerning first=375 second=248 amount=-3 +kerning first=114 second=229 amount=-1 +kerning first=199 second=103 amount=-3 +kerning first=66 second=75 amount=-4 +kerning first=250 second=99 amount=-1 +kerning first=338 second=198 amount=-2 +kerning first=298 second=118 amount=-2 +kerning first=363 second=229 amount=-1 +kerning first=8218 second=249 amount=-1 +kerning first=71 second=311 amount=-1 +kerning first=87 second=73 amount=-1 +kerning first=307 second=267 amount=-1 +kerning first=354 second=80 amount=-1 +kerning first=262 second=118 amount=-1 +kerning first=84 second=68 amount=-1 +kerning first=250 second=113 amount=-1 +kerning first=370 second=118 amount=-2 +kerning first=291 second=229 amount=-3 +kerning first=1076 second=1077 amount=-1 +kerning first=235 second=267 amount=-1 +kerning first=327 second=229 amount=-2 +kerning first=121 second=118 amount=-1 +kerning first=339 second=8220 amount=-2 +kerning first=376 second=120 amount=-2 +kerning first=210 second=80 amount=-2 +kerning first=85 second=118 amount=-2 +kerning first=232 second=106 amount=-2 +kerning first=77 second=332 amount=-2 +kerning first=226 second=118 amount=-3 +kerning first=267 second=8220 amount=-2 +kerning first=71 second=90 amount=-2 +kerning first=218 second=332 amount=-1 +kerning first=282 second=80 amount=-2 +kerning first=315 second=377 amount=-3 +kerning first=231 second=8220 amount=-2 +kerning first=314 second=271 amount=-1 +kerning first=115 second=287 amount=-3 +kerning first=198 second=219 amount=-2 +kerning first=350 second=171 amount=-3 +kerning first=350 second=8217 amount=-2 +kerning first=117 second=111 amount=-1 +kerning first=257 second=271 amount=-1 +kerning first=288 second=256 amount=-3 +kerning first=220 second=287 amount=-4 +kerning first=310 second=244 amount=-2 +kerning first=362 second=332 amount=-1 +kerning first=346 second=244 amount=-1 +kerning first=1055 second=1119 amount=-1 +kerning first=204 second=199 amount=-2 +kerning first=90 second=242 amount=-1 +kerning first=281 second=234 amount=-1 +kerning first=382 second=244 amount=-1 +kerning first=1037 second=1108 amount=-1 +kerning first=256 second=287 amount=-3 +kerning first=195 second=242 amount=-1 +kerning first=364 second=287 amount=-4 +kerning first=242 second=8217 amount=-2 +kerning first=328 second=287 amount=-2 +kerning first=121 second=303 amount=-2 +kerning first=82 second=264 amount=-3 +kerning first=1027 second=1040 amount=-4 +kerning first=267 second=242 amount=-1 +kerning first=86 second=289 amount=-4 +kerning first=231 second=242 amount=-1 +kerning first=110 second=121 amount=-2 +kerning first=122 second=289 amount=-2 +kerning first=339 second=242 amount=-1 +kerning first=1070 second=1091 amount=-1 +kerning first=8250 second=224 amount=-1 +kerning first=83 second=66 amount=-3 +kerning first=303 second=242 amount=-3 +kerning first=227 second=289 amount=-2 +kerning first=258 second=111 amount=-1 +kerning first=263 second=289 amount=-3 +kerning first=332 second=66 amount=-2 +kerning first=375 second=242 amount=-3 +kerning first=67 second=119 amount=-1 +kerning first=97 second=244 amount=-1 +kerning first=194 second=254 amount=-2 +kerning first=103 second=119 amount=-1 +kerning first=330 second=111 amount=-2 +kerning first=230 second=254 amount=-2 +kerning first=335 second=289 amount=-2 +kerning first=210 second=66 amount=-2 +kerning first=211 second=82 amount=-2 +kerning first=366 second=111 amount=-2 +kerning first=266 second=254 amount=-1 +kerning first=371 second=289 amount=-1 +kerning first=346 second=230 amount=-2 +kerning first=377 second=197 amount=-1 +kerning first=315 second=117 amount=-2 +kerning first=382 second=230 amount=-1 +kerning first=244 second=119 amount=-2 +kerning first=222 second=97 amount=-1 +kerning first=279 second=117 amount=-2 +kerning first=274 second=230 amount=-1 +kerning first=280 second=119 amount=-1 +kerning first=81 second=97 amount=-1 +kerning first=210 second=354 amount=-2 +kerning first=310 second=230 amount=-1 +kerning first=316 second=119 amount=-3 +kerning first=117 second=97 amount=-1 +kerning first=371 second=275 amount=-3 +kerning first=202 second=230 amount=-1 +kerning first=330 second=97 amount=-2 +kerning first=282 second=354 amount=-1 +kerning first=331 second=250 amount=-1 +kerning first=323 second=121 amount=-2 +kerning first=366 second=97 amount=-3 +kerning first=1073 second=1078 amount=-2 +kerning first=295 second=250 amount=-1 +kerning first=1113 second=1099 amount=-1 +kerning first=97 second=326 amount=-1 +kerning first=287 second=121 amount=-1 +kerning first=97 second=230 amount=-1 +kerning first=1043 second=1054 amount=-1 +kerning first=251 second=121 amount=-3 +kerning first=198 second=205 amount=-2 +kerning first=282 second=74 amount=-1 +kerning first=367 second=250 amount=-1 +kerning first=204 second=378 amount=-1 +kerning first=374 second=240 amount=-3 +kerning first=187 second=250 amount=-1 +kerning first=251 second=107 amount=-2 +kerning first=354 second=74 amount=-4 +kerning first=118 second=250 amount=-1 +kerning first=316 second=378 amount=-1 +kerning first=302 second=240 amount=-2 +kerning first=65 second=333 amount=-1 +kerning first=259 second=250 amount=-1 +kerning first=290 second=86 amount=-3 +kerning first=66 second=117 amount=-3 +kerning first=199 second=338 amount=-3 +kerning first=240 second=378 amount=-2 +kerning first=223 second=250 amount=-1 +kerning first=101 second=8217 amount=-2 +kerning first=102 second=117 amount=-1 +kerning first=99 second=378 amount=-2 +kerning first=82 second=250 amount=-2 +kerning first=243 second=117 amount=-1 +kerning first=207 second=117 amount=-2 +kerning first=8216 second=370 amount=-1 +kerning first=84 second=116 amount=-1 +kerning first=89 second=240 amount=-3 +kerning first=268 second=310 amount=-3 +kerning first=337 second=363 amount=-1 +kerning first=195 second=318 amount=-2 +kerning first=120 second=116 amount=-1 +kerning first=231 second=318 amount=-3 +kerning first=68 second=220 amount=-1 +kerning first=230 second=240 amount=-1 +kerning first=69 second=298 amount=-2 +kerning first=1052 second=1114 amount=-1 +kerning first=267 second=318 amount=-3 +kerning first=280 second=214 amount=-1 +kerning first=266 second=240 amount=-2 +kerning first=187 second=194 amount=-4 +kerning first=1088 second=1114 amount=-1 +kerning first=303 second=318 amount=-2 +kerning first=376 second=310 amount=-1 +kerning first=1084 second=1089 amount=-1 +kerning first=339 second=318 amount=-3 +kerning first=210 second=298 amount=-2 +kerning first=1048 second=1089 amount=-1 +kerning first=1102 second=1088 amount=-1 +kerning first=375 second=318 amount=-2 +kerning first=314 second=259 amount=-2 +kerning first=323 second=375 amount=-2 +kerning first=278 second=259 amount=-1 +kerning first=369 second=116 amount=-1 +kerning first=199 second=77 amount=-3 +kerning first=287 second=375 amount=-1 +kerning first=377 second=122 amount=-3 +kerning first=1030 second=1088 amount=-1 +kerning first=200 second=71 amount=-1 +kerning first=67 second=214 amount=-3 +kerning first=249 second=99 amount=-1 +kerning first=90 second=171 amount=-3 +kerning first=251 second=375 amount=-3 +kerning first=1025 second=1041 amount=-1 +kerning first=76 second=330 amount=-2 +kerning first=350 second=259 amount=-2 +kerning first=305 second=122 amount=-1 +kerning first=261 second=116 amount=-1 +kerning first=379 second=77 amount=-1 +kerning first=108 second=231 amount=-1 +kerning first=101 second=259 amount=-2 +kerning first=45 second=97 amount=-1 +kerning first=317 second=220 amount=-3 +kerning first=242 second=259 amount=-1 +kerning first=333 second=116 amount=-1 +kerning first=203 second=296 amount=-2 +kerning first=1072 second=1099 amount=-1 +kerning first=206 second=259 amount=-2 +kerning first=8222 second=108 amount=-1 +kerning first=365 second=369 amount=-1 +kerning first=356 second=253 amount=-3 +kerning first=111 second=105 amount=-1 +kerning first=1052 second=1100 amount=-1 +kerning first=377 second=374 amount=-2 +kerning first=316 second=228 amount=-2 +kerning first=90 second=304 amount=-1 +kerning first=268 second=324 amount=-1 +kerning first=1088 second=1100 amount=-1 +kerning first=100 second=251 amount=-1 +kerning first=232 second=324 amount=-2 +kerning first=244 second=228 amount=-1 +kerning first=8216 second=356 amount=-1 +kerning first=241 second=251 amount=-1 +kerning first=221 second=369 amount=-2 +kerning first=208 second=228 amount=-1 +kerning first=205 second=251 amount=-2 +kerning first=314 second=273 amount=-1 +kerning first=110 second=375 amount=-2 +kerning first=382 second=281 amount=-1 +kerning first=313 second=251 amount=-2 +kerning first=197 second=374 amount=-6 +kerning first=103 second=228 amount=-3 +kerning first=277 second=251 amount=-2 +kerning first=257 second=369 amount=-1 +kerning first=67 second=228 amount=-2 +kerning first=216 second=206 amount=-2 +kerning first=8217 second=261 amount=-6 +kerning first=1102 second=1074 amount=-1 +kerning first=116 second=355 amount=-1 +kerning first=282 second=298 amount=-2 +kerning first=66 second=70 amount=-4 +kerning first=354 second=284 amount=-3 +kerning first=288 second=206 amount=-1 +kerning first=101 second=273 amount=-1 +kerning first=107 second=253 amount=-1 +kerning first=187 second=217 amount=-4 +kerning first=354 second=298 amount=-1 +kerning first=378 second=279 amount=-1 +kerning first=282 second=284 amount=-1 +kerning first=88 second=363 amount=-3 +kerning first=87 second=290 amount=-3 +kerning first=248 second=253 amount=-3 +kerning first=8217 second=226 amount=-6 +kerning first=193 second=363 amount=-3 +kerning first=8218 second=311 amount=-1 +kerning first=1030 second=1074 amount=-1 +kerning first=353 second=45 amount=-1 +kerning first=1025 second=1038 amount=-3 +kerning first=69 second=284 amount=-1 +kerning first=229 second=363 amount=-1 +kerning first=221 second=355 amount=-1 +kerning first=376 second=324 amount=-3 +kerning first=196 second=8249 amount=-4 +kerning first=88 second=83 amount=-2 +kerning first=234 second=279 amount=-1 +kerning first=224 second=318 amount=-1 +kerning first=336 second=220 amount=-1 +kerning first=260 second=318 amount=-2 +kerning first=316 second=113 amount=-1 +kerning first=193 second=83 amount=-3 +kerning first=248 second=237 amount=-1 +kerning first=314 second=263 amount=-1 +kerning first=350 second=263 amount=-1 +kerning first=286 second=313 amount=-1 +kerning first=65 second=263 amount=-1 +kerning first=8217 second=195 amount=-6 +kerning first=208 second=218 amount=-1 +kerning first=101 second=263 amount=-1 +kerning first=214 second=313 amount=-2 +kerning first=206 second=263 amount=-2 +kerning first=67 second=218 amount=-2 +kerning first=69 second=218 amount=-2 +kerning first=203 second=310 amount=-2 +kerning first=221 second=303 amount=-2 +kerning first=75 second=220 amount=-2 +kerning first=317 second=255 amount=-3 +kerning first=257 second=303 amount=-1 +kerning first=337 second=353 amount=-2 +kerning first=321 second=315 amount=-2 +kerning first=365 second=365 amount=-1 +kerning first=116 second=303 amount=-1 +kerning first=85 second=225 amount=-3 +kerning first=365 second=303 amount=-2 +kerning first=213 second=315 amount=-2 +kerning first=257 second=365 amount=-1 +kerning first=288 second=220 amount=-1 +kerning first=193 second=353 amount=-2 +kerning first=85 second=114 amount=-1 +kerning first=221 second=365 amount=-2 +kerning first=229 second=353 amount=-1 +kerning first=216 second=220 amount=-1 +kerning first=1044 second=1060 amount=-1 +kerning first=83 second=270 amount=-3 +kerning first=78 second=235 amount=-2 +kerning first=311 second=98 amount=-1 +kerning first=354 second=209 amount=-1 +kerning first=73 second=105 amount=-1 +kerning first=298 second=225 amount=-2 +kerning first=354 second=45 amount=-5 +kerning first=275 second=98 amount=-2 +kerning first=109 second=105 amount=-1 +kerning first=334 second=225 amount=-1 +kerning first=381 second=228 amount=-1 +kerning first=1044 second=1108 amount=-1 +kerning first=370 second=225 amount=-3 +kerning first=345 second=228 amount=-1 +kerning first=1113 second=1093 amount=-2 +kerning first=347 second=98 amount=-2 +kerning first=255 second=235 amount=-3 +kerning first=121 second=225 amount=-3 +kerning first=291 second=235 amount=-2 +kerning first=98 second=98 amount=-1 +kerning first=332 second=270 amount=-2 +kerning first=327 second=235 amount=-2 +kerning first=226 second=225 amount=-1 +kerning first=70 second=350 amount=-3 +kerning first=201 second=228 amount=-1 +kerning first=1051 second=1102 amount=-1 +kerning first=203 second=98 amount=-1 +kerning first=45 second=363 amount=-1 +kerning first=336 second=84 amount=-2 +kerning first=262 second=225 amount=-2 +kerning first=72 second=305 amount=-1 +kerning first=1088 second=1084 amount=-1 +kerning first=352 second=218 amount=-3 +kerning first=365 second=223 amount=-1 +kerning first=1070 second=1093 amount=-1 +kerning first=307 second=273 amount=-1 +kerning first=8220 second=335 amount=-3 +kerning first=117 second=363 amount=-1 +kerning first=232 second=46 amount=-3 +kerning first=280 second=218 amount=-2 +kerning first=347 second=102 amount=-2 +kerning first=268 second=46 amount=-1 +kerning first=108 second=305 amount=-1 +kerning first=278 second=325 amount=-2 +kerning first=76 second=280 amount=-2 +kerning first=235 second=273 amount=-1 +kerning first=68 second=194 amount=-4 +kerning first=304 second=46 amount=-1 +kerning first=249 second=305 amount=-1 +kerning first=192 second=355 amount=-1 +kerning first=98 second=102 amount=-1 +kerning first=258 second=363 amount=-3 +kerning first=213 second=305 amount=-1 +kerning first=310 second=356 amount=-2 +kerning first=1058 second=1075 amount=-2 +kerning first=1080 second=1108 amount=-1 +kerning first=119 second=318 amount=-2 +kerning first=100 second=233 amount=-1 +kerning first=87 second=355 amount=-1 +kerning first=203 second=102 amount=-2 +kerning first=330 second=363 amount=-2 +kerning first=83 second=260 amount=-4 +kerning first=71 second=200 amount=-1 +kerning first=366 second=363 amount=-1 +kerning first=1049 second=1047 amount=-1 +kerning first=1063 second=1117 amount=-1 +kerning first=207 second=67 amount=-2 +kerning first=211 second=86 amount=-2 +kerning first=310 second=117 amount=-3 +kerning first=1027 second=1117 amount=-2 +kerning first=304 second=112 amount=-1 +kerning first=264 second=81 amount=-3 +kerning first=8216 second=193 amount=-8 +kerning first=268 second=112 amount=-3 +kerning first=197 second=211 amount=-3 +kerning first=77 second=171 amount=-4 +kerning first=232 second=112 amount=-1 +kerning first=66 second=67 amount=-3 +kerning first=113 second=171 amount=-2 +kerning first=368 second=260 amount=-4 +kerning first=205 second=261 amount=-2 +kerning first=196 second=112 amount=-3 +kerning first=332 second=260 amount=-4 +kerning first=377 second=291 amount=-3 +kerning first=381 second=283 amount=-1 +kerning first=241 second=261 amount=-1 +kerning first=258 second=107 amount=-2 +kerning first=1031 second=1084 amount=-1 +kerning first=75 second=216 amount=-3 +kerning first=377 second=211 amount=-1 +kerning first=327 second=289 amount=-3 +kerning first=326 second=171 amount=-3 +kerning first=198 second=209 amount=-2 +kerning first=66 second=327 amount=-4 +kerning first=362 second=171 amount=-5 +kerning first=1088 second=1082 amount=-1 +kerning first=250 second=105 amount=-2 +kerning first=295 second=254 amount=-2 +kerning first=87 second=81 amount=-3 +kerning first=218 second=171 amount=-5 +kerning first=331 second=254 amount=-2 +kerning first=1051 second=1098 amount=-1 +kerning first=367 second=254 amount=-2 +kerning first=315 second=327 amount=-2 +kerning first=376 second=112 amount=-2 +kerning first=192 second=81 amount=-3 +kerning first=214 second=105 amount=-1 +kerning first=290 second=171 amount=-3 +kerning first=218 second=346 amount=-3 +kerning first=252 second=115 amount=-2 +kerning first=204 second=100 amount=-2 +kerning first=209 second=230 amount=-2 +kerning first=249 second=249 amount=-1 +kerning first=245 second=230 amount=-1 +kerning first=108 second=249 amount=-2 +kerning first=8217 second=257 amount=-6 +kerning first=104 second=230 amount=-1 +kerning first=77 second=346 amount=-2 +kerning first=88 second=353 amount=-1 +kerning first=78 second=333 amount=-2 +kerning first=362 second=346 amount=-3 +kerning first=234 second=275 amount=-1 +kerning first=1036 second=1058 amount=-3 +kerning first=84 second=334 amount=-3 +kerning first=286 second=379 amount=-2 +kerning first=1047 second=1079 amount=-2 +kerning first=68 second=230 amount=-1 +kerning first=290 second=346 amount=-2 +kerning first=99 second=100 amount=-1 +kerning first=321 second=249 amount=-2 +kerning first=1070 second=1103 amount=-1 +kerning first=263 second=223 amount=-1 +kerning first=364 second=350 amount=-3 +kerning first=272 second=325 amount=-2 +kerning first=117 second=107 amount=-2 +kerning first=90 second=296 amount=-1 +kerning first=236 second=339 amount=-1 +kerning first=90 second=256 amount=-1 +kerning first=335 second=223 amount=-1 +kerning first=86 second=223 amount=-3 +kerning first=353 second=230 amount=-1 +kerning first=72 second=249 amount=-1 +kerning first=77 second=226 amount=-2 +kerning first=45 second=107 amount=-1 +kerning first=281 second=230 amount=-2 +kerning first=1064 second=1101 amount=-1 +kerning first=344 second=339 amount=-3 +kerning first=233 second=114 amount=-1 +kerning first=282 second=84 amount=-1 +kerning first=1054 second=1059 amount=-3 +kerning first=269 second=114 amount=-1 +kerning first=379 second=275 amount=-1 +kerning first=1098 second=1094 amount=-1 +kerning first=210 second=84 amount=-2 +kerning first=90 second=44 amount=-1 +kerning first=344 second=79 amount=-3 +kerning first=366 second=192 amount=-4 +kerning first=8218 second=357 amount=-2 +kerning first=356 second=187 amount=-3 +kerning first=362 second=237 amount=-2 +kerning first=364 second=237 amount=-2 +kerning first=88 second=89 amount=-2 +kerning first=222 second=192 amount=-4 +kerning first=328 second=237 amount=-1 +kerning first=250 second=109 amount=-1 +kerning first=232 second=314 amount=-3 +kerning first=257 second=99 amount=-1 +kerning first=339 second=44 amount=-3 +kerning first=381 second=232 amount=-1 +kerning first=368 second=262 amount=-1 +kerning first=256 second=237 amount=-1 +kerning first=196 second=314 amount=-2 +kerning first=1031 second=1082 amount=-1 +kerning first=221 second=99 amount=-3 +kerning first=336 second=8249 amount=-1 +kerning first=338 second=118 amount=-1 +kerning first=99 second=104 amount=-2 +kerning first=315 second=378 amount=-3 +kerning first=220 second=237 amount=-2 +kerning first=109 second=109 amount=-1 +kerning first=262 second=217 amount=-2 +kerning first=45 second=192 amount=-4 +kerning first=268 second=314 amount=-1 +kerning first=371 second=227 amount=-2 +kerning first=248 second=187 amount=-2 +kerning first=264 second=8249 amount=-4 +kerning first=115 second=237 amount=-2 +kerning first=317 second=282 amount=-2 +kerning first=334 second=217 amount=-1 +kerning first=379 second=277 amount=-1 +kerning first=79 second=237 amount=-1 +kerning first=365 second=99 amount=-1 +kerning first=192 second=8249 amount=-4 +kerning first=68 second=224 amount=-1 +kerning first=267 second=44 amount=-3 +kerning first=240 second=104 amount=-1 +kerning first=234 second=269 amount=-1 +kerning first=108 second=261 amount=-2 +kerning first=8220 second=121 amount=-1 +kerning first=87 second=8249 amount=-5 +kerning first=87 second=351 amount=-3 +kerning first=100 second=257 amount=-1 +kerning first=244 second=324 amount=-1 +kerning first=235 second=277 amount=-1 +kerning first=8217 second=251 amount=-1 +kerning first=104 second=224 amount=-1 +kerning first=187 second=202 amount=-5 +kerning first=1101 second=1076 amount=-2 +kerning first=354 second=207 amount=-1 +kerning first=83 second=326 amount=-1 +kerning first=192 second=351 amount=-2 +kerning first=245 second=224 amount=-1 +kerning first=119 second=326 amount=-2 +kerning first=307 second=277 amount=-1 +kerning first=203 second=302 amount=-2 +kerning first=378 second=269 amount=-1 +kerning first=209 second=224 amount=-2 +kerning first=80 second=99 amount=-1 +kerning first=117 second=371 amount=-1 +kerning first=281 second=224 amount=-2 +kerning first=264 second=347 amount=-2 +kerning first=260 second=253 amount=-3 +kerning first=228 second=347 amount=-1 +kerning first=353 second=224 amount=-1 +kerning first=325 second=44 amount=-1 +kerning first=206 second=267 amount=-2 +kerning first=366 second=367 amount=-1 +kerning first=119 second=275 amount=-3 +kerning first=379 second=69 amount=-1 +kerning first=117 second=101 amount=-1 +kerning first=65 second=267 amount=-1 +kerning first=100 second=261 amount=-1 +kerning first=258 second=367 amount=-3 +kerning first=101 second=267 amount=-1 +kerning first=45 second=371 amount=-1 +kerning first=314 second=267 amount=-1 +kerning first=75 second=212 amount=-3 +kerning first=277 second=257 amount=-2 +kerning first=1025 second=1047 amount=-1 +kerning first=199 second=69 amount=-3 +kerning first=258 second=101 amount=-1 +kerning first=8216 second=220 amount=-1 +kerning first=1061 second=1047 amount=-2 +kerning first=205 second=257 amount=-2 +kerning first=330 second=101 amount=-2 +kerning first=200 second=79 amount=-1 +kerning first=241 second=257 amount=-1 +kerning first=117 second=367 amount=-1 +kerning first=366 second=101 amount=-2 +kerning first=220 second=241 amount=-2 +kerning first=269 second=382 amount=-2 +kerning first=260 second=266 amount=-3 +kerning first=89 second=246 amount=-3 +kerning first=264 second=291 amount=-3 +kerning first=305 second=382 amount=-1 +kerning first=296 second=266 amount=-2 +kerning first=228 second=291 amount=-2 +kerning first=234 second=271 amount=-1 +kerning first=192 second=291 amount=-3 +kerning first=377 second=382 amount=-3 +kerning first=68 second=226 amount=-1 +kerning first=1062 second=1057 amount=-1 +kerning first=235 second=337 amount=-1 +kerning first=8217 second=253 amount=-1 +kerning first=104 second=226 amount=-1 +kerning first=321 second=311 amount=-2 +kerning first=87 second=291 amount=-4 +kerning first=199 second=337 amount=-2 +kerning first=65 second=8221 amount=-5 +kerning first=317 second=286 amount=-1 +kerning first=115 second=241 amount=-2 +kerning first=351 second=331 amount=-2 +kerning first=209 second=226 amount=-2 +kerning first=374 second=255 amount=-3 +kerning first=209 second=286 amount=-2 +kerning first=249 second=311 amount=-2 +kerning first=378 second=271 amount=-1 +kerning first=233 second=382 amount=-2 +kerning first=245 second=226 amount=-1 +kerning first=338 second=228 amount=-1 +kerning first=221 second=361 amount=-2 +kerning first=379 second=337 amount=-1 +kerning first=279 second=331 amount=-2 +kerning first=1098 second=1113 amount=-1 +kerning first=315 second=331 amount=-1 +kerning first=242 second=8221 amount=-2 +kerning first=307 second=337 amount=-1 +kerning first=101 second=8221 amount=-2 +kerning first=257 second=361 amount=-1 +kerning first=243 second=331 amount=-1 +kerning first=334 second=221 amount=-2 +kerning first=1030 second=1082 amount=-1 +kerning first=365 second=361 amount=-1 +kerning first=196 second=316 amount=-2 +kerning first=102 second=331 amount=-1 +kerning first=350 second=8221 amount=-2 +kerning first=232 second=316 amount=-3 +kerning first=8222 second=104 amount=-1 +kerning first=262 second=221 amount=-1 +kerning first=1102 second=1082 amount=-1 +kerning first=268 second=316 amount=-1 +kerning first=66 second=331 amount=-3 +kerning first=368 second=266 amount=-1 +kerning first=231 second=252 amount=-2 +kerning first=249 second=45 amount=-2 +kerning first=222 second=103 amount=-1 +kerning first=267 second=252 amount=-2 +kerning first=122 second=227 amount=-1 +kerning first=213 second=45 amount=-1 +kerning first=303 second=252 amount=-1 +kerning first=86 second=227 amount=-5 +kerning first=321 second=45 amount=-1 +kerning first=117 second=103 amount=-3 +kerning first=66 second=210 amount=-3 +kerning first=8218 second=116 amount=-2 +kerning first=81 second=103 amount=-1 +kerning first=335 second=227 amount=-1 +kerning first=45 second=103 amount=-3 +kerning first=310 second=229 amount=-1 +kerning first=90 second=252 amount=-3 +kerning first=278 second=323 amount=-2 +kerning first=76 second=336 amount=-1 +kerning first=263 second=227 amount=-2 +kerning first=195 second=252 amount=-3 +kerning first=227 second=227 amount=-1 +kerning first=350 second=323 amount=-3 +kerning first=281 second=226 amount=-2 +kerning first=217 second=336 amount=-1 +kerning first=287 second=112 amount=-1 +kerning first=369 second=263 amount=-1 +kerning first=374 second=246 amount=-3 +kerning first=377 second=207 amount=-1 +kerning first=108 second=311 amount=-1 +kerning first=286 second=317 amount=-1 +kerning first=269 second=46 amount=-3 +kerning first=353 second=226 amount=-1 +kerning first=78 second=233 amount=-2 +kerning first=302 second=246 amount=-2 +kerning first=211 second=356 amount=-2 +kerning first=375 second=252 amount=-1 +kerning first=266 second=246 amount=-2 +kerning first=366 second=103 amount=-4 +kerning first=211 second=90 amount=-2 +kerning first=69 second=84 amount=-1 +kerning first=230 second=246 amount=-1 +kerning first=330 second=103 amount=-3 +kerning first=255 second=233 amount=-3 +kerning first=336 second=291 amount=-1 +kerning first=219 second=233 amount=-2 +kerning first=80 second=339 amount=-1 +kerning first=214 second=317 amount=-2 +kerning first=259 second=246 amount=-1 +kerning first=254 second=116 amount=-1 +kerning first=371 second=121 amount=-2 +kerning first=1073 second=1082 amount=-1 +kerning first=286 second=103 amount=-3 +kerning first=116 second=45 amount=-1 +kerning first=196 second=356 amount=-6 +kerning first=122 second=259 amount=-1 +kerning first=279 second=347 amount=-2 +kerning first=257 second=45 amount=-2 +kerning first=236 second=369 amount=-1 +kerning first=214 second=103 amount=-1 +kerning first=118 second=246 amount=-3 +kerning first=366 second=375 amount=-1 +kerning first=221 second=45 amount=-5 +kerning first=200 second=369 amount=-2 +kerning first=227 second=259 amount=-1 +kerning first=82 second=246 amount=-3 +kerning first=1039 second=1086 amount=-1 +kerning first=109 second=103 amount=-2 +kerning first=8216 second=347 amount=-2 +kerning first=1025 second=1043 amount=-1 +kerning first=73 second=103 amount=-3 +kerning first=224 second=331 amount=-1 +kerning first=100 second=253 amount=-2 +kerning first=73 second=363 amount=-2 +kerning first=86 second=259 amount=-5 +kerning first=113 second=116 amount=-1 +kerning first=365 second=45 amount=-2 +kerning first=1055 second=1089 amount=-1 +kerning first=345 second=226 amount=-1 +kerning first=108 second=279 amount=-1 +kerning first=66 second=65 amount=-5 +kerning first=209 second=266 amount=-2 +kerning first=381 second=226 amount=-1 +kerning first=1059 second=1102 amount=-4 +kerning first=72 second=279 amount=-2 +kerning first=240 second=122 amount=-2 +kerning first=380 second=109 amount=-2 +kerning first=290 second=362 amount=-1 +kerning first=1055 second=1075 amount=-1 +kerning first=250 second=363 amount=-1 +kerning first=204 second=122 amount=-1 +kerning first=45 second=375 amount=-3 +kerning first=1091 second=1089 amount=-2 +kerning first=286 second=363 amount=-1 +kerning first=199 second=119 amount=-1 +kerning first=257 second=305 amount=-1 +kerning first=236 second=109 amount=-2 +kerning first=258 second=375 amount=-3 +kerning first=80 second=45 amount=-3 +kerning first=315 second=65 amount=-2 +kerning first=380 second=369 amount=-2 +kerning first=1085 second=1072 amount=-1 +kerning first=221 second=305 amount=-2 +kerning first=200 second=109 amount=-1 +kerning first=44 second=45 amount=-3 +kerning first=268 second=356 amount=-1 +kerning first=1113 second=1095 amount=-2 +kerning first=1037 second=1082 amount=-1 +kerning first=344 second=369 amount=-2 +kerning first=330 second=115 amount=-2 +kerning first=1037 second=1096 amount=-1 +kerning first=236 second=355 amount=-1 +kerning first=366 second=115 amount=-2 +kerning first=196 second=370 amount=-3 +kerning first=69 second=336 amount=-1 +kerning first=258 second=115 amount=-2 +kerning first=310 second=231 amount=-2 +kerning first=365 second=305 amount=-1 +kerning first=250 second=328 amount=-1 +kerning first=268 second=370 amount=-2 +kerning first=371 second=8217 amount=-3 +kerning first=380 second=355 amount=-1 +kerning first=214 second=89 amount=-2 +kerning first=249 second=279 amount=-1 +kerning first=200 second=364 amount=-2 +kerning first=1056 second=1053 amount=-1 +kerning first=1073 second=1096 amount=-1 +kerning first=344 second=355 amount=-3 +kerning first=259 second=232 amount=-1 +kerning first=282 second=336 amount=-1 +kerning first=196 second=249 amount=-3 +kerning first=205 second=253 amount=-2 +kerning first=362 second=225 amount=-3 +kerning first=241 second=253 amount=-2 +kerning first=354 second=336 amount=-3 +kerning first=277 second=253 amount=-2 +kerning first=118 second=232 amount=-3 +kerning first=321 second=291 amount=-3 +kerning first=82 second=232 amount=-3 +kerning first=1091 second=1103 amount=-4 +kerning first=8250 second=254 amount=-1 +kerning first=367 second=246 amount=-1 +kerning first=84 second=332 amount=-3 +kerning first=376 second=82 amount=-1 +kerning first=376 second=328 amount=-3 +kerning first=100 second=225 amount=-1 +kerning first=257 second=111 amount=-1 +kerning first=99 second=108 amount=-3 +kerning first=371 second=231 amount=-3 +kerning first=1039 second=1104 amount=-1 +kerning first=205 second=225 amount=-2 +kerning first=352 second=196 amount=-4 +kerning first=336 second=315 amount=-2 +kerning first=279 second=228 amount=-2 +kerning first=240 second=108 amount=-2 +kerning first=262 second=203 amount=-3 +kerning first=73 second=224 amount=-2 +kerning first=97 second=242 amount=-1 +kerning first=122 second=231 amount=-1 +kerning first=376 second=370 amount=-1 +kerning first=68 second=280 amount=-2 +kerning first=45 second=115 amount=-1 +kerning first=263 second=8217 amount=-2 +kerning first=113 second=102 amount=-2 +kerning first=321 second=374 amount=-3 +kerning first=67 second=196 amount=-3 +kerning first=86 second=231 amount=-3 +kerning first=79 second=8221 amount=-2 +kerning first=263 second=273 amount=-1 +kerning first=241 second=225 amount=-1 +kerning first=289 second=46 amount=-3 +kerning first=227 second=273 amount=-1 +kerning first=277 second=225 amount=-2 +kerning first=325 second=46 amount=-1 +kerning first=346 second=242 amount=-1 +kerning first=310 second=350 amount=-2 +kerning first=227 second=231 amount=-1 +kerning first=361 second=46 amount=-2 +kerning first=317 second=280 amount=-2 +kerning first=195 second=286 amount=-3 +kerning first=1065 second=1101 amount=-1 +kerning first=122 second=273 amount=-1 +kerning first=117 second=115 amount=-2 +kerning first=263 second=231 amount=-1 +kerning first=256 second=8221 amount=-5 +kerning first=305 second=326 amount=-1 +kerning first=205 second=211 amount=-2 +kerning first=249 second=307 amount=-2 +kerning first=1069 second=1083 amount=-2 +kerning first=90 second=286 amount=-1 +kerning first=382 second=242 amount=-1 +kerning first=263 second=245 amount=-1 +kerning first=234 second=371 amount=-2 +kerning first=200 second=81 amount=-1 +kerning first=74 second=119 amount=-1 +kerning first=1105 second=1083 amount=-2 +kerning first=227 second=245 amount=-1 +kerning first=199 second=67 amount=-3 +kerning first=110 second=119 amount=-3 +kerning first=246 second=314 amount=-2 +kerning first=217 second=46 amount=-5 +kerning first=67 second=210 amount=-3 +kerning first=367 second=231 amount=-1 +kerning first=317 second=266 amount=-1 +kerning first=218 second=102 amount=-1 +kerning first=99 second=122 amount=-2 +kerning first=1047 second=1049 amount=-2 +kerning first=254 second=102 amount=-1 +kerning first=344 second=81 amount=-3 +kerning first=251 second=119 amount=-3 +kerning first=8250 second=282 amount=-5 +kerning first=290 second=102 amount=-2 +kerning first=371 second=245 amount=-3 +kerning first=287 second=119 amount=-1 +kerning first=326 second=102 amount=-1 +kerning first=313 second=211 amount=-1 +kerning first=314 second=255 amount=-3 +kerning first=323 second=119 amount=-2 +kerning first=354 second=187 amount=-3 +kerning first=245 second=252 amount=-1 +kerning first=281 second=252 amount=-2 +kerning first=317 second=252 amount=-2 +kerning first=1051 second=1090 amount=-1 +kerning first=353 second=252 amount=-1 +kerning first=101 second=269 amount=-1 +kerning first=122 second=245 amount=-1 +kerning first=1105 second=1097 amount=-1 +kerning first=335 second=259 amount=-1 +kerning first=232 second=328 amount=-2 +kerning first=86 second=245 amount=-3 +kerning first=379 second=67 amount=-1 +kerning first=381 second=305 amount=-1 +kerning first=104 second=252 amount=-1 +kerning first=250 second=335 amount=-1 +kerning first=216 second=68 amount=-2 +kerning first=108 second=307 amount=-1 +kerning first=206 second=269 amount=-2 +kerning first=1088 second=1118 amount=-1 +kerning first=209 second=252 amount=-1 +kerning first=371 second=259 amount=-2 +kerning first=75 second=262 amount=-3 +kerning first=355 second=378 amount=-1 +kerning first=315 second=353 amount=-1 +kerning first=1096 second=1104 amount=-1 +kerning first=351 second=353 amount=-3 +kerning first=73 second=335 amount=-2 +kerning first=350 second=269 amount=-1 +kerning first=75 second=250 amount=-3 +kerning first=249 second=326 amount=-1 +kerning first=351 second=365 amount=-1 +kerning first=314 second=269 amount=-1 +kerning first=315 second=365 amount=-2 +kerning first=325 second=305 amount=-1 +kerning first=369 second=112 amount=-2 +kerning first=211 second=366 amount=-1 +kerning first=261 second=100 amount=-1 +kerning first=248 second=225 amount=-1 +kerning first=211 second=378 amount=-2 +kerning first=279 second=365 amount=-2 +kerning first=333 second=112 amount=-1 +kerning first=269 second=171 amount=-2 +kerning first=243 second=365 amount=-1 +kerning first=207 second=353 amount=-2 +kerning first=305 second=171 amount=-3 +kerning first=314 second=111 amount=-1 +kerning first=283 second=378 amount=-2 +kerning first=207 second=365 amount=-2 +kerning first=243 second=353 amount=-2 +kerning first=369 second=100 amount=-1 +kerning first=279 second=353 amount=-2 +kerning first=377 second=171 amount=-3 +kerning first=84 second=100 amount=-3 +kerning first=120 second=100 amount=-2 +kerning first=296 second=288 amount=-2 +kerning first=364 second=275 amount=-2 +kerning first=1036 second=1054 amount=-4 +kerning first=256 second=275 amount=-1 +kerning first=66 second=353 amount=-3 +kerning first=225 second=100 amount=-1 +kerning first=203 second=352 amount=-2 +kerning first=368 second=288 amount=-1 +kerning first=364 second=249 amount=-1 +kerning first=102 second=353 amount=-2 +kerning first=80 second=87 amount=-1 +kerning first=1030 second=1086 amount=-1 +kerning first=229 second=113 amount=-1 +kerning first=220 second=275 amount=-2 +kerning first=203 second=354 amount=-1 +kerning first=280 second=210 amount=-1 +kerning first=260 second=288 amount=-3 +kerning first=356 second=223 amount=-3 +kerning first=8216 second=368 amount=-1 +kerning first=88 second=113 amount=-2 +kerning first=83 second=365 amount=-1 +kerning first=83 second=274 amount=-3 +kerning first=315 second=379 amount=-3 +kerning first=69 second=296 amount=-2 +kerning first=333 second=114 amount=-1 +kerning first=196 second=231 amount=-1 +kerning first=211 second=380 amount=-2 +kerning first=79 second=8249 amount=-1 +kerning first=115 second=249 amount=-1 +kerning first=210 second=296 amount=-2 +kerning first=248 second=223 amount=-1 +kerning first=324 second=8220 amount=-4 +kerning first=381 second=198 amount=-1 +kerning first=283 second=380 amount=-2 +kerning first=288 second=8220 amount=-1 +kerning first=79 second=289 amount=-1 +kerning first=282 second=296 amount=-2 +kerning first=379 second=313 amount=-1 +kerning first=252 second=8220 amount=-3 +kerning first=256 second=249 amount=-3 +kerning first=115 second=289 amount=-3 +kerning first=192 second=217 amount=-3 +kerning first=75 second=248 amount=-2 +kerning first=216 second=8220 amount=-2 +kerning first=354 second=296 amount=-1 +kerning first=1055 second=1117 amount=-1 +kerning first=201 second=198 amount=-2 +kerning first=70 second=380 amount=-2 +kerning first=8216 second=122 amount=-1 +kerning first=220 second=289 amount=-4 +kerning first=84 second=114 amount=-1 +kerning first=106 second=380 amount=-1 +kerning first=111 second=8220 amount=-2 +kerning first=220 second=249 amount=-1 +kerning first=103 second=328 amount=-1 +kerning first=102 second=339 amount=-1 +kerning first=193 second=99 amount=-1 +kerning first=102 second=365 amount=-1 +kerning first=75 second=8220 amount=-2 +kerning first=66 second=365 amount=-3 +kerning first=364 second=346 amount=-3 +kerning first=1040 second=1079 amount=-1 +kerning first=199 second=327 amount=-3 +kerning first=332 second=274 amount=-2 +kerning first=364 second=263 amount=-2 +kerning first=264 second=315 amount=-3 +kerning first=187 second=206 amount=-5 +kerning first=66 second=379 amount=-4 +kerning first=66 second=339 amount=-1 +kerning first=229 second=99 amount=-1 +kerning first=328 second=8249 amount=-3 +kerning first=199 second=313 amount=-3 +kerning first=279 second=339 amount=-1 +kerning first=1048 second=1105 amount=-1 +kerning first=80 second=73 amount=-1 +kerning first=220 second=8249 amount=-5 +kerning first=83 second=112 amount=-3 +kerning first=1084 second=1105 amount=-1 +kerning first=256 second=8249 amount=-4 +kerning first=286 second=75 amount=-1 +kerning first=207 second=339 amount=-2 +kerning first=220 second=263 amount=-2 +kerning first=115 second=8249 amount=-1 +kerning first=87 second=315 amount=-1 +kerning first=379 second=327 amount=-1 +kerning first=261 second=378 amount=-1 +kerning first=256 second=263 amount=-1 +kerning first=214 second=75 amount=-2 +kerning first=212 second=209 amount=-2 +kerning first=201 second=212 amount=-1 +kerning first=229 second=254 amount=-1 +kerning first=8222 second=355 amount=-2 +kerning first=371 second=111 amount=-3 +kerning first=200 second=83 amount=-2 +kerning first=377 second=199 amount=-1 +kerning first=332 second=302 amount=-2 +kerning first=356 second=209 amount=-1 +kerning first=1062 second=1089 amount=-1 +kerning first=256 second=277 amount=-1 +kerning first=315 second=381 amount=-3 +kerning first=214 second=323 amount=-2 +kerning first=88 second=99 amount=-2 +kerning first=272 second=83 amount=-1 +kerning first=364 second=277 amount=-2 +kerning first=252 second=234 amount=-1 +kerning first=284 second=209 amount=-1 +kerning first=256 second=289 amount=-3 +kerning first=286 second=323 amount=-1 +kerning first=344 second=83 amount=-3 +kerning first=207 second=351 amount=-2 +kerning first=69 second=76 amount=-2 +kerning first=1100 second=1118 amount=-2 +kerning first=328 second=289 amount=-2 +kerning first=220 second=277 amount=-2 +kerning first=279 second=351 amount=-2 +kerning first=381 second=212 amount=-1 +kerning first=364 second=289 amount=-4 +kerning first=75 second=264 amount=-3 +kerning first=243 second=351 amount=-2 +kerning first=8220 second=194 amount=-8 +kerning first=88 second=111 amount=-2 +kerning first=71 second=209 amount=-1 +kerning first=86 second=233 amount=-3 +kerning first=369 second=114 amount=-1 +kerning first=193 second=111 amount=-1 +kerning first=279 second=367 amount=-2 +kerning first=102 second=351 amount=-2 +kerning first=211 second=364 amount=-1 +kerning first=229 second=111 amount=-1 +kerning first=315 second=367 amount=-2 +kerning first=122 second=233 amount=-1 +kerning first=66 second=351 amount=-3 +kerning first=223 second=8250 amount=-2 +kerning first=197 second=199 amount=-3 +kerning first=364 second=291 amount=-4 +kerning first=115 second=261 amount=-1 +kerning first=207 second=367 amount=-2 +kerning first=263 second=233 amount=-1 +kerning first=328 second=291 amount=-2 +kerning first=88 second=97 amount=-1 +kerning first=227 second=233 amount=-1 +kerning first=354 second=76 amount=-1 +kerning first=220 second=261 amount=-3 +kerning first=102 second=367 amount=-1 +kerning first=256 second=291 amount=-3 +kerning first=220 second=291 amount=-4 +kerning first=1080 second=1092 amount=-1 +kerning first=201 second=226 amount=-1 +kerning first=229 second=97 amount=-1 +kerning first=351 second=351 amount=-3 +kerning first=102 second=337 amount=-1 +kerning first=356 second=199 amount=-3 +kerning first=66 second=367 amount=-3 +kerning first=371 second=233 amount=-3 +kerning first=315 second=351 amount=-1 +kerning first=115 second=291 amount=-3 +kerning first=66 second=337 amount=-1 +kerning first=210 second=76 amount=-2 +kerning first=79 second=291 amount=-1 +kerning first=79 second=261 amount=-1 +kerning first=99 second=110 amount=-2 +kerning first=83 second=316 amount=-2 +kerning first=324 second=250 amount=-1 +kerning first=279 second=337 amount=-1 +kerning first=288 second=250 amount=-1 +kerning first=69 second=68 amount=-2 +kerning first=203 second=326 amount=-1 +kerning first=8250 second=119 amount=-3 +kerning first=106 second=378 amount=-1 +kerning first=325 second=287 amount=-3 +kerning first=197 second=171 amount=-4 +kerning first=224 second=316 amount=-1 +kerning first=250 second=103 amount=-3 +kerning first=70 second=378 amount=-2 +kerning first=83 second=302 amount=-3 +kerning first=337 second=97 amount=-1 +kerning first=275 second=326 amount=-2 +kerning first=290 second=350 amount=-2 +kerning first=260 second=316 amount=-2 +kerning first=205 second=380 amount=-1 +kerning first=111 second=250 amount=-1 +kerning first=328 second=261 amount=-1 +kerning first=199 second=261 amount=-2 +kerning first=218 second=350 amount=-3 +kerning first=252 second=250 amount=-1 +kerning first=364 second=261 amount=-3 +kerning first=212 second=289 amount=-1 +kerning first=98 second=326 amount=-1 +kerning first=66 second=381 amount=-4 +kerning first=353 second=8217 amount=-2 +kerning first=117 second=117 amount=-1 +kerning first=272 second=381 amount=-2 +kerning first=1113 second=1107 amount=-1 +kerning first=1071 second=1117 amount=-1 +kerning first=228 second=331 amount=-1 +kerning first=362 second=350 amount=-3 +kerning first=371 second=271 amount=-3 +kerning first=89 second=200 amount=-1 +kerning first=87 second=331 amount=-3 +kerning first=90 second=260 amount=-1 +kerning first=221 second=82 amount=-1 +kerning first=338 second=200 amount=-2 +kerning first=381 second=214 amount=-1 +kerning first=258 second=117 amount=-3 +kerning first=78 second=248 amount=-2 +kerning first=350 second=311 amount=-2 +kerning first=366 second=117 amount=-1 +kerning first=266 second=200 amount=-3 +kerning first=1047 second=1031 amount=-2 +kerning first=314 second=311 amount=-1 +kerning first=1105 second=1081 amount=-1 +kerning first=330 second=117 amount=-2 +kerning first=211 second=196 amount=-4 +kerning first=209 second=240 amount=-2 +kerning first=69 second=338 amount=-1 +kerning first=317 second=264 amount=-1 +kerning first=325 second=290 amount=-2 +kerning first=212 second=207 amount=-2 +kerning first=196 second=98 amount=-2 +kerning first=8220 second=196 amount=-8 +kerning first=122 second=271 amount=-1 +kerning first=76 second=290 amount=-1 +kerning first=209 second=264 amount=-2 +kerning first=203 second=259 amount=-1 +kerning first=45 second=377 amount=-4 +kerning first=201 second=214 amount=-1 +kerning first=227 second=271 amount=-1 +kerning first=45 second=117 amount=-1 +kerning first=281 second=240 amount=-1 +kerning first=81 second=377 amount=-2 +kerning first=263 second=271 amount=-1 +kerning first=217 second=290 amount=-1 +kerning first=71 second=207 amount=-1 +kerning first=332 second=304 amount=-2 +kerning first=290 second=90 amount=-2 +kerning first=268 second=330 amount=-3 +kerning first=45 second=217 amount=-4 +kerning first=222 second=377 amount=-2 +kerning first=98 second=324 amount=-1 +kerning first=187 second=220 amount=-4 +kerning first=362 second=90 amount=-1 +kerning first=8217 second=230 amount=-6 +kerning first=84 second=122 amount=-3 +kerning first=280 second=331 amount=-1 +kerning first=1038 second=1086 amount=-4 +kerning first=376 second=330 amount=-1 +kerning first=284 second=207 amount=-1 +kerning first=198 second=227 amount=-1 +kerning first=8217 second=347 amount=-2 +kerning first=69 second=303 amount=-1 +kerning first=122 second=305 amount=-2 +kerning first=8250 second=280 amount=-5 +kerning first=1047 second=1037 amount=-2 +kerning first=366 second=377 amount=-1 +kerning first=83 second=304 amount=-3 +kerning first=356 second=207 amount=-1 +kerning first=249 second=291 amount=-3 +kerning first=1055 second=1077 amount=-1 +kerning first=213 second=291 amount=-1 +kerning first=278 second=311 amount=-1 +kerning first=80 second=317 amount=-1 +kerning first=347 second=324 amount=-2 +kerning first=236 second=97 amount=-2 +kerning first=235 second=287 amount=-3 +kerning first=356 second=310 amount=-1 +kerning first=242 second=311 amount=-1 +kerning first=377 second=187 amount=-1 +kerning first=108 second=291 amount=-3 +kerning first=272 second=97 amount=-1 +kerning first=199 second=287 amount=-3 +kerning first=1062 second=1101 amount=-1 +kerning first=66 second=77 amount=-4 +kerning first=72 second=291 amount=-3 +kerning first=73 second=337 amount=-2 +kerning first=307 second=287 amount=-3 +kerning first=221 second=317 amount=-1 +kerning first=75 second=234 amount=-2 +kerning first=374 second=200 amount=-1 +kerning first=200 second=97 amount=-1 +kerning first=101 second=311 amount=-2 +kerning first=315 second=77 amount=-2 +kerning first=8222 second=365 amount=-1 +kerning first=380 second=97 amount=-1 +kerning first=379 second=287 amount=-3 +kerning first=89 second=290 amount=-3 +kerning first=65 second=311 amount=-2 +kerning first=233 second=187 amount=-2 +kerning first=87 second=71 amount=-3 +kerning first=193 second=235 amount=-1 +kerning first=71 second=197 amount=-3 +kerning first=275 second=324 amount=-2 +kerning first=218 second=90 amount=-1 +kerning first=250 second=337 amount=-1 +kerning first=90 second=298 amount=-1 +kerning first=1024 second=1040 amount=-2 +kerning first=192 second=71 amount=-3 +kerning first=74 second=84 amount=-1 +kerning first=108 second=263 amount=-1 +kerning first=286 second=365 amount=-1 +kerning first=212 second=197 amount=-4 +kerning first=375 second=277 amount=-3 +kerning first=250 second=365 amount=-1 +kerning first=209 second=268 amount=-2 +kerning first=221 second=100 amount=-3 +kerning first=240 second=120 amount=-3 +kerning first=317 second=268 amount=-1 +kerning first=284 second=197 amount=-3 +kerning first=249 second=263 amount=-1 +kerning first=336 second=303 amount=-1 +kerning first=344 second=353 amount=-2 +kerning first=268 second=70 amount=-3 +kerning first=356 second=197 amount=-6 +kerning first=371 second=243 amount=-3 +kerning first=73 second=365 amount=-2 +kerning first=8216 second=382 amount=-1 +kerning first=380 second=353 amount=-2 +kerning first=1043 second=1108 amount=-3 +kerning first=69 second=310 amount=-2 +kerning first=199 second=325 amount=-3 +kerning first=205 second=213 amount=-2 +kerning first=84 second=74 amount=-4 +kerning first=99 second=120 amount=-2 +kerning first=72 second=263 amount=-2 +kerning first=203 second=78 amount=-2 +kerning first=227 second=275 amount=-1 +kerning first=362 second=118 amount=-2 +kerning first=376 second=70 amount=-1 +kerning first=1030 second=1100 amount=-1 +kerning first=264 second=46 amount=-1 +kerning first=200 second=353 amount=-1 +kerning first=282 second=310 amount=-2 +kerning first=87 second=303 amount=-2 +kerning first=122 second=275 amount=-1 +kerning first=236 second=353 amount=-2 +kerning first=1073 second=1080 amount=-1 +kerning first=117 second=113 amount=-1 +kerning first=1102 second=1100 amount=-1 +kerning first=1047 second=1065 amount=-2 +kerning first=1037 second=1080 amount=-1 +kerning first=98 second=314 amount=-2 +kerning first=334 second=201 amount=-2 +kerning first=90 second=270 amount=-1 +kerning first=210 second=310 amount=-2 +kerning first=221 second=85 amount=-1 +kerning first=218 second=118 amount=-2 +kerning first=74 second=234 amount=-2 +kerning first=366 second=113 amount=-2 +kerning first=228 second=303 amount=-1 +kerning first=86 second=275 amount=-3 +kerning first=203 second=314 amount=-1 +kerning first=262 second=201 amount=-3 +kerning first=330 second=113 amount=-2 +kerning first=264 second=303 amount=-1 +kerning first=290 second=118 amount=-1 +kerning first=254 second=118 amount=-2 +kerning first=275 second=314 amount=-3 +kerning first=258 second=113 amount=-1 +kerning first=354 second=310 amount=-1 +kerning first=192 second=303 amount=-1 +kerning first=243 second=105 amount=-1 +kerning first=8250 second=252 amount=-1 +kerning first=206 second=283 amount=-2 +kerning first=365 second=8249 amount=-2 +kerning first=213 second=8249 amount=-1 +kerning first=279 second=105 amount=-2 +kerning first=113 second=118 amount=-3 +kerning first=354 second=338 amount=-3 +kerning first=72 second=8249 amount=-4 +kerning first=260 second=275 amount=-1 +kerning first=101 second=283 amount=-1 +kerning first=111 second=224 amount=-1 +kerning first=77 second=118 amount=-2 +kerning first=108 second=8249 amount=-3 +kerning first=207 second=105 amount=-1 +kerning first=279 second=104 amount=-2 +kerning first=65 second=283 amount=-1 +kerning first=75 second=224 amount=-1 +kerning first=282 second=338 amount=-1 +kerning first=277 second=241 amount=-2 +kerning first=350 second=283 amount=-1 +kerning first=216 second=224 amount=-1 +kerning first=280 second=228 amount=-1 +kerning first=268 second=98 amount=-1 +kerning first=241 second=241 amount=-1 +kerning first=314 second=283 amount=-1 +kerning first=374 second=228 amount=-4 +kerning first=240 second=380 amount=-2 +kerning first=1069 second=1053 amount=-1 +kerning first=288 second=224 amount=-1 +kerning first=1055 second=1087 amount=-1 +kerning first=313 second=241 amount=-1 +kerning first=252 second=224 amount=-1 +kerning first=367 second=248 amount=-1 +kerning first=302 second=228 amount=-2 +kerning first=209 second=283 amount=-2 +kerning first=100 second=241 amount=-1 +kerning first=266 second=228 amount=-2 +kerning first=76 second=318 amount=-2 +kerning first=120 second=112 amount=-3 +kerning first=324 second=224 amount=-1 +kerning first=230 second=228 amount=-2 +kerning first=112 second=318 amount=-2 +kerning first=84 second=112 amount=-2 +kerning first=99 second=380 amount=-2 +kerning first=1042 second=1118 amount=-1 +kerning first=379 second=325 amount=-1 +kerning first=321 second=8249 amount=-1 +kerning first=88 second=101 amount=-2 +kerning first=259 second=248 amount=-1 +kerning first=107 second=235 amount=-3 +kerning first=253 second=318 amount=-2 +kerning first=118 second=248 amount=-3 +kerning first=289 second=318 amount=-3 +kerning first=249 second=8249 amount=-2 +kerning first=193 second=101 amount=-1 +kerning first=264 second=331 amount=-1 +kerning first=229 second=101 amount=-1 +kerning first=219 second=193 amount=-4 +kerning first=375 second=279 amount=-3 +kerning first=82 second=365 amount=-2 +kerning first=1098 second=1097 amount=-1 +kerning first=346 second=256 amount=-4 +kerning first=1058 second=1072 amount=-2 +kerning first=334 second=205 amount=-2 +kerning first=272 second=303 amount=-1 +kerning first=1054 second=1047 amount=-2 +kerning first=376 second=66 amount=-1 +kerning first=338 second=230 amount=-1 +kerning first=378 second=255 amount=-2 +kerning first=82 second=216 amount=-3 +kerning first=234 second=231 amount=-1 +kerning first=274 second=256 amount=-2 +kerning first=374 second=230 amount=-5 +kerning first=339 second=252 amount=-2 +kerning first=8217 second=213 amount=-2 +kerning first=279 second=226 amount=-2 +kerning first=1062 second=1073 amount=-1 +kerning first=302 second=230 amount=-2 +kerning first=1030 second=1098 amount=-1 +kerning first=234 second=255 amount=-2 +kerning first=378 second=231 amount=-1 +kerning first=314 second=281 amount=-1 +kerning first=262 second=205 amount=-3 +kerning first=230 second=230 amount=-2 +kerning first=106 second=108 amount=-2 +kerning first=1102 second=1098 amount=-1 +kerning first=350 second=281 amount=-1 +kerning first=351 second=107 amount=-1 +kerning first=202 second=280 amount=-2 +kerning first=310 second=99 amount=-2 +kerning first=65 second=281 amount=-1 +kerning first=315 second=107 amount=-2 +kerning first=101 second=281 amount=-1 +kerning first=256 second=251 amount=-3 +kerning first=274 second=280 amount=-2 +kerning first=257 second=347 amount=-1 +kerning first=325 second=289 amount=-3 +kerning first=221 second=347 amount=-3 +kerning first=206 second=281 amount=-2 +kerning first=249 second=8221 amount=-3 +kerning first=346 second=280 amount=-3 +kerning first=116 second=347 amount=-1 +kerning first=279 second=107 amount=-2 +kerning first=315 second=105 amount=-2 +kerning first=80 second=347 amount=-1 +kerning first=243 second=107 amount=-1 +kerning first=364 second=251 amount=-1 +kerning first=351 second=105 amount=-2 +kerning first=203 second=80 amount=-2 +kerning first=250 second=333 amount=-1 +kerning first=221 second=345 amount=-1 +kerning first=66 second=81 amount=-3 +kerning first=106 second=106 amount=-2 +kerning first=274 second=282 amount=-2 +kerning first=374 second=204 amount=-1 +kerning first=97 second=318 amount=-1 +kerning first=268 second=68 amount=-3 +kerning first=321 second=8221 amount=-4 +kerning first=378 second=229 amount=-1 +kerning first=381 second=196 amount=-1 +kerning first=202 second=282 amount=-2 +kerning first=264 second=67 amount=-3 +kerning first=73 second=333 amount=-2 +kerning first=376 second=68 amount=-1 +kerning first=283 second=106 amount=-2 +kerning first=192 second=67 amount=-3 +kerning first=363 second=235 amount=-1 +kerning first=8216 second=110 amount=-1 +kerning first=207 second=81 amount=-2 +kerning first=334 second=203 amount=-2 +kerning first=315 second=81 amount=-1 +kerning first=211 second=106 amount=-1 +kerning first=211 second=368 amount=-1 +kerning first=87 second=67 amount=-3 +kerning first=89 second=230 amount=-5 +kerning first=89 second=204 amount=-1 +kerning first=1003 second=1007 amount=-2 +kerning first=8216 second=380 amount=-1 +kerning first=227 second=243 amount=-1 +kerning first=222 second=226 amount=-1 +kerning first=263 second=243 amount=-1 +kerning first=83 second=278 amount=-3 +kerning first=101 second=307 amount=-2 +kerning first=266 second=204 amount=-3 +kerning first=202 second=256 amount=-2 +kerning first=256 second=121 amount=-3 +kerning first=338 second=204 amount=-2 +kerning first=86 second=243 amount=-3 +kerning first=242 second=307 amount=-1 +kerning first=1047 second=1033 amount=-1 +kerning first=122 second=243 amount=-1 +kerning first=119 second=44 amount=-5 +kerning first=332 second=278 amount=-2 +kerning first=83 second=44 amount=-4 +kerning first=283 second=104 amount=-2 +kerning first=315 second=79 amount=-1 +kerning first=219 second=90 amount=-1 +kerning first=282 second=334 amount=-1 +kerning first=224 second=44 amount=-1 +kerning first=362 second=81 amount=-1 +kerning first=207 second=79 amount=-2 +kerning first=87 second=69 amount=-1 +kerning first=337 second=369 amount=-1 +kerning first=351 second=109 amount=-2 +kerning first=199 second=362 amount=-2 +kerning first=88 second=369 amount=-3 +kerning first=315 second=109 amount=-1 +kerning first=229 second=369 amount=-1 +kerning first=82 second=244 amount=-3 +kerning first=1057 second=1055 amount=-1 +kerning first=1105 second=1085 amount=-1 +kerning first=198 second=229 amount=-1 +kerning first=272 second=200 amount=-2 +kerning first=279 second=109 amount=-2 +kerning first=310 second=284 amount=-3 +kerning first=234 second=227 amount=-2 +kerning first=1073 second=1084 amount=-1 +kerning first=374 second=232 amount=-3 +kerning first=74 second=192 amount=-5 +kerning first=8217 second=211 amount=-2 +kerning first=204 second=380 amount=-1 +kerning first=1037 second=1084 amount=-1 +kerning first=101 second=279 amount=-1 +kerning first=252 second=8249 amount=-2 +kerning first=1048 second=1095 amount=-1 +kerning first=106 second=104 amount=-1 +kerning first=65 second=279 amount=-1 +kerning first=274 second=284 amount=-1 +kerning first=368 second=44 amount=-5 +kerning first=234 second=229 amount=-2 +kerning first=87 second=305 amount=-2 +kerning first=102 second=109 amount=-1 +kerning first=346 second=282 amount=-3 +kerning first=69 second=334 amount=-1 +kerning first=332 second=44 amount=-3 +kerning first=378 second=227 amount=-1 +kerning first=66 second=109 amount=-3 +kerning first=214 second=65 amount=-4 +kerning first=230 second=232 amount=-1 +kerning first=192 second=305 amount=-1 +kerning first=194 second=232 amount=-1 +kerning first=286 second=65 amount=-3 +kerning first=302 second=232 amount=-2 +kerning first=109 second=361 amount=-1 +kerning first=249 second=267 amount=-1 +kerning first=198 second=257 amount=-1 +kerning first=264 second=305 amount=-1 +kerning first=266 second=232 amount=-2 +kerning first=73 second=361 amount=-2 +kerning first=1102 second=1096 amount=-1 +kerning first=234 second=257 amount=-2 +kerning first=219 second=214 amount=-1 +kerning first=228 second=305 amount=-1 +kerning first=382 second=254 amount=-1 +kerning first=336 second=305 amount=-1 +kerning first=112 second=8250 amount=-2 +kerning first=286 second=361 amount=-1 +kerning first=89 second=232 amount=-3 +kerning first=250 second=361 amount=-1 +kerning first=365 second=229 amount=-1 +kerning first=89 second=202 amount=-1 +kerning first=365 second=347 amount=-2 +kerning first=118 second=244 amount=-3 +kerning first=380 second=121 amount=-2 +kerning first=344 second=121 amount=-3 +kerning first=338 second=202 amount=-2 +kerning first=274 second=254 amount=-1 +kerning first=310 second=254 amount=-1 +kerning first=221 second=325 amount=-1 +kerning first=266 second=202 amount=-3 +kerning first=346 second=254 amount=-2 +kerning first=8216 second=378 amount=-1 +kerning first=236 second=121 amount=-3 +kerning first=336 second=69 amount=-2 +kerning first=268 second=66 amount=-3 +kerning first=1030 second=1096 amount=-1 +kerning first=203 second=82 amount=-2 +kerning first=97 second=254 amount=-1 +kerning first=367 second=244 amount=-1 +kerning first=1098 second=1099 amount=-1 +kerning first=72 second=267 amount=-2 +kerning first=374 second=202 amount=-1 +kerning first=264 second=69 amount=-3 +kerning first=108 second=267 amount=-1 +kerning first=378 second=257 amount=-1 +kerning first=202 second=254 amount=-1 +kerning first=302 second=212 amount=-2 +kerning first=8222 second=357 amount=-2 +kerning first=370 second=199 amount=-1 +kerning first=338 second=212 amount=-1 +kerning first=79 second=8217 amount=-2 +kerning first=187 second=69 amount=-5 +kerning first=69 second=66 amount=-2 +kerning first=1039 second=1102 amount=-1 +kerning first=381 second=202 amount=-1 +kerning first=115 second=8217 amount=-2 +kerning first=1102 second=1116 amount=-1 +kerning first=73 second=79 amount=-2 +kerning first=266 second=212 amount=-3 +kerning first=196 second=99 amount=-1 +kerning first=196 second=332 amount=-3 +kerning first=84 second=82 amount=-1 +kerning first=221 second=69 amount=-1 +kerning first=1113 second=1119 amount=-1 +kerning first=282 second=66 amount=-2 +kerning first=194 second=212 amount=-3 +kerning first=76 second=316 amount=-2 +kerning first=80 second=69 amount=-1 +kerning first=1094 second=1086 amount=-1 +kerning first=268 second=332 amount=-3 +kerning first=1092 second=1088 amount=-1 +kerning first=307 second=225 amount=-2 +kerning first=89 second=212 amount=-3 +kerning first=356 second=205 amount=-1 +kerning first=304 second=332 amount=-2 +kerning first=352 second=192 amount=-4 +kerning first=332 second=82 amount=-2 +kerning first=203 second=76 amount=-2 +kerning first=85 second=199 amount=-1 +kerning first=268 second=72 amount=-3 +kerning first=201 second=216 amount=-1 +kerning first=8217 second=102 amount=-1 +kerning first=376 second=332 amount=-3 +kerning first=280 second=192 amount=-2 +kerning first=212 second=205 amount=-2 +kerning first=208 second=192 amount=-4 +kerning first=205 second=229 amount=-2 +kerning first=90 second=290 amount=-1 +kerning first=187 second=203 amount=-5 +kerning first=1119 second=1077 amount=-1 +kerning first=256 second=8217 amount=-5 +kerning first=262 second=199 amount=-3 +kerning first=284 second=205 amount=-1 +kerning first=374 second=212 amount=-3 +kerning first=298 second=199 amount=-2 +kerning first=376 second=72 amount=-1 +kerning first=209 second=242 amount=-2 +kerning first=100 second=229 amount=-1 +kerning first=194 second=235 amount=-1 +kerning first=354 second=326 amount=-3 +kerning first=230 second=226 amount=-2 +kerning first=281 second=242 amount=-1 +kerning first=266 second=226 amount=-2 +kerning first=268 second=86 amount=-1 +kerning first=302 second=226 amount=-2 +kerning first=71 second=205 amount=-1 +kerning first=338 second=226 amount=-1 +kerning first=45 second=119 amount=-3 +kerning first=263 second=8221 amount=-2 +kerning first=1040 second=1108 amount=-2 +kerning first=374 second=226 amount=-5 +kerning first=246 second=326 amount=-1 +kerning first=356 second=219 amount=-1 +kerning first=8220 second=198 amount=-8 +kerning first=282 second=326 amount=-1 +kerning first=117 second=119 amount=-3 +kerning first=1063 second=1087 amount=-1 +kerning first=69 second=74 amount=-1 +kerning first=284 second=219 amount=-1 +kerning first=117 second=279 amount=-1 +kerning first=66 second=103 amount=-4 +kerning first=69 second=326 amount=-1 +kerning first=258 second=119 amount=-3 +kerning first=264 second=333 amount=-2 +kerning first=201 second=202 amount=-2 +kerning first=105 second=326 amount=-2 +kerning first=289 second=316 amount=-3 +kerning first=66 second=305 amount=-3 +kerning first=330 second=119 amount=-2 +kerning first=371 second=8221 amount=-3 +kerning first=339 second=248 amount=-1 +kerning first=366 second=119 amount=-2 +kerning first=71 second=219 amount=-1 +kerning first=196 second=86 amount=-6 +kerning first=87 second=333 amount=-3 +kerning first=89 second=226 amount=-5 +kerning first=228 second=333 amount=-1 +kerning first=1116 second=1073 amount=-1 +kerning first=8218 second=291 amount=-1 +kerning first=192 second=333 amount=-1 +kerning first=1037 second=1092 amount=-1 +kerning first=290 second=377 amount=-2 +kerning first=108 second=269 amount=-1 +kerning first=328 second=259 amount=-1 +kerning first=355 second=116 amount=-1 +kerning first=72 second=269 amount=-2 +kerning first=337 second=375 amount=-3 +kerning first=351 second=103 amount=-3 +kerning first=66 second=369 amount=-3 +kerning first=70 second=382 amount=-2 +kerning first=1055 second=1085 amount=-1 +kerning first=315 second=103 amount=-3 +kerning first=102 second=363 amount=-1 +kerning first=106 second=382 amount=-1 +kerning first=1040 second=1063 amount=-5 +kerning first=192 second=45 amount=-4 +kerning first=252 second=246 amount=-1 +kerning first=252 second=252 amount=-1 +kerning first=243 second=103 amount=-2 +kerning first=249 second=269 amount=-1 +kerning first=207 second=363 amount=-2 +kerning first=115 second=259 amount=-1 +kerning first=1098 second=1075 amount=-1 +kerning first=234 second=253 amount=-2 +kerning first=288 second=252 amount=-1 +kerning first=207 second=103 amount=-3 +kerning first=317 second=366 amount=-3 +kerning first=243 second=363 amount=-1 +kerning first=283 second=116 amount=-1 +kerning first=324 second=252 amount=-1 +kerning first=228 second=45 amount=-2 +kerning first=279 second=363 amount=-2 +kerning first=220 second=259 amount=-3 +kerning first=8217 second=235 amount=-3 +kerning first=106 second=122 amount=-1 +kerning first=1037 second=1086 amount=-1 +kerning first=1054 second=1043 amount=-1 +kerning first=315 second=363 amount=-2 +kerning first=216 second=74 amount=-2 +kerning first=315 second=369 amount=-2 +kerning first=274 second=266 amount=-1 +kerning first=70 second=122 amount=-2 +kerning first=351 second=363 amount=-1 +kerning first=279 second=369 amount=-2 +kerning first=355 second=382 amount=-1 +kerning first=310 second=266 amount=-3 +kerning first=257 second=257 amount=-1 +kerning first=376 second=378 amount=-3 +kerning first=202 second=266 amount=-1 +kerning first=351 second=369 amount=-1 +kerning first=77 second=232 amount=-2 +kerning first=283 second=122 amount=-2 +kerning first=229 second=375 amount=-3 +kerning first=102 second=369 amount=-1 +kerning first=211 second=382 amount=-2 +kerning first=193 second=375 amount=-3 +kerning first=211 second=122 amount=-2 +kerning first=8218 second=108 amount=-1 +kerning first=370 second=352 amount=-3 +kerning first=103 second=233 amount=-2 +kerning first=337 second=109 amount=-1 +kerning first=1087 second=1072 amount=-1 +kerning first=207 second=369 amount=-2 +kerning first=283 second=382 amount=-2 +kerning first=69 second=313 amount=-2 +kerning first=88 second=375 amount=-3 +kerning first=68 second=206 amount=-2 +kerning first=102 second=355 amount=-1 +kerning first=193 second=115 amount=-2 +kerning first=256 second=279 amount=-1 +kerning first=66 second=355 amount=-2 +kerning first=203 second=336 amount=-1 +kerning first=229 second=115 amount=-1 +kerning first=229 second=109 amount=-1 +kerning first=88 second=115 amount=-1 +kerning first=328 second=303 amount=-1 +kerning first=1097 second=1108 amount=-1 +kerning first=8222 second=318 amount=-1 +kerning first=279 second=355 amount=-1 +kerning first=337 second=115 amount=-2 +kerning first=243 second=355 amount=-1 +kerning first=76 second=296 amount=-2 +kerning first=220 second=279 amount=-2 +kerning first=378 second=253 amount=-2 +kerning first=252 second=232 amount=-1 +kerning first=351 second=355 amount=-2 +kerning first=106 second=116 amount=-1 +kerning first=283 second=108 amount=-3 +kerning first=89 second=206 amount=-1 +kerning first=84 second=370 amount=-1 +kerning first=45 second=89 amount=-4 +kerning first=75 second=232 amount=-2 +kerning first=187 second=73 amount=-5 +kerning first=266 second=206 amount=-3 +kerning first=87 second=325 amount=-1 +kerning first=275 second=328 amount=-2 +kerning first=87 second=313 amount=-1 +kerning first=1113 second=1113 amount=-1 +kerning first=338 second=206 amount=-2 +kerning first=203 second=328 amount=-1 +kerning first=214 second=73 amount=-2 +kerning first=1077 second=1113 amount=-1 +kerning first=71 second=225 amount=-1 +kerning first=199 second=303 amount=-1 +kerning first=113 second=98 amount=-2 +kerning first=199 second=352 amount=-3 +kerning first=379 second=315 amount=-1 +kerning first=264 second=325 amount=-3 +kerning first=379 second=303 amount=-1 +kerning first=199 second=315 amount=-3 +kerning first=364 second=235 amount=-2 +kerning first=381 second=289 amount=-3 +kerning first=195 second=290 amount=-3 +kerning first=66 second=83 amount=-4 +kerning first=336 second=325 amount=-2 +kerning first=307 second=303 amount=-1 +kerning first=1025 second=1025 amount=-1 +kerning first=347 second=328 amount=-2 +kerning first=1055 second=1107 amount=-1 +kerning first=313 second=255 amount=-3 +kerning first=313 second=221 amount=-3 +kerning first=284 second=225 amount=-1 +kerning first=326 second=380 amount=-1 +kerning first=207 second=83 amount=-2 +kerning first=80 second=323 amount=-1 +kerning first=1048 second=1117 amount=-1 +kerning first=356 second=225 amount=-5 +kerning first=201 second=196 amount=-2 +kerning first=304 second=338 amount=-2 +kerning first=311 second=249 amount=-1 +kerning first=315 second=83 amount=-1 +kerning first=330 second=214 amount=-2 +kerning first=107 second=225 amount=-2 +kerning first=368 second=286 amount=-1 +kerning first=268 second=338 amount=-3 +kerning first=254 second=98 amount=-1 +kerning first=286 second=85 amount=-1 +kerning first=218 second=380 amount=-3 +kerning first=258 second=263 amount=-1 +kerning first=212 second=225 amount=-1 +kerning first=296 second=286 amount=-2 +kerning first=254 second=380 amount=-2 +kerning first=326 second=98 amount=-2 +kerning first=214 second=85 amount=-1 +kerning first=221 second=8250 amount=-3 +kerning first=290 second=380 amount=-1 +kerning first=290 second=98 amount=-1 +kerning first=225 second=102 amount=-1 +kerning first=246 second=46 amount=-3 +kerning first=264 second=311 amount=-1 +kerning first=221 second=77 amount=-1 +kerning first=261 second=102 amount=-1 +kerning first=282 second=46 amount=-1 +kerning first=8220 second=192 amount=-8 +kerning first=260 second=286 amount=-3 +kerning first=228 second=311 amount=-1 +kerning first=199 second=317 amount=-3 +kerning first=192 second=311 amount=-2 +kerning first=333 second=102 amount=-1 +kerning first=354 second=46 amount=-5 +kerning first=1051 second=1080 amount=-1 +kerning first=80 second=77 amount=-1 +kerning first=201 second=210 amount=-1 +kerning first=69 second=46 amount=-1 +kerning first=84 second=102 amount=-1 +kerning first=73 second=71 amount=-2 +kerning first=105 second=46 amount=-2 +kerning first=234 second=233 amount=-1 +kerning first=120 second=102 amount=-1 +kerning first=210 second=46 amount=-3 +kerning first=196 second=352 amount=-3 +kerning first=326 second=112 amount=-1 +kerning first=356 second=211 amount=-3 +kerning first=75 second=252 amount=-3 +kerning first=290 second=112 amount=-1 +kerning first=208 second=200 amount=-2 +kerning first=70 second=110 amount=-1 +kerning first=378 second=233 amount=-1 +kerning first=100 second=235 amount=-1 +kerning first=111 second=252 amount=-1 +kerning first=254 second=112 amount=-1 +kerning first=106 second=110 amount=-2 +kerning first=371 second=253 amount=-2 +kerning first=208 second=46 amount=-3 +kerning first=218 second=112 amount=-2 +kerning first=324 second=289 amount=-2 +kerning first=205 second=235 amount=-2 +kerning first=369 second=102 amount=-1 +kerning first=98 second=328 amount=-1 +kerning first=352 second=200 amount=-3 +kerning first=277 second=235 amount=-1 +kerning first=77 second=112 amount=-1 +kerning first=1044 second=1090 amount=-1 +kerning first=283 second=110 amount=-2 +kerning first=84 second=350 amount=-3 +kerning first=280 second=200 amount=-2 +kerning first=236 second=113 amount=-1 +kerning first=218 second=378 amount=-3 +kerning first=205 second=237 amount=-1 +kerning first=104 second=250 amount=-1 +kerning first=1037 second=1094 amount=-1 +kerning first=317 second=262 amount=-1 +kerning first=72 second=275 amount=-2 +kerning first=250 second=353 amount=-2 +kerning first=100 second=237 amount=-1 +kerning first=209 second=250 amount=-2 +kerning first=108 second=275 amount=-1 +kerning first=380 second=113 amount=-1 +kerning first=99 second=171 amount=-2 +kerning first=380 second=365 amount=-2 +kerning first=362 second=100 amount=-2 +kerning first=344 second=113 amount=-3 +kerning first=344 second=365 amount=-2 +kerning first=290 second=366 amount=-1 +kerning first=200 second=251 amount=-2 +kerning first=106 second=99 amount=-1 +kerning first=113 second=378 amount=-2 +kerning first=73 second=353 amount=-2 +kerning first=369 second=117 amount=-1 +kerning first=362 second=112 amount=-2 +kerning first=77 second=378 amount=-1 +kerning first=109 second=353 amount=-1 +kerning first=284 second=254 amount=-1 +kerning first=286 second=87 amount=-3 +kerning first=195 second=288 amount=-3 +kerning first=263 second=249 amount=-2 +kerning first=274 second=260 amount=-2 +kerning first=304 second=352 amount=-2 +kerning first=218 second=100 amount=-2 +kerning first=268 second=352 amount=-3 +kerning first=1065 second=1054 amount=-1 +kerning first=362 second=227 amount=-3 +kerning first=216 second=70 amount=-2 +kerning first=214 second=87 amount=-2 +kerning first=196 second=243 amount=-1 +kerning first=346 second=260 amount=-4 +kerning first=376 second=352 amount=-3 +kerning first=196 second=354 amount=-6 +kerning first=8220 second=244 amount=-3 +kerning first=1030 second=1102 amount=-1 +kerning first=362 second=378 amount=-3 +kerning first=268 second=354 amount=-1 +kerning first=326 second=378 amount=-1 +kerning first=77 second=100 amount=-2 +kerning first=1102 second=1102 amount=-1 +kerning first=90 second=288 amount=-1 +kerning first=249 second=275 amount=-1 +kerning first=113 second=100 amount=-1 +kerning first=381 second=210 amount=-1 +kerning first=209 second=262 amount=-2 +kerning first=371 second=249 amount=-1 +kerning first=1055 second=1105 amount=-1 +kerning first=72 second=289 amount=-3 +kerning first=277 second=223 amount=-1 +kerning first=344 second=99 amount=-3 +kerning first=1091 second=1105 amount=-2 +kerning first=108 second=289 amount=-3 +kerning first=362 second=114 amount=-1 +kerning first=208 second=198 amount=-4 +kerning first=77 second=380 amount=-1 +kerning first=213 second=289 amount=-1 +kerning first=250 second=339 amount=-1 +kerning first=281 second=248 amount=-1 +kerning first=313 second=223 amount=-1 +kerning first=113 second=380 amount=-2 +kerning first=380 second=99 amount=-1 +kerning first=1062 second=1077 amount=-1 +kerning first=1054 second=1053 amount=-1 +kerning first=87 second=327 amount=-1 +kerning first=86 second=249 amount=-1 +kerning first=209 second=248 amount=-2 +kerning first=90 second=274 amount=-1 +kerning first=353 second=8220 amount=-2 +kerning first=218 second=114 amount=-1 +kerning first=1047 second=1039 amount=-2 +kerning first=371 second=263 amount=-3 +kerning first=317 second=8220 amount=-4 +kerning first=254 second=114 amount=-1 +kerning first=67 second=198 amount=-3 +kerning first=281 second=8220 amount=-2 +kerning first=122 second=263 amount=-1 +kerning first=236 second=365 amount=-1 +kerning first=264 second=327 amount=-3 +kerning first=65 second=287 amount=-3 +kerning first=200 second=365 amount=-2 +kerning first=227 second=263 amount=-1 +kerning first=336 second=327 amount=-2 +kerning first=1091 second=1078 amount=-1 +kerning first=263 second=263 amount=-1 +kerning first=200 second=379 amount=-1 +kerning first=101 second=287 amount=-3 +kerning first=104 second=8220 amount=-4 +kerning first=280 second=198 amount=-2 +kerning first=221 second=75 amount=-1 +kerning first=242 second=287 amount=-2 +kerning first=68 second=8220 amount=-2 +kerning first=286 second=73 amount=-1 +kerning first=272 second=379 amount=-2 +kerning first=206 second=287 amount=-3 +kerning first=202 second=259 amount=-1 +kerning first=313 second=237 amount=-2 +kerning first=264 second=313 amount=-3 +kerning first=352 second=198 amount=-4 +kerning first=314 second=287 amount=-3 +kerning first=277 second=237 amount=-2 +kerning first=80 second=75 amount=-1 +kerning first=73 second=339 amount=-2 +kerning first=305 second=324 amount=-1 +kerning first=278 second=287 amount=-3 +kerning first=236 second=99 amount=-1 +kerning first=241 second=237 amount=-1 +kerning first=8250 second=256 amount=-4 +kerning first=8222 second=316 amount=-1 +kerning first=118 second=234 amount=-3 +kerning first=253 second=44 amount=-5 +kerning first=113 second=104 amount=-2 +kerning first=350 second=287 amount=-3 +kerning first=1098 second=1091 amount=-2 +kerning first=307 second=233 amount=-1 +kerning first=234 second=237 amount=-2 +kerning first=225 second=244 amount=-1 +kerning first=259 second=234 amount=-1 +kerning first=75 second=244 amount=-2 +kerning first=198 second=237 amount=-1 +kerning first=290 second=104 amount=-1 +kerning first=8220 second=351 amount=-2 +kerning first=219 second=197 amount=-4 +kerning first=354 second=324 amount=-3 +kerning first=217 second=44 amount=-5 +kerning first=254 second=104 amount=-1 +kerning first=206 second=279 amount=-2 +kerning first=82 second=234 amount=-3 +kerning first=192 second=332 amount=-3 +kerning first=208 second=194 amount=-4 +kerning first=205 second=227 amount=-2 +kerning first=249 second=277 amount=-1 +kerning first=335 second=331 amount=-1 +kerning first=109 second=351 amount=-1 +kerning first=202 second=368 amount=-2 +kerning first=100 second=227 amount=-1 +kerning first=236 second=111 amount=-1 +kerning first=266 second=46 amount=-1 +kerning first=73 second=351 amount=-2 +kerning first=1058 second=1054 amount=-1 +kerning first=206 second=380 amount=-1 +kerning first=283 second=351 amount=-2 +kerning first=108 second=277 amount=-1 +kerning first=69 second=314 amount=-1 +kerning first=67 second=194 amount=-3 +kerning first=315 second=87 amount=-3 +kerning first=72 second=277 amount=-2 +kerning first=250 second=8249 amount=-2 +kerning first=367 second=234 amount=-1 +kerning first=277 second=227 amount=-2 +kerning first=1030 second=1104 amount=-1 +kerning first=105 second=314 amount=-2 +kerning first=268 second=74 amount=-2 +kerning first=241 second=227 amount=-1 +kerning first=314 second=8249 amount=-3 +kerning first=229 second=121 amount=-3 +kerning first=207 second=361 amount=-2 +kerning first=220 second=267 amount=-2 +kerning first=80 second=327 amount=-1 +kerning first=371 second=257 amount=-2 +kerning first=344 second=367 amount=-2 +kerning first=350 second=8249 amount=-3 +kerning first=193 second=121 amount=-3 +kerning first=256 second=267 amount=-1 +kerning first=380 second=367 amount=-2 +kerning first=1051 second=1074 amount=-1 +kerning first=84 second=364 amount=-1 +kerning first=376 second=74 amount=-4 +kerning first=278 second=8249 amount=-2 +kerning first=88 second=121 amount=-3 +kerning first=243 second=361 amount=-1 +kerning first=221 second=327 amount=-1 +kerning first=335 second=257 amount=-1 +kerning first=86 second=261 amount=-5 +kerning first=245 second=254 amount=-1 +kerning first=351 second=361 amount=-1 +kerning first=335 second=230 amount=-1 +kerning first=227 second=257 amount=-1 +kerning first=200 second=367 amount=-2 +kerning first=206 second=8249 amount=-4 +kerning first=281 second=254 amount=-2 +kerning first=315 second=361 amount=-2 +kerning first=263 second=257 amount=-2 +kerning first=236 second=367 amount=-1 +kerning first=344 second=111 amount=-3 +kerning first=317 second=254 amount=-2 +kerning first=118 second=224 amount=-3 +kerning first=380 second=111 amount=-1 +kerning first=250 second=351 amount=-2 +kerning first=82 second=224 amount=-2 +kerning first=1093 second=1086 amount=-2 +kerning first=1047 second=1051 amount=-1 +kerning first=290 second=374 amount=-3 +kerning first=223 second=224 amount=-1 +kerning first=104 second=254 amount=-2 +kerning first=187 second=224 amount=-1 +kerning first=335 second=261 amount=-1 +kerning first=214 second=200 amount=-2 +kerning first=295 second=224 amount=-1 +kerning first=371 second=261 amount=-2 +kerning first=337 second=117 amount=-1 +kerning first=259 second=224 amount=-1 +kerning first=8218 second=102 amount=-1 +kerning first=268 second=344 amount=-3 +kerning first=367 second=224 amount=-1 +kerning first=281 second=250 amount=-2 +kerning first=1040 second=1057 amount=-3 +kerning first=337 second=121 amount=-3 +kerning first=90 second=284 amount=-1 +kerning first=369 second=249 amount=-1 +kerning first=1031 second=1072 amount=-1 +kerning first=331 second=224 amount=-1 +kerning first=106 second=114 amount=-1 +kerning first=274 second=274 amount=-2 +kerning first=245 second=250 amount=-1 +kerning first=102 second=361 amount=-1 +kerning first=353 second=250 amount=-1 +kerning first=66 second=361 amount=-3 +kerning first=376 second=344 amount=-1 +kerning first=263 second=261 amount=-2 +kerning first=202 second=274 amount=-2 +kerning first=317 second=250 amount=-2 +kerning first=1003 second=997 amount=-2 +kerning first=365 second=331 amount=-1 +kerning first=236 second=101 amount=-1 +kerning first=257 second=337 amount=-1 +kerning first=257 second=331 amount=-1 +kerning first=284 second=221 amount=-3 +kerning first=1047 second=1041 amount=-2 +kerning first=351 second=97 amount=-1 +kerning first=1048 second=1107 amount=-1 +kerning first=221 second=337 amount=-3 +kerning first=317 second=370 amount=-3 +kerning first=296 second=290 amount=-2 +kerning first=212 second=221 amount=-2 +kerning first=88 second=117 amount=-3 +kerning first=344 second=101 amount=-3 +kerning first=201 second=200 amount=-2 +kerning first=221 second=331 amount=-3 +kerning first=229 second=117 amount=-1 +kerning first=380 second=101 amount=-1 +kerning first=368 second=290 amount=-1 +kerning first=193 second=117 amount=-3 +kerning first=365 second=337 amount=-1 +kerning first=1098 second=1087 amount=-1 +kerning first=261 second=98 amount=-1 +kerning first=374 second=214 amount=-3 +kerning first=267 second=291 amount=-3 +kerning first=8217 second=229 amount=-6 +kerning first=369 second=98 amount=-2 +kerning first=122 second=251 amount=-2 +kerning first=203 second=338 amount=-1 +kerning first=333 second=98 amount=-1 +kerning first=260 second=290 amount=-3 +kerning first=86 second=251 amount=-2 +kerning first=120 second=98 amount=-3 +kerning first=8218 second=104 amount=-1 +kerning first=266 second=214 amount=-3 +kerning first=227 second=251 amount=-1 +kerning first=310 second=264 amount=-3 +kerning first=355 second=380 amount=-1 +kerning first=252 second=240 amount=-1 +kerning first=274 second=264 amount=-1 +kerning first=225 second=98 amount=-1 +kerning first=375 second=273 amount=-3 +kerning first=338 second=214 amount=-1 +kerning first=1069 second=1067 amount=-1 +kerning first=302 second=214 amount=-2 +kerning first=263 second=251 amount=-2 +kerning first=202 second=264 amount=-1 +kerning first=272 second=68 amount=-2 +kerning first=89 second=214 amount=-3 +kerning first=264 second=317 amount=-3 +kerning first=371 second=251 amount=-1 +kerning first=89 second=220 amount=-1 +kerning first=286 second=77 amount=-1 +kerning first=335 second=251 amount=-1 +kerning first=194 second=231 amount=-1 +kerning first=221 second=71 amount=-3 +kerning first=70 second=210 amount=-1 +kerning first=194 second=214 amount=-3 +kerning first=336 second=317 amount=-2 +kerning first=332 second=298 amount=-2 +kerning first=214 second=77 amount=-2 +kerning first=352 second=194 amount=-4 +kerning first=67 second=303 amount=-1 +kerning first=87 second=317 amount=-1 +kerning first=266 second=220 amount=-2 +kerning first=280 second=194 amount=-2 +kerning first=1056 second=1059 amount=-1 +kerning first=194 second=220 amount=-3 +kerning first=228 second=252 amount=-1 +kerning first=350 second=291 amount=-3 +kerning first=203 second=330 amount=-2 +kerning first=268 second=84 amount=-1 +kerning first=66 second=97 amount=-3 +kerning first=381 second=200 amount=-1 +kerning first=314 second=291 amount=-3 +kerning first=246 second=324 amount=-1 +kerning first=290 second=368 amount=-1 +kerning first=102 second=97 amount=-2 +kerning first=278 second=291 amount=-3 +kerning first=71 second=221 amount=-3 +kerning first=1069 second=1103 amount=-1 +kerning first=242 second=291 amount=-2 +kerning first=307 second=311 amount=-1 +kerning first=1098 second=1081 amount=-1 +kerning first=206 second=291 amount=-3 +kerning first=282 second=324 amount=-1 +kerning first=1102 second=1114 amount=-1 +kerning first=243 second=97 amount=-1 +kerning first=69 second=324 amount=-1 +kerning first=83 second=298 amount=-3 +kerning first=279 second=97 amount=-2 +kerning first=235 second=311 amount=-2 +kerning first=101 second=291 amount=-3 +kerning first=1030 second=1114 amount=-1 +kerning first=1055 second=1101 amount=-1 +kerning first=199 second=311 amount=-1 +kerning first=65 second=291 amount=-3 +kerning first=80 second=337 amount=-1 +kerning first=207 second=97 amount=-2 +kerning first=356 second=213 amount=-3 +kerning first=105 second=324 amount=-2 +kerning first=236 second=375 amount=-3 +kerning first=118 second=228 amount=-3 +kerning first=364 second=8249 amount=-5 +kerning first=334 second=193 amount=-4 +kerning first=227 second=253 amount=-3 +kerning first=266 second=218 amount=-2 +kerning first=82 second=228 amount=-2 +kerning first=378 second=243 amount=-1 +kerning first=1105 second=1075 amount=-1 +kerning first=70 second=120 amount=-1 +kerning first=263 second=253 amount=-2 +kerning first=262 second=193 amount=-3 +kerning first=106 second=120 amount=-1 +kerning first=194 second=218 amount=-3 +kerning first=376 second=78 amount=-1 +kerning first=335 second=253 amount=-3 +kerning first=380 second=375 amount=-2 +kerning first=1098 second=1085 amount=-1 +kerning first=380 second=103 amount=-2 +kerning first=8250 second=260 amount=-4 +kerning first=202 second=268 amount=-1 +kerning first=344 second=375 amount=-3 +kerning first=234 second=243 amount=-1 +kerning first=370 second=193 amount=-4 +kerning first=344 second=103 amount=-3 +kerning first=310 second=268 amount=-3 +kerning first=374 second=218 amount=-1 +kerning first=1058 second=1060 amount=-1 +kerning first=338 second=218 amount=-2 +kerning first=1047 second=1045 amount=-2 +kerning first=268 second=78 amount=-3 +kerning first=1055 second=1095 amount=-1 +kerning first=355 second=120 amount=-1 +kerning first=203 second=70 amount=-2 +kerning first=76 second=310 amount=-2 +kerning first=1073 second=1100 amount=-1 +kerning first=1047 second=1043 amount=-2 +kerning first=355 second=118 amount=-1 +kerning first=211 second=120 amount=-1 +kerning first=89 second=218 amount=-1 +kerning first=250 second=345 amount=-1 +kerning first=350 second=45 amount=-3 +kerning first=86 second=253 amount=-3 +kerning first=283 second=120 amount=-2 +kerning first=122 second=253 amount=-2 +kerning first=80 second=65 amount=-4 +kerning first=202 second=270 amount=-2 +kerning first=248 second=326 amount=-1 +kerning first=283 second=118 amount=-2 +kerning first=1054 second=1051 amount=-3 +kerning first=71 second=78 amount=-1 +kerning first=221 second=65 amount=-6 +kerning first=274 second=270 amount=-2 +kerning first=90 second=280 amount=-1 +kerning first=236 second=105 amount=-1 +kerning first=1065 second=1089 amount=-1 +kerning first=199 second=305 amount=-1 +kerning first=378 second=241 amount=-2 +kerning first=109 second=251 amount=-1 +kerning first=8217 second=227 amount=-6 +kerning first=83 second=8250 amount=-1 +kerning first=334 second=90 amount=-2 +kerning first=1030 second=1108 amount=-1 +kerning first=272 second=105 amount=-1 +kerning first=101 second=324 amount=-2 +kerning first=69 second=318 amount=-1 +kerning first=1098 second=1083 amount=-1 +kerning first=106 second=118 amount=-3 +kerning first=105 second=318 amount=-2 +kerning first=234 second=245 amount=-1 +kerning first=108 second=283 amount=-1 +kerning first=200 second=105 amount=-1 +kerning first=70 second=118 amount=-1 +kerning first=235 second=305 amount=-2 +kerning first=72 second=283 amount=-2 +kerning first=221 second=335 amount=-3 +kerning first=234 second=241 amount=-2 +kerning first=87 second=171 amount=-5 +kerning first=1092 second=1084 amount=-1 +kerning first=307 second=305 amount=-2 +kerning first=198 second=241 amount=-1 +kerning first=8218 second=287 amount=-1 +kerning first=380 second=291 amount=-2 +kerning first=8217 second=100 amount=-3 +kerning first=8217 second=223 amount=-2 +kerning first=367 second=228 amount=-1 +kerning first=379 second=305 amount=-1 +kerning first=331 second=228 amount=-1 +kerning first=249 second=283 amount=-1 +kerning first=295 second=228 amount=-1 +kerning first=254 second=108 amount=-2 +kerning first=346 second=270 amount=-3 +kerning first=80 second=335 amount=-1 +kerning first=259 second=228 amount=-1 +kerning first=67 second=200 amount=-3 +kerning first=223 second=228 amount=-1 +kerning first=326 second=108 amount=-1 +kerning first=85 second=193 amount=-4 +kerning first=290 second=370 amount=-1 +kerning first=290 second=108 amount=-1 +kerning first=249 second=281 amount=-1 +kerning first=205 second=231 amount=-2 +kerning first=73 second=347 amount=-2 +kerning first=236 second=107 amount=-1 +kerning first=203 second=66 amount=-2 +kerning first=100 second=231 amount=-1 +kerning first=68 second=256 amount=-4 +kerning first=200 second=107 amount=-1 +kerning first=1055 second=1097 amount=-1 +kerning first=72 second=281 amount=-2 +kerning first=1094 second=1092 amount=-1 +kerning first=369 second=113 amount=-1 +kerning first=307 second=231 amount=-1 +kerning first=108 second=281 amount=-1 +kerning first=317 second=256 amount=-2 +kerning first=1047 second=1047 amount=-2 +kerning first=1037 second=1098 amount=-1 +kerning first=331 second=230 amount=-1 +kerning first=371 second=255 amount=-2 +kerning first=1051 second=1072 amount=-1 +kerning first=367 second=230 amount=-1 +kerning first=335 second=255 amount=-3 +kerning first=277 second=231 amount=-1 +kerning first=1100 second=1114 amount=-1 +kerning first=221 second=67 amount=-3 +kerning first=203 second=332 amount=-1 +kerning first=313 second=253 amount=-3 +kerning first=266 second=216 amount=-3 +kerning first=263 second=255 amount=-2 +kerning first=302 second=216 amount=-2 +kerning first=227 second=255 amount=-3 +kerning first=227 second=353 amount=-1 +kerning first=310 second=346 amount=-2 +kerning first=338 second=216 amount=-1 +kerning first=380 second=371 amount=-2 +kerning first=122 second=255 amount=-2 +kerning first=225 second=242 amount=-1 +kerning first=89 second=216 amount=-3 +kerning first=86 second=255 amount=-3 +kerning first=8222 second=314 amount=-1 +kerning first=250 second=347 amount=-2 +kerning first=380 second=107 amount=-2 +kerning first=262 second=378 amount=-2 +kerning first=194 second=216 amount=-3 +kerning first=236 second=371 amount=-1 +kerning first=344 second=107 amount=-3 +kerning first=67 second=192 amount=-3 +kerning first=80 second=333 amount=-1 +kerning first=212 second=217 amount=-1 +kerning first=221 second=333 amount=-3 +kerning first=241 second=229 amount=-1 +kerning first=252 second=242 amount=-1 +kerning first=1054 second=1033 amount=-3 +kerning first=376 second=80 amount=-1 +kerning first=277 second=229 amount=-2 +kerning first=73 second=81 amount=-2 +kerning first=113 second=106 amount=4 +kerning first=284 second=217 amount=-1 +kerning first=374 second=216 amount=-3 +kerning first=70 second=212 amount=-1 +kerning first=381 second=204 amount=-1 +kerning first=356 second=217 amount=-1 +kerning first=268 second=80 amount=-3 +kerning first=199 second=251 amount=-2 +kerning first=203 second=68 amount=-2 +kerning first=290 second=106 amount=-1 +kerning first=259 second=230 amount=-1 +kerning first=88 second=119 amount=-3 +kerning first=90 second=282 amount=-1 +kerning first=326 second=106 amount=-2 +kerning first=295 second=230 amount=-1 +kerning first=196 second=346 amount=-3 +kerning first=187 second=230 amount=-1 +kerning first=193 second=119 amount=-3 +kerning first=235 second=307 amount=-2 +kerning first=254 second=106 amount=-2 +kerning first=223 second=230 amount=-1 +kerning first=229 second=119 amount=-3 +kerning first=82 second=230 amount=-2 +kerning first=8218 second=289 amount=-1 +kerning first=307 second=307 amount=-1 +kerning first=118 second=230 amount=-3 +kerning first=257 second=333 amount=-1 +kerning first=337 second=119 amount=-2 +kerning first=365 second=333 amount=-1 +kerning first=304 second=346 amount=-2 +kerning first=201 second=204 amount=-2 +kerning first=71 second=217 amount=-1 +kerning first=268 second=346 amount=-3 +kerning first=75 second=230 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I1.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I1.png new file mode 100644 index 000000000..ecf37a03d Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I1.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I2.png b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I2.png new file mode 100644 index 000000000..502d04d95 Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/FreeSerif64I2.png differ diff --git a/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.fnt b/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.fnt new file mode 100644 index 000000000..e5efc1d75 --- /dev/null +++ b/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.fnt @@ -0,0 +1,18131 @@ +info face="Free Serif Italic" size=16 bold=0 italic=1 charset="" unicode=0 stretchH=100 smooth=1 aa=1 padding=0,0,0,0 spacing=0,0 +common lineHeight=22 base=16 scaleW=512 scaleH=512 pages=1 packed=0 +page id=0 file="Native-FreeSerif16I.png" +chars count=754 +char id=0 x=0 y=0 width=17 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=13 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=0 +char id=32 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=33 x=17 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=34 x=27 y=0 width=12 height=22 xoffset=2 yoffset=0 xadvance=7 page=0 chnl=0 +char id=35 x=39 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=36 x=52 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=37 x=65 y=0 width=18 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=38 x=83 y=0 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=39 x=100 y=0 width=8 height=22 xoffset=2 yoffset=0 xadvance=3 page=0 chnl=0 +char id=40 x=108 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=41 x=118 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=42 x=128 y=0 width=13 height=22 xoffset=2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=43 x=141 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=44 x=157 y=0 width=9 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=45 x=166 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=46 x=176 y=0 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=47 x=185 y=0 width=12 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=48 x=197 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=49 x=210 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=50 x=223 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=51 x=236 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=52 x=249 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=53 x=262 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=54 x=275 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=55 x=288 y=0 width=13 height=22 xoffset=1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=56 x=301 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=57 x=314 y=0 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=58 x=327 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=59 x=337 y=0 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=60 x=347 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=61 x=363 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=62 x=379 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=63 x=395 y=0 width=13 height=22 xoffset=2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=64 x=408 y=0 width=20 height=22 xoffset=1 yoffset=0 xadvance=15 page=0 chnl=0 +char id=65 x=428 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=66 x=443 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=67 x=458 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=68 x=474 y=0 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=69 x=491 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=70 x=0 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=71 x=15 y=22 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=72 x=32 y=22 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=73 x=49 y=22 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=74 x=60 y=22 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=75 x=72 y=22 width=16 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=76 x=88 y=22 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=77 x=102 y=22 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=78 x=120 y=22 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=79 x=136 y=22 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=80 x=153 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=81 x=168 y=22 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=82 x=185 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=83 x=200 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=84 x=213 y=22 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=85 x=228 y=22 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=86 x=245 y=22 width=16 height=22 xoffset=1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=87 x=261 y=22 width=19 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=88 x=280 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=89 x=295 y=22 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=90 x=310 y=22 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=91 x=324 y=22 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=92 x=335 y=22 width=10 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=93 x=345 y=22 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=94 x=356 y=22 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=95 x=368 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=96 x=381 y=22 width=13 height=22 xoffset=5 yoffset=0 xadvance=5 page=0 chnl=0 +char id=97 x=394 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=98 x=407 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=99 x=420 y=22 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=100 x=432 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=101 x=445 y=22 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=102 x=457 y=22 width=13 height=22 xoffset=-3 yoffset=0 xadvance=4 page=0 chnl=0 +char id=103 x=470 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=104 x=483 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=105 x=496 y=22 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=106 x=0 y=44 width=10 height=22 xoffset=-2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=107 x=10 y=44 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=108 x=22 y=44 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=109 x=31 y=44 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=110 x=48 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=111 x=61 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=112 x=74 y=44 width=14 height=22 xoffset=-2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=113 x=88 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=114 x=101 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=115 x=112 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=116 x=123 y=44 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=117 x=132 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=118 x=145 y=44 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=119 x=157 y=44 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=120 x=173 y=44 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=121 x=185 y=44 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=122 x=197 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=123 x=208 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=124 x=219 y=44 width=9 height=22 xoffset=1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=125 x=228 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=126 x=239 y=44 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=160 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=161 x=253 y=44 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=162 x=264 y=44 width=13 height=22 xoffset=1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=163 x=277 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=164 x=290 y=44 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=165 x=303 y=44 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=166 x=317 y=44 width=9 height=22 xoffset=1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=167 x=326 y=44 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=168 x=339 y=44 width=11 height=22 xoffset=1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=169 x=350 y=44 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=170 x=367 y=44 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=171 x=377 y=44 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=172 x=389 y=44 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=173 x=405 y=44 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=174 x=415 y=44 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=175 x=432 y=44 width=11 height=22 xoffset=1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=176 x=443 y=44 width=11 height=22 xoffset=1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=177 x=454 y=44 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=178 x=470 y=44 width=11 height=22 xoffset=1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=179 x=481 y=44 width=11 height=22 xoffset=2 yoffset=0 xadvance=5 page=0 chnl=0 +char id=180 x=492 y=44 width=11 height=22 xoffset=3 yoffset=0 xadvance=5 page=0 chnl=0 +char id=181 x=0 y=66 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=182 x=13 y=66 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=183 x=27 y=66 width=9 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=184 x=36 y=66 width=10 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=185 x=46 y=66 width=10 height=22 xoffset=1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=186 x=56 y=66 width=10 height=22 xoffset=1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=187 x=66 y=66 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=188 x=78 y=66 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=189 x=95 y=66 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=190 x=112 y=66 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=191 x=129 y=66 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=192 x=142 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=193 x=157 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=194 x=172 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=195 x=187 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=196 x=202 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=197 x=217 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=198 x=232 y=66 width=19 height=22 xoffset=-1 yoffset=0 xadvance=14 page=0 chnl=0 +char id=199 x=251 y=66 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=200 x=267 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=201 x=282 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=202 x=297 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=203 x=312 y=66 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=204 x=327 y=66 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=205 x=338 y=66 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=206 x=349 y=66 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=207 x=361 y=66 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=208 x=373 y=66 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=209 x=390 y=66 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=210 x=406 y=66 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=211 x=423 y=66 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=212 x=440 y=66 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=213 x=457 y=66 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=214 x=474 y=66 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=215 x=491 y=66 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=216 x=0 y=88 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=217 x=17 y=88 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=218 x=34 y=88 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=219 x=51 y=88 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=220 x=68 y=88 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=221 x=85 y=88 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=222 x=100 y=88 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=223 x=115 y=88 width=15 height=22 xoffset=-3 yoffset=0 xadvance=8 page=0 chnl=0 +char id=224 x=130 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=225 x=143 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=226 x=156 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=227 x=169 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=228 x=182 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=229 x=195 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=230 x=208 y=88 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=231 x=224 y=88 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=232 x=236 y=88 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=233 x=248 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=234 x=261 y=88 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=235 x=273 y=88 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=236 x=285 y=88 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=237 x=294 y=88 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=238 x=304 y=88 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=239 x=314 y=88 width=11 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=240 x=325 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=241 x=338 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=242 x=351 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=243 x=364 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=244 x=377 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=245 x=390 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=246 x=403 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=247 x=416 y=88 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=248 x=432 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=249 x=445 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=250 x=458 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=251 x=471 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=252 x=484 y=88 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=253 x=497 y=88 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=254 x=0 y=110 width=14 height=22 xoffset=-2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=255 x=14 y=110 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=256 x=26 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=257 x=41 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=258 x=54 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=259 x=69 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=260 x=82 y=110 width=16 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=261 x=98 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=262 x=111 y=110 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=263 x=127 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=264 x=139 y=110 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=265 x=155 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=266 x=167 y=110 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=267 x=183 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=268 x=195 y=110 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=269 x=211 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=270 x=224 y=110 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=271 x=241 y=110 width=16 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=272 x=373 y=66 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=273 x=257 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=274 x=270 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=275 x=285 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=276 x=297 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=277 x=312 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=278 x=325 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=279 x=340 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=280 x=352 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=281 x=367 y=110 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=282 x=379 y=110 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=283 x=394 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=284 x=407 y=110 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=285 x=424 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=286 x=437 y=110 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=287 x=454 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=288 x=467 y=110 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=289 x=484 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=290 x=0 y=132 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=291 x=497 y=110 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=292 x=17 y=132 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=293 x=34 y=132 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=294 x=48 y=132 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=295 x=65 y=132 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=296 x=78 y=132 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=297 x=90 y=132 width=11 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=298 x=101 y=132 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=299 x=113 y=132 width=11 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=300 x=124 y=132 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=301 x=136 y=132 width=11 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=302 x=147 y=132 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=303 x=158 y=132 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=304 x=167 y=132 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=305 x=178 y=132 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=306 x=187 y=132 width=17 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=307 x=204 y=132 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=308 x=217 y=132 width=14 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=309 x=231 y=132 width=12 height=22 xoffset=-2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=310 x=243 y=132 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=311 x=259 y=132 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=312 x=271 y=132 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=313 x=283 y=132 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=314 x=297 y=132 width=11 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=315 x=308 y=132 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=316 x=322 y=132 width=9 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=317 x=331 y=132 width=15 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=318 x=346 y=132 width=12 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=319 x=358 y=132 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=320 x=372 y=132 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=321 x=382 y=132 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=322 x=396 y=132 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=323 x=405 y=132 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=324 x=421 y=132 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=325 x=434 y=132 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=326 x=450 y=132 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=327 x=463 y=132 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=328 x=479 y=132 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=329 x=492 y=132 width=14 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=330 x=0 y=154 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=331 x=17 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=332 x=30 y=154 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=333 x=47 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=334 x=60 y=154 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=335 x=77 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=336 x=90 y=154 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=337 x=107 y=154 width=15 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=338 x=122 y=154 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=339 x=142 y=154 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=340 x=158 y=154 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=341 x=173 y=154 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=342 x=184 y=154 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=343 x=199 y=154 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=344 x=210 y=154 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=345 x=225 y=154 width=12 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=346 x=237 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=347 x=250 y=154 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=348 x=261 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=349 x=274 y=154 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=350 x=285 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=351 x=298 y=154 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=352 x=309 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=353 x=322 y=154 width=12 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=354 x=334 y=154 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=355 x=349 y=154 width=9 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=356 x=358 y=154 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=357 x=373 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=358 x=386 y=154 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=359 x=401 y=154 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=360 x=410 y=154 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=361 x=427 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=362 x=440 y=154 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=363 x=457 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=364 x=470 y=154 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=365 x=487 y=154 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=366 x=0 y=176 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=367 x=17 y=176 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=368 x=30 y=176 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=369 x=47 y=176 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=370 x=61 y=176 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=371 x=78 y=176 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=372 x=91 y=176 width=19 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=373 x=110 y=176 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=374 x=126 y=176 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=375 x=141 y=176 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=376 x=153 y=176 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=377 x=168 y=176 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=378 x=500 y=154 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=379 x=182 y=176 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=380 x=196 y=176 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=381 x=207 y=176 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=382 x=221 y=176 width=12 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=383 x=233 y=176 width=13 height=22 xoffset=-3 yoffset=0 xadvance=4 page=0 chnl=0 +char id=884 x=503 y=44 width=8 height=22 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=0 +char id=885 x=246 y=176 width=8 height=22 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=0 +char id=890 x=254 y=176 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=894 x=264 y=176 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=900 x=274 y=176 width=9 height=22 xoffset=1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=901 x=283 y=176 width=12 height=22 xoffset=2 yoffset=0 xadvance=5 page=0 chnl=0 +char id=902 x=295 y=176 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=903 x=311 y=176 width=9 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=904 x=320 y=176 width=18 height=22 xoffset=2 yoffset=0 xadvance=13 page=0 chnl=0 +char id=905 x=338 y=176 width=21 height=22 xoffset=2 yoffset=0 xadvance=15 page=0 chnl=0 +char id=906 x=359 y=176 width=14 height=22 xoffset=2 yoffset=0 xadvance=9 page=0 chnl=0 +char id=908 x=373 y=176 width=18 height=22 xoffset=2 yoffset=0 xadvance=13 page=0 chnl=0 +char id=910 x=391 y=176 width=20 height=22 xoffset=2 yoffset=0 xadvance=14 page=0 chnl=0 +char id=911 x=411 y=176 width=19 height=22 xoffset=2 yoffset=0 xadvance=14 page=0 chnl=0 +char id=912 x=430 y=176 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=913 x=440 y=176 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=914 x=456 y=176 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=915 x=470 y=176 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=916 x=485 y=176 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=917 x=491 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=918 x=0 y=198 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=919 x=15 y=198 width=18 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=920 x=33 y=198 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=921 x=49 y=198 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=922 x=72 y=22 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=923 x=60 y=198 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=924 x=102 y=22 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=925 x=120 y=22 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=926 x=75 y=198 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=927 x=91 y=198 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=928 x=107 y=198 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=929 x=153 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=931 x=124 y=198 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=932 x=213 y=22 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=933 x=140 y=198 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=934 x=156 y=198 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=935 x=280 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=936 x=173 y=198 width=19 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=937 x=192 y=198 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=938 x=209 y=198 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=939 x=221 y=198 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=940 x=237 y=198 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=941 x=251 y=198 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=942 x=263 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=943 x=501 y=176 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=944 x=276 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=945 x=289 y=198 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=946 x=303 y=198 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=947 x=316 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=948 x=329 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=949 x=342 y=198 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=950 x=354 y=198 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=951 x=365 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=952 x=378 y=198 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=953 x=392 y=198 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=954 x=401 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=955 x=414 y=198 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=956 x=427 y=198 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=957 x=440 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=958 x=453 y=198 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=959 x=465 y=198 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=960 x=478 y=198 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=961 x=493 y=198 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=962 x=0 y=220 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=963 x=12 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=964 x=25 y=220 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=965 x=37 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=966 x=50 y=220 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=967 x=65 y=220 width=13 height=22 xoffset=-2 yoffset=0 xadvance=7 page=0 chnl=0 +char id=968 x=78 y=220 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=969 x=94 y=220 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=970 x=110 y=220 width=10 height=22 xoffset=-1 yoffset=0 xadvance=4 page=0 chnl=0 +char id=971 x=120 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=972 x=133 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=973 x=146 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=974 x=159 y=220 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=976 x=175 y=220 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=977 x=189 y=220 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=978 x=203 y=220 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=979 x=218 y=220 width=19 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=980 x=237 y=220 width=16 height=22 xoffset=1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=981 x=253 y=220 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=982 x=268 y=220 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=983 x=284 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=984 x=297 y=220 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=985 x=312 y=220 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=986 x=326 y=220 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=987 x=340 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=988 x=353 y=220 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=989 x=368 y=220 width=14 height=22 xoffset=-2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=990 x=382 y=220 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=991 x=397 y=220 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=992 x=409 y=220 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=993 x=425 y=220 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1008 x=439 y=220 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1009 x=453 y=220 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1010 x=467 y=220 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1011 x=0 y=44 width=10 height=22 xoffset=-2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1012 x=480 y=220 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1013 x=497 y=220 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1014 x=0 y=242 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1015 x=100 y=88 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1016 x=9 y=242 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1017 x=22 y=242 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1018 x=38 y=242 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1019 x=56 y=242 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1020 x=72 y=242 width=16 height=22 xoffset=-3 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1021 x=88 y=242 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1022 x=104 y=242 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1023 x=120 y=242 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1024 x=136 y=242 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1025 x=151 y=242 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1026 x=166 y=242 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1027 x=182 y=242 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1028 x=197 y=242 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1029 x=200 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1030 x=213 y=242 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=1031 x=224 y=242 width=12 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=1032 x=236 y=242 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1033 x=248 y=242 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1034 x=269 y=242 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1035 x=290 y=242 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1036 x=306 y=242 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1037 x=322 y=242 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1038 x=339 y=242 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1039 x=356 y=242 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1040 x=428 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1041 x=373 y=242 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1042 x=443 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1043 x=470 y=176 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1044 x=388 y=242 width=17 height=22 xoffset=-2 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1045 x=491 y=0 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1046 x=405 y=242 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1047 x=426 y=242 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1048 x=440 y=242 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1049 x=457 y=242 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1050 x=474 y=242 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1051 x=490 y=242 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1052 x=102 y=22 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1053 x=32 y=22 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1054 x=136 y=22 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1055 x=107 y=198 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1056 x=153 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1057 x=458 y=0 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1058 x=213 y=22 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1059 x=0 y=264 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1060 x=156 y=198 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1061 x=280 y=22 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1062 x=17 y=264 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1063 x=34 y=264 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1064 x=50 y=264 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1065 x=71 y=264 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1066 x=92 y=264 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1067 x=108 y=264 width=19 height=22 xoffset=-1 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1068 x=127 y=264 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1069 x=142 y=264 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1070 x=157 y=264 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1071 x=178 y=264 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1072 x=394 y=22 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1073 x=194 y=264 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1074 x=208 y=264 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1075 x=220 y=264 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1076 x=231 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1077 x=445 y=22 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1078 x=244 y=264 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1079 x=264 y=264 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1080 x=275 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1081 x=288 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1082 x=301 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1083 x=314 y=264 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1084 x=327 y=264 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1085 x=342 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1086 x=355 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1087 x=368 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1088 x=381 y=264 width=14 height=22 xoffset=-2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1089 x=395 y=264 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1090 x=31 y=44 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1091 x=407 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1092 x=420 y=264 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1093 x=437 y=264 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1094 x=449 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1095 x=462 y=264 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1096 x=475 y=264 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1097 x=492 y=264 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1098 x=0 y=286 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1099 x=14 y=286 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1100 x=30 y=286 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1101 x=42 y=286 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1102 x=54 y=286 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1103 x=70 y=286 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1104 x=83 y=286 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1105 x=95 y=286 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1106 x=107 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1107 x=120 y=286 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1108 x=131 y=286 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1109 x=143 y=286 width=11 height=22 xoffset=0 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1110 x=154 y=286 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1111 x=163 y=286 width=10 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1112 x=0 y=44 width=10 height=22 xoffset=-2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=1113 x=173 y=286 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1114 x=189 y=286 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1115 x=205 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1116 x=218 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1117 x=231 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1118 x=244 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1119 x=257 y=286 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1120 x=270 y=286 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1121 x=290 y=286 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1122 x=306 y=286 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1123 x=322 y=286 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1124 x=338 y=286 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1125 x=359 y=286 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1126 x=374 y=286 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1127 x=392 y=286 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1128 x=407 y=286 width=23 height=22 xoffset=-1 yoffset=0 xadvance=18 page=0 chnl=0 +char id=1129 x=430 y=286 width=18 height=22 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1130 x=448 y=286 width=20 height=22 xoffset=-1 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1131 x=468 y=286 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1132 x=485 y=286 width=25 height=22 xoffset=-1 yoffset=0 xadvance=20 page=0 chnl=0 +char id=1133 x=0 y=308 width=19 height=22 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1134 x=19 y=308 width=14 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1135 x=33 y=308 width=12 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1136 x=45 y=308 width=20 height=22 xoffset=2 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1137 x=65 y=308 width=17 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1138 x=82 y=308 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1139 x=99 y=308 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1140 x=112 y=308 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1141 x=129 y=308 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1142 x=143 y=308 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1143 x=160 y=308 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1144 x=174 y=308 width=24 height=22 xoffset=0 yoffset=0 xadvance=19 page=0 chnl=0 +char id=1145 x=198 y=308 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1146 x=218 y=308 width=19 height=22 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1147 x=237 y=308 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1148 x=252 y=308 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1149 x=272 y=308 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1150 x=288 y=308 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1151 x=308 y=308 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1152 x=324 y=308 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1153 x=338 y=308 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1154 x=350 y=308 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=1155 x=360 y=308 width=10 height=22 xoffset=-4 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1156 x=370 y=308 width=11 height=22 xoffset=-5 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1157 x=381 y=308 width=7 height=22 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1158 x=388 y=308 width=7 height=22 xoffset=-1 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1159 x=395 y=308 width=14 height=22 xoffset=-7 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1160 x=409 y=308 width=19 height=22 xoffset=-12 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1161 x=428 y=308 width=22 height=22 xoffset=-13 yoffset=0 xadvance=0 page=0 chnl=0 +char id=1162 x=450 y=308 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1163 x=467 y=308 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1164 x=480 y=308 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1165 x=495 y=308 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1166 x=0 y=330 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1167 x=15 y=330 width=14 height=22 xoffset=-2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1168 x=29 y=330 width=15 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1169 x=44 y=330 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1170 x=56 y=330 width=15 height=22 xoffset=-1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1171 x=71 y=330 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1172 x=83 y=330 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1173 x=98 y=330 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1174 x=110 y=330 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1175 x=131 y=330 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1176 x=151 y=330 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1177 x=165 y=330 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1178 x=176 y=330 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1179 x=192 y=330 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1180 x=205 y=330 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1181 x=221 y=330 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1182 x=235 y=330 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1183 x=251 y=330 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1184 x=264 y=330 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1185 x=281 y=330 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1186 x=297 y=330 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1187 x=314 y=330 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1188 x=327 y=330 width=20 height=22 xoffset=-1 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1189 x=347 y=330 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1190 x=363 y=330 width=22 height=22 xoffset=0 yoffset=0 xadvance=17 page=0 chnl=0 +char id=1191 x=385 y=330 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1192 x=401 y=330 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1193 x=418 y=330 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1194 x=432 y=330 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1195 x=448 y=330 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1196 x=460 y=330 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1197 x=475 y=330 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1198 x=492 y=330 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1199 x=0 y=352 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1200 x=14 y=352 width=15 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1201 x=29 y=352 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1202 x=43 y=352 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1203 x=59 y=352 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1204 x=71 y=352 width=19 height=22 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1205 x=90 y=352 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1206 x=104 y=352 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1207 x=120 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1208 x=133 y=352 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1209 x=149 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1210 x=162 y=352 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1211 x=177 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1212 x=190 y=352 width=18 height=22 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1213 x=208 y=352 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1214 x=222 y=352 width=18 height=22 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1215 x=240 y=352 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1216 x=254 y=352 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=1217 x=265 y=352 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1218 x=286 y=352 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1219 x=306 y=352 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1220 x=322 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1221 x=335 y=352 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1222 x=352 y=352 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1223 x=365 y=352 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1224 x=382 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1225 x=395 y=352 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1226 x=412 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1227 x=425 y=352 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1228 x=441 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1229 x=454 y=352 width=18 height=22 xoffset=-1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1230 x=472 y=352 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1231 x=487 y=352 width=11 height=22 xoffset=-1 yoffset=0 xadvance=5 page=0 chnl=0 +char id=1232 x=0 y=374 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1233 x=498 y=352 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1234 x=15 y=374 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1235 x=30 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1236 x=43 y=374 width=19 height=22 xoffset=-1 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1237 x=62 y=374 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1238 x=78 y=374 width=15 height=22 xoffset=-1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1239 x=93 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1240 x=106 y=374 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1241 x=123 y=374 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1242 x=135 y=374 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1243 x=152 y=374 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1244 x=164 y=374 width=21 height=22 xoffset=-1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=1245 x=185 y=374 width=20 height=22 xoffset=0 yoffset=0 xadvance=15 page=0 chnl=0 +char id=1246 x=205 y=374 width=14 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1247 x=219 y=374 width=11 height=22 xoffset=-1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=1248 x=230 y=374 width=14 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1249 x=244 y=374 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1250 x=256 y=374 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1251 x=273 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1252 x=286 y=374 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1253 x=303 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1254 x=316 y=374 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1255 x=333 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1256 x=346 y=374 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1257 x=363 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1258 x=376 y=374 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1259 x=393 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1260 x=406 y=374 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1261 x=421 y=374 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1262 x=433 y=374 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1263 x=450 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1264 x=463 y=374 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1265 x=480 y=374 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1266 x=493 y=374 width=17 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1267 x=0 y=396 width=14 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1268 x=14 y=396 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1269 x=30 y=396 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1270 x=43 y=396 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=1271 x=58 y=396 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1272 x=70 y=396 width=19 height=22 xoffset=-1 yoffset=0 xadvance=14 page=0 chnl=0 +char id=1273 x=89 y=396 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1296 x=105 y=396 width=14 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=1297 x=119 y=396 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=1298 x=131 y=396 width=17 height=22 xoffset=-1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1299 x=148 y=396 width=13 height=22 xoffset=-1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1306 x=161 y=396 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=1307 x=178 y=396 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=1308 x=191 y=396 width=19 height=22 xoffset=1 yoffset=0 xadvance=13 page=0 chnl=0 +char id=1309 x=210 y=396 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1310 x=226 y=396 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=1311 x=242 y=396 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8192 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8193 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8194 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8195 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8196 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=8197 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8198 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8199 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8200 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8201 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8202 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=2 page=0 chnl=0 +char id=8203 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8204 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=0 page=0 chnl=0 +char id=8210 x=255 y=396 width=14 height=22 xoffset=1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8211 x=269 y=396 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8212 x=282 y=396 width=21 height=22 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8213 x=303 y=396 width=22 height=22 xoffset=1 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8214 x=325 y=396 width=10 height=22 xoffset=0 yoffset=0 xadvance=5 page=0 chnl=0 +char id=8215 x=335 y=396 width=12 height=22 xoffset=-1 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8216 x=347 y=396 width=9 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8217 x=356 y=396 width=9 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8218 x=365 y=396 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8219 x=374 y=396 width=9 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8220 x=383 y=396 width=12 height=22 xoffset=2 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8221 x=395 y=396 width=13 height=22 xoffset=3 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8222 x=408 y=396 width=12 height=22 xoffset=0 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8223 x=420 y=396 width=13 height=22 xoffset=3 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8224 x=433 y=396 width=13 height=22 xoffset=1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8225 x=446 y=396 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8226 x=459 y=396 width=11 height=22 xoffset=1 yoffset=0 xadvance=6 page=0 chnl=0 +char id=8230 x=470 y=396 width=19 height=22 xoffset=0 yoffset=0 xadvance=14 page=0 chnl=0 +char id=8239 x=0 y=0 width=0 height=0 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8240 x=489 y=396 width=21 height=22 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8242 x=0 y=418 width=10 height=22 xoffset=2 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8243 x=10 y=418 width=13 height=22 xoffset=2 yoffset=0 xadvance=7 page=0 chnl=0 +char id=8244 x=23 y=418 width=16 height=22 xoffset=2 yoffset=0 xadvance=10 page=0 chnl=0 +char id=8249 x=39 y=418 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8250 x=48 y=418 width=9 height=22 xoffset=0 yoffset=0 xadvance=4 page=0 chnl=0 +char id=8252 x=57 y=418 width=16 height=22 xoffset=0 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8254 x=73 y=418 width=15 height=22 xoffset=2 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8260 x=88 y=418 width=15 height=22 xoffset=-3 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8286 x=103 y=418 width=9 height=22 xoffset=0 yoffset=0 xadvance=3 page=0 chnl=0 +char id=8352 x=112 y=418 width=16 height=22 xoffset=2 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8353 x=128 y=418 width=17 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8354 x=145 y=418 width=16 height=22 xoffset=1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8355 x=161 y=418 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +char id=8356 x=176 y=418 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8357 x=189 y=418 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8358 x=206 y=418 width=16 height=22 xoffset=-1 yoffset=0 xadvance=11 page=0 chnl=0 +char id=8359 x=222 y=418 width=21 height=22 xoffset=0 yoffset=0 xadvance=16 page=0 chnl=0 +char id=8360 x=243 y=418 width=20 height=22 xoffset=-1 yoffset=0 xadvance=15 page=0 chnl=0 +char id=8361 x=263 y=418 width=19 height=22 xoffset=0 yoffset=0 xadvance=13 page=0 chnl=0 +char id=8363 x=282 y=418 width=15 height=22 xoffset=1 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8364 x=297 y=418 width=18 height=22 xoffset=1 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8365 x=315 y=418 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8366 x=332 y=418 width=16 height=22 xoffset=1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=8367 x=348 y=418 width=26 height=22 xoffset=0 yoffset=0 xadvance=21 page=0 chnl=0 +char id=8368 x=374 y=418 width=13 height=22 xoffset=0 yoffset=0 xadvance=8 page=0 chnl=0 +char id=8369 x=387 y=418 width=15 height=22 xoffset=0 yoffset=0 xadvance=9 page=0 chnl=0 +char id=8370 x=402 y=418 width=15 height=22 xoffset=1 yoffset=0 xadvance=10 page=0 chnl=0 +char id=8371 x=417 y=418 width=17 height=22 xoffset=0 yoffset=0 xadvance=12 page=0 chnl=0 +char id=8372 x=434 y=418 width=14 height=22 xoffset=1 yoffset=0 xadvance=9 page=0 chnl=0 +char id=8373 x=448 y=418 width=15 height=22 xoffset=0 yoffset=0 xadvance=10 page=0 chnl=0 +kernings count=17372 +kerning first=1051 second=1052 amount=-1 +kerning first=1049 second=1107 amount=-1 +kerning first=354 second=233 amount=-1 +kerning first=8249 second=217 amount=-1 +kerning first=66 second=79 amount=-1 +kerning first=284 second=44 amount=-1 +kerning first=109 second=45 amount=-1 +kerning first=197 second=46 amount=-1 +kerning first=280 second=288 amount=-1 +kerning first=375 second=291 amount=-1 +kerning first=339 second=291 amount=-1 +kerning first=211 second=65 amount=-1 +kerning first=72 second=66 amount=-1 +kerning first=327 second=67 amount=-1 +kerning first=205 second=68 amount=-1 +kerning first=202 second=70 amount=-1 +kerning first=8217 second=71 amount=-1 +kerning first=217 second=72 amount=-1 +kerning first=370 second=73 amount=-1 +kerning first=219 second=74 amount=-1 +kerning first=71 second=75 amount=-1 +kerning first=83 second=76 amount=-1 +kerning first=79 second=77 amount=-1 +kerning first=286 second=78 amount=-1 +kerning first=330 second=80 amount=-1 +kerning first=310 second=81 amount=-1 +kerning first=266 second=82 amount=-1 +kerning first=268 second=83 amount=-1 +kerning first=214 second=84 amount=-1 +kerning first=8222 second=85 amount=-1 +kerning first=231 second=291 amount=-1 +kerning first=80 second=87 amount=-1 +kerning first=79 second=89 amount=-1 +kerning first=45 second=90 amount=-1 +kerning first=99 second=97 amount=-1 +kerning first=70 second=98 amount=-1 +kerning first=277 second=100 amount=-1 +kerning first=117 second=101 amount=-1 +kerning first=217 second=102 amount=-1 +kerning first=234 second=103 amount=-1 +kerning first=8218 second=104 amount=-1 +kerning first=88 second=105 amount=-1 +kerning first=337 second=106 amount=-1 +kerning first=234 second=107 amount=-1 +kerning first=1041 second=1046 amount=-1 +kerning first=325 second=109 amount=-1 +kerning first=77 second=110 amount=-1 +kerning first=234 second=111 amount=-1 +kerning first=99 second=112 amount=-1 +kerning first=109 second=113 amount=-1 +kerning first=279 second=114 amount=-1 +kerning first=262 second=115 amount=-1 +kerning first=8250 second=116 amount=-1 +kerning first=119 second=117 amount=-1 +kerning first=88 second=118 amount=-1 +kerning first=8250 second=119 amount=-1 +kerning first=255 second=120 amount=-1 +kerning first=192 second=121 amount=-1 +kerning first=66 second=122 amount=-1 +kerning first=336 second=8218 amount=-1 +kerning first=1067 second=1079 amount=-1 +kerning first=8220 second=65 amount=-2 +kerning first=325 second=81 amount=-1 +kerning first=1064 second=1049 amount=-1 +kerning first=351 second=171 amount=-1 +kerning first=209 second=187 amount=-1 +kerning first=287 second=8221 amount=-2 +kerning first=8220 second=192 amount=-2 +kerning first=45 second=193 amount=-1 +kerning first=68 second=194 amount=-1 +kerning first=220 second=196 amount=-1 +kerning first=8217 second=197 amount=-2 +kerning first=87 second=198 amount=-1 +kerning first=266 second=199 amount=-1 +kerning first=205 second=200 amount=-1 +kerning first=71 second=201 amount=-1 +kerning first=209 second=202 amount=-1 +kerning first=67 second=203 amount=-1 +kerning first=268 second=204 amount=-1 +kerning first=325 second=205 amount=-1 +kerning first=213 second=206 amount=-1 +kerning first=207 second=207 amount=-1 +kerning first=81 second=209 amount=-1 +kerning first=8217 second=210 amount=-1 +kerning first=8218 second=211 amount=-1 +kerning first=199 second=212 amount=-1 +kerning first=8222 second=213 amount=-1 +kerning first=338 second=214 amount=-1 +kerning first=205 second=216 amount=-1 +kerning first=323 second=217 amount=-1 +kerning first=80 second=218 amount=-1 +kerning first=207 second=219 amount=-1 +kerning first=45 second=220 amount=-1 +kerning first=194 second=223 amount=-1 +kerning first=323 second=224 amount=-1 +kerning first=99 second=225 amount=-1 +kerning first=74 second=226 amount=-1 +kerning first=89 second=227 amount=-1 +kerning first=99 second=228 amount=-1 +kerning first=8217 second=229 amount=-1 +kerning first=314 second=231 amount=-1 +kerning first=206 second=234 amount=-1 +kerning first=264 second=8218 amount=-1 +kerning first=8217 second=241 amount=-1 +kerning first=266 second=242 amount=-1 +kerning first=264 second=243 amount=-1 +kerning first=73 second=244 amount=-1 +kerning first=103 second=245 amount=-1 +kerning first=251 second=246 amount=-1 +kerning first=325 second=248 amount=-1 +kerning first=198 second=249 amount=-1 +kerning first=197 second=250 amount=-1 +kerning first=66 second=251 amount=-1 +kerning first=193 second=252 amount=-1 +kerning first=193 second=253 amount=-1 +kerning first=197 second=254 amount=-1 +kerning first=194 second=255 amount=-1 +kerning first=68 second=258 amount=-1 +kerning first=8216 second=260 amount=-2 +kerning first=354 second=261 amount=-1 +kerning first=187 second=377 amount=-1 +kerning first=356 second=263 amount=-1 +kerning first=274 second=264 amount=-1 +kerning first=99 second=267 amount=-1 +kerning first=8250 second=268 amount=-1 +kerning first=8217 second=269 amount=-1 +kerning first=80 second=270 amount=-1 +kerning first=8217 second=271 amount=-1 +kerning first=304 second=273 amount=-1 +kerning first=198 second=274 amount=-1 +kerning first=369 second=275 amount=-1 +kerning first=354 second=277 amount=-1 +kerning first=45 second=278 amount=-1 +kerning first=117 second=279 amount=-1 +kerning first=220 second=280 amount=-1 +kerning first=231 second=281 amount=-1 +kerning first=325 second=282 amount=-1 +kerning first=267 second=283 amount=-1 +kerning first=209 second=284 amount=-1 +kerning first=335 second=287 amount=-1 +kerning first=202 second=268 amount=-1 +kerning first=333 second=289 amount=-1 +kerning first=219 second=290 amount=-1 +kerning first=1062 second=1104 amount=-1 +kerning first=355 second=279 amount=-1 +kerning first=278 second=296 amount=-1 +kerning first=213 second=298 amount=-1 +kerning first=68 second=187 amount=-1 +kerning first=217 second=302 amount=-1 +kerning first=197 second=303 amount=-1 +kerning first=206 second=304 amount=-1 +kerning first=269 second=305 amount=-1 +kerning first=287 second=307 amount=-1 +kerning first=296 second=310 amount=-1 +kerning first=281 second=311 amount=-1 +kerning first=78 second=313 amount=-1 +kerning first=234 second=314 amount=-1 +kerning first=199 second=315 amount=-1 +kerning first=74 second=317 amount=-1 +kerning first=283 second=318 amount=-1 +kerning first=302 second=323 amount=-1 +kerning first=289 second=324 amount=-1 +kerning first=330 second=325 amount=-1 +kerning first=269 second=326 amount=-1 +kerning first=270 second=327 amount=-1 +kerning first=263 second=328 amount=-1 +kerning first=74 second=316 amount=-1 +kerning first=323 second=330 amount=-1 +kerning first=72 second=331 amount=-1 +kerning first=327 second=332 amount=-1 +kerning first=89 second=333 amount=-1 +kerning first=221 second=334 amount=-1 +kerning first=84 second=335 amount=-1 +kerning first=198 second=336 amount=-1 +kerning first=199 second=337 amount=-1 +kerning first=366 second=338 amount=-1 +kerning first=225 second=339 amount=-1 +kerning first=78 second=206 amount=-1 +kerning first=210 second=66 amount=-1 +kerning first=82 second=364 amount=-1 +kerning first=350 second=344 amount=-1 +kerning first=100 second=345 amount=-1 +kerning first=220 second=346 amount=-1 +kerning first=87 second=347 amount=-1 +kerning first=204 second=264 amount=-1 +kerning first=268 second=350 amount=-1 +kerning first=272 second=351 amount=-1 +kerning first=317 second=354 amount=-1 +kerning first=325 second=355 amount=-1 +kerning first=81 second=356 amount=-1 +kerning first=204 second=357 amount=-1 +kerning first=324 second=283 amount=-1 +kerning first=346 second=361 amount=-1 +kerning first=298 second=362 amount=-1 +kerning first=264 second=364 amount=-1 +kerning first=244 second=108 amount=-1 +kerning first=8220 second=366 amount=-1 +kerning first=195 second=367 amount=-1 +kerning first=282 second=187 amount=-1 +kerning first=231 second=369 amount=-1 +kerning first=284 second=370 amount=-1 +kerning first=364 second=371 amount=-1 +kerning first=103 second=108 amount=-1 +kerning first=76 second=374 amount=-1 +kerning first=192 second=375 amount=-1 +kerning first=325 second=261 amount=-1 +kerning first=45 second=377 amount=-1 +kerning first=266 second=378 amount=-1 +kerning first=205 second=380 amount=-1 +kerning first=282 second=367 amount=-1 +kerning first=225 second=382 amount=-1 +kerning first=219 second=193 amount=-1 +kerning first=298 second=368 amount=-1 +kerning first=73 second=257 amount=-1 +kerning first=69 second=367 amount=-1 +kerning first=246 second=380 amount=-1 +kerning first=1067 second=1027 amount=-1 +kerning first=354 second=380 amount=-1 +kerning first=68 second=200 amount=-1 +kerning first=8250 second=325 amount=-1 +kerning first=356 second=245 amount=-1 +kerning first=203 second=205 amount=-1 +kerning first=286 second=270 amount=-1 +kerning first=316 second=108 amount=-1 +kerning first=81 second=197 amount=-1 +kerning first=70 second=99 amount=-1 +kerning first=45 second=197 amount=-1 +kerning first=1054 second=1030 amount=-1 +kerning first=262 second=368 amount=-1 +kerning first=350 second=209 amount=-1 +kerning first=338 second=78 amount=-1 +kerning first=355 second=8221 amount=-1 +kerning first=213 second=44 amount=-1 +kerning first=302 second=78 amount=-1 +kerning first=298 second=355 amount=-1 +kerning first=220 second=252 amount=-1 +kerning first=344 second=214 amount=-1 +kerning first=262 second=355 amount=-1 +kerning first=1054 second=1043 amount=-1 +kerning first=307 second=8222 amount=-1 +kerning first=1030 second=1071 amount=-1 +kerning first=1046 second=1116 amount=-1 +kerning first=8250 second=250 amount=-1 +kerning first=71 second=325 amount=-1 +kerning first=364 second=252 amount=-1 +kerning first=366 second=197 amount=-1 +kerning first=266 second=78 amount=-1 +kerning first=85 second=355 amount=-1 +kerning first=212 second=325 amount=-1 +kerning first=366 second=8249 amount=-2 +kerning first=217 second=248 amount=-1 +kerning first=277 second=117 amount=-1 +kerning first=75 second=8250 amount=-1 +kerning first=1118 second=1116 amount=-1 +kerning first=270 second=282 amount=-1 +kerning first=1051 second=1039 amount=-1 +kerning first=1091 second=1096 amount=-1 +kerning first=72 second=44 amount=-1 +kerning first=200 second=214 amount=-1 +kerning first=121 second=367 amount=-1 +kerning first=8218 second=363 amount=-1 +kerning first=370 second=355 amount=-1 +kerning first=203 second=218 amount=-1 +kerning first=68 second=347 amount=-1 +kerning first=1046 second=1059 amount=-1 +kerning first=69 second=220 amount=-1 +kerning first=304 second=350 amount=-1 +kerning first=1038 second=1072 amount=-1 +kerning first=1041 second=1059 amount=-1 +kerning first=229 second=333 amount=-1 +kerning first=73 second=77 amount=-1 +kerning first=1118 second=1103 amount=-1 +kerning first=274 second=214 amount=-1 +kerning first=112 second=382 amount=-1 +kerning first=81 second=362 amount=-1 +kerning first=354 second=246 amount=-1 +kerning first=1054 second=1056 amount=-1 +kerning first=217 second=382 amount=-1 +kerning first=119 second=289 amount=-1 +kerning first=1048 second=1048 amount=-1 +kerning first=86 second=100 amount=-1 +kerning first=250 second=103 amount=-1 +kerning first=284 second=327 amount=-1 +kerning first=350 second=330 amount=-1 +kerning first=224 second=289 amount=-1 +kerning first=282 second=77 amount=-1 +kerning first=1051 second=1065 amount=-1 +kerning first=258 second=171 amount=-1 +kerning first=1049 second=1094 amount=-1 +kerning first=109 second=103 amount=-1 +kerning first=286 second=77 amount=-1 +kerning first=105 second=246 amount=-1 +kerning first=65 second=356 amount=-1 +kerning first=1062 second=1091 amount=-1 +kerning first=326 second=281 amount=-1 +kerning first=210 second=220 amount=-1 +kerning first=214 second=77 amount=-1 +kerning first=366 second=171 amount=-2 +kerning first=362 second=281 amount=-1 +kerning first=244 second=378 amount=-1 +kerning first=296 second=109 amount=-1 +kerning first=87 second=120 amount=-1 +kerning first=220 second=85 amount=-1 +kerning first=66 second=44 amount=-1 +kerning first=79 second=85 amount=-1 +kerning first=298 second=72 amount=-1 +kerning first=72 second=211 amount=-1 +kerning first=264 second=120 amount=-1 +kerning first=1038 second=1079 amount=-1 +kerning first=77 second=281 amount=-1 +kerning first=253 second=382 amount=-1 +kerning first=275 second=339 amount=-1 +kerning first=202 second=332 amount=-1 +kerning first=289 second=382 amount=-1 +kerning first=231 second=275 amount=-1 +kerning first=325 second=382 amount=-1 +kerning first=74 second=290 amount=-1 +kerning first=1060 second=1025 amount=-1 +kerning first=268 second=339 amount=-1 +kerning first=8250 second=374 amount=-2 +kerning first=281 second=347 amount=-1 +kerning first=310 second=332 amount=-1 +kerning first=1048 second=1074 amount=-1 +kerning first=1071 second=1051 amount=-1 +kerning first=274 second=332 amount=-1 +kerning first=209 second=347 amount=-1 +kerning first=1065 second=1108 amount=-1 +kerning first=264 second=313 amount=-1 +kerning first=1091 second=1076 amount=-1 +kerning first=267 second=111 amount=-1 +kerning first=310 second=8250 amount=-1 +kerning first=263 second=254 amount=-1 +kerning first=279 second=337 amount=-1 +kerning first=274 second=8250 amount=-1 +kerning first=233 second=357 amount=-1 +kerning first=205 second=113 amount=-1 +kerning first=302 second=271 amount=-1 +kerning first=370 second=195 amount=-1 +kerning first=266 second=271 amount=-1 +kerning first=1055 second=1076 amount=-1 +kerning first=334 second=195 amount=-1 +kerning first=202 second=8250 amount=-1 +kerning first=327 second=219 amount=-1 +kerning first=205 second=323 amount=-1 +kerning first=374 second=271 amount=-1 +kerning first=219 second=219 amount=-1 +kerning first=1047 second=1041 amount=-1 +kerning first=97 second=8250 amount=-1 +kerning first=1053 second=1118 amount=-1 +kerning first=197 second=357 amount=-1 +kerning first=8216 second=368 amount=-1 +kerning first=187 second=76 amount=-1 +kerning first=269 second=107 amount=-1 +kerning first=221 second=211 amount=-1 +kerning first=1059 second=1071 amount=-1 +kerning first=248 second=8217 amount=-2 +kerning first=193 second=212 amount=-1 +kerning first=284 second=8217 amount=-1 +kerning first=78 second=219 amount=-1 +kerning first=356 second=8217 amount=-1 +kerning first=1039 second=1075 amount=-1 +kerning first=71 second=8217 amount=-1 +kerning first=364 second=85 amount=-1 +kerning first=1067 second=1107 amount=-1 +kerning first=107 second=8217 amount=-1 +kerning first=197 second=262 amount=-1 +kerning first=202 second=310 amount=-1 +kerning first=88 second=212 amount=-1 +kerning first=231 second=111 amount=-1 +kerning first=194 second=366 amount=-1 +kerning first=217 second=68 amount=-1 +kerning first=330 second=331 amount=-1 +kerning first=278 second=8250 amount=-1 +kerning first=325 second=68 amount=-1 +kerning first=366 second=331 amount=-1 +kerning first=67 second=314 amount=-1 +kerning first=224 second=263 amount=-1 +kerning first=275 second=365 amount=-1 +kerning first=1041 second=1025 amount=-1 +kerning first=1033 second=1027 amount=-1 +kerning first=1040 second=1028 amount=-1 +kerning first=1049 second=1030 amount=-1 +kerning first=1041 second=1031 amount=-1 +kerning first=1041 second=1034 amount=-1 +kerning first=316 second=314 amount=-1 +kerning first=1041 second=1036 amount=-1 +kerning first=296 second=263 amount=-1 +kerning first=1068 second=1038 amount=-2 +kerning first=1055 second=1039 amount=-1 +kerning first=1056 second=1040 amount=-1 +kerning first=1049 second=1041 amount=-1 +kerning first=1060 second=1042 amount=-1 +kerning first=1030 second=1043 amount=-1 +kerning first=1033 second=1044 amount=-1 +kerning first=1041 second=1045 amount=-1 +kerning first=1048 second=1047 amount=-1 +kerning first=1033 second=1048 amount=-1 +kerning first=1069 second=1049 amount=-1 +kerning first=1041 second=1050 amount=-1 +kerning first=1052 second=1051 amount=-1 +kerning first=1067 second=1052 amount=-1 +kerning first=1051 second=1053 amount=-1 +kerning first=1059 second=1054 amount=-1 +kerning first=1051 second=1055 amount=-1 +kerning first=1053 second=1056 amount=-1 +kerning first=1052 second=1057 amount=-1 +kerning first=304 second=203 amount=-1 +kerning first=1040 second=1060 amount=-1 +kerning first=1041 second=1061 amount=-1 +kerning first=1068 second=1062 amount=-1 +kerning first=1066 second=1063 amount=-2 +kerning first=1070 second=1064 amount=-1 +kerning first=1030 second=1065 amount=-1 +kerning first=262 second=67 amount=-1 +kerning first=1051 second=1068 amount=-1 +kerning first=85 second=195 amount=-1 +kerning first=1049 second=1070 amount=-1 +kerning first=1041 second=1071 amount=-1 +kerning first=1056 second=1072 amount=-1 +kerning first=1031 second=1073 amount=-1 +kerning first=1027 second=1074 amount=-1 +kerning first=8250 second=70 amount=-1 +kerning first=1105 second=1076 amount=-1 +kerning first=1027 second=1077 amount=-1 +kerning first=1104 second=1078 amount=-1 +kerning first=1118 second=1079 amount=-1 +kerning first=1040 second=1080 amount=-1 +kerning first=1041 second=1081 amount=-1 +kerning first=1118 second=1082 amount=-1 +kerning first=1051 second=1083 amount=-1 +kerning first=1056 second=1084 amount=-1 +kerning first=1041 second=1085 amount=-1 +kerning first=1071 second=1086 amount=-1 +kerning first=1050 second=1087 amount=-1 +kerning first=1071 second=1089 amount=-1 +kerning first=1041 second=1090 amount=-1 +kerning first=1057 second=1091 amount=-1 +kerning first=8218 second=307 amount=-1 +kerning first=1077 second=1093 amount=-1 +kerning first=1071 second=1094 amount=-1 +kerning first=1076 second=1095 amount=-1 +kerning first=1059 second=1096 amount=-1 +kerning first=1040 second=1097 amount=-1 +kerning first=1052 second=1098 amount=-1 +kerning first=1048 second=1099 amount=-1 +kerning first=1071 second=1100 amount=-1 +kerning first=1044 second=1101 amount=-1 +kerning first=1118 second=1102 amount=-1 +kerning first=1091 second=1103 amount=-1 +kerning first=1027 second=1104 amount=-1 +kerning first=207 second=229 amount=-1 +kerning first=1027 second=1107 amount=-1 +kerning first=1049 second=1108 amount=-1 +kerning first=266 second=366 amount=-1 +kerning first=1076 second=1113 amount=-1 +kerning first=89 second=271 amount=-1 +kerning first=268 second=203 amount=-1 +kerning first=344 second=374 amount=-1 +kerning first=1076 second=1117 amount=-1 +kerning first=1105 second=1118 amount=-1 +kerning first=1040 second=1119 amount=-1 +kerning first=194 second=104 amount=-1 +kerning first=230 second=104 amount=-1 +kerning first=256 second=46 amount=-1 +kerning first=87 second=192 amount=-1 +kerning first=296 second=70 amount=-1 +kerning first=73 second=378 amount=-1 +kerning first=68 second=46 amount=-1 +kerning first=207 second=101 amount=-1 +kerning first=209 second=46 amount=-1 +kerning first=83 second=70 amount=-1 +kerning first=279 second=101 amount=-1 +kerning first=281 second=46 amount=-1 +kerning first=270 second=76 amount=-1 +kerning first=1064 second=1075 amount=-1 +kerning first=67 second=262 amount=-1 +kerning first=69 second=207 amount=-1 +kerning first=8218 second=261 amount=-1 +kerning first=198 second=76 amount=-1 +kerning first=280 second=262 amount=-1 +kerning first=207 second=286 amount=-1 +kerning first=73 second=296 amount=-1 +kerning first=201 second=8217 amount=-1 +kerning first=66 second=216 amount=-1 +kerning first=368 second=70 amount=-1 +kerning first=1059 second=1087 amount=-1 +kerning first=258 second=357 amount=-1 +kerning first=286 second=296 amount=-1 +kerning first=266 second=104 amount=-1 +kerning first=366 second=357 amount=-1 +kerning first=97 second=345 amount=-1 +kerning first=214 second=296 amount=-1 +kerning first=212 second=204 amount=-1 +kerning first=196 second=311 amount=-1 +kerning first=232 second=311 amount=-1 +kerning first=202 second=345 amount=-1 +kerning first=78 second=366 amount=-1 +kerning first=253 second=369 amount=-1 +kerning first=8250 second=262 amount=-1 +kerning first=274 second=280 amount=-1 +kerning first=274 second=345 amount=-1 +kerning first=217 second=369 amount=-1 +kerning first=368 second=122 amount=-1 +kerning first=366 second=210 amount=-1 +kerning first=354 second=259 amount=-1 +kerning first=8217 second=100 amount=-1 +kerning first=310 second=345 amount=-1 +kerning first=70 second=8218 amount=-2 +kerning first=213 second=198 amount=-1 +kerning first=346 second=280 amount=-1 +kerning first=346 second=345 amount=-1 +kerning first=112 second=287 amount=-1 +kerning first=1053 second=1105 amount=-1 +kerning first=296 second=122 amount=-1 +kerning first=284 second=204 amount=-1 +kerning first=221 second=225 amount=-1 +kerning first=330 second=210 amount=-1 +kerning first=8250 second=109 amount=-1 +kerning first=1056 second=1096 amount=-1 +kerning first=210 second=207 amount=-1 +kerning first=66 second=210 amount=-1 +kerning first=258 second=210 amount=-1 +kerning first=65 second=318 amount=-1 +kerning first=289 second=287 amount=-1 +kerning first=263 second=113 amount=-1 +kerning first=282 second=207 amount=-1 +kerning first=253 second=287 amount=-1 +kerning first=268 second=283 amount=-1 +kerning first=1030 second=1113 amount=-1 +kerning first=327 second=366 amount=-1 +kerning first=45 second=210 amount=-1 +kerning first=1038 second=1114 amount=-1 +kerning first=201 second=67 amount=-1 +kerning first=219 second=366 amount=-1 +kerning first=227 second=113 amount=-1 +kerning first=252 second=337 amount=-1 +kerning first=205 second=336 amount=-1 +kerning first=270 second=256 amount=-1 +kerning first=8218 second=279 amount=-1 +kerning first=74 second=195 amount=-1 +kerning first=346 second=8250 amount=-1 +kerning first=279 second=281 amount=-1 +kerning first=109 second=244 amount=-1 +kerning first=79 second=278 amount=-1 +kerning first=200 second=73 amount=-1 +kerning first=220 second=347 amount=-1 +kerning first=272 second=73 amount=-1 +kerning first=207 second=268 amount=-1 +kerning first=1048 second=1108 amount=-1 +kerning first=235 second=8220 amount=-2 +kerning first=344 second=86 amount=-1 +kerning first=79 second=347 amount=-1 +kerning first=220 second=278 amount=-1 +kerning first=323 second=97 amount=-1 +kerning first=307 second=8220 amount=-1 +kerning first=272 second=86 amount=-1 +kerning first=66 second=268 amount=-1 +kerning first=271 second=8220 amount=-1 +kerning first=204 second=277 amount=-1 +kerning first=281 second=365 amount=-1 +kerning first=364 second=278 amount=-1 +kerning first=99 second=277 amount=-1 +kerning first=364 second=323 amount=-1 +kerning first=1030 second=1099 amount=-1 +kerning first=250 second=267 amount=-1 +kerning first=203 second=77 amount=-1 +kerning first=8250 second=122 amount=-1 +kerning first=217 second=235 amount=-1 +kerning first=207 second=281 amount=-1 +kerning first=240 second=277 amount=-1 +kerning first=369 second=283 amount=-1 +kerning first=259 second=269 amount=-1 +kerning first=80 second=79 amount=-1 +kerning first=70 second=253 amount=-1 +kerning first=8217 second=267 amount=-1 +kerning first=1038 second=1081 amount=-1 +kerning first=225 second=283 amount=-1 +kerning first=103 second=246 amount=-1 +kerning first=275 second=231 amount=-1 +kerning first=261 second=283 amount=-1 +kerning first=84 second=380 amount=-1 +kerning first=219 second=65 amount=-1 +kerning first=187 second=338 amount=-1 +kerning first=367 second=269 amount=-1 +kerning first=85 second=260 amount=-1 +kerning first=379 second=8220 amount=-1 +kerning first=82 second=338 amount=-1 +kerning first=196 second=363 amount=-1 +kerning first=8250 second=290 amount=-1 +kerning first=232 second=363 amount=-1 +kerning first=201 second=286 amount=-1 +kerning first=327 second=72 amount=-1 +kerning first=364 second=347 amount=-1 +kerning first=334 second=8250 amount=-1 +kerning first=235 second=367 amount=-1 +kerning first=264 second=261 amount=-1 +kerning first=67 second=275 amount=-1 +kerning first=85 second=85 amount=-1 +kerning first=207 second=114 amount=-1 +kerning first=1036 second=1097 amount=-1 +kerning first=334 second=260 amount=-1 +kerning first=201 second=80 amount=-1 +kerning first=370 second=260 amount=-1 +kerning first=375 second=8222 amount=-1 +kerning first=264 second=82 amount=-1 +kerning first=103 second=275 amount=-1 +kerning first=82 second=217 amount=-1 +kerning first=66 second=114 amount=-1 +kerning first=334 second=368 amount=-1 +kerning first=81 second=344 amount=-1 +kerning first=88 second=251 amount=-1 +kerning first=267 second=8222 amount=-1 +kerning first=231 second=8222 amount=-1 +kerning first=68 second=115 amount=-1 +kerning first=8220 second=193 amount=-2 +kerning first=78 second=353 amount=-1 +kerning first=288 second=310 amount=-1 +kerning first=1051 second=1070 amount=-1 +kerning first=193 second=251 amount=-1 +kerning first=264 second=205 amount=-1 +kerning first=281 second=115 amount=-1 +kerning first=263 second=244 amount=-1 +kerning first=219 second=353 amount=-1 +kerning first=1056 second=1027 amount=-1 +kerning first=89 second=258 amount=-1 +kerning first=205 second=284 amount=-1 +kerning first=1031 second=1053 amount=-1 +kerning first=291 second=353 amount=-1 +kerning first=1067 second=1053 amount=-1 +kerning first=200 second=81 amount=-1 +kerning first=289 second=235 amount=-1 +kerning first=375 second=252 amount=-1 +kerning first=325 second=235 amount=-1 +kerning first=197 second=249 amount=-1 +kerning first=1055 second=1037 amount=-1 +kerning first=233 second=249 amount=-1 +kerning first=288 second=362 amount=-1 +kerning first=1030 second=1092 amount=-1 +kerning first=232 second=242 amount=-1 +kerning first=316 second=380 amount=-1 +kerning first=268 second=242 amount=-1 +kerning first=8218 second=107 amount=-1 +kerning first=8222 second=311 amount=-1 +kerning first=1027 second=1116 amount=-1 +kerning first=248 second=106 amount=-1 +kerning first=209 second=200 amount=-1 +kerning first=74 second=97 amount=-1 +kerning first=304 second=242 amount=-1 +kerning first=366 second=223 amount=-1 +kerning first=330 second=223 amount=-1 +kerning first=1034 second=1044 amount=-1 +kerning first=324 second=248 amount=-1 +kerning first=269 second=249 amount=-1 +kerning first=75 second=362 amount=-1 +kerning first=231 second=252 amount=-1 +kerning first=339 second=252 amount=-1 +kerning first=204 second=71 amount=-1 +kerning first=364 second=226 amount=-1 +kerning first=316 second=275 amount=-1 +kerning first=71 second=270 amount=-1 +kerning first=235 second=233 amount=-1 +kerning first=370 second=67 amount=-1 +kerning first=271 second=233 amount=-1 +kerning first=45 second=223 amount=-1 +kerning first=70 second=364 amount=-1 +kerning first=199 second=233 amount=-1 +kerning first=199 second=302 amount=-1 +kerning first=258 second=223 amount=-1 +kerning first=115 second=291 amount=-1 +kerning first=307 second=233 amount=-1 +kerning first=67 second=327 amount=-1 +kerning first=200 second=361 amount=-1 +kerning first=250 second=101 amount=-1 +kerning first=1048 second=1113 amount=-1 +kerning first=224 second=122 amount=-1 +kerning first=369 second=335 amount=-1 +kerning first=234 second=243 amount=-1 +kerning first=327 second=232 amount=-1 +kerning first=291 second=232 amount=-1 +kerning first=119 second=122 amount=-1 +kerning first=1101 second=1083 amount=-1 +kerning first=209 second=8217 amount=-1 +kerning first=218 second=284 amount=-1 +kerning first=219 second=232 amount=-1 +kerning first=1058 second=1080 amount=-1 +kerning first=110 second=8221 amount=-2 +kerning first=280 second=327 amount=-1 +kerning first=255 second=187 amount=-1 +kerning first=8218 second=382 amount=-1 +kerning first=264 second=107 amount=-1 +kerning first=352 second=327 amount=-1 +kerning first=268 second=311 amount=-1 +kerning first=251 second=8221 amount=-1 +kerning first=363 second=232 amount=-1 +kerning first=207 second=337 amount=-1 +kerning first=1048 second=1094 amount=-1 +kerning first=338 second=250 amount=-1 +kerning first=1051 second=1077 amount=-1 +kerning first=204 second=225 amount=-1 +kerning first=45 second=211 amount=-1 +kerning first=8222 second=363 amount=-1 +kerning first=70 second=318 amount=-1 +kerning first=225 second=335 amount=-1 +kerning first=1059 second=1113 amount=-1 +kerning first=220 second=72 amount=-1 +kerning first=270 second=89 amount=-1 +kerning first=79 second=72 amount=-1 +kerning first=78 second=232 amount=-1 +kerning first=71 second=76 amount=-1 +kerning first=261 second=335 amount=-1 +kerning first=1075 second=1088 amount=-1 +kerning first=1051 second=1104 amount=-1 +kerning first=353 second=46 amount=-1 +kerning first=364 second=72 amount=-1 +kerning first=1049 second=1055 amount=-1 +kerning first=267 second=98 amount=-1 +kerning first=231 second=98 amount=-1 +kerning first=263 second=267 amount=-1 +kerning first=195 second=98 amount=-1 +kerning first=8222 second=107 amount=-1 +kerning first=88 second=199 amount=-1 +kerning first=366 second=344 amount=-1 +kerning first=1053 second=1036 amount=-1 +kerning first=193 second=199 amount=-1 +kerning first=375 second=98 amount=-1 +kerning first=86 second=267 amount=-1 +kerning first=339 second=98 amount=-1 +kerning first=324 second=267 amount=-1 +kerning first=362 second=212 amount=-1 +kerning first=1056 second=1070 amount=-1 +kerning first=8218 second=235 amount=-1 +kerning first=218 second=212 amount=-1 +kerning first=337 second=114 amount=-1 +kerning first=1036 second=1028 amount=-1 +kerning first=67 second=206 amount=-1 +kerning first=252 second=267 amount=-1 +kerning first=105 second=118 amount=-1 +kerning first=229 second=114 amount=-1 +kerning first=1053 second=1079 amount=-1 +kerning first=118 second=115 amount=-1 +kerning first=352 second=206 amount=-1 +kerning first=193 second=114 amount=-1 +kerning first=374 second=268 amount=-1 +kerning first=287 second=46 amount=-1 +kerning first=101 second=111 amount=-1 +kerning first=77 second=212 amount=-1 +kerning first=1118 second=1096 amount=-1 +kerning first=219 second=258 amount=-1 +kerning first=282 second=315 amount=-1 +kerning first=355 second=8249 amount=-1 +kerning first=280 second=206 amount=-1 +kerning first=206 second=111 amount=-1 +kerning first=8222 second=242 amount=-1 +kerning first=73 second=352 amount=-1 +kerning first=314 second=111 amount=-1 +kerning first=88 second=114 amount=-1 +kerning first=74 second=368 amount=-1 +kerning first=302 second=310 amount=-1 +kerning first=235 second=263 amount=-1 +kerning first=8217 second=336 amount=-1 +kerning first=266 second=310 amount=-1 +kerning first=271 second=263 amount=-1 +kerning first=70 second=197 amount=-1 +kerning first=67 second=370 amount=-1 +kerning first=8250 second=117 amount=-1 +kerning first=307 second=263 amount=-1 +kerning first=211 second=197 amount=-1 +kerning first=220 second=263 amount=-1 +kerning first=70 second=8249 amount=-2 +kerning first=87 second=365 amount=-1 +kerning first=106 second=8249 amount=-1 +kerning first=240 second=8221 amount=-2 +kerning first=255 second=8222 amount=-1 +kerning first=70 second=331 amount=-1 +kerning first=264 second=68 amount=-1 +kerning first=1033 second=1037 amount=-1 +kerning first=209 second=72 amount=-1 +kerning first=352 second=370 amount=-1 +kerning first=1069 second=1037 amount=-1 +kerning first=368 second=8249 amount=-2 +kerning first=115 second=8250 amount=-1 +kerning first=280 second=370 amount=-1 +kerning first=204 second=199 amount=-1 +kerning first=121 second=106 amount=-1 +kerning first=70 second=361 amount=-1 +kerning first=1064 second=1101 amount=-1 +kerning first=338 second=310 amount=-1 +kerning first=202 second=67 amount=-1 +kerning first=80 second=203 amount=-1 +kerning first=364 second=8222 amount=-2 +kerning first=362 second=346 amount=-1 +kerning first=70 second=227 amount=-1 +kerning first=68 second=282 amount=-1 +kerning first=218 second=346 amount=-1 +kerning first=266 second=327 amount=-1 +kerning first=73 second=207 amount=-1 +kerning first=302 second=327 amount=-1 +kerning first=115 second=8222 amount=-1 +kerning first=338 second=327 amount=-1 +kerning first=79 second=8222 amount=-1 +kerning first=77 second=346 amount=-1 +kerning first=80 second=350 amount=-1 +kerning first=219 second=288 amount=-1 +kerning first=116 second=337 amount=-1 +kerning first=65 second=81 amount=-1 +kerning first=78 second=288 amount=-1 +kerning first=80 second=337 amount=-1 +kerning first=242 second=291 amount=-1 +kerning first=346 second=44 amount=-1 +kerning first=219 second=8218 amount=-2 +kerning first=327 second=288 amount=-1 +kerning first=206 second=81 amount=-1 +kerning first=1066 second=1046 amount=-1 +kerning first=197 second=318 amount=-1 +kerning first=192 second=253 amount=-1 +kerning first=233 second=318 amount=-1 +kerning first=290 second=75 amount=-1 +kerning first=269 second=318 amount=-1 +kerning first=1033 second=1050 amount=-1 +kerning first=1053 second=1098 amount=-1 +kerning first=218 second=75 amount=-1 +kerning first=84 second=46 amount=-1 +kerning first=365 second=337 amount=-1 +kerning first=234 second=187 amount=-1 +kerning first=1058 second=1119 amount=-1 +kerning first=270 second=187 amount=-1 +kerning first=1060 second=1064 amount=-1 +kerning first=77 second=75 amount=-1 +kerning first=277 second=245 amount=-1 +kerning first=257 second=337 amount=-1 +kerning first=241 second=245 amount=-1 +kerning first=198 second=187 amount=-1 +kerning first=221 second=337 amount=-1 +kerning first=205 second=245 amount=-1 +kerning first=356 second=230 amount=-1 +kerning first=330 second=279 amount=-1 +kerning first=1039 second=1036 amount=-1 +kerning first=80 second=66 amount=-1 +kerning first=366 second=279 amount=-1 +kerning first=345 second=226 amount=-1 +kerning first=268 second=199 amount=-1 +kerning first=268 second=234 amount=-1 +kerning first=305 second=8250 amount=-1 +kerning first=199 second=243 amount=-1 +kerning first=8218 second=339 amount=-1 +kerning first=196 second=105 amount=-1 +kerning first=1066 second=1059 amount=-2 +kerning first=362 second=75 amount=-1 +kerning first=262 second=316 amount=-1 +kerning first=82 second=8217 amount=-1 +kerning first=205 second=202 amount=-1 +kerning first=187 second=90 amount=-1 +kerning first=118 second=8217 amount=-2 +kerning first=86 second=8250 amount=-1 +kerning first=374 second=117 amount=-1 +kerning first=323 second=264 amount=-1 +kerning first=201 second=362 amount=-1 +kerning first=345 second=8220 amount=-1 +kerning first=338 second=117 amount=-1 +kerning first=270 second=351 amount=-1 +kerning first=234 second=351 amount=-1 +kerning first=1071 second=1025 amount=-1 +kerning first=8222 second=105 amount=-1 +kerning first=88 second=307 amount=-1 +kerning first=233 second=108 amount=-1 +kerning first=74 second=264 amount=-1 +kerning first=280 second=69 amount=-1 +kerning first=1057 second=1073 amount=-1 +kerning first=325 second=8217 amount=-1 +kerning first=1068 second=1034 amount=-1 +kerning first=193 second=307 amount=-1 +kerning first=330 second=82 amount=-1 +kerning first=284 second=364 amount=-1 +kerning first=364 second=73 amount=-1 +kerning first=197 second=108 amount=-1 +kerning first=223 second=8217 amount=-2 +kerning first=212 second=364 amount=-1 +kerning first=1069 second=1050 amount=-1 +kerning first=338 second=323 amount=-1 +kerning first=366 second=82 amount=-1 +kerning first=356 second=273 amount=-1 +kerning first=266 second=323 amount=-1 +kerning first=201 second=338 amount=-1 +kerning first=71 second=364 amount=-1 +kerning first=262 second=286 amount=-1 +kerning first=84 second=103 amount=-1 +kerning first=200 second=310 amount=-1 +kerning first=8250 second=194 amount=-1 +kerning first=298 second=286 amount=-1 +kerning first=1062 second=1117 amount=-1 +kerning first=249 second=113 amount=-1 +kerning first=67 second=69 amount=-1 +kerning first=268 second=262 amount=-1 +kerning first=268 second=171 amount=-1 +kerning first=187 second=325 amount=-1 +kerning first=370 second=286 amount=-1 +kerning first=74 second=355 amount=-1 +kerning first=1047 second=1067 amount=-1 +kerning first=85 second=286 amount=-1 +kerning first=335 second=316 amount=-1 +kerning first=197 second=314 amount=-1 +kerning first=81 second=82 amount=-1 +kerning first=68 second=72 amount=-1 +kerning first=197 second=171 amount=-1 +kerning first=1073 second=1078 amount=-1 +kerning first=108 second=113 amount=-1 +kerning first=73 second=8250 amount=-1 +kerning first=1040 second=1069 amount=-1 +kerning first=325 second=317 amount=-1 +kerning first=269 second=314 amount=-1 +kerning first=233 second=314 amount=-1 +kerning first=8222 second=229 amount=-1 +kerning first=323 second=355 amount=-1 +kerning first=287 second=355 amount=-1 +kerning first=230 second=117 amount=-1 +kerning first=209 second=282 amount=-1 +kerning first=121 second=316 amount=-1 +kerning first=194 second=117 amount=-1 +kerning first=1048 second=1100 amount=-1 +kerning first=235 second=289 amount=-1 +kerning first=264 second=339 amount=-1 +kerning first=268 second=229 amount=-1 +kerning first=307 second=289 amount=-1 +kerning first=195 second=356 amount=-1 +kerning first=1049 second=1042 amount=-1 +kerning first=271 second=289 amount=-1 +kerning first=304 second=229 amount=-1 +kerning first=269 second=171 amount=-1 +kerning first=1053 second=1049 amount=-1 +kerning first=232 second=101 amount=-1 +kerning first=365 second=246 amount=-1 +kerning first=369 second=103 amount=-1 +kerning first=364 second=304 amount=-1 +kerning first=333 second=103 amount=-1 +kerning first=304 second=101 amount=-1 +kerning first=368 second=194 amount=-1 +kerning first=66 second=315 amount=-1 +kerning first=257 second=246 amount=-1 +kerning first=240 second=333 amount=-1 +kerning first=203 second=296 amount=-1 +kerning first=362 second=246 amount=-1 +kerning first=221 second=246 amount=-1 +kerning first=225 second=103 amount=-1 +kerning first=220 second=304 amount=-1 +kerning first=199 second=220 amount=-1 +kerning first=1051 second=1091 amount=-1 +kerning first=116 second=246 amount=-1 +kerning first=120 second=103 amount=-1 +kerning first=80 second=246 amount=-1 +kerning first=275 second=120 amount=-1 +kerning first=69 second=315 amount=-1 +kerning first=202 second=211 amount=-1 +kerning first=72 second=109 amount=-1 +kerning first=79 second=304 amount=-1 +kerning first=81 second=86 amount=-1 +kerning first=325 second=313 amount=-1 +kerning first=347 second=8218 amount=-1 +kerning first=195 second=85 amount=-1 +kerning first=311 second=8218 amount=-1 +kerning first=288 second=202 amount=-1 +kerning first=229 second=281 amount=-1 +kerning first=101 second=382 amount=-1 +kerning first=87 second=339 amount=-1 +kerning first=101 second=287 amount=-1 +kerning first=206 second=382 amount=-1 +kerning first=304 second=298 amount=-1 +kerning first=85 second=216 amount=-1 +kerning first=234 second=347 amount=-1 +kerning first=8217 second=332 amount=-1 +kerning first=274 second=211 amount=-1 +kerning first=335 second=8250 amount=-1 +kerning first=262 second=290 amount=-1 +kerning first=68 second=65 amount=-1 +kerning first=98 second=120 amount=-1 +kerning first=305 second=242 amount=-1 +kerning first=8250 second=198 amount=-1 +kerning first=298 second=290 amount=-1 +kerning first=242 second=287 amount=-1 +kerning first=263 second=8250 amount=-1 +kerning first=310 second=211 amount=-1 +kerning first=258 second=86 amount=-1 +kerning first=370 second=290 amount=-1 +kerning first=1046 second=1090 amount=-1 +kerning first=289 second=339 amount=-1 +kerning first=289 second=107 amount=-1 +kerning first=83 second=302 amount=-1 +kerning first=253 second=107 amount=-1 +kerning first=246 second=289 amount=-1 +kerning first=325 second=339 amount=-1 +kerning first=83 second=8220 amount=-1 +kerning first=8217 second=362 amount=-1 +kerning first=1052 second=1067 amount=-1 +kerning first=338 second=219 amount=-1 +kerning first=356 second=234 amount=-1 +kerning first=1118 second=1090 amount=-1 +kerning first=252 second=101 amount=-1 +kerning first=68 second=278 amount=-1 +kerning first=70 second=223 amount=-1 +kerning first=217 second=339 amount=-1 +kerning first=8222 second=268 amount=-1 +kerning first=119 second=8220 amount=-2 +kerning first=302 second=219 amount=-1 +kerning first=194 second=219 amount=-1 +kerning first=79 second=330 amount=-1 +kerning first=103 second=232 amount=-1 +kerning first=106 second=8222 amount=-1 +kerning first=220 second=330 amount=-1 +kerning first=67 second=232 amount=-1 +kerning first=279 second=365 amount=-1 +kerning first=271 second=122 amount=-1 +kerning first=1059 second=1057 amount=-1 +kerning first=1042 second=1118 amount=-1 +kerning first=209 second=278 amount=-1 +kerning first=72 second=280 amount=-1 +kerning first=316 second=232 amount=-1 +kerning first=199 second=122 amount=-1 +kerning first=253 second=187 amount=-1 +kerning first=205 second=74 amount=-1 +kerning first=1046 second=1101 amount=-1 +kerning first=66 second=298 amount=-1 +kerning first=1046 second=1094 amount=-1 +kerning first=68 second=76 amount=-1 +kerning first=1060 second=1047 amount=-1 +kerning first=323 second=225 amount=-1 +kerning first=66 second=363 amount=-1 +kerning first=187 second=89 amount=-2 +kerning first=1027 second=1094 amount=-1 +kerning first=263 second=228 amount=-1 +kerning first=350 second=85 amount=-1 +kerning first=101 second=246 amount=-1 +kerning first=352 second=8217 amount=-1 +kerning first=370 second=296 amount=-1 +kerning first=8218 second=314 amount=-1 +kerning first=279 second=363 amount=-1 +kerning first=278 second=85 amount=-1 +kerning first=77 second=216 amount=-1 +kerning first=260 second=8220 amount=-2 +kerning first=234 second=46 amount=-1 +kerning first=224 second=8220 amount=-2 +kerning first=206 second=85 amount=-1 +kerning first=332 second=8220 amount=-2 +kerning first=74 second=225 amount=-1 +kerning first=1051 second=1028 amount=-1 +kerning first=65 second=85 amount=-1 +kerning first=205 second=241 amount=-1 +kerning first=74 second=260 amount=-1 +kerning first=368 second=8220 amount=-1 +kerning first=368 second=302 amount=-1 +kerning first=355 second=283 amount=-1 +kerning first=267 second=114 amount=-1 +kerning first=105 second=289 amount=-1 +kerning first=296 second=302 amount=-1 +kerning first=1060 second=1038 amount=-1 +kerning first=72 second=70 amount=-1 +kerning first=202 second=250 amount=-1 +kerning first=287 second=109 amount=-1 +kerning first=261 second=378 amount=-1 +kerning first=78 second=262 amount=-1 +kerning first=80 second=207 amount=-1 +kerning first=225 second=378 amount=-1 +kerning first=277 second=104 amount=-1 +kerning first=213 second=70 amount=-1 +kerning first=1053 second=1075 amount=-1 +kerning first=352 second=366 amount=-1 +kerning first=346 second=250 amount=-1 +kerning first=310 second=250 amount=-1 +kerning first=280 second=366 amount=-1 +kerning first=210 second=192 amount=-1 +kerning first=274 second=250 amount=-1 +kerning first=219 second=262 amount=-1 +kerning first=333 second=378 amount=-1 +kerning first=8218 second=231 amount=-1 +kerning first=218 second=216 amount=-1 +kerning first=283 second=357 amount=-1 +kerning first=1053 second=1070 amount=-1 +kerning first=1042 second=1053 amount=-1 +kerning first=324 second=8221 amount=-2 +kerning first=209 second=76 amount=-1 +kerning first=304 second=225 amount=-1 +kerning first=362 second=216 amount=-1 +kerning first=1046 second=1073 amount=-1 +kerning first=84 second=378 amount=-1 +kerning first=83 second=369 amount=-1 +kerning first=45 second=253 amount=-1 +kerning first=272 second=201 amount=-1 +kerning first=218 second=251 amount=-1 +kerning first=1086 second=1084 amount=-1 +kerning first=200 second=201 amount=-1 +kerning first=97 second=113 amount=-1 +kerning first=73 second=116 amount=-1 +kerning first=362 second=251 amount=-1 +kerning first=8220 second=353 amount=-1 +kerning first=250 second=45 amount=-1 +kerning first=80 second=242 amount=-1 +kerning first=199 second=259 amount=-1 +kerning first=201 second=204 amount=-1 +kerning first=255 second=250 amount=-1 +kerning first=68 second=44 amount=-1 +kerning first=202 second=116 amount=-1 +kerning first=257 second=242 amount=-1 +kerning first=196 second=268 amount=-1 +kerning first=87 second=369 amount=-1 +kerning first=206 second=317 amount=-1 +kerning first=275 second=8218 amount=-1 +kerning first=267 second=8217 amount=-2 +kerning first=278 second=317 amount=-1 +kerning first=187 second=256 amount=-1 +kerning first=197 second=210 amount=-1 +kerning first=67 second=366 amount=-1 +kerning first=350 second=317 amount=-1 +kerning first=1060 second=1061 amount=-1 +kerning first=304 second=268 amount=-1 +kerning first=192 second=369 amount=-1 +kerning first=365 second=242 amount=-1 +kerning first=1073 second=1113 amount=-1 +kerning first=324 second=171 amount=-1 +kerning first=218 second=207 amount=-1 +kerning first=369 second=244 amount=-1 +kerning first=325 second=209 amount=-1 +kerning first=78 second=327 amount=-1 +kerning first=224 second=233 amount=-1 +kerning first=305 second=279 amount=-1 +kerning first=1105 second=1080 amount=-1 +kerning first=368 second=371 amount=-1 +kerning first=217 second=209 amount=-1 +kerning first=233 second=279 amount=-1 +kerning first=219 second=327 amount=-1 +kerning first=8250 second=302 amount=-1 +kerning first=269 second=279 amount=-1 +kerning first=368 second=233 amount=-1 +kerning first=302 second=288 amount=-1 +kerning first=87 second=235 amount=-1 +kerning first=198 second=213 amount=-1 +kerning first=338 second=288 amount=-1 +kerning first=298 second=280 amount=-1 +kerning first=327 second=327 amount=-1 +kerning first=296 second=233 amount=-1 +kerning first=207 second=335 amount=-1 +kerning first=220 second=200 amount=-1 +kerning first=266 second=288 amount=-1 +kerning first=228 second=235 amount=-1 +kerning first=83 second=371 amount=-1 +kerning first=264 second=235 amount=-1 +kerning first=86 second=224 amount=-1 +kerning first=79 second=200 amount=-1 +kerning first=344 second=266 amount=-1 +kerning first=374 second=288 amount=-1 +kerning first=321 second=370 amount=-1 +kerning first=73 second=284 amount=-1 +kerning first=99 second=8221 amount=-2 +kerning first=334 second=84 amount=-1 +kerning first=264 second=231 amount=-1 +kerning first=1053 second=1077 amount=-1 +kerning first=250 second=283 amount=-1 +kerning first=286 second=218 amount=-1 +kerning first=80 second=380 amount=-1 +kerning first=263 second=224 amount=-1 +kerning first=214 second=218 amount=-1 +kerning first=364 second=196 amount=-1 +kerning first=272 second=270 amount=-1 +kerning first=87 second=231 amount=-1 +kerning first=73 second=283 amount=-1 +kerning first=257 second=380 amount=-1 +kerning first=206 second=248 amount=-1 +kerning first=109 second=283 amount=-1 +kerning first=73 second=218 amount=-1 +kerning first=221 second=380 amount=-1 +kerning first=314 second=248 amount=-1 +kerning first=1031 second=1027 amount=-1 +kerning first=213 second=280 amount=-1 +kerning first=228 second=231 amount=-1 +kerning first=79 second=196 amount=-1 +kerning first=268 second=66 amount=-1 +kerning first=282 second=79 amount=-1 +kerning first=368 second=367 amount=-1 +kerning first=74 second=323 amount=-1 +kerning first=84 second=244 amount=-1 +kerning first=66 second=266 amount=-1 +kerning first=69 second=79 amount=-1 +kerning first=72 second=218 amount=-1 +kerning first=8217 second=228 amount=-1 +kerning first=200 second=270 amount=-1 +kerning first=225 second=244 amount=-1 +kerning first=261 second=244 amount=-1 +kerning first=1039 second=1062 amount=-1 +kerning first=83 second=367 amount=-1 +kerning first=326 second=45 amount=-1 +kerning first=259 second=99 amount=-1 +kerning first=85 second=80 amount=-1 +kerning first=362 second=114 amount=-1 +kerning first=332 second=8250 amount=-1 +kerning first=362 second=45 amount=-2 +kerning first=241 second=283 amount=-1 +kerning first=198 second=217 amount=-1 +kerning first=210 second=354 amount=-1 +kerning first=119 second=367 amount=-1 +kerning first=290 second=45 amount=-1 +kerning first=217 second=205 amount=-1 +kerning first=298 second=80 amount=-1 +kerning first=65 second=252 amount=-1 +kerning first=254 second=114 amount=-1 +kerning first=270 second=217 amount=-1 +kerning first=266 second=284 amount=-1 +kerning first=262 second=80 amount=-1 +kerning first=187 second=69 amount=-1 +kerning first=8249 second=364 amount=-1 +kerning first=326 second=114 amount=-1 +kerning first=338 second=284 amount=-1 +kerning first=101 second=252 amount=-1 +kerning first=304 second=66 amount=-1 +kerning first=302 second=284 amount=-1 +kerning first=72 second=232 amount=-1 +kerning first=77 second=114 amount=-1 +kerning first=1027 second=1098 amount=-1 +kerning first=89 second=284 amount=-1 +kerning first=1052 second=1072 amount=-1 +kerning first=108 second=243 amount=-1 +kerning first=302 second=353 amount=-1 +kerning first=194 second=284 amount=-1 +kerning first=266 second=353 amount=-1 +kerning first=72 second=345 amount=-1 +kerning first=374 second=353 amount=-1 +kerning first=108 second=345 amount=-1 +kerning first=262 second=268 amount=-1 +kerning first=234 second=115 amount=-1 +kerning first=270 second=115 amount=-1 +kerning first=249 second=345 amount=-1 +kerning first=364 second=45 amount=-2 +kerning first=1031 second=1054 amount=-1 +kerning first=108 second=250 amount=-1 +kerning first=45 second=249 amount=-1 +kerning first=200 second=266 amount=-1 +kerning first=73 second=214 amount=-1 +kerning first=1049 second=1077 amount=-1 +kerning first=104 second=243 amount=-1 +kerning first=193 second=71 amount=-1 +kerning first=204 second=368 amount=-1 +kerning first=209 second=243 amount=-1 +kerning first=364 second=200 amount=-1 +kerning first=231 second=226 amount=-1 +kerning first=281 second=243 amount=-1 +kerning first=75 second=336 amount=-1 +kerning first=205 second=310 amount=-1 +kerning first=267 second=226 amount=-1 +kerning first=269 second=275 amount=-1 +kerning first=272 second=197 amount=-1 +kerning first=233 second=275 amount=-1 +kerning first=362 second=288 amount=-1 +kerning first=370 second=80 amount=-1 +kerning first=314 second=252 amount=-1 +kerning first=334 second=80 amount=-1 +kerning first=278 second=252 amount=-1 +kerning first=1030 second=1089 amount=-1 +kerning first=374 second=8220 amount=-1 +kerning first=305 second=275 amount=-1 +kerning first=73 second=270 amount=-1 +kerning first=350 second=252 amount=-1 +kerning first=218 second=45 amount=-2 +kerning first=88 second=71 amount=-1 +kerning first=77 second=45 amount=-1 +kerning first=1046 second=1087 amount=-1 +kerning first=258 second=249 amount=-1 +kerning first=113 second=45 amount=-1 +kerning first=1046 second=1086 amount=-1 +kerning first=374 second=275 amount=-1 +kerning first=85 second=71 amount=-1 +kerning first=8217 second=338 amount=-1 +kerning first=233 second=353 amount=-1 +kerning first=317 second=217 amount=-1 +kerning first=102 second=45 amount=-1 +kerning first=77 second=97 amount=-1 +kerning first=230 second=275 amount=-1 +kerning first=262 second=71 amount=-1 +kerning first=274 second=8249 amount=-1 +kerning first=209 second=79 amount=-1 +kerning first=269 second=353 amount=-1 +kerning first=302 second=275 amount=-1 +kerning first=266 second=275 amount=-1 +kerning first=1052 second=1068 amount=-1 +kerning first=217 second=66 amount=-1 +kerning first=302 second=362 amount=-1 +kerning first=67 second=318 amount=-1 +kerning first=1047 second=1045 amount=-1 +kerning first=246 second=122 amount=-1 +kerning first=219 second=223 amount=-1 +kerning first=8217 second=224 amount=-1 +kerning first=103 second=318 amount=-1 +kerning first=362 second=97 amount=-1 +kerning first=1042 second=1062 amount=-1 +kerning first=187 second=80 amount=-1 +kerning first=338 second=362 amount=-1 +kerning first=89 second=275 amount=-1 +kerning first=1058 second=1097 amount=-1 +kerning first=244 second=318 amount=-1 +kerning first=218 second=97 amount=-1 +kerning first=327 second=223 amount=-1 +kerning first=316 second=318 amount=-1 +kerning first=291 second=223 amount=-1 +kerning first=211 second=315 amount=-1 +kerning first=187 second=200 amount=-1 +kerning first=240 second=234 amount=-1 +kerning first=324 second=232 amount=-1 +kerning first=206 second=226 amount=-1 +kerning first=8222 second=354 amount=-1 +kerning first=1038 second=1085 amount=-1 +kerning first=78 second=223 amount=-1 +kerning first=75 second=249 amount=-1 +kerning first=194 second=362 amount=-1 +kerning first=364 second=209 amount=-1 +kerning first=264 second=283 amount=-1 +kerning first=368 second=198 amount=-1 +kerning first=197 second=266 amount=-1 +kerning first=86 second=371 amount=-1 +kerning first=370 second=71 amount=-1 +kerning first=1077 second=1076 amount=-1 +kerning first=1042 second=1079 amount=-1 +kerning first=298 second=71 amount=-1 +kerning first=283 second=249 amount=-1 +kerning first=75 second=332 amount=-1 +kerning first=68 second=217 amount=-1 +kerning first=66 second=45 amount=-1 +kerning first=197 second=8250 amount=-1 +kerning first=70 second=249 amount=-1 +kerning first=209 second=217 amount=-1 +kerning first=289 second=98 amount=-1 +kerning first=366 second=361 amount=-1 +kerning first=270 second=206 amount=-1 +kerning first=253 second=98 amount=-1 +kerning first=8250 second=66 amount=-1 +kerning first=205 second=267 amount=-1 +kerning first=258 second=361 amount=-1 +kerning first=241 second=267 amount=-1 +kerning first=201 second=250 amount=-1 +kerning first=1042 second=1051 amount=-1 +kerning first=277 second=267 amount=-1 +kerning first=1047 second=1042 amount=-1 +kerning first=1050 second=1080 amount=-1 +kerning first=69 second=216 amount=-1 +kerning first=199 second=345 amount=-1 +kerning first=100 second=267 amount=-1 +kerning first=235 second=345 amount=-1 +kerning first=8250 second=380 amount=-1 +kerning first=271 second=345 amount=-1 +kerning first=1071 second=1107 amount=-1 +kerning first=207 second=225 amount=-1 +kerning first=1064 second=1079 amount=-1 +kerning first=1036 second=1080 amount=-1 +kerning first=219 second=323 amount=-1 +kerning first=72 second=241 amount=-1 +kerning first=1041 second=1063 amount=-1 +kerning first=80 second=302 amount=-1 +kerning first=78 second=323 amount=-1 +kerning first=240 second=114 amount=-1 +kerning first=262 second=171 amount=-1 +kerning first=272 second=344 amount=-1 +kerning first=325 second=378 amount=-1 +kerning first=327 second=323 amount=-1 +kerning first=69 second=250 amount=-1 +kerning first=78 second=310 amount=-1 +kerning first=289 second=378 amount=-1 +kerning first=78 second=370 amount=-1 +kerning first=99 second=114 amount=-1 +kerning first=202 second=336 amount=-1 +kerning first=253 second=378 amount=-1 +kerning first=326 second=103 amount=-1 +kerning first=327 second=370 amount=-1 +kerning first=282 second=250 amount=-1 +kerning first=274 second=336 amount=-1 +kerning first=74 second=199 amount=-1 +kerning first=213 second=207 amount=-1 +kerning first=219 second=378 amount=-1 +kerning first=310 second=336 amount=-1 +kerning first=65 second=46 amount=-1 +kerning first=86 second=284 amount=-1 +kerning first=282 second=216 amount=-1 +kerning first=45 second=361 amount=-1 +kerning first=1039 second=1071 amount=-1 +kerning first=207 second=259 amount=-1 +kerning first=323 second=199 amount=-1 +kerning first=327 second=310 amount=-1 +kerning first=217 second=378 amount=-1 +kerning first=270 second=72 amount=-1 +kerning first=1044 second=1054 amount=-1 +kerning first=200 second=344 amount=-1 +kerning first=112 second=378 amount=-1 +kerning first=1056 second=1105 amount=-1 +kerning first=219 second=310 amount=-1 +kerning first=302 second=210 amount=-1 +kerning first=258 second=314 amount=-1 +kerning first=45 second=288 amount=-1 +kerning first=207 second=346 amount=-1 +kerning first=307 second=235 amount=-1 +kerning first=195 second=334 amount=-1 +kerning first=220 second=282 amount=-1 +kerning first=67 second=331 amount=-1 +kerning first=66 second=346 amount=-1 +kerning first=321 second=87 amount=-1 +kerning first=1052 second=1055 amount=-1 +kerning first=67 second=220 amount=-1 +kerning first=258 second=288 amount=-1 +kerning first=362 second=110 amount=-1 +kerning first=368 second=109 amount=-1 +kerning first=79 second=282 amount=-1 +kerning first=1058 second=1095 amount=-1 +kerning first=219 second=344 amount=-1 +kerning first=110 second=119 amount=-1 +kerning first=336 second=187 amount=-1 +kerning first=307 second=333 amount=-1 +kerning first=116 second=101 amount=-1 +kerning first=80 second=101 amount=-1 +kerning first=209 second=230 amount=-1 +kerning first=221 second=101 amount=-1 +kerning first=8250 second=220 amount=-1 +kerning first=289 second=291 amount=-1 +kerning first=262 second=296 amount=-1 +kerning first=104 second=263 amount=-1 +kerning first=198 second=325 amount=-1 +kerning first=257 second=101 amount=-1 +kerning first=354 second=337 amount=-1 +kerning first=67 second=245 amount=-1 +kerning first=112 second=291 amount=-1 +kerning first=74 second=212 amount=-1 +kerning first=8217 second=211 amount=-1 +kerning first=261 second=279 amount=-1 +kerning first=1070 second=1061 amount=-1 +kerning first=304 second=344 amount=-1 +kerning first=286 second=8218 amount=-1 +kerning first=1034 second=1061 amount=-1 +kerning first=84 second=99 amount=-1 +kerning first=88 second=303 amount=-1 +kerning first=369 second=279 amount=-1 +kerning first=1066 second=1098 amount=-1 +kerning first=1030 second=1098 amount=-1 +kerning first=105 second=337 amount=-1 +kerning first=264 second=296 amount=-1 +kerning first=193 second=303 amount=-1 +kerning first=1049 second=1064 amount=-1 +kerning first=261 second=99 amount=-1 +kerning first=366 second=288 amount=-1 +kerning first=1055 second=1119 amount=-1 +kerning first=231 second=187 amount=-1 +kerning first=1091 second=1119 amount=-1 +kerning first=316 second=245 amount=-1 +kerning first=1039 second=1118 amount=-1 +kerning first=80 second=75 amount=-1 +kerning first=225 second=99 amount=-1 +kerning first=216 second=8250 amount=-1 +kerning first=330 second=288 amount=-1 +kerning first=339 second=187 amount=-1 +kerning first=214 second=8218 amount=-1 +kerning first=352 second=363 amount=-1 +kerning first=84 second=279 amount=-1 +kerning first=212 second=221 amount=-1 +kerning first=307 second=243 amount=-1 +kerning first=291 second=117 amount=-1 +kerning first=80 second=226 amount=-1 +kerning first=365 second=8220 amount=-1 +kerning first=1071 second=1065 amount=-1 +kerning first=296 second=380 amount=-1 +kerning first=255 second=117 amount=-1 +kerning first=219 second=117 amount=-1 +kerning first=267 second=287 amount=-1 +kerning first=275 second=248 amount=-1 +kerning first=368 second=380 amount=-1 +kerning first=231 second=287 amount=-1 +kerning first=325 second=218 amount=-1 +kerning first=267 second=363 amount=-1 +kerning first=99 second=307 amount=-1 +kerning first=298 second=264 amount=-1 +kerning first=1068 second=1030 amount=-1 +kerning first=262 second=264 amount=-1 +kerning first=291 second=171 amount=-1 +kerning first=198 second=278 amount=-1 +kerning first=296 second=66 amount=-1 +kerning first=201 second=364 amount=-1 +kerning first=116 second=8220 amount=-1 +kerning first=194 second=121 amount=-1 +kerning first=220 second=209 amount=-1 +kerning first=80 second=8220 amount=-1 +kerning first=85 second=264 amount=-1 +kerning first=196 second=367 amount=-1 +kerning first=266 second=202 amount=-1 +kerning first=119 second=380 amount=-1 +kerning first=264 second=270 amount=-1 +kerning first=79 second=209 amount=-1 +kerning first=83 second=66 amount=-1 +kerning first=270 second=278 amount=-1 +kerning first=327 second=69 amount=-1 +kerning first=257 second=8220 amount=-2 +kerning first=89 second=74 amount=-1 +kerning first=302 second=202 amount=-1 +kerning first=270 second=325 amount=-1 +kerning first=78 second=69 amount=-1 +kerning first=208 second=8220 amount=-2 +kerning first=362 second=330 amount=-1 +kerning first=201 second=202 amount=-1 +kerning first=219 second=69 amount=-1 +kerning first=1040 second=1091 amount=-1 +kerning first=352 second=203 amount=-1 +kerning first=302 second=74 amount=-1 +kerning first=264 second=311 amount=-1 +kerning first=364 second=330 amount=-1 +kerning first=234 second=252 amount=-1 +kerning first=374 second=74 amount=-1 +kerning first=275 second=252 amount=-1 +kerning first=198 second=252 amount=-1 +kerning first=206 second=261 amount=-1 +kerning first=368 second=66 amount=-1 +kerning first=280 second=313 amount=-1 +kerning first=73 second=227 amount=-1 +kerning first=217 second=218 amount=-1 +kerning first=235 second=44 amount=-1 +kerning first=288 second=78 amount=-1 +kerning first=366 second=214 amount=-1 +kerning first=1055 second=1057 amount=-1 +kerning first=330 second=214 amount=-1 +kerning first=76 second=218 amount=-1 +kerning first=8217 second=284 amount=-1 +kerning first=368 second=281 amount=-1 +kerning first=269 second=112 amount=-1 +kerning first=204 second=68 amount=-1 +kerning first=204 second=355 amount=-1 +kerning first=1104 second=1103 amount=-1 +kerning first=1043 second=1082 amount=-1 +kerning first=364 second=282 amount=-1 +kerning first=307 second=44 amount=-1 +kerning first=200 second=365 amount=-1 +kerning first=82 second=286 amount=-1 +kerning first=103 second=117 amount=-1 +kerning first=200 second=171 amount=-1 +kerning first=70 second=252 amount=-1 +kerning first=368 second=204 amount=-1 +kerning first=103 second=112 amount=-1 +kerning first=316 second=117 amount=-1 +kerning first=116 second=229 amount=-1 +kerning first=1051 second=1108 amount=-1 +kerning first=1049 second=1051 amount=-1 +kerning first=280 second=117 amount=-1 +kerning first=80 second=229 amount=-1 +kerning first=344 second=171 amount=-1 +kerning first=364 second=68 amount=-1 +kerning first=380 second=171 amount=-1 +kerning first=212 second=192 amount=-1 +kerning first=362 second=8218 amount=-2 +kerning first=240 second=287 amount=-1 +kerning first=83 second=220 amount=-1 +kerning first=1052 second=1042 amount=-1 +kerning first=352 second=117 amount=-1 +kerning first=195 second=361 amount=-1 +kerning first=227 second=263 amount=-1 +kerning first=197 second=374 amount=-1 +kerning first=1054 second=1039 amount=-1 +kerning first=77 second=298 amount=-1 +kerning first=263 second=263 amount=-1 +kerning first=304 second=246 amount=-1 +kerning first=72 second=100 amount=-1 +kerning first=279 second=251 amount=-1 +kerning first=268 second=246 amount=-1 +kerning first=339 second=382 amount=-1 +kerning first=232 second=246 amount=-1 +kerning first=1054 second=1034 amount=-1 +kerning first=375 second=382 amount=-1 +kerning first=283 second=103 amount=-1 +kerning first=325 second=77 amount=-1 +kerning first=296 second=220 amount=-1 +kerning first=1047 second=1062 amount=-1 +kerning first=368 second=220 amount=-1 +kerning first=212 second=206 amount=-1 +kerning first=325 second=304 amount=-1 +kerning first=107 second=316 amount=-1 +kerning first=209 second=330 amount=-1 +kerning first=8217 second=198 amount=-2 +kerning first=106 second=103 amount=-1 +kerning first=248 second=316 amount=-1 +kerning first=279 second=333 amount=-1 +kerning first=193 second=118 amount=-1 +kerning first=79 second=68 amount=-1 +kerning first=365 second=281 amount=-1 +kerning first=8250 second=207 amount=-1 +kerning first=207 second=333 amount=-1 +kerning first=328 second=248 amount=-1 +kerning first=325 second=8222 amount=-1 +kerning first=217 second=304 amount=-1 +kerning first=1051 second=1048 amount=-1 +kerning first=289 second=8222 amount=-1 +kerning first=86 second=211 amount=-1 +kerning first=253 second=8222 amount=-1 +kerning first=334 second=221 amount=-1 +kerning first=193 second=255 amount=-1 +kerning first=8217 second=83 amount=-1 +kerning first=80 second=331 amount=-1 +kerning first=217 second=8222 amount=-2 +kerning first=1044 second=1087 amount=-1 +kerning first=267 second=382 amount=-1 +kerning first=262 second=310 amount=-1 +kerning first=82 second=221 amount=-1 +kerning first=286 second=313 amount=-1 +kerning first=195 second=375 amount=-1 +kerning first=187 second=221 amount=-2 +kerning first=67 second=210 amount=-1 +kerning first=206 second=339 amount=-1 +kerning first=213 second=315 amount=-1 +kerning first=354 second=242 amount=-1 +kerning first=72 second=233 amount=-1 +kerning first=104 second=111 amount=-1 +kerning first=108 second=233 amount=-1 +kerning first=83 second=280 amount=-1 +kerning first=209 second=111 amount=-1 +kerning first=305 second=245 amount=-1 +kerning first=206 second=205 amount=-1 +kerning first=214 second=313 amount=-1 +kerning first=269 second=245 amount=-1 +kerning first=249 second=233 amount=-1 +kerning first=1048 second=1057 amount=-1 +kerning first=101 second=120 amount=-1 +kerning first=364 second=230 amount=-1 +kerning first=68 second=330 amount=-1 +kerning first=314 second=339 amount=-1 +kerning first=72 second=315 amount=-1 +kerning first=296 second=280 amount=-1 +kerning first=220 second=230 amount=-1 +kerning first=368 second=280 amount=-1 +kerning first=80 second=317 amount=-1 +kerning first=262 second=212 amount=-1 +kerning first=218 second=298 amount=-1 +kerning first=110 second=8217 amount=-2 +kerning first=298 second=212 amount=-1 +kerning first=220 second=76 amount=-1 +kerning first=290 second=298 amount=-1 +kerning first=79 second=76 amount=-1 +kerning first=370 second=212 amount=-1 +kerning first=251 second=8217 amount=-1 +kerning first=85 second=212 amount=-1 +kerning first=362 second=298 amount=-1 +kerning first=45 second=344 amount=-1 +kerning first=75 second=118 amount=-1 +kerning first=1055 second=1113 amount=-1 +kerning first=8222 second=367 amount=-1 +kerning first=345 second=46 amount=-1 +kerning first=281 second=111 amount=-1 +kerning first=233 second=245 amount=-1 +kerning first=325 second=85 amount=-1 +kerning first=194 second=254 amount=-1 +kerning first=116 second=289 amount=-1 +kerning first=230 second=254 amount=-1 +kerning first=266 second=254 amount=-1 +kerning first=217 second=85 amount=-1 +kerning first=287 second=8217 amount=-2 +kerning first=323 second=8217 amount=-1 +kerning first=76 second=85 amount=-1 +kerning first=257 second=289 amount=-1 +kerning first=80 second=216 amount=-1 +kerning first=89 second=262 amount=-1 +kerning first=267 second=46 amount=-1 +kerning first=1055 second=1099 amount=-1 +kerning first=375 second=46 amount=-1 +kerning first=302 second=218 amount=-1 +kerning first=339 second=46 amount=-1 +kerning first=302 second=262 amount=-1 +kerning first=187 second=67 amount=-1 +kerning first=224 second=8250 amount=-1 +kerning first=266 second=262 amount=-1 +kerning first=70 second=116 amount=-1 +kerning first=221 second=216 amount=-1 +kerning first=374 second=262 amount=-1 +kerning first=82 second=67 amount=-1 +kerning first=1104 second=1095 amount=-1 +kerning first=338 second=262 amount=-1 +kerning first=197 second=366 amount=-1 +kerning first=83 second=345 amount=-1 +kerning first=45 second=206 amount=-1 +kerning first=272 second=304 amount=-1 +kerning first=274 second=70 amount=-1 +kerning first=204 second=110 amount=-1 +kerning first=355 second=353 amount=-1 +kerning first=214 second=192 amount=-1 +kerning first=8217 second=380 amount=-1 +kerning first=235 second=250 amount=-1 +kerning first=346 second=70 amount=-1 +kerning first=224 second=345 amount=-1 +kerning first=8250 second=75 amount=-1 +kerning first=67 second=104 amount=-1 +kerning first=362 second=225 amount=-1 +kerning first=364 second=76 amount=-1 +kerning first=77 second=229 amount=-1 +kerning first=1039 second=1084 amount=-1 +kerning first=231 second=46 amount=-1 +kerning first=197 second=253 amount=-1 +kerning first=350 second=274 amount=-1 +kerning first=368 second=345 amount=-1 +kerning first=302 second=224 amount=-1 +kerning first=206 second=366 amount=-1 +kerning first=366 second=206 amount=-1 +kerning first=217 second=44 amount=-2 +kerning first=193 second=368 amount=-1 +kerning first=8220 second=362 amount=-1 +kerning first=68 second=317 amount=-1 +kerning first=296 second=207 amount=-1 +kerning first=1031 second=1105 amount=-1 +kerning first=86 second=271 amount=-1 +kerning first=194 second=375 amount=-1 +kerning first=330 second=206 amount=-1 +kerning first=88 second=8221 amount=-1 +kerning first=368 second=207 amount=-1 +kerning first=195 second=369 amount=-1 +kerning first=209 second=317 amount=-1 +kerning first=97 second=122 amount=-1 +kerning first=193 second=8221 amount=-2 +kerning first=211 second=201 amount=-1 +kerning first=263 second=271 amount=-1 +kerning first=229 second=8221 amount=-2 +kerning first=88 second=368 amount=-1 +kerning first=70 second=201 amount=-1 +kerning first=1054 second=1047 amount=-1 +kerning first=1108 second=1093 amount=-1 +kerning first=212 second=256 amount=-1 +kerning first=228 second=378 amount=-1 +kerning first=283 second=116 amount=-1 +kerning first=100 second=113 amount=-1 +kerning first=337 second=8221 amount=-2 +kerning first=1056 second=1031 amount=-1 +kerning first=304 second=122 amount=-1 +kerning first=87 second=378 amount=-1 +kerning first=214 second=270 amount=-1 +kerning first=85 second=204 amount=-1 +kerning first=78 second=267 amount=-1 +kerning first=88 second=219 amount=-1 +kerning first=370 second=204 amount=-1 +kerning first=304 second=259 amount=-1 +kerning first=1067 second=1105 amount=-1 +kerning first=334 second=204 amount=-1 +kerning first=268 second=259 amount=-1 +kerning first=298 second=204 amount=-1 +kerning first=83 second=207 amount=-1 +kerning first=264 second=378 amount=-1 +kerning first=280 second=210 amount=-1 +kerning first=214 second=86 amount=-1 +kerning first=80 second=281 amount=-1 +kerning first=1041 second=1068 amount=-1 +kerning first=8250 second=280 amount=-1 +kerning first=1055 second=1091 amount=-1 +kerning first=221 second=281 amount=-1 +kerning first=257 second=281 amount=-1 +kerning first=365 second=333 amount=-1 +kerning first=206 second=347 amount=-1 +kerning first=199 second=350 amount=-1 +kerning first=275 second=235 amount=-1 +kerning first=218 second=290 amount=-1 +kerning first=101 second=347 amount=-1 +kerning first=370 second=277 amount=-1 +kerning first=86 second=198 amount=-1 +kerning first=1051 second=1056 amount=-1 +kerning first=366 second=73 amount=-1 +kerning first=330 second=73 amount=-1 +kerning first=88 second=268 amount=-1 +kerning first=351 second=8220 amount=-2 +kerning first=333 second=8218 amount=-1 +kerning first=196 second=253 amount=-1 +kerning first=375 second=369 amount=-1 +kerning first=204 second=282 amount=-1 +kerning first=352 second=8249 amount=-1 +kerning first=327 second=82 amount=-1 +kerning first=8250 second=328 amount=-1 +kerning first=275 second=108 amount=-1 +kerning first=218 second=363 amount=-1 +kerning first=85 second=277 amount=-1 +kerning first=249 second=235 amount=-1 +kerning first=45 second=73 amount=-1 +kerning first=1027 second=1072 amount=-1 +kerning first=298 second=277 amount=-1 +kerning first=99 second=246 amount=-1 +kerning first=362 second=363 amount=-1 +kerning first=262 second=277 amount=-1 +kerning first=77 second=290 amount=-1 +kerning first=226 second=277 amount=-1 +kerning first=81 second=73 amount=-1 +kerning first=353 second=103 amount=-1 +kerning first=1068 second=1041 amount=-1 +kerning first=67 second=8249 amount=-1 +kerning first=78 second=73 amount=-1 +kerning first=103 second=8249 amount=-1 +kerning first=199 second=79 amount=-1 +kerning first=78 second=82 amount=-1 +kerning first=219 second=82 amount=-1 +kerning first=289 second=231 amount=-1 +kerning first=325 second=231 amount=-1 +kerning first=275 second=283 amount=-1 +kerning first=209 second=338 amount=-1 +kerning first=67 second=242 amount=-1 +kerning first=316 second=8249 amount=-1 +kerning first=1048 second=1065 amount=-1 +kerning first=217 second=196 amount=-1 +kerning first=199 second=66 amount=-1 +kerning first=73 second=235 amount=-1 +kerning first=69 second=345 amount=-1 +kerning first=109 second=235 amount=-1 +kerning first=105 second=345 amount=-1 +kerning first=87 second=248 amount=-1 +kerning first=330 second=270 amount=-1 +kerning first=246 second=345 amount=-1 +kerning first=325 second=283 amount=-1 +kerning first=282 second=345 amount=-1 +kerning first=217 second=283 amount=-1 +kerning first=1030 second=1076 amount=-1 +kerning first=72 second=79 amount=-1 +kerning first=8216 second=370 amount=-1 +kerning first=1033 second=1067 amount=-1 +kerning first=221 second=367 amount=-1 +kerning first=1069 second=1067 amount=-1 +kerning first=235 second=380 amount=-1 +kerning first=286 second=205 amount=-1 +kerning first=78 second=337 amount=-1 +kerning first=220 second=274 amount=-1 +kerning first=272 second=192 amount=-1 +kerning first=79 second=274 amount=-1 +kerning first=67 second=323 amount=-1 +kerning first=72 second=336 amount=-1 +kerning first=1047 second=1080 amount=-1 +kerning first=204 second=310 amount=-1 +kerning first=84 second=257 amount=-1 +kerning first=195 second=249 amount=-1 +kerning first=288 second=70 amount=-1 +kerning first=332 second=44 amount=-1 +kerning first=73 second=205 amount=-1 +kerning first=368 second=44 amount=-2 +kerning first=260 second=44 amount=-1 +kerning first=101 second=231 amount=-1 +kerning first=214 second=205 amount=-1 +kerning first=70 second=244 amount=-1 +kerning first=106 second=244 amount=-1 +kerning first=1048 second=1052 amount=-1 +kerning first=352 second=323 amount=-1 +kerning first=365 second=235 amount=-1 +kerning first=364 second=274 amount=-1 +kerning first=280 second=323 amount=-1 +kerning first=70 second=314 amount=-1 +kerning first=1055 second=1054 amount=-1 +kerning first=283 second=244 amount=-1 +kerning first=264 second=218 amount=-1 +kerning first=197 second=355 amount=-1 +kerning first=355 second=244 amount=-1 +kerning first=192 second=218 amount=-1 +kerning first=228 second=248 amount=-1 +kerning first=206 second=231 amount=-1 +kerning first=288 second=327 amount=-1 +kerning first=83 second=44 amount=-1 +kerning first=187 second=290 amount=-1 +kerning first=264 second=248 amount=-1 +kerning first=119 second=44 amount=-1 +kerning first=364 second=217 amount=-1 +kerning first=1039 second=1049 amount=-1 +kerning first=219 second=275 amount=-1 +kerning first=1046 second=1081 amount=-1 +kerning first=356 second=243 amount=-1 +kerning first=327 second=275 amount=-1 +kerning first=207 second=110 amount=-1 +kerning first=352 second=223 amount=-1 +kerning first=283 second=314 amount=-1 +kerning first=291 second=275 amount=-1 +kerning first=117 second=8220 amount=-1 +kerning first=1036 second=1088 amount=-1 +kerning first=70 second=214 amount=-1 +kerning first=196 second=45 amount=-1 +kerning first=1038 second=1107 amount=-1 +kerning first=78 second=275 amount=-1 +kerning first=200 second=249 amount=-1 +kerning first=8222 second=259 amount=-1 +kerning first=1069 second=1031 amount=-1 +kerning first=330 second=298 amount=-1 +kerning first=1118 second=1081 amount=-1 +kerning first=103 second=223 amount=-1 +kerning first=1105 second=1097 amount=-1 +kerning first=71 second=80 amount=-1 +kerning first=207 second=97 amount=-1 +kerning first=67 second=223 amount=-1 +kerning first=268 second=45 amount=-1 +kerning first=194 second=370 amount=-1 +kerning first=284 second=80 amount=-1 +kerning first=103 second=353 amount=-1 +kerning first=280 second=223 amount=-1 +kerning first=101 second=122 amount=-1 +kerning first=67 second=353 amount=-1 +kerning first=212 second=80 amount=-1 +kerning first=1028 second=1091 amount=-1 +kerning first=105 second=101 amount=-1 +kerning first=69 second=200 amount=-1 +kerning first=277 second=232 amount=-1 +kerning first=366 second=266 amount=-1 +kerning first=270 second=200 amount=-1 +kerning first=330 second=266 amount=-1 +kerning first=205 second=232 amount=-1 +kerning first=1049 second=1072 amount=-1 +kerning first=205 second=362 amount=-1 +kerning first=198 second=200 amount=-1 +kerning first=325 second=226 amount=-1 +kerning first=217 second=296 amount=-1 +kerning first=77 second=225 amount=-1 +kerning first=220 second=8222 amount=-2 +kerning first=277 second=8250 amount=-1 +kerning first=219 second=122 amount=-1 +kerning first=258 second=266 amount=-1 +kerning first=313 second=362 amount=-1 +kerning first=310 second=371 amount=-1 +kerning first=74 second=234 amount=-1 +kerning first=45 second=266 amount=-1 +kerning first=79 second=217 amount=-1 +kerning first=274 second=371 amount=-1 +kerning first=89 second=251 amount=-1 +kerning first=100 second=8250 amount=-1 +kerning first=207 second=209 amount=-1 +kerning first=315 second=354 amount=-1 +kerning first=110 second=234 amount=-1 +kerning first=8217 second=219 amount=-1 +kerning first=220 second=217 amount=-1 +kerning first=100 second=232 amount=-1 +kerning first=251 second=234 amount=-1 +kerning first=1044 second=1089 amount=-1 +kerning first=203 second=264 amount=-1 +kerning first=363 second=275 amount=-1 +kerning first=210 second=88 amount=-1 +kerning first=70 second=274 amount=-1 +kerning first=323 second=71 amount=-1 +kerning first=323 second=234 amount=-1 +kerning first=287 second=234 amount=-1 +kerning first=1069 second=1065 amount=-1 +kerning first=1047 second=1037 amount=-1 +kerning first=262 second=380 amount=-1 +kerning first=207 second=203 amount=-1 +kerning first=115 second=287 amount=-1 +kerning first=282 second=8220 amount=-1 +kerning first=203 second=313 amount=-1 +kerning first=69 second=8221 amount=-1 +kerning first=368 second=315 amount=-1 +kerning first=220 second=111 amount=-1 +kerning first=1042 second=1070 amount=-1 +kerning first=84 second=8218 amount=-1 +kerning first=354 second=8220 amount=-1 +kerning first=328 second=287 amount=-1 +kerning first=1033 second=1024 amount=-1 +kerning first=211 second=374 amount=-1 +kerning first=328 second=111 amount=-1 +kerning first=66 second=203 amount=-1 +kerning first=364 second=111 amount=-1 +kerning first=8218 second=248 amount=-1 +kerning first=83 second=315 amount=-1 +kerning first=289 second=120 amount=-1 +kerning first=1064 second=1054 amount=-1 +kerning first=374 second=267 amount=-1 +kerning first=1050 second=1028 amount=-1 +kerning first=8216 second=364 amount=-1 +kerning first=323 second=114 amount=-1 +kerning first=296 second=315 amount=-1 +kerning first=196 second=118 amount=-1 +kerning first=230 second=267 amount=-1 +kerning first=204 second=212 amount=-1 +kerning first=105 second=8220 amount=-1 +kerning first=266 second=267 amount=-1 +kerning first=187 second=220 amount=-1 +kerning first=69 second=8220 amount=-1 +kerning first=302 second=267 amount=-1 +kerning first=338 second=370 amount=-1 +kerning first=110 second=114 amount=-1 +kerning first=76 second=356 amount=-1 +kerning first=85 second=199 amount=-1 +kerning first=206 second=68 amount=-1 +kerning first=266 second=370 amount=-1 +kerning first=8217 second=113 amount=-1 +kerning first=251 second=114 amount=-1 +kerning first=78 second=74 amount=-1 +kerning first=302 second=370 amount=-1 +kerning first=72 second=263 amount=-1 +kerning first=330 second=242 amount=-1 +kerning first=108 second=263 amount=-1 +kerning first=270 second=75 amount=-1 +kerning first=262 second=199 amount=-1 +kerning first=210 second=194 amount=-1 +kerning first=74 second=114 amount=-1 +kerning first=1069 second=1059 amount=-1 +kerning first=298 second=199 amount=-1 +kerning first=220 second=81 amount=-1 +kerning first=249 second=263 amount=-1 +kerning first=352 second=310 amount=-1 +kerning first=327 second=74 amount=-1 +kerning first=370 second=199 amount=-1 +kerning first=197 second=361 amount=-1 +kerning first=99 second=106 amount=-1 +kerning first=280 second=310 amount=-1 +kerning first=364 second=81 amount=-1 +kerning first=218 second=382 amount=-1 +kerning first=278 second=68 amount=-1 +kerning first=298 second=269 amount=-1 +kerning first=45 second=65 amount=-1 +kerning first=350 second=68 amount=-1 +kerning first=226 second=269 amount=-1 +kerning first=1107 second=1116 amount=-1 +kerning first=67 second=310 amount=-1 +kerning first=209 second=315 amount=-1 +kerning first=206 second=334 amount=-1 +kerning first=197 second=288 amount=-1 +kerning first=366 second=65 amount=-1 +kerning first=1050 second=1101 amount=-1 +kerning first=1051 second=1043 amount=-1 +kerning first=1041 second=1055 amount=-1 +kerning first=68 second=325 amount=-1 +kerning first=193 second=84 amount=-1 +kerning first=255 second=318 amount=-1 +kerning first=8220 second=370 amount=-1 +kerning first=84 second=227 amount=-1 +kerning first=304 second=346 amount=-1 +kerning first=268 second=346 amount=-1 +kerning first=1069 second=1051 amount=-1 +kerning first=209 second=325 amount=-1 +kerning first=283 second=108 amount=-1 +kerning first=219 second=245 amount=-1 +kerning first=235 second=337 amount=-1 +kerning first=364 second=187 amount=-2 +kerning first=98 second=318 amount=-1 +kerning first=228 second=291 amount=-1 +kerning first=256 second=187 amount=-1 +kerning first=333 second=122 amount=-1 +kerning first=78 second=245 amount=-1 +kerning first=1027 second=1085 amount=-1 +kerning first=8250 second=315 amount=-1 +kerning first=281 second=351 amount=-1 +kerning first=196 second=251 amount=-1 +kerning first=345 second=8217 amount=-1 +kerning first=232 second=251 amount=-1 +kerning first=381 second=8217 amount=-1 +kerning first=73 second=99 amount=-1 +kerning first=304 second=75 amount=-1 +kerning first=217 second=274 amount=-1 +kerning first=109 second=99 amount=-1 +kerning first=268 second=75 amount=-1 +kerning first=363 second=245 amount=-1 +kerning first=250 second=99 amount=-1 +kerning first=327 second=245 amount=-1 +kerning first=220 second=187 amount=-2 +kerning first=1044 second=1119 amount=-1 +kerning first=291 second=245 amount=-1 +kerning first=79 second=187 amount=-1 +kerning first=307 second=337 amount=-1 +kerning first=65 second=334 amount=-1 +kerning first=1064 second=1027 amount=-1 +kerning first=115 second=187 amount=-1 +kerning first=271 second=337 amount=-1 +kerning first=197 second=375 amount=-1 +kerning first=275 second=99 amount=-1 +kerning first=271 second=242 amount=-1 +kerning first=277 second=122 amount=-1 +kerning first=70 second=330 amount=-1 +kerning first=375 second=347 amount=-1 +kerning first=1054 second=1069 amount=-1 +kerning first=307 second=242 amount=-1 +kerning first=325 second=334 amount=-1 +kerning first=77 second=268 amount=-1 +kerning first=199 second=242 amount=-1 +kerning first=268 second=281 amount=-1 +kerning first=235 second=242 amount=-1 +kerning first=304 second=281 amount=-1 +kerning first=85 second=362 amount=-1 +kerning first=231 second=347 amount=-1 +kerning first=218 second=268 amount=-1 +kerning first=79 second=325 amount=-1 +kerning first=85 second=364 amount=-1 +kerning first=97 second=233 amount=-1 +kerning first=323 second=277 amount=-1 +kerning first=287 second=277 amount=-1 +kerning first=74 second=197 amount=-1 +kerning first=327 second=202 amount=-1 +kerning first=8222 second=118 amount=-1 +kerning first=364 second=325 amount=-1 +kerning first=78 second=202 amount=-1 +kerning first=219 second=202 amount=-1 +kerning first=201 second=264 amount=-1 +kerning first=1071 second=1073 amount=-1 +kerning first=262 second=8217 amount=-1 +kerning first=339 second=337 amount=-1 +kerning first=105 second=267 amount=-1 +kerning first=302 second=69 amount=-1 +kerning first=370 second=364 amount=-1 +kerning first=81 second=193 amount=-1 +kerning first=266 second=69 amount=-1 +kerning first=1070 second=1083 amount=-1 +kerning first=334 second=8217 amount=-2 +kerning first=334 second=364 amount=-1 +kerning first=280 second=82 amount=-1 +kerning first=298 second=364 amount=-1 +kerning first=88 second=290 amount=-1 +kerning first=356 second=351 amount=-1 +kerning first=338 second=69 amount=-1 +kerning first=85 second=8217 amount=-1 +kerning first=262 second=364 amount=-1 +kerning first=121 second=8217 amount=-2 +kerning first=352 second=82 amount=-1 +kerning first=193 second=290 amount=-1 +kerning first=374 second=338 amount=-1 +kerning first=110 second=277 amount=-1 +kerning first=1065 second=1091 amount=-1 +kerning first=226 second=8217 amount=-2 +kerning first=355 second=103 amount=-1 +kerning first=198 second=338 amount=-1 +kerning first=234 second=273 amount=-1 +kerning first=1056 second=1061 amount=-1 +kerning first=193 second=355 amount=-1 +kerning first=70 second=266 amount=-1 +kerning first=1051 second=1113 amount=-1 +kerning first=251 second=277 amount=-1 +kerning first=289 second=380 amount=-1 +kerning first=88 second=355 amount=-1 +kerning first=366 second=193 amount=-1 +kerning first=217 second=334 amount=-1 +kerning first=1042 second=1059 amount=-2 +kerning first=212 second=351 amount=-1 +kerning first=77 second=333 amount=-1 +kerning first=290 second=203 amount=-1 +kerning first=355 second=171 amount=-1 +kerning first=45 second=122 amount=-1 +kerning first=291 second=112 amount=-1 +kerning first=1093 second=1095 amount=-1 +kerning first=362 second=203 amount=-1 +kerning first=197 second=117 amount=-1 +kerning first=80 second=73 amount=-1 +kerning first=218 second=333 amount=-1 +kerning first=218 second=203 amount=-1 +kerning first=258 second=374 amount=-1 +kerning first=97 second=263 amount=-1 +kerning first=72 second=220 amount=-1 +kerning first=269 second=117 amount=-1 +kerning first=8222 second=216 amount=-1 +kerning first=70 second=171 amount=-2 +kerning first=233 second=117 amount=-1 +kerning first=81 second=374 amount=-1 +kerning first=106 second=171 amount=-1 +kerning first=8222 second=251 amount=-1 +kerning first=70 second=206 amount=-1 +kerning first=65 second=367 amount=-1 +kerning first=344 second=264 amount=-1 +kerning first=275 second=44 amount=-1 +kerning first=323 second=212 amount=-1 +kerning first=354 second=229 amount=-1 +kerning first=321 second=220 amount=-1 +kerning first=8250 second=87 amount=-2 +kerning first=278 second=304 amount=-1 +kerning first=77 second=368 amount=-1 +kerning first=220 second=382 amount=-1 +kerning first=118 second=316 amount=-1 +kerning first=350 second=304 amount=-1 +kerning first=192 second=356 amount=-1 +kerning first=279 second=246 amount=-1 +kerning first=211 second=206 amount=-1 +kerning first=1056 second=1118 amount=-1 +kerning first=366 second=103 amount=-1 +kerning first=223 second=316 amount=-1 +kerning first=112 second=120 amount=-1 +kerning first=207 second=246 amount=-1 +kerning first=364 second=382 amount=-1 +kerning first=217 second=120 amount=-1 +kerning first=77 second=8221 amount=-1 +kerning first=213 second=220 amount=-1 +kerning first=259 second=316 amount=-1 +kerning first=253 second=120 amount=-1 +kerning first=221 second=197 amount=-1 +kerning first=80 second=194 amount=-1 +kerning first=362 second=368 amount=-1 +kerning first=75 second=211 amount=-1 +kerning first=199 second=109 amount=-1 +kerning first=218 second=8221 amount=-1 +kerning first=117 second=103 amount=-1 +kerning first=1060 second=1051 amount=-1 +kerning first=378 second=8220 amount=-1 +kerning first=326 second=333 amount=-1 +kerning first=254 second=8221 amount=-2 +kerning first=221 second=194 amount=-1 +kerning first=120 second=8218 amount=-1 +kerning first=362 second=333 amount=-1 +kerning first=290 second=8221 amount=-1 +kerning first=218 second=368 amount=-1 +kerning first=326 second=8221 amount=-2 +kerning first=270 second=330 amount=-1 +kerning first=362 second=8221 amount=-1 +kerning first=1064 second=1092 amount=-1 +kerning first=290 second=368 amount=-1 +kerning first=1050 second=1088 amount=-1 +kerning first=214 second=197 amount=-1 +kerning first=192 second=85 amount=-1 +kerning first=269 second=223 amount=-1 +kerning first=327 second=210 amount=-1 +kerning first=101 second=98 amount=-1 +kerning first=65 second=98 amount=-1 +kerning first=367 second=243 amount=-1 +kerning first=197 second=223 amount=-1 +kerning first=85 second=234 amount=-1 +kerning first=219 second=210 amount=-1 +kerning first=1050 second=1108 amount=-1 +kerning first=78 second=210 amount=-1 +kerning first=199 second=280 amount=-1 +kerning first=289 second=326 amount=-1 +kerning first=282 second=302 amount=-1 +kerning first=72 second=122 amount=-1 +kerning first=339 second=339 amount=-1 +kerning first=275 second=107 amount=-1 +kerning first=108 second=122 amount=-1 +kerning first=210 second=302 amount=-1 +kerning first=264 second=213 amount=-1 +kerning first=69 second=302 amount=-1 +kerning first=259 second=243 amount=-1 +kerning first=88 second=363 amount=-1 +kerning first=267 second=339 amount=-1 +kerning first=193 second=363 amount=-1 +kerning first=288 second=219 amount=-1 +kerning first=231 second=339 amount=-1 +kerning first=75 second=284 amount=-1 +kerning first=1033 second=1059 amount=-2 +kerning first=269 second=8249 amount=-1 +kerning first=368 second=350 amount=-1 +kerning first=89 second=232 amount=-1 +kerning first=8218 second=218 amount=-1 +kerning first=75 second=219 amount=-1 +kerning first=305 second=8249 amount=-1 +kerning first=251 second=235 amount=-1 +kerning first=205 second=78 amount=-1 +kerning first=86 second=46 amount=-1 +kerning first=262 second=68 amount=-1 +kerning first=73 second=335 amount=-1 +kerning first=302 second=232 amount=-1 +kerning first=266 second=232 amount=-1 +kerning first=230 second=232 amount=-1 +kerning first=109 second=335 amount=-1 +kerning first=296 second=350 amount=-1 +kerning first=317 second=89 amount=-1 +kerning first=262 second=234 amount=-1 +kerning first=8250 second=79 amount=-1 +kerning first=252 second=281 amount=-1 +kerning first=69 second=262 amount=-1 +kerning first=263 second=241 amount=-1 +kerning first=226 second=234 amount=-1 +kerning first=291 second=116 amount=-1 +kerning first=70 second=344 amount=-1 +kerning first=1071 second=1081 amount=-1 +kerning first=196 second=354 amount=-1 +kerning first=211 second=344 amount=-1 +kerning first=278 second=8222 amount=-1 +kerning first=298 second=234 amount=-1 +kerning first=232 second=289 amount=-1 +kerning first=117 second=171 amount=-1 +kerning first=1030 second=1068 amount=-1 +kerning first=370 second=234 amount=-1 +kerning first=1067 second=1075 amount=-1 +kerning first=68 second=89 amount=-1 +kerning first=264 second=85 amount=-1 +kerning first=1031 second=1075 amount=-1 +kerning first=197 second=8249 amount=-1 +kerning first=1066 second=1068 amount=-1 +kerning first=296 second=79 amount=-1 +kerning first=258 second=366 amount=-1 +kerning first=196 second=216 amount=-1 +kerning first=115 second=46 amount=-1 +kerning first=1062 second=1108 amount=-1 +kerning first=304 second=216 amount=-1 +kerning first=323 second=204 amount=-1 +kerning first=368 second=79 amount=-1 +kerning first=268 second=216 amount=-1 +kerning first=368 second=250 amount=-1 +kerning first=81 second=366 amount=-1 +kerning first=89 second=332 amount=-1 +kerning first=86 second=241 amount=-1 +kerning first=98 second=378 amount=-1 +kerning first=1056 second=1053 amount=-1 +kerning first=350 second=8222 amount=-1 +kerning first=45 second=366 amount=-1 +kerning first=1046 second=1038 amount=-1 +kerning first=218 second=195 amount=-1 +kerning first=266 second=332 amount=-1 +kerning first=1064 second=1084 amount=-1 +kerning first=233 second=380 amount=-1 +kerning first=198 second=67 amount=-1 +kerning first=83 second=250 amount=-1 +kerning first=291 second=104 amount=-1 +kerning first=194 second=332 amount=-1 +kerning first=369 second=99 amount=-1 +kerning first=362 second=195 amount=-1 +kerning first=255 second=104 amount=-1 +kerning first=374 second=332 amount=-1 +kerning first=79 second=46 amount=-1 +kerning first=330 second=366 amount=-1 +kerning first=338 second=332 amount=-1 +kerning first=366 second=366 amount=-1 +kerning first=302 second=332 amount=-1 +kerning first=1078 second=1105 amount=-1 +kerning first=220 second=317 amount=-1 +kerning first=366 second=201 amount=-1 +kerning first=101 second=369 amount=-1 +kerning first=291 second=110 amount=-1 +kerning first=221 second=259 amount=-1 +kerning first=279 second=311 amount=-1 +kerning first=344 second=116 amount=-1 +kerning first=65 second=369 amount=-1 +kerning first=330 second=201 amount=-1 +kerning first=187 second=381 amount=-1 +kerning first=314 second=369 amount=-1 +kerning first=364 second=317 amount=-1 +kerning first=278 second=369 amount=-1 +kerning first=99 second=316 amount=-1 +kerning first=282 second=355 amount=-1 +kerning first=1049 second=1062 amount=-1 +kerning first=74 second=204 amount=-1 +kerning first=8218 second=356 amount=-1 +kerning first=88 second=119 amount=-1 +kerning first=252 second=113 amount=-1 +kerning first=275 second=378 amount=-1 +kerning first=45 second=201 amount=-1 +kerning first=242 second=8222 amount=-1 +kerning first=81 second=201 amount=-1 +kerning first=1039 second=1041 amount=-1 +kerning first=362 second=268 amount=-1 +kerning first=116 second=259 amount=-1 +kerning first=101 second=8222 amount=-1 +kerning first=1041 second=1027 amount=-1 +kerning first=80 second=259 amount=-1 +kerning first=79 second=317 amount=-1 +kerning first=1059 second=1044 amount=-1 +kerning first=78 second=331 amount=-1 +kerning first=200 second=116 amount=-1 +kerning first=205 second=262 amount=-1 +kerning first=1062 second=1095 amount=-1 +kerning first=74 second=256 amount=-1 +kerning first=99 second=311 amount=-1 +kerning first=233 second=116 amount=-1 +kerning first=205 second=271 amount=-1 +kerning first=73 second=313 amount=-1 +kerning first=197 second=116 amount=-1 +kerning first=89 second=198 amount=-1 +kerning first=334 second=8221 amount=-2 +kerning first=83 second=363 amount=-1 +kerning first=364 second=357 amount=-1 +kerning first=362 second=67 amount=-1 +kerning first=119 second=363 amount=-1 +kerning first=187 second=110 amount=-1 +kerning first=66 second=195 amount=-1 +kerning first=375 second=378 amount=-1 +kerning first=370 second=268 amount=-1 +kerning first=77 second=207 amount=-1 +kerning first=339 second=378 amount=-1 +kerning first=187 second=317 amount=-1 +kerning first=354 second=113 amount=-1 +kerning first=218 second=67 amount=-1 +kerning first=346 second=366 amount=-1 +kerning first=205 second=210 amount=-1 +kerning first=298 second=268 amount=-1 +kerning first=266 second=296 amount=-1 +kerning first=310 second=366 amount=-1 +kerning first=1030 second=1081 amount=-1 +kerning first=8222 second=97 amount=-1 +kerning first=202 second=366 amount=-1 +kerning first=77 second=67 amount=-1 +kerning first=8250 second=249 amount=-1 +kerning first=370 second=115 amount=-1 +kerning first=85 second=268 amount=-1 +kerning first=374 second=8250 amount=-1 +kerning first=1086 second=1093 amount=-1 +kerning first=288 second=302 amount=-1 +kerning first=338 second=8250 amount=-1 +kerning first=75 second=8220 amount=-1 +kerning first=199 second=101 amount=-1 +kerning first=281 second=107 amount=-1 +kerning first=327 second=73 amount=-1 +kerning first=266 second=8250 amount=-1 +kerning first=271 second=101 amount=-1 +kerning first=230 second=8250 amount=-1 +kerning first=111 second=8220 amount=-2 +kerning first=235 second=101 amount=-1 +kerning first=194 second=8250 amount=-1 +kerning first=252 second=8220 amount=-1 +kerning first=78 second=8218 amount=-1 +kerning first=211 second=219 amount=-1 +kerning first=216 second=8220 amount=-2 +kerning first=287 second=351 amount=-1 +kerning first=307 second=101 amount=-1 +kerning first=89 second=8250 amount=-1 +kerning first=268 second=277 amount=-1 +kerning first=221 second=266 amount=-1 +kerning first=232 second=277 amount=-1 +kerning first=70 second=219 amount=-1 +kerning first=111 second=122 amount=-1 +kerning first=1056 second=1089 amount=-1 +kerning first=220 second=334 amount=-1 +kerning first=374 second=198 amount=-1 +kerning first=89 second=345 amount=-1 +kerning first=350 second=296 amount=-1 +kerning first=219 second=73 amount=-1 +kerning first=1038 second=1102 amount=-1 +kerning first=194 second=345 amount=-1 +kerning first=304 second=277 amount=-1 +kerning first=225 second=235 amount=-1 +kerning first=261 second=235 amount=-1 +kerning first=233 second=283 amount=-1 +kerning first=269 second=283 amount=-1 +kerning first=369 second=235 amount=-1 +kerning first=1041 second=1047 amount=-1 +kerning first=339 second=231 amount=-1 +kerning first=204 second=338 amount=-1 +kerning first=364 second=286 amount=-1 +kerning first=8217 second=328 amount=-1 +kerning first=8250 second=256 amount=-1 +kerning first=310 second=79 amount=-1 +kerning first=324 second=8220 amount=-2 +kerning first=231 second=351 amount=-1 +kerning first=288 second=8220 amount=-1 +kerning first=367 second=263 amount=-1 +kerning first=68 second=197 amount=-1 +kerning first=1064 second=1076 amount=-1 +kerning first=192 second=86 amount=-1 +kerning first=68 second=274 amount=-1 +kerning first=375 second=351 amount=-1 +kerning first=205 second=83 amount=-1 +kerning first=202 second=79 amount=-1 +kerning first=339 second=351 amount=-1 +kerning first=1062 second=1074 amount=-1 +kerning first=274 second=79 amount=-1 +kerning first=257 second=8250 amount=-1 +kerning first=267 second=351 amount=-1 +kerning first=1043 second=1051 amount=-1 +kerning first=264 second=347 amount=-1 +kerning first=258 second=104 amount=-1 +kerning first=212 second=8220 amount=-2 +kerning first=374 second=171 amount=-2 +kerning first=71 second=278 amount=-1 +kerning first=268 second=70 amount=-1 +kerning first=8250 second=323 amount=-1 +kerning first=70 second=192 amount=-1 +kerning first=231 second=244 amount=-1 +kerning first=8216 second=115 amount=-1 +kerning first=267 second=244 amount=-1 +kerning first=284 second=278 amount=-1 +kerning first=209 second=274 amount=-1 +kerning first=339 second=244 amount=-1 +kerning first=45 second=121 amount=-1 +kerning first=1034 second=1065 amount=-1 +kerning first=8250 second=216 amount=-1 +kerning first=108 second=382 amount=-1 +kerning first=1070 second=1065 amount=-1 +kerning first=1057 second=1094 amount=-1 +kerning first=231 second=231 amount=-1 +kerning first=325 second=201 amount=-1 +kerning first=267 second=231 amount=-1 +kerning first=194 second=171 amount=-1 +kerning first=219 second=100 amount=-1 +kerning first=304 second=70 amount=-1 +kerning first=327 second=100 amount=-1 +kerning first=84 second=235 amount=-1 +kerning first=266 second=171 amount=-1 +kerning first=206 second=269 amount=-1 +kerning first=45 second=86 amount=-2 +kerning first=338 second=171 amount=-1 +kerning first=217 second=201 amount=-1 +kerning first=101 second=269 amount=-1 +kerning first=192 second=266 amount=-1 +kerning first=70 second=65 amount=-1 +kerning first=1053 second=1071 amount=-1 +kerning first=264 second=266 amount=-1 +kerning first=280 second=214 amount=-1 +kerning first=8250 second=363 amount=-1 +kerning first=1064 second=1048 amount=-1 +kerning first=8222 second=250 amount=-1 +kerning first=194 second=318 amount=-1 +kerning first=71 second=45 amount=-1 +kerning first=1107 second=1090 amount=-1 +kerning first=70 second=353 amount=-1 +kerning first=87 second=266 amount=-1 +kerning first=266 second=318 amount=-1 +kerning first=220 second=313 amount=-1 +kerning first=316 second=171 amount=-1 +kerning first=264 second=200 amount=-1 +kerning first=324 second=275 amount=-1 +kerning first=210 second=200 amount=-1 +kerning first=218 second=260 amount=-1 +kerning first=214 second=370 amount=-1 +kerning first=214 second=8222 amount=-1 +kerning first=107 second=45 amount=-1 +kerning first=73 second=370 amount=-1 +kerning first=114 second=240 amount=-1 +kerning first=261 second=243 amount=-1 +kerning first=1044 second=1097 amount=-1 +kerning first=356 second=45 amount=-1 +kerning first=199 second=362 amount=-1 +kerning first=73 second=8222 amount=-1 +kerning first=362 second=260 amount=-1 +kerning first=1051 second=1050 amount=-1 +kerning first=263 second=100 amount=-1 +kerning first=1038 second=1092 amount=-1 +kerning first=284 second=45 amount=-1 +kerning first=375 second=187 amount=-1 +kerning first=252 second=275 amount=-1 +kerning first=67 second=214 amount=-1 +kerning first=286 second=370 amount=-1 +kerning first=80 second=71 amount=-1 +kerning first=330 second=257 amount=-1 +kerning first=194 second=357 amount=-1 +kerning first=73 second=223 amount=-1 +kerning first=366 second=257 amount=-1 +kerning first=270 second=209 amount=-1 +kerning first=363 second=267 amount=-1 +kerning first=198 second=209 amount=-1 +kerning first=268 second=97 amount=-1 +kerning first=229 second=267 amount=-1 +kerning first=286 second=223 amount=-1 +kerning first=304 second=97 amount=-1 +kerning first=218 second=234 amount=-1 +kerning first=195 second=217 amount=-1 +kerning first=337 second=380 amount=-1 +kerning first=101 second=243 amount=-1 +kerning first=1048 second=1027 amount=-1 +kerning first=206 second=243 amount=-1 +kerning first=213 second=258 amount=-1 +kerning first=314 second=243 amount=-1 +kerning first=8218 second=224 amount=-1 +kerning first=71 second=72 amount=-1 +kerning first=232 second=8221 amount=-2 +kerning first=1030 second=1119 amount=-1 +kerning first=8222 second=277 amount=-1 +kerning first=268 second=8221 amount=-1 +kerning first=266 second=345 amount=-1 +kerning first=217 second=335 amount=-1 +kerning first=302 second=345 amount=-1 +kerning first=338 second=345 amount=-1 +kerning first=296 second=242 amount=-1 +kerning first=374 second=345 amount=-1 +kerning first=284 second=72 amount=-1 +kerning first=1030 second=1054 amount=-1 +kerning first=250 second=245 amount=-1 +kerning first=224 second=242 amount=-1 +kerning first=220 second=352 amount=-1 +kerning first=354 second=99 amount=-1 +kerning first=325 second=335 amount=-1 +kerning first=356 second=225 amount=-1 +kerning first=97 second=232 amount=-1 +kerning first=370 second=211 amount=-1 +kerning first=326 second=234 amount=-1 +kerning first=368 second=242 amount=-1 +kerning first=364 second=352 amount=-1 +kerning first=327 second=267 amount=-1 +kerning first=362 second=234 amount=-1 +kerning first=193 second=105 amount=-1 +kerning first=103 second=241 amount=-1 +kerning first=296 second=336 amount=-1 +kerning first=249 second=8221 amount=-1 +kerning first=1039 second=1028 amount=-1 +kerning first=77 second=233 amount=-1 +kerning first=275 second=98 amount=-1 +kerning first=296 second=216 amount=-1 +kerning first=209 second=80 amount=-1 +kerning first=368 second=336 amount=-1 +kerning first=201 second=199 amount=-1 +kerning first=1042 second=1045 amount=-1 +kerning first=85 second=115 amount=-1 +kerning first=1102 second=1093 amount=-1 +kerning first=271 second=114 amount=-1 +kerning first=326 second=233 amount=-1 +kerning first=368 second=216 amount=-1 +kerning first=1043 second=1077 amount=-1 +kerning first=218 second=233 amount=-1 +kerning first=1050 second=1079 amount=-1 +kerning first=267 second=378 amount=-1 +kerning first=8218 second=227 amount=-1 +kerning first=1077 second=1080 amount=-1 +kerning first=330 second=284 amount=-1 +kerning first=67 second=241 amount=-1 +kerning first=231 second=378 amount=-1 +kerning first=1041 second=1080 amount=-1 +kerning first=1067 second=1113 amount=-1 +kerning first=235 second=114 amount=-1 +kerning first=362 second=233 amount=-1 +kerning first=205 second=344 amount=-1 +kerning first=286 second=8222 amount=-1 +kerning first=199 second=114 amount=-1 +kerning first=366 second=284 amount=-1 +kerning first=1033 second=1046 amount=-1 +kerning first=89 second=224 amount=-1 +kerning first=79 second=78 amount=-1 +kerning first=200 second=327 amount=-1 +kerning first=87 second=44 amount=-1 +kerning first=352 second=361 amount=-1 +kerning first=272 second=327 amount=-1 +kerning first=258 second=284 amount=-1 +kerning first=211 second=353 amount=-1 +kerning first=280 second=361 amount=-1 +kerning first=266 second=224 amount=-1 +kerning first=283 second=353 amount=-1 +kerning first=86 second=332 amount=-1 +kerning first=232 second=250 amount=-1 +kerning first=201 second=8222 amount=-1 +kerning first=298 second=115 amount=-1 +kerning first=344 second=81 amount=-1 +kerning first=196 second=250 amount=-1 +kerning first=334 second=115 amount=-1 +kerning first=196 second=8221 amount=-2 +kerning first=45 second=284 amount=-1 +kerning first=351 second=8221 amount=-2 +kerning first=70 second=218 amount=-1 +kerning first=77 second=273 amount=-1 +kerning first=196 second=44 amount=-1 +kerning first=374 second=224 amount=-1 +kerning first=232 second=44 amount=-1 +kerning first=281 second=355 amount=-1 +kerning first=203 second=8249 amount=-1 +kerning first=70 second=78 amount=-1 +kerning first=209 second=355 amount=-1 +kerning first=350 second=282 amount=-1 +kerning first=325 second=227 amount=-1 +kerning first=1049 second=1104 amount=-1 +kerning first=77 second=380 amount=-1 +kerning first=311 second=8249 amount=-1 +kerning first=67 second=267 amount=-1 +kerning first=103 second=267 amount=-1 +kerning first=1043 second=1104 amount=-1 +kerning first=206 second=282 amount=-1 +kerning first=201 second=72 amount=-1 +kerning first=80 second=346 amount=-1 +kerning first=104 second=248 amount=-1 +kerning first=253 second=291 amount=-1 +kerning first=279 second=273 amount=-1 +kerning first=211 second=218 amount=-1 +kerning first=1059 second=1079 amount=-1 +kerning first=209 second=248 amount=-1 +kerning first=1036 second=1089 amount=-1 +kerning first=1052 second=1119 amount=-1 +kerning first=116 second=224 amount=-1 +kerning first=74 second=337 amount=-1 +kerning first=290 second=114 amount=-1 +kerning first=1051 second=1031 amount=-1 +kerning first=1049 second=1086 amount=-1 +kerning first=344 second=288 amount=-1 +kerning first=83 second=8222 amount=-1 +kerning first=323 second=230 amount=-1 +kerning first=1051 second=1073 amount=-1 +kerning first=8250 second=324 amount=-1 +kerning first=89 second=279 amount=-1 +kerning first=272 second=206 amount=-1 +kerning first=70 second=337 amount=-1 +kerning first=248 second=291 amount=-1 +kerning first=74 second=230 amount=-1 +kerning first=8222 second=71 amount=-1 +kerning first=219 second=361 amount=-1 +kerning first=200 second=206 amount=-1 +kerning first=207 second=368 amount=-1 +kerning first=107 second=291 amount=-1 +kerning first=66 second=8221 amount=-2 +kerning first=217 second=227 amount=-1 +kerning first=344 second=8218 amount=-1 +kerning first=1027 second=1117 amount=-1 +kerning first=8217 second=275 amount=-1 +kerning first=323 second=337 amount=-1 +kerning first=1030 second=1080 amount=-1 +kerning first=315 second=368 amount=-1 +kerning first=287 second=337 amount=-1 +kerning first=251 second=337 amount=-1 +kerning first=243 second=8221 amount=-2 +kerning first=66 second=368 amount=-1 +kerning first=279 second=8221 amount=-2 +kerning first=187 second=84 amount=-1 +kerning first=200 second=288 amount=-1 +kerning first=315 second=8221 amount=-1 +kerning first=171 second=368 amount=-1 +kerning first=110 second=337 amount=-1 +kerning first=121 second=187 amount=-1 +kerning first=304 second=211 amount=-1 +kerning first=375 second=107 amount=-1 +kerning first=268 second=211 amount=-1 +kerning first=325 second=200 amount=-1 +kerning first=85 second=187 amount=-2 +kerning first=78 second=99 amount=-1 +kerning first=291 second=99 amount=-1 +kerning first=334 second=187 amount=-1 +kerning first=278 second=270 amount=-1 +kerning first=296 second=362 amount=-1 +kerning first=217 second=200 amount=-1 +kerning first=200 second=8218 amount=-1 +kerning first=226 second=187 amount=-1 +kerning first=8250 second=336 amount=-1 +kerning first=219 second=99 amount=-1 +kerning first=206 second=270 amount=-1 +kerning first=196 second=211 amount=-1 +kerning first=203 second=266 amount=-1 +kerning first=196 second=71 amount=-1 +kerning first=98 second=8222 amount=-1 +kerning first=266 second=279 amount=-1 +kerning first=337 second=8218 amount=-1 +kerning first=302 second=279 amount=-1 +kerning first=363 second=99 amount=-1 +kerning first=230 second=279 amount=-1 +kerning first=171 second=218 amount=-1 +kerning first=304 second=71 amount=-1 +kerning first=268 second=71 amount=-1 +kerning first=67 second=202 amount=-1 +kerning first=83 second=362 amount=-1 +kerning first=374 second=279 amount=-1 +kerning first=263 second=367 amount=-1 +kerning first=68 second=80 amount=-1 +kerning first=187 second=209 amount=-1 +kerning first=89 second=371 amount=-1 +kerning first=120 second=108 amount=-1 +kerning first=74 second=364 amount=-1 +kerning first=194 second=371 amount=-1 +kerning first=72 second=350 amount=-1 +kerning first=1030 second=1107 amount=-1 +kerning first=352 second=202 amount=-1 +kerning first=1055 second=1068 amount=-1 +kerning first=314 second=122 amount=-1 +kerning first=218 second=380 amount=-1 +kerning first=347 second=8249 amount=-1 +kerning first=220 second=205 amount=-1 +kerning first=333 second=108 amount=-1 +kerning first=362 second=273 amount=-1 +kerning first=79 second=205 amount=-1 +kerning first=338 second=270 amount=-1 +kerning first=205 second=69 amount=-1 +kerning first=225 second=108 amount=-1 +kerning first=201 second=334 amount=-1 +kerning first=196 second=303 amount=-1 +kerning first=350 second=270 amount=-1 +kerning first=254 second=380 amount=-1 +kerning first=261 second=108 amount=-1 +kerning first=362 second=380 amount=-1 +kerning first=364 second=205 amount=-1 +kerning first=218 second=273 amount=-1 +kerning first=187 second=117 amount=-1 +kerning first=323 second=364 amount=-1 +kerning first=198 second=68 amount=-1 +kerning first=220 second=8221 amount=-1 +kerning first=270 second=68 amount=-1 +kerning first=85 second=229 amount=-1 +kerning first=73 second=82 amount=-1 +kerning first=100 second=263 amount=-1 +kerning first=209 second=286 amount=-1 +kerning first=205 second=263 amount=-1 +kerning first=366 second=365 amount=-1 +kerning first=241 second=263 amount=-1 +kerning first=258 second=365 amount=-1 +kerning first=86 second=194 amount=-1 +kerning first=277 second=263 amount=-1 +kerning first=214 second=82 amount=-1 +kerning first=298 second=229 amount=-1 +kerning first=370 second=229 amount=-1 +kerning first=1054 second=1051 amount=-1 +kerning first=45 second=365 amount=-1 +kerning first=262 second=229 amount=-1 +kerning first=366 second=219 amount=-1 +kerning first=323 second=203 amount=-1 +kerning first=1030 second=1091 amount=-1 +kerning first=1051 second=1100 amount=-1 +kerning first=45 second=77 amount=-1 +kerning first=1027 second=1076 amount=-1 +kerning first=1064 second=1083 amount=-1 +kerning first=81 second=77 amount=-1 +kerning first=356 second=333 amount=-1 +kerning first=279 second=316 amount=-1 +kerning first=73 second=330 amount=-1 +kerning first=243 second=316 amount=-1 +kerning first=202 second=220 amount=-1 +kerning first=351 second=316 amount=-1 +kerning first=328 second=339 amount=-1 +kerning first=270 second=368 amount=-1 +kerning first=72 second=323 amount=-1 +kerning first=326 second=246 amount=-1 +kerning first=1043 second=1090 amount=-1 +kerning first=1056 second=1048 amount=-1 +kerning first=245 second=382 amount=-1 +kerning first=1091 second=1102 amount=-1 +kerning first=281 second=382 amount=-1 +kerning first=1030 second=1079 amount=-1 +kerning first=364 second=339 amount=-1 +kerning first=366 second=77 amount=-1 +kerning first=218 second=246 amount=-1 +kerning first=8216 second=256 amount=-2 +kerning first=314 second=103 amount=-1 +kerning first=286 second=330 amount=-1 +kerning first=1049 second=1034 amount=-1 +kerning first=1049 second=1099 amount=-1 +kerning first=1073 second=1093 amount=-1 +kerning first=213 second=323 amount=-1 +kerning first=8220 second=197 amount=-2 +kerning first=242 second=103 amount=-1 +kerning first=330 second=77 amount=-1 +kerning first=67 second=100 amount=-1 +kerning first=270 second=356 amount=-1 +kerning first=206 second=103 amount=-1 +kerning first=199 second=281 amount=-1 +kerning first=203 second=304 amount=-1 +kerning first=350 second=315 amount=-1 +kerning first=310 second=220 amount=-1 +kerning first=235 second=281 amount=-1 +kerning first=274 second=220 amount=-1 +kerning first=101 second=103 amount=-1 +kerning first=271 second=281 amount=-1 +kerning first=307 second=281 amount=-1 +kerning first=346 second=220 amount=-1 +kerning first=283 second=245 amount=-1 +kerning first=284 second=85 amount=-1 +kerning first=78 second=280 amount=-1 +kerning first=87 second=196 amount=-1 +kerning first=374 second=210 amount=-1 +kerning first=219 second=280 amount=-1 +kerning first=212 second=85 amount=-1 +kerning first=283 second=120 amount=-1 +kerning first=326 second=119 amount=-1 +kerning first=106 second=245 amount=-1 +kerning first=85 second=256 amount=-1 +kerning first=261 second=314 amount=-1 +kerning first=337 second=8217 amount=-2 +kerning first=338 second=210 amount=-1 +kerning first=70 second=245 amount=-1 +kerning first=225 second=314 amount=-1 +kerning first=298 second=216 amount=-1 +kerning first=317 second=221 amount=-1 +kerning first=1059 second=1114 amount=-1 +kerning first=266 second=210 amount=-1 +kerning first=327 second=280 amount=-1 +kerning first=120 second=314 amount=-1 +kerning first=77 second=315 amount=-1 +kerning first=112 second=8222 amount=-1 +kerning first=209 second=313 amount=-1 +kerning first=194 second=210 amount=-1 +kerning first=8250 second=255 amount=-1 +kerning first=310 second=118 amount=-1 +kerning first=333 second=314 amount=-1 +kerning first=223 second=8218 amount=-1 +kerning first=370 second=246 amount=-1 +kerning first=89 second=210 amount=-1 +kerning first=220 second=339 amount=-1 +kerning first=72 second=271 amount=-1 +kerning first=68 second=313 amount=-1 +kerning first=70 second=120 amount=-1 +kerning first=289 second=283 amount=-1 +kerning first=355 second=245 amount=-1 +kerning first=327 second=8250 amount=-1 +kerning first=266 second=352 amount=-1 +kerning first=1059 second=1107 amount=-1 +kerning first=370 second=256 amount=-1 +kerning first=1043 second=1117 amount=-1 +kerning first=255 second=8250 amount=-1 +kerning first=199 second=254 amount=-1 +kerning first=74 second=203 amount=-1 +kerning first=1066 second=1042 amount=-1 +kerning first=219 second=8250 amount=-2 +kerning first=367 second=111 amount=-1 +kerning first=235 second=254 amount=-1 +kerning first=350 second=76 amount=-1 +kerning first=272 second=219 amount=-1 +kerning first=114 second=8250 amount=-1 +kerning first=78 second=8250 amount=-1 +kerning first=278 second=76 amount=-1 +kerning first=200 second=219 amount=-1 +kerning first=205 second=327 amount=-1 +kerning first=192 second=374 amount=-1 +kerning first=243 second=289 amount=-1 +kerning first=1101 second=1084 amount=-1 +kerning first=224 second=101 amount=-1 +kerning first=206 second=76 amount=-1 +kerning first=291 second=305 amount=-1 +kerning first=1058 second=1101 amount=-1 +kerning first=316 second=367 amount=-1 +kerning first=221 second=212 amount=-1 +kerning first=296 second=101 amount=-1 +kerning first=193 second=8217 amount=-2 +kerning first=279 second=289 amount=-1 +kerning first=8217 second=367 amount=-1 +kerning first=261 second=114 amount=-1 +kerning first=229 second=8217 amount=-2 +kerning first=368 second=101 amount=-1 +kerning first=351 second=289 amount=-1 +kerning first=80 second=212 amount=-1 +kerning first=259 second=111 amount=-1 +kerning first=362 second=315 amount=-1 +kerning first=88 second=8217 amount=-1 +kerning first=1040 second=1059 amount=-2 +kerning first=302 second=280 amount=-1 +kerning first=1028 second=1044 amount=-1 +kerning first=266 second=280 amount=-1 +kerning first=264 second=335 amount=-1 +kerning first=8217 second=79 amount=-1 +kerning first=338 second=280 amount=-1 +kerning first=267 second=120 amount=-1 +kerning first=86 second=232 amount=-1 +kerning first=324 second=233 amount=-1 +kerning first=1060 second=1067 amount=-1 +kerning first=45 second=326 amount=-1 +kerning first=1071 second=1099 amount=-1 +kerning first=369 second=263 amount=-1 +kerning first=261 second=287 amount=-1 +kerning first=225 second=287 amount=-1 +kerning first=262 second=46 amount=-1 +kerning first=277 second=8220 amount=-2 +kerning first=82 second=85 amount=-1 +kerning first=104 second=339 amount=-1 +kerning first=241 second=8220 amount=-2 +kerning first=120 second=287 amount=-1 +kerning first=334 second=46 amount=-1 +kerning first=264 second=98 amount=-1 +kerning first=269 second=241 amount=-1 +kerning first=296 second=271 amount=-1 +kerning first=313 second=8220 amount=-1 +kerning first=369 second=287 amount=-1 +kerning first=87 second=335 amount=-1 +kerning first=192 second=98 amount=-1 +kerning first=205 second=302 amount=-1 +kerning first=368 second=271 amount=-1 +kerning first=228 second=335 amount=-1 +kerning first=88 second=67 amount=-1 +kerning first=242 second=378 amount=-1 +kerning first=266 second=83 amount=-1 +kerning first=206 second=378 amount=-1 +kerning first=302 second=83 amount=-1 +kerning first=1065 second=1090 amount=-1 +kerning first=101 second=378 amount=-1 +kerning first=262 second=311 amount=-1 +kerning first=288 second=344 amount=-1 +kerning first=121 second=46 amount=-1 +kerning first=198 second=80 amount=-1 +kerning first=254 second=289 amount=-1 +kerning first=201 second=278 amount=-1 +kerning first=85 second=46 amount=-2 +kerning first=314 second=378 amount=-1 +kerning first=1042 second=1114 amount=-1 +kerning first=326 second=289 amount=-1 +kerning first=325 second=76 amount=-1 +kerning first=217 second=76 amount=-1 +kerning first=366 second=353 amount=-1 +kerning first=199 second=216 amount=-1 +kerning first=330 second=353 amount=-1 +kerning first=1054 second=1061 amount=-1 +kerning first=70 second=284 amount=-1 +kerning first=1036 second=1105 amount=-1 +kerning first=1059 second=1118 amount=-1 +kerning first=203 second=357 amount=-1 +kerning first=296 second=74 amount=-1 +kerning first=275 second=357 amount=-1 +kerning first=240 second=246 amount=-1 +kerning first=257 second=113 amount=-1 +kerning first=368 second=74 amount=-1 +kerning first=86 second=259 amount=-1 +kerning first=264 second=201 amount=-1 +kerning first=231 second=269 amount=-1 +kerning first=45 second=116 amount=-1 +kerning first=1064 second=1071 amount=-1 +kerning first=221 second=113 amount=-1 +kerning first=194 second=253 amount=-1 +kerning first=80 second=113 amount=-1 +kerning first=339 second=269 amount=-1 +kerning first=263 second=259 amount=-1 +kerning first=258 second=116 amount=-1 +kerning first=220 second=204 amount=-1 +kerning first=267 second=269 amount=-1 +kerning first=218 second=117 amount=-1 +kerning first=370 second=302 amount=-1 +kerning first=270 second=317 amount=-1 +kerning first=1058 second=1085 amount=-1 +kerning first=200 second=330 amount=-1 +kerning first=364 second=204 amount=-1 +kerning first=193 second=334 amount=-1 +kerning first=272 second=65 amount=-1 +kerning first=1048 second=1069 amount=-1 +kerning first=212 second=200 amount=-1 +kerning first=259 second=187 amount=-1 +kerning first=200 second=369 amount=-1 +kerning first=362 second=350 amount=-1 +kerning first=193 second=67 amount=-1 +kerning first=101 second=244 amount=-1 +kerning first=365 second=113 amount=-1 +kerning first=323 second=268 amount=-1 +kerning first=374 second=103 amount=-1 +kerning first=278 second=278 amount=-1 +kerning first=75 second=210 amount=-1 +kerning first=86 second=122 amount=-1 +kerning first=1052 second=1094 amount=-1 +kerning first=365 second=277 amount=-1 +kerning first=298 second=225 amount=-1 +kerning first=1042 second=1087 amount=-1 +kerning first=206 second=351 amount=-1 +kerning first=1034 second=1053 amount=-1 +kerning first=85 second=213 amount=-1 +kerning first=74 second=268 amount=-1 +kerning first=280 second=73 amount=-1 +kerning first=101 second=351 amount=-1 +kerning first=200 second=262 amount=-1 +kerning first=330 second=219 amount=-1 +kerning first=86 second=199 amount=-1 +kerning first=198 second=317 amount=-1 +kerning first=374 second=110 amount=-1 +kerning first=352 second=73 amount=-1 +kerning first=298 second=213 amount=-1 +kerning first=116 second=277 amount=-1 +kerning first=258 second=219 amount=-1 +kerning first=262 second=213 amount=-1 +kerning first=80 second=277 amount=-1 +kerning first=286 second=82 amount=-1 +kerning first=201 second=251 amount=-1 +kerning first=366 second=116 amount=-1 +kerning first=344 second=262 amount=-1 +kerning first=335 second=122 amount=-1 +kerning first=330 second=116 amount=-1 +kerning first=283 second=8218 amount=-1 +kerning first=1027 second=1102 amount=-1 +kerning first=81 second=219 amount=-1 +kerning first=263 second=122 amount=-1 +kerning first=257 second=277 amount=-1 +kerning first=1052 second=1076 amount=-1 +kerning first=193 second=311 amount=-1 +kerning first=370 second=213 amount=-1 +kerning first=221 second=277 amount=-1 +kerning first=1065 second=1117 amount=-1 +kerning first=1041 second=1038 amount=-1 +kerning first=45 second=219 amount=-1 +kerning first=227 second=122 amount=-1 +kerning first=204 second=380 amount=-1 +kerning first=217 second=270 amount=-1 +kerning first=8217 second=232 amount=-1 +kerning first=364 second=231 amount=-1 +kerning first=80 second=8221 amount=-1 +kerning first=282 second=75 amount=-1 +kerning first=338 second=202 amount=-1 +kerning first=117 second=283 amount=-1 +kerning first=367 second=248 amount=-1 +kerning first=1058 second=1089 amount=-1 +kerning first=221 second=8221 amount=-1 +kerning first=210 second=75 amount=-1 +kerning first=220 second=231 amount=-1 +kerning first=197 second=218 amount=-1 +kerning first=257 second=382 amount=-1 +kerning first=257 second=8221 amount=-2 +kerning first=72 second=242 amount=-1 +kerning first=259 second=248 amount=-1 +kerning first=325 second=270 amount=-1 +kerning first=108 second=242 amount=-1 +kerning first=69 second=75 amount=-1 +kerning first=209 second=209 amount=-1 +kerning first=204 second=66 amount=-1 +kerning first=365 second=8221 amount=-1 +kerning first=199 second=336 amount=-1 +kerning first=249 second=242 amount=-1 +kerning first=68 second=209 amount=-1 +kerning first=330 second=283 amount=-1 +kerning first=356 second=226 amount=-1 +kerning first=366 second=283 amount=-1 +kerning first=8249 second=85 amount=-1 +kerning first=99 second=380 amount=-1 +kerning first=86 second=79 amount=-1 +kerning first=268 second=268 amount=-1 +kerning first=210 second=8220 amount=-2 +kerning first=206 second=244 amount=-1 +kerning first=207 second=233 amount=-1 +kerning first=70 second=327 amount=-1 +kerning first=347 second=8222 amount=-1 +kerning first=270 second=274 amount=-1 +kerning first=311 second=8222 amount=-1 +kerning first=345 second=45 amount=-1 +kerning first=366 second=192 amount=-1 +kerning first=211 second=327 amount=-1 +kerning first=1056 second=1113 amount=-1 +kerning first=203 second=8222 amount=-1 +kerning first=75 second=367 amount=-1 +kerning first=279 second=233 amount=-1 +kerning first=81 second=192 amount=-1 +kerning first=354 second=44 amount=-1 +kerning first=246 second=44 amount=-1 +kerning first=70 second=261 amount=-1 +kerning first=45 second=192 amount=-1 +kerning first=198 second=211 amount=-1 +kerning first=327 second=337 amount=-1 +kerning first=1046 second=1060 amount=-1 +kerning first=1028 second=1071 amount=-1 +kerning first=68 second=205 amount=-1 +kerning first=78 second=224 amount=-1 +kerning first=366 second=310 amount=-1 +kerning first=330 second=310 amount=-1 +kerning first=197 second=214 amount=-1 +kerning first=327 second=224 amount=-1 +kerning first=254 second=8218 amount=-1 +kerning first=219 second=224 amount=-1 +kerning first=206 second=332 amount=-1 +kerning first=81 second=353 amount=-1 +kerning first=289 second=248 amount=-1 +kerning first=272 second=84 amount=-1 +kerning first=205 second=224 amount=-1 +kerning first=67 second=277 amount=-1 +kerning first=81 second=310 amount=-1 +kerning first=217 second=243 amount=-1 +kerning first=282 second=71 amount=-1 +kerning first=116 second=243 amount=-1 +kerning first=187 second=252 amount=-1 +kerning first=205 second=275 amount=-1 +kerning first=118 second=252 amount=-1 +kerning first=277 second=275 amount=-1 +kerning first=210 second=362 amount=-1 +kerning first=270 second=80 amount=-1 +kerning first=241 second=275 amount=-1 +kerning first=69 second=71 amount=-1 +kerning first=282 second=362 amount=-1 +kerning first=369 second=242 amount=-1 +kerning first=245 second=106 amount=-1 +kerning first=1052 second=1107 amount=-1 +kerning first=281 second=106 amount=-1 +kerning first=100 second=275 amount=-1 +kerning first=193 second=354 amount=-1 +kerning first=1077 second=1081 amount=-1 +kerning first=221 second=97 amount=-1 +kerning first=1055 second=1097 amount=-1 +kerning first=65 second=217 amount=-1 +kerning first=1091 second=1097 amount=-1 +kerning first=229 second=234 amount=-1 +kerning first=8218 second=98 amount=-1 +kerning first=206 second=217 amount=-1 +kerning first=80 second=97 amount=-1 +kerning first=203 second=223 amount=-1 +kerning first=69 second=362 amount=-1 +kerning first=116 second=97 amount=-1 +kerning first=316 second=267 amount=-1 +kerning first=278 second=217 amount=-1 +kerning first=325 second=243 amount=-1 +kerning first=350 second=217 amount=-1 +kerning first=263 second=232 amount=-1 +kerning first=289 second=243 amount=-1 +kerning first=325 second=266 amount=-1 +kerning first=223 second=46 amount=-1 +kerning first=227 second=232 amount=-1 +kerning first=1046 second=1098 amount=-1 +kerning first=75 second=371 amount=-1 +kerning first=196 second=368 amount=-1 +kerning first=1071 second=1072 amount=-1 +kerning first=203 second=200 amount=-1 +kerning first=217 second=266 amount=-1 +kerning first=330 second=68 amount=-1 +kerning first=205 second=345 amount=-1 +kerning first=241 second=345 amount=-1 +kerning first=277 second=345 amount=-1 +kerning first=199 second=263 amount=-1 +kerning first=220 second=325 amount=-1 +kerning first=1118 second=1098 amount=-1 +kerning first=211 second=8218 amount=-1 +kerning first=80 second=109 amount=-1 +kerning first=194 second=86 amount=-1 +kerning first=366 second=245 amount=-1 +kerning first=270 second=221 amount=-1 +kerning first=106 second=8218 amount=-1 +kerning first=366 second=120 amount=-1 +kerning first=330 second=245 amount=-1 +kerning first=355 second=8218 amount=-1 +kerning first=219 second=197 amount=-1 +kerning first=272 second=370 amount=-1 +kerning first=268 second=368 amount=-1 +kerning first=270 second=313 amount=-1 +kerning first=1065 second=1116 amount=-1 +kerning first=304 second=368 amount=-1 +kerning first=200 second=370 amount=-1 +kerning first=1059 second=1092 amount=-1 +kerning first=221 second=109 amount=-1 +kerning first=117 second=245 amount=-1 +kerning first=1052 second=1037 amount=-1 +kerning first=335 second=378 amount=-1 +kerning first=66 second=288 amount=-1 +kerning first=70 second=108 amount=-1 +kerning first=187 second=199 amount=-1 +kerning first=275 second=249 amount=-1 +kerning first=8218 second=266 amount=-1 +kerning first=45 second=120 amount=-1 +kerning first=344 second=370 amount=-1 +kerning first=198 second=313 amount=-1 +kerning first=350 second=72 amount=-1 +kerning first=1047 second=1101 amount=-1 +kerning first=89 second=361 amount=-1 +kerning first=368 second=275 amount=-1 +kerning first=85 second=45 amount=-2 +kerning first=99 second=105 amount=-1 +kerning first=121 second=45 amount=-1 +kerning first=1038 second=1086 amount=-1 +kerning first=233 second=267 amount=-1 +kerning first=269 second=267 amount=-1 +kerning first=217 second=217 amount=-1 +kerning first=370 second=72 amount=-1 +kerning first=305 second=267 amount=-1 +kerning first=1030 second=1097 amount=-1 +kerning first=1041 second=1042 amount=-1 +kerning first=325 second=217 amount=-1 +kerning first=282 second=212 amount=-1 +kerning first=1053 second=1113 amount=-1 +kerning first=282 second=114 amount=-1 +kerning first=1030 second=1042 amount=-1 +kerning first=268 second=205 amount=-1 +kerning first=264 second=102 amount=-1 +kerning first=69 second=212 amount=-1 +kerning first=228 second=8249 amount=-1 +kerning first=105 second=114 amount=-1 +kerning first=86 second=258 amount=-1 +kerning first=264 second=8249 amount=-1 +kerning first=246 second=114 amount=-1 +kerning first=287 second=115 amount=-1 +kerning first=73 second=262 amount=-1 +kerning first=264 second=331 amount=-1 +kerning first=88 second=332 amount=-1 +kerning first=8217 second=193 amount=-2 +kerning first=1071 second=1098 amount=-1 +kerning first=74 second=115 amount=-1 +kerning first=69 second=114 amount=-1 +kerning first=87 second=331 amount=-1 +kerning first=66 second=260 amount=-1 +kerning first=366 second=78 amount=-1 +kerning first=234 second=355 amount=-1 +kerning first=1042 second=1061 amount=-1 +kerning first=198 second=355 amount=-1 +kerning first=277 second=318 amount=-1 +kerning first=80 second=44 amount=-2 +kerning first=1052 second=1064 amount=-1 +kerning first=70 second=288 amount=-1 +kerning first=45 second=218 amount=-1 +kerning first=1031 second=1074 amount=-1 +kerning first=330 second=78 amount=-1 +kerning first=221 second=44 amount=-1 +kerning first=229 second=380 amount=-1 +kerning first=81 second=78 amount=-1 +kerning first=45 second=78 amount=-1 +kerning first=234 second=248 amount=-1 +kerning first=221 second=345 amount=-1 +kerning first=85 second=72 amount=-1 +kerning first=1047 second=1036 amount=-1 +kerning first=1066 second=1055 amount=-1 +kerning first=366 second=218 amount=-1 +kerning first=334 second=72 amount=-1 +kerning first=67 second=332 amount=-1 +kerning first=1039 second=1068 amount=-1 +kerning first=258 second=218 amount=-1 +kerning first=99 second=230 amount=-1 +kerning first=114 second=224 amount=-1 +kerning first=87 second=227 amount=-1 +kerning first=264 second=8222 amount=-1 +kerning first=280 second=332 amount=-1 +kerning first=100 second=279 amount=-1 +kerning first=119 second=104 amount=-1 +kerning first=1067 second=1092 amount=-1 +kerning first=241 second=279 amount=-1 +kerning first=87 second=8222 amount=-2 +kerning first=367 second=291 amount=-1 +kerning first=277 second=279 amount=-1 +kerning first=338 second=361 amount=-1 +kerning first=1048 second=1070 amount=-1 +kerning first=227 second=267 amount=-1 +kerning first=374 second=361 amount=-1 +kerning first=1040 second=1073 amount=-1 +kerning first=205 second=279 amount=-1 +kerning first=259 second=291 amount=-1 +kerning first=323 second=187 amount=-1 +kerning first=223 second=291 amount=-1 +kerning first=240 second=337 amount=-1 +kerning first=79 second=207 amount=-1 +kerning first=204 second=337 amount=-1 +kerning first=1036 second=1079 amount=-1 +kerning first=118 second=291 amount=-1 +kerning first=287 second=187 amount=-1 +kerning first=264 second=227 amount=-1 +kerning first=99 second=337 amount=-1 +kerning first=8217 second=283 amount=-1 +kerning first=8222 second=368 amount=-1 +kerning first=274 second=323 amount=-1 +kerning first=336 second=8222 amount=-1 +kerning first=206 second=352 amount=-1 +kerning first=202 second=323 amount=-1 +kerning first=270 second=84 amount=-1 +kerning first=73 second=81 amount=-1 +kerning first=206 second=325 amount=-1 +kerning first=1046 second=1072 amount=-1 +kerning first=193 second=338 amount=-1 +kerning first=278 second=325 amount=-1 +kerning first=346 second=323 amount=-1 +kerning first=88 second=338 amount=-1 +kerning first=350 second=325 amount=-1 +kerning first=1101 second=1078 amount=-1 +kerning first=105 second=281 amount=-1 +kerning first=80 second=211 amount=-1 +kerning first=103 second=99 amount=-1 +kerning first=325 second=347 amount=-1 +kerning first=316 second=99 amount=-1 +kerning first=255 second=251 amount=-1 +kerning first=352 second=8250 amount=-1 +kerning first=234 second=382 amount=-1 +kerning first=1048 second=1043 amount=-1 +kerning first=8218 second=335 amount=-1 +kerning first=253 second=347 amount=-1 +kerning first=1075 second=1116 amount=-1 +kerning first=282 second=214 amount=-1 +kerning first=289 second=347 amount=-1 +kerning first=280 second=8250 amount=-1 +kerning first=70 second=369 amount=-1 +kerning first=244 second=8250 amount=-1 +kerning first=198 second=290 amount=-1 +kerning first=8218 second=243 amount=-1 +kerning first=217 second=347 amount=-1 +kerning first=208 second=8250 amount=-1 +kerning first=113 second=316 amount=-1 +kerning first=1053 second=1097 amount=-1 +kerning first=283 second=369 amount=-1 +kerning first=8250 second=212 amount=-1 +kerning first=204 second=268 amount=-1 +kerning first=103 second=8250 amount=-1 +kerning first=278 second=334 amount=-1 +kerning first=1059 second=1051 amount=-1 +kerning first=103 second=305 amount=-1 +kerning first=67 second=8250 amount=-1 +kerning first=8250 second=379 amount=-1 +kerning first=217 second=351 amount=-1 +kerning first=346 second=203 amount=-1 +kerning first=310 second=117 amount=-1 +kerning first=99 second=8217 amount=-2 +kerning first=274 second=117 amount=-1 +kerning first=233 second=104 amount=-1 +kerning first=282 second=202 amount=-1 +kerning first=269 second=104 amount=-1 +kerning first=325 second=351 amount=-1 +kerning first=289 second=351 amount=-1 +kerning first=82 second=264 amount=-1 +kerning first=364 second=366 amount=-1 +kerning first=197 second=104 amount=-1 +kerning first=253 second=351 amount=-1 +kerning first=203 second=82 amount=-1 +kerning first=1051 second=1030 amount=-1 +kerning first=8218 second=336 amount=-1 +kerning first=72 second=101 amount=-1 +kerning first=86 second=193 amount=-1 +kerning first=1034 second=1049 amount=-1 +kerning first=288 second=69 amount=-1 +kerning first=70 second=121 amount=-1 +kerning first=79 second=296 amount=-1 +kerning first=249 second=101 amount=-1 +kerning first=1054 second=1052 amount=-1 +kerning first=105 second=277 amount=-1 +kerning first=240 second=8217 amount=-2 +kerning first=204 second=364 amount=-1 +kerning first=198 second=286 amount=-1 +kerning first=1065 second=1074 amount=-1 +kerning first=112 second=103 amount=-1 +kerning first=283 second=365 amount=-1 +kerning first=252 second=263 amount=-1 +kerning first=75 second=171 amount=-1 +kerning first=204 second=220 amount=-1 +kerning first=8217 second=366 amount=-1 +kerning first=324 second=263 amount=-1 +kerning first=364 second=296 amount=-1 +kerning first=83 second=298 amount=-1 +kerning first=87 second=8249 amount=-2 +kerning first=1070 second=1049 amount=-1 +kerning first=252 second=171 amount=-1 +kerning first=209 second=68 amount=-1 +kerning first=288 second=171 amount=-1 +kerning first=296 second=298 amount=-1 +kerning first=70 second=365 amount=-1 +kerning first=1067 second=1071 amount=-1 +kerning first=368 second=298 amount=-1 +kerning first=250 second=287 amount=-1 +kerning first=364 second=46 amount=-2 +kerning first=202 second=117 amount=-1 +kerning first=109 second=287 amount=-1 +kerning first=45 second=282 amount=-1 +kerning first=204 second=203 amount=-1 +kerning first=233 second=100 amount=-1 +kerning first=1054 second=1025 amount=-1 +kerning first=78 second=83 amount=-1 +kerning first=367 second=333 amount=-1 +kerning first=269 second=100 amount=-1 +kerning first=219 second=83 amount=-1 +kerning first=1053 second=1083 amount=-1 +kerning first=85 second=278 amount=-1 +kerning first=209 second=339 amount=-1 +kerning first=323 second=229 amount=-1 +kerning first=327 second=83 amount=-1 +kerning first=281 second=339 amount=-1 +kerning first=187 second=356 amount=-1 +kerning first=203 second=330 amount=-1 +kerning first=264 second=304 amount=-1 +kerning first=68 second=68 amount=-1 +kerning first=229 second=246 amount=-1 +kerning first=80 second=267 amount=-1 +kerning first=325 second=103 amount=-1 +kerning first=72 second=74 amount=-1 +kerning first=354 second=281 amount=-1 +kerning first=1051 second=1057 amount=-1 +kerning first=370 second=278 amount=-1 +kerning first=253 second=103 amount=-1 +kerning first=334 second=278 amount=-1 +kerning first=217 second=103 amount=-1 +kerning first=206 second=296 amount=-1 +kerning first=298 second=278 amount=-1 +kerning first=248 second=382 amount=-1 +kerning first=200 second=8222 amount=-1 +kerning first=287 second=246 amount=-1 +kerning first=205 second=100 amount=-1 +kerning first=8222 second=87 amount=-2 +kerning first=199 second=298 amount=-1 +kerning first=228 second=103 amount=-1 +kerning first=356 second=382 amount=-1 +kerning first=220 second=269 amount=-1 +kerning first=272 second=77 amount=-1 +kerning first=205 second=220 amount=-1 +kerning first=1048 second=1091 amount=-1 +kerning first=313 second=220 amount=-1 +kerning first=198 second=330 amount=-1 +kerning first=74 second=246 amount=-1 +kerning first=200 second=77 amount=-1 +kerning first=79 second=356 amount=-1 +kerning first=364 second=269 amount=-1 +kerning first=212 second=68 amount=-1 +kerning first=1053 second=1062 amount=-1 +kerning first=213 second=194 amount=-1 +kerning first=199 second=211 amount=-1 +kerning first=251 second=333 amount=-1 +kerning first=110 second=333 amount=-1 +kerning first=284 second=68 amount=-1 +kerning first=352 second=365 amount=-1 +kerning first=280 second=365 amount=-1 +kerning first=344 second=8222 amount=-1 +kerning first=1070 second=1048 amount=-1 +kerning first=316 second=365 amount=-1 +kerning first=1034 second=1048 amount=-1 +kerning first=229 second=289 amount=-1 +kerning first=272 second=8222 amount=-1 +kerning first=323 second=333 amount=-1 +kerning first=234 second=339 amount=-1 +kerning first=72 second=281 amount=-1 +kerning first=350 second=313 amount=-1 +kerning first=108 second=281 amount=-1 +kerning first=80 second=315 amount=-1 +kerning first=70 second=202 amount=-1 +kerning first=214 second=193 amount=-1 +kerning first=8217 second=220 amount=-1 +kerning first=249 second=281 amount=-1 +kerning first=206 second=313 amount=-1 +kerning first=85 second=111 amount=-1 +kerning first=267 second=224 amount=-1 +kerning first=214 second=347 amount=-1 +kerning first=278 second=313 amount=-1 +kerning first=65 second=86 amount=-1 +kerning first=1036 second=1087 amount=-1 +kerning first=8222 second=336 amount=-1 +kerning first=1040 second=1057 amount=-1 +kerning first=77 second=364 amount=-1 +kerning first=1040 second=1117 amount=-1 +kerning first=263 second=324 amount=-1 +kerning first=73 second=347 amount=-1 +kerning first=1069 second=1042 amount=-1 +kerning first=230 second=271 amount=-1 +kerning first=211 second=202 amount=-1 +kerning first=209 second=264 amount=-1 +kerning first=1044 second=1088 amount=-1 +kerning first=214 second=325 amount=-1 +kerning first=346 second=69 amount=-1 +kerning first=85 second=251 amount=-1 +kerning first=121 second=251 amount=-1 +kerning first=370 second=251 amount=-1 +kerning first=243 second=8217 amount=-2 +kerning first=207 second=212 amount=-1 +kerning first=1048 second=1118 amount=-1 +kerning first=279 second=8217 amount=-2 +kerning first=315 second=8217 amount=-1 +kerning first=107 second=46 amount=-1 +kerning first=220 second=102 amount=-1 +kerning first=66 second=8217 amount=-2 +kerning first=105 second=8221 amount=-1 +kerning first=199 second=271 amount=-1 +kerning first=66 second=212 amount=-1 +kerning first=8250 second=367 amount=-1 +kerning first=210 second=8221 amount=-2 +kerning first=246 second=8221 amount=-2 +kerning first=270 second=85 amount=-1 +kerning first=261 second=245 amount=-1 +kerning first=225 second=245 amount=-1 +kerning first=198 second=85 amount=-1 +kerning first=97 second=242 amount=-1 +kerning first=354 second=8221 amount=-1 +kerning first=280 second=334 amount=-1 +kerning first=351 second=8217 amount=-2 +kerning first=195 second=221 amount=-1 +kerning first=370 second=111 amount=-1 +kerning first=84 second=245 amount=-1 +kerning first=363 second=263 amount=-1 +kerning first=103 second=365 amount=-1 +kerning first=362 second=8217 amount=-1 +kerning first=85 second=231 amount=-1 +kerning first=337 second=289 amount=-1 +kerning first=1039 second=1024 amount=-1 +kerning first=204 second=67 amount=-1 +kerning first=288 second=366 amount=-1 +kerning first=203 second=288 amount=-1 +kerning first=304 second=109 amount=-1 +kerning first=1069 second=1064 amount=-1 +kerning first=221 second=195 amount=-1 +kerning first=264 second=357 amount=-1 +kerning first=304 second=233 amount=-1 +kerning first=364 second=102 amount=-1 +kerning first=83 second=78 amount=-1 +kerning first=78 second=263 amount=-1 +kerning first=232 second=233 amount=-1 +kerning first=99 second=45 amount=-1 +kerning first=205 second=280 amount=-1 +kerning first=214 second=374 amount=-1 +kerning first=268 second=233 amount=-1 +kerning first=8222 second=232 amount=-1 +kerning first=264 second=76 amount=-1 +kerning first=1036 second=1059 amount=-1 +kerning first=192 second=357 amount=-1 +kerning first=291 second=263 amount=-1 +kerning first=1058 second=1084 amount=-1 +kerning first=327 second=263 amount=-1 +kerning first=204 second=267 amount=-1 +kerning first=302 second=122 amount=-1 +kerning first=282 second=363 amount=-1 +kerning first=230 second=122 amount=-1 +kerning first=201 second=317 amount=-1 +kerning first=258 second=375 amount=-1 +kerning first=266 second=122 amount=-1 +kerning first=323 second=213 amount=-1 +kerning first=231 second=107 amount=-1 +kerning first=304 second=207 amount=-1 +kerning first=218 second=250 amount=-1 +kerning first=195 second=107 amount=-1 +kerning first=268 second=207 amount=-1 +kerning first=68 second=204 amount=-1 +kerning first=121 second=311 amount=-1 +kerning first=232 second=8250 amount=-1 +kerning first=89 second=122 amount=-1 +kerning first=203 second=201 amount=-1 +kerning first=296 second=232 amount=-1 +kerning first=219 second=116 amount=-1 +kerning first=198 second=282 amount=-1 +kerning first=310 second=216 amount=-1 +kerning first=8218 second=103 amount=-1 +kerning first=209 second=204 amount=-1 +kerning first=304 second=337 amount=-1 +kerning first=75 second=366 amount=-1 +kerning first=1052 second=1081 amount=-1 +kerning first=78 second=116 amount=-1 +kerning first=217 second=244 amount=-1 +kerning first=281 second=378 amount=-1 +kerning first=368 second=259 amount=-1 +kerning first=245 second=378 amount=-1 +kerning first=327 second=116 amount=-1 +kerning first=289 second=244 amount=-1 +kerning first=209 second=378 amount=-1 +kerning first=296 second=259 amount=-1 +kerning first=1058 second=1102 amount=-1 +kerning first=325 second=244 amount=-1 +kerning first=70 second=262 amount=-1 +kerning first=1042 second=1024 amount=-1 +kerning first=1051 second=1096 amount=-1 +kerning first=1058 second=1094 amount=-1 +kerning first=86 second=210 amount=-1 +kerning first=75 second=345 amount=-1 +kerning first=278 second=290 amount=-1 +kerning first=111 second=345 amount=-1 +kerning first=1042 second=1049 amount=-1 +kerning first=346 second=302 amount=-1 +kerning first=275 second=369 amount=-1 +kerning first=339 second=107 amount=-1 +kerning first=274 second=302 amount=-1 +kerning first=74 second=213 amount=-1 +kerning first=252 second=345 amount=-1 +kerning first=203 second=369 amount=-1 +kerning first=267 second=335 amount=-1 +kerning first=267 second=107 amount=-1 +kerning first=288 second=345 amount=-1 +kerning first=73 second=206 amount=-1 +kerning first=231 second=335 amount=-1 +kerning first=202 second=302 amount=-1 +kerning first=324 second=345 amount=-1 +kerning first=286 second=206 amount=-1 +kerning first=339 second=335 amount=-1 +kerning first=78 second=46 amount=-1 +kerning first=197 second=219 amount=-1 +kerning first=214 second=206 amount=-1 +kerning first=209 second=231 amount=-1 +kerning first=218 second=277 amount=-1 +kerning first=270 second=193 amount=-1 +kerning first=277 second=254 amount=-1 +kerning first=281 second=231 amount=-1 +kerning first=209 second=351 amount=-1 +kerning first=78 second=218 amount=-1 +kerning first=80 second=368 amount=-1 +kerning first=362 second=277 amount=-1 +kerning first=205 second=73 amount=-1 +kerning first=326 second=277 amount=-1 +kerning first=347 second=103 amount=-1 +kerning first=201 second=290 amount=-1 +kerning first=370 second=338 amount=-1 +kerning first=1066 second=1067 amount=-1 +kerning first=74 second=345 amount=-1 +kerning first=262 second=338 amount=-1 +kerning first=70 second=82 amount=-1 +kerning first=75 second=79 amount=-1 +kerning first=298 second=338 amount=-1 +kerning first=211 second=82 amount=-1 +kerning first=200 second=8249 amount=-1 +kerning first=283 second=283 amount=-1 +kerning first=278 second=286 amount=-1 +kerning first=77 second=277 amount=-1 +kerning first=1047 second=1097 amount=-1 +kerning first=85 second=338 amount=-1 +kerning first=68 second=351 amount=-1 +kerning first=344 second=8249 amount=-1 +kerning first=70 second=283 amount=-1 +kerning first=1027 second=1086 amount=-1 +kerning first=76 second=217 amount=-1 +kerning first=380 second=8249 amount=-1 +kerning first=106 second=283 amount=-1 +kerning first=1048 second=1031 amount=-1 +kerning first=187 second=274 amount=-1 +kerning first=262 second=45 amount=-1 +kerning first=67 second=171 amount=-1 +kerning first=1033 second=1068 amount=-1 +kerning first=103 second=171 amount=-1 +kerning first=206 second=286 amount=-1 +kerning first=368 second=113 amount=-1 +kerning first=8222 second=233 amount=-1 +kerning first=226 second=45 amount=-1 +kerning first=296 second=113 amount=-1 +kerning first=87 second=371 amount=-1 +kerning first=74 second=333 amount=-1 +kerning first=280 second=171 amount=-1 +kerning first=70 second=235 amount=-1 +kerning first=224 second=113 amount=-1 +kerning first=65 second=286 amount=-1 +kerning first=106 second=235 amount=-1 +kerning first=352 second=171 amount=-1 +kerning first=70 second=73 amount=-1 +kerning first=210 second=70 amount=-1 +kerning first=282 second=70 amount=-1 +kerning first=352 second=280 amount=-1 +kerning first=8217 second=192 amount=-2 +kerning first=283 second=235 amount=-1 +kerning first=214 second=221 amount=-1 +kerning first=69 second=363 amount=-1 +kerning first=269 second=240 amount=-1 +kerning first=355 second=235 amount=-1 +kerning first=217 second=273 amount=-1 +kerning first=1051 second=1069 amount=-1 +kerning first=1068 second=1056 amount=-1 +kerning first=211 second=310 amount=-1 +kerning first=121 second=252 amount=-1 +kerning first=280 second=344 amount=-1 +kerning first=1070 second=1027 amount=-1 +kerning first=85 second=252 amount=-1 +kerning first=327 second=284 amount=-1 +kerning first=1091 second=1085 amount=-1 +kerning first=1034 second=1027 amount=-1 +kerning first=352 second=344 amount=-1 +kerning first=278 second=205 amount=-1 +kerning first=78 second=284 amount=-1 +kerning first=262 second=331 amount=-1 +kerning first=219 second=284 amount=-1 +kerning first=1044 second=1080 amount=-1 +kerning first=314 second=283 amount=-1 +kerning first=234 second=106 amount=-1 +kerning first=302 second=214 amount=-1 +kerning first=266 second=214 amount=-1 +kerning first=290 second=315 amount=-1 +kerning first=192 second=365 amount=-1 +kerning first=234 second=231 amount=-1 +kerning first=192 second=217 amount=-1 +kerning first=366 second=46 amount=-2 +kerning first=187 second=112 amount=-1 +kerning first=264 second=217 amount=-1 +kerning first=288 second=223 amount=-1 +kerning first=212 second=89 amount=-1 +kerning first=374 second=214 amount=-1 +kerning first=220 second=243 amount=-1 +kerning first=197 second=332 amount=-1 +kerning first=110 second=45 amount=-1 +kerning first=375 second=287 amount=-1 +kerning first=339 second=122 amount=-1 +kerning first=77 second=71 amount=-1 +kerning first=73 second=353 amount=-1 +kerning first=117 second=235 amount=-1 +kerning first=364 second=243 amount=-1 +kerning first=214 second=353 amount=-1 +kerning first=194 second=214 amount=-1 +kerning first=287 second=45 amount=-1 +kerning first=328 second=243 amount=-1 +kerning first=199 second=70 amount=-1 +kerning first=249 second=275 amount=-1 +kerning first=89 second=214 amount=-1 +kerning first=1049 second=1076 amount=-1 +kerning first=218 second=71 amount=-1 +kerning first=1053 second=1028 amount=-1 +kerning first=251 second=45 amount=-1 +kerning first=370 second=252 amount=-1 +kerning first=328 second=269 amount=-1 +kerning first=354 second=97 amount=-1 +kerning first=200 second=223 amount=-1 +kerning first=202 second=362 amount=-1 +kerning first=278 second=80 amount=-1 +kerning first=366 second=235 amount=-1 +kerning first=1039 second=1050 amount=-1 +kerning first=72 second=275 amount=-1 +kerning first=85 second=8250 amount=-2 +kerning first=323 second=44 amount=-1 +kerning first=274 second=362 amount=-1 +kerning first=206 second=80 amount=-1 +kerning first=344 second=223 amount=-1 +kerning first=346 second=362 amount=-1 +kerning first=350 second=80 amount=-1 +kerning first=72 second=302 amount=-1 +kerning first=304 second=234 amount=-1 +kerning first=69 second=336 amount=-1 +kerning first=101 second=107 amount=-1 +kerning first=8218 second=244 amount=-1 +kerning first=78 second=122 amount=-1 +kerning first=65 second=107 amount=-1 +kerning first=363 second=234 amount=-1 +kerning first=211 second=370 amount=-1 +kerning first=66 second=364 amount=-1 +kerning first=196 second=119 amount=-1 +kerning first=229 second=337 amount=-1 +kerning first=1047 second=1079 amount=-1 +kerning first=198 second=199 amount=-1 +kerning first=85 second=225 amount=-1 +kerning first=280 second=8249 amount=-1 +kerning first=282 second=336 amount=-1 +kerning first=289 second=267 amount=-1 +kerning first=262 second=317 amount=-1 +kerning first=209 second=224 amount=-1 +kerning first=269 second=8250 amount=-1 +kerning first=87 second=249 amount=-1 +kerning first=338 second=116 amount=-1 +kerning first=98 second=314 amount=-1 +kerning first=302 second=116 amount=-1 +kerning first=192 second=249 amount=-1 +kerning first=266 second=116 amount=-1 +kerning first=374 second=241 amount=-1 +kerning first=287 second=105 amount=-1 +kerning first=1039 second=1105 amount=-1 +kerning first=327 second=122 amount=-1 +kerning first=1056 second=1071 amount=-1 +kerning first=275 second=314 amount=-1 +kerning first=45 second=327 amount=-1 +kerning first=85 second=110 amount=-1 +kerning first=81 second=327 amount=-1 +kerning first=232 second=234 amount=-1 +kerning first=1052 second=1054 amount=-1 +kerning first=77 second=382 amount=-1 +kerning first=364 second=335 amount=-1 +kerning first=101 second=345 amount=-1 +kerning first=323 second=72 amount=-1 +kerning first=328 second=335 amount=-1 +kerning first=1065 second=1087 amount=-1 +kerning first=89 second=241 amount=-1 +kerning first=262 second=110 amount=-1 +kerning first=1031 second=1049 amount=-1 +kerning first=347 second=314 amount=-1 +kerning first=171 second=374 amount=-1 +kerning first=1067 second=1049 amount=-1 +kerning first=202 second=216 amount=-1 +kerning first=330 second=327 amount=-1 +kerning first=302 second=241 amount=-1 +kerning first=298 second=110 amount=-1 +kerning first=366 second=327 amount=-1 +kerning first=266 second=241 amount=-1 +kerning first=302 second=245 amount=-1 +kerning first=274 second=216 amount=-1 +kerning first=270 second=205 amount=-1 +kerning first=370 second=110 amount=-1 +kerning first=74 second=254 amount=-1 +kerning first=362 second=250 amount=-1 +kerning first=257 second=114 amount=-1 +kerning first=1041 second=1097 amount=-1 +kerning first=99 second=115 amount=-1 +kerning first=118 second=46 amount=-1 +kerning first=75 second=262 amount=-1 +kerning first=82 second=46 amount=-1 +kerning first=1064 second=1045 amount=-1 +kerning first=204 second=115 amount=-1 +kerning first=111 second=318 amount=-1 +kerning first=199 second=207 amount=-1 +kerning first=213 second=302 amount=-1 +kerning first=70 second=370 amount=-1 +kerning first=220 second=335 amount=-1 +kerning first=97 second=101 amount=-1 +kerning first=67 second=261 amount=-1 +kerning first=221 second=114 amount=-1 +kerning first=1047 second=1046 amount=-1 +kerning first=330 second=267 amount=-1 +kerning first=370 second=225 amount=-1 +kerning first=83 second=187 amount=-1 +kerning first=366 second=267 amount=-1 +kerning first=230 second=347 amount=-1 +kerning first=203 second=81 amount=-1 +kerning first=82 second=355 amount=-1 +kerning first=352 second=44 amount=-1 +kerning first=1033 second=1055 amount=-1 +kerning first=204 second=273 amount=-1 +kerning first=209 second=296 amount=-1 +kerning first=99 second=273 amount=-1 +kerning first=8218 second=217 amount=-1 +kerning first=264 second=284 amount=-1 +kerning first=289 second=103 amount=-1 +kerning first=254 second=44 amount=-1 +kerning first=290 second=44 amount=-1 +kerning first=110 second=243 amount=-1 +kerning first=262 second=204 amount=-1 +kerning first=218 second=44 amount=-2 +kerning first=1038 second=1098 amount=-1 +kerning first=98 second=287 amount=-1 +kerning first=82 second=334 amount=-1 +kerning first=257 second=291 amount=-1 +kerning first=201 second=114 amount=-1 +kerning first=8217 second=117 amount=-1 +kerning first=74 second=72 amount=-1 +kerning first=187 second=355 amount=-1 +kerning first=264 second=282 amount=-1 +kerning first=275 second=287 amount=-1 +kerning first=199 second=346 amount=-1 +kerning first=67 second=83 amount=-1 +kerning first=73 second=288 amount=-1 +kerning first=288 second=8250 amount=-1 +kerning first=98 second=8220 amount=-2 +kerning first=258 second=311 amount=-1 +kerning first=80 second=199 amount=-1 +kerning first=347 second=287 amount=-1 +kerning first=1050 second=1089 amount=-1 +kerning first=369 second=245 amount=-1 +kerning first=311 second=287 amount=-1 +kerning first=74 second=278 amount=-1 +kerning first=224 second=8249 amount=-1 +kerning first=217 second=352 amount=-1 +kerning first=1031 second=1118 amount=-1 +kerning first=234 second=291 amount=-1 +kerning first=67 second=233 amount=-1 +kerning first=325 second=352 amount=-1 +kerning first=8222 second=119 amount=-1 +kerning first=347 second=108 amount=-1 +kerning first=78 second=257 amount=-1 +kerning first=120 second=44 amount=-1 +kerning first=1059 second=1091 amount=-1 +kerning first=316 second=279 amount=-1 +kerning first=352 second=371 amount=-1 +kerning first=323 second=278 amount=-1 +kerning first=69 second=211 amount=-1 +kerning first=311 second=108 amount=-1 +kerning first=356 second=187 amount=-1 +kerning first=296 second=100 amount=-1 +kerning first=268 second=116 amount=-1 +kerning first=366 second=8218 amount=-2 +kerning first=344 second=355 amount=-1 +kerning first=71 second=187 amount=-1 +kerning first=209 second=269 amount=-1 +kerning first=267 second=252 amount=-1 +kerning first=233 second=99 amount=-1 +kerning first=213 second=75 amount=-1 +kerning first=118 second=382 amount=-1 +kerning first=229 second=316 amount=-1 +kerning first=362 second=71 amount=-1 +kerning first=193 second=316 amount=-1 +kerning first=103 second=279 amount=-1 +kerning first=248 second=187 amount=-1 +kerning first=223 second=382 amount=-1 +kerning first=1055 second=1098 amount=-1 +kerning first=45 second=357 amount=-1 +kerning first=284 second=187 amount=-1 +kerning first=282 second=211 amount=-1 +kerning first=269 second=99 amount=-1 +kerning first=81 second=8218 amount=-1 +kerning first=187 second=313 amount=-1 +kerning first=214 second=65 amount=-1 +kerning first=67 second=279 amount=-1 +kerning first=212 second=187 amount=-1 +kerning first=280 second=371 amount=-1 +kerning first=337 second=316 amount=-1 +kerning first=268 second=380 amount=-1 +kerning first=272 second=196 amount=-1 +kerning first=267 second=248 amount=-1 +kerning first=232 second=380 amount=-1 +kerning first=66 second=66 amount=-1 +kerning first=80 second=260 amount=-1 +kerning first=231 second=248 amount=-1 +kerning first=364 second=270 amount=-1 +kerning first=304 second=380 amount=-1 +kerning first=86 second=117 amount=-1 +kerning first=187 second=334 amount=-1 +kerning first=302 second=225 amount=-1 +kerning first=73 second=261 amount=-1 +kerning first=77 second=44 amount=-1 +kerning first=221 second=260 amount=-1 +kerning first=280 second=202 amount=-1 +kerning first=81 second=202 amount=-1 +kerning first=45 second=202 amount=-1 +kerning first=198 second=264 amount=-1 +kerning first=108 second=8220 amount=-1 +kerning first=72 second=8220 amount=-1 +kerning first=201 second=209 amount=-1 +kerning first=213 second=8220 amount=-2 +kerning first=350 second=205 amount=-1 +kerning first=258 second=121 amount=-1 +kerning first=193 second=364 amount=-1 +kerning first=79 second=270 amount=-1 +kerning first=108 second=367 amount=-1 +kerning first=330 second=202 amount=-1 +kerning first=219 second=257 amount=-1 +kerning first=248 second=345 amount=-1 +kerning first=88 second=364 amount=-1 +kerning first=98 second=108 amount=-1 +kerning first=207 second=66 amount=-1 +kerning first=327 second=257 amount=-1 +kerning first=220 second=270 amount=-1 +kerning first=217 second=325 amount=-1 +kerning first=323 second=216 amount=-1 +kerning first=366 second=202 amount=-1 +kerning first=326 second=8217 amount=-2 +kerning first=197 second=121 amount=-1 +kerning first=192 second=108 amount=-1 +kerning first=315 second=364 amount=-1 +kerning first=272 second=82 amount=-1 +kerning first=364 second=351 amount=-1 +kerning first=1051 second=1047 amount=-1 +kerning first=89 second=193 amount=-1 +kerning first=279 second=277 amount=-1 +kerning first=207 second=364 amount=-1 +kerning first=213 second=69 amount=-1 +kerning first=323 second=338 amount=-1 +kerning first=207 second=277 amount=-1 +kerning first=254 second=8217 amount=-2 +kerning first=287 second=251 amount=-1 +kerning first=8222 second=212 amount=-1 +kerning first=290 second=8217 amount=-1 +kerning first=1038 second=1060 amount=-1 +kerning first=370 second=273 amount=-1 +kerning first=201 second=355 amount=-1 +kerning first=76 second=86 amount=-1 +kerning first=374 second=193 amount=-1 +kerning first=79 second=351 amount=-1 +kerning first=298 second=273 amount=-1 +kerning first=199 second=8221 amount=-1 +kerning first=262 second=273 amount=-1 +kerning first=74 second=338 amount=-1 +kerning first=72 second=69 amount=-1 +kerning first=271 second=8221 amount=-1 +kerning first=1055 second=1064 amount=-1 +kerning first=282 second=334 amount=-1 +kerning first=201 second=203 amount=-1 +kerning first=307 second=8221 amount=-1 +kerning first=327 second=78 amount=-1 +kerning first=220 second=351 amount=-1 +kerning first=227 second=242 amount=-1 +kerning first=85 second=273 amount=-1 +kerning first=379 second=8221 amount=-1 +kerning first=200 second=82 amount=-1 +kerning first=117 second=99 amount=-1 +kerning first=75 second=117 amount=-1 +kerning first=219 second=171 amount=-2 +kerning first=251 second=8249 amount=-1 +kerning first=255 second=171 amount=-1 +kerning first=67 second=229 amount=-1 +kerning first=255 second=98 amount=-1 +kerning first=311 second=314 amount=-1 +kerning first=263 second=242 amount=-1 +kerning first=269 second=108 amount=-1 +kerning first=214 second=8220 amount=-2 +kerning first=70 second=104 amount=-1 +kerning first=1071 second=1064 amount=-1 +kerning first=363 second=171 amount=-1 +kerning first=226 second=333 amount=-1 +kerning first=286 second=282 amount=-1 +kerning first=85 second=333 amount=-1 +kerning first=78 second=78 amount=-1 +kerning first=214 second=282 amount=-1 +kerning first=302 second=100 amount=-1 +kerning first=221 second=233 amount=-1 +kerning first=266 second=100 amount=-1 +kerning first=80 second=233 amount=-1 +kerning first=77 second=8217 amount=-1 +kerning first=374 second=100 amount=-1 +kerning first=70 second=357 amount=-1 +kerning first=73 second=282 amount=-1 +kerning first=1071 second=1039 amount=-1 +kerning first=283 second=104 amount=-1 +kerning first=365 second=233 amount=-1 +kerning first=78 second=171 amount=-1 +kerning first=264 second=325 amount=-1 +kerning first=257 second=233 amount=-1 +kerning first=315 second=87 amount=-1 +kerning first=282 second=298 amount=-1 +kerning first=222 second=8221 amount=-2 +kerning first=217 second=330 amount=-1 +kerning first=194 second=220 amount=-1 +kerning first=264 second=103 amount=-1 +kerning first=302 second=220 amount=-1 +kerning first=68 second=356 amount=-1 +kerning first=266 second=220 amount=-1 +kerning first=298 second=246 amount=-1 +kerning first=311 second=103 amount=-1 +kerning first=262 second=246 amount=-1 +kerning first=89 second=100 amount=-1 +kerning first=79 second=362 amount=-1 +kerning first=89 second=263 amount=-1 +kerning first=226 second=246 amount=-1 +kerning first=230 second=100 amount=-1 +kerning first=218 second=109 amount=-1 +kerning first=1051 second=1074 amount=-1 +kerning first=99 second=289 amount=-1 +kerning first=85 second=246 amount=-1 +kerning first=370 second=333 amount=-1 +kerning first=233 second=365 amount=-1 +kerning first=262 second=333 amount=-1 +kerning first=269 second=224 amount=-1 +kerning first=269 second=365 amount=-1 +kerning first=208 second=8218 amount=-1 +kerning first=362 second=109 amount=-1 +kerning first=187 second=193 amount=-1 +kerning first=187 second=68 amount=-1 +kerning first=1070 second=1113 amount=-1 +kerning first=197 second=365 amount=-1 +kerning first=240 second=289 amount=-1 +kerning first=338 second=220 amount=-1 +kerning first=1069 second=1024 amount=-1 +kerning first=1056 second=1046 amount=-1 +kerning first=352 second=8218 amount=-1 +kerning first=224 second=281 amount=-1 +kerning first=368 second=211 amount=-1 +kerning first=275 second=347 amount=-1 +kerning first=122 second=8220 amount=-1 +kerning first=68 second=85 amount=-1 +kerning first=203 second=371 amount=-1 +kerning first=86 second=8220 amount=-1 +kerning first=296 second=281 amount=-1 +kerning first=268 second=315 amount=-1 +kerning first=242 second=120 amount=-1 +kerning first=196 second=255 amount=-1 +kerning first=304 second=315 amount=-1 +kerning first=296 second=72 amount=-1 +kerning first=302 second=357 amount=-1 +kerning first=8218 second=216 amount=-1 +kerning first=77 second=109 amount=-1 +kerning first=103 second=8218 amount=-1 +kerning first=263 second=8220 amount=-2 +kerning first=1065 second=1057 amount=-1 +kerning first=67 second=8218 amount=-1 +kerning first=1040 second=1095 amount=-1 +kerning first=368 second=338 amount=-1 +kerning first=335 second=8220 amount=-2 +kerning first=67 second=116 amount=-1 +kerning first=367 second=339 amount=-1 +kerning first=272 second=202 amount=-1 +kerning first=211 second=77 amount=-1 +kerning first=333 second=120 amount=-1 +kerning first=364 second=264 amount=-1 +kerning first=1039 second=1083 amount=-1 +kerning first=259 second=339 amount=-1 +kerning first=233 second=111 amount=-1 +kerning first=1042 second=1088 amount=-1 +kerning first=69 second=298 amount=-1 +kerning first=317 second=356 amount=-1 +kerning first=210 second=298 amount=-1 +kerning first=220 second=264 amount=-1 +kerning first=280 second=219 amount=-1 +kerning first=192 second=81 amount=-1 +kerning first=108 second=232 amount=-1 +kerning first=369 second=8249 amount=-1 +kerning first=210 second=368 amount=-1 +kerning first=1071 second=1060 amount=-1 +kerning first=1050 second=1105 amount=-1 +kerning first=112 second=8250 amount=-1 +kerning first=203 second=76 amount=-1 +kerning first=67 second=219 amount=-1 +kerning first=334 second=89 amount=-1 +kerning first=101 second=335 amount=-1 +kerning first=217 second=357 amount=-1 +kerning first=325 second=357 amount=-1 +kerning first=249 second=232 amount=-1 +kerning first=206 second=335 amount=-1 +kerning first=69 second=368 amount=-1 +kerning first=289 second=357 amount=-1 +kerning first=327 second=241 amount=-1 +kerning first=354 second=271 amount=-1 +kerning first=1064 second=1067 amount=-1 +kerning first=1042 second=1044 amount=-1 +kerning first=291 second=241 amount=-1 +kerning first=1052 second=1086 amount=-1 +kerning first=266 second=344 amount=-1 +kerning first=317 second=85 amount=-1 +kerning first=84 second=8249 amount=-1 +kerning first=207 second=234 amount=-1 +kerning first=45 second=262 amount=-1 +kerning first=120 second=8249 amount=-1 +kerning first=282 second=368 amount=-1 +kerning first=338 second=344 amount=-1 +kerning first=365 second=8249 amount=-1 +kerning first=302 second=344 amount=-1 +kerning first=209 second=85 amount=-1 +kerning first=225 second=8249 amount=-1 +kerning first=261 second=8249 amount=-1 +kerning first=1059 second=1075 amount=-1 +kerning first=313 second=366 amount=-1 +kerning first=364 second=80 amount=-1 +kerning first=212 second=46 amount=-1 +kerning first=323 second=67 amount=-1 +kerning first=263 second=275 amount=-1 +kerning first=194 second=266 amount=-1 +kerning first=227 second=275 amount=-1 +kerning first=280 second=298 amount=-1 +kerning first=219 second=241 amount=-1 +kerning first=219 second=345 amount=-1 +kerning first=205 second=366 amount=-1 +kerning first=86 second=275 amount=-1 +kerning first=1027 second=1081 amount=-1 +kerning first=78 second=241 amount=-1 +kerning first=187 second=213 amount=-1 +kerning first=74 second=67 amount=-1 +kerning first=362 second=229 amount=-1 +kerning first=210 second=195 amount=-1 +kerning first=288 second=280 amount=-1 +kerning first=345 second=225 amount=-1 +kerning first=72 second=73 amount=-1 +kerning first=1047 second=1084 amount=-1 +kerning first=197 second=284 amount=-1 +kerning first=71 second=46 amount=-1 +kerning first=207 second=216 amount=-1 +kerning first=218 second=229 amount=-1 +kerning first=221 second=363 amount=-1 +kerning first=1046 second=1077 amount=-1 +kerning first=272 second=353 amount=-1 +kerning first=72 second=216 amount=-1 +kerning first=279 second=250 amount=-1 +kerning first=79 second=80 amount=-1 +kerning first=287 second=311 amount=-1 +kerning first=284 second=317 amount=-1 +kerning first=70 second=375 amount=-1 +kerning first=280 second=116 amount=-1 +kerning first=204 second=213 amount=-1 +kerning first=66 second=250 amount=-1 +kerning first=262 second=111 amount=-1 +kerning first=1042 second=1071 amount=-1 +kerning first=286 second=201 amount=-1 +kerning first=87 second=244 amount=-1 +kerning first=1089 second=1093 amount=-1 +kerning first=314 second=171 amount=-1 +kerning first=72 second=259 amount=-1 +kerning first=214 second=201 amount=-1 +kerning first=1055 second=1062 amount=-1 +kerning first=271 second=113 amount=-1 +kerning first=228 second=244 amount=-1 +kerning first=307 second=113 amount=-1 +kerning first=333 second=8222 amount=-1 +kerning first=220 second=378 amount=-1 +kerning first=264 second=244 amount=-1 +kerning first=199 second=113 amount=-1 +kerning first=66 second=207 amount=-1 +kerning first=235 second=113 amount=-1 +kerning first=8218 second=249 amount=-1 +kerning first=73 second=201 amount=-1 +kerning first=8250 second=362 amount=-1 +kerning first=270 second=204 amount=-1 +kerning first=364 second=378 amount=-1 +kerning first=120 second=8222 amount=-1 +kerning first=1034 second=1063 amount=-2 +kerning first=304 second=345 amount=-1 +kerning first=198 second=204 amount=-1 +kerning first=84 second=8222 amount=-1 +kerning first=212 second=317 amount=-1 +kerning first=362 second=256 amount=-1 +kerning first=201 second=268 amount=-1 +kerning first=310 second=210 amount=-1 +kerning first=258 second=262 amount=-1 +kerning first=81 second=195 amount=-1 +kerning first=366 second=262 amount=-1 +kerning first=1064 second=1050 amount=-1 +kerning first=1041 second=1102 amount=-1 +kerning first=330 second=262 amount=-1 +kerning first=274 second=210 amount=-1 +kerning first=218 second=256 amount=-1 +kerning first=202 second=210 amount=-1 +kerning first=1062 second=1096 amount=-1 +kerning first=45 second=332 amount=-1 +kerning first=314 second=335 amount=-1 +kerning first=330 second=332 amount=-1 +kerning first=8222 second=255 amount=-1 +kerning first=205 second=122 amount=-1 +kerning first=325 second=80 amount=-1 +kerning first=219 second=198 amount=-1 +kerning first=8250 second=118 amount=-1 +kerning first=258 second=332 amount=-1 +kerning first=100 second=122 amount=-1 +kerning first=302 second=73 amount=-1 +kerning first=266 second=73 amount=-1 +kerning first=1048 second=1053 amount=-1 +kerning first=352 second=219 amount=-1 +kerning first=338 second=73 amount=-1 +kerning first=366 second=332 amount=-1 +kerning first=83 second=75 amount=-1 +kerning first=193 second=213 amount=-1 +kerning first=89 second=196 amount=-1 +kerning first=84 second=283 amount=-1 +kerning first=206 second=200 amount=-1 +kerning first=327 second=279 amount=-1 +kerning first=221 second=336 amount=-1 +kerning first=88 second=213 amount=-1 +kerning first=279 second=254 amount=-1 +kerning first=201 second=187 amount=-1 +kerning first=363 second=279 amount=-1 +kerning first=72 second=362 amount=-1 +kerning first=213 second=362 amount=-1 +kerning first=258 second=8250 amount=-1 +kerning first=288 second=323 amount=-1 +kerning first=222 second=8250 amount=-1 +kerning first=325 second=344 amount=-1 +kerning first=1039 second=1045 amount=-1 +kerning first=275 second=244 amount=-1 +kerning first=219 second=371 amount=-1 +kerning first=368 second=75 amount=-1 +kerning first=73 second=266 amount=-1 +kerning first=81 second=8250 amount=-1 +kerning first=305 second=113 amount=-1 +kerning first=296 second=75 amount=-1 +kerning first=207 second=71 amount=-1 +kerning first=209 second=288 amount=-1 +kerning first=192 second=314 amount=-1 +kerning first=291 second=279 amount=-1 +kerning first=350 second=200 amount=-1 +kerning first=1036 second=1119 amount=-1 +kerning first=278 second=200 amount=-1 +kerning first=205 second=79 amount=-1 +kerning first=218 second=66 amount=-1 +kerning first=1069 second=1036 amount=-1 +kerning first=264 second=314 amount=-1 +kerning first=220 second=248 amount=-1 +kerning first=1033 second=1036 amount=-1 +kerning first=84 second=261 amount=-1 +kerning first=228 second=314 amount=-1 +kerning first=74 second=110 amount=-1 +kerning first=77 second=66 amount=-1 +kerning first=8222 second=228 amount=-1 +kerning first=310 second=367 amount=-1 +kerning first=274 second=367 amount=-1 +kerning first=344 second=218 amount=-1 +kerning first=1055 second=1030 amount=-1 +kerning first=287 second=110 amount=-1 +kerning first=104 second=242 amount=-1 +kerning first=346 second=367 amount=-1 +kerning first=66 second=380 amount=-1 +kerning first=323 second=110 amount=-1 +kerning first=227 second=318 amount=-1 +kerning first=284 second=274 amount=-1 +kerning first=263 second=318 amount=-1 +kerning first=202 second=367 amount=-1 +kerning first=243 second=380 amount=-1 +kerning first=362 second=66 amount=-1 +kerning first=67 second=257 amount=-1 +kerning first=207 second=380 amount=-1 +kerning first=212 second=274 amount=-1 +kerning first=335 second=318 amount=-1 +kerning first=86 second=101 amount=-1 +kerning first=307 second=8249 amount=-1 +kerning first=1056 second=1049 amount=-1 +kerning first=279 second=380 amount=-1 +kerning first=193 second=8249 amount=-1 +kerning first=327 second=344 amount=-1 +kerning first=1055 second=1042 amount=-1 +kerning first=8218 second=81 amount=-1 +kerning first=263 second=101 amount=-1 +kerning first=250 second=8249 amount=-1 +kerning first=196 second=114 amount=-1 +kerning first=227 second=101 amount=-1 +kerning first=286 second=8249 amount=-1 +kerning first=1049 second=1098 amount=-1 +kerning first=67 second=284 amount=-1 +kerning first=85 second=315 amount=-1 +kerning first=316 second=283 amount=-1 +kerning first=259 second=231 amount=-1 +kerning first=1036 second=1091 amount=-1 +kerning first=118 second=106 amount=-1 +kerning first=270 second=296 amount=-1 +kerning first=187 second=106 amount=-1 +kerning first=203 second=217 amount=-1 +kerning first=1078 second=1077 amount=-1 +kerning first=223 second=106 amount=-1 +kerning first=78 second=344 amount=-1 +kerning first=198 second=296 amount=-1 +kerning first=327 second=214 amount=-1 +kerning first=272 second=310 amount=-1 +kerning first=73 second=8249 amount=-1 +kerning first=219 second=214 amount=-1 +kerning first=109 second=8249 amount=-1 +kerning first=366 second=330 amount=-1 +kerning first=339 second=243 amount=-1 +kerning first=289 second=249 amount=-1 +kerning first=233 second=235 amount=-1 +kerning first=363 second=8221 amount=-1 +kerning first=269 second=235 amount=-1 +kerning first=86 second=345 amount=-1 +kerning first=305 second=235 amount=-1 +kerning first=97 second=275 amount=-1 +kerning first=227 second=345 amount=-1 +kerning first=228 second=287 amount=-1 +kerning first=217 second=249 amount=-1 +kerning first=263 second=345 amount=-1 +kerning first=335 second=345 amount=-1 +kerning first=73 second=69 amount=-1 +kerning first=321 second=362 amount=-1 +kerning first=8217 second=103 amount=-1 +kerning first=1033 second=1063 amount=-2 +kerning first=1091 second=1080 amount=-1 +kerning first=1055 second=1080 amount=-1 +kerning first=280 second=284 amount=-1 +kerning first=82 second=219 amount=-1 +kerning first=209 second=226 amount=-1 +kerning first=267 second=243 amount=-1 +kerning first=1069 second=1063 amount=-1 +kerning first=80 second=336 amount=-1 +kerning first=84 second=353 amount=-1 +kerning first=199 second=97 amount=-1 +kerning first=8220 second=198 amount=-2 +kerning first=214 second=304 amount=-1 +kerning first=1058 second=1079 amount=-1 +kerning first=218 second=337 amount=-1 +kerning first=204 second=278 amount=-1 +kerning first=330 second=370 amount=-1 +kerning first=104 second=291 amount=-1 +kerning first=209 second=199 amount=-1 +kerning first=366 second=370 amount=-1 +kerning first=75 second=361 amount=-1 +kerning first=86 second=74 amount=-1 +kerning first=77 second=337 amount=-1 +kerning first=263 second=107 amount=-1 +kerning first=73 second=304 amount=-1 +kerning first=78 second=100 amount=-1 +kerning first=1034 second=1043 amount=-1 +kerning first=364 second=313 amount=-1 +kerning first=1043 second=1096 amount=-1 +kerning first=1049 second=1049 amount=-1 +kerning first=257 second=187 amount=-1 +kerning first=234 second=269 amount=-1 +kerning first=79 second=221 amount=-1 +kerning first=305 second=8218 amount=-1 +kerning first=362 second=337 amount=-1 +kerning first=1066 second=1037 amount=-1 +kerning first=280 second=278 amount=-1 +kerning first=269 second=8218 amount=-1 +kerning first=287 second=283 amount=-1 +kerning first=326 second=337 amount=-1 +kerning first=1043 second=1116 amount=-1 +kerning first=233 second=8218 amount=-1 +kerning first=195 second=286 amount=-1 +kerning first=207 second=109 amount=-1 +kerning first=274 second=8220 amount=-1 +kerning first=204 second=72 amount=-1 +kerning first=79 second=313 amount=-1 +kerning first=82 second=8218 amount=-1 +kerning first=346 second=8220 amount=-1 +kerning first=262 second=203 amount=-1 +kerning first=70 second=267 amount=-1 +kerning first=310 second=8220 amount=-1 +kerning first=298 second=203 amount=-1 +kerning first=356 second=111 amount=-1 +kerning first=382 second=8220 amount=-1 +kerning first=1060 second=1055 amount=-1 +kerning first=85 second=203 amount=-1 +kerning first=328 second=8220 amount=-2 +kerning first=283 second=267 amount=-1 +kerning first=81 second=370 amount=-1 +kerning first=207 second=315 amount=-1 +kerning first=230 second=263 amount=-1 +kerning first=1055 second=1107 amount=-1 +kerning first=355 second=267 amount=-1 +kerning first=8217 second=101 amount=-1 +kerning first=302 second=263 amount=-1 +kerning first=45 second=370 amount=-1 +kerning first=1104 second=1094 amount=-1 +kerning first=106 second=267 amount=-1 +kerning first=346 second=371 amount=-1 +kerning first=196 second=212 amount=-1 +kerning first=97 second=8220 amount=-2 +kerning first=268 second=114 amount=-1 +kerning first=374 second=263 amount=-1 +kerning first=232 second=114 amount=-1 +kerning first=1052 second=1097 amount=-1 +kerning first=268 second=212 amount=-1 +kerning first=202 second=8220 amount=-1 +kerning first=8218 second=108 amount=-1 +kerning first=304 second=212 amount=-1 +kerning first=304 second=114 amount=-1 +kerning first=1044 second=1085 amount=-1 +kerning first=254 second=46 amount=-1 +kerning first=202 second=69 amount=-1 +kerning first=351 second=44 amount=-1 +kerning first=362 second=364 amount=-1 +kerning first=274 second=69 amount=-1 +kerning first=116 second=99 amount=-1 +kerning first=290 second=364 amount=-1 +kerning first=323 second=273 amount=-1 +kerning first=87 second=81 amount=-1 +kerning first=99 second=251 amount=-1 +kerning first=206 second=227 amount=-1 +kerning first=240 second=44 amount=-1 +kerning first=218 second=364 amount=-1 +kerning first=272 second=218 amount=-1 +kerning first=1030 second=1064 amount=-1 +kerning first=291 second=103 amount=-1 +kerning first=1028 second=1061 amount=-1 +kerning first=352 second=78 amount=-1 +kerning first=200 second=218 amount=-1 +kerning first=1066 second=1064 amount=-1 +kerning first=366 second=302 amount=-1 +kerning first=74 second=273 amount=-1 +kerning first=279 second=44 amount=-1 +kerning first=198 second=334 amount=-1 +kerning first=364 second=248 amount=-1 +kerning first=243 second=44 amount=-1 +kerning first=8217 second=345 amount=-1 +kerning first=280 second=78 amount=-1 +kerning first=197 second=370 amount=-1 +kerning first=67 second=78 amount=-1 +kerning first=330 second=99 amount=-1 +kerning first=252 second=242 amount=-1 +kerning first=370 second=230 amount=-1 +kerning first=366 second=99 amount=-1 +kerning first=82 second=199 amount=-1 +kerning first=262 second=230 amount=-1 +kerning first=203 second=282 amount=-1 +kerning first=1071 second=1092 amount=-1 +kerning first=264 second=352 amount=-1 +kerning first=86 second=367 amount=-1 +kerning first=324 second=242 amount=-1 +kerning first=187 second=241 amount=-1 +kerning first=85 second=230 amount=-1 +kerning first=196 second=87 amount=-1 +kerning first=212 second=84 amount=-1 +kerning first=368 second=346 amount=-1 +kerning first=353 second=291 amount=-1 +kerning first=296 second=346 amount=-1 +kerning first=1034 second=1031 amount=-1 +kerning first=325 second=44 amount=-1 +kerning first=281 second=291 amount=-1 +kerning first=105 second=233 amount=-1 +kerning first=245 second=291 amount=-1 +kerning first=171 second=217 amount=-1 +kerning first=364 second=346 amount=-1 +kerning first=8217 second=214 amount=-1 +kerning first=1049 second=1117 amount=-1 +kerning first=67 second=81 amount=-1 +kerning first=1058 second=1107 amount=-1 +kerning first=73 second=230 amount=-1 +kerning first=1060 second=1052 amount=-1 +kerning first=88 second=45 amount=-1 +kerning first=204 second=224 amount=-1 +kerning first=277 second=337 amount=-1 +kerning first=117 second=291 amount=-1 +kerning first=77 second=334 amount=-1 +kerning first=99 second=224 amount=-1 +kerning first=327 second=8218 amount=-1 +kerning first=205 second=337 amount=-1 +kerning first=199 second=288 amount=-1 +kerning first=195 second=84 amount=-1 +kerning first=1043 second=1098 amount=-1 +kerning first=362 second=334 amount=-1 +kerning first=86 second=227 amount=-1 +kerning first=280 second=81 amount=-1 +kerning first=218 second=187 amount=-2 +kerning first=220 second=99 amount=-1 +kerning first=254 second=187 amount=-1 +kerning first=332 second=8221 amount=-2 +kerning first=103 second=328 amount=-1 +kerning first=275 second=245 amount=-1 +kerning first=1056 second=1095 amount=-1 +kerning first=362 second=187 amount=-2 +kerning first=8217 second=281 amount=-1 +kerning first=364 second=99 amount=-1 +kerning first=187 second=270 amount=-1 +kerning first=255 second=8218 amount=-1 +kerning first=290 second=187 amount=-1 +kerning first=321 second=218 amount=-1 +kerning first=81 second=203 amount=-1 +kerning first=328 second=99 amount=-1 +kerning first=366 second=241 amount=-1 +kerning first=220 second=279 amount=-1 +kerning first=194 second=105 amount=-1 +kerning first=328 second=279 amount=-1 +kerning first=274 second=366 amount=-1 +kerning first=77 second=187 amount=-1 +kerning first=1071 second=1104 amount=-1 +kerning first=364 second=279 amount=-1 +kerning first=212 second=278 amount=-1 +kerning first=327 second=66 amount=-1 +kerning first=323 second=209 amount=-1 +kerning first=101 second=316 amount=-1 +kerning first=196 second=364 amount=-1 +kerning first=74 second=196 amount=-1 +kerning first=65 second=316 amount=-1 +kerning first=1077 second=1096 amount=-1 +kerning first=195 second=264 amount=-1 +kerning first=219 second=66 amount=-1 +kerning first=76 second=368 amount=-1 +kerning first=353 second=187 amount=-1 +kerning first=235 second=108 amount=-1 +kerning first=350 second=69 amount=-1 +kerning first=207 second=202 amount=-1 +kerning first=242 second=316 amount=-1 +kerning first=1059 second=1073 amount=-1 +kerning first=330 second=275 amount=-1 +kerning first=291 second=367 amount=-1 +kerning first=78 second=66 amount=-1 +kerning first=74 second=209 amount=-1 +kerning first=1059 second=1086 amount=-1 +kerning first=264 second=206 amount=-1 +kerning first=199 second=108 amount=-1 +kerning first=314 second=316 amount=-1 +kerning first=206 second=69 amount=-1 +kerning first=266 second=205 amount=-1 +kerning first=325 second=368 amount=-1 +kerning first=278 second=69 amount=-1 +kerning first=345 second=8218 amount=-1 +kerning first=354 second=273 amount=-1 +kerning first=304 second=364 amount=-1 +kerning first=213 second=197 amount=-1 +kerning first=302 second=205 amount=-1 +kerning first=217 second=368 amount=-1 +kerning first=268 second=364 amount=-1 +kerning first=87 second=193 amount=-1 +kerning first=338 second=205 amount=-1 +kerning first=283 second=252 amount=-1 +kerning first=222 second=44 amount=-1 +kerning first=258 second=44 amount=-1 +kerning first=119 second=316 amount=-1 +kerning first=71 second=218 amount=-1 +kerning first=77 second=234 amount=-1 +kerning first=289 second=355 amount=-1 +kerning first=374 second=249 amount=-1 +kerning first=231 second=8249 amount=-1 +kerning first=370 second=248 amount=-1 +kerning first=366 second=44 amount=-2 +kerning first=267 second=8249 amount=-1 +kerning first=203 second=325 amount=-1 +kerning first=375 second=8249 amount=-1 +kerning first=86 second=214 amount=-1 +kerning first=219 second=120 amount=-1 +kerning first=232 second=117 amount=-1 +kerning first=365 second=171 amount=-1 +kerning first=298 second=248 amount=-1 +kerning first=196 second=117 amount=-1 +kerning first=1044 second=1077 amount=-1 +kerning first=277 second=314 amount=-1 +kerning first=262 second=248 amount=-1 +kerning first=1091 second=1116 amount=-1 +kerning first=235 second=122 amount=-1 +kerning first=207 second=282 amount=-1 +kerning first=80 second=78 amount=-1 +kerning first=1042 second=1039 amount=-1 +kerning first=284 second=218 amount=-1 +kerning first=81 second=44 amount=-1 +kerning first=8217 second=361 amount=-1 +kerning first=66 second=282 amount=-1 +kerning first=212 second=218 amount=-1 +kerning first=85 second=248 amount=-1 +kerning first=78 second=220 amount=-1 +kerning first=187 second=77 amount=-1 +kerning first=362 second=100 amount=-1 +kerning first=77 second=248 amount=-1 +kerning first=220 second=333 amount=-1 +kerning first=327 second=362 amount=-1 +kerning first=67 second=382 amount=-1 +kerning first=103 second=382 amount=-1 +kerning first=356 second=339 amount=-1 +kerning first=328 second=333 amount=-1 +kerning first=363 second=246 amount=-1 +kerning first=205 second=350 amount=-1 +kerning first=110 second=289 amount=-1 +kerning first=364 second=333 amount=-1 +kerning first=327 second=246 amount=-1 +kerning first=1039 second=1048 amount=-1 +kerning first=244 second=382 amount=-1 +kerning first=251 second=289 amount=-1 +kerning first=277 second=103 amount=-1 +kerning first=77 second=100 amount=-1 +kerning first=241 second=103 amount=-1 +kerning first=1042 second=1065 amount=-1 +kerning first=205 second=103 amount=-1 +kerning first=219 second=246 amount=-1 +kerning first=287 second=289 amount=-1 +kerning first=231 second=171 amount=-1 +kerning first=100 second=103 amount=-1 +kerning first=267 second=171 amount=-1 +kerning first=334 second=194 amount=-1 +kerning first=78 second=246 amount=-1 +kerning first=219 second=220 amount=-1 +kerning first=218 second=100 amount=-1 +kerning first=1047 second=1068 amount=-1 +kerning first=370 second=194 amount=-1 +kerning first=327 second=220 amount=-1 +kerning first=375 second=171 amount=-1 +kerning first=296 second=290 amount=-1 +kerning first=323 second=109 amount=-1 +kerning first=263 second=307 amount=-1 +kerning first=204 second=211 amount=-1 +kerning first=248 second=120 amount=-1 +kerning first=204 second=304 amount=-1 +kerning first=193 second=85 amount=-1 +kerning first=203 second=338 amount=-1 +kerning first=85 second=97 amount=-1 +kerning first=257 second=245 amount=-1 +kerning first=291 second=120 amount=-1 +kerning first=66 second=202 amount=-1 +kerning first=193 second=332 amount=-1 +kerning first=327 second=313 amount=-1 +kerning first=1069 second=1025 amount=-1 +kerning first=1033 second=1025 amount=-1 +kerning first=255 second=114 amount=-1 +kerning first=8217 second=335 amount=-1 +kerning first=266 second=298 amount=-1 +kerning first=1068 second=1059 amount=-2 +kerning first=1078 second=1117 amount=-1 +kerning first=272 second=347 amount=-1 +kerning first=338 second=298 amount=-1 +kerning first=264 second=8250 amount=-1 +kerning first=74 second=109 amount=-1 +kerning first=219 second=313 amount=-1 +kerning first=117 second=45 amount=-1 +kerning first=302 second=298 amount=-1 +kerning first=1038 second=1108 amount=-1 +kerning first=187 second=324 amount=-1 +kerning first=296 second=357 amount=-1 +kerning first=1118 second=1076 amount=-1 +kerning first=229 second=8250 amount=-1 +kerning first=368 second=357 amount=-1 +kerning first=1054 second=1083 amount=-1 +kerning first=282 second=219 amount=-1 +kerning first=330 second=111 amount=-1 +kerning first=193 second=8250 amount=-1 +kerning first=1046 second=1076 amount=-1 +kerning first=275 second=271 amount=-1 +kerning first=207 second=232 amount=-1 +kerning first=366 second=111 amount=-1 +kerning first=310 second=212 amount=-1 +kerning first=214 second=323 amount=-1 +kerning first=210 second=219 amount=-1 +kerning first=214 second=76 amount=-1 +kerning first=88 second=8250 amount=-1 +kerning first=1056 second=1041 amount=-1 +kerning first=1062 second=1118 amount=-1 +kerning first=73 second=323 amount=-1 +kerning first=202 second=212 amount=-1 +kerning first=280 second=315 amount=-1 +kerning first=275 second=8217 amount=-2 +kerning first=69 second=219 amount=-1 +kerning first=73 second=76 amount=-1 +kerning first=286 second=323 amount=-1 +kerning first=65 second=262 amount=-1 +kerning first=347 second=8217 amount=-2 +kerning first=206 second=262 amount=-1 +kerning first=101 second=113 amount=-1 +kerning first=1030 second=1075 amount=-1 +kerning first=98 second=8217 amount=-2 +kerning first=192 second=119 amount=-1 +kerning first=117 second=111 amount=-1 +kerning first=278 second=262 amount=-1 +kerning first=356 second=46 amount=-1 +kerning first=352 second=315 amount=-1 +kerning first=203 second=8217 amount=-1 +kerning first=77 second=280 amount=-1 +kerning first=304 second=204 amount=-1 +kerning first=110 second=263 amount=-1 +kerning first=112 second=314 amount=-1 +kerning first=334 second=68 amount=-1 +kerning first=80 second=366 amount=-1 +kerning first=298 second=68 amount=-1 +kerning first=85 second=68 amount=-1 +kerning first=251 second=263 amount=-1 +kerning first=287 second=263 amount=-1 +kerning first=218 second=280 amount=-1 +kerning first=289 second=314 amount=-1 +kerning first=323 second=263 amount=-1 +kerning first=253 second=314 amount=-1 +kerning first=72 second=110 amount=-1 +kerning first=85 second=194 amount=-1 +kerning first=290 second=280 amount=-1 +kerning first=325 second=67 amount=-1 +kerning first=1065 second=1105 amount=-1 +kerning first=8218 second=232 amount=-1 +kerning first=1065 second=1028 amount=-1 +kerning first=217 second=67 amount=-1 +kerning first=1027 second=1084 amount=-1 +kerning first=1066 second=1101 amount=-1 +kerning first=338 second=213 amount=-1 +kerning first=1069 second=1046 amount=-1 +kerning first=1053 second=1024 amount=-1 +kerning first=370 second=68 amount=-1 +kerning first=1033 second=1101 amount=-1 +kerning first=251 second=103 amount=-1 +kerning first=187 second=378 amount=-1 +kerning first=118 second=378 amount=-1 +kerning first=219 second=192 amount=-1 +kerning first=72 second=357 amount=-1 +kerning first=323 second=70 amount=-1 +kerning first=77 second=46 amount=-1 +kerning first=218 second=46 amount=-2 +kerning first=74 second=70 amount=-1 +kerning first=259 second=378 amount=-1 +kerning first=290 second=46 amount=-1 +kerning first=223 second=378 amount=-1 +kerning first=368 second=195 amount=-1 +kerning first=327 second=274 amount=-1 +kerning first=327 second=46 amount=-1 +kerning first=78 second=207 amount=-1 +kerning first=81 second=65 amount=-1 +kerning first=1055 second=1075 amount=-1 +kerning first=87 second=8217 amount=-1 +kerning first=217 second=262 amount=-1 +kerning first=324 second=101 amount=-1 +kerning first=270 second=201 amount=-1 +kerning first=192 second=8217 amount=-2 +kerning first=1062 second=1101 amount=-1 +kerning first=228 second=8217 amount=-2 +kerning first=198 second=201 amount=-1 +kerning first=1050 second=1072 amount=-1 +kerning first=8218 second=121 amount=-1 +kerning first=198 second=216 amount=-1 +kerning first=325 second=262 amount=-1 +kerning first=99 second=250 amount=-1 +kerning first=70 second=345 amount=-1 +kerning first=316 second=369 amount=-1 +kerning first=264 second=267 amount=-1 +kerning first=280 second=369 amount=-1 +kerning first=114 second=259 amount=-1 +kerning first=69 second=366 amount=-1 +kerning first=117 second=246 amount=-1 +kerning first=81 second=198 amount=-1 +kerning first=66 second=256 amount=-1 +kerning first=78 second=259 amount=-1 +kerning first=1048 second=1089 amount=-1 +kerning first=80 second=204 amount=-1 +kerning first=1088 second=1084 amount=-1 +kerning first=45 second=198 amount=-1 +kerning first=118 second=311 amount=-1 +kerning first=121 second=287 amount=-1 +kerning first=1062 second=1105 amount=-1 +kerning first=283 second=345 amount=-1 +kerning first=327 second=259 amount=-1 +kerning first=287 second=122 amount=-1 +kerning first=1038 second=1054 amount=-1 +kerning first=219 second=259 amount=-1 +kerning first=323 second=122 amount=-1 +kerning first=1065 second=1096 amount=-1 +kerning first=218 second=85 amount=-1 +kerning first=219 second=207 amount=-1 +kerning first=226 second=287 amount=-1 +kerning first=282 second=366 amount=-1 +kerning first=264 second=67 amount=-1 +kerning first=73 second=271 amount=-1 +kerning first=195 second=210 amount=-1 +kerning first=198 second=116 amount=-1 +kerning first=210 second=366 amount=-1 +kerning first=192 second=67 amount=-1 +kerning first=268 second=264 amount=-1 +kerning first=204 second=83 amount=-1 +kerning first=196 second=336 amount=-1 +kerning first=204 second=317 amount=-1 +kerning first=87 second=67 amount=-1 +kerning first=337 second=8250 amount=-1 +kerning first=268 second=336 amount=-1 +kerning first=324 second=281 amount=-1 +kerning first=205 second=244 amount=-1 +kerning first=241 second=244 amount=-1 +kerning first=242 second=46 amount=-1 +kerning first=121 second=8220 amount=-2 +kerning first=104 second=171 amount=-1 +kerning first=277 second=244 amount=-1 +kerning first=1056 second=1056 amount=-1 +kerning first=85 second=8220 amount=-1 +kerning first=1062 second=1090 amount=-1 +kerning first=200 second=213 amount=-1 +kerning first=70 second=347 amount=-1 +kerning first=75 second=268 amount=-1 +kerning first=84 second=74 amount=-1 +kerning first=262 second=8220 amount=-1 +kerning first=8218 second=119 amount=-1 +kerning first=231 second=277 amount=-1 +kerning first=344 second=213 amount=-1 +kerning first=70 second=380 amount=-1 +kerning first=366 second=198 amount=-1 +kerning first=85 second=235 amount=-1 +kerning first=334 second=356 amount=-1 +kerning first=284 second=77 amount=-1 +kerning first=73 second=269 amount=-1 +kerning first=339 second=277 amount=-1 +kerning first=212 second=77 amount=-1 +kerning first=272 second=296 amount=-1 +kerning first=226 second=235 amount=-1 +kerning first=71 second=77 amount=-1 +kerning first=267 second=277 amount=-1 +kerning first=262 second=235 amount=-1 +kerning first=1065 second=1081 amount=-1 +kerning first=89 second=79 amount=-1 +kerning first=1089 second=1078 amount=-1 +kerning first=194 second=79 amount=-1 +kerning first=187 second=296 amount=-1 +kerning first=264 second=286 amount=-1 +kerning first=87 second=65 amount=-1 +kerning first=206 second=82 amount=-1 +kerning first=1047 second=1094 amount=-1 +kerning first=1053 second=1065 amount=-1 +kerning first=356 second=231 amount=-1 +kerning first=118 second=363 amount=-1 +kerning first=278 second=82 amount=-1 +kerning first=374 second=79 amount=-1 +kerning first=219 second=274 amount=-1 +kerning first=187 second=363 amount=-1 +kerning first=87 second=286 amount=-1 +kerning first=304 second=351 amount=-1 +kerning first=268 second=351 amount=-1 +kerning first=73 second=338 amount=-1 +kerning first=192 second=286 amount=-1 +kerning first=232 second=351 amount=-1 +kerning first=1050 second=1085 amount=-1 +kerning first=210 second=77 amount=-1 +kerning first=355 second=347 amount=-1 +kerning first=266 second=79 amount=-1 +kerning first=78 second=274 amount=-1 +kerning first=266 second=337 amount=-1 +kerning first=291 second=382 amount=-1 +kerning first=302 second=79 amount=-1 +kerning first=283 second=347 amount=-1 +kerning first=338 second=79 amount=-1 +kerning first=100 second=244 amount=-1 +kerning first=217 second=260 amount=-1 +kerning first=72 second=290 amount=-1 +kerning first=1064 second=1042 amount=-1 +kerning first=282 second=80 amount=-1 +kerning first=250 second=279 amount=-1 +kerning first=234 second=114 amount=-1 +kerning first=219 second=261 amount=-1 +kerning first=8217 second=227 amount=-1 +kerning first=210 second=80 amount=-1 +kerning first=327 second=205 amount=-1 +kerning first=199 second=275 amount=-1 +kerning first=327 second=261 amount=-1 +kerning first=8218 second=67 amount=-1 +kerning first=338 second=66 amount=-1 +kerning first=88 second=361 amount=-1 +kerning first=280 second=367 amount=-1 +kerning first=73 second=217 amount=-1 +kerning first=302 second=66 amount=-1 +kerning first=72 second=344 amount=-1 +kerning first=266 second=66 amount=-1 +kerning first=72 second=113 amount=-1 +kerning first=198 second=114 amount=-1 +kerning first=214 second=217 amount=-1 +kerning first=77 second=115 amount=-1 +kerning first=103 second=367 amount=-1 +kerning first=78 second=205 amount=-1 +kerning first=286 second=217 amount=-1 +kerning first=344 second=357 amount=-1 +kerning first=274 second=251 amount=-1 +kerning first=207 second=310 amount=-1 +kerning first=202 second=251 amount=-1 +kerning first=374 second=284 amount=-1 +kerning first=78 second=261 amount=-1 +kerning first=69 second=80 amount=-1 +kerning first=66 second=310 amount=-1 +kerning first=362 second=209 amount=-1 +kerning first=310 second=251 amount=-1 +kerning first=205 second=333 amount=-1 +kerning first=346 second=251 amount=-1 +kerning first=219 second=205 amount=-1 +kerning first=275 second=106 amount=-1 +kerning first=298 second=235 amount=-1 +kerning first=119 second=249 amount=-1 +kerning first=366 second=252 amount=-1 +kerning first=100 second=242 amount=-1 +kerning first=202 second=266 amount=-1 +kerning first=370 second=235 amount=-1 +kerning first=310 second=266 amount=-1 +kerning first=98 second=106 amount=-1 +kerning first=241 second=242 amount=-1 +kerning first=229 second=287 amount=-1 +kerning first=277 second=242 amount=-1 +kerning first=117 second=267 amount=-1 +kerning first=272 second=200 amount=-1 +kerning first=205 second=242 amount=-1 +kerning first=83 second=249 amount=-1 +kerning first=200 second=200 amount=-1 +kerning first=115 second=45 amount=-1 +kerning first=45 second=252 amount=-1 +kerning first=305 second=8220 amount=-1 +kerning first=72 second=71 amount=-1 +kerning first=99 second=8222 amount=-1 +kerning first=274 second=71 amount=-1 +kerning first=217 second=226 amount=-1 +kerning first=264 second=101 amount=-1 +kerning first=206 second=97 amount=-1 +kerning first=85 second=242 amount=-1 +kerning first=258 second=252 amount=-1 +kerning first=271 second=275 amount=-1 +kerning first=328 second=45 amount=-1 +kerning first=75 second=214 amount=-1 +kerning first=235 second=275 amount=-1 +kerning first=85 second=233 amount=-1 +kerning first=220 second=45 amount=-2 +kerning first=368 second=249 amount=-1 +kerning first=1049 second=1028 amount=-1 +kerning first=256 second=45 amount=-1 +kerning first=355 second=291 amount=-1 +kerning first=304 second=336 amount=-1 +kerning first=226 second=233 amount=-1 +kerning first=274 second=199 amount=-1 +kerning first=198 second=332 amount=-1 +kerning first=262 second=233 amount=-1 +kerning first=310 second=199 amount=-1 +kerning first=283 second=291 amount=-1 +kerning first=201 second=315 amount=-1 +kerning first=220 second=363 amount=-1 +kerning first=171 second=87 amount=-1 +kerning first=262 second=302 amount=-1 +kerning first=80 second=258 amount=-1 +kerning first=105 second=234 amount=-1 +kerning first=298 second=302 amount=-1 +kerning first=71 second=85 amount=-1 +kerning first=289 second=104 amount=-1 +kerning first=267 second=223 amount=-1 +kerning first=106 second=291 amount=-1 +kerning first=231 second=223 amount=-1 +kerning first=298 second=233 amount=-1 +kerning first=1105 second=1103 amount=-1 +kerning first=195 second=223 amount=-1 +kerning first=264 second=232 amount=-1 +kerning first=45 second=356 amount=-1 +kerning first=207 second=243 amount=-1 +kerning first=199 second=327 amount=-1 +kerning first=1067 second=1080 amount=-1 +kerning first=228 second=232 amount=-1 +kerning first=1031 second=1080 amount=-1 +kerning first=1041 second=1095 amount=-1 +kerning first=206 second=225 amount=-1 +kerning first=119 second=8221 amount=-2 +kerning first=324 second=337 amount=-1 +kerning first=310 second=262 amount=-1 +kerning first=1033 second=1079 amount=-1 +kerning first=74 second=122 amount=-1 +kerning first=221 second=258 amount=-1 +kerning first=224 second=8221 amount=-2 +kerning first=8217 second=382 amount=-1 +kerning first=260 second=8221 amount=-2 +kerning first=291 second=328 amount=-1 +kerning first=1068 second=1039 amount=-1 +kerning first=220 second=216 amount=-1 +kerning first=217 second=233 amount=-1 +kerning first=231 second=225 amount=-1 +kerning first=314 second=287 amount=-1 +kerning first=8220 second=351 amount=-1 +kerning first=267 second=225 amount=-1 +kerning first=65 second=370 amount=-1 +kerning first=252 second=335 amount=-1 +kerning first=115 second=318 amount=-1 +kerning first=211 second=72 amount=-1 +kerning first=87 second=232 amount=-1 +kerning first=70 second=72 amount=-1 +kerning first=1034 second=1071 amount=-1 +kerning first=291 second=105 amount=-1 +kerning first=1070 second=1071 amount=-1 +kerning first=209 second=8222 amount=-1 +kerning first=1048 second=1096 amount=-1 +kerning first=362 second=46 amount=-2 +kerning first=213 second=344 amount=-1 +kerning first=354 second=234 amount=-1 +kerning first=278 second=370 amount=-1 +kerning first=258 second=98 amount=-1 +kerning first=206 second=370 amount=-1 +kerning first=114 second=97 amount=-1 +kerning first=8218 second=286 amount=-1 +kerning first=193 second=89 amount=-1 +kerning first=199 second=44 amount=-1 +kerning first=202 second=199 amount=-1 +kerning first=207 second=241 amount=-1 +kerning first=350 second=370 amount=-1 +kerning first=202 second=361 amount=-1 +kerning first=194 second=314 amount=-1 +kerning first=1030 second=1062 amount=-1 +kerning first=369 second=267 amount=-1 +kerning first=1048 second=1086 amount=-1 +kerning first=67 second=243 amount=-1 +kerning first=1047 second=1070 amount=-1 +kerning first=364 second=114 amount=-1 +kerning first=1043 second=1083 amount=-1 +kerning first=217 second=206 amount=-1 +kerning first=328 second=114 amount=-1 +kerning first=274 second=361 amount=-1 +kerning first=8218 second=365 amount=-1 +kerning first=225 second=267 amount=-1 +kerning first=310 second=361 amount=-1 +kerning first=261 second=267 amount=-1 +kerning first=291 second=8250 amount=-1 +kerning first=325 second=206 amount=-1 +kerning first=1044 second=1079 amount=-1 +kerning first=220 second=114 amount=-1 +kerning first=210 second=258 amount=-1 +kerning first=206 second=368 amount=-1 +kerning first=109 second=245 amount=-1 +kerning first=1058 second=1092 amount=-1 +kerning first=218 second=275 amount=-1 +kerning first=328 second=8249 amount=-1 +kerning first=232 second=115 amount=-1 +kerning first=197 second=213 amount=-1 +kerning first=327 second=315 amount=-1 +kerning first=364 second=8249 amount=-2 +kerning first=207 second=351 amount=-1 +kerning first=278 second=368 amount=-1 +kerning first=268 second=115 amount=-1 +kerning first=86 second=212 amount=-1 +kerning first=205 second=352 amount=-1 +kerning first=364 second=331 amount=-1 +kerning first=235 second=316 amount=-1 +kerning first=283 second=254 amount=-1 +kerning first=305 second=111 amount=-1 +kerning first=65 second=368 amount=-1 +kerning first=1081 second=1095 amount=-1 +kerning first=1045 second=1095 amount=-1 +kerning first=226 second=263 amount=-1 +kerning first=220 second=331 amount=-1 +kerning first=262 second=263 amount=-1 +kerning first=298 second=263 amount=-1 +kerning first=201 second=365 amount=-1 +kerning first=116 second=263 amount=-1 +kerning first=74 second=194 amount=-1 +kerning first=370 second=263 amount=-1 +kerning first=304 second=115 amount=-1 +kerning first=1030 second=1055 amount=-1 +kerning first=115 second=8249 amount=-1 +kerning first=201 second=68 amount=-1 +kerning first=350 second=368 amount=-1 +kerning first=80 second=310 amount=-1 +kerning first=220 second=8249 amount=-2 +kerning first=200 second=72 amount=-1 +kerning first=218 second=102 amount=-1 +kerning first=1067 second=1067 amount=-1 +kerning first=212 second=203 amount=-1 +kerning first=1060 second=1037 amount=-1 +kerning first=325 second=370 amount=-1 +kerning first=284 second=203 amount=-1 +kerning first=1059 second=1088 amount=-1 +kerning first=84 second=267 amount=-1 +kerning first=362 second=102 amount=-1 +kerning first=112 second=106 amount=-1 +kerning first=85 second=263 amount=-1 +kerning first=1055 second=1101 amount=-1 +kerning first=1027 second=1118 amount=-1 +kerning first=272 second=72 amount=-1 +kerning first=71 second=203 amount=-1 +kerning first=1091 second=1101 amount=-1 +kerning first=253 second=106 amount=-1 +kerning first=1064 second=1024 amount=-1 +kerning first=80 second=327 amount=-1 +kerning first=337 second=8222 amount=-1 +kerning first=1038 second=1028 amount=-1 +kerning first=77 second=282 amount=-1 +kerning first=65 second=84 amount=-1 +kerning first=1071 second=1052 amount=-1 +kerning first=209 second=346 amount=-1 +kerning first=1047 second=1117 amount=-1 +kerning first=88 second=8222 amount=-1 +kerning first=88 second=334 amount=-1 +kerning first=305 second=291 amount=-1 +kerning first=269 second=291 amount=-1 +kerning first=89 second=337 amount=-1 +kerning first=69 second=288 amount=-1 +kerning first=233 second=291 amount=-1 +kerning first=351 second=187 amount=-1 +kerning first=266 second=350 amount=-1 +kerning first=302 second=350 amount=-1 +kerning first=101 second=318 amount=-1 +kerning first=350 second=73 amount=-1 +kerning first=282 second=288 amount=-1 +kerning first=66 second=187 amount=-1 +kerning first=242 second=318 amount=-1 +kerning first=104 second=99 amount=-1 +kerning first=198 second=270 amount=-1 +kerning first=314 second=318 amount=-1 +kerning first=209 second=75 amount=-1 +kerning first=1067 second=1119 amount=-1 +kerning first=243 second=187 amount=-1 +kerning first=8217 second=266 amount=-1 +kerning first=302 second=337 amount=-1 +kerning first=281 second=99 amount=-1 +kerning first=279 second=187 amount=-1 +kerning first=1051 second=1064 amount=-1 +kerning first=1051 second=1027 amount=-1 +kerning first=230 second=337 amount=-1 +kerning first=209 second=99 amount=-1 +kerning first=270 second=270 amount=-1 +kerning first=79 second=203 amount=-1 +kerning first=339 second=279 amount=-1 +kerning first=1048 second=1036 amount=-1 +kerning first=231 second=279 amount=-1 +kerning first=266 second=187 amount=-1 +kerning first=269 second=328 amount=-1 +kerning first=267 second=279 amount=-1 +kerning first=1039 second=1074 amount=-1 +kerning first=218 second=332 amount=-1 +kerning first=116 second=232 amount=-1 +kerning first=368 second=262 amount=-1 +kerning first=323 second=8222 amount=-1 +kerning first=214 second=278 amount=-1 +kerning first=268 second=202 amount=-1 +kerning first=364 second=277 amount=-1 +kerning first=362 second=332 amount=-1 +kerning first=66 second=351 amount=-1 +kerning first=328 second=277 amount=-1 +kerning first=109 second=8217 amount=-2 +kerning first=77 second=8250 amount=-1 +kerning first=304 second=202 amount=-1 +kerning first=289 second=316 amount=-1 +kerning first=278 second=264 amount=-1 +kerning first=279 second=351 amount=-1 +kerning first=274 second=116 amount=-1 +kerning first=206 second=264 amount=-1 +kerning first=283 second=8221 amount=-2 +kerning first=291 second=267 amount=-1 +kerning first=288 second=73 amount=-1 +kerning first=209 second=115 amount=-1 +kerning first=325 second=69 amount=-1 +kerning first=203 second=323 amount=-1 +kerning first=1048 second=1073 amount=-1 +kerning first=65 second=264 amount=-1 +kerning first=219 second=279 amount=-1 +kerning first=119 second=108 amount=-1 +kerning first=1052 second=1030 amount=-1 +kerning first=214 second=8217 amount=-2 +kerning first=264 second=338 amount=-1 +kerning first=220 second=277 amount=-1 +kerning first=250 second=8217 amount=-1 +kerning first=1060 second=1050 amount=-1 +kerning first=171 second=350 amount=-1 +kerning first=1052 second=1060 amount=-1 +kerning first=286 second=8217 amount=-1 +kerning first=192 second=338 amount=-1 +kerning first=194 second=356 amount=-1 +kerning first=310 second=307 amount=-1 +kerning first=217 second=69 amount=-1 +kerning first=80 second=364 amount=-1 +kerning first=8217 second=212 amount=-1 +kerning first=255 second=8249 amount=-1 +kerning first=8217 second=347 amount=-1 +kerning first=330 second=113 amount=-1 +kerning first=111 second=103 amount=-1 +kerning first=116 second=333 amount=-1 +kerning first=73 second=325 amount=-1 +kerning first=366 second=113 amount=-1 +kerning first=325 second=286 amount=-1 +kerning first=221 second=273 amount=-1 +kerning first=116 second=242 amount=-1 +kerning first=101 second=355 amount=-1 +kerning first=1067 second=1025 amount=-1 +kerning first=65 second=171 amount=-1 +kerning first=65 second=355 amount=-1 +kerning first=286 second=325 amount=-1 +kerning first=80 second=273 amount=-1 +kerning first=304 second=78 amount=-1 +kerning first=76 second=370 amount=-1 +kerning first=217 second=193 amount=-1 +kerning first=1031 second=1039 amount=-1 +kerning first=217 second=286 amount=-1 +kerning first=101 second=314 amount=-1 +kerning first=117 second=113 amount=-1 +kerning first=1067 second=1039 amount=-1 +kerning first=65 second=314 amount=-1 +kerning first=279 second=335 amount=-1 +kerning first=1055 second=1047 amount=-1 +kerning first=334 second=317 amount=-1 +kerning first=1034 second=1056 amount=-1 +kerning first=314 second=314 amount=-1 +kerning first=1027 second=1082 amount=-1 +kerning first=370 second=317 amount=-1 +kerning first=1049 second=1069 amount=-1 +kerning first=1070 second=1056 amount=-1 +kerning first=217 second=81 amount=-1 +kerning first=362 second=282 amount=-1 +kerning first=242 second=314 amount=-1 +kerning first=368 second=8221 amount=-1 +kerning first=290 second=282 amount=-1 +kerning first=171 second=364 amount=-1 +kerning first=1039 second=1119 amount=-1 +kerning first=278 second=355 amount=-1 +kerning first=221 second=117 amount=-1 +kerning first=218 second=282 amount=-1 +kerning first=112 second=316 amount=-1 +kerning first=270 second=77 amount=-1 +kerning first=279 second=100 amount=-1 +kerning first=198 second=77 amount=-1 +kerning first=121 second=289 amount=-1 +kerning first=367 second=234 amount=-1 +kerning first=1039 second=1100 amount=-1 +kerning first=339 second=333 amount=-1 +kerning first=226 second=289 amount=-1 +kerning first=286 second=76 amount=-1 +kerning first=100 second=101 amount=-1 +kerning first=263 second=305 amount=-1 +kerning first=205 second=101 amount=-1 +kerning first=278 second=171 amount=-1 +kerning first=280 second=220 amount=-1 +kerning first=374 second=246 amount=-1 +kerning first=277 second=101 amount=-1 +kerning first=350 second=171 amount=-1 +kerning first=352 second=220 amount=-1 +kerning first=241 second=101 amount=-1 +kerning first=302 second=246 amount=-1 +kerning first=324 second=103 amount=-1 +kerning first=311 second=8217 amount=-1 +kerning first=266 second=246 amount=-1 +kerning first=231 second=333 amount=-1 +kerning first=291 second=246 amount=-1 +kerning first=230 second=246 amount=-1 +kerning first=1046 second=1054 amount=-1 +kerning first=267 second=333 amount=-1 +kerning first=79 second=192 amount=-1 +kerning first=1067 second=1065 amount=-1 +kerning first=207 second=100 amount=-1 +kerning first=1104 second=1096 amount=-1 +kerning first=284 second=325 amount=-1 +kerning first=89 second=246 amount=-1 +kerning first=87 second=338 amount=-1 +kerning first=88 second=211 amount=-1 +kerning first=78 second=315 amount=-1 +kerning first=230 second=8218 amount=-1 +kerning first=266 second=120 amount=-1 +kerning first=302 second=296 amount=-1 +kerning first=1046 second=1074 amount=-1 +kerning first=193 second=211 amount=-1 +kerning first=219 second=315 amount=-1 +kerning first=374 second=120 amount=-1 +kerning first=97 second=281 amount=-1 +kerning first=374 second=8218 amount=-2 +kerning first=352 second=313 amount=-1 +kerning first=338 second=8218 amount=-1 +kerning first=1038 second=1084 amount=-1 +kerning first=290 second=207 amount=-1 +kerning first=262 second=225 amount=-1 +kerning first=205 second=298 amount=-1 +kerning first=199 second=290 amount=-1 +kerning first=233 second=382 amount=-1 +kerning first=8250 second=221 amount=-2 +kerning first=253 second=114 amount=-1 +kerning first=362 second=8250 amount=-2 +kerning first=269 second=382 amount=-1 +kerning first=89 second=8218 amount=-2 +kerning first=287 second=287 amount=-1 +kerning first=89 second=120 amount=-1 +kerning first=290 second=8250 amount=-1 +kerning first=251 second=287 amount=-1 +kerning first=213 second=86 amount=-1 +kerning first=67 second=313 amount=-1 +kerning first=254 second=8250 amount=-1 +kerning first=352 second=204 amount=-1 +kerning first=218 second=8250 amount=-2 +kerning first=221 second=234 amount=-1 +kerning first=298 second=339 amount=-1 +kerning first=262 second=339 amount=-1 +kerning first=74 second=302 amount=-1 +kerning first=370 second=339 amount=-1 +kerning first=262 second=107 amount=-1 +kerning first=257 second=234 amount=-1 +kerning first=365 second=234 amount=-1 +kerning first=85 second=339 amount=-1 +kerning first=321 second=354 amount=-1 +kerning first=226 second=339 amount=-1 +kerning first=77 second=278 amount=-1 +kerning first=110 second=8220 amount=-2 +kerning first=362 second=243 amount=-1 +kerning first=370 second=122 amount=-1 +kerning first=290 second=278 amount=-1 +kerning first=262 second=122 amount=-1 +kerning first=211 second=330 amount=-1 +kerning first=1051 second=1118 amount=-1 +kerning first=298 second=122 amount=-1 +kerning first=73 second=74 amount=-1 +kerning first=218 second=278 amount=-1 +kerning first=204 second=280 amount=-1 +kerning first=325 second=232 amount=-1 +kerning first=289 second=232 amount=-1 +kerning first=121 second=107 amount=-1 +kerning first=80 second=219 amount=-1 +kerning first=226 second=122 amount=-1 +kerning first=116 second=234 amount=-1 +kerning first=85 second=122 amount=-1 +kerning first=335 second=103 amount=-1 +kerning first=80 second=234 amount=-1 +kerning first=217 second=232 amount=-1 +kerning first=121 second=122 amount=-1 +kerning first=362 second=278 amount=-1 +kerning first=227 second=335 amount=-1 +kerning first=1066 second=1039 amount=-1 +kerning first=1036 second=1094 amount=-1 +kerning first=268 second=241 amount=-1 +kerning first=304 second=209 amount=-1 +kerning first=263 second=335 amount=-1 +kerning first=275 second=269 amount=-1 +kerning first=1031 second=1083 amount=-1 +kerning first=198 second=363 amount=-1 +kerning first=323 second=115 amount=-1 +kerning first=234 second=363 amount=-1 +kerning first=288 second=298 amount=-1 +kerning first=323 second=85 amount=-1 +kerning first=368 second=344 amount=-1 +kerning first=251 second=8220 amount=-1 +kerning first=72 second=202 amount=-1 +kerning first=279 second=46 amount=-1 +kerning first=205 second=229 amount=-1 +kerning first=217 second=65 amount=-1 +kerning first=243 second=46 amount=-1 +kerning first=287 second=8220 amount=-2 +kerning first=323 second=302 amount=-1 +kerning first=351 second=46 amount=-1 +kerning first=1040 second=1081 amount=-1 +kerning first=74 second=85 amount=-1 +kerning first=338 second=114 amount=-1 +kerning first=1076 second=1081 amount=-1 +kerning first=283 second=98 amount=-1 +kerning first=291 second=316 amount=-1 +kerning first=86 second=335 amount=-1 +kerning first=1069 second=1038 amount=-1 +kerning first=203 second=67 amount=-1 +kerning first=262 second=284 amount=-1 +kerning first=213 second=195 amount=-1 +kerning first=352 second=274 amount=-1 +kerning first=193 second=250 amount=-1 +kerning first=374 second=192 amount=-1 +kerning first=87 second=262 amount=-1 +kerning first=88 second=250 amount=-1 +kerning first=234 second=378 amount=-1 +kerning first=8250 second=112 amount=-1 +kerning first=204 second=70 amount=-1 +kerning first=192 second=262 amount=-1 +kerning first=289 second=8218 amount=-1 +kerning first=102 second=46 amount=-1 +kerning first=264 second=262 amount=-1 +kerning first=266 second=207 amount=-1 +kerning first=66 second=46 amount=-1 +kerning first=1075 second=1085 amount=-1 +kerning first=86 second=251 amount=-1 +kerning first=310 second=357 amount=-1 +kerning first=1069 second=1053 amount=-1 +kerning first=209 second=216 amount=-1 +kerning first=233 second=8250 amount=-1 +kerning first=1102 second=1078 amount=-1 +kerning first=274 second=357 amount=-1 +kerning first=224 second=171 amount=-1 +kerning first=272 second=76 amount=-1 +kerning first=346 second=200 amount=-1 +kerning first=326 second=243 amount=-1 +kerning first=1033 second=1053 amount=-1 +kerning first=87 second=277 amount=-1 +kerning first=214 second=310 amount=-1 +kerning first=187 second=369 amount=-1 +kerning first=263 second=251 amount=-1 +kerning first=1064 second=1117 amount=-1 +kerning first=8250 second=344 amount=-1 +kerning first=103 second=314 amount=-1 +kerning first=280 second=68 amount=-1 +kerning first=202 second=357 amount=-1 +kerning first=187 second=116 amount=-1 +kerning first=250 second=335 amount=-1 +kerning first=1041 second=1084 amount=-1 +kerning first=209 second=201 amount=-1 +kerning first=68 second=201 amount=-1 +kerning first=70 second=113 amount=-1 +kerning first=82 second=116 amount=-1 +kerning first=106 second=113 amount=-1 +kerning first=8218 second=316 amount=-1 +kerning first=100 second=8220 amount=-1 +kerning first=210 second=204 amount=-1 +kerning first=1054 second=1044 amount=-1 +kerning first=118 second=351 amount=-1 +kerning first=89 second=242 amount=-1 +kerning first=84 second=271 amount=-1 +kerning first=69 second=204 amount=-1 +kerning first=67 second=259 amount=-1 +kerning first=338 second=207 amount=-1 +kerning first=205 second=268 amount=-1 +kerning first=302 second=207 amount=-1 +kerning first=278 second=210 amount=-1 +kerning first=282 second=204 amount=-1 +kerning first=8216 second=194 amount=-2 +kerning first=199 second=366 amount=-1 +kerning first=206 second=210 amount=-1 +kerning first=291 second=369 amount=-1 +kerning first=374 second=242 amount=-1 +kerning first=255 second=369 amount=-1 +kerning first=355 second=113 amount=-1 +kerning first=219 second=369 amount=-1 +kerning first=302 second=242 amount=-1 +kerning first=1076 second=1096 amount=-1 +kerning first=283 second=113 amount=-1 +kerning first=304 second=226 amount=-1 +kerning first=74 second=233 amount=-1 +kerning first=267 second=97 amount=-1 +kerning first=1118 second=1113 amount=-1 +kerning first=324 second=244 amount=-1 +kerning first=110 second=233 amount=-1 +kerning first=206 second=279 amount=-1 +kerning first=370 second=209 amount=-1 +kerning first=69 second=327 amount=-1 +kerning first=101 second=279 amount=-1 +kerning first=251 second=233 amount=-1 +kerning first=298 second=209 amount=-1 +kerning first=314 second=279 amount=-1 +kerning first=287 second=233 amount=-1 +kerning first=76 second=84 amount=-1 +kerning first=253 second=171 amount=-1 +kerning first=210 second=327 amount=-1 +kerning first=231 second=97 amount=-1 +kerning first=1042 second=1080 amount=-1 +kerning first=232 second=187 amount=-1 +kerning first=282 second=327 amount=-1 +kerning first=79 second=75 amount=-1 +kerning first=268 second=187 amount=-1 +kerning first=211 second=200 amount=-1 +kerning first=323 second=233 amount=-1 +kerning first=196 second=187 amount=-1 +kerning first=74 second=371 amount=-1 +kerning first=77 second=224 amount=-1 +kerning first=70 second=200 amount=-1 +kerning first=228 second=339 amount=-1 +kerning first=1052 second=1045 amount=-1 +kerning first=1067 second=1070 amount=-1 +kerning first=70 second=44 amount=-2 +kerning first=277 second=283 amount=-1 +kerning first=209 second=270 amount=-1 +kerning first=364 second=75 amount=-1 +kerning first=195 second=318 amount=-1 +kerning first=205 second=283 amount=-1 +kerning first=187 second=218 amount=-1 +kerning first=362 second=224 amount=-1 +kerning first=267 second=318 amount=-1 +kerning first=251 second=248 amount=-1 +kerning first=283 second=44 amount=-1 +kerning first=107 second=8221 amount=-1 +kerning first=82 second=218 amount=-1 +kerning first=356 second=380 amount=-1 +kerning first=220 second=75 amount=-1 +kerning first=339 second=318 amount=-1 +kerning first=323 second=248 amount=-1 +kerning first=211 second=44 amount=-1 +kerning first=375 second=318 amount=-1 +kerning first=287 second=248 amount=-1 +kerning first=74 second=248 amount=-1 +kerning first=67 second=274 amount=-1 +kerning first=85 second=209 amount=-1 +kerning first=327 second=79 amount=-1 +kerning first=110 second=248 amount=-1 +kerning first=233 second=246 amount=-1 +kerning first=78 second=79 amount=-1 +kerning first=356 second=257 amount=-1 +kerning first=233 second=367 amount=-1 +kerning first=8218 second=354 amount=-1 +kerning first=1067 second=1084 amount=-1 +kerning first=68 second=270 amount=-1 +kerning first=280 second=205 amount=-1 +kerning first=374 second=261 amount=-1 +kerning first=353 second=45 amount=-1 +kerning first=367 second=8217 amount=-1 +kerning first=197 second=367 amount=-1 +kerning first=8250 second=201 amount=-1 +kerning first=83 second=344 amount=-1 +kerning first=66 second=115 amount=-1 +kerning first=245 second=114 amount=-1 +kerning first=8217 second=251 amount=-1 +kerning first=209 second=114 amount=-1 +kerning first=226 second=248 amount=-1 +kerning first=352 second=205 amount=-1 +kerning first=296 second=344 amount=-1 +kerning first=8222 second=364 amount=-1 +kerning first=1056 second=1097 amount=-1 +kerning first=281 second=114 amount=-1 +kerning first=199 second=80 amount=-1 +kerning first=89 second=261 amount=-1 +kerning first=206 second=206 amount=-1 +kerning first=8249 second=218 amount=-1 +kerning first=279 second=115 amount=-1 +kerning first=203 second=284 amount=-1 +kerning first=45 second=345 amount=-1 +kerning first=275 second=353 amount=-1 +kerning first=214 second=89 amount=-1 +kerning first=1031 second=1048 amount=-1 +kerning first=266 second=261 amount=-1 +kerning first=330 second=109 amount=-1 +kerning first=350 second=206 amount=-1 +kerning first=117 second=345 amount=-1 +kerning first=278 second=206 amount=-1 +kerning first=207 second=115 amount=-1 +kerning first=67 second=205 amount=-1 +kerning first=258 second=345 amount=-1 +kerning first=310 second=71 amount=-1 +kerning first=86 second=266 amount=-1 +kerning first=344 second=362 amount=-1 +kerning first=330 second=345 amount=-1 +kerning first=1046 second=1089 amount=-1 +kerning first=366 second=345 amount=-1 +kerning first=286 second=44 amount=-1 +kerning first=77 second=243 amount=-1 +kerning first=202 second=71 amount=-1 +kerning first=99 second=226 amount=-1 +kerning first=218 second=243 amount=-1 +kerning first=304 second=310 amount=-1 +kerning first=291 second=291 amount=-1 +kerning first=321 second=8221 amount=-1 +kerning first=220 second=286 amount=-1 +kerning first=204 second=226 amount=-1 +kerning first=1071 second=1037 amount=-1 +kerning first=205 second=214 amount=-1 +kerning first=66 second=336 amount=-1 +kerning first=233 second=252 amount=-1 +kerning first=197 second=252 amount=-1 +kerning first=224 second=275 amount=-1 +kerning first=207 second=336 amount=-1 +kerning first=269 second=252 amount=-1 +kerning first=296 second=275 amount=-1 +kerning first=87 second=263 amount=-1 +kerning first=220 second=223 amount=-1 +kerning first=108 second=249 amount=-1 +kerning first=209 second=45 amount=-1 +kerning first=200 second=362 amount=-1 +kerning first=8218 second=262 amount=-1 +kerning first=104 second=45 amount=-1 +kerning first=272 second=362 amount=-1 +kerning first=364 second=223 amount=-1 +kerning first=101 second=353 amount=-1 +kerning first=1056 second=1051 amount=-1 +kerning first=198 second=45 amount=-1 +kerning first=365 second=275 amount=-1 +kerning first=272 second=217 amount=-1 +kerning first=268 second=327 amount=-1 +kerning first=304 second=327 amount=-1 +kerning first=369 second=8217 amount=-1 +kerning first=344 second=217 amount=-1 +kerning first=78 second=350 amount=-1 +kerning first=310 second=249 amount=-1 +kerning first=314 second=106 amount=-1 +kerning first=221 second=275 amount=-1 +kerning first=346 second=249 amount=-1 +kerning first=199 second=71 amount=-1 +kerning first=378 second=45 amount=-1 +kerning first=354 second=243 amount=-1 +kerning first=257 second=275 amount=-1 +kerning first=268 second=80 amount=-1 +kerning first=264 second=223 amount=-1 +kerning first=327 second=350 amount=-1 +kerning first=8250 second=253 amount=-1 +kerning first=1069 second=1062 amount=-1 +kerning first=112 second=318 amount=-1 +kerning first=1031 second=1097 amount=-1 +kerning first=192 second=223 amount=-1 +kerning first=8218 second=210 amount=-1 +kerning first=80 second=275 amount=-1 +kerning first=344 second=284 amount=-1 +kerning first=219 second=350 amount=-1 +kerning first=304 second=80 amount=-1 +kerning first=1060 second=1034 amount=-1 +kerning first=249 second=234 amount=-1 +kerning first=369 second=232 amount=-1 +kerning first=210 second=87 amount=-1 +kerning first=8250 second=73 amount=-1 +kerning first=73 second=200 amount=-1 +kerning first=231 second=8221 amount=-2 +kerning first=69 second=278 amount=-1 +kerning first=368 second=266 amount=-1 +kerning first=1047 second=1085 amount=-1 +kerning first=87 second=223 amount=-1 +kerning first=323 second=226 amount=-1 +kerning first=203 second=362 amount=-1 +kerning first=207 second=70 amount=-1 +kerning first=84 second=232 amount=-1 +kerning first=202 second=249 amount=-1 +kerning first=291 second=283 amount=-1 +kerning first=8218 second=277 amount=-1 +kerning first=296 second=266 amount=-1 +kerning first=274 second=249 amount=-1 +kerning first=220 second=296 amount=-1 +kerning first=218 second=371 amount=-1 +kerning first=219 second=283 amount=-1 +kerning first=108 second=234 amount=-1 +kerning first=261 second=232 amount=-1 +kerning first=78 second=283 amount=-1 +kerning first=66 second=332 amount=-1 +kerning first=72 second=234 amount=-1 +kerning first=225 second=232 amount=-1 +kerning first=286 second=200 amount=-1 +kerning first=200 second=217 amount=-1 +kerning first=362 second=371 amount=-1 +kerning first=214 second=200 amount=-1 +kerning first=85 second=8249 amount=-2 +kerning first=187 second=85 amount=-1 +kerning first=374 second=335 amount=-1 +kerning first=207 second=332 amount=-1 +kerning first=1050 second=1063 amount=-1 +kerning first=1034 second=1041 amount=-1 +kerning first=8250 second=211 amount=-1 +kerning first=204 second=241 amount=-1 +kerning first=67 second=345 amount=-1 +kerning first=103 second=345 amount=-1 +kerning first=204 second=350 amount=-1 +kerning first=1104 second=1076 amount=-1 +kerning first=201 second=216 amount=-1 +kerning first=366 second=217 amount=-1 +kerning first=75 second=105 amount=-1 +kerning first=109 second=267 amount=-1 +kerning first=244 second=345 amount=-1 +kerning first=284 second=302 amount=-1 +kerning first=89 second=335 amount=-1 +kerning first=339 second=114 amount=-1 +kerning first=280 second=345 amount=-1 +kerning first=1052 second=1028 amount=-1 +kerning first=316 second=345 amount=-1 +kerning first=212 second=302 amount=-1 +kerning first=80 second=115 amount=-1 +kerning first=1091 second=1079 amount=-1 +kerning first=352 second=345 amount=-1 +kerning first=73 second=171 amount=-1 +kerning first=116 second=115 amount=-1 +kerning first=375 second=114 amount=-1 +kerning first=1055 second=1079 amount=-1 +kerning first=103 second=98 amount=-1 +kerning first=266 second=335 amount=-1 +kerning first=195 second=114 amount=-1 +kerning first=99 second=241 amount=-1 +kerning first=67 second=98 amount=-1 +kerning first=230 second=335 amount=-1 +kerning first=1071 second=1067 amount=-1 +kerning first=1049 second=1050 amount=-1 +kerning first=323 second=46 amount=-1 +kerning first=71 second=302 amount=-1 +kerning first=302 second=335 amount=-1 +kerning first=231 second=114 amount=-1 +kerning first=65 second=119 amount=-1 +kerning first=81 second=207 amount=-1 +kerning first=370 second=378 amount=-1 +kerning first=192 second=370 amount=-1 +kerning first=200 second=284 amount=-1 +kerning first=255 second=103 amount=-1 +kerning first=45 second=207 amount=-1 +kerning first=258 second=81 amount=-1 +kerning first=69 second=310 amount=-1 +kerning first=298 second=378 amount=-1 +kerning first=193 second=336 amount=-1 +kerning first=262 second=378 amount=-1 +kerning first=264 second=323 amount=-1 +kerning first=8217 second=244 amount=-1 +kerning first=366 second=81 amount=-1 +kerning first=221 second=115 amount=-1 +kerning first=330 second=207 amount=-1 +kerning first=264 second=370 amount=-1 +kerning first=201 second=368 amount=-1 +kerning first=235 second=8218 amount=-1 +kerning first=79 second=315 amount=-1 +kerning first=231 second=314 amount=-1 +kerning first=1068 second=1063 amount=-2 +kerning first=195 second=314 amount=-1 +kerning first=187 second=264 amount=-1 +kerning first=195 second=79 amount=-1 +kerning first=296 second=199 amount=-1 +kerning first=242 second=106 amount=-1 +kerning first=1049 second=1037 amount=-1 +kerning first=375 second=314 amount=-1 +kerning first=368 second=199 amount=-1 +kerning first=86 second=110 amount=-1 +kerning first=1070 second=1041 amount=-1 +kerning first=282 second=310 amount=-1 +kerning first=211 second=89 amount=-1 +kerning first=8216 second=218 amount=-1 +kerning first=121 second=378 amount=-1 +kerning first=1048 second=1071 amount=-1 +kerning first=210 second=310 amount=-1 +kerning first=101 second=106 amount=-1 +kerning first=72 second=288 amount=-1 +kerning first=263 second=110 amount=-1 +kerning first=204 second=334 amount=-1 +kerning first=8250 second=266 amount=-1 +kerning first=66 second=78 amount=-1 +kerning first=1052 second=1101 amount=-1 +kerning first=80 second=221 amount=-1 +kerning first=1033 second=1042 amount=-1 +kerning first=289 second=122 amount=-1 +kerning first=1077 second=1078 amount=-1 +kerning first=89 second=101 amount=-1 +kerning first=274 second=286 amount=-1 +kerning first=230 second=101 amount=-1 +kerning first=316 second=291 amount=-1 +kerning first=45 second=81 amount=-1 +kerning first=280 second=114 amount=-1 +kerning first=302 second=101 amount=-1 +kerning first=244 second=291 amount=-1 +kerning first=289 second=246 amount=-1 +kerning first=8218 second=370 amount=-1 +kerning first=217 second=362 amount=-1 +kerning first=266 second=101 amount=-1 +kerning first=374 second=101 amount=-1 +kerning first=219 second=296 amount=-1 +kerning first=363 second=337 amount=-1 +kerning first=234 second=279 amount=-1 +kerning first=103 second=291 amount=-1 +kerning first=317 second=84 amount=-1 +kerning first=291 second=337 amount=-1 +kerning first=78 second=296 amount=-1 +kerning first=310 second=303 amount=-1 +kerning first=219 second=337 amount=-1 +kerning first=121 second=8250 amount=-1 +kerning first=327 second=296 amount=-1 +kerning first=365 second=114 amount=-1 +kerning first=68 second=84 amount=-1 +kerning first=212 second=75 amount=-1 +kerning first=351 second=8250 amount=-1 +kerning first=234 second=99 amount=-1 +kerning first=1028 second=1119 amount=-1 +kerning first=325 second=245 amount=-1 +kerning first=279 second=8250 amount=-1 +kerning first=1064 second=1119 amount=-1 +kerning first=45 second=328 amount=-1 +kerning first=243 second=8250 amount=-1 +kerning first=220 second=261 amount=-1 +kerning first=277 second=8218 amount=-1 +kerning first=217 second=245 amount=-1 +kerning first=1065 second=1094 amount=-1 +kerning first=99 second=287 amount=-1 +kerning first=66 second=8250 amount=-1 +kerning first=356 second=8220 amount=-1 +kerning first=323 second=380 amount=-1 +kerning first=80 second=202 amount=-1 +kerning first=298 second=317 amount=-1 +kerning first=287 second=380 amount=-1 +kerning first=282 second=117 amount=-1 +kerning first=1055 second=1025 amount=-1 +kerning first=77 second=83 amount=-1 +kerning first=204 second=246 amount=-1 +kerning first=370 second=218 amount=-1 +kerning first=334 second=218 amount=-1 +kerning first=298 second=218 amount=-1 +kerning first=218 second=83 amount=-1 +kerning first=284 second=75 amount=-1 +kerning first=262 second=218 amount=-1 +kerning first=1041 second=1030 amount=-1 +kerning first=325 second=264 amount=-1 +kerning first=208 second=187 amount=-1 +kerning first=374 second=122 amount=-1 +kerning first=210 second=364 amount=-1 +kerning first=362 second=83 amount=-1 +kerning first=66 second=278 amount=-1 +kerning first=107 second=8220 amount=-1 +kerning first=74 second=380 amount=-1 +kerning first=217 second=264 amount=-1 +kerning first=71 second=8220 amount=-1 +kerning first=201 second=270 amount=-1 +kerning first=69 second=364 amount=-1 +kerning first=209 second=257 amount=-1 +kerning first=264 second=69 amount=-1 +kerning first=284 second=8220 amount=-1 +kerning first=112 second=44 amount=-1 +kerning first=207 second=278 amount=-1 +kerning first=248 second=8220 amount=-2 +kerning first=263 second=103 amount=-1 +kerning first=227 second=103 amount=-1 +kerning first=1056 second=1039 amount=-1 +kerning first=8250 second=199 amount=-1 +kerning first=113 second=8221 amount=-2 +kerning first=268 second=273 amount=-1 +kerning first=205 second=227 amount=-1 +kerning first=86 second=103 amount=-1 +kerning first=305 second=171 amount=-1 +kerning first=187 second=278 amount=-1 +kerning first=232 second=273 amount=-1 +kerning first=288 second=205 amount=-1 +kerning first=1070 second=1034 amount=-1 +kerning first=87 second=269 amount=-1 +kerning first=104 second=8220 amount=-2 +kerning first=1034 second=1034 amount=-1 +kerning first=8217 second=110 amount=-1 +kerning first=70 second=258 amount=-1 +kerning first=1065 second=1102 amount=-1 +kerning first=339 second=355 amount=-1 +kerning first=1067 second=1043 amount=-1 +kerning first=192 second=316 amount=-1 +kerning first=85 second=218 amount=-1 +kerning first=67 second=44 amount=-1 +kerning first=1031 second=1043 amount=-1 +kerning first=264 second=269 amount=-1 +kerning first=103 second=44 amount=-1 +kerning first=330 second=261 amount=-1 +kerning first=264 second=316 amount=-1 +kerning first=356 second=248 amount=-1 +kerning first=287 second=382 amount=-1 +kerning first=228 second=316 amount=-1 +kerning first=195 second=355 amount=-1 +kerning first=244 second=44 amount=-1 +kerning first=69 second=117 amount=-1 +kerning first=366 second=261 amount=-1 +kerning first=207 second=78 amount=-1 +kerning first=302 second=229 amount=-1 +kerning first=73 second=286 amount=-1 +kerning first=326 second=263 amount=-1 +kerning first=266 second=229 amount=-1 +kerning first=362 second=263 amount=-1 +kerning first=374 second=229 amount=-1 +kerning first=8217 second=352 amount=-1 +kerning first=316 second=382 amount=-1 +kerning first=353 second=171 amount=-1 +kerning first=1030 second=1030 amount=-1 +kerning first=291 second=8218 amount=-1 +kerning first=235 second=117 amount=-1 +kerning first=1064 second=1100 amount=-1 +kerning first=364 second=203 amount=-1 +kerning first=77 second=263 amount=-1 +kerning first=220 second=203 amount=-1 +kerning first=97 second=108 amount=-1 +kerning first=75 second=251 amount=-1 +kerning first=316 second=252 amount=-1 +kerning first=1066 second=1025 amount=-1 +kerning first=218 second=263 amount=-1 +kerning first=1030 second=1025 amount=-1 +kerning first=1047 second=1050 amount=-1 +kerning first=277 second=246 amount=-1 +kerning first=241 second=246 amount=-1 +kerning first=334 second=77 amount=-1 +kerning first=121 second=8222 amount=-1 +kerning first=205 second=246 amount=-1 +kerning first=370 second=77 amount=-1 +kerning first=1069 second=1113 amount=-1 +kerning first=330 second=382 amount=-1 +kerning first=85 second=8222 amount=-2 +kerning first=1055 second=1060 amount=-1 +kerning first=262 second=77 amount=-1 +kerning first=366 second=382 amount=-1 +kerning first=259 second=8249 amount=-1 +kerning first=298 second=77 amount=-1 +kerning first=99 second=100 amount=-1 +kerning first=212 second=356 amount=-1 +kerning first=355 second=337 amount=-1 +kerning first=262 second=304 amount=-1 +kerning first=204 second=100 amount=-1 +kerning first=298 second=304 amount=-1 +kerning first=85 second=77 amount=-1 +kerning first=334 second=304 amount=-1 +kerning first=97 second=103 amount=-1 +kerning first=98 second=316 amount=-1 +kerning first=8250 second=361 amount=-1 +kerning first=370 second=304 amount=-1 +kerning first=85 second=304 amount=-1 +kerning first=78 second=242 amount=-1 +kerning first=374 second=281 amount=-1 +kerning first=362 second=211 amount=-1 +kerning first=268 second=101 amount=-1 +kerning first=311 second=316 amount=-1 +kerning first=275 second=316 amount=-1 +kerning first=334 second=8222 amount=-1 +kerning first=234 second=333 amount=-1 +kerning first=1042 second=1048 amount=-1 +kerning first=211 second=73 amount=-1 +kerning first=351 second=45 amount=-1 +kerning first=347 second=316 amount=-1 +kerning first=262 second=8222 amount=-1 +kerning first=257 second=248 amount=-1 +kerning first=218 second=211 amount=-1 +kerning first=187 second=194 amount=-1 +kerning first=219 second=242 amount=-1 +kerning first=110 second=339 amount=-1 +kerning first=1031 second=1024 amount=-1 +kerning first=217 second=210 amount=-1 +kerning first=196 second=221 amount=-1 +kerning first=251 second=339 amount=-1 +kerning first=1067 second=1024 amount=-1 +kerning first=327 second=242 amount=-1 +kerning first=210 second=8250 amount=-1 +kerning first=363 second=242 amount=-1 +kerning first=99 second=233 amount=-1 +kerning first=307 second=269 amount=-1 +kerning first=304 second=110 amount=-1 +kerning first=74 second=280 amount=-1 +kerning first=74 second=339 amount=-1 +kerning first=314 second=245 amount=-1 +kerning first=330 second=315 amount=-1 +kerning first=205 second=313 amount=-1 +kerning first=366 second=315 amount=-1 +kerning first=240 second=233 amount=-1 +kerning first=217 second=370 amount=-1 +kerning first=355 second=240 amount=-1 +kerning first=268 second=219 amount=-1 +kerning first=233 second=120 amount=-1 +kerning first=304 second=219 amount=-1 +kerning first=204 second=233 amount=-1 +kerning first=269 second=120 amount=-1 +kerning first=355 second=230 amount=-1 +kerning first=196 second=219 amount=-1 +kerning first=323 second=280 amount=-1 +kerning first=323 second=339 amount=-1 +kerning first=78 second=279 amount=-1 +kerning first=81 second=315 amount=-1 +kerning first=287 second=339 amount=-1 +kerning first=324 second=118 amount=-1 +kerning first=80 second=206 amount=-1 +kerning first=1027 second=1101 amount=-1 +kerning first=1076 second=1118 amount=-1 +kerning first=45 second=315 amount=-1 +kerning first=1040 second=1118 amount=-1 +kerning first=101 second=8217 amount=-2 +kerning first=211 second=76 amount=-1 +kerning first=8217 second=290 amount=-1 +kerning first=70 second=76 amount=-1 +kerning first=242 second=8217 amount=-2 +kerning first=198 second=206 amount=-1 +kerning first=73 second=213 amount=-1 +kerning first=65 second=8217 amount=-2 +kerning first=207 second=224 amount=-1 +kerning first=368 second=117 amount=-1 +kerning first=370 second=85 amount=-1 +kerning first=334 second=85 amount=-1 +kerning first=350 second=327 amount=-1 +kerning first=1036 second=1060 amount=-1 +kerning first=298 second=85 amount=-1 +kerning first=107 second=289 amount=-1 +kerning first=262 second=85 amount=-1 +kerning first=101 second=245 amount=-1 +kerning first=275 second=254 amount=-1 +kerning first=278 second=8217 amount=-1 +kerning first=8222 second=273 amount=-1 +kerning first=314 second=8217 amount=-1 +kerning first=1041 second=1119 amount=-1 +kerning first=350 second=8217 amount=-1 +kerning first=217 second=331 amount=-1 +kerning first=1071 second=1113 amount=-1 +kerning first=248 second=289 amount=-1 +kerning first=368 second=366 amount=-1 +kerning first=258 second=318 amount=-1 +kerning first=296 second=366 amount=-1 +kerning first=203 second=262 amount=-1 +kerning first=1059 second=1095 amount=-1 +kerning first=250 second=113 amount=-1 +kerning first=280 second=79 amount=-1 +kerning first=194 second=311 amount=-1 +kerning first=73 second=67 amount=-1 +kerning first=1095 second=1095 amount=-1 +kerning first=197 second=307 amount=-1 +kerning first=339 second=287 amount=-1 +kerning first=362 second=317 amount=-1 +kerning first=253 second=104 amount=-1 +kerning first=209 second=225 amount=-1 +kerning first=321 second=84 amount=-1 +kerning first=197 second=345 amount=-1 +kerning first=1102 second=1084 amount=-1 +kerning first=241 second=337 amount=-1 +kerning first=233 second=345 amount=-1 +kerning first=269 second=345 amount=-1 +kerning first=99 second=46 amount=-1 +kerning first=1030 second=1084 amount=-1 +kerning first=305 second=345 amount=-1 +kerning first=240 second=46 amount=-1 +kerning first=370 second=250 amount=-1 +kerning first=118 second=107 amount=-1 +kerning first=45 second=369 amount=-1 +kerning first=220 second=368 amount=-1 +kerning first=77 second=317 amount=-1 +kerning first=364 second=201 amount=-1 +kerning first=229 second=122 amount=-1 +kerning first=244 second=314 amount=-1 +kerning first=97 second=8221 amount=-2 +kerning first=77 second=336 amount=-1 +kerning first=77 second=203 amount=-1 +kerning first=218 second=317 amount=-1 +kerning first=121 second=250 amount=-1 +kerning first=105 second=335 amount=-1 +kerning first=220 second=201 amount=-1 +kerning first=85 second=250 amount=-1 +kerning first=79 second=368 amount=-1 +kerning first=79 second=201 amount=-1 +kerning first=218 second=336 amount=-1 +kerning first=274 second=8221 amount=-1 +kerning first=73 second=113 amount=-1 +kerning first=221 second=256 amount=-1 +kerning first=310 second=8221 amount=-1 +kerning first=83 second=366 amount=-1 +kerning first=199 second=204 amount=-1 +kerning first=8216 second=197 amount=-2 +kerning first=346 second=8221 amount=-1 +kerning first=220 second=116 amount=-1 +kerning first=1066 second=1038 amount=-2 +kerning first=382 second=8221 amount=-1 +kerning first=362 second=336 amount=-1 +kerning first=287 second=326 amount=-1 +kerning first=71 second=68 amount=-1 +kerning first=1062 second=1086 amount=-1 +kerning first=325 second=210 amount=-1 +kerning first=364 second=368 amount=-1 +kerning first=80 second=256 amount=-1 +kerning first=1047 second=1031 amount=-1 +kerning first=337 second=122 amount=-1 +kerning first=364 second=116 amount=-1 +kerning first=104 second=114 amount=-1 +kerning first=205 second=259 amount=-1 +kerning first=310 second=268 amount=-1 +kerning first=274 second=268 amount=-1 +kerning first=220 second=97 amount=-1 +kerning first=89 second=281 amount=-1 +kerning first=280 second=8220 amount=-1 +kerning first=8216 second=85 amount=-1 +kerning first=286 second=304 amount=-1 +kerning first=8222 second=221 amount=-2 +kerning first=1038 second=1116 amount=-1 +kerning first=230 second=281 amount=-1 +kerning first=269 second=347 amount=-1 +kerning first=266 second=281 amount=-1 +kerning first=119 second=187 amount=-1 +kerning first=302 second=281 amount=-1 +kerning first=213 second=73 amount=-1 +kerning first=366 second=369 amount=-1 +kerning first=233 second=347 amount=-1 +kerning first=202 second=8221 amount=-1 +kerning first=258 second=369 amount=-1 +kerning first=356 second=235 amount=-1 +kerning first=262 second=8218 amount=-1 +kerning first=1052 second=1069 amount=-1 +kerning first=364 second=97 amount=-1 +kerning first=107 second=287 amount=-1 +kerning first=231 second=382 amount=-1 +kerning first=225 second=279 amount=-1 +kerning first=313 second=86 amount=-1 +kerning first=272 second=198 amount=-1 +kerning first=89 second=283 amount=-1 +kerning first=8222 second=219 amount=-1 +kerning first=226 second=231 amount=-1 +kerning first=210 second=351 amount=-1 +kerning first=262 second=231 amount=-1 +kerning first=325 second=277 amount=-1 +kerning first=281 second=363 amount=-1 +kerning first=1036 second=1072 amount=-1 +kerning first=289 second=277 amount=-1 +kerning first=86 second=290 amount=-1 +kerning first=354 second=351 amount=-1 +kerning first=217 second=277 amount=-1 +kerning first=344 second=338 amount=-1 +kerning first=86 second=244 amount=-1 +kerning first=1051 second=1081 amount=-1 +kerning first=374 second=283 amount=-1 +kerning first=266 second=355 amount=-1 +kerning first=227 second=244 amount=-1 +kerning first=266 second=283 amount=-1 +kerning first=200 second=338 amount=-1 +kerning first=298 second=231 amount=-1 +kerning first=268 second=109 amount=-1 +kerning first=302 second=283 amount=-1 +kerning first=253 second=8249 amount=-1 +kerning first=289 second=8249 amount=-1 +kerning first=370 second=231 amount=-1 +kerning first=194 second=354 amount=-1 +kerning first=230 second=283 amount=-1 +kerning first=325 second=8249 amount=-1 +kerning first=67 second=79 amount=-1 +kerning first=78 second=345 amount=-1 +kerning first=67 second=66 amount=-1 +kerning first=85 second=196 amount=-1 +kerning first=258 second=79 amount=-1 +kerning first=278 second=8220 amount=-1 +kerning first=248 second=46 amount=-1 +kerning first=268 second=332 amount=-1 +kerning first=334 second=196 amount=-1 +kerning first=374 second=367 amount=-1 +kerning first=88 second=371 amount=-1 +kerning first=255 second=345 amount=-1 +kerning first=259 second=235 amount=-1 +kerning first=370 second=196 amount=-1 +kerning first=338 second=367 amount=-1 +kerning first=196 second=332 amount=-1 +kerning first=193 second=371 amount=-1 +kerning first=327 second=345 amount=-1 +kerning first=363 second=345 amount=-1 +kerning first=121 second=380 amount=-1 +kerning first=367 second=235 amount=-1 +kerning first=230 second=367 amount=-1 +kerning first=85 second=380 amount=-1 +kerning first=194 second=367 amount=-1 +kerning first=211 second=274 amount=-1 +kerning first=1042 second=1091 amount=-1 +kerning first=226 second=380 amount=-1 +kerning first=85 second=368 amount=-1 +kerning first=66 second=70 amount=-1 +kerning first=304 second=332 amount=-1 +kerning first=352 second=66 amount=-1 +kerning first=298 second=380 amount=-1 +kerning first=330 second=79 amount=-1 +kerning first=280 second=66 amount=-1 +kerning first=105 second=287 amount=-1 +kerning first=85 second=226 amount=-1 +kerning first=366 second=79 amount=-1 +kerning first=370 second=380 amount=-1 +kerning first=284 second=270 amount=-1 +kerning first=204 second=209 amount=-1 +kerning first=1056 second=1080 amount=-1 +kerning first=204 second=336 amount=-1 +kerning first=89 second=367 amount=-1 +kerning first=86 second=192 amount=-1 +kerning first=217 second=323 amount=-1 +kerning first=327 second=99 amount=-1 +kerning first=269 second=44 amount=-1 +kerning first=200 second=252 amount=-1 +kerning first=110 second=231 amount=-1 +kerning first=1049 second=1045 amount=-1 +kerning first=205 second=205 amount=-1 +kerning first=268 second=355 amount=-1 +kerning first=97 second=244 amount=-1 +kerning first=195 second=119 amount=-1 +kerning first=350 second=201 amount=-1 +kerning first=278 second=201 amount=-1 +kerning first=1070 second=1063 amount=-1 +kerning first=221 second=120 amount=-1 +kerning first=323 second=231 amount=-1 +kerning first=66 second=327 amount=-1 +kerning first=206 second=201 amount=-1 +kerning first=202 second=214 amount=-1 +kerning first=207 second=327 amount=-1 +kerning first=201 second=218 amount=-1 +kerning first=197 second=44 amount=-1 +kerning first=233 second=44 amount=-1 +kerning first=257 second=8217 amount=-2 +kerning first=251 second=231 amount=-1 +kerning first=115 second=314 amount=-1 +kerning first=8217 second=246 amount=-1 +kerning first=310 second=214 amount=-1 +kerning first=339 second=106 amount=-1 +kerning first=289 second=353 amount=-1 +kerning first=375 second=106 amount=-1 +kerning first=1048 second=1049 amount=-1 +kerning first=257 second=243 amount=-1 +kerning first=253 second=353 amount=-1 +kerning first=82 second=45 amount=-1 +kerning first=325 second=223 amount=-1 +kerning first=365 second=243 amount=-1 +kerning first=8249 second=346 amount=-1 +kerning first=289 second=223 amount=-1 +kerning first=325 second=353 amount=-1 +kerning first=231 second=106 amount=-1 +kerning first=259 second=45 amount=-1 +kerning first=267 second=106 amount=-1 +kerning first=75 second=114 amount=-1 +kerning first=263 second=249 amount=-1 +kerning first=118 second=45 amount=-1 +kerning first=105 second=275 amount=-1 +kerning first=80 second=80 amount=-1 +kerning first=1078 second=1097 amount=-1 +kerning first=367 second=45 amount=-1 +kerning first=1091 second=1114 amount=-1 +kerning first=195 second=363 amount=-1 +kerning first=231 second=363 amount=-1 +kerning first=307 second=275 amount=-1 +kerning first=1050 second=1054 amount=-1 +kerning first=78 second=101 amount=-1 +kerning first=80 second=243 amount=-1 +kerning first=203 second=370 amount=-1 +kerning first=339 second=363 amount=-1 +kerning first=217 second=353 amount=-1 +kerning first=280 second=325 amount=-1 +kerning first=217 second=250 amount=-1 +kerning first=226 second=111 amount=-1 +kerning first=375 second=363 amount=-1 +kerning first=1042 second=1097 amount=-1 +kerning first=212 second=87 amount=-1 +kerning first=73 second=362 amount=-1 +kerning first=219 second=101 amount=-1 +kerning first=368 second=234 amount=-1 +kerning first=250 second=232 amount=-1 +kerning first=214 second=362 amount=-1 +kerning first=327 second=101 amount=-1 +kerning first=298 second=226 amount=-1 +kerning first=291 second=101 amount=-1 +kerning first=286 second=362 amount=-1 +kerning first=370 second=226 amount=-1 +kerning first=363 second=101 amount=-1 +kerning first=268 second=8250 amount=-1 +kerning first=365 second=245 amount=-1 +kerning first=8218 second=245 amount=-1 +kerning first=67 second=296 amount=-1 +kerning first=1068 second=1098 amount=-1 +kerning first=364 second=241 amount=-1 +kerning first=72 second=266 amount=-1 +kerning first=103 second=283 amount=-1 +kerning first=70 second=217 amount=-1 +kerning first=280 second=296 amount=-1 +kerning first=86 second=249 amount=-1 +kerning first=1099 second=1095 amount=-1 +kerning first=67 second=283 amount=-1 +kerning first=211 second=217 amount=-1 +kerning first=218 second=334 amount=-1 +kerning first=109 second=232 amount=-1 +kerning first=224 second=234 amount=-1 +kerning first=73 second=232 amount=-1 +kerning first=296 second=71 amount=-1 +kerning first=230 second=242 amount=-1 +kerning first=296 second=234 amount=-1 +kerning first=106 second=111 amount=-1 +kerning first=258 second=214 amount=-1 +kerning first=296 second=317 amount=-1 +kerning first=286 second=72 amount=-1 +kerning first=1069 second=1070 amount=-1 +kerning first=1034 second=1062 amount=-1 +kerning first=1033 second=1070 amount=-1 +kerning first=104 second=283 amount=-1 +kerning first=381 second=8220 amount=-1 +kerning first=283 second=111 amount=-1 +kerning first=75 second=8218 amount=-1 +kerning first=66 second=83 amount=-1 +kerning first=337 second=287 amount=-1 +kerning first=263 second=105 amount=-1 +kerning first=355 second=111 amount=-1 +kerning first=334 second=205 amount=-1 +kerning first=101 second=46 amount=-1 +kerning first=171 second=83 amount=-1 +kerning first=219 second=370 amount=-1 +kerning first=207 second=83 amount=-1 +kerning first=368 second=83 amount=-1 +kerning first=8250 second=369 amount=-1 +kerning first=350 second=114 amount=-1 +kerning first=1055 second=1041 amount=-1 +kerning first=187 second=286 amount=-1 +kerning first=275 second=267 amount=-1 +kerning first=8216 second=196 amount=-2 +kerning first=85 second=378 amount=-1 +kerning first=70 second=111 amount=-1 +kerning first=70 second=81 amount=-1 +kerning first=210 second=115 amount=-1 +kerning first=206 second=114 amount=-1 +kerning first=74 second=68 amount=-1 +kerning first=304 second=278 amount=-1 +kerning first=1044 second=1092 amount=-1 +kerning first=87 second=74 amount=-1 +kerning first=268 second=278 amount=-1 +kerning first=278 second=114 amount=-1 +kerning first=83 second=200 amount=-1 +kerning first=199 second=199 amount=-1 +kerning first=99 second=263 amount=-1 +kerning first=101 second=114 amount=-1 +kerning first=204 second=263 amount=-1 +kerning first=259 second=242 amount=-1 +kerning first=1066 second=1079 amount=-1 +kerning first=65 second=114 amount=-1 +kerning first=240 second=263 amount=-1 +kerning first=1044 second=1116 amount=-1 +kerning first=370 second=117 amount=-1 +kerning first=187 second=365 amount=-1 +kerning first=206 second=331 amount=-1 +kerning first=354 second=115 amount=-1 +kerning first=199 second=310 amount=-1 +kerning first=73 second=72 amount=-1 +kerning first=1055 second=1065 amount=-1 +kerning first=118 second=365 amount=-1 +kerning first=368 second=361 amount=-1 +kerning first=325 second=269 amount=-1 +kerning first=338 second=371 amount=-1 +kerning first=323 second=68 amount=-1 +kerning first=1070 second=1036 amount=-1 +kerning first=77 second=78 amount=-1 +kerning first=1034 second=1036 amount=-1 +kerning first=323 second=334 amount=-1 +kerning first=218 second=78 amount=-1 +kerning first=367 second=99 amount=-1 +kerning first=1043 second=1071 amount=-1 +kerning first=368 second=288 amount=-1 +kerning first=364 second=355 amount=-1 +kerning first=1041 second=1101 amount=-1 +kerning first=248 second=380 amount=-1 +kerning first=1042 second=1043 amount=-1 +kerning first=296 second=288 amount=-1 +kerning first=1034 second=1070 amount=-1 +kerning first=8250 second=71 amount=-1 +kerning first=79 second=260 amount=-1 +kerning first=194 second=199 amount=-1 +kerning first=228 second=318 amount=-1 +kerning first=84 second=230 amount=-1 +kerning first=220 second=260 amount=-1 +kerning first=79 second=84 amount=-1 +kerning first=249 second=8220 amount=-1 +kerning first=1107 second=1082 amount=-1 +kerning first=1105 second=1094 amount=-1 +kerning first=200 second=325 amount=-1 +kerning first=363 second=291 amount=-1 +kerning first=338 second=357 amount=-1 +kerning first=364 second=260 amount=-1 +kerning first=272 second=325 amount=-1 +kerning first=228 second=245 amount=-1 +kerning first=315 second=218 amount=-1 +kerning first=337 second=187 amount=-1 +kerning first=255 second=291 amount=-1 +kerning first=334 second=8220 amount=-2 +kerning first=198 second=367 amount=-1 +kerning first=281 second=279 amount=-1 +kerning first=1036 second=1085 amount=-1 +kerning first=87 second=245 amount=-1 +kerning first=72 second=212 amount=-1 +kerning first=103 second=337 amount=-1 +kerning first=67 second=337 amount=-1 +kerning first=264 second=8217 amount=-1 +kerning first=277 second=251 amount=-1 +kerning first=103 second=120 amount=-1 +kerning first=363 second=114 amount=-1 +kerning first=336 second=8217 amount=-2 +kerning first=298 second=67 amount=-1 +kerning first=104 second=269 amount=-1 +kerning first=220 second=68 amount=-1 +kerning first=210 second=221 amount=-1 +kerning first=103 second=242 amount=-1 +kerning first=187 second=75 amount=-1 +kerning first=209 second=279 amount=-1 +kerning first=193 second=187 amount=-1 +kerning first=1053 second=1119 amount=-1 +kerning first=229 second=187 amount=-1 +kerning first=1071 second=1057 amount=-1 +kerning first=316 second=337 amount=-1 +kerning first=104 second=279 amount=-1 +kerning first=88 second=187 amount=-1 +kerning first=264 second=245 amount=-1 +kerning first=74 second=334 amount=-1 +kerning first=1067 second=1056 amount=-1 +kerning first=316 second=242 amount=-1 +kerning first=346 second=73 amount=-1 +kerning first=205 second=281 amount=-1 +kerning first=86 second=268 amount=-1 +kerning first=1053 second=1043 amount=-1 +kerning first=241 second=281 amount=-1 +kerning first=370 second=334 amount=-1 +kerning first=330 second=347 amount=-1 +kerning first=1041 second=1082 amount=-1 +kerning first=277 second=281 amount=-1 +kerning first=8222 second=375 amount=-1 +kerning first=356 second=99 amount=-1 +kerning first=70 second=325 amount=-1 +kerning first=211 second=198 amount=-1 +kerning first=89 second=229 amount=-1 +kerning first=310 second=290 amount=-1 +kerning first=211 second=325 amount=-1 +kerning first=213 second=115 amount=-1 +kerning first=81 second=347 amount=-1 +kerning first=218 second=366 amount=-1 +kerning first=231 second=318 amount=-1 +kerning first=313 second=8217 amount=-1 +kerning first=264 second=264 amount=-1 +kerning first=202 second=73 amount=-1 +kerning first=69 second=202 amount=-1 +kerning first=1056 second=1083 amount=-1 +kerning first=274 second=296 amount=-1 +kerning first=210 second=202 amount=-1 +kerning first=229 second=233 amount=-1 +kerning first=274 second=73 amount=-1 +kerning first=100 second=281 amount=-1 +kerning first=217 second=82 amount=-1 +kerning first=87 second=264 amount=-1 +kerning first=289 second=8217 amount=-2 +kerning first=355 second=101 amount=-1 +kerning first=268 second=337 amount=-1 +kerning first=77 second=283 amount=-1 +kerning first=1064 second=1065 amount=-1 +kerning first=1050 second=1117 amount=-1 +kerning first=206 second=277 amount=-1 +kerning first=112 second=8217 amount=-2 +kerning first=335 second=108 amount=-1 +kerning first=325 second=82 amount=-1 +kerning first=1068 second=1052 amount=-1 +kerning first=202 second=290 amount=-1 +kerning first=203 second=69 amount=-1 +kerning first=227 second=108 amount=-1 +kerning first=101 second=277 amount=-1 +kerning first=198 second=69 amount=-1 +kerning first=217 second=8217 amount=-1 +kerning first=1038 second=1091 amount=-1 +kerning first=263 second=108 amount=-1 +kerning first=274 second=290 amount=-1 +kerning first=253 second=8217 amount=-2 +kerning first=85 second=334 amount=-1 +kerning first=268 second=224 amount=-1 +kerning first=1049 second=1092 amount=-1 +kerning first=220 second=355 amount=-1 +kerning first=116 second=351 amount=-1 +kerning first=1041 second=1053 amount=-1 +kerning first=1060 second=1113 amount=-1 +kerning first=80 second=351 amount=-1 +kerning first=119 second=291 amount=-1 +kerning first=290 second=78 amount=-1 +kerning first=262 second=334 amount=-1 +kerning first=217 second=282 amount=-1 +kerning first=298 second=334 amount=-1 +kerning first=362 second=78 amount=-1 +kerning first=203 second=286 amount=-1 +kerning first=221 second=351 amount=-1 +kerning first=104 second=333 amount=-1 +kerning first=1048 second=1095 amount=-1 +kerning first=114 second=229 amount=-1 +kerning first=328 second=171 amount=-1 +kerning first=8218 second=318 amount=-1 +kerning first=364 second=171 amount=-2 +kerning first=219 second=229 amount=-1 +kerning first=1084 second=1095 amount=-1 +kerning first=281 second=333 amount=-1 +kerning first=68 second=203 amount=-1 +kerning first=291 second=122 amount=-1 +kerning first=209 second=333 amount=-1 +kerning first=78 second=229 amount=-1 +kerning first=344 second=290 amount=-1 +kerning first=83 second=117 amount=-1 +kerning first=1043 second=1074 amount=-1 +kerning first=209 second=203 amount=-1 +kerning first=321 second=374 amount=-1 +kerning first=213 second=374 amount=-1 +kerning first=229 second=263 amount=-1 +kerning first=1053 second=1100 amount=-1 +kerning first=76 second=8217 amount=-1 +kerning first=327 second=229 amount=-1 +kerning first=115 second=171 amount=-1 +kerning first=79 second=206 amount=-1 +kerning first=296 second=212 amount=-1 +kerning first=1034 second=1039 amount=-1 +kerning first=274 second=298 amount=-1 +kerning first=1054 second=1042 amount=-1 +kerning first=278 second=213 amount=-1 +kerning first=220 second=171 amount=-2 +kerning first=368 second=212 amount=-1 +kerning first=256 second=171 amount=-1 +kerning first=220 second=206 amount=-1 +kerning first=68 second=368 amount=-1 +kerning first=258 second=220 amount=-1 +kerning first=323 second=304 amount=-1 +kerning first=370 second=109 amount=-1 +kerning first=324 second=246 amount=-1 +kerning first=366 second=220 amount=-1 +kerning first=283 second=382 amount=-1 +kerning first=330 second=220 amount=-1 +kerning first=364 second=206 amount=-1 +kerning first=74 second=304 amount=-1 +kerning first=8218 second=375 amount=-1 +kerning first=1051 second=1086 amount=-1 +kerning first=252 second=246 amount=-1 +kerning first=1043 second=1095 amount=-1 +kerning first=1030 second=1060 amount=-1 +kerning first=81 second=220 amount=-1 +kerning first=86 second=8221 amount=-1 +kerning first=302 second=282 amount=-1 +kerning first=249 second=103 amount=-1 +kerning first=244 second=120 amount=-1 +kerning first=219 second=46 amount=-2 +kerning first=1067 second=1048 amount=-1 +kerning first=82 second=220 amount=-1 +kerning first=1051 second=1051 amount=-1 +kerning first=216 second=8218 amount=-1 +kerning first=263 second=8221 amount=-2 +kerning first=108 second=103 amount=-1 +kerning first=8250 second=204 amount=-1 +kerning first=207 second=211 amount=-1 +kerning first=85 second=109 amount=-1 +kerning first=111 second=8218 amount=-1 +kerning first=105 second=255 amount=-1 +kerning first=266 second=313 amount=-1 +kerning first=234 second=365 amount=-1 +kerning first=298 second=109 amount=-1 +kerning first=1056 second=1034 amount=-1 +kerning first=338 second=313 amount=-1 +kerning first=66 second=211 amount=-1 +kerning first=70 second=382 amount=-1 +kerning first=198 second=365 amount=-1 +kerning first=262 second=109 amount=-1 +kerning first=317 second=368 amount=-1 +kerning first=201 second=85 amount=-1 +kerning first=278 second=223 amount=-1 +kerning first=8222 second=365 amount=-1 +kerning first=206 second=223 amount=-1 +kerning first=85 second=280 amount=-1 +kerning first=264 second=210 amount=-1 +kerning first=1070 second=1053 amount=-1 +kerning first=288 second=304 amount=-1 +kerning first=269 second=98 amount=-1 +kerning first=192 second=210 amount=-1 +kerning first=1046 second=1057 amount=-1 +kerning first=350 second=223 amount=-1 +kerning first=262 second=280 amount=-1 +kerning first=197 second=98 amount=-1 +kerning first=210 second=256 amount=-1 +kerning first=87 second=210 amount=-1 +kerning first=1078 second=1092 amount=-1 +kerning first=241 second=335 amount=-1 +kerning first=334 second=280 amount=-1 +kerning first=1036 second=1077 amount=-1 +kerning first=99 second=122 amount=-1 +kerning first=205 second=335 amount=-1 +kerning first=72 second=380 amount=-1 +kerning first=201 second=302 amount=-1 +kerning first=277 second=335 amount=-1 +kerning first=370 second=280 amount=-1 +kerning first=268 second=243 amount=-1 +kerning first=282 second=371 amount=-1 +kerning first=315 second=219 amount=-1 +kerning first=232 second=243 amount=-1 +kerning first=65 second=223 amount=-1 +kerning first=99 second=339 amount=-1 +kerning first=8217 second=268 amount=-1 +kerning first=70 second=271 amount=-1 +kerning first=240 second=339 amount=-1 +kerning first=219 second=78 amount=-1 +kerning first=304 second=243 amount=-1 +kerning first=1070 second=1047 amount=-1 +kerning first=204 second=339 amount=-1 +kerning first=346 second=298 amount=-1 +kerning first=8222 second=224 amount=-1 +kerning first=272 second=89 amount=-1 +kerning first=171 second=219 amount=-1 +kerning first=278 second=8249 amount=-1 +kerning first=330 second=76 amount=-1 +kerning first=314 second=8249 amount=-1 +kerning first=66 second=219 amount=-1 +kerning first=1060 second=1059 amount=-1 +kerning first=210 second=323 amount=-1 +kerning first=364 second=363 amount=-1 +kerning first=1070 second=1039 amount=-1 +kerning first=8218 second=264 amount=-1 +kerning first=275 second=232 amount=-1 +kerning first=344 second=89 amount=-1 +kerning first=45 second=76 amount=-1 +kerning first=100 second=335 amount=-1 +kerning first=81 second=76 amount=-1 +kerning first=235 second=234 amount=-1 +kerning first=8217 second=112 amount=-1 +kerning first=118 second=289 amount=-1 +kerning first=199 second=234 amount=-1 +kerning first=259 second=289 amount=-1 +kerning first=218 second=241 amount=-1 +kerning first=307 second=234 amount=-1 +kerning first=202 second=344 amount=-1 +kerning first=223 second=289 amount=-1 +kerning first=291 second=98 amount=-1 +kerning first=271 second=234 amount=-1 +kerning first=8250 second=355 amount=-1 +kerning first=74 second=120 amount=-1 +kerning first=65 second=8249 amount=-1 +kerning first=274 second=344 amount=-1 +kerning first=313 second=354 amount=-1 +kerning first=1058 second=1075 amount=-1 +kerning first=362 second=241 amount=-1 +kerning first=346 second=344 amount=-1 +kerning first=367 second=289 amount=-1 +kerning first=81 second=274 amount=-1 +kerning first=193 second=46 amount=-1 +kerning first=1071 second=1091 amount=-1 +kerning first=187 second=216 amount=-1 +kerning first=1071 second=1108 amount=-1 +kerning first=45 second=274 amount=-1 +kerning first=296 second=204 amount=-1 +kerning first=213 second=366 amount=-1 +kerning first=369 second=113 amount=-1 +kerning first=337 second=46 amount=-1 +kerning first=80 second=332 amount=-1 +kerning first=1034 second=1038 amount=-2 +kerning first=197 second=79 amount=-1 +kerning first=363 second=283 amount=-1 +kerning first=1091 second=1084 amount=-1 +kerning first=1075 second=1087 amount=-1 +kerning first=364 second=225 amount=-1 +kerning first=1055 second=1084 amount=-1 +kerning first=330 second=274 amount=-1 +kerning first=221 second=332 amount=-1 +kerning first=366 second=274 amount=-1 +kerning first=75 second=357 amount=-1 +kerning first=86 second=195 amount=-1 +kerning first=287 second=250 amount=-1 +kerning first=264 second=104 amount=-1 +kerning first=321 second=366 amount=-1 +kerning first=88 second=46 amount=-1 +kerning first=366 second=76 amount=-1 +kerning first=82 second=216 amount=-1 +kerning first=192 second=104 amount=-1 +kerning first=77 second=70 amount=-1 +kerning first=352 second=207 amount=-1 +kerning first=197 second=369 amount=-1 +kerning first=302 second=259 amount=-1 +kerning first=1051 second=1105 amount=-1 +kerning first=8250 second=345 amount=-1 +kerning first=203 second=213 amount=-1 +kerning first=1047 second=1053 amount=-1 +kerning first=121 second=347 amount=-1 +kerning first=240 second=122 amount=-1 +kerning first=278 second=323 amount=-1 +kerning first=8217 second=122 amount=-1 +kerning first=290 second=70 amount=-1 +kerning first=283 second=271 amount=-1 +kerning first=206 second=323 amount=-1 +kerning first=269 second=369 amount=-1 +kerning first=204 second=122 amount=-1 +kerning first=374 second=259 amount=-1 +kerning first=70 second=198 amount=-1 +kerning first=233 second=369 amount=-1 +kerning first=225 second=113 amount=-1 +kerning first=83 second=204 amount=-1 +kerning first=356 second=378 amount=-1 +kerning first=261 second=113 amount=-1 +kerning first=287 second=8222 amount=-1 +kerning first=350 second=323 amount=-1 +kerning first=80 second=83 amount=-1 +kerning first=67 second=207 amount=-1 +kerning first=248 second=378 amount=-1 +kerning first=1048 second=1041 amount=-1 +kerning first=198 second=75 amount=-1 +kerning first=72 second=46 amount=-1 +kerning first=1038 second=1099 amount=-1 +kerning first=84 second=113 amount=-1 +kerning first=281 second=116 amount=-1 +kerning first=280 second=207 amount=-1 +kerning first=89 second=259 amount=-1 +kerning first=89 second=197 amount=-1 +kerning first=8217 second=249 amount=-1 +kerning first=209 second=116 amount=-1 +kerning first=328 second=119 amount=-1 +kerning first=278 second=116 amount=-1 +kerning first=85 second=201 amount=-1 +kerning first=88 second=366 amount=-1 +kerning first=78 second=113 amount=-1 +kerning first=245 second=314 amount=-1 +kerning first=206 second=116 amount=-1 +kerning first=204 second=204 amount=-1 +kerning first=1057 second=1081 amount=-1 +kerning first=101 second=271 amount=-1 +kerning first=74 second=363 amount=-1 +kerning first=105 second=253 amount=-1 +kerning first=355 second=259 amount=-1 +kerning first=353 second=314 amount=-1 +kerning first=1071 second=1084 amount=-1 +kerning first=281 second=314 amount=-1 +kerning first=268 second=110 amount=-1 +kerning first=287 second=363 amount=-1 +kerning first=332 second=187 amount=-1 +kerning first=327 second=113 amount=-1 +kerning first=209 second=67 amount=-1 +kerning first=368 second=256 amount=-1 +kerning first=363 second=113 amount=-1 +kerning first=69 second=82 amount=-1 +kerning first=101 second=116 amount=-1 +kerning first=75 second=369 amount=-1 +kerning first=70 second=259 amount=-1 +kerning first=65 second=116 amount=-1 +kerning first=291 second=113 amount=-1 +kerning first=268 second=317 amount=-1 +kerning first=193 second=366 amount=-1 +kerning first=8218 second=240 amount=-1 +kerning first=304 second=317 amount=-1 +kerning first=73 second=210 amount=-1 +kerning first=219 second=113 amount=-1 +kerning first=87 second=213 amount=-1 +kerning first=103 second=101 amount=-1 +kerning first=282 second=73 amount=-1 +kerning first=8217 second=234 amount=-1 +kerning first=67 second=101 amount=-1 +kerning first=366 second=271 amount=-1 +kerning first=119 second=254 amount=-1 +kerning first=207 second=302 amount=-1 +kerning first=330 second=271 amount=-1 +kerning first=66 second=302 amount=-1 +kerning first=274 second=219 amount=-1 +kerning first=310 second=219 amount=-1 +kerning first=116 second=8250 amount=-1 +kerning first=199 second=268 amount=-1 +kerning first=202 second=219 amount=-1 +kerning first=243 second=8220 amount=-2 +kerning first=80 second=8250 amount=-1 +kerning first=77 second=296 amount=-1 +kerning first=316 second=101 amount=-1 +kerning first=279 second=122 amount=-1 +kerning first=259 second=277 amount=-1 +kerning first=1038 second=1113 amount=-1 +kerning first=198 second=262 amount=-1 +kerning first=339 second=311 amount=-1 +kerning first=69 second=73 amount=-1 +kerning first=323 second=317 amount=-1 +kerning first=207 second=122 amount=-1 +kerning first=203 second=290 amount=-1 +kerning first=243 second=122 amount=-1 +kerning first=334 second=203 amount=-1 +kerning first=281 second=380 amount=-1 +kerning first=68 second=218 amount=-1 +kerning first=367 second=277 amount=-1 +kerning first=195 second=311 amount=-1 +kerning first=98 second=345 amount=-1 +kerning first=1047 second=1102 amount=-1 +kerning first=231 second=311 amount=-1 +kerning first=210 second=73 amount=-1 +kerning first=1058 second=1087 amount=-1 +kerning first=234 second=235 amount=-1 +kerning first=296 second=283 amount=-1 +kerning first=268 second=290 amount=-1 +kerning first=8218 second=267 amount=-1 +kerning first=304 second=290 amount=-1 +kerning first=224 second=283 amount=-1 +kerning first=198 second=82 amount=-1 +kerning first=187 second=82 amount=-1 +kerning first=305 second=114 amount=-1 +kerning first=245 second=287 amount=-1 +kerning first=85 second=269 amount=-1 +kerning first=195 second=338 amount=-1 +kerning first=270 second=82 amount=-1 +kerning first=68 second=8222 amount=-1 +kerning first=104 second=287 amount=-1 +kerning first=315 second=8220 amount=-1 +kerning first=204 second=351 amount=-1 +kerning first=353 second=287 amount=-1 +kerning first=1053 second=1031 amount=-1 +kerning first=1044 second=1091 amount=-1 +kerning first=100 second=187 amount=-1 +kerning first=99 second=351 amount=-1 +kerning first=281 second=287 amount=-1 +kerning first=262 second=278 amount=-1 +kerning first=291 second=347 amount=-1 +kerning first=327 second=347 amount=-1 +kerning first=304 second=83 amount=-1 +kerning first=70 second=286 amount=-1 +kerning first=219 second=347 amount=-1 +kerning first=368 second=283 amount=-1 +kerning first=196 second=290 amount=-1 +kerning first=255 second=347 amount=-1 +kerning first=8217 second=81 amount=-1 +kerning first=347 second=171 amount=-1 +kerning first=267 second=104 amount=-1 +kerning first=187 second=70 amount=-1 +kerning first=228 second=333 amount=-1 +kerning first=1052 second=1099 amount=-1 +kerning first=87 second=333 amount=-1 +kerning first=195 second=104 amount=-1 +kerning first=117 second=244 amount=-1 +kerning first=80 second=278 amount=-1 +kerning first=231 second=104 amount=-1 +kerning first=272 second=274 amount=-1 +kerning first=1068 second=1101 amount=-1 +kerning first=264 second=333 amount=-1 +kerning first=200 second=274 amount=-1 +kerning first=330 second=244 amount=-1 +kerning first=1030 second=1094 amount=-1 +kerning first=366 second=244 amount=-1 +kerning first=259 second=8217 amount=-2 +kerning first=240 second=231 amount=-1 +kerning first=334 second=201 amount=-1 +kerning first=370 second=201 amount=-1 +kerning first=212 second=195 amount=-1 +kerning first=262 second=201 amount=-1 +kerning first=203 second=171 amount=-1 +kerning first=298 second=201 amount=-1 +kerning first=315 second=89 amount=-1 +kerning first=8250 second=310 amount=-1 +kerning first=339 second=104 amount=-1 +kerning first=99 second=231 amount=-1 +kerning first=311 second=171 amount=-1 +kerning first=354 second=100 amount=-1 +kerning first=287 second=316 amount=-1 +kerning first=374 second=71 amount=-1 +kerning first=305 second=269 amount=-1 +kerning first=1065 second=1088 amount=-1 +kerning first=280 second=362 amount=-1 +kerning first=338 second=71 amount=-1 +kerning first=283 second=106 amount=-1 +kerning first=79 second=65 amount=-1 +kerning first=270 second=87 amount=-1 +kerning first=233 second=269 amount=-1 +kerning first=352 second=362 amount=-1 +kerning first=266 second=71 amount=-1 +kerning first=219 second=266 amount=-1 +kerning first=8217 second=288 amount=-1 +kerning first=368 second=310 amount=-1 +kerning first=327 second=200 amount=-1 +kerning first=89 second=245 amount=-1 +kerning first=220 second=65 amount=-1 +kerning first=275 second=318 amount=-1 +kerning first=78 second=266 amount=-1 +kerning first=311 second=318 amount=-1 +kerning first=347 second=318 amount=-1 +kerning first=223 second=8222 amount=-1 +kerning first=364 second=65 amount=-1 +kerning first=68 second=260 amount=-1 +kerning first=67 second=362 amount=-1 +kerning first=118 second=8222 amount=-1 +kerning first=82 second=370 amount=-1 +kerning first=203 second=45 amount=-1 +kerning first=199 second=214 amount=-1 +kerning first=82 second=8222 amount=-1 +kerning first=207 second=275 amount=-1 +kerning first=194 second=71 amount=-1 +kerning first=103 second=231 amount=-1 +kerning first=69 second=199 amount=-1 +kerning first=279 second=275 amount=-1 +kerning first=311 second=45 amount=-1 +kerning first=89 second=71 amount=-1 +kerning first=347 second=45 amount=-1 +kerning first=196 second=371 amount=-1 +kerning first=354 second=226 amount=-1 +kerning first=235 second=8221 amount=-2 +kerning first=82 second=223 amount=-1 +kerning first=45 second=217 amount=-1 +kerning first=86 second=234 amount=-1 +kerning first=227 second=234 amount=-1 +kerning first=364 second=380 amount=-1 +kerning first=219 second=200 amount=-1 +kerning first=258 second=217 amount=-1 +kerning first=355 second=232 amount=-1 +kerning first=251 second=243 amount=-1 +kerning first=221 second=251 amount=-1 +kerning first=78 second=200 amount=-1 +kerning first=330 second=217 amount=-1 +kerning first=283 second=232 amount=-1 +kerning first=226 second=8220 amount=-2 +kerning first=323 second=243 amount=-1 +kerning first=327 second=266 amount=-1 +kerning first=287 second=243 amount=-1 +kerning first=65 second=89 amount=-1 +kerning first=203 second=345 amount=-1 +kerning first=70 second=232 amount=-1 +kerning first=241 second=8221 amount=-2 +kerning first=103 second=335 amount=-1 +kerning first=214 second=8250 amount=-1 +kerning first=275 second=345 amount=-1 +kerning first=277 second=8221 amount=-2 +kerning first=70 second=352 amount=-1 +kerning first=1054 second=1037 amount=-1 +kerning first=313 second=8221 amount=-1 +kerning first=73 second=44 amount=-1 +kerning first=310 second=105 amount=-1 +kerning first=233 second=242 amount=-1 +kerning first=283 second=99 amount=-1 +kerning first=203 second=72 amount=-1 +kerning first=269 second=242 amount=-1 +kerning first=106 second=232 amount=-1 +kerning first=228 second=267 amount=-1 +kerning first=230 second=98 amount=-1 +kerning first=199 second=241 amount=-1 +kerning first=268 second=344 amount=-1 +kerning first=263 second=234 amount=-1 +kerning first=194 second=98 amount=-1 +kerning first=74 second=336 amount=-1 +kerning first=1046 second=1096 amount=-1 +kerning first=104 second=233 amount=-1 +kerning first=87 second=267 amount=-1 +kerning first=368 second=284 amount=-1 +kerning first=67 second=335 amount=-1 +kerning first=1030 second=1028 amount=-1 +kerning first=266 second=98 amount=-1 +kerning first=323 second=336 amount=-1 +kerning first=281 second=233 amount=-1 +kerning first=218 second=80 amount=-1 +kerning first=99 second=378 amount=-1 +kerning first=1033 second=1045 amount=-1 +kerning first=298 second=114 amount=-1 +kerning first=209 second=233 amount=-1 +kerning first=210 second=46 amount=-1 +kerning first=282 second=199 amount=-1 +kerning first=77 second=80 amount=-1 +kerning first=1041 second=1079 amount=-1 +kerning first=1069 second=1045 amount=-1 +kerning first=362 second=80 amount=-1 +kerning first=240 second=378 amount=-1 +kerning first=121 second=114 amount=-1 +kerning first=246 second=46 amount=-1 +kerning first=1040 second=1094 amount=-1 +kerning first=290 second=80 amount=-1 +kerning first=204 second=378 amount=-1 +kerning first=354 second=46 amount=-1 +kerning first=366 second=268 amount=-1 +kerning first=226 second=114 amount=-1 +kerning first=1042 second=1046 amount=-1 +kerning first=8250 second=364 amount=-1 +kerning first=80 second=224 amount=-1 +kerning first=195 second=284 amount=-1 +kerning first=289 second=318 amount=-1 +kerning first=228 second=108 amount=-1 +kerning first=85 second=114 amount=-1 +kerning first=8217 second=261 amount=-1 +kerning first=83 second=310 amount=-1 +kerning first=220 second=353 amount=-1 +kerning first=199 second=115 amount=-1 +kerning first=74 second=216 amount=-1 +kerning first=356 second=115 amount=-1 +kerning first=235 second=115 amount=-1 +kerning first=187 second=250 amount=-1 +kerning first=100 second=8221 amount=-1 +kerning first=85 second=290 amount=-1 +kerning first=118 second=250 amount=-1 +kerning first=221 second=224 amount=-1 +kerning first=364 second=353 amount=-1 +kerning first=274 second=78 amount=-1 +kerning first=277 second=44 amount=-1 +kerning first=86 second=273 amount=-1 +kerning first=80 second=45 amount=-1 +kerning first=346 second=78 amount=-1 +kerning first=71 second=8249 amount=-1 +kerning first=1051 second=1098 amount=-1 +kerning first=107 second=8249 amount=-1 +kerning first=100 second=283 amount=-1 +kerning first=200 second=355 amount=-1 +kerning first=330 second=352 amount=-1 +kerning first=323 second=282 amount=-1 +kerning first=284 second=8249 amount=-1 +kerning first=366 second=352 amount=-1 +kerning first=199 second=8220 amount=-1 +kerning first=264 second=72 amount=-1 +kerning first=364 second=218 amount=-1 +kerning first=362 second=248 amount=-1 +kerning first=1052 second=1104 amount=-1 +kerning first=326 second=248 amount=-1 +kerning first=262 second=102 amount=-1 +kerning first=74 second=282 amount=-1 +kerning first=220 second=218 amount=-1 +kerning first=102 second=44 amount=-1 +kerning first=218 second=248 amount=-1 +kerning first=370 second=102 amount=-1 +kerning first=267 second=263 amount=-1 +kerning first=1027 second=1089 amount=-1 +kerning first=334 second=87 amount=-1 +kerning first=68 second=75 amount=-1 +kerning first=68 second=206 amount=-1 +kerning first=229 second=101 amount=-1 +kerning first=1042 second=1031 amount=-1 +kerning first=347 second=291 amount=-1 +kerning first=69 second=361 amount=-1 +kerning first=311 second=291 amount=-1 +kerning first=1054 second=1024 amount=-1 +kerning first=282 second=361 amount=-1 +kerning first=275 second=291 amount=-1 +kerning first=271 second=279 amount=-1 +kerning first=119 second=345 amount=-1 +kerning first=206 second=230 amount=-1 +kerning first=209 second=206 amount=-1 +kerning first=1059 second=1100 amount=-1 +kerning first=86 second=288 amount=-1 +kerning first=335 second=8218 amount=-1 +kerning first=1039 second=1080 amount=-1 +kerning first=75 second=8221 amount=-1 +kerning first=368 second=337 amount=-1 +kerning first=111 second=8221 amount=-2 +kerning first=263 second=8218 amount=-1 +kerning first=262 second=8221 amount=-1 +kerning first=75 second=81 amount=-1 +kerning first=296 second=337 amount=-1 +kerning first=216 second=8221 amount=-2 +kerning first=1064 second=1095 amount=-1 +kerning first=67 second=227 amount=-1 +kerning first=252 second=8221 amount=-1 +kerning first=224 second=337 amount=-1 +kerning first=1054 second=1064 amount=-1 +kerning first=288 second=8221 amount=-1 +kerning first=1052 second=1079 amount=-1 +kerning first=80 second=197 amount=-1 +kerning first=198 second=368 amount=-1 +kerning first=45 second=325 amount=-1 +kerning first=302 second=266 amount=-1 +kerning first=197 second=362 amount=-1 +kerning first=199 second=187 amount=-1 +kerning first=70 second=351 amount=-1 +kerning first=266 second=266 amount=-1 +kerning first=352 second=200 amount=-1 +kerning first=204 second=262 amount=-1 +kerning first=374 second=266 amount=-1 +kerning first=81 second=325 amount=-1 +kerning first=87 second=99 amount=-1 +kerning first=338 second=266 amount=-1 +kerning first=85 second=75 amount=-1 +kerning first=280 second=200 amount=-1 +kerning first=307 second=187 amount=-1 +kerning first=1052 second=1077 amount=-1 +kerning first=89 second=266 amount=-1 +kerning first=235 second=187 amount=-1 +kerning first=228 second=99 amount=-1 +kerning first=86 second=8218 amount=-2 +kerning first=271 second=187 amount=-1 +kerning first=264 second=99 amount=-1 +kerning first=266 second=219 amount=-1 +kerning first=107 second=8222 amount=-1 +kerning first=366 second=325 amount=-1 +kerning first=205 second=71 amount=-1 +kerning first=71 second=8222 amount=-1 +kerning first=275 second=279 amount=-1 +kerning first=231 second=353 amount=-1 +kerning first=199 second=202 amount=-1 +kerning first=326 second=275 amount=-1 +kerning first=370 second=75 amount=-1 +kerning first=334 second=75 amount=-1 +kerning first=298 second=75 amount=-1 +kerning first=266 second=8218 amount=-1 +kerning first=362 second=275 amount=-1 +kerning first=262 second=75 amount=-1 +kerning first=187 second=192 amount=-1 +kerning first=263 second=245 amount=-1 +kerning first=211 second=78 amount=-1 +kerning first=346 second=66 amount=-1 +kerning first=1052 second=1052 amount=-1 +kerning first=274 second=66 amount=-1 +kerning first=221 second=371 amount=-1 +kerning first=69 second=334 amount=-1 +kerning first=286 second=69 amount=-1 +kerning first=111 second=108 amount=-1 +kerning first=202 second=66 amount=-1 +kerning first=366 second=249 amount=-1 +kerning first=1039 second=1107 amount=-1 +kerning first=200 second=367 amount=-1 +kerning first=1064 second=1068 amount=-1 +kerning first=209 second=380 amount=-1 +kerning first=67 second=200 amount=-1 +kerning first=211 second=205 amount=-1 +kerning first=70 second=205 amount=-1 +kerning first=323 second=270 amount=-1 +kerning first=214 second=69 amount=-1 +kerning first=206 second=257 amount=-1 +kerning first=245 second=380 amount=-1 +kerning first=310 second=284 amount=-1 +kerning first=263 second=273 amount=-1 +kerning first=366 second=350 amount=-1 +kerning first=1071 second=1030 amount=-1 +kerning first=70 second=193 amount=-1 +kerning first=368 second=364 amount=-1 +kerning first=211 second=193 amount=-1 +kerning first=86 second=261 amount=-1 +kerning first=268 second=209 amount=-1 +kerning first=296 second=364 amount=-1 +kerning first=218 second=194 amount=-1 +kerning first=344 second=286 amount=-1 +kerning first=73 second=355 amount=-1 +kerning first=207 second=68 amount=-1 +kerning first=339 second=365 amount=-1 +kerning first=200 second=286 amount=-1 +kerning first=8217 second=273 amount=-1 +kerning first=375 second=365 amount=-1 +kerning first=232 second=263 amount=-1 +kerning first=267 second=365 amount=-1 +kerning first=81 second=298 amount=-1 +kerning first=109 second=171 amount=-1 +kerning first=268 second=263 amount=-1 +kerning first=66 second=68 amount=-1 +kerning first=45 second=298 amount=-1 +kerning first=304 second=263 amount=-1 +kerning first=195 second=365 amount=-1 +kerning first=350 second=203 amount=-1 +kerning first=231 second=365 amount=-1 +kerning first=323 second=351 amount=-1 +kerning first=69 second=332 amount=-1 +kerning first=99 second=117 amount=-1 +kerning first=351 second=8218 amount=-1 +kerning first=199 second=229 amount=-1 +kerning first=282 second=332 amount=-1 +kerning first=1042 second=1085 amount=-1 +kerning first=1046 second=1108 amount=-1 +kerning first=278 second=203 amount=-1 +kerning first=366 second=298 amount=-1 +kerning first=1073 second=1083 amount=-1 +kerning first=8217 second=217 amount=-1 +kerning first=210 second=69 amount=-1 +kerning first=211 second=220 amount=-1 +kerning first=219 second=332 amount=-1 +kerning first=267 second=242 amount=-1 +kerning first=81 second=323 amount=-1 +kerning first=88 second=217 amount=-1 +kerning first=1047 second=1048 amount=-1 +kerning first=1052 second=1025 amount=-1 +kerning first=45 second=323 amount=-1 +kerning first=70 second=220 amount=-1 +kerning first=214 second=66 amount=-1 +kerning first=263 second=246 amount=-1 +kerning first=315 second=356 amount=-1 +kerning first=227 second=246 amount=-1 +kerning first=67 second=281 amount=-1 +kerning first=305 second=103 amount=-1 +kerning first=103 second=281 amount=-1 +kerning first=82 second=211 amount=-1 +kerning first=233 second=103 amount=-1 +kerning first=86 second=246 amount=-1 +kerning first=212 second=304 amount=-1 +kerning first=205 second=330 amount=-1 +kerning first=362 second=194 amount=-1 +kerning first=199 second=100 amount=-1 +kerning first=104 second=119 amount=-1 +kerning first=284 second=304 amount=-1 +kerning first=366 second=323 amount=-1 +kerning first=316 second=281 amount=-1 +kerning first=330 second=323 amount=-1 +kerning first=235 second=100 amount=-1 +kerning first=71 second=304 amount=-1 +kerning first=1058 second=1077 amount=-1 +kerning first=220 second=245 amount=-1 +kerning first=187 second=109 amount=-1 +kerning first=210 second=280 amount=-1 +kerning first=74 second=231 amount=-1 +kerning first=1030 second=1067 amount=-1 +kerning first=282 second=280 amount=-1 +kerning first=364 second=8217 amount=-1 +kerning first=80 second=85 amount=-1 +kerning first=80 second=110 amount=-1 +kerning first=203 second=210 amount=-1 +kerning first=272 second=313 amount=-1 +kerning first=221 second=110 amount=-1 +kerning first=8217 second=369 amount=-1 +kerning first=229 second=339 amount=-1 +kerning first=8218 second=213 amount=-1 +kerning first=287 second=324 amount=-1 +kerning first=354 second=8250 amount=-1 +kerning first=364 second=245 amount=-1 +kerning first=328 second=245 amount=-1 +kerning first=200 second=313 amount=-1 +kerning first=282 second=8250 amount=-1 +kerning first=70 second=118 amount=-1 +kerning first=205 second=357 amount=-1 +kerning first=1077 second=1118 amount=-1 +kerning first=277 second=357 amount=-1 +kerning first=105 second=8250 amount=-1 +kerning first=374 second=212 amount=-1 +kerning first=69 second=8250 amount=-1 +kerning first=255 second=8220 amount=-2 +kerning first=234 second=289 amount=-1 +kerning first=1049 second=1101 amount=-1 +kerning first=254 second=120 amount=-1 +kerning first=314 second=101 amount=-1 +kerning first=8250 second=270 amount=-1 +kerning first=269 second=101 amount=-1 +kerning first=8218 second=86 amount=-2 +kerning first=81 second=296 amount=-1 +kerning first=266 second=212 amount=-1 +kerning first=220 second=8217 amount=-1 +kerning first=45 second=296 amount=-1 +kerning first=302 second=212 amount=-1 +kerning first=256 second=8217 amount=-2 +kerning first=73 second=111 amount=-1 +kerning first=338 second=212 amount=-1 +kerning first=109 second=111 amount=-1 +kerning first=89 second=212 amount=-1 +kerning first=67 second=254 amount=-1 +kerning first=69 second=280 amount=-1 +kerning first=79 second=8217 amount=-2 +kerning first=250 second=111 amount=-1 +kerning first=194 second=212 amount=-1 +kerning first=103 second=254 amount=-1 +kerning first=115 second=8217 amount=-2 +kerning first=291 second=335 amount=-1 +kerning first=67 second=347 amount=-1 +kerning first=366 second=296 amount=-1 +kerning first=368 second=241 amount=-1 +kerning first=363 second=335 amount=-1 +kerning first=330 second=296 amount=-1 +kerning first=345 second=228 amount=-1 +kerning first=327 second=335 amount=-1 +kerning first=296 second=241 amount=-1 +kerning first=304 second=85 amount=-1 +kerning first=1052 second=1080 amount=-1 +kerning first=268 second=85 amount=-1 +kerning first=196 second=85 amount=-1 +kerning first=1031 second=1056 amount=-1 +kerning first=234 second=287 amount=-1 +kerning first=196 second=8220 amount=-2 +kerning first=192 second=364 amount=-1 +kerning first=219 second=231 amount=-1 +kerning first=235 second=46 amount=-1 +kerning first=268 second=8220 amount=-1 +kerning first=89 second=65 amount=-1 +kerning first=77 second=339 amount=-1 +kerning first=72 second=229 amount=-1 +kerning first=269 second=271 amount=-1 +kerning first=268 second=302 amount=-1 +kerning first=249 second=243 amount=-1 +kerning first=233 second=271 amount=-1 +kerning first=73 second=225 amount=-1 +kerning first=304 second=302 amount=-1 +kerning first=78 second=335 amount=-1 +kerning first=364 second=83 amount=-1 +kerning first=1057 second=1096 amount=-1 +kerning first=219 second=335 amount=-1 +kerning first=245 second=187 amount=-1 +kerning first=364 second=284 amount=-1 +kerning first=204 second=206 amount=-1 +kerning first=66 second=80 amount=-1 +kerning first=104 second=289 amount=-1 +kerning first=245 second=289 amount=-1 +kerning first=321 second=86 amount=-1 +kerning first=8250 second=78 amount=-1 +kerning first=207 second=344 amount=-1 +kerning first=220 second=284 amount=-1 +kerning first=281 second=289 amount=-1 +kerning first=207 second=80 amount=-1 +kerning first=323 second=378 amount=-1 +kerning first=199 second=46 amount=-1 +kerning first=352 second=76 amount=-1 +kerning first=1038 second=1094 amount=-1 +kerning first=202 second=207 amount=-1 +kerning first=287 second=378 amount=-1 +kerning first=353 second=289 amount=-1 +kerning first=287 second=353 amount=-1 +kerning first=280 second=76 amount=-1 +kerning first=193 second=79 amount=-1 +kerning first=267 second=353 amount=-1 +kerning first=100 second=114 amount=-1 +kerning first=375 second=353 amount=-1 +kerning first=195 second=89 amount=-1 +kerning first=339 second=353 amount=-1 +kerning first=370 second=337 amount=-1 +kerning first=282 second=278 amount=-1 +kerning first=74 second=378 amount=-1 +kerning first=230 second=357 amount=-1 +kerning first=8217 second=350 amount=-1 +kerning first=262 second=216 amount=-1 +kerning first=80 second=280 amount=-1 +kerning first=249 second=246 amount=-1 +kerning first=66 second=344 amount=-1 +kerning first=67 second=76 amount=-1 +kerning first=266 second=357 amount=-1 +kerning first=1104 second=1118 amount=-1 +kerning first=266 second=113 amount=-1 +kerning first=302 second=113 amount=-1 +kerning first=1060 second=1084 amount=-1 +kerning first=218 second=114 amount=-1 +kerning first=230 second=113 amount=-1 +kerning first=201 second=201 amount=-1 +kerning first=117 second=269 amount=-1 +kerning first=1055 second=1094 amount=-1 +kerning first=89 second=113 amount=-1 +kerning first=330 second=269 amount=-1 +kerning first=1091 second=1094 amount=-1 +kerning first=214 second=198 amount=-1 +kerning first=366 second=269 amount=-1 +kerning first=195 second=116 amount=-1 +kerning first=65 second=104 amount=-1 +kerning first=274 second=207 amount=-1 +kerning first=1066 second=1045 amount=-1 +kerning first=253 second=8220 amount=-2 +kerning first=346 second=207 amount=-1 +kerning first=213 second=256 amount=-1 +kerning first=364 second=67 amount=-1 +kerning first=368 second=268 amount=-1 +kerning first=333 second=287 amount=-1 +kerning first=374 second=113 amount=-1 +kerning first=86 second=369 amount=-1 +kerning first=77 second=366 amount=-1 +kerning first=220 second=67 amount=-1 +kerning first=279 second=107 amount=-1 +kerning first=77 second=122 amount=-1 +kerning first=1046 second=1102 amount=-1 +kerning first=270 second=260 amount=-1 +kerning first=356 second=277 amount=-1 +kerning first=263 second=250 amount=-1 +kerning first=199 second=73 amount=-1 +kerning first=66 second=317 amount=-1 +kerning first=209 second=262 amount=-1 +kerning first=207 second=317 amount=-1 +kerning first=74 second=351 amount=-1 +kerning first=321 second=219 amount=-1 +kerning first=69 second=251 amount=-1 +kerning first=213 second=219 amount=-1 +kerning first=339 second=116 amount=-1 +kerning first=65 second=375 amount=-1 +kerning first=362 second=122 amount=-1 +kerning first=1036 second=1102 amount=-1 +kerning first=267 second=326 amount=-1 +kerning first=1043 second=1076 amount=-1 +kerning first=254 second=122 amount=-1 +kerning first=231 second=326 amount=-1 +kerning first=8222 second=356 amount=-1 +kerning first=66 second=218 amount=-1 +kerning first=1056 second=1117 amount=-1 +kerning first=1050 second=1038 amount=-1 +kerning first=282 second=251 amount=-1 +kerning first=72 second=219 amount=-1 +kerning first=218 second=122 amount=-1 +kerning first=1068 second=1061 amount=-1 +kerning first=8250 second=219 amount=-1 +kerning first=350 second=218 amount=-1 +kerning first=262 second=270 amount=-1 +kerning first=304 second=248 amount=-1 +kerning first=89 second=8221 amount=-1 +kerning first=72 second=283 amount=-1 +kerning first=267 second=380 amount=-1 +kerning first=278 second=218 amount=-1 +kerning first=108 second=283 amount=-1 +kerning first=231 second=380 amount=-1 +kerning first=194 second=8221 amount=-2 +kerning first=1049 second=1089 amount=-1 +kerning first=339 second=380 amount=-1 +kerning first=370 second=270 amount=-1 +kerning first=206 second=218 amount=-1 +kerning first=117 second=242 amount=-1 +kerning first=230 second=8221 amount=-2 +kerning first=201 second=75 amount=-1 +kerning first=229 second=231 amount=-1 +kerning first=266 second=8221 amount=-1 +kerning first=85 second=336 amount=-1 +kerning first=298 second=270 amount=-1 +kerning first=268 second=248 amount=-1 +kerning first=114 second=44 amount=-1 +kerning first=375 second=380 amount=-1 +kerning first=334 second=270 amount=-1 +kerning first=65 second=218 amount=-1 +kerning first=232 second=248 amount=-1 +kerning first=338 second=8221 amount=-1 +kerning first=200 second=79 amount=-1 +kerning first=218 second=209 amount=-1 +kerning first=374 second=8221 amount=-1 +kerning first=212 second=196 amount=-1 +kerning first=221 second=226 amount=-1 +kerning first=262 second=336 amount=-1 +kerning first=298 second=336 amount=-1 +kerning first=77 second=209 amount=-1 +kerning first=8250 second=241 amount=-1 +kerning first=80 second=225 amount=-1 +kerning first=370 second=336 amount=-1 +kerning first=85 second=270 amount=-1 +kerning first=249 second=283 amount=-1 +kerning first=366 second=242 amount=-1 +kerning first=364 second=257 amount=-1 +kerning first=233 second=244 amount=-1 +kerning first=269 second=244 amount=-1 +kerning first=272 second=205 amount=-1 +kerning first=305 second=244 amount=-1 +kerning first=71 second=70 amount=-1 +kerning first=78 second=209 amount=-1 +kerning first=8222 second=275 amount=-1 +kerning first=1101 second=1113 amount=-1 +kerning first=72 second=199 amount=-1 +kerning first=284 second=8222 amount=-1 +kerning first=344 second=79 amount=-1 +kerning first=202 second=327 amount=-1 +kerning first=248 second=8222 amount=-1 +kerning first=212 second=8222 amount=-1 +kerning first=274 second=327 amount=-1 +kerning first=106 second=8220 amount=-1 +kerning first=115 second=8221 amount=-2 +kerning first=213 second=192 amount=-1 +kerning first=327 second=44 amount=-1 +kerning first=346 second=327 amount=-1 +kerning first=261 second=8217 amount=-2 +kerning first=291 second=318 amount=-1 +kerning first=255 second=44 amount=-1 +kerning first=104 second=235 amount=-1 +kerning first=193 second=44 amount=-1 +kerning first=291 second=44 amount=-1 +kerning first=99 second=110 amount=-1 +kerning first=200 second=205 amount=-1 +kerning first=209 second=235 amount=-1 +kerning first=374 second=227 amount=-1 +kerning first=212 second=70 amount=-1 +kerning first=281 second=235 amount=-1 +kerning first=302 second=227 amount=-1 +kerning first=270 second=347 amount=-1 +kerning first=284 second=70 amount=-1 +kerning first=266 second=227 amount=-1 +kerning first=100 second=171 amount=-1 +kerning first=219 second=71 amount=-1 +kerning first=85 second=363 amount=-1 +kerning first=117 second=289 amount=-1 +kerning first=121 second=363 amount=-1 +kerning first=67 second=266 amount=-1 +kerning first=78 second=71 amount=-1 +kerning first=368 second=214 amount=-1 +kerning first=368 second=115 amount=-1 +kerning first=198 second=370 amount=-1 +kerning first=85 second=243 amount=-1 +kerning first=304 second=275 amount=-1 +kerning first=213 second=310 amount=-1 +kerning first=354 second=224 amount=-1 +kerning first=296 second=214 amount=-1 +kerning first=226 second=243 amount=-1 +kerning first=370 second=363 amount=-1 +kerning first=87 second=45 amount=-2 +kerning first=268 second=275 amount=-1 +kerning first=219 second=362 amount=-1 +kerning first=270 second=370 amount=-1 +kerning first=232 second=275 amount=-1 +kerning first=284 second=223 amount=-1 +kerning first=228 second=45 amount=-1 +kerning first=1104 second=1081 amount=-1 +kerning first=264 second=45 amount=-1 +kerning first=221 second=199 amount=-1 +kerning first=277 second=249 amount=-1 +kerning first=192 second=45 amount=-1 +kerning first=1028 second=1097 amount=-1 +kerning first=71 second=223 amount=-1 +kerning first=1064 second=1097 amount=-1 +kerning first=97 second=234 amount=-1 +kerning first=241 second=235 amount=-1 +kerning first=220 second=257 amount=-1 +kerning first=1055 second=1028 amount=-1 +kerning first=338 second=216 amount=-1 +kerning first=1056 second=1063 amount=-1 +kerning first=217 second=267 amount=-1 +kerning first=197 second=217 amount=-1 +kerning first=78 second=362 amount=-1 +kerning first=290 second=209 amount=-1 +kerning first=325 second=267 amount=-1 +kerning first=338 second=200 amount=-1 +kerning first=298 second=243 amount=-1 +kerning first=1089 second=1095 amount=-1 +kerning first=82 second=368 amount=-1 +kerning first=302 second=200 amount=-1 +kerning first=262 second=243 amount=-1 +kerning first=73 second=345 amount=-1 +kerning first=266 second=200 amount=-1 +kerning first=66 second=371 amount=-1 +kerning first=109 second=345 amount=-1 +kerning first=45 second=379 amount=-1 +kerning first=1044 second=1072 amount=-1 +kerning first=187 second=368 amount=-1 +kerning first=356 second=97 amount=-1 +kerning first=100 second=248 amount=-1 +kerning first=250 second=345 amount=-1 +kerning first=280 second=266 amount=-1 +kerning first=286 second=345 amount=-1 +kerning first=8218 second=99 amount=-1 +kerning first=1030 second=1049 amount=-1 +kerning first=202 second=8218 amount=-1 +kerning first=339 second=245 amount=-1 +kerning first=315 second=221 amount=-1 +kerning first=8218 second=378 amount=-1 +kerning first=68 second=370 amount=-1 +kerning first=346 second=8218 amount=-1 +kerning first=267 second=245 amount=-1 +kerning first=66 second=221 amount=-1 +kerning first=274 second=315 amount=-1 +kerning first=210 second=197 amount=-1 +kerning first=317 second=370 amount=-1 +kerning first=310 second=8218 amount=-1 +kerning first=231 second=245 amount=-1 +kerning first=209 second=370 amount=-1 +kerning first=274 second=8218 amount=-1 +kerning first=1067 second=1073 amount=-1 +kerning first=171 second=221 amount=-1 +kerning first=202 second=315 amount=-1 +kerning first=84 second=111 amount=-1 +kerning first=362 second=258 amount=-1 +kerning first=1050 second=1092 amount=-1 +kerning first=350 second=46 amount=-1 +kerning first=196 second=199 amount=-1 +kerning first=1038 second=1101 amount=-1 +kerning first=338 second=249 amount=-1 +kerning first=200 second=45 amount=-1 +kerning first=231 second=117 amount=-1 +kerning first=304 second=199 amount=-1 +kerning first=89 second=249 amount=-1 +kerning first=1065 second=1086 amount=-1 +kerning first=267 second=230 amount=-1 +kerning first=1056 second=1024 amount=-1 +kerning first=194 second=249 amount=-1 +kerning first=70 second=350 amount=-1 +kerning first=314 second=267 amount=-1 +kerning first=280 second=217 amount=-1 +kerning first=1053 second=1068 amount=-1 +kerning first=219 second=212 amount=-1 +kerning first=352 second=217 amount=-1 +kerning first=101 second=267 amount=-1 +kerning first=8222 second=226 amount=-1 +kerning first=277 second=271 amount=-1 +kerning first=327 second=212 amount=-1 +kerning first=206 second=267 amount=-1 +kerning first=201 second=8249 amount=-1 +kerning first=72 second=310 amount=-1 +kerning first=245 second=122 amount=-1 +kerning first=78 second=212 amount=-1 +kerning first=225 second=111 amount=-1 +kerning first=296 second=115 amount=-1 +kerning first=346 second=315 amount=-1 +kerning first=8222 second=253 amount=-1 +kerning first=261 second=111 amount=-1 +kerning first=218 second=258 amount=-1 +kerning first=1039 second=1101 amount=-1 +kerning first=345 second=8249 amount=-1 +kerning first=240 second=242 amount=-1 +kerning first=194 second=67 amount=-1 +kerning first=1062 second=1098 amount=-1 +kerning first=369 second=111 amount=-1 +kerning first=119 second=115 amount=-1 +kerning first=255 second=254 amount=-1 +kerning first=291 second=254 amount=-1 +kerning first=194 second=44 amount=-1 +kerning first=195 second=218 amount=-1 +kerning first=1050 second=1119 amount=-1 +kerning first=270 second=323 amount=-1 +kerning first=205 second=81 amount=-1 +kerning first=89 second=44 amount=-1 +kerning first=220 second=380 amount=-1 +kerning first=272 second=193 amount=-1 +kerning first=279 second=248 amount=-1 +kerning first=230 second=44 amount=-1 +kerning first=1068 second=1027 amount=-1 +kerning first=1039 second=1117 amount=-1 +kerning first=266 second=44 amount=-1 +kerning first=66 second=209 amount=-1 +kerning first=370 second=282 amount=-1 +kerning first=314 second=337 amount=-1 +kerning first=72 second=78 amount=-1 +kerning first=334 second=282 amount=-1 +kerning first=213 second=78 amount=-1 +kerning first=298 second=282 amount=-1 +kerning first=1067 second=1097 amount=-1 +kerning first=207 second=248 amount=-1 +kerning first=262 second=282 amount=-1 +kerning first=325 second=72 amount=-1 +kerning first=8250 second=214 amount=-1 +kerning first=325 second=202 amount=-1 +kerning first=1055 second=1055 amount=-1 +kerning first=78 second=227 amount=-1 +kerning first=85 second=282 amount=-1 +kerning first=1053 second=1041 amount=-1 +kerning first=73 second=279 amount=-1 +kerning first=109 second=279 amount=-1 +kerning first=218 second=224 amount=-1 +kerning first=231 second=230 amount=-1 +kerning first=221 second=361 amount=-1 +kerning first=199 second=332 amount=-1 +kerning first=1067 second=1054 amount=-1 +kerning first=274 second=187 amount=-1 +kerning first=274 second=288 amount=-1 +kerning first=327 second=330 amount=-1 +kerning first=70 second=323 amount=-1 +kerning first=206 second=278 amount=-1 +kerning first=327 second=227 amount=-1 +kerning first=374 second=44 amount=-1 +kerning first=224 second=187 amount=-1 +kerning first=212 second=270 amount=-1 +kerning first=108 second=337 amount=-1 +kerning first=202 second=288 amount=-1 +kerning first=260 second=187 amount=-1 +kerning first=109 second=291 amount=-1 +kerning first=72 second=337 amount=-1 +kerning first=219 second=227 amount=-1 +kerning first=1067 second=1094 amount=-1 +kerning first=1067 second=1057 amount=-1 +kerning first=8249 second=368 amount=-1 +kerning first=310 second=288 amount=-1 +kerning first=368 second=187 amount=-2 +kerning first=211 second=323 amount=-1 +kerning first=345 second=8222 amount=-1 +kerning first=220 second=338 amount=-1 +kerning first=1055 second=1067 amount=-1 +kerning first=8222 second=199 amount=-1 +kerning first=118 second=314 amount=-1 +kerning first=1051 second=1034 amount=-1 +kerning first=194 second=303 amount=-1 +kerning first=84 second=259 amount=-1 +kerning first=217 second=99 amount=-1 +kerning first=78 second=281 amount=-1 +kerning first=65 second=8250 amount=-1 +kerning first=325 second=99 amount=-1 +kerning first=66 second=290 amount=-1 +kerning first=259 second=314 amount=-1 +kerning first=202 second=369 amount=-1 +kerning first=72 second=268 amount=-1 +kerning first=296 second=73 amount=-1 +kerning first=1091 second=1082 amount=-1 +kerning first=223 second=314 amount=-1 +kerning first=83 second=202 amount=-1 +kerning first=289 second=99 amount=-1 +kerning first=1046 second=1091 amount=-1 +kerning first=307 second=8250 amount=-1 +kerning first=368 second=73 amount=-1 +kerning first=207 second=290 amount=-1 +kerning first=333 second=382 amount=-1 +kerning first=271 second=8250 amount=-1 +kerning first=298 second=279 amount=-1 +kerning first=235 second=8250 amount=-1 +kerning first=346 second=369 amount=-1 +kerning first=199 second=8250 amount=-1 +kerning first=310 second=369 amount=-1 +kerning first=245 second=316 amount=-1 +kerning first=1067 second=1089 amount=-1 +kerning first=274 second=369 amount=-1 +kerning first=103 second=347 amount=-1 +kerning first=98 second=103 amount=-1 +kerning first=80 second=334 amount=-1 +kerning first=121 second=351 amount=-1 +kerning first=296 second=202 amount=-1 +kerning first=72 second=364 amount=-1 +kerning first=85 second=351 amount=-1 +kerning first=83 second=73 amount=-1 +kerning first=368 second=202 amount=-1 +kerning first=90 second=8217 amount=-1 +kerning first=1067 second=1100 amount=-1 +kerning first=187 second=382 amount=-1 +kerning first=334 second=351 amount=-1 +kerning first=298 second=351 amount=-1 +kerning first=262 second=351 amount=-1 +kerning first=73 second=264 amount=-1 +kerning first=212 second=82 amount=-1 +kerning first=339 second=8217 amount=-2 +kerning first=1053 second=1092 amount=-1 +kerning first=284 second=82 amount=-1 +kerning first=375 second=8217 amount=-2 +kerning first=272 second=374 amount=-1 +kerning first=321 second=364 amount=-1 +kerning first=1043 second=1091 amount=-1 +kerning first=364 second=338 amount=-1 +kerning first=70 second=296 amount=-1 +kerning first=366 second=101 amount=-1 +kerning first=231 second=8217 amount=-2 +kerning first=213 second=364 amount=-1 +kerning first=330 second=101 amount=-1 +kerning first=277 second=108 amount=-1 +kerning first=290 second=68 amount=-1 +kerning first=207 second=263 amount=-1 +kerning first=66 second=194 amount=-1 +kerning first=364 second=365 amount=-1 +kerning first=84 second=171 amount=-1 +kerning first=211 second=296 amount=-1 +kerning first=229 second=45 amount=-1 +kerning first=120 second=171 amount=-1 +kerning first=362 second=68 amount=-1 +kerning first=279 second=263 amount=-1 +kerning first=67 second=103 amount=-1 +kerning first=1048 second=1039 amount=-1 +kerning first=338 second=330 amount=-1 +kerning first=1053 second=1076 amount=-1 +kerning first=225 second=171 amount=-1 +kerning first=302 second=330 amount=-1 +kerning first=220 second=365 amount=-1 +kerning first=261 second=171 amount=-1 +kerning first=227 second=281 amount=-1 +kerning first=218 second=68 amount=-1 +kerning first=71 second=82 amount=-1 +kerning first=209 second=97 amount=-1 +kerning first=370 second=351 amount=-1 +kerning first=259 second=287 amount=-1 +kerning first=223 second=287 amount=-1 +kerning first=193 second=117 amount=-1 +kerning first=187 second=66 amount=-1 +kerning first=118 second=287 amount=-1 +kerning first=88 second=117 amount=-1 +kerning first=362 second=339 amount=-1 +kerning first=326 second=339 amount=-1 +kerning first=367 second=287 amount=-1 +kerning first=281 second=316 amount=-1 +kerning first=1031 second=1031 amount=-1 +kerning first=305 second=283 amount=-1 +kerning first=330 second=103 amount=-1 +kerning first=69 second=66 amount=-1 +kerning first=353 second=316 amount=-1 +kerning first=218 second=339 amount=-1 +kerning first=368 second=100 amount=-1 +kerning first=296 second=229 amount=-1 +kerning first=84 second=382 amount=-1 +kerning first=368 second=229 amount=-1 +kerning first=196 second=356 amount=-1 +kerning first=344 second=220 amount=-1 +kerning first=199 second=278 amount=-1 +kerning first=1043 second=1118 amount=-1 +kerning first=219 second=281 amount=-1 +kerning first=77 second=68 amount=-1 +kerning first=266 second=330 amount=-1 +kerning first=291 second=281 amount=-1 +kerning first=74 second=311 amount=-1 +kerning first=73 second=333 amount=-1 +kerning first=1044 second=1060 amount=-1 +kerning first=350 second=77 amount=-1 +kerning first=327 second=281 amount=-1 +kerning first=200 second=220 amount=-1 +kerning first=1067 second=1031 amount=-1 +kerning first=316 second=103 amount=-1 +kerning first=278 second=77 amount=-1 +kerning first=97 second=246 amount=-1 +kerning first=272 second=220 amount=-1 +kerning first=244 second=103 amount=-1 +kerning first=250 second=333 amount=-1 +kerning first=201 second=304 amount=-1 +kerning first=323 second=362 amount=-1 +kerning first=1047 second=1065 amount=-1 +kerning first=70 second=269 amount=-1 +kerning first=67 second=298 amount=-1 +kerning first=296 second=246 amount=-1 +kerning first=1047 second=1063 amount=-1 +kerning first=232 second=100 amount=-1 +kerning first=193 second=356 amount=-1 +kerning first=8218 second=230 amount=-1 +kerning first=8249 second=87 amount=-1 +kerning first=330 second=74 amount=-1 +kerning first=224 second=246 amount=-1 +kerning first=304 second=100 amount=-1 +kerning first=366 second=74 amount=-1 +kerning first=219 second=330 amount=-1 +kerning first=214 second=220 amount=-1 +kerning first=241 second=171 amount=-1 +kerning first=268 second=100 amount=-1 +kerning first=1031 second=1117 amount=-1 +kerning first=106 second=269 amount=-1 +kerning first=352 second=298 amount=-1 +kerning first=78 second=103 amount=-1 +kerning first=209 second=77 amount=-1 +kerning first=355 second=269 amount=-1 +kerning first=206 second=333 amount=-1 +kerning first=364 second=109 amount=-1 +kerning first=8222 second=334 amount=-1 +kerning first=209 second=304 amount=-1 +kerning first=298 second=211 amount=-1 +kerning first=283 second=269 amount=-1 +kerning first=101 second=333 amount=-1 +kerning first=262 second=211 amount=-1 +kerning first=1031 second=1096 amount=-1 +kerning first=115 second=289 amount=-1 +kerning first=270 second=65 amount=-1 +kerning first=98 second=382 amount=-1 +kerning first=217 second=365 amount=-1 +kerning first=281 second=8222 amount=-1 +kerning first=68 second=304 amount=-1 +kerning first=85 second=211 amount=-1 +kerning first=80 second=68 amount=-1 +kerning first=253 second=365 amount=-1 +kerning first=314 second=333 amount=-1 +kerning first=187 second=260 amount=-1 +kerning first=252 second=244 amount=-1 +kerning first=207 second=339 amount=-1 +kerning first=117 second=281 amount=-1 +kerning first=264 second=353 amount=-1 +kerning first=197 second=86 amount=-1 +kerning first=279 second=339 amount=-1 +kerning first=277 second=347 amount=-1 +kerning first=338 second=315 amount=-1 +kerning first=220 second=109 amount=-1 +kerning first=1071 second=1074 amount=-1 +kerning first=205 second=347 amount=-1 +kerning first=330 second=281 amount=-1 +kerning first=266 second=315 amount=-1 +kerning first=1043 second=1108 amount=-1 +kerning first=196 second=307 amount=-1 +kerning first=1048 second=1051 amount=-1 +kerning first=366 second=281 amount=-1 +kerning first=302 second=315 amount=-1 +kerning first=346 second=202 amount=-1 +kerning first=1059 second=1083 amount=-1 +kerning first=380 second=8221 amount=-1 +kerning first=282 second=290 amount=-1 +kerning first=1067 second=1117 amount=-1 +kerning first=1049 second=1057 amount=-1 +kerning first=193 second=119 amount=-1 +kerning first=78 second=330 amount=-1 +kerning first=68 second=77 amount=-1 +kerning first=200 second=264 amount=-1 +kerning first=235 second=251 amount=-1 +kerning first=277 second=120 amount=-1 +kerning first=274 second=202 amount=-1 +kerning first=8218 second=242 amount=-1 +kerning first=363 second=103 amount=-1 +kerning first=83 second=219 amount=-1 +kerning first=78 second=76 amount=-1 +kerning first=234 second=8217 amount=-2 +kerning first=228 second=269 amount=-1 +kerning first=264 second=77 amount=-1 +kerning first=1057 second=1118 amount=-1 +kerning first=270 second=8217 amount=-2 +kerning first=78 second=8221 amount=-1 +kerning first=325 second=274 amount=-1 +kerning first=114 second=8221 amount=-1 +kerning first=67 second=271 amount=-1 +kerning first=75 second=212 amount=-1 +kerning first=206 second=345 amount=-1 +kerning first=219 second=8221 amount=-1 +kerning first=217 second=111 amount=-1 +kerning first=315 second=85 amount=-1 +kerning first=291 second=8221 amount=-2 +kerning first=258 second=254 amount=-1 +kerning first=289 second=111 amount=-1 +kerning first=234 second=245 amount=-1 +kerning first=73 second=103 amount=-1 +kerning first=70 second=242 amount=-1 +kerning first=325 second=111 amount=-1 +kerning first=207 second=85 amount=-1 +kerning first=106 second=242 amount=-1 +kerning first=209 second=331 amount=-1 +kerning first=171 second=85 amount=-1 +kerning first=378 second=8217 amount=-1 +kerning first=355 second=242 amount=-1 +kerning first=70 second=279 amount=-1 +kerning first=66 second=85 amount=-1 +kerning first=283 second=242 amount=-1 +kerning first=354 second=263 amount=-1 +kerning first=89 second=195 amount=-1 +kerning first=1071 second=1101 amount=-1 +kerning first=195 second=67 amount=-1 +kerning first=328 second=289 amount=-1 +kerning first=1048 second=1024 amount=-1 +kerning first=315 second=366 amount=-1 +kerning first=194 second=288 amount=-1 +kerning first=264 second=203 amount=-1 +kerning first=1051 second=1095 amount=-1 +kerning first=89 second=288 amount=-1 +kerning first=99 second=335 amount=-1 +kerning first=1055 second=1036 amount=-1 +kerning first=219 second=357 amount=-1 +kerning first=367 second=233 amount=-1 +kerning first=374 second=195 amount=-1 +kerning first=313 second=374 amount=-1 +kerning first=105 second=263 amount=-1 +kerning first=327 second=357 amount=-1 +kerning first=259 second=233 amount=-1 +kerning first=327 second=76 amount=-1 +kerning first=291 second=345 amount=-1 +kerning first=291 second=357 amount=-1 +kerning first=73 second=220 amount=-1 +kerning first=268 second=280 amount=-1 +kerning first=78 second=357 amount=-1 +kerning first=8222 second=214 amount=-1 +kerning first=304 second=280 amount=-1 +kerning first=1049 second=1084 amount=-1 +kerning first=219 second=76 amount=-1 +kerning first=368 second=246 amount=-1 +kerning first=201 second=363 amount=-1 +kerning first=199 second=224 amount=-1 +kerning first=257 second=122 amount=-1 +kerning first=210 second=317 amount=-1 +kerning first=362 second=378 amount=-1 +kerning first=205 second=207 amount=-1 +kerning first=282 second=317 amount=-1 +kerning first=253 second=311 amount=-1 +kerning first=1030 second=1104 amount=-1 +kerning first=221 second=122 amount=-1 +kerning first=284 second=201 amount=-1 +kerning first=289 second=311 amount=-1 +kerning first=80 second=122 amount=-1 +kerning first=99 second=107 amount=-1 +kerning first=212 second=201 amount=-1 +kerning first=1055 second=1072 amount=-1 +kerning first=199 second=269 amount=-1 +kerning first=171 second=366 amount=-1 +kerning first=1046 second=1118 amount=-1 +kerning first=67 second=244 amount=-1 +kerning first=192 second=116 amount=-1 +kerning first=77 second=378 amount=-1 +kerning first=207 second=366 amount=-1 +kerning first=103 second=244 amount=-1 +kerning first=218 second=204 amount=-1 +kerning first=66 second=366 amount=-1 +kerning first=1043 second=1081 amount=-1 +kerning first=213 second=354 amount=-1 +kerning first=8222 second=100 amount=-1 +kerning first=68 second=78 amount=-1 +kerning first=254 second=378 amount=-1 +kerning first=362 second=204 amount=-1 +kerning first=218 second=378 amount=-1 +kerning first=269 second=259 amount=-1 +kerning first=69 second=317 amount=-1 +kerning first=264 second=116 amount=-1 +kerning first=344 second=210 amount=-1 +kerning first=8222 second=307 amount=-1 +kerning first=1044 second=1102 amount=-1 +kerning first=72 second=75 amount=-1 +kerning first=200 second=210 amount=-1 +kerning first=1078 second=1095 amount=-1 +kerning first=220 second=262 amount=-1 +kerning first=1051 second=1049 amount=-1 +kerning first=268 second=73 amount=-1 +kerning first=117 second=335 amount=-1 +kerning first=364 second=262 amount=-1 +kerning first=187 second=206 amount=-1 +kerning first=225 second=345 amount=-1 +kerning first=65 second=213 amount=-1 +kerning first=230 second=369 amount=-1 +kerning first=261 second=345 amount=-1 +kerning first=368 second=219 amount=-1 +kerning first=1027 second=1040 amount=-1 +kerning first=194 second=369 amount=-1 +kerning first=304 second=73 amount=-1 +kerning first=327 second=207 amount=-1 +kerning first=330 second=335 amount=-1 +kerning first=221 second=268 amount=-1 +kerning first=333 second=345 amount=-1 +kerning first=296 second=219 amount=-1 +kerning first=105 second=244 amount=-1 +kerning first=369 second=345 amount=-1 +kerning first=374 second=369 amount=-1 +kerning first=206 second=213 amount=-1 +kerning first=366 second=335 amount=-1 +kerning first=338 second=369 amount=-1 +kerning first=80 second=268 amount=-1 +kerning first=217 second=198 amount=-1 +kerning first=213 second=88 amount=-1 +kerning first=8249 second=86 amount=-1 +kerning first=218 second=231 amount=-1 +kerning first=284 second=368 amount=-1 +kerning first=218 second=351 amount=-1 +kerning first=209 second=277 amount=-1 +kerning first=1030 second=1077 amount=-1 +kerning first=264 second=318 amount=-1 +kerning first=104 second=277 amount=-1 +kerning first=71 second=368 amount=-1 +kerning first=69 second=290 amount=-1 +kerning first=362 second=351 amount=-1 +kerning first=1071 second=1047 amount=-1 +kerning first=77 second=231 amount=-1 +kerning first=268 second=226 amount=-1 +kerning first=325 second=338 amount=-1 +kerning first=212 second=368 amount=-1 +kerning first=201 second=8220 amount=-1 +kerning first=104 second=8249 amount=-1 +kerning first=334 second=200 amount=-1 +kerning first=220 second=82 amount=-1 +kerning first=209 second=8249 amount=-1 +kerning first=198 second=364 amount=-1 +kerning first=217 second=338 amount=-1 +kerning first=1039 second=1031 amount=-1 +kerning first=77 second=351 amount=-1 +kerning first=362 second=231 amount=-1 +kerning first=67 second=217 amount=-1 +kerning first=97 second=283 amount=-1 +kerning first=353 second=8249 amount=-1 +kerning first=1038 second=1089 amount=-1 +kerning first=240 second=8222 amount=-1 +kerning first=253 second=45 amount=-1 +kerning first=214 second=274 amount=-1 +kerning first=289 second=45 amount=-1 +kerning first=207 second=298 amount=-1 +kerning first=197 second=286 amount=-1 +kerning first=1042 second=1068 amount=-1 +kerning first=73 second=274 amount=-1 +kerning first=217 second=171 amount=-2 +kerning first=217 second=45 amount=-2 +kerning first=368 second=192 amount=-1 +kerning first=289 second=171 amount=-1 +kerning first=233 second=113 amount=-1 +kerning first=325 second=45 amount=-1 +kerning first=269 second=113 amount=-1 +kerning first=281 second=104 amount=-1 +kerning first=201 second=70 amount=-1 +kerning first=220 second=235 amount=-1 +kerning first=328 second=235 amount=-1 +kerning first=218 second=315 amount=-1 +kerning first=364 second=235 amount=-1 +kerning first=1060 second=1069 amount=-1 +kerning first=286 second=274 amount=-1 +kerning first=207 second=226 amount=-1 +kerning first=333 second=318 amount=-1 +kerning first=199 second=344 amount=-1 +kerning first=69 second=355 amount=-1 +kerning first=206 second=337 amount=-1 +kerning first=45 second=367 amount=-1 +kerning first=207 second=231 amount=-1 +kerning first=217 second=252 amount=-1 +kerning first=1053 second=1053 amount=-1 +kerning first=87 second=284 amount=-1 +kerning first=1054 second=1059 amount=-1 +kerning first=289 second=252 amount=-1 +kerning first=74 second=80 amount=-1 +kerning first=192 second=284 amount=-1 +kerning first=253 second=252 amount=-1 +kerning first=1030 second=1108 amount=-1 +kerning first=205 second=261 amount=-1 +kerning first=78 second=217 amount=-1 +kerning first=333 second=106 amount=-1 +kerning first=346 second=310 amount=-1 +kerning first=217 second=223 amount=-1 +kerning first=279 second=231 amount=-1 +kerning first=219 second=217 amount=-1 +kerning first=274 second=310 amount=-1 +kerning first=229 second=243 amount=-1 +kerning first=86 second=71 amount=-1 +kerning first=8218 second=311 amount=-1 +kerning first=118 second=353 amount=-1 +kerning first=85 second=81 amount=-1 +kerning first=65 second=45 amount=-1 +kerning first=278 second=45 amount=-1 +kerning first=255 second=249 amount=-1 +kerning first=81 second=221 amount=-1 +kerning first=296 second=332 amount=-1 +kerning first=314 second=45 amount=-1 +kerning first=291 second=249 amount=-1 +kerning first=325 second=330 amount=-1 +kerning first=80 second=214 amount=-1 +kerning first=231 second=235 amount=-1 +kerning first=1044 second=1028 amount=-1 +kerning first=267 second=235 amount=-1 +kerning first=231 second=240 amount=-1 +kerning first=99 second=275 amount=-1 +kerning first=1066 second=1050 amount=-1 +kerning first=323 second=80 amount=-1 +kerning first=267 second=240 amount=-1 +kerning first=211 second=362 amount=-1 +kerning first=1058 second=1040 amount=-1 +kerning first=339 second=235 amount=-1 +kerning first=1030 second=1050 amount=-1 +kerning first=204 second=275 amount=-1 +kerning first=368 second=332 amount=-1 +kerning first=8218 second=84 amount=-1 +kerning first=209 second=223 amount=-1 +kerning first=345 second=97 amount=-1 +kerning first=66 second=338 amount=-1 +kerning first=305 second=232 amount=-1 +kerning first=272 second=323 amount=-1 +kerning first=269 second=232 amount=-1 +kerning first=1053 second=1080 amount=-1 +kerning first=74 second=107 amount=-1 +kerning first=233 second=232 amount=-1 +kerning first=66 second=199 amount=-1 +kerning first=200 second=323 amount=-1 +kerning first=187 second=119 amount=-1 +kerning first=66 second=258 amount=-1 +kerning first=199 second=317 amount=-1 +kerning first=201 second=336 amount=-1 +kerning first=287 second=107 amount=-1 +kerning first=89 second=250 amount=-1 +kerning first=207 second=199 amount=-1 +kerning first=1057 second=1044 amount=-1 +kerning first=364 second=370 amount=-1 +kerning first=187 second=326 amount=-1 +kerning first=260 second=8250 amount=-1 +kerning first=334 second=256 amount=-1 +kerning first=116 second=226 amount=-1 +kerning first=107 second=314 amount=-1 +kerning first=195 second=368 amount=-1 +kerning first=100 second=234 amount=-1 +kerning first=201 second=325 amount=-1 +kerning first=275 second=116 amount=-1 +kerning first=119 second=8250 amount=-1 +kerning first=192 second=311 amount=-1 +kerning first=219 second=249 amount=-1 +kerning first=205 second=234 amount=-1 +kerning first=83 second=8250 amount=-1 +kerning first=1048 second=1105 amount=-1 +kerning first=73 second=331 amount=-1 +kerning first=227 second=233 amount=-1 +kerning first=354 second=122 amount=-1 +kerning first=1105 second=1119 amount=-1 +kerning first=277 second=234 amount=-1 +kerning first=1062 second=1088 amount=-1 +kerning first=248 second=314 amount=-1 +kerning first=72 second=327 amount=-1 +kerning first=241 second=234 amount=-1 +kerning first=221 second=241 amount=-1 +kerning first=199 second=110 amount=-1 +kerning first=327 second=217 amount=-1 +kerning first=213 second=327 amount=-1 +kerning first=263 second=98 amount=-1 +kerning first=231 second=267 amount=-1 +kerning first=278 second=72 amount=-1 +kerning first=80 second=241 amount=-1 +kerning first=8218 second=338 amount=-1 +kerning first=193 second=216 amount=-1 +kerning first=1067 second=1036 amount=-1 +kerning first=1044 second=1094 amount=-1 +kerning first=1031 second=1036 amount=-1 +kerning first=254 second=316 amount=-1 +kerning first=284 second=114 amount=-1 +kerning first=1050 second=1097 amount=-1 +kerning first=1036 second=1114 amount=-1 +kerning first=248 second=114 amount=-1 +kerning first=70 second=101 amount=-1 +kerning first=281 second=250 amount=-1 +kerning first=1041 second=1062 amount=-1 +kerning first=374 second=109 amount=-1 +kerning first=217 second=225 amount=-1 +kerning first=70 second=335 amount=-1 +kerning first=267 second=267 amount=-1 +kerning first=204 second=302 amount=-1 +kerning first=325 second=225 amount=-1 +kerning first=79 second=370 amount=-1 +kerning first=196 second=46 amount=-1 +kerning first=106 second=101 amount=-1 +kerning first=71 second=114 amount=-1 +kerning first=8250 second=192 amount=-1 +kerning first=339 second=267 amount=-1 +kerning first=225 second=318 amount=-1 +kerning first=283 second=335 amount=-1 +kerning first=261 second=318 amount=-1 +kerning first=268 second=46 amount=-1 +kerning first=89 second=290 amount=-1 +kerning first=283 second=101 amount=-1 +kerning first=194 second=81 amount=-1 +kerning first=206 second=353 amount=-1 +kerning first=89 second=81 amount=-1 +kerning first=302 second=81 amount=-1 +kerning first=368 second=78 amount=-1 +kerning first=338 second=81 amount=-1 +kerning first=200 second=296 amount=-1 +kerning first=72 second=273 amount=-1 +kerning first=346 second=364 amount=-1 +kerning first=1068 second=1064 amount=-1 +kerning first=266 second=81 amount=-1 +kerning first=263 second=44 amount=-1 +kerning first=269 second=8222 amount=-1 +kerning first=8218 second=284 amount=-1 +kerning first=86 second=281 amount=-1 +kerning first=1065 second=1098 amount=-1 +kerning first=374 second=81 amount=-1 +kerning first=296 second=78 amount=-1 +kerning first=106 second=44 amount=-1 +kerning first=1041 second=1114 amount=-1 +kerning first=8250 second=332 amount=-1 +kerning first=206 second=72 amount=-1 +kerning first=335 second=44 amount=-1 +kerning first=366 second=227 amount=-1 +kerning first=328 second=291 amount=-1 +kerning first=330 second=227 amount=-1 +kerning first=298 second=346 amount=-1 +kerning first=1048 second=1107 amount=-1 +kerning first=201 second=282 amount=-1 +kerning first=262 second=346 amount=-1 +kerning first=248 second=287 amount=-1 +kerning first=205 second=288 amount=-1 +kerning first=1055 second=1100 amount=-1 +kerning first=67 second=352 amount=-1 +kerning first=85 second=346 amount=-1 +kerning first=281 second=252 amount=-1 +kerning first=199 second=83 amount=-1 +kerning first=1047 second=1119 amount=-1 +kerning first=97 second=337 amount=-1 +kerning first=83 second=278 amount=-1 +kerning first=369 second=291 amount=-1 +kerning first=333 second=291 amount=-1 +kerning first=264 second=230 amount=-1 +kerning first=261 second=291 amount=-1 +kerning first=225 second=291 amount=-1 +kerning first=370 second=346 amount=-1 +kerning first=120 second=291 amount=-1 +kerning first=87 second=230 amount=-1 +kerning first=87 second=257 amount=-1 +kerning first=81 second=200 amount=-1 +kerning first=1047 second=1055 amount=-1 +kerning first=289 second=279 amount=-1 +kerning first=70 second=74 amount=-1 +kerning first=108 second=246 amount=-1 +kerning first=368 second=278 amount=-1 +kerning first=45 second=200 amount=-1 +kerning first=325 second=279 amount=-1 +kerning first=72 second=246 amount=-1 +kerning first=72 second=115 amount=-1 +kerning first=266 second=108 amount=-1 +kerning first=217 second=279 amount=-1 +kerning first=290 second=317 amount=-1 +kerning first=296 second=278 amount=-1 +kerning first=1104 second=1091 amount=-1 +kerning first=352 second=325 amount=-1 +kerning first=70 second=362 amount=-1 +kerning first=8222 second=361 amount=-1 +kerning first=192 second=84 amount=-1 +kerning first=217 second=231 amount=-1 +kerning first=80 second=187 amount=-1 +kerning first=115 second=316 amount=-1 +kerning first=73 second=382 amount=-1 +kerning first=206 second=99 amount=-1 +kerning first=204 second=75 amount=-1 +kerning first=330 second=200 amount=-1 +kerning first=1076 second=1103 amount=-1 +kerning first=101 second=99 amount=-1 +kerning first=213 second=8218 amount=-1 +kerning first=204 second=109 amount=-1 +kerning first=314 second=99 amount=-1 +kerning first=75 second=266 amount=-1 +kerning first=1080 second=1095 amount=-1 +kerning first=187 second=65 amount=-1 +kerning first=72 second=8218 amount=-1 +kerning first=221 second=187 amount=-1 +kerning first=259 second=380 amount=-1 +kerning first=223 second=380 amount=-1 +kerning first=112 second=8220 amount=-2 +kerning first=1041 second=1098 amount=-1 +kerning first=240 second=248 amount=-1 +kerning first=268 second=334 amount=-1 +kerning first=277 second=367 amount=-1 +kerning first=1059 second=1108 amount=-1 +kerning first=213 second=202 amount=-1 +kerning first=196 second=334 amount=-1 +kerning first=86 second=44 amount=-1 +kerning first=270 second=218 amount=-1 +kerning first=212 second=260 amount=-1 +kerning first=230 second=333 amount=-1 +kerning first=362 second=117 amount=-1 +kerning first=323 second=218 amount=-1 +kerning first=289 second=281 amount=-1 +kerning first=198 second=218 amount=-1 +kerning first=204 second=248 amount=-1 +kerning first=304 second=334 amount=-1 +kerning first=99 second=8220 amount=-2 +kerning first=310 second=364 amount=-1 +kerning first=282 second=209 amount=-1 +kerning first=1055 second=1092 amount=-1 +kerning first=274 second=364 amount=-1 +kerning first=258 second=367 amount=-1 +kerning first=80 second=193 amount=-1 +kerning first=67 second=325 amount=-1 +kerning first=210 second=209 amount=-1 +kerning first=366 second=367 amount=-1 +kerning first=202 second=364 amount=-1 +kerning first=288 second=66 amount=-1 +kerning first=264 second=257 amount=-1 +kerning first=194 second=108 amount=-1 +kerning first=1068 second=1042 amount=-1 +kerning first=195 second=121 amount=-1 +kerning first=240 second=8220 amount=-2 +kerning first=200 second=69 amount=-1 +kerning first=230 second=108 amount=-1 +kerning first=69 second=209 amount=-1 +kerning first=187 second=380 amount=-1 +kerning first=224 second=232 amount=-1 +kerning first=338 second=68 amount=-1 +kerning first=68 second=196 amount=-1 +kerning first=45 second=212 amount=-1 +kerning first=272 second=69 amount=-1 +kerning first=1053 second=1107 amount=-1 +kerning first=366 second=69 amount=-1 +kerning first=353 second=8217 amount=-2 +kerning first=255 second=108 amount=-1 +kerning first=80 second=290 amount=-1 +kerning first=330 second=69 amount=-1 +kerning first=288 second=364 amount=-1 +kerning first=70 second=264 amount=-1 +kerning first=83 second=251 amount=-1 +kerning first=119 second=251 amount=-1 +kerning first=221 second=290 amount=-1 +kerning first=208 second=8221 amount=-2 +kerning first=278 second=338 amount=-1 +kerning first=1049 second=1039 amount=-1 +kerning first=234 second=277 amount=-1 +kerning first=368 second=251 amount=-1 +kerning first=245 second=8217 amount=-2 +kerning first=231 second=316 amount=-1 +kerning first=206 second=338 amount=-1 +kerning first=67 second=8221 amount=-1 +kerning first=1058 second=1072 amount=-1 +kerning first=317 second=8217 amount=-1 +kerning first=1051 second=1079 amount=-1 +kerning first=103 second=8221 amount=-2 +kerning first=45 second=69 amount=-1 +kerning first=330 second=286 amount=-1 +kerning first=267 second=316 amount=-1 +kerning first=366 second=286 amount=-1 +kerning first=375 second=316 amount=-1 +kerning first=339 second=316 amount=-1 +kerning first=235 second=273 amount=-1 +kerning first=81 second=69 amount=-1 +kerning first=65 second=338 amount=-1 +kerning first=280 second=8221 amount=-1 +kerning first=199 second=273 amount=-1 +kerning first=84 second=225 amount=-1 +kerning first=316 second=8221 amount=-1 +kerning first=68 second=82 amount=-1 +kerning first=231 second=99 amount=-1 +kerning first=374 second=347 amount=-1 +kerning first=209 second=82 amount=-1 +kerning first=8218 second=225 amount=-1 +kerning first=258 second=286 amount=-1 +kerning first=210 second=78 amount=-1 +kerning first=66 second=117 amount=-1 +kerning first=228 second=171 amount=-1 +kerning first=1048 second=1056 amount=-1 +kerning first=264 second=171 amount=-1 +kerning first=282 second=78 amount=-1 +kerning first=1071 second=1069 amount=-1 +kerning first=1044 second=1086 amount=-1 +kerning first=217 second=333 amount=-1 +kerning first=243 second=114 amount=-1 +kerning first=1058 second=1082 amount=-1 +kerning first=264 second=355 amount=-1 +kerning first=69 second=78 amount=-1 +kerning first=187 second=282 amount=-1 +kerning first=290 second=73 amount=-1 +kerning first=68 second=8217 amount=-2 +kerning first=219 second=325 amount=-1 +kerning first=279 second=117 amount=-1 +kerning first=8250 second=278 amount=-1 +kerning first=204 second=346 amount=-1 +kerning first=356 second=233 amount=-1 +kerning first=87 second=171 amount=-2 +kerning first=192 second=171 amount=-1 +kerning first=327 second=325 amount=-1 +kerning first=325 second=362 amount=-1 +kerning first=87 second=382 amount=-1 +kerning first=203 second=220 amount=-1 +kerning first=80 second=100 amount=-1 +kerning first=278 second=216 amount=-1 +kerning first=280 second=330 amount=-1 +kerning first=327 second=298 amount=-1 +kerning first=228 second=382 amount=-1 +kerning first=67 second=330 amount=-1 +kerning first=307 second=246 amount=-1 +kerning first=198 second=304 amount=-1 +kerning first=264 second=382 amount=-1 +kerning first=266 second=103 amount=-1 +kerning first=271 second=246 amount=-1 +kerning first=80 second=263 amount=-1 +kerning first=230 second=103 amount=-1 +kerning first=235 second=246 amount=-1 +kerning first=270 second=304 amount=-1 +kerning first=111 second=120 amount=-1 +kerning first=221 second=100 amount=-1 +kerning first=199 second=246 amount=-1 +kerning first=364 second=77 amount=-1 +kerning first=307 second=8218 amount=-1 +kerning first=74 second=211 amount=-1 +kerning first=230 second=245 amount=-1 +kerning first=89 second=103 amount=-1 +kerning first=350 second=365 amount=-1 +kerning first=368 second=224 amount=-1 +kerning first=304 second=68 amount=-1 +kerning first=289 second=333 amount=-1 +kerning first=67 second=82 amount=-1 +kerning first=325 second=333 amount=-1 +kerning first=8222 second=366 amount=-1 +kerning first=278 second=365 amount=-1 +kerning first=296 second=224 amount=-1 +kerning first=267 second=289 amount=-1 +kerning first=330 second=313 amount=-1 +kerning first=1043 second=1113 amount=-1 +kerning first=325 second=203 amount=-1 +kerning first=231 second=289 amount=-1 +kerning first=366 second=313 amount=-1 +kerning first=211 second=86 amount=-1 +kerning first=339 second=289 amount=-1 +kerning first=65 second=365 amount=-1 +kerning first=268 second=68 amount=-1 +kerning first=101 second=365 amount=-1 +kerning first=98 second=8250 amount=-1 +kerning first=302 second=347 amount=-1 +kerning first=113 second=8220 amount=-2 +kerning first=233 second=281 amount=-1 +kerning first=1103 second=1095 amount=-1 +kerning first=77 second=85 amount=-1 +kerning first=77 second=8220 amount=-1 +kerning first=269 second=281 amount=-1 +kerning first=87 second=111 amount=-1 +kerning first=218 second=8220 amount=-1 +kerning first=305 second=281 amount=-1 +kerning first=305 second=118 amount=-1 +kerning first=266 second=347 amount=-1 +kerning first=290 second=8220 amount=-1 +kerning first=187 second=255 amount=-1 +kerning first=45 second=313 amount=-1 +kerning first=228 second=111 amount=-1 +kerning first=254 second=8220 amount=-2 +kerning first=289 second=369 amount=-1 +kerning first=81 second=313 amount=-1 +kerning first=323 second=211 amount=-1 +kerning first=264 second=111 amount=-1 +kerning first=362 second=8220 amount=-1 +kerning first=1031 second=1095 amount=-1 +kerning first=89 second=347 amount=-1 +kerning first=326 second=8220 amount=-2 +kerning first=1038 second=1057 amount=-1 +kerning first=1071 second=1042 amount=-1 +kerning first=370 second=233 amount=-1 +kerning first=220 second=77 amount=-1 +kerning first=1049 second=1119 amount=-1 +kerning first=232 second=339 amount=-1 +kerning first=1048 second=1083 amount=-1 +kerning first=78 second=298 amount=-1 +kerning first=205 second=315 amount=-1 +kerning first=219 second=298 amount=-1 +kerning first=304 second=339 amount=-1 +kerning first=71 second=206 amount=-1 +kerning first=268 second=310 amount=-1 +kerning first=8250 second=251 amount=-1 +kerning first=197 second=118 amount=-1 +kerning first=284 second=206 amount=-1 +kerning first=78 second=271 amount=-1 +kerning first=266 second=76 amount=-1 +kerning first=378 second=8249 amount=-1 +kerning first=65 second=284 amount=-1 +kerning first=117 second=232 amount=-1 +kerning first=1059 second=1105 amount=-1 +kerning first=76 second=89 amount=-1 +kerning first=280 second=357 amount=-1 +kerning first=1118 second=1118 amount=-1 +kerning first=366 second=232 amount=-1 +kerning first=219 second=271 amount=-1 +kerning first=330 second=232 amount=-1 +kerning first=233 second=335 amount=-1 +kerning first=327 second=271 amount=-1 +kerning first=264 second=225 amount=-1 +kerning first=323 second=242 amount=-1 +kerning first=1071 second=1054 amount=-1 +kerning first=362 second=85 amount=-1 +kerning first=1043 second=1086 amount=-1 +kerning first=252 second=234 amount=-1 +kerning first=277 second=98 amount=-1 +kerning first=201 second=213 amount=-1 +kerning first=290 second=85 amount=-1 +kerning first=324 second=234 amount=-1 +kerning first=198 second=8249 amount=-1 +kerning first=272 second=8218 amount=-1 +kerning first=330 second=235 amount=-1 +kerning first=86 second=229 amount=-1 +kerning first=375 second=289 amount=-1 +kerning first=368 second=197 amount=-1 +kerning first=221 second=46 amount=-1 +kerning first=1031 second=1068 amount=-1 +kerning first=268 second=366 amount=-1 +kerning first=233 second=101 amount=-1 +kerning first=199 second=68 amount=-1 +kerning first=66 second=280 amount=-1 +kerning first=1078 second=1119 amount=-1 +kerning first=196 second=366 amount=-1 +kerning first=278 second=67 amount=-1 +kerning first=8222 second=314 amount=-1 +kerning first=8218 second=226 amount=-1 +kerning first=80 second=344 amount=-1 +kerning first=206 second=67 amount=-1 +kerning first=103 second=357 amount=-1 +kerning first=65 second=67 amount=-1 +kerning first=234 second=250 amount=-1 +kerning first=67 second=357 amount=-1 +kerning first=207 second=280 amount=-1 +kerning first=203 second=365 amount=-1 +kerning first=1055 second=1077 amount=-1 +kerning first=278 second=284 amount=-1 +kerning first=198 second=250 amount=-1 +kerning first=219 second=195 amount=-1 +kerning first=1042 second=1090 amount=-1 +kerning first=68 second=353 amount=-1 +kerning first=263 second=229 amount=-1 +kerning first=209 second=353 amount=-1 +kerning first=80 second=46 amount=-2 +kerning first=1047 second=1114 amount=-1 +kerning first=330 second=259 amount=-1 +kerning first=259 second=333 amount=-1 +kerning first=281 second=353 amount=-1 +kerning first=302 second=76 amount=-1 +kerning first=206 second=284 amount=-1 +kerning first=338 second=76 amount=-1 +kerning first=288 second=207 amount=-1 +kerning first=370 second=70 amount=-1 +kerning first=366 second=259 amount=-1 +kerning first=325 second=116 amount=-1 +kerning first=289 second=116 amount=-1 +kerning first=195 second=213 amount=-1 +kerning first=65 second=311 amount=-1 +kerning first=1051 second=1071 amount=-1 +kerning first=277 second=369 amount=-1 +kerning first=101 second=311 amount=-1 +kerning first=1064 second=1053 amount=-1 +kerning first=262 second=70 amount=-1 +kerning first=232 second=122 amount=-1 +kerning first=1042 second=1117 amount=-1 +kerning first=78 second=244 amount=-1 +kerning first=298 second=70 amount=-1 +kerning first=268 second=122 amount=-1 +kerning first=334 second=70 amount=-1 +kerning first=187 second=203 amount=-1 +kerning first=229 second=378 amount=-1 +kerning first=219 second=244 amount=-1 +kerning first=316 second=113 amount=-1 +kerning first=66 second=204 amount=-1 +kerning first=8218 second=252 amount=-1 +kerning first=270 second=8222 amount=-1 +kerning first=291 second=244 amount=-1 +kerning first=187 second=201 amount=-1 +kerning first=234 second=8222 amount=-1 +kerning first=327 second=244 amount=-1 +kerning first=103 second=113 amount=-1 +kerning first=212 second=366 amount=-1 +kerning first=217 second=116 amount=-1 +kerning first=198 second=8222 amount=-1 +kerning first=363 second=244 amount=-1 +kerning first=337 second=378 amount=-1 +kerning first=207 second=204 amount=-1 +kerning first=225 second=316 amount=-1 +kerning first=67 second=113 amount=-1 +kerning first=88 second=85 amount=-1 +kerning first=195 second=262 amount=-1 +kerning first=250 second=244 amount=-1 +kerning first=1042 second=1102 amount=-1 +kerning first=108 second=108 amount=-1 +kerning first=362 second=302 amount=-1 +kerning first=1050 second=1102 amount=-1 +kerning first=220 second=71 amount=-1 +kerning first=1055 second=1050 amount=-1 +kerning first=1058 second=1104 amount=-1 +kerning first=290 second=302 amount=-1 +kerning first=1036 second=1038 amount=-1 +kerning first=72 second=332 amount=-1 +kerning first=86 second=256 amount=-1 +kerning first=282 second=268 amount=-1 +kerning first=218 second=302 amount=-1 +kerning first=305 second=335 amount=-1 +kerning first=70 second=210 amount=-1 +kerning first=77 second=302 amount=-1 +kerning first=210 second=278 amount=-1 +kerning first=269 second=335 amount=-1 +kerning first=193 second=107 amount=-1 +kerning first=1047 second=1087 amount=-1 +kerning first=8220 second=347 amount=-1 +kerning first=1039 second=1053 amount=-1 +kerning first=69 second=268 amount=-1 +kerning first=72 second=83 amount=-1 +kerning first=206 second=77 amount=-1 +kerning first=45 second=362 amount=-1 +kerning first=74 second=75 amount=-1 +kerning first=211 second=354 amount=-1 +kerning first=1071 second=1070 amount=-1 +kerning first=210 second=187 amount=-1 +kerning first=246 second=187 amount=-1 +kerning first=89 second=244 amount=-1 +kerning first=370 second=97 amount=-1 +kerning first=45 second=75 amount=-1 +kerning first=213 second=8250 amount=-1 +kerning first=1041 second=1067 amount=-1 +kerning first=230 second=244 amount=-1 +kerning first=258 second=362 amount=-1 +kerning first=8250 second=197 amount=-1 +kerning first=220 second=213 amount=-1 +kerning first=266 second=244 amount=-1 +kerning first=1067 second=1041 amount=-1 +kerning first=87 second=279 amount=-1 +kerning first=302 second=244 amount=-1 +kerning first=72 second=8250 amount=-1 +kerning first=1031 second=1041 amount=-1 +kerning first=227 second=283 amount=-1 +kerning first=86 second=283 amount=-1 +kerning first=374 second=244 amount=-1 +kerning first=83 second=327 amount=-1 +kerning first=205 second=266 amount=-1 +kerning first=364 second=213 amount=-1 +kerning first=105 second=187 amount=-1 +kerning first=264 second=279 amount=-1 +kerning first=8217 second=120 amount=-1 +kerning first=187 second=211 amount=-1 +kerning first=69 second=187 amount=-1 +kerning first=228 second=279 amount=-1 +kerning first=1075 second=1102 amount=-1 +kerning first=80 second=209 amount=-1 +kerning first=116 second=113 amount=-1 +kerning first=296 second=327 amount=-1 +kerning first=195 second=288 amount=-1 +kerning first=362 second=115 amount=-1 +kerning first=368 second=327 amount=-1 +kerning first=1042 second=1036 amount=-1 +kerning first=283 second=367 amount=-1 +kerning first=69 second=371 amount=-1 +kerning first=270 second=196 amount=-1 +kerning first=73 second=79 amount=-1 +kerning first=263 second=283 amount=-1 +kerning first=317 second=218 amount=-1 +kerning first=296 second=110 amount=-1 +kerning first=70 second=367 amount=-1 +kerning first=330 second=205 amount=-1 +kerning first=85 second=70 amount=-1 +kerning first=204 second=270 amount=-1 +kerning first=368 second=110 amount=-1 +kerning first=275 second=335 amount=-1 +kerning first=325 second=257 amount=-1 +kerning first=203 second=274 amount=-1 +kerning first=234 second=380 amount=-1 +kerning first=85 second=317 amount=-1 +kerning first=366 second=205 amount=-1 +kerning first=338 second=296 amount=-1 +kerning first=219 second=367 amount=-1 +kerning first=82 second=114 amount=-1 +kerning first=192 second=252 amount=-1 +kerning first=1049 second=1047 amount=-1 +kerning first=187 second=114 amount=-1 +kerning first=362 second=226 amount=-1 +kerning first=217 second=284 amount=-1 +kerning first=1030 second=1072 amount=-1 +kerning first=118 second=114 amount=-1 +kerning first=367 second=8249 amount=-1 +kerning first=1040 second=1098 amount=-1 +kerning first=45 second=205 amount=-1 +kerning first=81 second=205 amount=-1 +kerning first=232 second=231 amount=-1 +kerning first=268 second=231 amount=-1 +kerning first=194 second=217 amount=-1 +kerning first=304 second=231 amount=-1 +kerning first=266 second=217 amount=-1 +kerning first=69 second=214 amount=-1 +kerning first=69 second=344 amount=-1 +kerning first=302 second=217 amount=-1 +kerning first=210 second=344 amount=-1 +kerning first=338 second=217 amount=-1 +kerning first=87 second=252 amount=-1 +kerning first=282 second=344 amount=-1 +kerning first=118 second=8249 amount=-1 +kerning first=280 second=249 amount=-1 +kerning first=206 second=235 amount=-1 +kerning first=316 second=249 amount=-1 +kerning first=243 second=8218 amount=-1 +kerning first=270 second=353 amount=-1 +kerning first=352 second=249 amount=-1 +kerning first=365 second=248 amount=-1 +kerning first=1052 second=1089 amount=-1 +kerning first=234 second=353 amount=-1 +kerning first=1050 second=1091 amount=-1 +kerning first=103 second=249 amount=-1 +kerning first=200 second=345 amount=-1 +kerning first=75 second=71 amount=-1 +kerning first=229 second=275 amount=-1 +kerning first=366 second=362 amount=-1 +kerning first=204 second=80 amount=-1 +kerning first=330 second=362 amount=-1 +kerning first=344 second=345 amount=-1 +kerning first=262 second=97 amount=-1 +kerning first=99 second=243 amount=-1 +kerning first=298 second=97 amount=-1 +kerning first=231 second=45 amount=-1 +kerning first=77 second=226 amount=-1 +kerning first=325 second=284 amount=-1 +kerning first=296 second=83 amount=-1 +kerning first=198 second=223 amount=-1 +kerning first=377 second=8217 amount=-1 +kerning first=1064 second=1080 amount=-1 +kerning first=72 second=278 amount=-1 +kerning first=8250 second=381 amount=-1 +kerning first=8250 second=366 amount=-1 +kerning first=1028 second=1080 amount=-1 +kerning first=218 second=226 amount=-1 +kerning first=240 second=243 amount=-1 +kerning first=1042 second=1063 amount=-1 +kerning first=77 second=199 amount=-1 +kerning first=104 second=245 amount=-1 +kerning first=1049 second=1079 amount=-1 +kerning first=263 second=337 amount=-1 +kerning first=86 second=120 amount=-1 +kerning first=213 second=278 amount=-1 +kerning first=227 second=337 amount=-1 +kerning first=192 second=107 amount=-1 +kerning first=1078 second=1079 amount=-1 +kerning first=368 second=8218 amount=-2 +kerning first=66 second=361 amount=-1 +kerning first=86 second=337 amount=-1 +kerning first=263 second=120 amount=-1 +kerning first=362 second=199 amount=-1 +kerning first=8250 second=327 amount=-1 +kerning first=119 second=8218 amount=-1 +kerning first=84 second=269 amount=-1 +kerning first=83 second=8218 amount=-1 +kerning first=332 second=8218 amount=-1 +kerning first=281 second=245 amount=-1 +kerning first=98 second=291 amount=-1 +kerning first=80 second=88 amount=-1 +kerning first=261 second=269 amount=-1 +kerning first=209 second=245 amount=-1 +kerning first=193 second=221 amount=-1 +kerning first=1036 second=1092 amount=-1 +kerning first=99 second=324 amount=-1 +kerning first=352 second=330 amount=-1 +kerning first=369 second=269 amount=-1 +kerning first=8250 second=110 amount=-1 +kerning first=258 second=118 amount=-1 +kerning first=217 second=203 amount=-1 +kerning first=70 second=313 amount=-1 +kerning first=275 second=111 amount=-1 +kerning first=337 second=8220 amount=-2 +kerning first=212 second=65 amount=-1 +kerning first=233 second=254 amount=-1 +kerning first=356 second=8222 amount=-1 +kerning first=194 second=374 amount=-1 +kerning first=335 second=120 amount=-1 +kerning first=374 second=337 amount=-1 +kerning first=221 second=263 amount=-1 +kerning first=328 second=267 amount=-1 +kerning first=367 second=114 amount=-1 +kerning first=350 second=8249 amount=-1 +kerning first=257 second=263 amount=-1 +kerning first=364 second=267 amount=-1 +kerning first=1077 second=1094 amount=-1 +kerning first=1064 second=1107 amount=-1 +kerning first=45 second=118 amount=-1 +kerning first=205 second=212 amount=-1 +kerning first=259 second=114 amount=-1 +kerning first=365 second=263 amount=-1 +kerning first=88 second=8220 amount=-1 +kerning first=267 second=314 amount=-1 +kerning first=223 second=114 amount=-1 +kerning first=280 second=264 amount=-1 +kerning first=8217 second=364 amount=-1 +kerning first=220 second=267 amount=-1 +kerning first=288 second=315 amount=-1 +kerning first=193 second=8220 amount=-2 +kerning first=195 second=370 amount=-1 +kerning first=211 second=69 amount=-1 +kerning first=86 second=361 amount=-1 +kerning first=8250 second=354 amount=-1 +kerning first=368 second=273 amount=-1 +kerning first=8220 second=217 amount=-1 +kerning first=8222 second=370 amount=-1 +kerning first=1049 second=1052 amount=-1 +kerning first=219 second=81 amount=-1 +kerning first=296 second=273 amount=-1 +kerning first=78 second=81 amount=-1 +kerning first=108 second=251 amount=-1 +kerning first=70 second=69 amount=-1 +kerning first=86 second=45 amount=-2 +kerning first=218 second=355 amount=-1 +kerning first=327 second=81 amount=-1 +kerning first=75 second=44 amount=-1 +kerning first=84 second=281 amount=-1 +kerning first=66 second=334 amount=-1 +kerning first=275 second=355 amount=-1 +kerning first=209 second=218 amount=-1 +kerning first=8218 second=89 amount=-2 +kerning first=203 second=355 amount=-1 +kerning first=207 second=334 amount=-1 +kerning first=89 second=8217 amount=-1 +kerning first=199 second=78 amount=-1 +kerning first=229 second=248 amount=-1 +kerning first=198 second=72 amount=-1 +kerning first=288 second=44 amount=-1 +kerning first=1054 second=1027 amount=-1 +kerning first=216 second=44 amount=-1 +kerning first=225 second=242 amount=-1 +kerning first=339 second=99 amount=-1 +kerning first=78 second=352 amount=-1 +kerning first=261 second=242 amount=-1 +kerning first=74 second=346 amount=-1 +kerning first=267 second=99 amount=-1 +kerning first=219 second=352 amount=-1 +kerning first=1034 second=1024 amount=-1 +kerning first=217 second=230 amount=-1 +kerning first=1070 second=1024 amount=-1 +kerning first=325 second=230 amount=-1 +kerning first=214 second=187 amount=-1 +kerning first=8222 second=339 amount=-1 +kerning first=71 second=282 amount=-1 +kerning first=323 second=290 amount=-1 +kerning first=264 second=8221 amount=-1 +kerning first=327 second=352 amount=-1 +kerning first=78 second=332 amount=-1 +kerning first=323 second=346 amount=-1 +kerning first=82 second=87 amount=-1 +kerning first=8218 second=333 amount=-1 +kerning first=187 second=87 amount=-2 +kerning first=75 second=288 amount=-1 +kerning first=1031 second=1107 amount=-1 +kerning first=205 second=230 amount=-1 +kerning first=1033 second=1052 amount=-1 +kerning first=264 second=233 amount=-1 +kerning first=262 second=288 amount=-1 +kerning first=298 second=288 amount=-1 +kerning first=8218 second=220 amount=-1 +kerning first=304 second=333 amount=-1 +kerning first=249 second=291 amount=-1 +kerning first=68 second=87 amount=-1 +kerning first=1069 second=1052 amount=-1 +kerning first=199 second=81 amount=-1 +kerning first=1059 second=1046 amount=-1 +kerning first=108 second=291 amount=-1 +kerning first=231 second=224 amount=-1 +kerning first=250 second=337 amount=-1 +kerning first=354 second=8218 amount=-1 +kerning first=86 second=334 amount=-1 +kerning first=1066 second=1061 amount=-1 +kerning first=218 second=227 amount=-1 +kerning first=1034 second=1098 amount=-1 +kerning first=109 second=337 amount=-1 +kerning first=1042 second=1027 amount=-1 +kerning first=73 second=337 amount=-1 +kerning first=85 second=288 amount=-1 +kerning first=81 second=84 amount=-1 +kerning first=77 second=227 amount=-1 +kerning first=78 second=70 amount=-1 +kerning first=45 second=84 amount=-1 +kerning first=1051 second=1119 amount=-1 +kerning first=229 second=99 amount=-1 +kerning first=105 second=8218 amount=-1 +kerning first=269 second=8221 amount=-2 +kerning first=233 second=106 amount=-1 +kerning first=69 second=8218 amount=-1 +kerning first=305 second=8221 amount=-1 +kerning first=1053 second=1064 amount=-1 +kerning first=302 second=111 amount=-1 +kerning first=1047 second=1095 amount=-1 +kerning first=75 second=218 amount=-1 +kerning first=377 second=8221 amount=-1 +kerning first=282 second=8218 amount=-1 +kerning first=246 second=8218 amount=-1 +kerning first=210 second=8218 amount=-1 +kerning first=335 second=187 amount=-1 +kerning first=368 second=196 amount=-1 +kerning first=229 second=279 amount=-1 +kerning first=1044 second=1104 amount=-1 +kerning first=209 second=171 amount=-1 +kerning first=86 second=187 amount=-1 +kerning first=289 second=328 amount=-1 +kerning first=1042 second=1041 amount=-1 +kerning first=296 second=209 amount=-1 +kerning first=205 second=364 amount=-1 +kerning first=258 second=264 amount=-1 +kerning first=264 second=66 amount=-1 +kerning first=195 second=371 amount=-1 +kerning first=199 second=261 amount=-1 +kerning first=197 second=316 amount=-1 +kerning first=67 second=368 amount=-1 +kerning first=267 second=311 amount=-1 +kerning first=323 second=69 amount=-1 +kerning first=226 second=108 amount=-1 +kerning first=272 second=364 amount=-1 +kerning first=262 second=209 amount=-1 +kerning first=269 second=316 amount=-1 +kerning first=83 second=209 amount=-1 +kerning first=192 second=367 amount=-1 +kerning first=1050 second=1073 amount=-1 +kerning first=198 second=202 amount=-1 +kerning first=233 second=316 amount=-1 +kerning first=304 second=257 amount=-1 +kerning first=45 second=264 amount=-1 +kerning first=121 second=108 amount=-1 +kerning first=1052 second=1031 amount=-1 +kerning first=1050 second=1086 amount=-1 +kerning first=268 second=257 amount=-1 +kerning first=270 second=202 amount=-1 +kerning first=201 second=116 amount=-1 +kerning first=280 second=368 amount=-1 +kerning first=264 second=380 amount=-1 +kerning first=1049 second=1027 amount=-1 +kerning first=352 second=368 amount=-1 +kerning first=268 second=270 amount=-1 +kerning first=87 second=367 amount=-1 +kerning first=1031 second=1113 amount=-1 +kerning first=304 second=270 amount=-1 +kerning first=270 second=203 amount=-1 +kerning first=104 second=281 amount=-1 +kerning first=327 second=273 amount=-1 +kerning first=1119 second=1095 amount=-1 +kerning first=313 second=364 amount=-1 +kerning first=74 second=69 amount=-1 +kerning first=368 second=209 amount=-1 +kerning first=1039 second=1034 amount=-1 +kerning first=219 second=273 amount=-1 +kerning first=231 second=44 amount=-1 +kerning first=274 second=252 amount=-1 +kerning first=267 second=44 amount=-1 +kerning first=99 second=8249 amount=-1 +kerning first=280 second=355 amount=-1 +kerning first=346 second=252 amount=-1 +kerning first=78 second=273 amount=-1 +kerning first=362 second=214 amount=-1 +kerning first=310 second=252 amount=-1 +kerning first=375 second=44 amount=-1 +kerning first=212 second=78 amount=-1 +kerning first=87 second=380 amount=-1 +kerning first=80 second=205 amount=-1 +kerning first=228 second=380 amount=-1 +kerning first=284 second=78 amount=-1 +kerning first=67 second=355 amount=-1 +kerning first=362 second=227 amount=-1 +kerning first=213 second=8221 amount=-2 +kerning first=1071 second=1076 amount=-1 +kerning first=235 second=248 amount=-1 +kerning first=1047 second=1082 amount=-1 +kerning first=266 second=325 amount=-1 +kerning first=77 second=214 amount=-1 +kerning first=199 second=248 amount=-1 +kerning first=1033 second=1039 amount=-1 +kerning first=8218 second=233 amount=-1 +kerning first=70 second=346 amount=-1 +kerning first=307 second=248 amount=-1 +kerning first=338 second=325 amount=-1 +kerning first=71 second=78 amount=-1 +kerning first=271 second=248 amount=-1 +kerning first=67 second=224 amount=-1 +kerning first=317 second=87 amount=-1 +kerning first=202 second=252 amount=-1 +kerning first=218 second=214 amount=-1 +kerning first=187 second=357 amount=-1 +kerning first=283 second=333 amount=-1 +kerning first=86 second=347 amount=-1 +kerning first=85 second=352 amount=-1 +kerning first=192 second=220 amount=-1 +kerning first=1056 second=1042 amount=-1 +kerning first=1031 second=1092 amount=-1 +kerning first=1044 second=1117 amount=-1 +kerning first=73 second=350 amount=-1 +kerning first=8250 second=317 amount=-1 +kerning first=365 second=339 amount=-1 +kerning first=1066 second=1048 amount=-1 +kerning first=8217 second=334 amount=-1 +kerning first=199 second=382 amount=-1 +kerning first=101 second=289 amount=-1 +kerning first=1030 second=1048 amount=-1 +kerning first=355 second=333 amount=-1 +kerning first=235 second=382 amount=-1 +kerning first=242 second=289 amount=-1 +kerning first=304 second=103 amount=-1 +kerning first=99 second=171 amount=-1 +kerning first=368 second=330 amount=-1 +kerning first=268 second=103 amount=-1 +kerning first=264 second=246 amount=-1 +kerning first=209 second=100 amount=-1 +kerning first=314 second=289 amount=-1 +kerning first=232 second=103 amount=-1 +kerning first=228 second=246 amount=-1 +kerning first=8222 second=332 amount=-1 +kerning first=281 second=100 amount=-1 +kerning first=72 second=270 amount=-1 +kerning first=264 second=220 amount=-1 +kerning first=70 second=333 amount=-1 +kerning first=304 second=77 amount=-1 +kerning first=368 second=201 amount=-1 +kerning first=106 second=333 amount=-1 +kerning first=87 second=246 amount=-1 +kerning first=350 second=82 amount=-1 +kerning first=8222 second=378 amount=-1 +kerning first=1056 second=1068 amount=-1 +kerning first=296 second=330 amount=-1 +kerning first=268 second=77 amount=-1 +kerning first=67 second=273 amount=-1 +kerning first=274 second=85 amount=-1 +kerning first=275 second=333 amount=-1 +kerning first=266 second=338 amount=-1 +kerning first=202 second=85 amount=-1 +kerning first=213 second=304 amount=-1 +kerning first=194 second=338 amount=-1 +kerning first=271 second=8249 amount=-1 +kerning first=374 second=8217 amount=-1 +kerning first=246 second=120 amount=-1 +kerning first=89 second=338 amount=-1 +kerning first=195 second=211 amount=-1 +kerning first=72 second=304 amount=-1 +kerning first=282 second=313 amount=-1 +kerning first=220 second=332 amount=-1 +kerning first=271 second=382 amount=-1 +kerning first=1039 second=1065 amount=-1 +kerning first=187 second=364 amount=-1 +kerning first=221 second=339 amount=-1 +kerning first=203 second=298 amount=-1 +kerning first=1042 second=1025 amount=-1 +kerning first=242 second=8221 amount=-2 +kerning first=364 second=332 amount=-1 +kerning first=80 second=339 amount=-1 +kerning first=193 second=86 amount=-1 +kerning first=206 second=109 amount=-1 +kerning first=263 second=347 amount=-1 +kerning first=1030 second=1074 amount=-1 +kerning first=210 second=313 amount=-1 +kerning first=366 second=264 amount=-1 +kerning first=197 second=290 amount=-1 +kerning first=330 second=264 amount=-1 +kerning first=116 second=339 amount=-1 +kerning first=249 second=111 amount=-1 +kerning first=363 second=45 amount=-1 +kerning first=287 second=357 amount=-1 +kerning first=8222 second=231 amount=-1 +kerning first=1027 second=1083 amount=-1 +kerning first=256 second=8250 amount=-1 +kerning first=281 second=254 amount=-1 +kerning first=220 second=8250 amount=-2 +kerning first=69 second=313 amount=-1 +kerning first=323 second=357 amount=-1 +kerning first=73 second=203 amount=-1 +kerning first=187 second=323 amount=-1 +kerning first=79 second=8250 amount=-1 +kerning first=74 second=357 amount=-1 +kerning first=356 second=271 amount=-1 +kerning first=1071 second=1118 amount=-1 +kerning first=205 second=76 amount=-1 +kerning first=201 second=219 amount=-1 +kerning first=230 second=8217 amount=-2 +kerning first=217 second=315 amount=-1 +kerning first=266 second=8217 amount=-1 +kerning first=338 second=8217 amount=-1 +kerning first=74 second=262 amount=-1 +kerning first=217 second=97 amount=-1 +kerning first=108 second=111 amount=-1 +kerning first=235 second=363 amount=-1 +kerning first=346 second=85 amount=-1 +kerning first=99 second=104 amount=-1 +kerning first=194 second=8217 amount=-2 +kerning first=220 second=73 amount=-1 +kerning first=8218 second=367 amount=-1 +kerning first=325 second=315 amount=-1 +kerning first=70 second=212 amount=-1 +kerning first=77 second=330 amount=-1 +kerning first=68 second=280 amount=-1 +kerning first=101 second=263 amount=-1 +kerning first=8222 second=103 amount=-1 +kerning first=71 second=366 amount=-1 +kerning first=206 second=263 amount=-1 +kerning first=205 second=204 amount=-1 +kerning first=45 second=110 amount=-1 +kerning first=204 second=331 amount=-1 +kerning first=85 second=366 amount=-1 +kerning first=209 second=280 amount=-1 +kerning first=314 second=263 amount=-1 +kerning first=304 second=347 amount=-1 +kerning first=262 second=314 amount=-1 +kerning first=195 second=316 amount=-1 +kerning first=220 second=66 amount=-1 +kerning first=221 second=365 amount=-1 +kerning first=226 second=314 amount=-1 +kerning first=286 second=203 amount=-1 +kerning first=1071 second=1055 amount=-1 +kerning first=356 second=8249 amount=-1 +kerning first=327 second=8221 amount=-1 +kerning first=366 second=110 amount=-1 +kerning first=84 second=229 amount=-1 +kerning first=330 second=110 amount=-1 +kerning first=67 second=67 amount=-1 +kerning first=101 second=291 amount=-1 +kerning first=214 second=203 amount=-1 +kerning first=284 second=366 amount=-1 +kerning first=339 second=250 amount=-1 +kerning first=78 second=67 amount=-1 +kerning first=1047 second=1024 amount=-1 +kerning first=278 second=70 amount=-1 +kerning first=84 second=101 amount=-1 +kerning first=267 second=250 amount=-1 +kerning first=76 second=354 amount=-1 +kerning first=231 second=250 amount=-1 +kerning first=8222 second=290 amount=-1 +kerning first=350 second=70 amount=-1 +kerning first=8217 second=115 amount=-1 +kerning first=304 second=378 amount=-1 +kerning first=261 second=101 amount=-1 +kerning first=263 second=46 amount=-1 +kerning first=268 second=378 amount=-1 +kerning first=288 second=76 amount=-1 +kerning first=225 second=101 amount=-1 +kerning first=375 second=250 amount=-1 +kerning first=232 second=378 amount=-1 +kerning first=206 second=70 amount=-1 +kerning first=78 second=8217 amount=-1 +kerning first=114 second=8217 amount=-1 +kerning first=325 second=325 amount=-1 +kerning first=262 second=262 amount=-1 +kerning first=344 second=366 amount=-1 +kerning first=1039 second=1030 amount=-1 +kerning first=369 second=101 amount=-1 +kerning first=219 second=8217 amount=-1 +kerning first=1041 second=1087 amount=-1 +kerning first=195 second=250 amount=-1 +kerning first=304 second=296 amount=-1 +kerning first=352 second=367 amount=-1 +kerning first=1059 second=1072 amount=-1 +kerning first=207 second=201 amount=-1 +kerning first=298 second=262 amount=-1 +kerning first=268 second=296 amount=-1 +kerning first=45 second=375 amount=-1 +kerning first=370 second=262 amount=-1 +kerning first=73 second=45 amount=-1 +kerning first=99 second=249 amount=-1 +kerning first=45 second=354 amount=-1 +kerning first=8218 second=246 amount=-1 +kerning first=66 second=201 amount=-1 +kerning first=246 second=291 amount=-1 +kerning first=220 second=345 amount=-1 +kerning first=235 second=369 amount=-1 +kerning first=87 second=259 amount=-1 +kerning first=204 second=113 amount=-1 +kerning first=207 second=116 amount=-1 +kerning first=364 second=280 amount=-1 +kerning first=70 second=207 amount=-1 +kerning first=221 second=8250 amount=-1 +kerning first=1071 second=1105 amount=-1 +kerning first=338 second=204 amount=-1 +kerning first=1043 second=1084 amount=-1 +kerning first=328 second=345 amount=-1 +kerning first=302 second=204 amount=-1 +kerning first=364 second=345 amount=-1 +kerning first=266 second=204 amount=-1 +kerning first=264 second=259 amount=-1 +kerning first=118 second=103 amount=-1 +kerning first=307 second=287 amount=-1 +kerning first=204 second=210 amount=-1 +kerning first=230 second=345 amount=-1 +kerning first=271 second=287 amount=-1 +kerning first=278 second=274 amount=-1 +kerning first=281 second=113 amount=-1 +kerning first=264 second=207 amount=-1 +kerning first=235 second=287 amount=-1 +kerning first=72 second=317 amount=-1 +kerning first=82 second=336 amount=-1 +kerning first=209 second=113 amount=-1 +kerning first=219 second=67 amount=-1 +kerning first=201 second=366 amount=-1 +kerning first=213 second=317 amount=-1 +kerning first=187 second=336 amount=-1 +kerning first=104 second=113 amount=-1 +kerning first=364 second=8250 amount=-2 +kerning first=66 second=116 amount=-1 +kerning first=76 second=8220 amount=-1 +kerning first=218 second=73 amount=-1 +kerning first=232 second=244 amount=-1 +kerning first=369 second=281 amount=-1 +kerning first=1047 second=1056 amount=-1 +kerning first=1089 second=1103 amount=-1 +kerning first=268 second=244 amount=-1 +kerning first=269 second=97 amount=-1 +kerning first=304 second=244 amount=-1 +kerning first=362 second=73 amount=-1 +kerning first=274 second=278 amount=-1 +kerning first=325 second=8220 amount=-1 +kerning first=8217 second=216 amount=-1 +kerning first=86 second=213 amount=-1 +kerning first=289 second=8220 amount=-2 +kerning first=202 second=278 amount=-1 +kerning first=88 second=216 amount=-1 +kerning first=272 second=88 amount=-1 +kerning first=117 second=277 amount=-1 +kerning first=1050 second=1060 amount=-1 +kerning first=206 second=209 amount=-1 +kerning first=346 second=278 amount=-1 +kerning first=366 second=277 amount=-1 +kerning first=77 second=73 amount=-1 +kerning first=330 second=277 amount=-1 +kerning first=100 second=269 amount=-1 +kerning first=199 second=235 amount=-1 +kerning first=225 second=281 amount=-1 +kerning first=80 second=77 amount=-1 +kerning first=235 second=235 amount=-1 +kerning first=261 second=281 amount=-1 +kerning first=74 second=82 amount=-1 +kerning first=1056 second=1081 amount=-1 +kerning first=241 second=269 amount=-1 +kerning first=305 second=45 amount=-1 +kerning first=277 second=269 amount=-1 +kerning first=279 second=283 amount=-1 +kerning first=203 second=79 amount=-1 +kerning first=205 second=269 amount=-1 +kerning first=344 second=219 amount=-1 +kerning first=257 second=231 amount=-1 +kerning first=207 second=283 amount=-1 +kerning first=205 second=338 amount=-1 +kerning first=330 second=290 amount=-1 +kerning first=323 second=82 amount=-1 +kerning first=1047 second=1038 amount=-2 +kerning first=327 second=286 amount=-1 +kerning first=366 second=290 amount=-1 +kerning first=289 second=113 amount=-1 +kerning first=365 second=231 amount=-1 +kerning first=1053 second=1025 amount=-1 +kerning first=1056 second=1094 amount=-1 +kerning first=210 second=274 amount=-1 +kerning first=78 second=286 amount=-1 +kerning first=45 second=382 amount=-1 +kerning first=277 second=351 amount=-1 +kerning first=330 second=378 amount=-1 +kerning first=204 second=85 amount=-1 +kerning first=219 second=286 amount=-1 +kerning first=1059 second=1085 amount=-1 +kerning first=205 second=351 amount=-1 +kerning first=69 second=274 amount=-1 +kerning first=45 second=290 amount=-1 +kerning first=362 second=382 amount=-1 +kerning first=85 second=275 amount=-1 +kerning first=253 second=367 amount=-1 +kerning first=201 second=310 amount=-1 +kerning first=86 second=115 amount=-1 +kerning first=225 second=114 amount=-1 +kerning first=217 second=367 amount=-1 +kerning first=333 second=114 amount=-1 +kerning first=219 second=80 amount=-1 +kerning first=275 second=104 amount=-1 +kerning first=289 second=367 amount=-1 +kerning first=70 second=251 amount=-1 +kerning first=205 second=217 amount=-1 +kerning first=203 second=66 amount=-1 +kerning first=213 second=8222 amount=-1 +kerning first=327 second=80 amount=-1 +kerning first=270 second=310 amount=-1 +kerning first=80 second=231 amount=-1 +kerning first=69 second=205 amount=-1 +kerning first=116 second=231 amount=-1 +kerning first=283 second=251 amount=-1 +kerning first=209 second=213 amount=-1 +kerning first=198 second=310 amount=-1 +kerning first=65 second=121 amount=-1 +kerning first=221 second=231 amount=-1 +kerning first=8220 second=220 amount=-1 +kerning first=354 second=339 amount=-1 +kerning first=82 second=284 amount=-1 +kerning first=263 second=115 amount=-1 +kerning first=1071 second=1034 amount=-1 +kerning first=282 second=205 amount=-1 +kerning first=78 second=80 amount=-1 +kerning first=187 second=284 amount=-1 +kerning first=210 second=205 amount=-1 +kerning first=1049 second=1053 amount=-1 +kerning first=270 second=362 amount=-1 +kerning first=271 second=235 amount=-1 +kerning first=73 second=242 amount=-1 +kerning first=207 second=214 amount=-1 +kerning first=366 second=71 amount=-1 +kerning first=330 second=71 amount=-1 +kerning first=88 second=266 amount=-1 +kerning first=207 second=75 amount=-1 +kerning first=193 second=266 amount=-1 +kerning first=109 second=242 amount=-1 +kerning first=230 second=106 amount=-1 +kerning first=284 second=46 amount=-1 +kerning first=370 second=275 amount=-1 +kerning first=286 second=310 amount=-1 +kerning first=45 second=71 amount=-1 +kerning first=70 second=45 amount=-2 +kerning first=108 second=252 amount=-1 +kerning first=106 second=45 amount=-1 +kerning first=262 second=275 amount=-1 +kerning first=287 second=249 amount=-1 +kerning first=66 second=214 amount=-1 +kerning first=226 second=275 amount=-1 +kerning first=258 second=71 amount=-1 +kerning first=98 second=8218 amount=-1 +kerning first=355 second=45 amount=-1 +kerning first=198 second=362 amount=-1 +kerning first=8218 second=259 amount=-1 +kerning first=298 second=275 amount=-1 +kerning first=272 second=315 amount=-1 +kerning first=325 second=302 amount=-1 +kerning first=84 second=337 amount=-1 +kerning first=368 second=313 amount=-1 +kerning first=99 second=223 amount=-1 +kerning first=1068 second=1045 amount=-1 +kerning first=204 second=99 amount=-1 +kerning first=78 second=234 amount=-1 +kerning first=218 second=361 amount=-1 +kerning first=219 second=234 amount=-1 +kerning first=281 second=267 amount=-1 +kerning first=193 second=87 amount=-1 +kerning first=1102 second=1113 amount=-1 +kerning first=1034 second=1046 amount=-1 +kerning first=289 second=233 amount=-1 +kerning first=291 second=234 amount=-1 +kerning first=1070 second=1046 amount=-1 +kerning first=97 second=291 amount=-1 +kerning first=325 second=233 amount=-1 +kerning first=366 second=346 amount=-1 +kerning first=85 second=327 amount=-1 +kerning first=118 second=117 amount=-1 +kerning first=362 second=361 amount=-1 +kerning first=206 second=122 amount=-1 +kerning first=1068 second=1037 amount=-1 +kerning first=214 second=72 amount=-1 +kerning first=324 second=243 amount=-1 +kerning first=369 second=337 amount=-1 +kerning first=1076 second=1080 amount=-1 +kerning first=262 second=327 amount=-1 +kerning first=330 second=357 amount=-1 +kerning first=220 second=224 amount=-1 +kerning first=298 second=327 amount=-1 +kerning first=280 second=204 amount=-1 +kerning first=261 second=337 amount=-1 +kerning first=80 second=352 amount=-1 +kerning first=334 second=327 amount=-1 +kerning first=225 second=337 amount=-1 +kerning first=197 second=8221 amount=-2 +kerning first=212 second=258 amount=-1 +kerning first=72 second=298 amount=-1 +kerning first=233 second=8221 amount=-2 +kerning first=243 second=287 amount=-1 +kerning first=364 second=224 amount=-1 +kerning first=8218 second=380 amount=-1 +kerning first=1044 second=1076 amount=-1 +kerning first=1071 second=1036 amount=-1 +kerning first=268 second=107 amount=-1 +kerning first=366 second=225 amount=-1 +kerning first=202 second=72 amount=-1 +kerning first=330 second=225 amount=-1 +kerning first=1068 second=1044 amount=-1 +kerning first=74 second=370 amount=-1 +kerning first=193 second=318 amount=-1 +kerning first=229 second=318 amount=-1 +kerning first=220 second=211 amount=-1 +kerning first=335 second=46 amount=-1 +kerning first=8250 second=209 amount=-1 +kerning first=346 second=72 amount=-1 +kerning first=104 second=267 amount=-1 +kerning first=1058 second=1071 amount=-1 +kerning first=204 second=344 amount=-1 +kerning first=327 second=234 amount=-1 +kerning first=86 second=113 amount=-1 +kerning first=1031 second=1055 amount=-1 +kerning first=337 second=318 amount=-1 +kerning first=192 second=105 amount=-1 +kerning first=274 second=72 amount=-1 +kerning first=209 second=267 amount=-1 +kerning first=8222 second=244 amount=-1 +kerning first=70 second=199 amount=-1 +kerning first=369 second=114 amount=-1 +kerning first=323 second=370 amount=-1 +kerning first=366 second=199 amount=-1 +kerning first=193 second=361 amount=-1 +kerning first=368 second=111 amount=-1 +kerning first=344 second=212 amount=-1 +kerning first=269 second=311 amount=-1 +kerning first=8220 second=364 amount=-1 +kerning first=1039 second=1086 amount=-1 +kerning first=370 second=264 amount=-1 +kerning first=192 second=118 amount=-1 +kerning first=45 second=270 amount=-1 +kerning first=200 second=212 amount=-1 +kerning first=1052 second=1083 amount=-1 +kerning first=85 second=206 amount=-1 +kerning first=234 second=267 amount=-1 +kerning first=220 second=225 amount=-1 +kerning first=334 second=206 amount=-1 +kerning first=205 second=115 amount=-1 +kerning first=370 second=206 amount=-1 +kerning first=197 second=368 amount=-1 +kerning first=1108 second=1095 amount=-1 +kerning first=262 second=206 amount=-1 +kerning first=283 second=114 amount=-1 +kerning first=277 second=115 amount=-1 +kerning first=298 second=206 amount=-1 +kerning first=224 second=111 amount=-1 +kerning first=8216 second=193 amount=-2 +kerning first=325 second=220 amount=-1 +kerning first=296 second=111 amount=-1 +kerning first=1072 second=1095 amount=-1 +kerning first=362 second=284 amount=-1 +kerning first=70 second=114 amount=-1 +kerning first=1071 second=1079 amount=-1 +kerning first=368 second=81 amount=-1 +kerning first=85 second=370 amount=-1 +kerning first=284 second=310 amount=-1 +kerning first=289 second=263 amount=-1 +kerning first=296 second=81 amount=-1 +kerning first=325 second=263 amount=-1 +kerning first=212 second=310 amount=-1 +kerning first=88 second=8249 amount=-1 +kerning first=210 second=68 amount=-1 +kerning first=262 second=370 amount=-1 +kerning first=1053 second=1095 amount=-1 +kerning first=71 second=310 amount=-1 +kerning first=282 second=68 amount=-1 +kerning first=69 second=365 amount=-1 +kerning first=229 second=8249 amount=-1 +kerning first=45 second=199 amount=-1 +kerning first=316 second=106 amount=-1 +kerning first=370 second=370 amount=-1 +kerning first=203 second=203 amount=-1 +kerning first=278 second=330 amount=-1 +kerning first=298 second=370 amount=-1 +kerning first=334 second=370 amount=-1 +kerning first=315 second=374 amount=-1 +kerning first=258 second=199 amount=-1 +kerning first=244 second=106 amount=-1 +kerning first=1118 second=1101 amount=-1 +kerning first=330 second=199 amount=-1 +kerning first=217 second=263 amount=-1 +kerning first=71 second=327 amount=-1 +kerning first=346 second=8222 amount=-1 +kerning first=204 second=223 amount=-1 +kerning first=212 second=327 amount=-1 +kerning first=89 second=230 amount=-1 +kerning first=77 second=204 amount=-1 +kerning first=286 second=317 amount=-1 +kerning first=202 second=8222 amount=-1 +kerning first=8222 second=227 amount=-1 +kerning first=8250 second=382 amount=-1 +kerning first=202 second=334 amount=-1 +kerning first=204 second=279 amount=-1 +kerning first=99 second=279 amount=-1 +kerning first=310 second=334 amount=-1 +kerning first=65 second=210 amount=-1 +kerning first=201 second=288 amount=-1 +kerning first=364 second=44 amount=-2 +kerning first=79 second=87 amount=-1 +kerning first=288 second=187 amount=-1 +kerning first=325 second=213 amount=-1 +kerning first=274 second=334 amount=-1 +kerning first=224 second=291 amount=-1 +kerning first=74 second=318 amount=-1 +kerning first=1052 second=1056 amount=-1 +kerning first=1054 second=1045 amount=-1 +kerning first=197 second=84 amount=-1 +kerning first=197 second=221 amount=-1 +kerning first=272 second=75 amount=-1 +kerning first=75 second=187 amount=-1 +kerning first=207 second=270 amount=-1 +kerning first=287 second=318 amount=-1 +kerning first=77 second=99 amount=-1 +kerning first=365 second=101 amount=-1 +kerning first=86 second=279 amount=-1 +kerning first=8222 second=234 amount=-1 +kerning first=268 second=352 amount=-1 +kerning first=200 second=75 amount=-1 +kerning first=367 second=245 amount=-1 +kerning first=304 second=352 amount=-1 +kerning first=1060 second=1027 amount=-1 +kerning first=216 second=187 amount=-1 +kerning first=258 second=303 amount=-1 +kerning first=218 second=99 amount=-1 +kerning first=1042 second=1064 amount=-1 +kerning first=1076 second=1119 amount=-1 +kerning first=211 second=192 amount=-1 +kerning first=259 second=245 amount=-1 +kerning first=111 second=187 amount=-1 +kerning first=275 second=337 amount=-1 +kerning first=1053 second=1067 amount=-1 +kerning first=204 second=230 amount=-1 +kerning first=374 second=230 amount=-1 +kerning first=362 second=99 amount=-1 +kerning first=240 second=279 amount=-1 +kerning first=213 second=196 amount=-1 +kerning first=326 second=99 amount=-1 +kerning first=326 second=287 amount=-1 +kerning first=209 second=332 amount=-1 +kerning first=302 second=230 amount=-1 +kerning first=370 second=271 amount=-1 +kerning first=266 second=230 amount=-1 +kerning first=101 second=235 amount=-1 +kerning first=66 second=73 amount=-1 +kerning first=355 second=277 amount=-1 +kerning first=244 second=316 amount=-1 +kerning first=100 second=8217 amount=-1 +kerning first=68 second=8250 amount=-1 +kerning first=298 second=325 amount=-1 +kerning first=8218 second=118 amount=-1 +kerning first=283 second=277 amount=-1 +kerning first=316 second=316 amount=-1 +kerning first=74 second=108 amount=-1 +kerning first=363 second=281 amount=-1 +kerning first=207 second=73 amount=-1 +kerning first=234 second=104 amount=-1 +kerning first=1039 second=1073 amount=-1 +kerning first=67 second=290 amount=-1 +kerning first=203 second=116 amount=-1 +kerning first=197 second=264 amount=-1 +kerning first=70 second=277 amount=-1 +kerning first=85 second=193 amount=-1 +kerning first=334 second=69 amount=-1 +kerning first=212 second=323 amount=-1 +kerning first=338 second=364 amount=-1 +kerning first=249 second=337 amount=-1 +kerning first=327 second=338 amount=-1 +kerning first=302 second=364 amount=-1 +kerning first=1052 second=1084 amount=-1 +kerning first=266 second=364 amount=-1 +kerning first=370 second=69 amount=-1 +kerning first=71 second=323 amount=-1 +kerning first=67 second=350 amount=-1 +kerning first=241 second=8217 amount=-2 +kerning first=194 second=364 amount=-1 +kerning first=277 second=8217 amount=-2 +kerning first=262 second=69 amount=-1 +kerning first=374 second=273 amount=-1 +kerning first=106 second=277 amount=-1 +kerning first=219 second=338 amount=-1 +kerning first=233 second=355 amount=-1 +kerning first=280 second=286 amount=-1 +kerning first=302 second=273 amount=-1 +kerning first=366 second=187 amount=-2 +kerning first=370 second=193 amount=-1 +kerning first=266 second=273 amount=-1 +kerning first=205 second=325 amount=-1 +kerning first=231 second=113 amount=-1 +kerning first=85 second=69 amount=-1 +kerning first=230 second=273 amount=-1 +kerning first=267 second=113 amount=-1 +kerning first=1052 second=1091 amount=-1 +kerning first=110 second=171 amount=-1 +kerning first=204 second=82 amount=-1 +kerning first=334 second=193 amount=-1 +kerning first=74 second=314 amount=-1 +kerning first=80 second=116 amount=-1 +kerning first=187 second=78 amount=-1 +kerning first=70 second=110 amount=-1 +kerning first=1064 second=1047 amount=-1 +kerning first=287 second=314 amount=-1 +kerning first=1052 second=1070 amount=-1 +kerning first=1036 second=1082 amount=-1 +kerning first=67 second=286 amount=-1 +kerning first=194 second=84 amount=-1 +kerning first=103 second=316 amount=-1 +kerning first=67 second=316 amount=-1 +kerning first=1047 second=1043 amount=-1 +kerning first=366 second=333 amount=-1 +kerning first=234 second=100 amount=-1 +kerning first=207 second=77 amount=-1 +kerning first=321 second=356 amount=-1 +kerning first=8217 second=213 amount=-1 +kerning first=1030 second=1100 amount=-1 +kerning first=317 second=219 amount=-1 +kerning first=112 second=289 amount=-1 +kerning first=1055 second=1048 amount=-1 +kerning first=330 second=333 amount=-1 +kerning first=253 second=289 amount=-1 +kerning first=8218 second=122 amount=-1 +kerning first=241 second=231 amount=-1 +kerning first=109 second=101 amount=-1 +kerning first=122 second=8221 amount=-1 +kerning first=366 second=194 amount=-1 +kerning first=1067 second=1042 amount=-1 +kerning first=73 second=101 amount=-1 +kerning first=66 second=77 amount=-1 +kerning first=289 second=289 amount=-1 +kerning first=213 second=356 amount=-1 +kerning first=69 second=68 amount=-1 +kerning first=251 second=171 amount=-1 +kerning first=1071 second=1049 amount=-1 +kerning first=283 second=281 amount=-1 +kerning first=287 second=171 amount=-1 +kerning first=346 second=304 amount=-1 +kerning first=323 second=171 amount=-1 +kerning first=351 second=103 amount=-1 +kerning first=8249 second=89 amount=-1 +kerning first=355 second=281 amount=-1 +kerning first=275 second=246 amount=-1 +kerning first=74 second=270 amount=-1 +kerning first=279 second=103 amount=-1 +kerning first=76 second=220 amount=-1 +kerning first=72 second=330 amount=-1 +kerning first=202 second=304 amount=-1 +kerning first=243 second=103 amount=-1 +kerning first=80 second=296 amount=-1 +kerning first=217 second=220 amount=-1 +kerning first=213 second=330 amount=-1 +kerning first=207 second=103 amount=-1 +kerning first=79 second=280 amount=-1 +kerning first=230 second=46 amount=-1 +kerning first=220 second=246 amount=-1 +kerning first=274 second=304 amount=-1 +kerning first=78 second=338 amount=-1 +kerning first=201 second=345 amount=-1 +kerning first=1055 second=1074 amount=-1 +kerning first=231 second=109 amount=-1 +kerning first=321 second=85 amount=-1 +kerning first=221 second=8218 amount=-2 +kerning first=1064 second=1051 amount=-1 +kerning first=73 second=298 amount=-1 +kerning first=70 second=281 amount=-1 +kerning first=264 second=315 amount=-1 +kerning first=267 second=109 amount=-1 +kerning first=74 second=277 amount=-1 +kerning first=105 second=339 amount=-1 +kerning first=72 second=85 amount=-1 +kerning first=119 second=382 amount=-1 +kerning first=214 second=298 amount=-1 +kerning first=364 second=211 amount=-1 +kerning first=199 second=313 amount=-1 +kerning first=224 second=382 amount=-1 +kerning first=353 second=8250 amount=-1 +kerning first=286 second=298 amount=-1 +kerning first=1038 second=1040 amount=-1 +kerning first=280 second=290 amount=-1 +kerning first=116 second=8218 amount=-1 +kerning first=80 second=120 amount=-1 +kerning first=296 second=382 amount=-1 +kerning first=281 second=8250 amount=-1 +kerning first=228 second=289 amount=-1 +kerning first=326 second=231 amount=-1 +kerning first=80 second=8218 amount=-2 +kerning first=1068 second=1079 amount=-1 +kerning first=245 second=8250 amount=-1 +kerning first=368 second=382 amount=-1 +kerning first=209 second=8250 amount=-1 +kerning first=224 second=287 amount=-1 +kerning first=1024 second=1095 amount=-1 +kerning first=230 second=234 amount=-1 +kerning first=307 second=339 amount=-1 +kerning first=206 second=302 amount=-1 +kerning first=220 second=83 amount=-1 +kerning first=74 second=210 amount=-1 +kerning first=302 second=234 amount=-1 +kerning first=219 second=263 amount=-1 +kerning first=77 second=101 amount=-1 +kerning first=235 second=107 amount=-1 +kerning first=266 second=234 amount=-1 +kerning first=370 second=232 amount=-1 +kerning first=374 second=234 amount=-1 +kerning first=65 second=8220 amount=-2 +kerning first=88 second=223 amount=-1 +kerning first=8250 second=196 amount=-1 +kerning first=1043 second=1114 amount=-1 +kerning first=284 second=219 amount=-1 +kerning first=235 second=339 amount=-1 +kerning first=199 second=339 amount=-1 +kerning first=101 second=8220 amount=-2 +kerning first=83 second=317 amount=-1 +kerning first=212 second=219 amount=-1 +kerning first=73 second=267 amount=-1 +kerning first=323 second=75 amount=-1 +kerning first=8222 second=283 amount=-1 +kerning first=275 second=311 amount=-1 +kerning first=202 second=330 amount=-1 +kerning first=85 second=232 amount=-1 +kerning first=325 second=122 amount=-1 +kerning first=346 second=219 amount=-1 +kerning first=199 second=107 amount=-1 +kerning first=217 second=122 amount=-1 +kerning first=362 second=103 amount=-1 +kerning first=71 second=219 amount=-1 +kerning first=253 second=122 amount=-1 +kerning first=298 second=232 amount=-1 +kerning first=1078 second=1103 amount=-1 +kerning first=112 second=122 amount=-1 +kerning first=72 second=214 amount=-1 +kerning first=262 second=232 amount=-1 +kerning first=89 second=234 amount=-1 +kerning first=226 second=232 amount=-1 +kerning first=218 second=335 amount=-1 +kerning first=8218 second=79 amount=-1 +kerning first=89 second=269 amount=-1 +kerning first=8250 second=210 amount=-1 +kerning first=1066 second=1065 amount=-1 +kerning first=368 second=85 amount=-1 +kerning first=362 second=335 amount=-1 +kerning first=266 second=269 amount=-1 +kerning first=326 second=335 amount=-1 +kerning first=302 second=269 amount=-1 +kerning first=193 second=45 amount=-1 +kerning first=296 second=85 amount=-1 +kerning first=85 second=65 amount=-1 +kerning first=230 second=269 amount=-1 +kerning first=216 second=46 amount=-1 +kerning first=242 second=8220 amount=-2 +kerning first=73 second=229 amount=-1 +kerning first=1102 second=1083 amount=-1 +kerning first=288 second=46 amount=-1 +kerning first=314 second=8220 amount=-1 +kerning first=210 second=8217 amount=-2 +kerning first=83 second=85 amount=-1 +kerning first=374 second=269 amount=-1 +kerning first=1031 second=1081 amount=-1 +kerning first=350 second=302 amount=-1 +kerning first=1067 second=1081 amount=-1 +kerning first=334 second=65 amount=-1 +kerning first=370 second=65 amount=-1 +kerning first=269 second=225 amount=-1 +kerning first=278 second=302 amount=-1 +kerning first=77 second=335 amount=-1 +kerning first=220 second=250 amount=-1 +kerning first=1042 second=1038 amount=-2 +kerning first=279 second=378 amount=-1 +kerning first=243 second=378 amount=-1 +kerning first=89 second=67 amount=-1 +kerning first=202 second=78 amount=-1 +kerning first=83 second=46 amount=-1 +kerning first=207 second=378 amount=-1 +kerning first=187 second=72 amount=-1 +kerning first=1031 second=1071 amount=-1 +kerning first=364 second=250 amount=-1 +kerning first=1071 second=1075 amount=-1 +kerning first=370 second=366 amount=-1 +kerning first=201 second=262 amount=-1 +kerning first=203 second=207 amount=-1 +kerning first=221 second=192 amount=-1 +kerning first=111 second=46 amount=-1 +kerning first=298 second=366 amount=-1 +kerning first=80 second=192 amount=-1 +kerning first=199 second=274 amount=-1 +kerning first=75 second=46 amount=-1 +kerning first=334 second=366 amount=-1 +kerning first=110 second=345 amount=-1 +kerning first=200 second=216 amount=-1 +kerning first=334 second=330 amount=-1 +kerning first=1060 second=1053 amount=-1 +kerning first=325 second=259 amount=-1 +kerning first=354 second=227 amount=-1 +kerning first=1051 second=1076 amount=-1 +kerning first=366 second=195 amount=-1 +kerning first=344 second=216 amount=-1 +kerning first=1091 second=1117 amount=-1 +kerning first=73 second=246 amount=-1 +kerning first=362 second=201 amount=-1 +kerning first=88 second=357 amount=-1 +kerning first=66 second=378 amount=-1 +kerning first=233 second=251 amount=-1 +kerning first=302 second=338 amount=-1 +kerning first=290 second=201 amount=-1 +kerning first=200 second=251 amount=-1 +kerning first=193 second=357 amount=-1 +kerning first=196 second=116 amount=-1 +kerning first=8250 second=356 amount=-1 +kerning first=218 second=201 amount=-1 +kerning first=220 second=113 amount=-1 +kerning first=77 second=201 amount=-1 +kerning first=217 second=259 amount=-1 +kerning first=219 second=204 amount=-1 +kerning first=72 second=207 amount=-1 +kerning first=304 second=116 amount=-1 +kerning first=281 second=187 amount=-1 +kerning first=224 second=108 amount=-1 +kerning first=187 second=375 amount=-1 +kerning first=78 second=204 amount=-1 +kerning first=232 second=116 amount=-1 +kerning first=1058 second=1108 amount=-1 +kerning first=327 second=204 amount=-1 +kerning first=262 second=366 amount=-1 +kerning first=275 second=242 amount=-1 +kerning first=69 second=369 amount=-1 +kerning first=234 second=271 amount=-1 +kerning first=323 second=210 amount=-1 +kerning first=73 second=268 amount=-1 +kerning first=1101 second=1093 amount=-1 +kerning first=78 second=201 amount=-1 +kerning first=1049 second=1096 amount=-1 +kerning first=328 second=113 amount=-1 +kerning first=1039 second=1047 amount=-1 +kerning first=374 second=67 amount=-1 +kerning first=282 second=369 amount=-1 +kerning first=364 second=113 amount=-1 +kerning first=266 second=67 amount=-1 +kerning first=368 second=317 amount=-1 +kerning first=1054 second=1067 amount=-1 +kerning first=302 second=67 amount=-1 +kerning first=8217 second=243 amount=-1 +kerning first=110 second=279 amount=-1 +kerning first=278 second=371 amount=-1 +kerning first=1091 second=1113 amount=-1 +kerning first=279 second=244 amount=-1 +kerning first=101 second=233 amount=-1 +kerning first=1066 second=1030 amount=-1 +kerning first=350 second=371 amount=-1 +kerning first=330 second=97 amount=-1 +kerning first=74 second=279 amount=-1 +kerning first=366 second=97 amount=-1 +kerning first=287 second=279 amount=-1 +kerning first=80 second=257 amount=-1 +kerning first=1039 second=1079 amount=-1 +kerning first=323 second=279 amount=-1 +kerning first=1051 second=1080 amount=-1 +kerning first=201 second=327 amount=-1 +kerning first=251 second=279 amount=-1 +kerning first=199 second=209 amount=-1 +kerning first=206 second=233 amount=-1 +kerning first=274 second=200 amount=-1 +kerning first=1062 second=1102 amount=-1 +kerning first=70 second=75 amount=-1 +kerning first=362 second=266 amount=-1 +kerning first=277 second=187 amount=-1 +kerning first=202 second=200 amount=-1 +kerning first=314 second=233 amount=-1 +kerning first=75 second=213 amount=-1 +kerning first=65 second=371 amount=-1 +kerning first=218 second=266 amount=-1 +kerning first=354 second=235 amount=-1 +kerning first=81 second=8221 amount=-2 +kerning first=304 second=218 amount=-1 +kerning first=98 second=380 amount=-1 +kerning first=290 second=270 amount=-1 +kerning first=232 second=283 amount=-1 +kerning first=99 second=318 amount=-1 +kerning first=368 second=248 amount=-1 +kerning first=79 second=44 amount=-1 +kerning first=218 second=270 amount=-1 +kerning first=354 second=231 amount=-1 +kerning first=196 second=218 amount=-1 +kerning first=8216 second=65 amount=-2 +kerning first=1054 second=1071 amount=-1 +kerning first=284 second=282 amount=-1 +kerning first=275 second=380 amount=-1 +kerning first=105 second=231 amount=-1 +kerning first=220 second=44 amount=-2 +kerning first=224 second=248 amount=-1 +kerning first=256 second=44 amount=-1 +kerning first=307 second=45 amount=-1 +kerning first=362 second=270 amount=-1 +kerning first=211 second=75 amount=-1 +kerning first=115 second=44 amount=-1 +kerning first=296 second=248 amount=-1 +kerning first=286 second=66 amount=-1 +kerning first=1060 second=1071 amount=-1 +kerning first=264 second=79 amount=-1 +kerning first=269 second=269 amount=-1 +kerning first=8218 second=289 amount=-1 +kerning first=87 second=79 amount=-1 +kerning first=278 second=367 amount=-1 +kerning first=8250 second=85 amount=-1 +kerning first=192 second=79 amount=-1 +kerning first=207 second=244 amount=-1 +kerning first=304 second=283 amount=-1 +kerning first=350 second=367 amount=-1 +kerning first=77 second=270 amount=-1 +kerning first=314 second=367 amount=-1 +kerning first=75 second=217 amount=-1 +kerning first=74 second=344 amount=-1 +kerning first=101 second=367 amount=-1 +kerning first=192 second=354 amount=-1 +kerning first=344 second=114 amount=-1 +kerning first=199 second=205 amount=-1 +kerning first=67 second=80 amount=-1 +kerning first=310 second=8222 amount=-1 +kerning first=87 second=261 amount=-1 +kerning first=71 second=8218 amount=-1 +kerning first=288 second=217 amount=-1 +kerning first=280 second=80 amount=-1 +kerning first=74 second=206 amount=-1 +kerning first=200 second=114 amount=-1 +kerning first=380 second=45 amount=-1 +kerning first=323 second=344 amount=-1 +kerning first=119 second=252 amount=-1 +kerning first=1065 second=1097 amount=-1 +kerning first=83 second=252 amount=-1 +kerning first=80 second=261 amount=-1 +kerning first=1025 second=1095 amount=-1 +kerning first=313 second=89 amount=-1 +kerning first=8222 second=218 amount=-1 +kerning first=45 second=368 amount=-1 +kerning first=212 second=353 amount=-1 +kerning first=8250 second=81 amount=-1 +kerning first=81 second=368 amount=-1 +kerning first=1097 second=1095 amount=-1 +kerning first=187 second=379 amount=-1 +kerning first=204 second=216 amount=-1 +kerning first=356 second=353 amount=-1 +kerning first=195 second=345 amount=-1 +kerning first=231 second=345 amount=-1 +kerning first=323 second=206 amount=-1 +kerning first=267 second=345 amount=-1 +kerning first=330 second=368 amount=-1 +kerning first=77 second=266 amount=-1 +kerning first=117 second=8221 amount=-1 +kerning first=366 second=368 amount=-1 +kerning first=339 second=345 amount=-1 +kerning first=1067 second=1077 amount=-1 +kerning first=1040 second=1054 amount=-1 +kerning first=255 second=106 amount=-1 +kerning first=375 second=345 amount=-1 +kerning first=334 second=302 amount=-1 +kerning first=1031 second=1077 amount=-1 +kerning first=86 second=243 amount=-1 +kerning first=258 second=8221 amount=-2 +kerning first=304 second=214 amount=-1 +kerning first=72 second=226 amount=-1 +kerning first=227 second=243 amount=-1 +kerning first=268 second=214 amount=-1 +kerning first=258 second=368 amount=-1 +kerning first=218 second=197 amount=-1 +kerning first=196 second=214 amount=-1 +kerning first=187 second=310 amount=-1 +kerning first=263 second=243 amount=-1 +kerning first=287 second=275 amount=-1 +kerning first=68 second=362 amount=-1 +kerning first=286 second=46 amount=-1 +kerning first=251 second=275 amount=-1 +kerning first=362 second=197 amount=-1 +kerning first=67 second=315 amount=-1 +kerning first=193 second=223 amount=-1 +kerning first=323 second=275 amount=-1 +kerning first=352 second=80 amount=-1 +kerning first=110 second=275 amount=-1 +kerning first=370 second=327 amount=-1 +kerning first=368 second=252 amount=-1 +kerning first=231 second=120 amount=-1 +kerning first=74 second=275 amount=-1 +kerning first=209 second=362 amount=-1 +kerning first=220 second=288 amount=-1 +kerning first=317 second=362 amount=-1 +kerning first=232 second=8220 amount=-2 +kerning first=1064 second=1086 amount=-1 +kerning first=67 second=71 amount=-1 +kerning first=1053 second=1094 amount=-1 +kerning first=356 second=275 amount=-1 +kerning first=74 second=353 amount=-1 +kerning first=225 second=45 amount=-1 +kerning first=78 second=243 amount=-1 +kerning first=84 second=45 amount=-1 +kerning first=219 second=243 amount=-1 +kerning first=120 second=45 amount=-1 +kerning first=1076 second=1097 amount=-1 +kerning first=291 second=243 amount=-1 +kerning first=1068 second=1036 amount=-1 +kerning first=204 second=214 amount=-1 +kerning first=369 second=45 amount=-1 +kerning first=261 second=45 amount=-1 +kerning first=363 second=243 amount=-1 +kerning first=1070 second=1068 amount=-1 +kerning first=323 second=353 amount=-1 +kerning first=205 second=219 amount=-1 +kerning first=327 second=243 amount=-1 +kerning first=1034 second=1068 amount=-1 +kerning first=284 second=362 amount=-1 +kerning first=201 second=223 amount=-1 +kerning first=205 second=80 amount=-1 +kerning first=1060 second=1062 amount=-1 +kerning first=121 second=318 amount=-1 +kerning first=327 second=248 amount=-1 +kerning first=282 second=67 amount=-1 +kerning first=255 second=365 amount=-1 +kerning first=262 second=318 amount=-1 +kerning first=1051 second=1060 amount=-1 +kerning first=1038 second=1082 amount=-1 +kerning first=264 second=350 amount=-1 +kerning first=232 second=46 amount=-1 +kerning first=334 second=258 amount=-1 +kerning first=1071 second=1027 amount=-1 +kerning first=370 second=258 amount=-1 +kerning first=366 second=234 amount=-1 +kerning first=327 second=262 amount=-1 +kerning first=330 second=234 amount=-1 +kerning first=77 second=257 amount=-1 +kerning first=339 second=8250 amount=-1 +kerning first=269 second=103 amount=-1 +kerning first=296 second=226 amount=-1 +kerning first=71 second=362 amount=-1 +kerning first=323 second=266 amount=-1 +kerning first=212 second=362 amount=-1 +kerning first=368 second=226 amount=-1 +kerning first=1059 second=1076 amount=-1 +kerning first=193 second=249 amount=-1 +kerning first=65 second=79 amount=-1 +kerning first=280 second=71 amount=-1 +kerning first=105 second=283 amount=-1 +kerning first=194 second=361 amount=-1 +kerning first=234 second=232 amount=-1 +kerning first=197 second=81 amount=-1 +kerning first=1038 second=1096 amount=-1 +kerning first=88 second=249 amount=-1 +kerning first=74 second=266 amount=-1 +kerning first=267 second=241 amount=-1 +kerning first=1051 second=1089 amount=-1 +kerning first=231 second=241 amount=-1 +kerning first=316 second=244 amount=-1 +kerning first=235 second=98 amount=-1 +kerning first=288 second=72 amount=-1 +kerning first=259 second=267 amount=-1 +kerning first=1041 second=1096 amount=-1 +kerning first=199 second=98 amount=-1 +kerning first=87 second=216 amount=-1 +kerning first=116 second=275 amount=-1 +kerning first=112 second=345 amount=-1 +kerning first=267 second=328 amount=-1 +kerning first=192 second=216 amount=-1 +kerning first=217 second=8249 amount=-2 +kerning first=231 second=328 amount=-1 +kerning first=279 second=243 amount=-1 +kerning first=217 second=345 amount=-1 +kerning first=171 second=352 amount=-1 +kerning first=80 second=335 amount=-1 +kerning first=119 second=46 amount=-1 +kerning first=253 second=345 amount=-1 +kerning first=207 second=352 amount=-1 +kerning first=330 second=114 amount=-1 +kerning first=289 second=345 amount=-1 +kerning first=203 second=302 amount=-1 +kerning first=89 second=115 amount=-1 +kerning first=85 second=258 amount=-1 +kerning first=325 second=345 amount=-1 +kerning first=116 second=335 amount=-1 +kerning first=275 second=8222 amount=-1 +kerning first=257 second=335 amount=-1 +kerning first=221 second=335 amount=-1 +kerning first=260 second=46 amount=-1 +kerning first=1059 second=1061 amount=-1 +kerning first=368 second=46 amount=-2 +kerning first=258 second=114 amount=-1 +kerning first=201 second=370 amount=-1 +kerning first=45 second=114 amount=-1 +kerning first=290 second=344 amount=-1 +kerning first=374 second=115 amount=-1 +kerning first=87 second=250 amount=-1 +kerning first=117 second=114 amount=-1 +kerning first=197 second=119 amount=-1 +kerning first=362 second=344 amount=-1 +kerning first=271 second=378 amount=-1 +kerning first=70 second=8221 amount=-1 +kerning first=220 second=336 amount=-1 +kerning first=1046 second=1079 amount=-1 +kerning first=230 second=115 amount=-1 +kerning first=1107 second=1114 amount=-1 +kerning first=266 second=115 amount=-1 +kerning first=302 second=115 amount=-1 +kerning first=192 second=250 amount=-1 +kerning first=305 second=119 amount=-1 +kerning first=197 second=199 amount=-1 +kerning first=264 second=216 amount=-1 +kerning first=290 second=82 amount=-1 +kerning first=99 second=314 amount=-1 +kerning first=1067 second=1055 amount=-1 +kerning first=235 second=378 amount=-1 +kerning first=199 second=378 amount=-1 +kerning first=1062 second=1054 amount=-1 +kerning first=77 second=344 amount=-1 +kerning first=1038 second=1105 amount=-1 +kerning first=1057 second=1071 amount=-1 +kerning first=218 second=344 amount=-1 +kerning first=187 second=327 amount=-1 +kerning first=1043 second=1088 amount=-1 +kerning first=274 second=282 amount=-1 +kerning first=1043 second=1101 amount=-1 +kerning first=79 second=204 amount=-1 +kerning first=202 second=282 amount=-1 +kerning first=327 second=206 amount=-1 +kerning first=1070 second=1055 amount=-1 +kerning first=274 second=266 amount=-1 +kerning first=1067 second=1096 amount=-1 +kerning first=226 second=337 amount=-1 +kerning first=204 second=288 amount=-1 +kerning first=195 second=87 amount=-1 +kerning first=263 second=230 amount=-1 +kerning first=307 second=291 amount=-1 +kerning first=271 second=291 amount=-1 +kerning first=72 second=81 amount=-1 +kerning first=119 second=106 amount=-1 +kerning first=235 second=291 amount=-1 +kerning first=86 second=230 amount=-1 +kerning first=1055 second=1052 amount=-1 +kerning first=275 second=101 amount=-1 +kerning first=207 second=279 amount=-1 +kerning first=210 second=296 amount=-1 +kerning first=197 second=212 amount=-1 +kerning first=264 second=337 amount=-1 +kerning first=69 second=296 amount=-1 +kerning first=1048 second=1098 amount=-1 +kerning first=228 second=337 amount=-1 +kerning first=8218 second=374 amount=-2 +kerning first=8250 second=120 amount=-1 +kerning first=279 second=279 amount=-1 +kerning first=1031 second=1064 amount=-1 +kerning first=287 second=244 amount=-1 +kerning first=282 second=296 amount=-1 +kerning first=87 second=337 amount=-1 +kerning first=203 second=75 amount=-1 +kerning first=370 second=245 amount=-1 +kerning first=1067 second=1064 amount=-1 +kerning first=279 second=99 amount=-1 +kerning first=213 second=187 amount=-1 +kerning first=298 second=245 amount=-1 +kerning first=270 second=8250 amount=-1 +kerning first=207 second=99 amount=-1 +kerning first=234 second=8250 amount=-1 +kerning first=226 second=245 amount=-1 +kerning first=268 second=8218 amount=-1 +kerning first=232 second=8218 amount=-1 +kerning first=108 second=287 amount=-1 +kerning first=234 second=233 amount=-1 +kerning first=105 second=375 amount=-1 +kerning first=85 second=245 amount=-1 +kerning first=314 second=380 amount=-1 +kerning first=347 second=8220 amount=-2 +kerning first=71 second=202 amount=-1 +kerning first=116 second=248 amount=-1 +kerning first=70 second=255 amount=-1 +kerning first=311 second=8220 amount=-1 +kerning first=212 second=202 amount=-1 +kerning first=282 second=270 amount=-1 +kerning first=250 second=235 amount=-1 +kerning first=1064 second=1025 amount=-1 +kerning first=221 second=248 amount=-1 +kerning first=201 second=117 amount=-1 +kerning first=249 second=287 amount=-1 +kerning first=205 second=116 amount=-1 +kerning first=100 second=246 amount=-1 +kerning first=209 second=83 amount=-1 +kerning first=72 second=8222 amount=-1 +kerning first=72 second=261 amount=-1 +kerning first=80 second=248 amount=-1 +kerning first=1059 second=1081 amount=-1 +kerning first=350 second=66 amount=-1 +kerning first=327 second=97 amount=-1 +kerning first=346 second=209 amount=-1 +kerning first=219 second=364 amount=-1 +kerning first=69 second=270 amount=-1 +kerning first=298 second=69 amount=-1 +kerning first=99 second=108 amount=-1 +kerning first=278 second=66 amount=-1 +kerning first=1028 second=1073 amount=-1 +kerning first=274 second=209 amount=-1 +kerning first=258 second=307 amount=-1 +kerning first=206 second=66 amount=-1 +kerning first=78 second=364 amount=-1 +kerning first=284 second=202 amount=-1 +kerning first=210 second=270 amount=-1 +kerning first=218 second=257 amount=-1 +kerning first=202 second=209 amount=-1 +kerning first=203 second=8220 amount=-1 +kerning first=1064 second=1073 amount=-1 +kerning first=288 second=278 amount=-1 +kerning first=101 second=380 amount=-1 +kerning first=67 second=264 amount=-1 +kerning first=242 second=380 amount=-1 +kerning first=275 second=8220 amount=-2 +kerning first=206 second=380 amount=-1 +kerning first=8217 second=111 amount=-1 +kerning first=205 second=296 amount=-1 +kerning first=254 second=103 amount=-1 +kerning first=338 second=211 amount=-1 +kerning first=207 second=205 amount=-1 +kerning first=45 second=355 amount=-1 +kerning first=218 second=103 amount=-1 +kerning first=8216 second=366 amount=-1 +kerning first=1058 second=1091 amount=-1 +kerning first=304 second=227 amount=-1 +kerning first=1047 second=1039 amount=-1 +kerning first=268 second=227 amount=-1 +kerning first=201 second=69 amount=-1 +kerning first=288 second=325 amount=-1 +kerning first=77 second=103 amount=-1 +kerning first=277 second=273 amount=-1 +kerning first=74 second=193 amount=-1 +kerning first=274 second=330 amount=-1 +kerning first=356 second=74 amount=-1 +kerning first=75 second=252 amount=-1 +kerning first=327 second=364 amount=-1 +kerning first=346 second=330 amount=-1 +kerning first=78 second=269 amount=-1 +kerning first=291 second=269 amount=-1 +kerning first=366 second=355 amount=-1 +kerning first=199 second=218 amount=-1 +kerning first=270 second=78 amount=-1 +kerning first=1030 second=1047 amount=-1 +kerning first=327 second=269 amount=-1 +kerning first=330 second=355 amount=-1 +kerning first=1091 second=1078 amount=-1 +kerning first=74 second=65 amount=-1 +kerning first=258 second=355 amount=-1 +kerning first=1043 second=1073 amount=-1 +kerning first=287 second=112 amount=-1 +kerning first=1042 second=1116 amount=-1 +kerning first=66 second=205 amount=-1 +kerning first=8218 second=250 amount=-1 +kerning first=350 second=8220 amount=-1 +kerning first=363 second=269 amount=-1 +kerning first=253 second=44 amount=-1 +kerning first=198 second=78 amount=-1 +kerning first=346 second=282 amount=-1 +kerning first=289 second=44 amount=-1 +kerning first=218 second=365 amount=-1 +kerning first=218 second=171 amount=-2 +kerning first=121 second=117 amount=-1 +kerning first=45 second=260 amount=-1 +kerning first=85 second=117 amount=-1 +kerning first=81 second=260 amount=-1 +kerning first=290 second=171 amount=-1 +kerning first=205 second=286 amount=-1 +kerning first=326 second=171 amount=-1 +kerning first=1031 second=1051 amount=-1 +kerning first=274 second=68 amount=-1 +kerning first=1067 second=1051 amount=-1 +kerning first=74 second=249 amount=-1 +kerning first=8250 second=274 amount=-1 +kerning first=84 second=333 amount=-1 +kerning first=346 second=68 amount=-1 +kerning first=269 second=307 amount=-1 +kerning first=70 second=203 amount=-1 +kerning first=199 second=351 amount=-1 +kerning first=339 second=100 amount=-1 +kerning first=65 second=220 amount=-1 +kerning first=366 second=260 amount=-1 +kerning first=1070 second=1042 amount=-1 +kerning first=206 second=220 amount=-1 +kerning first=211 second=203 amount=-1 +kerning first=367 second=281 amount=-1 +kerning first=346 second=82 amount=-1 +kerning first=209 second=263 amount=-1 +kerning first=77 second=171 amount=-1 +kerning first=1039 second=1025 amount=-1 +kerning first=8222 second=248 amount=-1 +kerning first=187 second=121 amount=-1 +kerning first=113 second=171 amount=-1 +kerning first=196 second=8250 amount=-1 +kerning first=105 second=333 amount=-1 +kerning first=281 second=263 amount=-1 +kerning first=250 second=246 amount=-1 +kerning first=1064 second=1060 amount=-1 +kerning first=337 second=103 amount=-1 +kerning first=1027 second=1119 amount=-1 +kerning first=8220 second=256 amount=-2 +kerning first=327 second=353 amount=-1 +kerning first=85 second=102 amount=-1 +kerning first=109 second=246 amount=-1 +kerning first=1067 second=1118 amount=-1 +kerning first=229 second=103 amount=-1 +kerning first=199 second=77 amount=-1 +kerning first=231 second=100 amount=-1 +kerning first=278 second=220 amount=-1 +kerning first=350 second=220 amount=-1 +kerning first=267 second=100 amount=-1 +kerning first=1060 second=1083 amount=-1 +kerning first=264 second=109 amount=-1 +kerning first=87 second=242 amount=-1 +kerning first=230 second=316 amount=-1 +kerning first=290 second=310 amount=-1 +kerning first=194 second=316 amount=-1 +kerning first=196 second=369 amount=-1 +kerning first=261 second=333 amount=-1 +kerning first=202 second=68 amount=-1 +kerning first=199 second=304 amount=-1 +kerning first=266 second=316 amount=-1 +kerning first=367 second=267 amount=-1 +kerning first=264 second=242 amount=-1 +kerning first=362 second=365 amount=-1 +kerning first=102 second=8218 amount=-1 +kerning first=369 second=333 amount=-1 +kerning first=235 second=8222 amount=-1 +kerning first=209 second=211 amount=-1 +kerning first=228 second=242 amount=-1 +kerning first=199 second=8222 amount=-1 +kerning first=214 second=194 amount=-1 +kerning first=347 second=289 amount=-1 +kerning first=268 second=313 amount=-1 +kerning first=1051 second=1094 amount=-1 +kerning first=116 second=233 amount=-1 +kerning first=304 second=313 amount=-1 +kerning first=85 second=210 amount=-1 +kerning first=224 second=339 amount=-1 +kerning first=86 second=111 amount=-1 +kerning first=87 second=109 amount=-1 +kerning first=374 second=256 amount=-1 +kerning first=323 second=8220 amount=-1 +kerning first=8222 second=86 amount=-2 +kerning first=323 second=245 amount=-1 +kerning first=74 second=263 amount=-1 +kerning first=227 second=111 amount=-1 +kerning first=287 second=245 amount=-1 +kerning first=263 second=111 amount=-1 +kerning first=206 second=280 amount=-1 +kerning first=119 second=120 amount=-1 +kerning first=1030 second=1057 amount=-1 +kerning first=278 second=280 amount=-1 +kerning first=231 second=233 amount=-1 +kerning first=350 second=280 amount=-1 +kerning first=296 second=339 amount=-1 +kerning first=187 second=219 amount=-1 +kerning first=71 second=274 amount=-1 +kerning first=103 second=104 amount=-1 +kerning first=339 second=233 amount=-1 +kerning first=368 second=339 amount=-1 +kerning first=368 second=120 amount=-1 +kerning first=1049 second=1118 amount=-1 +kerning first=103 second=277 amount=-1 +kerning first=200 second=298 amount=-1 +kerning first=280 second=212 amount=-1 +kerning first=197 second=8217 amount=-2 +kerning first=272 second=298 amount=-1 +kerning first=233 second=8217 amount=-2 +kerning first=269 second=8217 amount=-2 +kerning first=266 second=102 amount=-1 +kerning first=67 second=212 amount=-1 +kerning first=212 second=8217 amount=-2 +kerning first=345 second=230 amount=-1 +kerning first=362 second=357 amount=-1 +kerning first=281 second=369 amount=-1 +kerning first=220 second=344 amount=-1 +kerning first=251 second=245 amount=-1 +kerning first=1038 second=1104 amount=-1 +kerning first=8250 second=334 amount=-1 +kerning first=298 second=331 amount=-1 +kerning first=98 second=289 amount=-1 +kerning first=311 second=289 amount=-1 +kerning first=110 second=245 amount=-1 +kerning first=370 second=331 amount=-1 +kerning first=74 second=245 amount=-1 +kerning first=85 second=331 amount=-1 +kerning first=305 second=8217 amount=-1 +kerning first=313 second=221 amount=-1 +kerning first=199 second=85 amount=-1 +kerning first=275 second=289 amount=-1 +kerning first=244 second=8221 amount=-2 +kerning first=367 second=113 amount=-1 +kerning first=1052 second=1096 amount=-1 +kerning first=1068 second=1049 amount=-1 +kerning first=323 second=366 amount=-1 +kerning first=1050 second=1095 amount=-1 +kerning first=211 second=195 amount=-1 +kerning first=88 second=116 amount=-1 +kerning first=203 second=216 amount=-1 +kerning first=259 second=113 amount=-1 +kerning first=205 second=67 amount=-1 +kerning first=325 second=79 amount=-1 +kerning first=73 second=8218 amount=-1 +kerning first=65 second=345 amount=-1 +kerning first=8222 second=240 amount=-1 +kerning first=70 second=195 amount=-1 +kerning first=289 second=250 amount=-1 +kerning first=262 second=104 amount=-1 +kerning first=253 second=250 amount=-1 +kerning first=121 second=104 amount=-1 +kerning first=1056 second=1119 amount=-1 +kerning first=221 second=249 amount=-1 +kerning first=207 second=269 amount=-1 +kerning first=364 second=70 amount=-1 +kerning first=218 second=357 amount=-1 +kerning first=8218 second=283 amount=-1 +kerning first=79 second=70 amount=-1 +kerning first=368 second=274 amount=-1 +kerning first=374 second=258 amount=-1 +kerning first=314 second=345 amount=-1 +kerning first=346 second=76 amount=-1 +kerning first=296 second=274 amount=-1 +kerning first=77 second=357 amount=-1 +kerning first=220 second=70 amount=-1 +kerning first=213 second=46 amount=-1 +kerning first=274 second=76 amount=-1 +kerning first=211 second=368 amount=-1 +kerning first=206 second=207 amount=-1 +kerning first=1049 second=1105 amount=-1 +kerning first=250 second=291 amount=-1 +kerning first=106 second=8221 amount=-1 +kerning first=278 second=207 amount=-1 +kerning first=67 second=204 amount=-1 +kerning first=211 second=8221 amount=-2 +kerning first=350 second=207 amount=-1 +kerning first=232 second=107 amount=-1 +kerning first=221 second=243 amount=-1 +kerning first=99 second=382 amount=-1 +kerning first=70 second=368 amount=-1 +kerning first=66 second=197 amount=-1 +kerning first=196 second=107 amount=-1 +kerning first=108 second=369 amount=-1 +kerning first=209 second=271 amount=-1 +kerning first=209 second=336 amount=-1 +kerning first=366 second=8250 amount=-2 +kerning first=1053 second=1086 amount=-1 +kerning first=1065 second=1054 amount=-1 +kerning first=74 second=366 amount=-1 +kerning first=281 second=271 amount=-1 +kerning first=8222 second=117 amount=-1 +kerning first=73 second=259 amount=-1 +kerning first=193 second=116 amount=-1 +kerning first=354 second=378 amount=-1 +kerning first=8217 second=252 amount=-1 +kerning first=370 second=210 amount=-1 +kerning first=89 second=256 amount=-1 +kerning first=262 second=210 amount=-1 +kerning first=298 second=200 amount=-1 +kerning first=364 second=122 amount=-1 +kerning first=298 second=210 amount=-1 +kerning first=246 second=378 amount=-1 +kerning first=196 second=86 amount=-1 +kerning first=8218 second=269 amount=-1 +kerning first=302 second=382 amount=-1 +kerning first=202 second=202 amount=-1 +kerning first=209 second=8220 amount=-1 +kerning first=1059 second=1117 amount=-1 +kerning first=1069 second=1083 amount=-1 +kerning first=8250 second=326 amount=-1 +kerning first=1066 second=1044 amount=-1 +kerning first=80 second=235 amount=-1 +kerning first=223 second=187 amount=-1 +kerning first=362 second=207 amount=-1 +kerning first=116 second=235 amount=-1 +kerning first=266 second=209 amount=-1 +kerning first=368 second=347 amount=-1 +kerning first=221 second=235 amount=-1 +kerning first=275 second=281 amount=-1 +kerning first=70 second=97 amount=-1 +kerning first=296 second=347 amount=-1 +kerning first=257 second=235 amount=-1 +kerning first=200 second=290 amount=-1 +kerning first=68 second=198 amount=-1 +kerning first=217 second=350 amount=-1 +kerning first=77 second=211 amount=-1 +kerning first=250 second=277 amount=-1 +kerning first=1033 second=1056 amount=-1 +kerning first=119 second=347 amount=-1 +kerning first=1069 second=1056 amount=-1 +kerning first=205 second=213 amount=-1 +kerning first=1075 second=1090 amount=-1 +kerning first=70 second=268 amount=-1 +kerning first=8218 second=275 amount=-1 +kerning first=355 second=97 amount=-1 +kerning first=1056 second=1077 amount=-1 +kerning first=80 second=283 amount=-1 +kerning first=327 second=351 amount=-1 +kerning first=116 second=283 amount=-1 +kerning first=291 second=351 amount=-1 +kerning first=199 second=231 amount=-1 +kerning first=255 second=351 amount=-1 +kerning first=200 second=363 amount=-1 +kerning first=235 second=231 amount=-1 +kerning first=219 second=351 amount=-1 +kerning first=271 second=231 amount=-1 +kerning first=8249 second=219 amount=-1 +kerning first=325 second=350 amount=-1 +kerning first=1091 second=1087 amount=-1 +kerning first=214 second=88 amount=-1 +kerning first=1042 second=1081 amount=-1 +kerning first=77 second=244 amount=-1 +kerning first=221 second=257 amount=-1 +kerning first=338 second=67 amount=-1 +kerning first=1054 second=1049 amount=-1 +kerning first=1078 second=1081 amount=-1 +kerning first=121 second=8249 amount=-1 +kerning first=1033 second=1064 amount=-1 +kerning first=365 second=283 amount=-1 +kerning first=217 second=79 amount=-1 +kerning first=218 second=244 amount=-1 +kerning first=257 second=283 amount=-1 +kerning first=201 second=82 amount=-1 +kerning first=226 second=8249 amount=-1 +kerning first=307 second=231 amount=-1 +kerning first=73 second=344 amount=-1 +kerning first=65 second=307 amount=-1 +kerning first=86 second=338 amount=-1 +kerning first=78 second=351 amount=-1 +kerning first=326 second=244 amount=-1 +kerning first=221 second=283 amount=-1 +kerning first=362 second=244 amount=-1 +kerning first=82 second=332 amount=-1 +kerning first=87 second=345 amount=-1 +kerning first=200 second=202 amount=-1 +kerning first=314 second=244 amount=-1 +kerning first=72 second=209 amount=-1 +kerning first=105 second=248 amount=-1 +kerning first=192 second=345 amount=-1 +kerning first=1062 second=1089 amount=-1 +kerning first=330 second=218 amount=-1 +kerning first=228 second=345 amount=-1 +kerning first=271 second=283 amount=-1 +kerning first=1048 second=1076 amount=-1 +kerning first=71 second=44 amount=-1 +kerning first=264 second=345 amount=-1 +kerning first=307 second=283 amount=-1 +kerning first=268 second=235 amount=-1 +kerning first=339 second=369 amount=-1 +kerning first=199 second=283 amount=-1 +kerning first=187 second=332 amount=-1 +kerning first=220 second=371 amount=-1 +kerning first=304 second=235 amount=-1 +kerning first=235 second=283 amount=-1 +kerning first=274 second=274 amount=-1 +kerning first=203 second=367 amount=-1 +kerning first=207 second=257 amount=-1 +kerning first=112 second=380 amount=-1 +kerning first=1051 second=1067 amount=-1 +kerning first=202 second=274 amount=-1 +kerning first=275 second=367 amount=-1 +kerning first=108 second=101 amount=-1 +kerning first=362 second=192 amount=-1 +kerning first=217 second=380 amount=-1 +kerning first=89 second=213 amount=-1 +kerning first=85 second=323 amount=-1 +kerning first=325 second=66 amount=-1 +kerning first=106 second=281 amount=-1 +kerning first=253 second=380 amount=-1 +kerning first=218 second=192 amount=-1 +kerning first=213 second=209 amount=-1 +kerning first=199 second=226 amount=-1 +kerning first=1065 second=1080 amount=-1 +kerning first=195 second=336 amount=-1 +kerning first=1036 second=1054 amount=-1 +kerning first=350 second=44 amount=-1 +kerning first=262 second=323 amount=-1 +kerning first=86 second=252 amount=-1 +kerning first=71 second=330 amount=-1 +kerning first=263 second=252 amount=-1 +kerning first=45 second=119 amount=-1 +kerning first=370 second=323 amount=-1 +kerning first=198 second=70 amount=-1 +kerning first=346 second=274 amount=-1 +kerning first=334 second=323 amount=-1 +kerning first=229 second=244 amount=-1 +kerning first=89 second=171 amount=-2 +kerning first=298 second=323 amount=-1 +kerning first=8250 second=68 amount=-1 +kerning first=270 second=70 amount=-1 +kerning first=296 second=231 amount=-1 +kerning first=354 second=248 amount=-1 +kerning first=258 second=119 amount=-1 +kerning first=328 second=8217 amount=-2 +kerning first=296 second=261 amount=-1 +kerning first=290 second=366 amount=-1 +kerning first=65 second=44 amount=-1 +kerning first=282 second=218 amount=-1 +kerning first=323 second=201 amount=-1 +kerning first=368 second=231 amount=-1 +kerning first=193 second=214 amount=-1 +kerning first=1069 second=1055 amount=-1 +kerning first=210 second=218 amount=-1 +kerning first=198 second=327 amount=-1 +kerning first=1068 second=1071 amount=-1 +kerning first=74 second=229 amount=-1 +kerning first=229 second=314 amount=-1 +kerning first=242 second=44 amount=-1 +kerning first=193 second=314 amount=-1 +kerning first=224 second=231 amount=-1 +kerning first=101 second=44 amount=-1 +kerning first=69 second=218 amount=-1 +kerning first=74 second=201 amount=-1 +kerning first=262 second=353 amount=-1 +kerning first=266 second=243 amount=-1 +kerning first=97 second=8249 amount=-1 +kerning first=362 second=249 amount=-1 +kerning first=1028 second=1081 amount=-1 +kerning first=370 second=223 amount=-1 +kerning first=230 second=243 amount=-1 +kerning first=337 second=314 amount=-1 +kerning first=338 second=80 amount=-1 +kerning first=334 second=353 amount=-1 +kerning first=187 second=196 amount=-1 +kerning first=302 second=80 amount=-1 +kerning first=298 second=353 amount=-1 +kerning first=298 second=223 amount=-1 +kerning first=302 second=243 amount=-1 +kerning first=88 second=214 amount=-1 +kerning first=218 second=249 amount=-1 +kerning first=370 second=353 amount=-1 +kerning first=374 second=243 amount=-1 +kerning first=330 second=350 amount=-1 +kerning first=1064 second=1081 amount=-1 +kerning first=370 second=310 amount=-1 +kerning first=1118 second=1114 amount=-1 +kerning first=85 second=223 amount=-1 +kerning first=218 second=72 amount=-1 +kerning first=119 second=287 amount=-1 +kerning first=286 second=45 amount=-1 +kerning first=1064 second=1036 amount=-1 +kerning first=266 second=80 amount=-1 +kerning first=85 second=353 amount=-1 +kerning first=262 second=223 amount=-1 +kerning first=89 second=243 amount=-1 +kerning first=87 second=101 amount=-1 +kerning first=198 second=284 amount=-1 +kerning first=212 second=370 amount=-1 +kerning first=1046 second=1114 amount=-1 +kerning first=84 second=97 amount=-1 +kerning first=71 second=370 amount=-1 +kerning first=366 second=363 amount=-1 +kerning first=121 second=353 amount=-1 +kerning first=116 second=240 amount=-1 +kerning first=1051 second=1097 amount=-1 +kerning first=1065 second=1082 amount=-1 +kerning first=1059 second=1098 amount=-1 +kerning first=82 second=362 amount=-1 +kerning first=259 second=232 amount=-1 +kerning first=228 second=101 amount=-1 +kerning first=288 second=200 amount=-1 +kerning first=1067 second=1072 amount=-1 +kerning first=187 second=362 amount=-1 +kerning first=8222 second=99 amount=-1 +kerning first=1069 second=1027 amount=-1 +kerning first=204 second=266 amount=-1 +kerning first=199 second=296 amount=-1 +kerning first=78 second=347 amount=-1 +kerning first=74 second=258 amount=-1 +kerning first=367 second=232 amount=-1 +kerning first=259 second=8250 amount=-1 +kerning first=223 second=8250 amount=-1 +kerning first=118 second=8250 amount=-1 +kerning first=197 second=71 amount=-1 +kerning first=202 second=217 amount=-1 +kerning first=269 second=234 amount=-1 +kerning first=233 second=234 amount=-1 +kerning first=274 second=217 amount=-1 +kerning first=1031 second=1072 amount=-1 +kerning first=310 second=217 amount=-1 +kerning first=305 second=234 amount=-1 +kerning first=346 second=217 amount=-1 +kerning first=1036 second=1096 amount=-1 +kerning first=228 second=8220 amount=-2 +kerning first=80 second=313 amount=-1 +kerning first=97 second=111 amount=-1 +kerning first=192 second=8220 amount=-2 +kerning first=221 second=229 amount=-1 +kerning first=97 second=287 amount=-1 +kerning first=252 second=235 amount=-1 +kerning first=264 second=8220 amount=-1 +kerning first=234 second=254 amount=-1 +kerning first=205 second=72 amount=-1 +kerning first=66 second=8218 amount=-1 +kerning first=336 second=8220 amount=-2 +kerning first=1051 second=1024 amount=-1 +kerning first=77 second=352 amount=-1 +kerning first=193 second=374 amount=-1 +kerning first=356 second=267 amount=-1 +kerning first=296 second=69 amount=-1 +kerning first=1030 second=1117 amount=-1 +kerning first=366 second=212 amount=-1 +kerning first=218 second=352 amount=-1 +kerning first=339 second=263 amount=-1 +kerning first=377 second=8220 amount=-1 +kerning first=1057 second=1061 amount=-1 +kerning first=205 second=278 amount=-1 +kerning first=266 second=259 amount=-1 +kerning first=278 second=315 amount=-1 +kerning first=362 second=352 amount=-1 +kerning first=1038 second=1083 amount=-1 +kerning first=258 second=212 amount=-1 +kerning first=87 second=8220 amount=-1 +kerning first=101 second=104 amount=-1 +kerning first=206 second=315 amount=-1 +kerning first=197 second=114 amount=-1 +kerning first=83 second=68 amount=-1 +kerning first=67 second=199 amount=-1 +kerning first=219 second=115 amount=-1 +kerning first=269 second=114 amount=-1 +kerning first=255 second=115 amount=-1 +kerning first=233 second=114 amount=-1 +kerning first=291 second=115 amount=-1 +kerning first=87 second=194 amount=-1 +kerning first=316 second=250 amount=-1 +kerning first=323 second=331 amount=-1 +kerning first=280 second=199 amount=-1 +kerning first=78 second=115 amount=-1 +kerning first=231 second=263 amount=-1 +kerning first=202 second=81 amount=-1 +kerning first=334 second=310 amount=-1 +kerning first=232 second=365 amount=-1 +kerning first=298 second=310 amount=-1 +kerning first=368 second=68 amount=-1 +kerning first=45 second=106 amount=-1 +kerning first=67 second=269 amount=-1 +kerning first=74 second=361 amount=-1 +kerning first=103 second=269 amount=-1 +kerning first=196 second=365 amount=-1 +kerning first=316 second=269 amount=-1 +kerning first=327 second=115 amount=-1 +kerning first=252 second=243 amount=-1 +kerning first=8222 second=235 amount=-1 +kerning first=85 second=310 amount=-1 +kerning first=296 second=68 amount=-1 +kerning first=74 second=331 amount=-1 +kerning first=73 second=346 amount=-1 +kerning first=266 second=245 amount=-1 +kerning first=281 second=277 amount=-1 +kerning first=209 second=78 amount=-1 +kerning first=330 second=246 amount=-1 +kerning first=8218 second=229 amount=-1 +kerning first=1048 second=1062 amount=-1 +kerning first=213 second=282 amount=-1 +kerning first=1069 second=1043 amount=-1 +kerning first=368 second=334 amount=-1 +kerning first=366 second=347 amount=-1 +kerning first=8222 second=305 amount=-1 +kerning first=323 second=288 amount=-1 +kerning first=1033 second=1043 amount=-1 +kerning first=283 second=355 amount=-1 +kerning first=70 second=260 amount=-1 +kerning first=207 second=227 amount=-1 +kerning first=211 second=84 amount=-1 +kerning first=8218 second=101 amount=-1 +kerning first=1069 second=1041 amount=-1 +kerning first=72 second=282 amount=-1 +kerning first=1066 second=1052 amount=-1 +kerning first=272 second=8217 amount=-2 +kerning first=211 second=260 amount=-1 +kerning first=1030 second=1052 amount=-1 +kerning first=1078 second=1094 amount=-1 +kerning first=74 second=288 amount=-1 +kerning first=1042 second=1094 amount=-1 +kerning first=346 second=187 amount=-1 +kerning first=217 second=337 amount=-1 +kerning first=362 second=279 amount=-1 +kerning first=193 second=108 amount=-1 +kerning first=65 second=87 amount=-1 +kerning first=310 second=187 amount=-1 +kerning first=229 second=108 amount=-1 +kerning first=269 second=367 amount=-1 +kerning first=255 second=8217 amount=-2 +kerning first=105 second=291 amount=-1 +kerning first=291 second=8217 amount=-2 +kerning first=269 second=111 amount=-1 +kerning first=327 second=8217 amount=-1 +kerning first=337 second=108 amount=-1 +kerning first=363 second=8217 amount=-1 +kerning first=286 second=75 amount=-1 +kerning first=77 second=279 amount=-1 +kerning first=1056 second=1064 amount=-1 +kerning first=214 second=75 amount=-1 +kerning first=370 second=216 amount=-1 +kerning first=202 second=187 amount=-1 +kerning first=362 second=70 amount=-1 +kerning first=268 second=99 amount=-1 +kerning first=218 second=279 amount=-1 +kerning first=325 second=337 amount=-1 +kerning first=304 second=99 amount=-1 +kerning first=196 second=361 amount=-1 +kerning first=368 second=355 amount=-1 +kerning first=97 second=187 amount=-1 +kerning first=289 second=337 amount=-1 +kerning first=105 second=235 amount=-1 +kerning first=73 second=75 amount=-1 +kerning first=232 second=99 amount=-1 +kerning first=200 second=268 amount=-1 +kerning first=289 second=242 amount=-1 +kerning first=258 second=255 amount=-1 +kerning first=325 second=242 amount=-1 +kerning first=225 second=333 amount=-1 +kerning first=221 second=99 amount=-1 +kerning first=1050 second=1082 amount=-1 +kerning first=217 second=242 amount=-1 +kerning first=250 second=281 amount=-1 +kerning first=257 second=99 amount=-1 +kerning first=1065 second=1104 amount=-1 +kerning first=315 second=86 amount=-1 +kerning first=344 second=268 amount=-1 +kerning first=213 second=347 amount=-1 +kerning first=8249 second=370 amount=-1 +kerning first=45 second=255 amount=-1 +kerning first=365 second=99 amount=-1 +kerning first=213 second=89 amount=-1 +kerning first=171 second=86 amount=-1 +kerning first=67 second=364 amount=-1 +kerning first=72 second=347 amount=-1 +kerning first=305 second=277 amount=-1 +kerning first=69 second=77 amount=-1 +kerning first=269 second=277 amount=-1 +kerning first=274 second=325 amount=-1 +kerning first=233 second=277 amount=-1 +kerning first=364 second=198 amount=-1 +kerning first=219 second=264 amount=-1 +kerning first=346 second=325 amount=-1 +kerning first=1053 second=1073 amount=-1 +kerning first=73 second=281 amount=-1 +kerning first=109 second=281 amount=-1 +kerning first=78 second=264 amount=-1 +kerning first=284 second=69 amount=-1 +kerning first=113 second=108 amount=-1 +kerning first=280 second=8217 amount=-1 +kerning first=8222 second=335 amount=-1 +kerning first=209 second=241 amount=-1 +kerning first=316 second=8217 amount=-1 +kerning first=352 second=364 amount=-1 +kerning first=70 second=290 amount=-1 +kerning first=374 second=351 amount=-1 +kerning first=328 second=233 amount=-1 +kerning first=288 second=282 amount=-1 +kerning first=298 second=82 amount=-1 +kerning first=364 second=233 amount=-1 +kerning first=262 second=82 amount=-1 +kerning first=280 second=364 amount=-1 +kerning first=374 second=286 amount=-1 +kerning first=103 second=8217 amount=-2 +kerning first=370 second=82 amount=-1 +kerning first=1041 second=1117 amount=-1 +kerning first=71 second=69 amount=-1 +kerning first=334 second=82 amount=-1 +kerning first=1077 second=1117 amount=-1 +kerning first=212 second=69 amount=-1 +kerning first=208 second=8217 amount=-2 +kerning first=1041 second=1052 amount=-1 +kerning first=254 second=108 amount=-1 +kerning first=244 second=8217 amount=-2 +kerning first=1047 second=1091 amount=-1 +kerning first=105 second=243 amount=-1 +kerning first=266 second=286 amount=-1 +kerning first=89 second=351 amount=-1 +kerning first=66 second=86 amount=-1 +kerning first=222 second=8218 amount=-1 +kerning first=1038 second=1061 amount=-1 +kerning first=338 second=286 amount=-1 +kerning first=302 second=351 amount=-1 +kerning first=70 second=355 amount=-1 +kerning first=89 second=286 amount=-1 +kerning first=266 second=351 amount=-1 +kerning first=75 second=338 amount=-1 +kerning first=230 second=351 amount=-1 +kerning first=1105 second=1078 amount=-1 +kerning first=199 second=334 amount=-1 +kerning first=1064 second=1030 amount=-1 +kerning first=194 second=286 amount=-1 +kerning first=80 second=99 amount=-1 +kerning first=85 second=82 amount=-1 +kerning first=66 second=365 amount=-1 +kerning first=272 second=203 amount=-1 +kerning first=1039 second=1095 amount=-1 +kerning first=87 second=229 amount=-1 +kerning first=1056 second=1043 amount=-1 +kerning first=327 second=103 amount=-1 +kerning first=1041 second=1037 amount=-1 +kerning first=118 second=254 amount=-1 +kerning first=1064 second=1072 amount=-1 +kerning first=74 second=117 amount=-1 +kerning first=200 second=203 amount=-1 +kerning first=1052 second=1074 amount=-1 +kerning first=220 second=80 amount=-1 +kerning first=220 second=122 amount=-1 +kerning first=1042 second=1083 amount=-1 +kerning first=287 second=117 amount=-1 +kerning first=220 second=100 amount=-1 +kerning first=323 second=269 amount=-1 +kerning first=1049 second=1083 amount=-1 +kerning first=88 second=171 amount=-1 +kerning first=70 second=298 amount=-1 +kerning first=67 second=8217 amount=-1 +kerning first=211 second=298 amount=-1 +kerning first=193 second=171 amount=-1 +kerning first=364 second=100 amount=-1 +kerning first=328 second=263 amount=-1 +kerning first=264 second=229 amount=-1 +kerning first=229 second=171 amount=-1 +kerning first=1036 second=1104 amount=-1 +kerning first=364 second=263 amount=-1 +kerning first=369 second=246 amount=-1 +kerning first=1038 second=1118 amount=-1 +kerning first=210 second=356 amount=-1 +kerning first=66 second=75 amount=-1 +kerning first=368 second=369 amount=-1 +kerning first=296 second=304 amount=-1 +kerning first=8217 second=230 amount=-1 +kerning first=261 second=246 amount=-1 +kerning first=368 second=304 amount=-1 +kerning first=73 second=66 amount=-1 +kerning first=225 second=246 amount=-1 +kerning first=83 second=304 amount=-1 +kerning first=1065 second=1118 amount=-1 +kerning first=1039 second=1060 amount=-1 +kerning first=1049 second=1080 amount=-1 +kerning first=199 second=120 amount=-1 +kerning first=1070 second=1031 amount=-1 +kerning first=277 second=316 amount=-1 +kerning first=84 second=246 amount=-1 +kerning first=235 second=120 amount=-1 +kerning first=195 second=220 amount=-1 +kerning first=1078 second=1086 amount=-1 +kerning first=344 second=368 amount=-1 +kerning first=200 second=8221 amount=-1 +kerning first=240 second=103 amount=-1 +kerning first=194 second=221 amount=-1 +kerning first=204 second=103 amount=-1 +kerning first=275 second=382 amount=-1 +kerning first=272 second=8221 amount=-2 +kerning first=279 second=249 amount=-1 +kerning first=99 second=103 amount=-1 +kerning first=200 second=368 amount=-1 +kerning first=289 second=109 amount=-1 +kerning first=344 second=8221 amount=-1 +kerning first=1078 second=1108 amount=-1 +kerning first=288 second=330 amount=-1 +kerning first=339 second=347 amount=-1 +kerning first=1047 second=1034 amount=-1 +kerning first=72 second=68 amount=-1 +kerning first=272 second=368 amount=-1 +kerning first=103 second=307 amount=-1 +kerning first=217 second=109 amount=-1 +kerning first=213 second=68 amount=-1 +kerning first=1046 second=1092 amount=-1 +kerning first=279 second=8218 amount=-1 +kerning first=97 second=382 amount=-1 +kerning first=234 second=116 amount=-1 +kerning first=119 second=98 amount=-1 +kerning first=210 second=85 amount=-1 +kerning first=287 second=223 amount=-1 +kerning first=72 second=339 amount=-1 +kerning first=69 second=85 amount=-1 +kerning first=219 second=256 amount=-1 +kerning first=67 second=234 amount=-1 +kerning first=321 second=8220 amount=-1 +kerning first=1053 second=1081 amount=-1 +kerning first=201 second=210 amount=-1 +kerning first=89 second=199 amount=-1 +kerning first=1070 second=1059 amount=-1 +kerning first=264 second=302 amount=-1 +kerning first=323 second=223 amount=-1 +kerning first=217 second=280 amount=-1 +kerning first=100 second=243 amount=-1 +kerning first=325 second=280 amount=-1 +kerning first=268 second=335 amount=-1 +kerning first=1050 second=1090 amount=-1 +kerning first=232 second=335 amount=-1 +kerning first=205 second=243 amount=-1 +kerning first=356 second=232 amount=-1 +kerning first=367 second=337 amount=-1 +kerning first=70 second=363 amount=-1 +kerning first=304 second=335 amount=-1 +kerning first=277 second=243 amount=-1 +kerning first=241 second=243 amount=-1 +kerning first=74 second=223 amount=-1 +kerning first=108 second=339 amount=-1 +kerning first=249 second=339 amount=-1 +kerning first=270 second=219 amount=-1 +kerning first=283 second=363 amount=-1 +kerning first=70 second=225 amount=-1 +kerning first=198 second=219 amount=-1 +kerning first=287 second=8249 amount=-1 +kerning first=1107 second=1102 amount=-1 +kerning first=323 second=8249 amount=-1 +kerning first=368 second=71 amount=-1 +kerning first=207 second=357 amount=-1 +kerning first=206 second=350 amount=-1 +kerning first=213 second=76 amount=-1 +kerning first=282 second=365 amount=-1 +kerning first=72 second=76 amount=-1 +kerning first=279 second=357 amount=-1 +kerning first=73 second=100 amount=-1 +kerning first=1048 second=1034 amount=-1 +kerning first=214 second=196 amount=-1 +kerning first=109 second=289 amount=-1 +kerning first=250 second=289 amount=-1 +kerning first=267 second=228 amount=-1 +kerning first=316 second=234 amount=-1 +kerning first=214 second=354 amount=-1 +kerning first=204 second=370 amount=-1 +kerning first=8250 second=357 amount=-1 +kerning first=1049 second=1075 amount=-1 +kerning first=1078 second=1080 amount=-1 +kerning first=298 second=111 amount=-1 +kerning first=231 second=228 amount=-1 +kerning first=110 second=8249 amount=-1 +kerning first=1049 second=1074 amount=-1 +kerning first=282 second=85 amount=-1 +kerning first=278 second=79 amount=-1 +kerning first=1044 second=1108 amount=-1 +kerning first=72 second=274 amount=-1 +kerning first=204 second=366 amount=-1 +kerning first=350 second=250 amount=-1 +kerning first=346 second=46 amount=-1 +kerning first=310 second=46 amount=-1 +kerning first=45 second=112 amount=-1 +kerning first=354 second=283 amount=-1 +kerning first=1070 second=1045 amount=-1 +kerning first=80 second=378 amount=-1 +kerning first=368 second=8222 amount=-2 +kerning first=1071 second=1062 amount=-1 +kerning first=324 second=335 amount=-1 +kerning first=1054 second=1050 amount=-1 +kerning first=278 second=8218 amount=-1 +kerning first=8216 second=353 amount=-1 +kerning first=101 second=250 amount=-1 +kerning first=209 second=70 amount=-1 +kerning first=65 second=250 amount=-1 +kerning first=66 second=357 amount=-1 +kerning first=75 second=67 amount=-1 +kerning first=364 second=229 amount=-1 +kerning first=73 second=216 amount=-1 +kerning first=314 second=250 amount=-1 +kerning first=278 second=250 amount=-1 +kerning first=8220 second=115 amount=-1 +kerning first=1049 second=1060 amount=-1 +kerning first=272 second=195 amount=-1 +kerning first=66 second=192 amount=-1 +kerning first=72 second=382 amount=-1 +kerning first=68 second=70 amount=-1 +kerning first=213 second=274 amount=-1 +kerning first=266 second=213 amount=-1 +kerning first=202 second=317 amount=-1 +kerning first=375 second=122 amount=-1 +kerning first=119 second=369 amount=-1 +kerning first=325 second=207 amount=-1 +kerning first=274 second=317 amount=-1 +kerning first=362 second=116 amount=-1 +kerning first=220 second=271 amount=-1 +kerning first=346 second=317 amount=-1 +kerning first=231 second=122 amount=-1 +kerning first=374 second=213 amount=-1 +kerning first=267 second=122 amount=-1 +kerning first=302 second=213 amount=-1 +kerning first=79 second=198 amount=-1 +kerning first=364 second=271 amount=-1 +kerning first=332 second=8222 amount=-1 +kerning first=234 second=113 amount=-1 +kerning first=70 second=119 amount=-1 +kerning first=204 second=201 amount=-1 +kerning first=77 second=116 amount=-1 +kerning first=257 second=378 amount=-1 +kerning first=323 second=323 amount=-1 +kerning first=1027 second=1096 amount=-1 +kerning first=221 second=378 amount=-1 +kerning first=1070 second=1051 amount=-1 +kerning first=8249 second=362 amount=-1 +kerning first=217 second=207 amount=-1 +kerning first=119 second=8222 amount=-1 +kerning first=82 second=262 amount=-1 +kerning first=218 second=116 amount=-1 +kerning first=187 second=262 amount=-1 +kerning first=210 second=315 amount=-1 +kerning first=79 second=366 amount=-1 +kerning first=87 second=113 amount=-1 +kerning first=254 second=314 amount=-1 +kerning first=220 second=259 amount=-1 +kerning first=213 second=204 amount=-1 +kerning first=1048 second=1081 amount=-1 +kerning first=291 second=355 amount=-1 +kerning first=80 second=195 amount=-1 +kerning first=113 second=314 amount=-1 +kerning first=65 second=363 amount=-1 +kerning first=101 second=363 amount=-1 +kerning first=364 second=259 amount=-1 +kerning first=278 second=266 amount=-1 +kerning first=205 second=110 amount=-1 +kerning first=212 second=198 amount=-1 +kerning first=323 second=116 amount=-1 +kerning first=344 second=67 amount=-1 +kerning first=279 second=369 amount=-1 +kerning first=287 second=116 amount=-1 +kerning first=1031 second=1030 amount=-1 +kerning first=278 second=363 amount=-1 +kerning first=67 second=73 amount=-1 +kerning first=200 second=207 amount=-1 +kerning first=200 second=67 amount=-1 +kerning first=350 second=363 amount=-1 +kerning first=205 second=317 amount=-1 +kerning first=323 second=76 amount=-1 +kerning first=272 second=207 amount=-1 +kerning first=66 second=369 amount=-1 +kerning first=264 second=113 amount=-1 +kerning first=187 second=210 amount=-1 +kerning first=8222 second=284 amount=-1 +kerning first=220 second=366 amount=-1 +kerning first=82 second=210 amount=-1 +kerning first=228 second=113 amount=-1 +kerning first=347 second=44 amount=-1 +kerning first=356 second=8250 amount=-1 +kerning first=1104 second=1093 amount=-1 +kerning first=270 second=302 amount=-1 +kerning first=78 second=213 amount=-1 +kerning first=67 second=268 amount=-1 +kerning first=267 second=271 amount=-1 +kerning first=1070 second=1038 amount=-1 +kerning first=284 second=8250 amount=-1 +kerning first=198 second=302 amount=-1 +kerning first=248 second=8250 amount=-1 +kerning first=339 second=271 amount=-1 +kerning first=280 second=268 amount=-1 +kerning first=212 second=8250 amount=-1 +kerning first=72 second=351 amount=-1 +kerning first=217 second=101 amount=-1 +kerning first=272 second=354 amount=-1 +kerning first=219 second=213 amount=-1 +kerning first=269 second=8220 amount=-2 +kerning first=234 second=8220 amount=-2 +kerning first=289 second=101 amount=-1 +kerning first=71 second=8250 amount=-1 +kerning first=198 second=8220 amount=-1 +kerning first=66 second=262 amount=-1 +kerning first=193 second=219 amount=-1 +kerning first=207 second=262 amount=-1 +kerning first=1044 second=1105 amount=-1 +kerning first=327 second=213 amount=-1 +kerning first=83 second=296 amount=-1 +kerning first=234 second=122 amount=-1 +kerning first=254 second=291 amount=-1 +kerning first=368 second=296 amount=-1 +kerning first=72 second=204 amount=-1 +kerning first=71 second=345 amount=-1 +kerning first=262 second=72 amount=-1 +kerning first=296 second=296 amount=-1 +kerning first=201 second=73 amount=-1 +kerning first=1078 second=1072 amount=-1 +kerning first=205 second=290 amount=-1 +kerning first=323 second=283 amount=-1 +kerning first=330 second=338 amount=-1 +kerning first=279 second=235 amount=-1 +kerning first=207 second=82 amount=-1 +kerning first=251 second=283 amount=-1 +kerning first=258 second=338 amount=-1 +kerning first=310 second=286 amount=-1 +kerning first=206 second=355 amount=-1 +kerning first=110 second=283 amount=-1 +kerning first=1067 second=1060 amount=-1 +kerning first=73 second=277 amount=-1 +kerning first=83 second=82 amount=-1 +kerning first=45 second=338 amount=-1 +kerning first=74 second=283 amount=-1 +kerning first=202 second=286 amount=-1 +kerning first=78 second=226 amount=-1 +kerning first=270 second=8220 amount=-2 +kerning first=213 second=351 amount=-1 +kerning first=114 second=226 amount=-1 +kerning first=232 second=367 amount=-1 +kerning first=254 second=287 amount=-1 +kerning first=272 second=260 amount=-1 +kerning first=210 second=86 amount=-1 +kerning first=82 second=8250 amount=-1 +kerning first=219 second=226 amount=-1 +kerning first=354 second=347 amount=-1 +kerning first=220 second=79 amount=-1 +kerning first=66 second=82 amount=-1 +kerning first=77 second=275 amount=-1 +kerning first=327 second=226 amount=-1 +kerning first=72 second=244 amount=-1 +kerning first=345 second=240 amount=-1 +kerning first=356 second=171 amount=-1 +kerning first=108 second=244 amount=-1 +kerning first=219 second=333 amount=-1 +kerning first=214 second=70 amount=-1 +kerning first=78 second=333 amount=-1 +kerning first=286 second=70 amount=-1 +kerning first=249 second=244 amount=-1 +kerning first=327 second=333 amount=-1 +kerning first=1064 second=1056 amount=-1 +kerning first=363 second=333 amount=-1 +kerning first=338 second=278 amount=-1 +kerning first=288 second=220 amount=-1 +kerning first=73 second=70 amount=-1 +kerning first=1055 second=1069 amount=-1 +kerning first=291 second=333 amount=-1 +kerning first=266 second=278 amount=-1 +kerning first=1039 second=1094 amount=-1 +kerning first=217 second=74 amount=-1 +kerning first=1052 second=1065 amount=-1 +kerning first=71 second=171 amount=-1 +kerning first=249 second=231 amount=-1 +kerning first=107 second=171 amount=-1 +kerning first=325 second=74 amount=-1 +kerning first=1031 second=1060 amount=-1 +kerning first=206 second=203 amount=-1 +kerning first=8250 second=76 amount=-1 +kerning first=224 second=269 amount=-1 +kerning first=72 second=231 amount=-1 +kerning first=284 second=171 amount=-1 +kerning first=199 second=201 amount=-1 +kerning first=108 second=231 amount=-1 +kerning first=338 second=252 amount=-1 +kerning first=370 second=214 amount=-1 +kerning first=1071 second=1071 amount=-1 +kerning first=362 second=313 amount=-1 +kerning first=298 second=214 amount=-1 +kerning first=107 second=318 amount=-1 +kerning first=296 second=269 amount=-1 +kerning first=374 second=252 amount=-1 +kerning first=262 second=214 amount=-1 +kerning first=323 second=261 amount=-1 +kerning first=323 second=310 amount=-1 +kerning first=66 second=249 amount=-1 +kerning first=8250 second=90 amount=-1 +kerning first=248 second=318 amount=-1 +kerning first=282 second=200 amount=-1 +kerning first=69 second=266 amount=-1 +kerning first=268 second=8222 amount=-1 +kerning first=212 second=209 amount=-1 +kerning first=232 second=8222 amount=-1 +kerning first=266 second=45 amount=-1 +kerning first=196 second=370 amount=-1 +kerning first=89 second=252 amount=-1 +kerning first=73 second=97 amount=-1 +kerning first=76 second=362 amount=-1 +kerning first=194 second=45 amount=-1 +kerning first=194 second=252 amount=-1 +kerning first=203 second=71 amount=-1 +kerning first=1062 second=1097 amount=-1 +kerning first=374 second=45 amount=-2 +kerning first=304 second=370 amount=-1 +kerning first=78 second=199 amount=-1 +kerning first=234 second=275 amount=-1 +kerning first=230 second=252 amount=-1 +kerning first=338 second=45 amount=-1 +kerning first=217 second=213 amount=-1 +kerning first=365 second=289 amount=-1 +kerning first=196 second=223 amount=-1 +kerning first=288 second=209 amount=-1 +kerning first=1105 second=1081 amount=-1 +kerning first=194 second=251 amount=-1 +kerning first=72 second=217 amount=-1 +kerning first=8250 second=296 amount=-1 +kerning first=304 second=223 amount=-1 +kerning first=204 second=257 amount=-1 +kerning first=77 second=338 amount=-1 +kerning first=268 second=223 amount=-1 +kerning first=364 second=232 amount=-1 +kerning first=213 second=217 amount=-1 +kerning first=1030 second=1027 amount=-1 +kerning first=338 second=251 amount=-1 +kerning first=328 second=232 amount=-1 +kerning first=67 second=108 amount=-1 +kerning first=230 second=251 amount=-1 +kerning first=224 second=243 amount=-1 +kerning first=321 second=217 amount=-1 +kerning first=1066 second=1027 amount=-1 +kerning first=296 second=243 amount=-1 +kerning first=282 second=266 amount=-1 +kerning first=374 second=251 amount=-1 +kerning first=368 second=243 amount=-1 +kerning first=83 second=274 amount=-1 +kerning first=259 second=171 amount=-1 +kerning first=101 second=242 amount=-1 +kerning first=214 second=8221 amount=-2 +kerning first=89 second=225 amount=-1 +kerning first=250 second=8221 amount=-1 +kerning first=284 second=345 amount=-1 +kerning first=235 second=335 amount=-1 +kerning first=286 second=8221 amount=-1 +kerning first=199 second=335 amount=-1 +kerning first=72 second=346 amount=-1 +kerning first=220 second=232 amount=-1 +kerning first=266 second=72 amount=-1 +kerning first=307 second=335 amount=-1 +kerning first=1048 second=1054 amount=-1 +kerning first=266 second=225 amount=-1 +kerning first=302 second=72 amount=-1 +kerning first=271 second=335 amount=-1 +kerning first=197 second=89 amount=-1 +kerning first=374 second=225 amount=-1 +kerning first=8249 second=83 amount=-1 +kerning first=206 second=242 amount=-1 +kerning first=1043 second=1105 amount=-1 +kerning first=1039 second=1052 amount=-1 +kerning first=1065 second=1089 amount=-1 +kerning first=1054 second=1063 amount=-1 +kerning first=65 second=336 amount=-1 +kerning first=204 second=243 amount=-1 +kerning first=262 second=114 amount=-1 +kerning first=1028 second=1117 amount=-1 +kerning first=338 second=72 amount=-1 +kerning first=85 second=241 amount=-1 +kerning first=1055 second=1096 amount=-1 +kerning first=78 second=214 amount=-1 +kerning first=217 second=269 amount=-1 +kerning first=370 second=241 amount=-1 +kerning first=338 second=366 amount=-1 +kerning first=8217 second=196 amount=-2 +kerning first=278 second=336 amount=-1 +kerning first=298 second=241 amount=-1 +kerning first=262 second=241 amount=-1 +kerning first=325 second=114 amount=-1 +kerning first=1060 second=1045 amount=-1 +kerning first=72 second=378 amount=-1 +kerning first=289 second=114 amount=-1 +kerning first=219 second=199 amount=-1 +kerning first=67 second=115 amount=-1 +kerning first=1071 second=1056 amount=-1 +kerning first=103 second=115 amount=-1 +kerning first=114 second=46 amount=-1 +kerning first=1036 second=1076 amount=-1 +kerning first=255 second=46 amount=-1 +kerning first=327 second=199 amount=-1 +kerning first=187 second=344 amount=-1 +kerning first=77 second=81 amount=-1 +kerning first=112 second=114 amount=-1 +kerning first=77 second=327 amount=-1 +kerning first=1049 second=1113 amount=-1 +kerning first=8222 second=249 amount=-1 +kerning first=85 second=361 amount=-1 +kerning first=217 second=114 amount=-1 +kerning first=108 second=378 amount=-1 +kerning first=206 second=79 amount=-1 +kerning first=204 second=284 amount=-1 +kerning first=218 second=327 amount=-1 +kerning first=1053 second=1045 amount=-1 +kerning first=65 second=216 amount=-1 +kerning first=290 second=327 amount=-1 +kerning first=74 second=310 amount=-1 +kerning first=218 second=81 amount=-1 +kerning first=362 second=327 amount=-1 +kerning first=73 second=8221 amount=-1 +kerning first=370 second=361 amount=-1 +kerning first=109 second=8221 amount=-2 +kerning first=206 second=216 amount=-1 +kerning first=362 second=81 amount=-1 +kerning first=88 second=218 amount=-1 +kerning first=333 second=8221 amount=-2 +kerning first=369 second=8221 amount=-1 +kerning first=110 second=246 amount=-1 +kerning first=214 second=44 amount=-1 +kerning first=80 second=8249 amount=-1 +kerning first=356 second=224 amount=-1 +kerning first=1042 second=1098 amount=-1 +kerning first=116 second=8249 amount=-1 +kerning first=78 second=72 amount=-1 +kerning first=221 second=369 amount=-1 +kerning first=221 second=8249 amount=-2 +kerning first=368 second=282 amount=-1 +kerning first=257 second=8249 amount=-1 +kerning first=1069 second=1068 amount=-1 +kerning first=221 second=331 amount=-1 +kerning first=296 second=282 amount=-1 +kerning first=209 second=352 amount=-1 +kerning first=199 second=102 amount=-1 +kerning first=85 second=267 amount=-1 +kerning first=1055 second=1070 amount=-1 +kerning first=219 second=72 amount=-1 +kerning first=1039 second=1055 amount=-1 +kerning first=1055 second=1089 amount=-1 +kerning first=83 second=282 amount=-1 +kerning first=233 second=98 amount=-1 +kerning first=86 second=248 amount=-1 +kerning first=193 second=218 amount=-1 +kerning first=227 second=248 amount=-1 +kerning first=8250 second=217 amount=-1 +kerning first=365 second=345 amount=-1 +kerning first=302 second=199 amount=-1 +kerning first=269 second=230 amount=-1 +kerning first=77 second=206 amount=-1 +kerning first=1067 second=1086 amount=-1 +kerning first=76 second=87 amount=-1 +kerning first=1033 second=1031 amount=-1 +kerning first=1031 second=1086 amount=-1 +kerning first=374 second=199 amount=-1 +kerning first=8217 second=259 amount=-1 +kerning first=290 second=206 amount=-1 +kerning first=230 second=291 amount=-1 +kerning first=201 second=361 amount=-1 +kerning first=218 second=206 amount=-1 +kerning first=77 second=288 amount=-1 +kerning first=1048 second=1080 amount=-1 +kerning first=199 second=227 amount=-1 +kerning first=290 second=8218 amount=-1 +kerning first=84 second=8221 amount=-1 +kerning first=313 second=84 amount=-1 +kerning first=66 second=81 amount=-1 +kerning first=269 second=337 amount=-1 +kerning first=362 second=206 amount=-1 +kerning first=120 second=8221 amount=-1 +kerning first=1091 second=1095 amount=-1 +kerning first=233 second=337 amount=-1 +kerning first=1055 second=1095 amount=-1 +kerning first=225 second=8221 amount=-2 +kerning first=207 second=81 amount=-1 +kerning first=187 second=197 amount=-1 +kerning first=261 second=8221 amount=-2 +kerning first=1043 second=1079 amount=-1 +kerning first=257 second=267 amount=-1 +kerning first=218 second=288 amount=-1 +kerning first=72 second=352 amount=-1 +kerning first=8249 second=221 amount=-1 +kerning first=206 second=362 amount=-1 +kerning first=212 second=197 amount=-1 +kerning first=103 second=187 amount=-1 +kerning first=83 second=270 amount=-1 +kerning first=217 second=75 amount=-1 +kerning first=195 second=219 amount=-1 +kerning first=278 second=362 amount=-1 +kerning first=1055 second=1117 amount=-1 +kerning first=72 second=325 amount=-1 +kerning first=67 second=187 amount=-1 +kerning first=350 second=362 amount=-1 +kerning first=218 second=8218 amount=-2 +kerning first=213 second=325 amount=-1 +kerning first=280 second=187 amount=-1 +kerning first=199 second=200 amount=-1 +kerning first=296 second=270 amount=-1 +kerning first=1075 second=1082 amount=-1 +kerning first=77 second=8218 amount=-1 +kerning first=1060 second=1030 amount=-1 +kerning first=244 second=187 amount=-1 +kerning first=298 second=333 amount=-1 +kerning first=70 second=66 amount=-1 +kerning first=65 second=255 amount=-1 +kerning first=335 second=382 amount=-1 +kerning first=80 second=8222 amount=-2 +kerning first=85 second=202 amount=-1 +kerning first=80 second=266 amount=-1 +kerning first=1036 second=1116 amount=-1 +kerning first=73 second=71 amount=-1 +kerning first=374 second=264 amount=-1 +kerning first=233 second=107 amount=-1 +kerning first=1055 second=1043 amount=-1 +kerning first=338 second=264 amount=-1 +kerning first=330 second=337 amount=-1 +kerning first=217 second=77 amount=-1 +kerning first=281 second=275 amount=-1 +kerning first=325 second=75 amount=-1 +kerning first=302 second=264 amount=-1 +kerning first=65 second=362 amount=-1 +kerning first=266 second=264 amount=-1 +kerning first=356 second=279 amount=-1 +kerning first=218 second=261 amount=-1 +kerning first=205 second=209 amount=-1 +kerning first=194 second=264 amount=-1 +kerning first=281 second=367 amount=-1 +kerning first=81 second=218 amount=-1 +kerning first=197 second=364 amount=-1 +kerning first=375 second=117 amount=-1 +kerning first=89 second=264 amount=-1 +kerning first=362 second=261 amount=-1 +kerning first=78 second=334 amount=-1 +kerning first=298 second=202 amount=-1 +kerning first=211 second=66 amount=-1 +kerning first=330 second=344 amount=-1 +kerning first=262 second=202 amount=-1 +kerning first=370 second=202 amount=-1 +kerning first=323 second=257 amount=-1 +kerning first=334 second=202 amount=-1 +kerning first=1027 second=1091 amount=-1 +kerning first=351 second=108 amount=-1 +kerning first=74 second=257 amount=-1 +kerning first=202 second=205 amount=-1 +kerning first=364 second=193 amount=-1 +kerning first=243 second=108 amount=-1 +kerning first=279 second=108 amount=-1 +kerning first=219 second=334 amount=-1 +kerning first=368 second=270 amount=-1 +kerning first=79 second=193 amount=-1 +kerning first=346 second=205 amount=-1 +kerning first=220 second=193 amount=-1 +kerning first=286 second=171 amount=-1 +kerning first=327 second=334 amount=-1 +kerning first=77 second=261 amount=-1 +kerning first=274 second=205 amount=-1 +kerning first=201 second=323 amount=-1 +kerning first=291 second=307 amount=-1 +kerning first=8218 second=113 amount=-1 +kerning first=8217 second=231 amount=-1 +kerning first=268 second=82 amount=-1 +kerning first=259 second=263 amount=-1 +kerning first=82 second=171 amount=-1 +kerning first=296 second=76 amount=-1 +kerning first=118 second=171 amount=-1 +kerning first=195 second=117 amount=-1 +kerning first=280 second=8218 amount=-1 +kerning first=368 second=351 amount=-1 +kerning first=220 second=46 amount=-2 +kerning first=86 second=286 amount=-1 +kerning first=296 second=351 amount=-1 +kerning first=99 second=365 amount=-1 +kerning first=339 second=117 amount=-1 +kerning first=1058 second=1074 amount=-1 +kerning first=288 second=68 amount=-1 +kerning first=8222 second=111 amount=-1 +kerning first=1055 second=1108 amount=-1 +kerning first=1108 second=1078 amount=-1 +kerning first=267 second=117 amount=-1 +kerning first=201 second=332 amount=-1 +kerning first=8250 second=282 amount=-1 +kerning first=192 second=8249 amount=-1 +kerning first=1031 second=1119 amount=-1 +kerning first=302 second=333 amount=-1 +kerning first=210 second=347 amount=-1 +kerning first=298 second=100 amount=-1 +kerning first=120 second=316 amount=-1 +kerning first=1118 second=1083 amount=-1 +kerning first=86 second=382 amount=-1 +kerning first=83 second=330 amount=-1 +kerning first=261 second=316 amount=-1 +kerning first=220 second=220 amount=-1 +kerning first=266 second=333 amount=-1 +kerning first=1040 second=1047 amount=-1 +kerning first=333 second=316 amount=-1 +kerning first=227 second=382 amount=-1 +kerning first=209 second=205 amount=-1 +kerning first=79 second=220 amount=-1 +kerning first=263 second=382 amount=-1 +kerning first=374 second=333 amount=-1 +kerning first=1067 second=1034 amount=-1 +kerning first=368 second=103 amount=-1 +kerning first=99 second=234 amount=-1 +kerning first=304 second=330 amount=-1 +kerning first=1031 second=1034 amount=-1 +kerning first=1031 second=1099 amount=-1 +kerning first=73 second=211 amount=-1 +kerning first=296 second=103 amount=-1 +kerning first=85 second=100 amount=-1 +kerning first=1065 second=1076 amount=-1 +kerning first=224 second=103 amount=-1 +kerning first=217 second=281 amount=-1 +kerning first=367 second=171 amount=-1 +kerning first=268 second=330 amount=-1 +kerning first=1067 second=1099 amount=-1 +kerning first=119 second=103 amount=-1 +kerning first=262 second=100 amount=-1 +kerning first=8250 second=378 amount=-1 +kerning first=364 second=220 amount=-1 +kerning first=204 second=77 amount=-1 +kerning first=325 second=281 amount=-1 +kerning first=338 second=85 amount=-1 +kerning first=339 second=113 amount=-1 +kerning first=235 second=252 amount=-1 +kerning first=1044 second=1057 amount=-1 +kerning first=302 second=85 amount=-1 +kerning first=80 second=304 amount=-1 +kerning first=266 second=85 amount=-1 +kerning first=1052 second=1092 amount=-1 +kerning first=201 second=280 amount=-1 +kerning first=279 second=314 amount=-1 +kerning first=194 second=85 amount=-1 +kerning first=337 second=120 amount=-1 +kerning first=243 second=314 amount=-1 +kerning first=200 second=315 amount=-1 +kerning first=355 second=8217 amount=-1 +kerning first=88 second=44 amount=-1 +kerning first=89 second=110 amount=-1 +kerning first=351 second=314 amount=-1 +kerning first=328 second=118 amount=-1 +kerning first=253 second=254 amount=-1 +kerning first=302 second=110 amount=-1 +kerning first=66 second=8220 amount=-2 +kerning first=345 second=8250 amount=-1 +kerning first=266 second=110 amount=-1 +kerning first=97 second=339 amount=-1 +kerning first=231 second=271 amount=-1 +kerning first=362 second=219 amount=-1 +kerning first=232 second=357 amount=-1 +kerning first=290 second=219 amount=-1 +kerning first=1048 second=1042 amount=-1 +kerning first=201 second=8250 amount=-1 +kerning first=196 second=357 amount=-1 +kerning first=310 second=85 amount=-1 +kerning first=8217 second=248 amount=-1 +kerning first=304 second=357 amount=-1 +kerning first=368 second=76 amount=-1 +kerning first=218 second=219 amount=-1 +kerning first=268 second=357 amount=-1 +kerning first=289 second=254 amount=-1 +kerning first=205 second=332 amount=-1 +kerning first=210 second=374 amount=-1 +kerning first=101 second=101 amount=-1 +kerning first=216 second=8217 amount=-2 +kerning first=120 second=289 amount=-1 +kerning first=206 second=101 amount=-1 +kerning first=261 second=289 amount=-1 +kerning first=206 second=224 amount=-1 +kerning first=225 second=289 amount=-1 +kerning first=77 second=219 amount=-1 +kerning first=72 second=296 amount=-1 +kerning first=375 second=311 amount=-1 +kerning first=203 second=212 amount=-1 +kerning first=211 second=8217 amount=-2 +kerning first=278 second=81 amount=-1 +kerning first=1038 second=1075 amount=-1 +kerning first=100 second=111 amount=-1 +kerning first=262 second=187 amount=-1 +kerning first=362 second=362 amount=-1 +kerning first=369 second=289 amount=-1 +kerning first=213 second=296 amount=-1 +kerning first=205 second=111 amount=-1 +kerning first=241 second=111 amount=-1 +kerning first=70 second=8217 amount=-1 +kerning first=277 second=111 amount=-1 +kerning first=106 second=8217 amount=-1 +kerning first=284 second=280 amount=-1 +kerning first=323 second=241 amount=-1 +kerning first=354 second=335 amount=-1 +kerning first=287 second=241 amount=-1 +kerning first=81 second=89 amount=-1 +kerning first=313 second=85 amount=-1 +kerning first=296 second=268 amount=-1 +kerning first=1053 second=1099 amount=-1 +kerning first=205 second=85 amount=-1 +kerning first=74 second=241 amount=-1 +kerning first=219 second=8249 amount=-2 +kerning first=244 second=46 amount=-1 +kerning first=118 second=8220 amount=-2 +kerning first=206 second=271 amount=-1 +kerning first=352 second=46 amount=-1 +kerning first=259 second=8220 amount=-2 +kerning first=86 second=339 amount=-1 +kerning first=223 second=8220 amount=-2 +kerning first=114 second=171 amount=-1 +kerning first=351 second=287 amount=-1 +kerning first=187 second=302 amount=-1 +kerning first=8217 second=286 amount=-1 +kerning first=205 second=225 amount=-1 +kerning first=194 second=118 amount=-1 +kerning first=279 second=287 amount=-1 +kerning first=219 second=269 amount=-1 +kerning first=367 second=8220 amount=-1 +kerning first=275 second=250 amount=-1 +kerning first=366 second=229 amount=-1 +kerning first=355 second=225 amount=-1 +kerning first=224 second=378 amount=-1 +kerning first=330 second=229 amount=-1 +kerning first=214 second=195 amount=-1 +kerning first=203 second=250 amount=-1 +kerning first=1047 second=1090 amount=-1 +kerning first=72 second=8221 amount=-1 +kerning first=70 second=67 amount=-1 +kerning first=119 second=378 amount=-1 +kerning first=198 second=344 amount=-1 +kerning first=219 second=278 amount=-1 +kerning first=103 second=46 amount=-1 +kerning first=218 second=8217 amount=-1 +kerning first=193 second=284 amount=-1 +kerning first=368 second=378 amount=-1 +kerning first=67 second=46 amount=-1 +kerning first=270 second=344 amount=-1 +kerning first=1039 second=1043 amount=-1 +kerning first=208 second=46 amount=-1 +kerning first=211 second=207 amount=-1 +kerning first=78 second=278 amount=-1 +kerning first=296 second=378 amount=-1 +kerning first=1027 second=1075 amount=-1 +kerning first=258 second=89 amount=-1 +kerning first=67 second=288 amount=-1 +kerning first=198 second=220 amount=-1 +kerning first=327 second=278 amount=-1 +kerning first=199 second=76 amount=-1 +kerning first=270 second=220 amount=-1 +kerning first=88 second=284 amount=-1 +kerning first=366 second=246 amount=-1 +kerning first=1039 second=1064 amount=-1 +kerning first=206 second=74 amount=-1 +kerning first=71 second=280 amount=-1 +kerning first=1041 second=1118 amount=-1 +kerning first=212 second=280 amount=-1 +kerning first=204 second=114 amount=-1 +kerning first=325 second=216 amount=-1 +kerning first=282 second=201 amount=-1 +kerning first=275 second=113 amount=-1 +kerning first=362 second=369 amount=-1 +kerning first=118 second=104 amount=-1 +kerning first=187 second=198 amount=-1 +kerning first=1051 second=1084 amount=-1 +kerning first=72 second=269 amount=-1 +kerning first=210 second=201 amount=-1 +kerning first=72 second=213 amount=-1 +kerning first=108 second=269 amount=-1 +kerning first=69 second=201 amount=-1 +kerning first=274 second=204 amount=-1 +kerning first=1028 second=1094 amount=-1 +kerning first=1054 second=1113 amount=-1 +kerning first=1064 second=1094 amount=-1 +kerning first=209 second=259 amount=-1 +kerning first=204 second=116 amount=-1 +kerning first=202 second=204 amount=-1 +kerning first=249 second=269 amount=-1 +kerning first=267 second=233 amount=-1 +kerning first=1031 second=1042 amount=-1 +kerning first=218 second=65 amount=-1 +kerning first=74 second=104 amount=-1 +kerning first=235 second=271 amount=-1 +kerning first=317 second=366 amount=-1 +kerning first=99 second=229 amount=-1 +kerning first=74 second=250 amount=-1 +kerning first=346 second=204 amount=-1 +kerning first=197 second=268 amount=-1 +kerning first=288 second=317 amount=-1 +kerning first=1030 second=1069 amount=-1 +kerning first=362 second=65 amount=-1 +kerning first=218 second=369 amount=-1 +kerning first=45 second=256 amount=-1 +kerning first=68 second=366 amount=-1 +kerning first=81 second=256 amount=-1 +kerning first=87 second=283 amount=-1 +kerning first=370 second=382 amount=-1 +kerning first=8218 second=255 amount=-1 +kerning first=262 second=73 amount=-1 +kerning first=77 second=262 amount=-1 +kerning first=334 second=73 amount=-1 +kerning first=298 second=73 amount=-1 +kerning first=8218 second=362 amount=-1 +kerning first=67 second=213 amount=-1 +kerning first=366 second=256 amount=-1 +kerning first=119 second=351 amount=-1 +kerning first=1031 second=1070 amount=-1 +kerning first=283 second=311 amount=-1 +kerning first=99 second=326 amount=-1 +kerning first=280 second=213 amount=-1 +kerning first=218 second=262 amount=-1 +kerning first=304 second=82 amount=-1 +kerning first=219 second=251 amount=-1 +kerning first=204 second=219 amount=-1 +kerning first=1052 second=1053 amount=-1 +kerning first=1046 second=1105 amount=-1 +kerning first=281 second=122 amount=-1 +kerning first=275 second=277 amount=-1 +kerning first=278 second=282 amount=-1 +kerning first=209 second=122 amount=-1 +kerning first=85 second=73 amount=-1 +kerning first=195 second=81 amount=-1 +kerning first=1058 second=1051 amount=-1 +kerning first=70 second=311 amount=-1 +kerning first=291 second=251 amount=-1 +kerning first=362 second=235 amount=-1 +kerning first=364 second=334 amount=-1 +kerning first=98 second=8221 amount=-2 +kerning first=367 second=345 amount=-1 +kerning first=204 second=283 amount=-1 +kerning first=203 second=8221 amount=-1 +kerning first=264 second=75 amount=-1 +kerning first=199 second=270 amount=-1 +kerning first=99 second=283 amount=-1 +kerning first=330 second=380 amount=-1 +kerning first=275 second=8221 amount=-2 +kerning first=197 second=187 amount=-1 +kerning first=311 second=8221 amount=-1 +kerning first=241 second=248 amount=-1 +kerning first=1048 second=1119 amount=-1 +kerning first=89 second=226 amount=-1 +kerning first=347 second=8221 amount=-2 +kerning first=205 second=248 amount=-1 +kerning first=366 second=380 amount=-1 +kerning first=74 second=218 amount=-1 +kerning first=367 second=279 amount=-1 +kerning first=221 second=196 amount=-1 +kerning first=217 second=336 amount=-1 +kerning first=73 second=245 amount=-1 +kerning first=339 second=242 amount=-1 +kerning first=80 second=196 amount=-1 +kerning first=241 second=232 amount=-1 +kerning first=231 second=242 amount=-1 +kerning first=81 second=66 amount=-1 +kerning first=234 second=311 amount=-1 +kerning first=302 second=226 amount=-1 +kerning first=45 second=66 amount=-1 +kerning first=325 second=336 amount=-1 +kerning first=374 second=226 amount=-1 +kerning first=327 second=277 amount=-1 +kerning first=240 second=283 amount=-1 +kerning first=258 second=370 amount=-1 +kerning first=8218 second=228 amount=-1 +kerning first=45 second=380 amount=-1 +kerning first=217 second=194 amount=-1 +kerning first=224 second=244 amount=-1 +kerning first=288 second=274 amount=-1 +kerning first=296 second=244 amount=-1 +kerning first=327 second=45 amount=-1 +kerning first=84 second=233 amount=-1 +kerning first=80 second=227 amount=-1 +kerning first=234 second=367 amount=-1 +kerning first=366 second=66 amount=-1 +kerning first=368 second=244 amount=-1 +kerning first=258 second=363 amount=-1 +kerning first=330 second=66 amount=-1 +kerning first=221 second=8222 amount=-2 +kerning first=225 second=233 amount=-1 +kerning first=261 second=233 amount=-1 +kerning first=116 second=8222 amount=-1 +kerning first=77 second=235 amount=-1 +kerning first=283 second=279 amount=-1 +kerning first=336 second=44 amount=-1 +kerning first=369 second=233 amount=-1 +kerning first=97 second=231 amount=-1 +kerning first=264 second=44 amount=-1 +kerning first=218 second=235 amount=-1 +kerning first=203 second=70 amount=-1 +kerning first=288 second=82 amount=-1 +kerning first=67 second=344 amount=-1 +kerning first=1071 second=1045 amount=-1 +kerning first=326 second=235 amount=-1 +kerning first=118 second=318 amount=-1 +kerning first=1058 second=1116 amount=-1 +kerning first=192 second=71 amount=-1 +kerning first=74 second=214 amount=-1 +kerning first=87 second=71 amount=-1 +kerning first=196 second=249 amount=-1 +kerning first=367 second=275 amount=-1 +kerning first=219 second=206 amount=-1 +kerning first=364 second=258 amount=-1 +kerning first=217 second=363 amount=-1 +kerning first=323 second=214 amount=-1 +kerning first=171 second=370 amount=-1 +kerning first=99 second=353 amount=-1 +kerning first=253 second=363 amount=-1 +kerning first=1050 second=1104 amount=-1 +kerning first=235 second=243 amount=-1 +kerning first=264 second=71 amount=-1 +kerning first=66 second=370 amount=-1 +kerning first=204 second=353 amount=-1 +kerning first=78 second=45 amount=-1 +kerning first=80 second=298 amount=-1 +kerning first=70 second=77 amount=-1 +kerning first=315 second=370 amount=-1 +kerning first=114 second=45 amount=-1 +kerning first=207 second=370 amount=-1 +kerning first=103 second=369 amount=-1 +kerning first=259 second=275 amount=-1 +kerning first=192 second=362 amount=-1 +kerning first=288 second=80 amount=-1 +kerning first=232 second=249 amount=-1 +kerning first=255 second=45 amount=-1 +kerning first=263 second=106 amount=-1 +kerning first=88 second=336 amount=-1 +kerning first=277 second=252 amount=-1 +kerning first=291 second=45 amount=-1 +kerning first=198 second=8250 amount=-1 +kerning first=335 second=106 amount=-1 +kerning first=219 second=45 amount=-2 +kerning first=106 second=234 amount=-1 +kerning first=370 second=267 amount=-1 +kerning first=45 second=250 amount=-1 +kerning first=70 second=234 amount=-1 +kerning first=83 second=217 amount=-1 +kerning first=1046 second=1028 amount=-1 +kerning first=221 second=223 amount=-1 +kerning first=283 second=234 amount=-1 +kerning first=226 second=267 amount=-1 +kerning first=262 second=267 amount=-1 +kerning first=206 second=336 amount=-1 +kerning first=355 second=234 amount=-1 +kerning first=82 second=8220 amount=-1 +kerning first=296 second=217 amount=-1 +kerning first=80 second=223 amount=-1 +kerning first=66 second=206 amount=-1 +kerning first=1064 second=1098 amount=-1 +kerning first=73 second=368 amount=-1 +kerning first=220 second=258 amount=-1 +kerning first=368 second=217 amount=-1 +kerning first=209 second=232 amount=-1 +kerning first=271 second=243 amount=-1 +kerning first=1044 second=1095 amount=-1 +kerning first=82 second=345 amount=-1 +kerning first=207 second=206 amount=-1 +kerning first=104 second=232 amount=-1 +kerning first=1053 second=1072 amount=-1 +kerning first=118 second=345 amount=-1 +kerning first=214 second=368 amount=-1 +kerning first=1116 second=1095 amount=-1 +kerning first=198 second=371 amount=-1 +kerning first=187 second=345 amount=-1 +kerning first=199 second=266 amount=-1 +kerning first=223 second=345 amount=-1 +kerning first=79 second=258 amount=-1 +kerning first=259 second=345 amount=-1 +kerning first=1040 second=1096 amount=-1 +kerning first=281 second=232 amount=-1 +kerning first=80 second=200 amount=-1 +kerning first=1050 second=1077 amount=-1 +kerning first=8218 second=281 amount=-1 +kerning first=70 second=315 amount=-1 +kerning first=77 second=370 amount=-1 +kerning first=88 second=8218 amount=-1 +kerning first=362 second=290 amount=-1 +kerning first=290 second=370 amount=-1 +kerning first=366 second=337 amount=-1 +kerning first=240 second=245 amount=-1 +kerning first=286 second=368 amount=-1 +kerning first=288 second=313 amount=-1 +kerning first=204 second=245 amount=-1 +kerning first=1047 second=1116 amount=-1 +kerning first=218 second=370 amount=-1 +kerning first=284 second=323 amount=-1 +kerning first=1070 second=1037 amount=-1 +kerning first=205 second=199 amount=-1 +kerning first=258 second=105 amount=-1 +kerning first=362 second=370 amount=-1 +kerning first=1065 second=1101 amount=-1 +kerning first=99 second=120 amount=-1 +kerning first=67 second=45 amount=-1 +kerning first=362 second=257 amount=-1 +kerning first=103 second=45 amount=-1 +kerning first=1056 second=1086 amount=-1 +kerning first=366 second=230 amount=-1 +kerning first=330 second=230 amount=-1 +kerning first=251 second=267 amount=-1 +kerning first=1038 second=1076 amount=-1 +kerning first=192 second=318 amount=-1 +kerning first=287 second=267 amount=-1 +kerning first=199 second=217 amount=-1 +kerning first=352 second=72 amount=-1 +kerning first=323 second=267 amount=-1 +kerning first=74 second=267 amount=-1 +kerning first=104 second=118 amount=-1 +kerning first=278 second=345 amount=-1 +kerning first=110 second=267 amount=-1 +kerning first=264 second=212 amount=-1 +kerning first=264 second=114 amount=-1 +kerning first=8222 second=108 amount=-1 +kerning first=99 second=245 amount=-1 +kerning first=233 second=115 amount=-1 +kerning first=364 second=350 amount=-1 +kerning first=269 second=115 amount=-1 +kerning first=87 second=114 amount=-1 +kerning first=282 second=8249 amount=-1 +kerning first=228 second=114 amount=-1 +kerning first=252 second=111 amount=-1 +kerning first=192 second=212 amount=-1 +kerning first=192 second=114 amount=-1 +kerning first=220 second=350 amount=-1 +kerning first=354 second=8249 amount=-1 +kerning first=192 second=254 amount=-1 +kerning first=324 second=111 amount=-1 +kerning first=271 second=333 amount=-1 +kerning first=264 second=254 amount=-1 +kerning first=304 second=81 amount=-1 +kerning first=204 second=218 amount=-1 +kerning first=86 second=231 amount=-1 +kerning first=223 second=318 amount=-1 +kerning first=1059 second=1119 amount=-1 +kerning first=259 second=318 amount=-1 +kerning first=201 second=367 amount=-1 +kerning first=98 second=44 amount=-1 +kerning first=1034 second=1064 amount=-1 +kerning first=268 second=81 amount=-1 +kerning first=314 second=382 amount=-1 +kerning first=368 second=352 amount=-1 +kerning first=311 second=44 amount=-1 +kerning first=70 second=273 amount=-1 +kerning first=75 second=355 amount=-1 +kerning first=345 second=187 amount=-1 +kerning first=283 second=380 amount=-1 +kerning first=1052 second=1062 amount=-1 +kerning first=8218 second=254 amount=-1 +kerning first=108 second=275 amount=-1 +kerning first=1056 second=1059 amount=-1 +kerning first=368 second=258 amount=-1 +kerning first=204 second=78 amount=-1 +kerning first=252 second=248 amount=-1 +kerning first=249 second=289 amount=-1 +kerning first=67 second=72 amount=-1 +kerning first=280 second=72 amount=-1 +kerning first=105 second=113 amount=-1 +kerning first=199 second=282 amount=-1 +kerning first=85 second=332 amount=-1 +kerning first=1064 second=1055 amount=-1 +kerning first=282 second=8222 amount=-1 +kerning first=298 second=332 amount=-1 +kerning first=246 second=8222 amount=-1 +kerning first=262 second=332 amount=-1 +kerning first=210 second=8222 amount=-1 +kerning first=81 second=330 amount=-1 +kerning first=105 second=8222 amount=-1 +kerning first=264 second=346 amount=-1 +kerning first=259 second=279 amount=-1 +kerning first=69 second=8222 amount=-1 +kerning first=1066 second=1070 amount=-1 +kerning first=192 second=87 amount=-1 +kerning first=1030 second=1070 amount=-1 +kerning first=370 second=332 amount=-1 +kerning first=277 second=291 amount=-1 +kerning first=368 second=8250 amount=-2 +kerning first=241 second=291 amount=-1 +kerning first=305 second=187 amount=-1 +kerning first=368 second=263 amount=-1 +kerning first=79 second=323 amount=-1 +kerning first=193 second=288 amount=-1 +kerning first=233 second=187 amount=-1 +kerning first=117 second=337 amount=-1 +kerning first=100 second=291 amount=-1 +kerning first=269 second=187 amount=-1 +kerning first=204 second=231 amount=-1 +kerning first=196 second=81 amount=-1 +kerning first=296 second=352 amount=-1 +kerning first=354 second=8222 amount=-1 +kerning first=220 second=323 amount=-1 +kerning first=1068 second=1050 amount=-1 +kerning first=203 second=211 amount=-1 +kerning first=80 second=86 amount=-1 +kerning first=70 second=338 amount=-1 +kerning first=307 second=46 amount=-1 +kerning first=270 second=198 amount=-1 +kerning first=330 second=268 amount=-1 +kerning first=1067 second=1083 amount=-1 +kerning first=291 second=287 amount=-1 +kerning first=1042 second=1034 amount=-1 +kerning first=296 second=325 amount=-1 +kerning first=87 second=281 amount=-1 +kerning first=368 second=325 amount=-1 +kerning first=85 second=99 amount=-1 +kerning first=1066 second=1043 amount=-1 +kerning first=1041 second=1069 amount=-1 +kerning first=323 second=73 amount=-1 +kerning first=298 second=99 amount=-1 +kerning first=75 second=290 amount=-1 +kerning first=268 second=314 amount=-1 +kerning first=366 second=207 amount=-1 +kerning first=193 second=369 amount=-1 +kerning first=74 second=202 amount=-1 +kerning first=232 second=314 amount=-1 +kerning first=45 second=268 amount=-1 +kerning first=235 second=347 amount=-1 +kerning first=78 second=110 amount=-1 +kerning first=226 second=99 amount=-1 +kerning first=196 second=314 amount=-1 +kerning first=88 second=369 amount=-1 +kerning first=262 second=8250 amount=-1 +kerning first=258 second=268 amount=-1 +kerning first=199 second=347 amount=-1 +kerning first=226 second=8250 amount=-1 +kerning first=370 second=99 amount=-1 +kerning first=8217 second=339 amount=-1 +kerning first=219 second=110 amount=-1 +kerning first=323 second=202 amount=-1 +kerning first=364 second=117 amount=-1 +kerning first=327 second=110 amount=-1 +kerning first=89 second=334 amount=-1 +kerning first=81 second=364 amount=-1 +kerning first=1107 second=1087 amount=-1 +kerning first=264 second=277 amount=-1 +kerning first=45 second=364 amount=-1 +kerning first=79 second=218 amount=-1 +kerning first=74 second=73 amount=-1 +kerning first=228 second=277 amount=-1 +kerning first=81 second=8217 amount=-2 +kerning first=85 second=171 amount=-2 +kerning first=266 second=334 amount=-1 +kerning first=205 second=264 amount=-1 +kerning first=287 second=104 amount=-1 +kerning first=194 second=334 amount=-1 +kerning first=235 second=351 amount=-1 +kerning first=374 second=334 amount=-1 +kerning first=1033 second=1030 amount=-1 +kerning first=270 second=69 amount=-1 +kerning first=193 second=121 amount=-1 +kerning first=1069 second=1030 amount=-1 +kerning first=196 second=108 amount=-1 +kerning first=366 second=8217 amount=-1 +kerning first=302 second=334 amount=-1 +kerning first=366 second=364 amount=-1 +kerning first=231 second=101 amount=-1 +kerning first=338 second=334 amount=-1 +kerning first=330 second=364 amount=-1 +kerning first=1041 second=1065 amount=-1 +kerning first=117 second=8217 amount=-1 +kerning first=1060 second=1070 amount=-1 +kerning first=1052 second=1050 amount=-1 +kerning first=258 second=364 amount=-1 +kerning first=267 second=101 amount=-1 +kerning first=1036 second=1117 amount=-1 +kerning first=118 second=380 amount=-1 +kerning first=222 second=8217 amount=-2 +kerning first=83 second=325 amount=-1 +kerning first=68 second=193 amount=-1 +kerning first=232 second=108 amount=-1 +kerning first=258 second=8217 amount=-2 +kerning first=374 second=187 amount=-1 +kerning first=339 second=101 amount=-1 +kerning first=283 second=273 amount=-1 +kerning first=268 second=108 amount=-1 +kerning first=1047 second=1051 amount=-1 +kerning first=199 second=103 amount=-1 +kerning first=234 second=263 amount=-1 +kerning first=202 second=296 amount=-1 +kerning first=1053 second=1089 amount=-1 +kerning first=198 second=171 amount=-1 +kerning first=193 second=365 amount=-1 +kerning first=1039 second=1039 amount=-1 +kerning first=366 second=203 amount=-1 +kerning first=75 second=286 amount=-1 +kerning first=69 second=8249 amount=-1 +kerning first=1052 second=1049 amount=-1 +kerning first=80 second=82 amount=-1 +kerning first=105 second=8249 amount=-1 +kerning first=346 second=296 amount=-1 +kerning first=206 second=298 amount=-1 +kerning first=1067 second=1068 amount=-1 +kerning first=278 second=298 amount=-1 +kerning first=304 second=241 amount=-1 +kerning first=269 second=229 amount=-1 +kerning first=314 second=363 amount=-1 +kerning first=350 second=298 amount=-1 +kerning first=330 second=203 amount=-1 +kerning first=220 second=117 amount=-1 +kerning first=45 second=203 amount=-1 +kerning first=232 second=287 amount=-1 +kerning first=197 second=211 amount=-1 +kerning first=208 second=44 amount=-1 +kerning first=364 second=369 amount=-1 +kerning first=374 second=8222 amount=-2 +kerning first=74 second=313 amount=-1 +kerning first=68 second=220 amount=-1 +kerning first=1071 second=1083 amount=-1 +kerning first=67 second=278 amount=-1 +kerning first=227 second=339 amount=-1 +kerning first=313 second=356 amount=-1 +kerning first=74 second=77 amount=-1 +kerning first=323 second=100 amount=-1 +kerning first=111 second=382 amount=-1 +kerning first=263 second=339 amount=-1 +kerning first=8218 second=87 amount=-2 +kerning first=355 second=246 amount=-1 +kerning first=1052 second=1118 amount=-1 +kerning first=228 second=281 amount=-1 +kerning first=317 second=220 amount=-1 +kerning first=378 second=171 amount=-1 +kerning first=282 second=304 amount=-1 +kerning first=264 second=281 amount=-1 +kerning first=283 second=246 amount=-1 +kerning first=100 second=333 amount=-1 +kerning first=1067 second=1076 amount=-1 +kerning first=194 second=307 amount=-1 +kerning first=209 second=220 amount=-1 +kerning first=1053 second=1060 amount=-1 +kerning first=69 second=304 amount=-1 +kerning first=1039 second=1092 amount=-1 +kerning first=352 second=278 amount=-1 +kerning first=270 second=194 amount=-1 +kerning first=307 second=103 amount=-1 +kerning first=241 second=333 amount=-1 +kerning first=106 second=246 amount=-1 +kerning first=271 second=103 amount=-1 +kerning first=277 second=333 amount=-1 +kerning first=80 second=330 amount=-1 +kerning first=323 second=77 amount=-1 +kerning first=70 second=246 amount=-1 +kerning first=210 second=304 amount=-1 +kerning first=235 second=103 amount=-1 +kerning first=305 second=246 amount=-1 +kerning first=1064 second=1039 amount=-1 +kerning first=218 second=8222 amount=-2 +kerning first=269 second=246 amount=-1 +kerning first=266 second=382 amount=-1 +kerning first=202 second=223 amount=-1 +kerning first=246 second=103 amount=-1 +kerning first=217 second=298 amount=-1 +kerning first=362 second=77 amount=-1 +kerning first=77 second=8222 amount=-1 +kerning first=374 second=382 amount=-1 +kerning first=210 second=330 amount=-1 +kerning first=105 second=103 amount=-1 +kerning first=290 second=77 amount=-1 +kerning first=362 second=304 amount=-1 +kerning first=282 second=330 amount=-1 +kerning first=97 second=269 amount=-1 +kerning first=218 second=77 amount=-1 +kerning first=325 second=298 amount=-1 +kerning first=233 second=333 amount=-1 +kerning first=1094 second=1095 amount=-1 +kerning first=66 second=65 amount=-1 +kerning first=217 second=211 amount=-1 +kerning first=269 second=333 amount=-1 +kerning first=218 second=304 amount=-1 +kerning first=302 second=68 amount=-1 +kerning first=370 second=365 amount=-1 +kerning first=266 second=68 amount=-1 +kerning first=290 second=304 amount=-1 +kerning first=106 second=289 amount=-1 +kerning first=362 second=8222 amount=-2 +kerning first=228 second=283 amount=-1 +kerning first=305 second=333 amount=-1 +kerning first=87 second=103 amount=-1 +kerning first=290 second=8222 amount=-1 +kerning first=77 second=304 amount=-1 +kerning first=1052 second=1048 amount=-1 +kerning first=254 second=8222 amount=-1 +kerning first=203 second=315 amount=-1 +kerning first=214 second=260 amount=-1 +kerning first=70 second=109 amount=-1 +kerning first=1070 second=1044 amount=-1 +kerning first=252 second=339 amount=-1 +kerning first=257 second=339 amount=-1 +kerning first=211 second=88 amount=-1 +kerning first=266 second=107 amount=-1 +kerning first=268 second=347 amount=-1 +kerning first=267 second=281 amount=-1 +kerning first=67 second=111 amount=-1 +kerning first=325 second=211 amount=-1 +kerning first=1064 second=1031 amount=-1 +kerning first=1052 second=1108 amount=-1 +kerning first=103 second=111 amount=-1 +kerning first=1039 second=1051 amount=-1 +kerning first=210 second=196 amount=-1 +kerning first=339 second=281 amount=-1 +kerning first=296 second=313 amount=-1 +kerning first=232 second=347 amount=-1 +kerning first=77 second=77 amount=-1 +kerning first=305 second=289 amount=-1 +kerning first=8216 second=198 amount=-2 +kerning first=327 second=290 amount=-1 +kerning first=1058 second=1117 amount=-1 +kerning first=83 second=313 amount=-1 +kerning first=1051 second=1042 amount=-1 +kerning first=69 second=330 amount=-1 +kerning first=364 second=69 amount=-1 +kerning first=1047 second=1025 amount=-1 +kerning first=232 second=120 amount=-1 +kerning first=324 second=339 amount=-1 +kerning first=268 second=120 amount=-1 +kerning first=86 second=264 amount=-1 +kerning first=354 second=103 amount=-1 +kerning first=103 second=251 amount=-1 +kerning first=316 second=251 amount=-1 +kerning first=69 second=76 amount=-1 +kerning first=352 second=251 amount=-1 +kerning first=8217 second=264 amount=-1 +kerning first=280 second=251 amount=-1 +kerning first=333 second=8217 amount=-2 +kerning first=226 second=378 amount=-1 +kerning first=84 second=8217 amount=-1 +kerning first=298 second=76 amount=-1 +kerning first=192 second=8221 amount=-2 +kerning first=218 second=225 amount=-1 +kerning first=120 second=8217 amount=-1 +kerning first=228 second=8221 amount=-2 +kerning first=288 second=85 amount=-1 +kerning first=8217 second=351 amount=-1 +kerning first=231 second=254 amount=-1 +kerning first=217 second=271 amount=-1 +kerning first=220 second=242 amount=-1 +kerning first=279 second=245 amount=-1 +kerning first=362 second=331 amount=-1 +kerning first=267 second=254 amount=-1 +kerning first=325 second=271 amount=-1 +kerning first=336 second=8221 amount=-2 +kerning first=87 second=212 amount=-1 +kerning first=207 second=245 amount=-1 +kerning first=339 second=254 amount=-1 +kerning first=213 second=221 amount=-1 +kerning first=328 second=242 amount=-1 +kerning first=375 second=254 amount=-1 +kerning first=75 second=85 amount=-1 +kerning first=364 second=242 amount=-1 +kerning first=218 second=331 amount=-1 +kerning first=321 second=221 amount=-1 +kerning first=283 second=289 amount=-1 +kerning first=327 second=203 amount=-1 +kerning first=121 second=365 amount=-1 +kerning first=258 second=67 amount=-1 +kerning first=1027 second=1113 amount=-1 +kerning first=8216 second=351 amount=-1 +kerning first=355 second=289 amount=-1 +kerning first=1052 second=1075 amount=-1 +kerning first=77 second=331 amount=-1 +kerning first=85 second=365 amount=-1 +kerning first=70 second=229 amount=-1 +kerning first=219 second=203 amount=-1 +kerning first=221 second=288 amount=-1 +kerning first=1046 second=1104 amount=-1 +kerning first=73 second=233 amount=-1 +kerning first=45 second=67 amount=-1 +kerning first=270 second=366 amount=-1 +kerning first=109 second=233 amount=-1 +kerning first=195 second=254 amount=-1 +kerning first=244 second=8220 amount=-2 +kerning first=8250 second=252 amount=-1 +kerning first=78 second=203 amount=-1 +kerning first=187 second=280 amount=-1 +kerning first=250 second=233 amount=-1 +kerning first=263 second=248 amount=-1 +kerning first=339 second=8222 amount=-1 +kerning first=282 second=357 amount=-1 +kerning first=196 second=374 amount=-1 +kerning first=69 second=357 amount=-1 +kerning first=355 second=229 amount=-1 +kerning first=282 second=76 amount=-1 +kerning first=1076 second=1084 amount=-1 +kerning first=1030 second=1118 amount=-1 +kerning first=210 second=76 amount=-1 +kerning first=192 second=363 amount=-1 +kerning first=356 second=122 amount=-1 +kerning first=248 second=122 amount=-1 +kerning first=219 second=317 amount=-1 +kerning first=85 second=224 amount=-1 +kerning first=287 second=114 amount=-1 +kerning first=1053 second=1117 amount=-1 +kerning first=214 second=207 amount=-1 +kerning first=298 second=224 amount=-1 +kerning first=327 second=317 amount=-1 +kerning first=1039 second=1104 amount=-1 +kerning first=200 second=250 amount=-1 +kerning first=1027 second=1087 amount=-1 +kerning first=286 second=207 amount=-1 +kerning first=262 second=224 amount=-1 +kerning first=8250 second=200 amount=-1 +kerning first=67 second=311 amount=-1 +kerning first=86 second=378 amount=-1 +kerning first=1118 second=1093 amount=-1 +kerning first=206 second=259 amount=-1 +kerning first=80 second=201 amount=-1 +kerning first=103 second=311 amount=-1 +kerning first=198 second=366 amount=-1 +kerning first=370 second=224 amount=-1 +kerning first=81 second=354 amount=-1 +kerning first=364 second=216 amount=-1 +kerning first=70 second=256 amount=-1 +kerning first=199 second=244 amount=-1 +kerning first=263 second=378 amount=-1 +kerning first=235 second=244 amount=-1 +kerning first=227 second=378 amount=-1 +kerning first=330 second=67 amount=-1 +kerning first=271 second=244 amount=-1 +kerning first=78 second=317 amount=-1 +kerning first=366 second=67 amount=-1 +kerning first=307 second=244 amount=-1 +kerning first=310 second=8249 amount=-1 +kerning first=1040 second=1063 amount=-2 +kerning first=88 second=262 amount=-1 +kerning first=1065 second=1095 amount=-1 +kerning first=370 second=198 amount=-1 +kerning first=1105 second=1096 amount=-1 +kerning first=302 second=268 amount=-1 +kerning first=314 second=235 amount=-1 +kerning first=193 second=262 amount=-1 +kerning first=334 second=198 amount=-1 +kerning first=266 second=268 amount=-1 +kerning first=101 second=117 amount=-1 +kerning first=209 second=210 amount=-1 +kerning first=1060 second=1049 amount=-1 +kerning first=364 second=302 amount=-1 +kerning first=1105 second=1095 amount=-1 +kerning first=8218 second=97 amount=-1 +kerning first=211 second=256 amount=-1 +kerning first=279 second=98 amount=-1 +kerning first=220 second=302 amount=-1 +kerning first=198 second=345 amount=-1 +kerning first=1051 second=1101 amount=-1 +kerning first=108 second=335 amount=-1 +kerning first=234 second=345 amount=-1 +kerning first=249 second=335 amount=-1 +kerning first=323 second=219 amount=-1 +kerning first=362 second=262 amount=-1 +kerning first=268 second=206 amount=-1 +kerning first=304 second=206 amount=-1 +kerning first=85 second=198 amount=-1 +kerning first=79 second=302 amount=-1 +kerning first=194 second=268 amount=-1 +kerning first=204 second=259 amount=-1 +kerning first=89 second=268 amount=-1 +kerning first=8250 second=313 amount=-1 +kerning first=1055 second=1053 amount=-1 +kerning first=263 second=351 amount=-1 +kerning first=227 second=231 amount=-1 +kerning first=316 second=335 amount=-1 +kerning first=263 second=231 amount=-1 +kerning first=8222 second=374 amount=-2 +kerning first=1064 second=1099 amount=-1 +kerning first=78 second=290 amount=-1 +kerning first=45 second=381 amount=-1 +kerning first=369 second=171 amount=-1 +kerning first=1118 second=1091 amount=-1 +kerning first=205 second=226 amount=-1 +kerning first=81 second=88 amount=-1 +kerning first=187 second=73 amount=-1 +kerning first=203 second=368 amount=-1 +kerning first=85 second=197 amount=-1 +kerning first=280 second=338 amount=-1 +kerning first=1062 second=1119 amount=-1 +kerning first=1056 second=1038 amount=-1 +kerning first=79 second=82 amount=-1 +kerning first=221 second=214 amount=-1 +kerning first=218 second=8249 amount=-2 +kerning first=78 second=8249 amount=-1 +kerning first=1030 second=1031 amount=-1 +kerning first=86 second=351 amount=-1 +kerning first=296 second=286 amount=-1 +kerning first=290 second=8249 amount=-1 +kerning first=199 second=8218 amount=-1 +kerning first=370 second=197 amount=-1 +kerning first=229 second=283 amount=-1 +kerning first=326 second=8249 amount=-1 +kerning first=334 second=197 amount=-1 +kerning first=368 second=286 amount=-1 +kerning first=362 second=8249 amount=-2 +kerning first=1066 second=1031 amount=-1 +kerning first=67 second=338 amount=-1 +kerning first=100 second=245 amount=-1 +kerning first=280 second=45 amount=-1 +kerning first=121 second=171 amount=-1 +kerning first=205 second=274 amount=-1 +kerning first=226 second=171 amount=-1 +kerning first=198 second=79 amount=-1 +kerning first=314 second=113 amount=-1 +kerning first=316 second=45 amount=-1 +kerning first=352 second=45 amount=-1 +kerning first=77 second=8249 amount=-1 +kerning first=250 second=242 amount=-1 +kerning first=229 second=235 amount=-1 +kerning first=264 second=70 amount=-1 +kerning first=8222 second=81 amount=-1 +kerning first=1059 second=1074 amount=-1 +kerning first=255 second=378 amount=-1 +kerning first=1041 second=1064 amount=-1 +kerning first=366 second=8221 amount=-1 +kerning first=74 second=192 amount=-1 +kerning first=1039 second=1077 amount=-1 +kerning first=87 second=363 amount=-1 +kerning first=1058 second=1090 amount=-1 +kerning first=1069 second=1069 amount=-1 +kerning first=271 second=380 amount=-1 +kerning first=196 second=286 amount=-1 +kerning first=1052 second=1027 amount=-1 +kerning first=103 second=252 amount=-1 +kerning first=298 second=344 amount=-1 +kerning first=83 second=205 amount=-1 +kerning first=262 second=344 amount=-1 +kerning first=296 second=205 amount=-1 +kerning first=370 second=344 amount=-1 +kerning first=334 second=344 amount=-1 +kerning first=330 second=115 amount=-1 +kerning first=83 second=80 amount=-1 +kerning first=280 second=252 amount=-1 +kerning first=201 second=284 amount=-1 +kerning first=366 second=115 amount=-1 +kerning first=194 second=89 amount=-1 +kerning first=1031 second=1076 amount=-1 +kerning first=323 second=368 amount=-1 +kerning first=304 second=261 amount=-1 +kerning first=268 second=261 amount=-1 +kerning first=298 second=205 amount=-1 +kerning first=8218 second=111 amount=-1 +kerning first=252 second=231 amount=-1 +kerning first=111 second=106 amount=-1 +kerning first=210 second=217 amount=-1 +kerning first=290 second=204 amount=-1 +kerning first=324 second=231 amount=-1 +kerning first=282 second=217 amount=-1 +kerning first=85 second=344 amount=-1 +kerning first=1038 second=1044 amount=-1 +kerning first=87 second=97 amount=-1 +kerning first=74 second=332 amount=-1 +kerning first=261 second=103 amount=-1 +kerning first=362 second=223 amount=-1 +kerning first=99 second=235 amount=-1 +kerning first=269 second=45 amount=-1 +kerning first=84 second=347 amount=-1 +kerning first=232 second=353 amount=-1 +kerning first=282 second=249 amount=-1 +kerning first=267 second=275 amount=-1 +kerning first=204 second=235 amount=-1 +kerning first=197 second=45 amount=-1 +kerning first=304 second=353 amount=-1 +kerning first=240 second=235 amount=-1 +kerning first=200 second=71 amount=-1 +kerning first=1071 second=1028 amount=-1 +kerning first=339 second=275 amount=-1 +kerning first=268 second=353 amount=-1 +kerning first=1067 second=1028 amount=-1 +kerning first=220 second=362 amount=-1 +kerning first=352 second=252 amount=-1 +kerning first=296 second=80 amount=-1 +kerning first=207 second=111 amount=-1 +kerning first=77 second=223 amount=-1 +kerning first=103 second=234 amount=-1 +kerning first=364 second=362 amount=-1 +kerning first=8218 second=271 amount=-1 +kerning first=264 second=97 amount=-1 +kerning first=290 second=223 amount=-1 +kerning first=99 second=240 amount=-1 +kerning first=68 second=323 amount=-1 +kerning first=97 second=243 amount=-1 +kerning first=218 second=223 amount=-1 +kerning first=368 second=80 amount=-1 +kerning first=8222 second=288 amount=-1 +kerning first=270 second=258 amount=-1 +kerning first=119 second=107 amount=-1 +kerning first=314 second=232 amount=-1 +kerning first=1105 second=1093 amount=-1 +kerning first=87 second=336 amount=-1 +kerning first=1062 second=1080 amount=-1 +kerning first=209 second=323 amount=-1 +kerning first=75 second=199 amount=-1 +kerning first=67 second=317 amount=-1 +kerning first=73 second=357 amount=-1 +kerning first=192 second=336 amount=-1 +kerning first=283 second=337 amount=-1 +kerning first=109 second=119 amount=-1 +kerning first=1065 second=1079 amount=-1 +kerning first=291 second=311 amount=-1 +kerning first=264 second=336 amount=-1 +kerning first=323 second=8250 amount=-1 +kerning first=67 second=225 amount=-1 +kerning first=69 second=249 amount=-1 +kerning first=287 second=8250 amount=-1 +kerning first=213 second=205 amount=-1 +kerning first=337 second=382 amount=-1 +kerning first=187 second=328 amount=-1 +kerning first=109 second=234 amount=-1 +kerning first=220 second=226 amount=-1 +kerning first=73 second=234 amount=-1 +kerning first=1051 second=1041 amount=-1 +kerning first=269 second=105 amount=-1 +kerning first=206 second=232 amount=-1 +kerning first=257 second=314 amount=-1 +kerning first=67 second=110 amount=-1 +kerning first=1091 second=1091 amount=-1 +kerning first=210 second=72 amount=-1 +kerning first=187 second=361 amount=-1 +kerning first=101 second=232 amount=-1 +kerning first=250 second=234 amount=-1 +kerning first=1038 second=1071 amount=-1 +kerning first=1107 second=1088 amount=-1 +kerning first=1040 second=1076 amount=-1 +kerning first=103 second=110 amount=-1 +kerning first=204 second=327 amount=-1 +kerning first=8250 second=288 amount=-1 +kerning first=220 second=198 amount=-1 +kerning first=1053 second=1055 amount=-1 +kerning first=197 second=105 amount=-1 +kerning first=240 second=267 amount=-1 +kerning first=8222 second=261 amount=-1 +kerning first=8250 second=286 amount=-1 +kerning first=209 second=368 amount=-1 +kerning first=283 second=8222 amount=-1 +kerning first=65 second=108 amount=-1 +kerning first=81 second=115 amount=-1 +kerning first=287 second=305 amount=-1 +kerning first=275 second=114 amount=-1 +kerning first=1044 second=1096 amount=-1 +kerning first=1059 second=1097 amount=-1 +kerning first=1027 second=1114 amount=-1 +kerning first=97 second=335 amount=-1 +kerning first=305 second=337 amount=-1 +kerning first=88 second=370 amount=-1 +kerning first=258 second=187 amount=-1 +kerning first=98 second=114 amount=-1 +kerning first=274 second=81 amount=-1 +kerning first=234 second=318 amount=-1 +kerning first=203 second=114 amount=-1 +kerning first=1057 second=1046 amount=-1 +kerning first=277 second=46 amount=-1 +kerning first=221 second=242 amount=-1 +kerning first=68 second=69 amount=-1 +kerning first=328 second=101 amount=-1 +kerning first=366 second=273 amount=-1 +kerning first=356 second=269 amount=-1 +kerning first=8250 second=80 amount=-1 +kerning first=330 second=273 amount=-1 +kerning first=116 second=228 amount=-1 +kerning first=80 second=81 amount=-1 +kerning first=364 second=101 amount=-1 +kerning first=72 second=227 amount=-1 +kerning first=221 second=81 amount=-1 +kerning first=202 second=363 amount=-1 +kerning first=71 second=73 amount=-1 +kerning first=363 second=111 amount=-1 +kerning first=207 second=331 amount=-1 +kerning first=272 second=44 amount=-1 +kerning first=323 second=78 amount=-1 +kerning first=8250 second=205 amount=-1 +kerning first=74 second=78 amount=-1 +kerning first=116 second=287 amount=-1 +kerning first=277 second=355 amount=-1 +kerning first=325 second=296 amount=-1 +kerning first=210 second=44 amount=-1 +kerning first=205 second=355 amount=-1 +kerning first=282 second=282 amount=-1 +kerning first=344 second=44 amount=-1 +kerning first=1068 second=1024 amount=-1 +kerning first=210 second=282 amount=-1 +kerning first=257 second=287 amount=-1 +kerning first=196 second=288 amount=-1 +kerning first=217 second=346 amount=-1 +kerning first=69 second=282 amount=-1 +kerning first=85 second=83 amount=-1 +kerning first=304 second=288 amount=-1 +kerning first=365 second=287 amount=-1 +kerning first=268 second=288 amount=-1 +kerning first=262 second=83 amount=-1 +kerning first=106 second=337 amount=-1 +kerning first=298 second=83 amount=-1 +kerning first=219 second=230 amount=-1 +kerning first=324 second=291 amount=-1 +kerning first=327 second=230 amount=-1 +kerning first=199 second=352 amount=-1 +kerning first=370 second=83 amount=-1 +kerning first=271 second=277 amount=-1 +kerning first=252 second=291 amount=-1 +kerning first=78 second=230 amount=-1 +kerning first=370 second=243 amount=-1 +kerning first=282 second=274 amount=-1 +kerning first=325 second=346 amount=-1 +kerning first=111 second=291 amount=-1 +kerning first=114 second=230 amount=-1 +kerning first=192 second=303 amount=-1 +kerning first=1053 second=1034 amount=-1 +kerning first=199 second=219 amount=-1 +kerning first=370 second=371 amount=-1 +kerning first=72 second=200 amount=-1 +kerning first=338 second=187 amount=-1 +kerning first=85 second=67 amount=-1 +kerning first=87 second=211 amount=-1 +kerning first=257 second=108 amount=-1 +kerning first=226 second=279 amount=-1 +kerning first=314 second=291 amount=-1 +kerning first=220 second=74 amount=-1 +kerning first=1077 second=1091 amount=-1 +kerning first=240 second=8218 amount=-1 +kerning first=262 second=279 amount=-1 +kerning first=86 second=269 amount=-1 +kerning first=70 second=316 amount=-1 +kerning first=370 second=279 amount=-1 +kerning first=364 second=74 amount=-1 +kerning first=290 second=323 amount=-1 +kerning first=327 second=209 amount=-1 +kerning first=89 second=187 amount=-1 +kerning first=85 second=371 amount=-1 +kerning first=227 second=269 amount=-1 +kerning first=263 second=269 amount=-1 +kerning first=100 second=382 amount=-1 +kerning first=74 second=99 amount=-1 +kerning first=344 second=71 amount=-1 +kerning first=110 second=99 amount=-1 +kerning first=192 second=255 amount=-1 +kerning first=205 second=382 amount=-1 +kerning first=192 second=211 amount=-1 +kerning first=323 second=99 amount=-1 +kerning first=283 second=316 amount=-1 +kerning first=221 second=250 amount=-1 +kerning first=194 second=187 amount=-1 +kerning first=277 second=382 amount=-1 +kerning first=264 second=211 amount=-1 +kerning first=213 second=200 amount=-1 +kerning first=99 second=8218 amount=-1 +kerning first=207 second=266 amount=-1 +kerning first=230 second=187 amount=-1 +kerning first=287 second=99 amount=-1 +kerning first=85 second=279 amount=-1 +kerning first=205 second=334 amount=-1 +kerning first=218 second=281 amount=-1 +kerning first=204 second=202 amount=-1 +kerning first=249 second=248 amount=-1 +kerning first=73 second=8217 amount=-1 +kerning first=375 second=8220 amount=-2 +kerning first=346 second=270 amount=-1 +kerning first=1050 second=1116 amount=-1 +kerning first=218 second=196 amount=-1 +kerning first=72 second=248 amount=-1 +kerning first=66 second=352 amount=-1 +kerning first=375 second=367 amount=-1 +kerning first=1041 second=1043 amount=-1 +kerning first=45 second=214 amount=-1 +kerning first=207 second=218 amount=-1 +kerning first=108 second=248 amount=-1 +kerning first=281 second=117 amount=-1 +kerning first=362 second=196 amount=-1 +kerning first=267 second=367 amount=-1 +kerning first=90 second=8220 amount=-1 +kerning first=231 second=367 amount=-1 +kerning first=1047 second=1052 amount=-1 +kerning first=368 second=205 amount=-1 +kerning first=339 second=367 amount=-1 +kerning first=219 second=209 amount=-1 +kerning first=211 second=364 amount=-1 +kerning first=75 second=264 amount=-1 +kerning first=274 second=270 amount=-1 +kerning first=73 second=380 amount=-1 +kerning first=267 second=8220 amount=-2 +kerning first=231 second=8220 amount=-2 +kerning first=1069 second=1084 amount=-1 +kerning first=202 second=270 amount=-1 +kerning first=339 second=8220 amount=-2 +kerning first=1048 second=1097 amount=-1 +kerning first=199 second=325 amount=-1 +kerning first=84 second=277 amount=-1 +kerning first=344 second=8217 amount=-1 +kerning first=197 second=251 amount=-1 +kerning first=323 second=284 amount=-1 +kerning first=246 second=108 amount=-1 +kerning first=380 second=8217 amount=-1 +kerning first=1069 second=1047 amount=-1 +kerning first=194 second=262 amount=-1 +kerning first=362 second=82 amount=-1 +kerning first=1064 second=1034 amount=-1 +kerning first=194 second=290 amount=-1 +kerning first=187 second=217 amount=-1 +kerning first=261 second=277 amount=-1 +kerning first=105 second=242 amount=-1 +kerning first=362 second=202 amount=-1 +kerning first=225 second=277 amount=-1 +kerning first=266 second=290 amount=-1 +kerning first=197 second=338 amount=-1 +kerning first=302 second=290 amount=-1 +kerning first=269 second=251 amount=-1 +kerning first=338 second=290 amount=-1 +kerning first=76 second=8221 amount=-1 +kerning first=258 second=316 amount=-1 +kerning first=84 second=8250 amount=-1 +kerning first=78 second=355 amount=-1 +kerning first=217 second=8221 amount=-1 +kerning first=212 second=193 amount=-1 +kerning first=230 second=311 amount=-1 +kerning first=209 second=242 amount=-1 +kerning first=253 second=8221 amount=-2 +kerning first=240 second=99 amount=-1 +kerning first=289 second=8221 amount=-2 +kerning first=77 second=82 amount=-1 +kerning first=99 second=99 amount=-1 +kerning first=325 second=8221 amount=-1 +kerning first=218 second=82 amount=-1 +kerning first=1052 second=1043 amount=-1 +kerning first=1039 second=1056 amount=-1 +kerning first=67 second=333 amount=-1 +kerning first=201 second=78 amount=-1 +kerning first=281 second=242 amount=-1 +kerning first=72 second=286 amount=-1 +kerning first=345 second=171 amount=-1 +kerning first=1047 second=1030 amount=-1 +kerning first=327 second=355 amount=-1 +kerning first=304 second=282 amount=-1 +kerning first=69 second=325 amount=-1 +kerning first=103 second=333 amount=-1 +kerning first=198 second=117 amount=-1 +kerning first=219 second=355 amount=-1 +kerning first=314 second=114 amount=-1 +kerning first=210 second=325 amount=-1 +kerning first=356 second=100 amount=-1 +kerning first=8217 second=199 amount=-1 +kerning first=282 second=325 amount=-1 +kerning first=193 second=104 amount=-1 +kerning first=275 second=233 amount=-1 +kerning first=201 second=171 amount=-1 +kerning first=1053 second=1039 amount=-1 +kerning first=1064 second=1043 amount=-1 +kerning first=78 second=382 amount=-1 +kerning first=212 second=220 amount=-1 +kerning first=1064 second=1104 amount=-1 +kerning first=199 second=330 amount=-1 +kerning first=364 second=194 amount=-1 +kerning first=365 second=103 amount=-1 +kerning first=284 second=220 amount=-1 +kerning first=219 second=382 amount=-1 +kerning first=71 second=220 amount=-1 +kerning first=255 second=382 amount=-1 +kerning first=316 second=246 amount=-1 +kerning first=66 second=120 amount=-1 +kerning first=257 second=103 amount=-1 +kerning first=207 second=304 amount=-1 +kerning first=220 second=194 amount=-1 +kerning first=221 second=103 amount=-1 +kerning first=327 second=382 amount=-1 +kerning first=74 second=224 amount=-1 +kerning first=65 second=211 amount=-1 +kerning first=116 second=103 amount=-1 +kerning first=1050 second=1057 amount=-1 +kerning first=80 second=103 amount=-1 +kerning first=8217 second=99 amount=-1 +kerning first=1041 second=1048 amount=-1 +kerning first=66 second=304 amount=-1 +kerning first=67 second=246 amount=-1 +kerning first=79 second=194 amount=-1 +kerning first=287 second=365 amount=-1 +kerning first=316 second=333 amount=-1 +kerning first=8249 second=366 amount=-1 +kerning first=8222 second=369 amount=-1 +kerning first=313 second=219 amount=-1 +kerning first=1052 second=1113 amount=-1 +kerning first=99 second=333 amount=-1 +kerning first=1088 second=1113 amount=-1 +kerning first=74 second=365 amount=-1 +kerning first=67 second=120 amount=-1 +kerning first=334 second=8218 amount=-1 +kerning first=80 second=70 amount=-1 +kerning first=75 second=307 amount=-1 +kerning first=213 second=313 amount=-1 +kerning first=78 second=111 amount=-1 +kerning first=221 second=347 amount=-1 +kerning first=245 second=8220 amount=-2 +kerning first=314 second=281 amount=-1 +kerning first=231 second=243 amount=-1 +kerning first=286 second=315 amount=-1 +kerning first=100 second=339 amount=-1 +kerning first=116 second=347 amount=-1 +kerning first=121 second=8218 amount=-1 +kerning first=317 second=8220 amount=-1 +kerning first=219 second=111 amount=-1 +kerning first=206 second=211 amount=-1 +kerning first=85 second=8218 amount=-2 +kerning first=281 second=8220 amount=-2 +kerning first=72 second=313 amount=-1 +kerning first=291 second=111 amount=-1 +kerning first=278 second=211 amount=-1 +kerning first=80 second=347 amount=-1 +kerning first=353 second=8220 amount=-2 +kerning first=327 second=111 amount=-1 +kerning first=217 second=257 amount=-1 +kerning first=218 second=202 amount=-1 +kerning first=243 second=120 amount=-1 +kerning first=1027 second=1090 amount=-1 +kerning first=279 second=120 amount=-1 +kerning first=74 second=113 amount=-1 +kerning first=290 second=202 amount=-1 +kerning first=8250 second=72 amount=-1 +kerning first=310 second=264 amount=-1 +kerning first=210 second=260 amount=-1 +kerning first=241 second=339 amount=-1 +kerning first=193 second=254 amount=-1 +kerning first=101 second=281 amount=-1 +kerning first=214 second=315 amount=-1 +kerning first=205 second=339 amount=-1 +kerning first=68 second=8220 amount=-2 +kerning first=73 second=315 amount=-1 +kerning first=202 second=264 amount=-1 +kerning first=206 second=281 amount=-1 +kerning first=77 second=202 amount=-1 +kerning first=277 second=339 amount=-1 +kerning first=231 second=232 amount=-1 +kerning first=87 second=271 amount=-1 +kerning first=262 second=219 amount=-1 +kerning first=351 second=8249 amount=-1 +kerning first=192 second=368 amount=-1 +kerning first=1055 second=1118 amount=-1 +kerning first=74 second=284 amount=-1 +kerning first=282 second=338 amount=-1 +kerning first=78 second=225 amount=-1 +kerning first=80 second=76 amount=-1 +kerning first=264 second=271 amount=-1 +kerning first=1091 second=1118 amount=-1 +kerning first=235 second=357 amount=-1 +kerning first=85 second=219 amount=-1 +kerning first=114 second=225 amount=-1 +kerning first=1043 second=1040 amount=-1 +kerning first=267 second=232 amount=-1 +kerning first=219 second=225 amount=-1 +kerning first=1055 second=1031 amount=-1 +kerning first=1060 second=1044 amount=-1 +kerning first=261 second=234 amount=-1 +kerning first=66 second=8249 amount=-1 +kerning first=225 second=234 amount=-1 +kerning first=268 second=98 amount=-1 +kerning first=212 second=344 amount=-1 +kerning first=339 second=314 amount=-1 +kerning first=102 second=8249 amount=-1 +kerning first=264 second=368 amount=-1 +kerning first=284 second=344 amount=-1 +kerning first=316 second=243 amount=-1 +kerning first=323 second=332 amount=-1 +kerning first=369 second=234 amount=-1 +kerning first=1039 second=1099 amount=-1 +kerning first=346 second=80 amount=-1 +kerning first=266 second=46 amount=-1 +kerning first=104 second=275 amount=-1 +kerning first=356 second=229 amount=-1 +kerning first=274 second=80 amount=-1 +kerning first=362 second=353 amount=-1 +kerning first=195 second=216 amount=-1 +kerning first=270 second=197 amount=-1 +kerning first=1034 second=1055 amount=-1 +kerning first=209 second=275 amount=-1 +kerning first=1077 second=1097 amount=-1 +kerning first=97 second=378 amount=-1 +kerning first=187 second=366 amount=-1 +kerning first=87 second=195 amount=-1 +kerning first=374 second=46 amount=-1 +kerning first=71 second=344 amount=-1 +kerning first=198 second=280 amount=-1 +kerning first=82 second=366 amount=-1 +kerning first=1058 second=1114 amount=-1 +kerning first=197 second=67 amount=-1 +kerning first=270 second=280 amount=-1 +kerning first=327 second=225 amount=-1 +kerning first=1064 second=1077 amount=-1 +kerning first=77 second=353 amount=-1 +kerning first=199 second=357 amount=-1 +kerning first=202 second=80 amount=-1 +kerning first=203 second=363 amount=-1 +kerning first=89 second=46 amount=-1 +kerning first=275 second=363 amount=-1 +kerning first=194 second=46 amount=-1 +kerning first=218 second=353 amount=-1 +kerning first=330 second=213 amount=-1 +kerning first=66 second=8222 amount=-1 +kerning first=266 second=317 amount=-1 +kerning first=193 second=375 amount=-1 +kerning first=370 second=116 amount=-1 +kerning first=69 second=217 amount=-1 +kerning first=302 second=317 amount=-1 +kerning first=85 second=192 amount=-1 +kerning first=327 second=201 amount=-1 +kerning first=338 second=317 amount=-1 +kerning first=197 second=311 amount=-1 +kerning first=298 second=116 amount=-1 +kerning first=267 second=259 amount=-1 +kerning first=233 second=311 amount=-1 +kerning first=1051 second=1117 amount=-1 +kerning first=1028 second=1046 amount=-1 +kerning first=217 second=70 amount=-1 +kerning first=1105 second=1117 amount=-1 +kerning first=232 second=369 amount=-1 +kerning first=368 second=362 amount=-1 +kerning first=1034 second=1059 amount=-2 +kerning first=304 second=201 amount=-1 +kerning first=223 second=122 amount=-1 +kerning first=366 second=213 amount=-1 +kerning first=325 second=70 amount=-1 +kerning first=259 second=122 amount=-1 +kerning first=282 second=66 amount=-1 +kerning first=85 second=116 amount=-1 +kerning first=325 second=113 amount=-1 +kerning first=351 second=8222 amount=-1 +kerning first=268 second=201 amount=-1 +kerning first=217 second=113 amount=-1 +kerning first=235 second=99 amount=-1 +kerning first=279 second=8222 amount=-1 +kerning first=77 second=246 amount=-1 +kerning first=262 second=116 amount=-1 +kerning first=243 second=8222 amount=-1 +kerning first=231 second=259 amount=-1 +kerning first=288 second=204 amount=-1 +kerning first=192 second=89 amount=-1 +kerning first=354 second=244 amount=-1 +kerning first=1086 second=1078 amount=-1 +kerning first=102 second=8222 amount=-1 +kerning first=364 second=210 amount=-1 +kerning first=219 second=268 amount=-1 +kerning first=1054 second=1062 amount=-1 +kerning first=1069 second=1048 amount=-1 +kerning first=1027 second=1108 amount=-1 +kerning first=272 second=256 amount=-1 +kerning first=1059 second=1102 amount=-1 +kerning first=232 second=98 amount=-1 +kerning first=204 second=332 amount=-1 +kerning first=220 second=210 amount=-1 +kerning first=196 second=98 amount=-1 +kerning first=8217 second=85 amount=-1 +kerning first=327 second=268 amount=-1 +kerning first=1049 second=1025 amount=-1 +kerning first=209 second=302 amount=-1 +kerning first=68 second=302 amount=-1 +kerning first=104 second=8217 amount=-2 +kerning first=118 second=122 amount=-1 +kerning first=369 second=277 amount=-1 +kerning first=187 second=122 amount=-1 +kerning first=296 second=335 amount=-1 +kerning first=1038 second=1087 amount=-1 +kerning first=212 second=73 amount=-1 +kerning first=70 second=257 amount=-1 +kerning first=287 second=231 amount=-1 +kerning first=368 second=335 amount=-1 +kerning first=1030 second=1053 amount=-1 +kerning first=78 second=268 amount=-1 +kerning first=370 second=219 amount=-1 +kerning first=284 second=73 amount=-1 +kerning first=1066 second=1053 amount=-1 +kerning first=255 second=122 amount=-1 +kerning first=298 second=219 amount=-1 +kerning first=45 second=213 amount=-1 +kerning first=334 second=219 amount=-1 +kerning first=291 second=187 amount=-1 +kerning first=198 second=323 amount=-1 +kerning first=327 second=187 amount=-1 +kerning first=203 second=336 amount=-1 +kerning first=80 second=244 amount=-1 +kerning first=219 second=187 amount=-2 +kerning first=70 second=213 amount=-1 +kerning first=116 second=244 amount=-1 +kerning first=302 second=325 amount=-1 +kerning first=311 second=46 amount=-1 +kerning first=8218 second=368 amount=-1 +kerning first=304 second=266 amount=-1 +kerning first=370 second=114 amount=-1 +kerning first=221 second=244 amount=-1 +kerning first=195 second=362 amount=-1 +kerning first=257 second=244 amount=-1 +kerning first=1071 second=1096 amount=-1 +kerning first=218 second=283 amount=-1 +kerning first=1049 second=1071 amount=-1 +kerning first=201 second=371 amount=-1 +kerning first=365 second=244 amount=-1 +kerning first=8216 second=219 amount=-1 +kerning first=350 second=75 amount=-1 +kerning first=74 second=327 amount=-1 +kerning first=196 second=266 amount=-1 +kerning first=278 second=75 amount=-1 +kerning first=114 second=187 amount=-1 +kerning first=206 second=75 amount=-1 +kerning first=368 second=200 amount=-1 +kerning first=220 second=101 amount=-1 +kerning first=78 second=187 amount=-1 +kerning first=74 second=235 amount=-1 +kerning first=296 second=200 amount=-1 +kerning first=97 second=248 amount=-1 +kerning first=323 second=327 amount=-1 +kerning first=302 second=313 amount=-1 +kerning first=323 second=262 amount=-1 +kerning first=200 second=66 amount=-1 +kerning first=333 second=380 amount=-1 +kerning first=1051 second=1036 amount=-1 +kerning first=246 second=314 amount=-1 +kerning first=66 second=196 amount=-1 +kerning first=362 second=283 amount=-1 +kerning first=207 second=261 amount=-1 +kerning first=362 second=218 amount=-1 +kerning first=82 second=79 amount=-1 +kerning first=269 second=110 amount=-1 +kerning first=364 second=367 amount=-1 +kerning first=326 second=283 amount=-1 +kerning first=374 second=371 amount=-1 +kerning first=290 second=218 amount=-1 +kerning first=187 second=79 amount=-1 +kerning first=1064 second=1091 amount=-1 +kerning first=338 second=274 amount=-1 +kerning first=370 second=192 amount=-1 +kerning first=298 second=257 amount=-1 +kerning first=99 second=305 amount=-1 +kerning first=262 second=257 amount=-1 +kerning first=266 second=274 amount=-1 +kerning first=220 second=367 amount=-1 +kerning first=370 second=257 amount=-1 +kerning first=338 second=209 amount=-1 +kerning first=302 second=274 amount=-1 +kerning first=213 second=270 amount=-1 +kerning first=245 second=318 amount=-1 +kerning first=334 second=192 amount=-1 +kerning first=302 second=209 amount=-1 +kerning first=1056 second=1050 amount=-1 +kerning first=281 second=318 amount=-1 +kerning first=249 second=8217 amount=-1 +kerning first=225 second=380 amount=-1 +kerning first=85 second=257 amount=-1 +kerning first=353 second=318 amount=-1 +kerning first=272 second=66 amount=-1 +kerning first=261 second=380 amount=-1 +kerning first=268 second=44 amount=-1 +kerning first=219 second=252 amount=-1 +kerning first=77 second=310 amount=-1 +kerning first=109 second=114 amount=-1 +kerning first=104 second=101 amount=-1 +kerning first=196 second=8249 amount=-1 +kerning first=73 second=114 amount=-1 +kerning first=85 second=284 amount=-1 +kerning first=283 second=115 amount=-1 +kerning first=291 second=252 amount=-1 +kerning first=201 second=211 amount=-1 +kerning first=209 second=101 amount=-1 +kerning first=268 second=8249 amount=-1 +kerning first=1039 second=1072 amount=-1 +kerning first=355 second=115 amount=-1 +kerning first=73 second=109 amount=-1 +kerning first=70 second=115 amount=-1 +kerning first=281 second=101 amount=-1 +kerning first=8216 second=192 amount=-2 +kerning first=72 second=335 amount=-1 +kerning first=1067 second=1098 amount=-1 +kerning first=1031 second=1098 amount=-1 +kerning first=80 second=217 amount=-1 +kerning first=211 second=115 amount=-1 +kerning first=288 second=296 amount=-1 +kerning first=197 second=354 amount=-1 +kerning first=201 second=214 amount=-1 +kerning first=362 second=310 amount=-1 +kerning first=277 second=231 amount=-1 +kerning first=45 second=89 amount=-2 +kerning first=201 second=344 amount=-1 +kerning first=100 second=337 amount=-1 +kerning first=218 second=310 amount=-1 +kerning first=100 second=231 amount=-1 +kerning first=205 second=231 amount=-1 +kerning first=262 second=99 amount=-1 +kerning first=110 second=235 amount=-1 +kerning first=71 second=317 amount=-1 +kerning first=279 second=353 amount=-1 +kerning first=364 second=275 amount=-1 +kerning first=328 second=275 amount=-1 +kerning first=104 second=345 amount=-1 +kerning first=310 second=362 amount=-1 +kerning first=287 second=235 amount=-1 +kerning first=246 second=287 amount=-1 +kerning first=277 second=106 amount=-1 +kerning first=209 second=345 amount=-1 +kerning first=84 second=234 amount=-1 +kerning first=220 second=275 amount=-1 +kerning first=245 second=345 amount=-1 +kerning first=74 second=83 amount=-1 +kerning first=235 second=249 amount=-1 +kerning first=281 second=345 amount=-1 +kerning first=8222 second=380 amount=-1 +kerning first=352 second=296 amount=-1 +kerning first=325 second=97 amount=-1 +kerning first=72 second=80 amount=-1 +kerning first=1036 second=1095 amount=-1 +kerning first=86 second=226 amount=-1 +kerning first=72 second=243 amount=-1 +kerning first=1041 second=1044 amount=-1 +kerning first=258 second=45 amount=-1 +kerning first=207 second=223 amount=-1 +kerning first=298 second=284 amount=-1 +kerning first=323 second=83 amount=-1 +kerning first=81 second=278 amount=-1 +kerning first=366 second=45 amount=-2 +kerning first=370 second=284 amount=-1 +kerning first=289 second=335 amount=-1 +kerning first=66 second=353 amount=-1 +kerning first=263 second=226 amount=-1 +kerning first=296 second=368 amount=-1 +kerning first=213 second=80 amount=-1 +kerning first=66 second=223 amount=-1 +kerning first=227 second=291 amount=-1 +kerning first=68 second=221 amount=-1 +kerning first=1049 second=1081 amount=-1 +kerning first=187 second=253 amount=-1 +kerning first=73 second=212 amount=-1 +kerning first=77 second=245 amount=-1 +kerning first=268 second=304 amount=-1 +kerning first=325 second=380 amount=-1 +kerning first=1054 second=1046 amount=-1 +kerning first=231 second=324 amount=-1 +kerning first=304 second=304 amount=-1 +kerning first=267 second=324 amount=-1 +kerning first=218 second=120 amount=-1 +kerning first=209 second=74 amount=-1 +kerning first=8218 second=212 amount=-1 +kerning first=366 second=278 amount=-1 +kerning first=330 second=278 amount=-1 +kerning first=346 second=313 amount=-1 +kerning first=212 second=72 amount=-1 +kerning first=1042 second=1056 amount=-1 +kerning first=362 second=245 amount=-1 +kerning first=100 second=45 amount=-1 +kerning first=198 second=361 amount=-1 +kerning first=116 second=111 amount=-1 +kerning first=326 second=245 amount=-1 +kerning first=323 second=8218 amount=-1 +kerning first=202 second=313 amount=-1 +kerning first=1118 second=1088 amount=-1 +kerning first=338 second=338 amount=-1 +kerning first=287 second=8218 amount=-1 +kerning first=8222 second=266 amount=-1 +kerning first=274 second=313 amount=-1 +kerning first=218 second=245 amount=-1 +kerning first=1048 second=1037 amount=-1 +kerning first=1027 second=1092 amount=-1 +kerning first=82 second=187 amount=-1 +kerning first=89 second=192 amount=-1 +kerning first=80 second=65 amount=-1 +kerning first=65 second=254 amount=-1 +kerning first=230 second=111 amount=-1 +kerning first=324 second=269 amount=-1 +kerning first=1046 second=1088 amount=-1 +kerning first=280 second=203 amount=-1 +kerning first=81 second=72 amount=-1 +kerning first=101 second=254 amount=-1 +kerning first=266 second=111 amount=-1 +kerning first=195 second=118 amount=-1 +kerning first=221 second=65 amount=-1 +kerning first=103 second=105 amount=-1 +kerning first=330 second=72 amount=-1 +kerning first=352 second=304 amount=-1 +kerning first=1042 second=1055 amount=-1 +kerning first=366 second=72 amount=-1 +kerning first=87 second=260 amount=-1 +kerning first=374 second=111 amount=-1 +kerning first=362 second=120 amount=-1 +kerning first=80 second=374 amount=-1 +kerning first=109 second=118 amount=-1 +kerning first=115 second=8220 amount=-2 +kerning first=286 second=114 amount=-1 +kerning first=289 second=363 amount=-1 +kerning first=79 second=8220 amount=-2 +kerning first=1050 second=1094 amount=-1 +kerning first=250 second=114 amount=-1 +kerning first=1049 second=1073 amount=-1 +kerning first=220 second=8220 amount=-1 +kerning first=89 second=111 amount=-1 +kerning first=45 second=251 amount=-1 +kerning first=220 second=69 amount=-1 +kerning first=368 second=102 amount=-1 +kerning first=368 second=227 amount=-1 +kerning first=333 second=44 amount=-1 +kerning first=344 second=364 amount=-1 +kerning first=296 second=227 amount=-1 +kerning first=268 second=331 amount=-1 +kerning first=258 second=251 amount=-1 +kerning first=305 second=101 amount=-1 +kerning first=304 second=331 amount=-1 +kerning first=269 second=273 amount=-1 +kerning first=69 second=81 amount=-1 +kerning first=233 second=273 amount=-1 +kerning first=79 second=69 amount=-1 +kerning first=240 second=380 amount=-1 +kerning first=200 second=364 amount=-1 +kerning first=370 second=78 amount=-1 +kerning first=366 second=251 amount=-1 +kerning first=302 second=355 amount=-1 +kerning first=1048 second=1064 amount=-1 +kerning first=334 second=78 amount=-1 +kerning first=218 second=218 amount=-1 +kerning first=75 second=334 amount=-1 +kerning first=230 second=355 amount=-1 +kerning first=194 second=355 amount=-1 +kerning first=282 second=81 amount=-1 +kerning first=77 second=218 amount=-1 +kerning first=45 second=72 amount=-1 +kerning first=298 second=78 amount=-1 +kerning first=1062 second=1085 amount=-1 +kerning first=262 second=78 amount=-1 +kerning first=277 second=113 amount=-1 +kerning first=66 second=88 amount=-1 +kerning first=111 second=8250 amount=-1 +kerning first=234 second=242 amount=-1 +kerning first=207 second=288 amount=-1 +kerning first=1056 second=1076 amount=-1 +kerning first=85 second=78 amount=-1 +kerning first=279 second=234 amount=-1 +kerning first=335 second=8221 amount=-2 +kerning first=217 second=313 amount=-1 +kerning first=80 second=282 amount=-1 +kerning first=338 second=355 amount=-1 +kerning first=67 second=230 amount=-1 +kerning first=280 second=274 amount=-1 +kerning first=262 second=79 amount=-1 +kerning first=214 second=87 amount=-1 +kerning first=1036 second=1073 amount=-1 +kerning first=335 second=291 amount=-1 +kerning first=228 second=233 amount=-1 +kerning first=87 second=233 amount=-1 +kerning first=8249 second=220 amount=-1 +kerning first=263 second=291 amount=-1 +kerning first=206 second=346 amount=-1 +kerning first=8222 second=217 amount=-1 +kerning first=1042 second=1052 amount=-1 +kerning first=363 second=233 amount=-1 +kerning first=268 second=230 amount=-1 +kerning first=272 second=87 amount=-1 +kerning first=291 second=233 amount=-1 +kerning first=327 second=233 amount=-1 +kerning first=325 second=288 amount=-1 +kerning first=313 second=217 amount=-1 +kerning first=232 second=235 amount=-1 +kerning first=240 second=291 amount=-1 +kerning first=200 second=334 amount=-1 +kerning first=1068 second=1046 amount=-1 +kerning first=1086 second=1113 amount=-1 +kerning first=99 second=291 amount=-1 +kerning first=354 second=257 amount=-1 +kerning first=209 second=227 amount=-1 +kerning first=213 second=84 amount=-1 +kerning first=330 second=224 amount=-1 +kerning first=217 second=288 amount=-1 +kerning first=344 second=334 amount=-1 +kerning first=1055 second=1049 amount=-1 +kerning first=366 second=224 amount=-1 +kerning first=370 second=81 amount=-1 +kerning first=262 second=81 amount=-1 +kerning first=298 second=81 amount=-1 +kerning first=200 second=187 amount=-1 +kerning first=278 second=8221 amount=-1 +kerning first=314 second=8221 amount=-1 +kerning first=97 second=99 amount=-1 +kerning first=1038 second=1095 amount=-1 +kerning first=221 second=245 amount=-1 +kerning first=344 second=187 amount=-1 +kerning first=205 second=270 amount=-1 +kerning first=116 second=245 amount=-1 +kerning first=272 second=187 amount=-1 +kerning first=80 second=245 amount=-1 +kerning first=103 second=363 amount=-1 +kerning first=201 second=8218 amount=-1 +kerning first=302 second=352 amount=-1 +kerning first=1054 second=1070 amount=-1 +kerning first=76 second=221 amount=-1 +kerning first=97 second=279 amount=-1 +kerning first=281 second=269 amount=-1 +kerning first=1053 second=1104 amount=-1 +kerning first=304 second=230 amount=-1 +kerning first=288 second=75 amount=-1 +kerning first=302 second=331 amount=-1 +kerning first=256 second=8249 amount=-1 +kerning first=214 second=364 amount=-1 +kerning first=85 second=261 amount=-1 +kerning first=210 second=206 amount=-1 +kerning first=69 second=206 amount=-1 +kerning first=114 second=228 amount=-1 +kerning first=73 second=364 amount=-1 +kerning first=201 second=66 amount=-1 +kerning first=298 second=261 amount=-1 +kerning first=262 second=261 amount=-1 +kerning first=258 second=371 amount=-1 +kerning first=253 second=108 amount=-1 +kerning first=205 second=257 amount=-1 +kerning first=370 second=261 amount=-1 +kerning first=81 second=217 amount=-1 +kerning first=72 second=264 amount=-1 +kerning first=112 second=108 amount=-1 +kerning first=368 second=69 amount=-1 +kerning first=282 second=206 amount=-1 +kerning first=302 second=366 amount=-1 +kerning first=1065 second=1119 amount=-1 +kerning first=291 second=380 amount=-1 +kerning first=1030 second=1034 amount=-1 +kerning first=284 second=205 amount=-1 +kerning first=255 second=380 amount=-1 +kerning first=77 second=200 amount=-1 +kerning first=210 second=193 amount=-1 +kerning first=289 second=108 amount=-1 +kerning first=212 second=205 amount=-1 +kerning first=327 second=380 amount=-1 +kerning first=65 second=303 amount=-1 +kerning first=364 second=266 amount=-1 +kerning first=264 second=273 amount=-1 +kerning first=199 second=368 amount=-1 +kerning first=286 second=364 amount=-1 +kerning first=193 second=370 amount=-1 +kerning first=252 second=8217 amount=-1 +kerning first=1066 second=1034 amount=-1 +kerning first=8217 second=114 amount=-1 +kerning first=203 second=8218 amount=-1 +kerning first=253 second=318 amount=-1 +kerning first=72 second=8249 amount=-1 +kerning first=1036 second=1063 amount=-1 +kerning first=108 second=8249 amount=-1 +kerning first=284 second=8221 amount=-1 +kerning first=99 second=44 amount=-1 +kerning first=1041 second=1116 amount=-1 +kerning first=235 second=355 amount=-1 +kerning first=71 second=205 amount=-1 +kerning first=203 second=78 amount=-1 +kerning first=249 second=8249 amount=-1 +kerning first=199 second=355 amount=-1 +kerning first=78 second=380 amount=-1 +kerning first=80 second=325 amount=-1 +kerning first=219 second=380 amount=-1 +kerning first=8250 second=370 amount=-1 +kerning first=70 second=310 amount=-1 +kerning first=1077 second=1103 amount=-1 +kerning first=1062 second=1077 amount=-1 +kerning first=316 second=248 amount=-1 +kerning first=1060 second=1039 amount=-1 +kerning first=338 second=218 amount=-1 +kerning first=344 second=87 amount=-1 +kerning first=88 second=252 amount=-1 +kerning first=67 second=248 amount=-1 +kerning first=266 second=218 amount=-1 +kerning first=202 second=76 amount=-1 +kerning first=209 second=214 amount=-1 +kerning first=194 second=218 amount=-1 +kerning first=103 second=248 amount=-1 +kerning first=1069 second=1039 amount=-1 +kerning first=77 second=347 amount=-1 +kerning first=74 second=330 amount=-1 +kerning first=205 second=77 amount=-1 +kerning first=201 second=220 amount=-1 +kerning first=1050 second=1059 amount=-1 +kerning first=255 second=107 amount=-1 +kerning first=1071 second=1117 amount=-1 +kerning first=85 second=382 amount=-1 +kerning first=374 second=339 amount=-1 +kerning first=121 second=382 amount=-1 +kerning first=367 second=103 amount=-1 +kerning first=226 second=382 amount=-1 +kerning first=108 second=171 amount=-1 +kerning first=269 second=289 amount=-1 +kerning first=1076 second=1094 amount=-1 +kerning first=233 second=289 amount=-1 +kerning first=259 second=103 amount=-1 +kerning first=8222 second=230 amount=-1 +kerning first=288 second=8218 amount=-1 +kerning first=223 second=103 amount=-1 +kerning first=249 second=171 amount=-1 +kerning first=86 second=242 amount=-1 +kerning first=281 second=281 amount=-1 +kerning first=1053 second=1091 amount=-1 +kerning first=330 second=304 amount=-1 +kerning first=97 second=333 amount=-1 +kerning first=366 second=304 amount=-1 +kerning first=258 second=211 amount=-1 +kerning first=1053 second=1051 amount=-1 +kerning first=221 second=338 amount=-1 +kerning first=240 second=187 amount=-1 +kerning first=1048 second=1068 amount=-1 +kerning first=1053 second=1050 amount=-1 +kerning first=330 second=211 amount=-1 +kerning first=211 second=85 amount=-1 +kerning first=1036 second=1057 amount=-1 +kerning first=204 second=242 amount=-1 +kerning first=80 second=114 amount=-1 +kerning first=1060 second=1031 amount=-1 +kerning first=80 second=338 amount=-1 +kerning first=70 second=85 amount=-1 +kerning first=370 second=203 amount=-1 +kerning first=81 second=304 amount=-1 +kerning first=266 second=339 amount=-1 +kerning first=262 second=382 amount=-1 +kerning first=71 second=298 amount=-1 +kerning first=77 second=241 amount=-1 +kerning first=230 second=339 amount=-1 +kerning first=298 second=382 amount=-1 +kerning first=302 second=339 amount=-1 +kerning first=362 second=347 amount=-1 +kerning first=1051 second=1025 amount=-1 +kerning first=70 second=332 amount=-1 +kerning first=65 second=290 amount=-1 +kerning first=89 second=339 amount=-1 +kerning first=366 second=211 amount=-1 +kerning first=212 second=298 amount=-1 +kerning first=201 second=313 amount=-1 +kerning first=206 second=290 amount=-1 +kerning first=110 second=287 amount=-1 +kerning first=79 second=86 amount=-1 +kerning first=204 second=333 amount=-1 +kerning first=218 second=347 amount=-1 +kerning first=83 second=364 amount=-1 +kerning first=284 second=298 amount=-1 +kerning first=1043 second=1085 amount=-1 +kerning first=221 second=271 amount=-1 +kerning first=240 second=111 amount=-1 +kerning first=278 second=357 amount=-1 +kerning first=317 second=374 amount=-1 +kerning first=283 second=8250 amount=-1 +kerning first=8222 second=243 amount=-1 +kerning first=304 second=76 amount=-1 +kerning first=1118 second=1094 amount=-1 +kerning first=211 second=8250 amount=-1 +kerning first=85 second=214 amount=-1 +kerning first=101 second=357 amount=-1 +kerning first=264 second=219 amount=-1 +kerning first=268 second=76 amount=-1 +kerning first=106 second=8250 amount=-1 +kerning first=65 second=357 amount=-1 +kerning first=364 second=212 amount=-1 +kerning first=206 second=357 amount=-1 +kerning first=68 second=374 amount=-1 +kerning first=1044 second=1118 amount=-1 +kerning first=192 second=219 amount=-1 +kerning first=208 second=8222 amount=-1 +kerning first=364 second=82 amount=-1 +kerning first=330 second=317 amount=-1 +kerning first=262 second=315 amount=-1 +kerning first=304 second=323 amount=-1 +kerning first=105 second=119 amount=-1 +kerning first=220 second=212 amount=-1 +kerning first=268 second=323 amount=-1 +kerning first=1048 second=1075 amount=-1 +kerning first=86 second=263 amount=-1 +kerning first=365 second=8217 amount=-1 +kerning first=370 second=315 amount=-1 +kerning first=80 second=8217 amount=-1 +kerning first=8250 second=69 amount=-1 +kerning first=99 second=111 amount=-1 +kerning first=116 second=8217 amount=-1 +kerning first=296 second=262 amount=-1 +kerning first=298 second=315 amount=-1 +kerning first=302 second=261 amount=-1 +kerning first=334 second=315 amount=-1 +kerning first=221 second=8217 amount=-1 +kerning first=199 second=314 amount=-1 +kerning first=203 second=366 amount=-1 +kerning first=286 second=204 amount=-1 +kerning first=338 second=365 amount=-1 +kerning first=374 second=365 amount=-1 +kerning first=214 second=204 amount=-1 +kerning first=233 second=263 amount=-1 +kerning first=67 second=68 amount=-1 +kerning first=269 second=263 amount=-1 +kerning first=200 second=280 amount=-1 +kerning first=1051 second=1092 amount=-1 +kerning first=8218 second=273 amount=-1 +kerning first=305 second=263 amount=-1 +kerning first=194 second=365 amount=-1 +kerning first=70 second=254 amount=-1 +kerning first=272 second=280 amount=-1 +kerning first=235 second=314 amount=-1 +kerning first=230 second=365 amount=-1 +kerning first=1031 second=1067 amount=-1 +kerning first=89 second=365 amount=-1 +kerning first=231 second=110 amount=-1 +kerning first=8249 second=350 amount=-1 +kerning first=1048 second=1101 amount=-1 +kerning first=8222 second=104 amount=-1 +kerning first=199 second=67 amount=-1 +kerning first=1071 second=1024 amount=-1 +kerning first=267 second=110 amount=-1 +kerning first=352 second=68 amount=-1 +kerning first=205 second=203 amount=-1 +kerning first=80 second=271 amount=-1 +kerning first=217 second=195 amount=-1 +kerning first=69 second=67 amount=-1 +kerning first=100 second=378 amount=-1 +kerning first=258 second=250 amount=-1 +kerning first=195 second=357 amount=-1 +kerning first=264 second=274 amount=-1 +kerning first=277 second=378 amount=-1 +kerning first=272 second=46 amount=-1 +kerning first=234 second=101 amount=-1 +kerning first=205 second=378 amount=-1 +kerning first=366 second=250 amount=-1 +kerning first=69 second=8217 amount=-1 +kerning first=199 second=262 amount=-1 +kerning first=1068 second=1067 amount=-1 +kerning first=207 second=76 amount=-1 +kerning first=105 second=8217 amount=-1 +kerning first=255 second=8221 amount=-2 +kerning first=334 second=354 amount=-1 +kerning first=217 second=261 amount=-1 +kerning first=334 second=209 amount=-1 +kerning first=75 second=216 amount=-1 +kerning first=89 second=267 amount=-1 +kerning first=8222 second=257 amount=-1 +kerning first=66 second=76 amount=-1 +kerning first=339 second=357 amount=-1 +kerning first=88 second=345 amount=-1 +kerning first=211 second=280 amount=-1 +kerning first=203 second=204 amount=-1 +kerning first=77 second=113 amount=-1 +kerning first=366 second=317 amount=-1 +kerning first=193 second=345 amount=-1 +kerning first=229 second=345 amount=-1 +kerning first=1070 second=1084 amount=-1 +kerning first=345 second=259 amount=-1 +kerning first=354 second=187 amount=-1 +kerning first=203 second=270 amount=-1 +kerning first=103 second=287 amount=-1 +kerning first=1033 second=1038 amount=-2 +kerning first=337 second=345 amount=-1 +kerning first=1086 second=1083 amount=-1 +kerning first=370 second=369 amount=-1 +kerning first=8217 second=240 amount=-1 +kerning first=362 second=113 amount=-1 +kerning first=201 second=207 amount=-1 +kerning first=316 second=287 amount=-1 +kerning first=370 second=100 amount=-1 +kerning first=45 second=317 amount=-1 +kerning first=1047 second=1096 amount=-1 +kerning first=264 second=366 amount=-1 +kerning first=81 second=317 amount=-1 +kerning first=244 second=287 amount=-1 +kerning first=73 second=336 amount=-1 +kerning first=326 second=113 amount=-1 +kerning first=192 second=366 amount=-1 +kerning first=218 second=113 amount=-1 +kerning first=232 second=271 amount=-1 +kerning first=121 second=369 amount=-1 +kerning first=72 second=210 amount=-1 +kerning first=75 second=116 amount=-1 +kerning first=85 second=369 amount=-1 +kerning first=304 second=271 amount=-1 +kerning first=355 second=8250 amount=-1 +kerning first=268 second=271 amount=-1 +kerning first=67 second=8220 amount=-1 +kerning first=202 second=371 amount=-1 +kerning first=70 second=278 amount=-1 +kerning first=209 second=73 amount=-1 +kerning first=330 second=83 amount=-1 +kerning first=366 second=83 amount=-1 +kerning first=103 second=8220 amount=-2 +kerning first=8218 second=221 amount=-2 +kerning first=259 second=244 amount=-1 +kerning first=218 second=213 amount=-1 +kerning first=317 second=86 amount=-1 +kerning first=198 second=268 amount=-1 +kerning first=97 second=289 amount=-1 +kerning first=296 second=97 amount=-1 +kerning first=73 second=351 amount=-1 +kerning first=211 second=278 amount=-1 +kerning first=316 second=8220 amount=-1 +kerning first=367 second=244 amount=-1 +kerning first=368 second=97 amount=-1 +kerning first=77 second=213 amount=-1 +kerning first=1044 second=1090 amount=-1 +kerning first=302 second=77 amount=-1 +kerning first=1059 second=1099 amount=-1 +kerning first=338 second=77 amount=-1 +kerning first=368 second=82 amount=-1 +kerning first=108 second=277 amount=-1 +kerning first=1059 second=1060 amount=-1 +kerning first=207 second=74 amount=-1 +kerning first=266 second=77 amount=-1 +kerning first=72 second=277 amount=-1 +kerning first=67 second=235 amount=-1 +kerning first=68 second=88 amount=-1 +kerning first=68 second=73 amount=-1 +kerning first=103 second=235 amount=-1 +kerning first=8218 second=219 amount=-1 +kerning first=74 second=251 amount=-1 +kerning first=249 second=277 amount=-1 +kerning first=8218 second=234 amount=-1 +kerning first=1047 second=1081 amount=-1 +kerning first=268 second=269 amount=-1 +kerning first=195 second=290 amount=-1 +kerning first=304 second=269 amount=-1 +kerning first=304 second=338 amount=-1 +kerning first=232 second=269 amount=-1 +kerning first=234 second=283 amount=-1 +kerning first=266 second=231 amount=-1 +kerning first=282 second=286 amount=-1 +kerning first=1048 second=1117 amount=-1 +kerning first=268 second=338 amount=-1 +kerning first=302 second=231 amount=-1 +kerning first=210 second=65 amount=-1 +kerning first=72 second=171 amount=-1 +kerning first=296 second=82 amount=-1 +kerning first=196 second=338 amount=-1 +kerning first=374 second=231 amount=-1 +kerning first=69 second=286 amount=-1 +kerning first=201 second=274 amount=-1 +kerning first=352 second=8220 amount=-1 +kerning first=214 second=351 amount=-1 +kerning first=198 second=203 amount=-1 +kerning first=68 second=86 amount=-1 +kerning first=1050 second=1074 amount=-1 +kerning first=277 second=363 amount=-1 +kerning first=212 second=194 amount=-1 +kerning first=263 second=240 amount=-1 +kerning first=264 second=108 amount=-1 +kerning first=8216 second=347 amount=-1 +kerning first=354 second=353 amount=-1 +kerning first=264 second=80 amount=-1 +kerning first=1027 second=1097 amount=-1 +kerning first=382 second=45 amount=-1 +kerning first=324 second=114 amount=-1 +kerning first=1068 second=1025 amount=-1 +kerning first=366 second=8222 amount=-2 +kerning first=288 second=114 amount=-1 +kerning first=217 second=219 amount=-1 +kerning first=284 second=66 amount=-1 +kerning first=45 second=196 amount=-1 +kerning first=85 second=367 amount=-1 +kerning first=81 second=196 amount=-1 +kerning first=196 second=217 amount=-1 +kerning first=212 second=66 amount=-1 +kerning first=222 second=8222 amount=-1 +kerning first=111 second=114 amount=-1 +kerning first=268 second=217 amount=-1 +kerning first=268 second=284 amount=-1 +kerning first=89 second=231 amount=-1 +kerning first=220 second=251 amount=-1 +kerning first=304 second=217 amount=-1 +kerning first=1047 second=1027 amount=-1 +kerning first=304 second=284 amount=-1 +kerning first=230 second=231 amount=-1 +kerning first=272 second=115 amount=-1 +kerning first=210 second=353 amount=-1 +kerning first=1034 second=1101 amount=-1 +kerning first=196 second=284 amount=-1 +kerning first=1064 second=1028 amount=-1 +kerning first=201 second=205 amount=-1 +kerning first=101 second=249 amount=-1 +kerning first=220 second=266 amount=-1 +kerning first=316 second=235 amount=-1 +kerning first=296 second=264 amount=-1 +kerning first=362 second=200 amount=-1 +kerning first=1064 second=1037 amount=-1 +kerning first=315 second=362 amount=-1 +kerning first=198 second=214 amount=-1 +kerning first=84 second=243 amount=-1 +kerning first=290 second=200 amount=-1 +kerning first=204 second=111 amount=-1 +kerning first=1058 second=1076 amount=-1 +kerning first=218 second=200 amount=-1 +kerning first=8218 second=288 amount=-1 +kerning first=65 second=249 amount=-1 +kerning first=70 second=226 amount=-1 +kerning first=8222 second=271 amount=-1 +kerning first=220 second=370 amount=-1 +kerning first=367 second=242 amount=-1 +kerning first=202 second=45 amount=-1 +kerning first=204 second=97 amount=-1 +kerning first=81 second=8222 amount=-1 +kerning first=97 second=45 amount=-1 +kerning first=99 second=252 amount=-1 +kerning first=278 second=249 amount=-1 +kerning first=310 second=45 amount=-1 +kerning first=314 second=249 amount=-1 +kerning first=66 second=362 amount=-1 +kerning first=8222 second=98 amount=-1 +kerning first=346 second=45 amount=-1 +kerning first=217 second=275 amount=-1 +kerning first=350 second=249 amount=-1 +kerning first=355 second=226 amount=-1 +kerning first=207 second=362 amount=-1 +kerning first=195 second=71 amount=-1 +kerning first=325 second=275 amount=-1 +kerning first=171 second=362 amount=-1 +kerning first=274 second=45 amount=-1 +kerning first=289 second=275 amount=-1 +kerning first=337 second=291 amount=-1 +kerning first=72 second=223 amount=-1 +kerning first=352 second=302 amount=-1 +kerning first=45 second=363 amount=-1 +kerning first=291 second=326 amount=-1 +kerning first=103 second=233 amount=-1 +kerning first=280 second=302 amount=-1 +kerning first=364 second=199 amount=-1 +kerning first=229 second=291 amount=-1 +kerning first=87 second=234 amount=-1 +kerning first=1030 second=1083 amount=-1 +kerning first=228 second=234 amount=-1 +kerning first=8250 second=84 amount=-1 +kerning first=99 second=98 amount=-1 +kerning first=270 second=46 amount=-1 +kerning first=326 second=267 amount=-1 +kerning first=67 second=302 amount=-1 +kerning first=362 second=267 amount=-1 +kerning first=316 second=233 amount=-1 +kerning first=1039 second=1113 amount=-1 +kerning first=281 second=248 amount=-1 +kerning first=8222 second=269 amount=-1 +kerning first=233 second=122 amount=-1 +kerning first=225 second=243 amount=-1 +kerning first=70 second=224 amount=-1 +kerning first=217 second=327 amount=-1 +kerning first=65 second=8221 amount=-2 +kerning first=1062 second=1094 amount=-1 +kerning first=101 second=8221 amount=-2 +kerning first=291 second=107 amount=-1 +kerning first=369 second=243 amount=-1 +kerning first=325 second=327 amount=-1 +kerning first=203 second=249 amount=-1 +kerning first=225 second=269 amount=-1 +kerning first=1038 second=1119 amount=-1 +kerning first=277 second=311 amount=-1 +kerning first=354 second=232 amount=-1 +kerning first=171 second=89 amount=-1 +kerning first=355 second=224 amount=-1 +kerning first=66 second=89 amount=-1 +kerning first=85 second=249 amount=-1 +kerning first=234 second=335 amount=-1 +kerning first=97 second=318 amount=-1 +kerning first=8220 second=218 amount=-1 +kerning first=83 second=370 amount=-1 +kerning first=1052 second=1071 amount=-1 +kerning first=344 second=46 amount=-1 +kerning first=1078 second=1104 amount=-1 +kerning first=226 second=318 amount=-1 +kerning first=218 second=267 amount=-1 +kerning first=368 second=370 amount=-1 +kerning first=8222 second=338 amount=-1 +kerning first=330 second=212 amount=-1 +kerning first=296 second=370 amount=-1 +kerning first=8250 second=82 amount=-1 +kerning first=72 second=225 amount=-1 +kerning first=220 second=199 amount=-1 +kerning first=77 second=267 amount=-1 +kerning first=220 second=361 amount=-1 +kerning first=291 second=277 amount=-1 +kerning first=368 second=269 amount=-1 +kerning first=1068 second=1031 amount=-1 +kerning first=302 second=71 amount=-1 +kerning first=1030 second=1086 amount=-1 +kerning first=364 second=361 amount=-1 +kerning first=199 second=206 amount=-1 +kerning first=207 second=267 amount=-1 +kerning first=209 second=212 amount=-1 +kerning first=346 second=114 amount=-1 +kerning first=68 second=296 amount=-1 +kerning first=279 second=267 amount=-1 +kerning first=1104 second=1117 amount=-1 +kerning first=1062 second=1079 amount=-1 +kerning first=74 second=111 amount=-1 +kerning first=214 second=115 amount=-1 +kerning first=202 second=114 amount=-1 +kerning first=110 second=111 amount=-1 +kerning first=1059 second=1080 amount=-1 +kerning first=346 second=8249 amount=-1 +kerning first=274 second=114 amount=-1 +kerning first=382 second=8249 amount=-1 +kerning first=1027 second=1095 amount=-1 +kerning first=251 second=111 amount=-1 +kerning first=350 second=45 amount=-1 +kerning first=287 second=111 amount=-1 +kerning first=73 second=115 amount=-1 +kerning first=323 second=111 amount=-1 +kerning first=83 second=368 amount=-1 +kerning first=330 second=81 amount=-1 +kerning first=97 second=114 amount=-1 +kerning first=87 second=258 amount=-1 +kerning first=291 second=365 amount=-1 +kerning first=79 second=197 amount=-1 +kerning first=327 second=68 amount=-1 +kerning first=219 second=365 amount=-1 +kerning first=220 second=197 amount=-1 +kerning first=316 second=263 amount=-1 +kerning first=323 second=81 amount=-1 +kerning first=203 second=310 amount=-1 +kerning first=199 second=370 amount=-1 +kerning first=302 second=203 amount=-1 +kerning first=77 second=72 amount=-1 +kerning first=338 second=203 amount=-1 +kerning first=368 second=368 amount=-1 +kerning first=234 second=249 amount=-1 +kerning first=364 second=197 amount=-1 +kerning first=98 second=46 amount=-1 +kerning first=202 second=8249 amount=-1 +kerning first=1042 second=1037 amount=-1 +kerning first=8217 second=346 amount=-1 +kerning first=199 second=364 amount=-1 +kerning first=1041 second=1088 amount=-1 +kerning first=195 second=199 amount=-1 +kerning first=246 second=8220 amount=-2 +kerning first=266 second=203 amount=-1 +kerning first=368 second=290 amount=-1 +kerning first=362 second=72 amount=-1 +kerning first=67 second=263 amount=-1 +kerning first=270 second=374 amount=-1 +kerning first=103 second=263 amount=-1 +kerning first=235 second=106 amount=-1 +kerning first=290 second=72 amount=-1 +kerning first=1054 second=1055 amount=-1 +kerning first=355 second=8222 amount=-1 +kerning first=8216 second=220 amount=-1 +kerning first=116 second=230 amount=-1 +kerning first=203 second=327 amount=-1 +kerning first=80 second=230 amount=-1 +kerning first=1053 second=1052 amount=-1 +kerning first=211 second=8222 amount=-1 +kerning first=217 second=71 amount=-1 +kerning first=211 second=87 amount=-1 +kerning first=1055 second=1104 amount=-1 +kerning first=88 second=288 amount=-1 +kerning first=1030 second=1036 amount=-1 +kerning first=70 second=334 amount=-1 +kerning first=72 second=279 amount=-1 +kerning first=70 second=8222 amount=-2 +kerning first=235 second=333 amount=-1 +kerning first=108 second=279 amount=-1 +kerning first=192 second=288 amount=-1 +kerning first=74 second=81 amount=-1 +kerning first=287 second=291 amount=-1 +kerning first=251 second=291 amount=-1 +kerning first=87 second=288 amount=-1 +kerning first=364 second=227 amount=-1 +kerning first=8217 second=363 amount=-1 +kerning first=337 second=44 amount=-1 +kerning first=206 second=274 amount=-1 +kerning first=333 second=187 amount=-1 +kerning first=255 second=252 amount=-1 +kerning first=196 second=89 amount=-1 +kerning first=110 second=291 amount=-1 +kerning first=71 second=209 amount=-1 +kerning first=263 second=281 amount=-1 +kerning first=119 second=318 amount=-1 +kerning first=264 second=288 amount=-1 +kerning first=220 second=227 amount=-1 +kerning first=224 second=318 amount=-1 +kerning first=1059 second=1090 amount=-1 +kerning first=86 second=99 amount=-1 +kerning first=84 second=187 amount=-1 +kerning first=1042 second=1050 amount=-1 +kerning first=1067 second=1095 amount=-1 +kerning first=356 second=337 amount=-1 +kerning first=227 second=99 amount=-1 +kerning first=225 second=187 amount=-1 +kerning first=195 second=303 amount=-1 +kerning first=304 second=245 amount=-1 +kerning first=263 second=99 amount=-1 +kerning first=261 second=187 amount=-1 +kerning first=268 second=245 amount=-1 +kerning first=65 second=221 amount=-1 +kerning first=232 second=245 amount=-1 +kerning first=1047 second=1113 amount=-1 +kerning first=288 second=270 amount=-1 +kerning first=287 second=328 amount=-1 +kerning first=1066 second=1036 amount=-1 +kerning first=71 second=66 amount=-1 +kerning first=264 second=330 amount=-1 +kerning first=249 second=279 amount=-1 +kerning first=221 second=230 amount=-1 +kerning first=366 second=196 amount=-1 +kerning first=200 second=332 amount=-1 +kerning first=370 second=367 amount=-1 +kerning first=344 second=332 amount=-1 +kerning first=198 second=210 amount=-1 +kerning first=214 second=202 amount=-1 +kerning first=84 second=351 amount=-1 +kerning first=198 second=73 amount=-1 +kerning first=368 second=264 amount=-1 +kerning first=196 second=8217 amount=-2 +kerning first=286 second=202 amount=-1 +kerning first=270 second=73 amount=-1 +kerning first=73 second=202 amount=-1 +kerning first=101 second=108 amount=-1 +kerning first=108 second=8221 amount=-1 +kerning first=1030 second=1073 amount=-1 +kerning first=279 second=104 amount=-1 +kerning first=339 second=248 amount=-1 +kerning first=242 second=108 amount=-1 +kerning first=105 second=121 amount=-1 +kerning first=352 second=201 amount=-1 +kerning first=213 second=82 amount=-1 +kerning first=1034 second=1030 amount=-1 +kerning first=8249 second=352 amount=-1 +kerning first=80 second=323 amount=-1 +kerning first=8250 second=368 amount=-1 +kerning first=232 second=8217 amount=-2 +kerning first=1089 second=1076 amount=-1 +kerning first=203 second=364 amount=-1 +kerning first=1040 second=1038 amount=-2 +kerning first=268 second=8217 amount=-1 +kerning first=314 second=108 amount=-1 +kerning first=199 second=69 amount=-1 +kerning first=97 second=277 amount=-1 +kerning first=375 second=8218 amount=-1 +kerning first=1078 second=1091 amount=-1 +kerning first=275 second=273 amount=-1 +kerning first=8218 second=366 amount=-1 +kerning first=240 second=113 amount=-1 +kerning first=1056 second=1067 amount=-1 +kerning first=1039 second=1067 amount=-1 +kerning first=230 second=116 amount=-1 +kerning first=224 second=314 amount=-1 +kerning first=72 second=82 amount=-1 +kerning first=268 second=325 amount=-1 +kerning first=83 second=171 amount=-1 +kerning first=194 second=116 amount=-1 +kerning first=119 second=171 amount=-1 +kerning first=310 second=114 amount=-1 +kerning first=82 second=44 amount=-1 +kerning first=199 second=286 amount=-1 +kerning first=119 second=314 amount=-1 +kerning first=1118 second=1078 amount=-1 +kerning first=304 second=325 amount=-1 +kerning first=99 second=113 amount=-1 +kerning first=280 second=317 amount=-1 +kerning first=1031 second=1069 amount=-1 +kerning first=267 second=112 amount=-1 +kerning first=1067 second=1069 amount=-1 +kerning first=327 second=264 amount=-1 +kerning first=231 second=112 amount=-1 +kerning first=352 second=317 amount=-1 +kerning first=214 second=78 amount=-1 +kerning first=109 second=339 amount=-1 +kerning first=220 second=110 amount=-1 +kerning first=275 second=117 amount=-1 +kerning first=1038 second=1077 amount=-1 +kerning first=272 second=282 amount=-1 +kerning first=73 second=78 amount=-1 +kerning first=199 second=316 amount=-1 +kerning first=99 second=109 amount=-1 +kerning first=291 second=242 amount=-1 +kerning first=8217 second=256 amount=-2 +kerning first=200 second=282 amount=-1 +kerning first=364 second=110 amount=-1 +kerning first=288 second=77 amount=-1 +kerning first=70 second=71 amount=-1 +kerning first=217 second=8220 amount=-1 +kerning first=103 second=289 amount=-1 +kerning first=1031 second=1094 amount=-1 +kerning first=291 second=339 amount=-1 +kerning first=258 second=356 amount=-1 +kerning first=244 second=289 amount=-1 +kerning first=363 second=339 amount=-1 +kerning first=255 second=311 amount=-1 +kerning first=316 second=289 amount=-1 +kerning first=327 second=339 amount=-1 +kerning first=74 second=382 amount=-1 +kerning first=72 second=333 amount=-1 +kerning first=260 second=171 amount=-1 +kerning first=262 second=220 amount=-1 +kerning first=108 second=333 amount=-1 +kerning first=328 second=281 amount=-1 +kerning first=356 second=246 amount=-1 +kerning first=334 second=220 amount=-1 +kerning first=364 second=281 amount=-1 +kerning first=259 second=101 amount=-1 +kerning first=368 second=171 amount=-2 +kerning first=298 second=220 amount=-1 +kerning first=249 second=333 amount=-1 +kerning first=274 second=212 amount=-1 +kerning first=367 second=101 amount=-1 +kerning first=85 second=220 amount=-1 +kerning first=84 second=100 amount=-1 +kerning first=1049 second=1065 amount=-1 +kerning first=204 second=330 amount=-1 +kerning first=71 second=296 amount=-1 +kerning first=211 second=304 amount=-1 +kerning first=70 second=280 amount=-1 +kerning first=1030 second=1045 amount=-1 +kerning first=284 second=8218 amount=-1 +kerning first=69 second=338 amount=-1 +kerning first=284 second=296 amount=-1 +kerning first=366 second=85 amount=-1 +kerning first=248 second=8218 amount=-1 +kerning first=195 second=86 amount=-1 +kerning first=1064 second=1074 amount=-1 +kerning first=330 second=85 amount=-1 +kerning first=212 second=8218 amount=-1 +kerning first=212 second=296 amount=-1 +kerning first=70 second=304 amount=-1 +kerning first=89 second=382 amount=-1 +kerning first=298 second=313 amount=-1 +kerning first=258 second=85 amount=-1 +kerning first=334 second=313 amount=-1 +kerning first=366 second=109 amount=-1 +kerning first=370 second=220 amount=-1 +kerning first=370 second=313 amount=-1 +kerning first=187 second=298 amount=-1 +kerning first=356 second=8218 amount=-1 +kerning first=220 second=281 amount=-1 +kerning first=81 second=85 amount=-1 +kerning first=78 second=339 amount=-1 +kerning first=45 second=85 amount=-1 +kerning first=279 second=347 amount=-1 +kerning first=219 second=339 amount=-1 +kerning first=262 second=313 amount=-1 +kerning first=344 second=8250 amount=-1 +kerning first=217 second=290 amount=-1 +kerning first=207 second=347 amount=-1 +kerning first=66 second=347 amount=-1 +kerning first=107 second=8218 amount=-1 +kerning first=1051 second=1037 amount=-1 +kerning first=272 second=8250 amount=-1 +kerning first=45 second=109 amount=-1 +kerning first=323 second=382 amount=-1 +kerning first=305 second=287 amount=-1 +kerning first=87 second=225 amount=-1 +kerning first=70 second=83 amount=-1 +kerning first=325 second=290 amount=-1 +kerning first=269 second=287 amount=-1 +kerning first=85 second=313 amount=-1 +kerning first=200 second=8250 amount=-1 +kerning first=233 second=287 amount=-1 +kerning first=200 second=371 amount=-1 +kerning first=67 second=122 amount=-1 +kerning first=67 second=282 amount=-1 +kerning first=1091 second=1090 amount=-1 +kerning first=291 second=289 amount=-1 +kerning first=275 second=234 amount=-1 +kerning first=255 second=289 amount=-1 +kerning first=316 second=339 amount=-1 +kerning first=363 second=289 amount=-1 +kerning first=67 second=339 amount=-1 +kerning first=197 second=8220 amount=-2 +kerning first=206 second=330 amount=-1 +kerning first=1055 second=1105 amount=-1 +kerning first=45 second=280 amount=-1 +kerning first=199 second=232 amount=-1 +kerning first=203 second=219 amount=-1 +kerning first=272 second=278 amount=-1 +kerning first=1039 second=1070 amount=-1 +kerning first=266 second=311 amount=-1 +kerning first=316 second=122 amount=-1 +kerning first=200 second=278 amount=-1 +kerning first=81 second=280 amount=-1 +kerning first=338 second=199 amount=-1 +kerning first=1046 second=1082 amount=-1 +kerning first=8250 second=264 amount=-1 +kerning first=244 second=122 amount=-1 +kerning first=307 second=232 amount=-1 +kerning first=103 second=107 amount=-1 +kerning first=103 second=122 amount=-1 +kerning first=271 second=232 amount=-1 +kerning first=67 second=107 amount=-1 +kerning first=281 second=103 amount=-1 +kerning first=235 second=232 amount=-1 +kerning first=209 second=335 amount=-1 +kerning first=368 second=225 amount=-1 +kerning first=80 second=269 amount=-1 +kerning first=116 second=269 amount=-1 +kerning first=281 second=335 amount=-1 +kerning first=1031 second=1062 amount=-1 +kerning first=75 second=363 amount=-1 +kerning first=89 second=45 amount=-2 +kerning first=199 second=311 amount=-1 +kerning first=281 second=8217 amount=-2 +kerning first=257 second=269 amount=-1 +kerning first=198 second=298 amount=-1 +kerning first=86 second=216 amount=-1 +kerning first=270 second=298 amount=-1 +kerning first=221 second=269 amount=-1 +kerning first=193 second=98 amount=-1 +kerning first=197 second=85 amount=-1 +kerning first=233 second=8220 amount=-2 +kerning first=323 second=101 amount=-1 +kerning first=171 second=346 amount=-1 +kerning first=365 second=269 amount=-1 +kerning first=1058 second=1081 amount=-1 +kerning first=333 second=46 amount=-1 +kerning first=104 second=335 amount=-1 +kerning first=73 second=241 amount=-1 +kerning first=296 second=225 amount=-1 +kerning first=370 second=274 amount=-1 +kerning first=81 second=70 amount=-1 +kerning first=83 second=72 amount=-1 +kerning first=1043 second=1087 amount=-1 +kerning first=221 second=67 amount=-1 +kerning first=298 second=274 amount=-1 +kerning first=71 second=207 amount=-1 +kerning first=268 second=104 amount=-1 +kerning first=80 second=67 amount=-1 +kerning first=334 second=274 amount=-1 +kerning first=70 second=250 amount=-1 +kerning first=196 second=104 amount=-1 +kerning first=262 second=274 amount=-1 +kerning first=232 second=104 amount=-1 +kerning first=283 second=250 amount=-1 +kerning first=120 second=46 amount=-1 +kerning first=212 second=207 amount=-1 +kerning first=325 second=366 amount=-1 +kerning first=368 second=260 amount=-1 +kerning first=45 second=70 amount=-1 +kerning first=370 second=259 amount=-1 +kerning first=282 second=262 amount=-1 +kerning first=204 second=200 amount=-1 +kerning first=267 second=187 amount=-1 +kerning first=362 second=76 amount=-1 +kerning first=298 second=259 amount=-1 +kerning first=375 second=8250 amount=-1 +kerning first=109 second=269 amount=-1 +kerning first=1078 second=1076 amount=-1 +kerning first=262 second=259 amount=-1 +kerning first=1038 second=1074 amount=-1 +kerning first=290 second=76 amount=-1 +kerning first=200 second=357 amount=-1 +kerning first=1118 second=1117 amount=-1 +kerning first=111 second=378 amount=-1 +kerning first=218 second=76 amount=-1 +kerning first=77 second=76 amount=-1 +kerning first=220 second=357 amount=-1 +kerning first=366 second=70 amount=-1 +kerning first=366 second=280 amount=-1 +kerning first=1059 second=1084 amount=-1 +kerning first=229 second=113 amount=-1 +kerning first=330 second=280 amount=-1 +kerning first=352 second=187 amount=-1 +kerning first=277 second=116 amount=-1 +kerning first=1088 second=1083 amount=-1 +kerning first=85 second=259 amount=-1 +kerning first=280 second=75 amount=-1 +kerning first=196 second=375 amount=-1 +kerning first=217 second=366 amount=-1 +kerning first=207 second=271 amount=-1 +kerning first=1067 second=1108 amount=-1 +kerning first=284 second=207 amount=-1 +kerning first=187 second=268 amount=-1 +kerning first=368 second=210 amount=-1 +kerning first=279 second=271 amount=-1 +kerning first=264 second=204 amount=-1 +kerning first=82 second=268 amount=-1 +kerning first=296 second=210 amount=-1 +kerning first=1031 second=1108 amount=-1 +kerning first=214 second=256 amount=-1 +kerning first=1058 second=1096 amount=-1 +kerning first=76 second=366 amount=-1 +kerning first=74 second=198 amount=-1 +kerning first=356 second=242 amount=-1 +kerning first=201 second=369 amount=-1 +kerning first=266 second=257 amount=-1 +kerning first=117 second=333 amount=-1 +kerning first=352 second=209 amount=-1 +kerning first=8217 second=324 amount=-1 +kerning first=302 second=257 amount=-1 +kerning first=1064 second=1113 amount=-1 +kerning first=233 second=233 amount=-1 +kerning first=280 second=209 amount=-1 +kerning first=296 second=279 amount=-1 +kerning first=89 second=257 amount=-1 +kerning first=269 second=233 amount=-1 +kerning first=263 second=316 amount=-1 +kerning first=224 second=279 amount=-1 +kerning first=366 second=114 amount=-1 +kerning first=264 second=327 amount=-1 +kerning first=78 second=235 amount=-1 +kerning first=207 second=213 amount=-1 +kerning first=286 second=187 amount=-1 +kerning first=374 second=380 amount=-1 +kerning first=305 second=233 amount=-1 +kerning first=219 second=235 amount=-1 +kerning first=66 second=213 amount=-1 +kerning first=291 second=235 amount=-1 +kerning first=197 second=371 amount=-1 +kerning first=8222 second=245 amount=-1 +kerning first=327 second=235 amount=-1 +kerning first=1034 second=1045 amount=-1 +kerning first=90 second=8221 amount=-1 +kerning first=363 second=235 amount=-1 +kerning first=313 second=218 amount=-1 +kerning first=89 second=380 amount=-1 +kerning first=291 second=231 amount=-1 +kerning first=195 second=253 amount=-1 +kerning first=108 second=318 amount=-1 +kerning first=116 second=281 amount=-1 +kerning first=259 second=283 amount=-1 +kerning first=8222 second=89 amount=-2 +kerning first=327 second=231 amount=-1 +kerning first=1027 second=1071 amount=-1 +kerning first=346 second=75 amount=-1 +kerning first=205 second=218 amount=-1 +kerning first=73 second=187 amount=-1 +kerning first=1067 second=1104 amount=-1 +kerning first=233 second=248 amount=-1 +kerning first=266 second=380 amount=-1 +kerning first=270 second=88 amount=-1 +kerning first=230 second=380 amount=-1 +kerning first=82 second=357 amount=-1 +kerning first=282 second=8221 amount=-1 +kerning first=305 second=248 amount=-1 +kerning first=202 second=75 amount=-1 +kerning first=1031 second=1104 amount=-1 +kerning first=269 second=248 amount=-1 +kerning first=302 second=380 amount=-1 +kerning first=282 second=220 amount=-1 +kerning first=70 second=196 amount=-1 +kerning first=85 second=274 amount=-1 +kerning first=67 second=209 amount=-1 +kerning first=8250 second=260 amount=-1 +kerning first=114 second=8218 amount=-1 +kerning first=83 second=69 amount=-1 +kerning first=368 second=279 amount=-1 +kerning first=367 second=283 amount=-1 +kerning first=374 second=257 amount=-1 +kerning first=287 second=367 amount=-1 +kerning first=201 second=79 amount=-1 +kerning first=211 second=196 amount=-1 +kerning first=234 second=244 amount=-1 +kerning first=74 second=367 amount=-1 +kerning first=66 second=217 amount=-1 +kerning first=262 second=205 amount=-1 +kerning first=252 second=103 amount=-1 +kerning first=356 second=261 amount=-1 +kerning first=335 second=114 amount=-1 +kerning first=263 second=45 amount=-1 +kerning first=1051 second=1107 amount=-1 +kerning first=207 second=217 amount=-1 +kerning first=84 second=115 amount=-1 +kerning first=74 second=252 amount=-1 +kerning first=227 second=114 amount=-1 +kerning first=206 second=344 amount=-1 +kerning first=315 second=217 amount=-1 +kerning first=217 second=80 amount=-1 +kerning first=1038 second=1097 amount=-1 +kerning first=225 second=8217 amount=-2 +kerning first=1046 second=1063 amount=-1 +kerning first=370 second=205 amount=-1 +kerning first=263 second=114 amount=-1 +kerning first=278 second=344 amount=-1 +kerning first=1043 second=1072 amount=-1 +kerning first=80 second=284 amount=-1 +kerning first=73 second=310 amount=-1 +kerning first=221 second=353 amount=-1 +kerning first=264 second=351 amount=-1 +kerning first=221 second=284 amount=-1 +kerning first=72 second=368 amount=-1 +kerning first=86 second=114 amount=-1 +kerning first=78 second=231 amount=-1 +kerning first=1052 second=1095 amount=-1 +kerning first=99 second=345 amount=-1 +kerning first=85 second=205 amount=-1 +kerning first=197 second=220 amount=-1 +kerning first=368 second=206 amount=-1 +kerning first=367 second=8221 amount=-1 +kerning first=204 second=345 amount=-1 +kerning first=261 second=8250 amount=-1 +kerning first=296 second=206 amount=-1 +kerning first=240 second=345 amount=-1 +kerning first=1036 second=1098 amount=-1 +kerning first=321 second=368 amount=-1 +kerning first=82 second=214 amount=-1 +kerning first=316 second=111 amount=-1 +kerning first=209 second=266 amount=-1 +kerning first=267 second=8221 amount=-2 +kerning first=246 second=106 amount=-1 +kerning first=234 second=281 amount=-1 +kerning first=370 second=325 amount=-1 +kerning first=80 second=353 amount=-1 +kerning first=1053 second=1037 amount=-1 +kerning first=339 second=8221 amount=-2 +kerning first=213 second=368 amount=-1 +kerning first=364 second=71 amount=-1 +kerning first=187 second=214 amount=-1 +kerning first=116 second=353 amount=-1 +kerning first=77 second=362 amount=-1 +kerning first=310 second=223 amount=-1 +kerning first=274 second=223 amount=-1 +kerning first=1031 second=1052 amount=-1 +kerning first=339 second=249 amount=-1 +kerning first=45 second=286 amount=-1 +kerning first=375 second=249 amount=-1 +kerning first=330 second=226 amount=-1 +kerning first=287 second=252 amount=-1 +kerning first=314 second=275 amount=-1 +kerning first=72 second=97 amount=-1 +kerning first=1039 second=1089 amount=-1 +kerning first=366 second=226 amount=-1 +kerning first=101 second=275 amount=-1 +kerning first=218 second=362 amount=-1 +kerning first=310 second=8217 amount=-1 +kerning first=206 second=275 amount=-1 +kerning first=231 second=249 amount=-1 +kerning first=111 second=44 amount=-1 +kerning first=290 second=362 amount=-1 +kerning first=346 second=223 amount=-1 +kerning first=1055 second=1086 amount=-1 +kerning first=267 second=249 amount=-1 +kerning first=122 second=45 amount=-1 +kerning first=119 second=353 amount=-1 +kerning first=87 second=243 amount=-1 +kerning first=290 second=217 amount=-1 +kerning first=345 second=224 amount=-1 +kerning first=286 second=327 amount=-1 +kerning first=228 second=243 amount=-1 +kerning first=75 second=45 amount=-1 +kerning first=302 second=286 amount=-1 +kerning first=362 second=217 amount=-1 +kerning first=86 second=97 amount=-1 +kerning first=324 second=45 amount=-1 +kerning first=296 second=353 amount=-1 +kerning first=195 second=214 amount=-1 +kerning first=364 second=249 amount=-1 +kerning first=258 second=354 amount=-1 +kerning first=252 second=45 amount=-1 +kerning first=368 second=353 amount=-1 +kerning first=288 second=45 amount=-1 +kerning first=275 second=275 amount=-1 +kerning first=219 second=68 amount=-1 +kerning first=279 second=252 amount=-1 +kerning first=214 second=80 amount=-1 +kerning first=1056 second=1045 amount=-1 +kerning first=1062 second=1114 amount=-1 +kerning first=252 second=114 amount=-1 +kerning first=1051 second=1062 amount=-1 +kerning first=1049 second=1097 amount=-1 +kerning first=199 second=318 amount=-1 +kerning first=8222 second=67 amount=-1 +kerning first=235 second=318 amount=-1 +kerning first=86 second=336 amount=-1 +kerning first=69 second=370 amount=-1 +kerning first=45 second=310 amount=-1 +kerning first=286 second=80 amount=-1 +kerning first=282 second=223 amount=-1 +kerning first=263 second=97 amount=-1 +kerning first=72 second=116 amount=-1 +kerning first=267 second=234 amount=-1 +kerning first=231 second=234 amount=-1 +kerning first=212 second=88 amount=-1 +kerning first=86 second=257 amount=-1 +kerning first=339 second=234 amount=-1 +kerning first=1065 second=1085 amount=-1 +kerning first=69 second=223 amount=-1 +kerning first=217 second=258 amount=-1 +kerning first=269 second=226 amount=-1 +kerning first=80 second=362 amount=-1 +kerning first=1054 second=1053 amount=-1 +kerning first=262 second=330 amount=-1 +kerning first=1050 second=1076 amount=-1 +kerning first=206 second=266 amount=-1 +kerning first=220 second=249 amount=-1 +kerning first=207 second=235 amount=-1 +kerning first=1118 second=1084 amount=-1 +kerning first=296 second=211 amount=-1 +kerning first=325 second=71 amount=-1 +kerning first=77 second=217 amount=-1 +kerning first=279 second=232 amount=-1 +kerning first=304 second=200 amount=-1 +kerning first=230 second=382 amount=-1 +kerning first=268 second=200 amount=-1 +kerning first=218 second=217 amount=-1 +kerning first=65 second=266 amount=-1 +kerning first=262 second=98 amount=-1 +kerning first=232 second=267 amount=-1 +kerning first=268 second=267 amount=-1 +kerning first=1052 second=1041 amount=-1 +kerning first=1050 second=1096 amount=-1 +kerning first=304 second=267 amount=-1 +kerning first=121 second=98 amount=-1 +kerning first=192 second=213 amount=-1 +kerning first=85 second=345 amount=-1 +kerning first=113 second=8249 amount=-1 +kerning first=106 second=335 amount=-1 +kerning first=121 second=345 amount=-1 +kerning first=330 second=241 amount=-1 +kerning first=8250 second=206 amount=-1 +kerning first=1078 second=1089 amount=-1 +kerning first=226 second=345 amount=-1 +kerning first=69 second=323 amount=-1 +kerning first=262 second=345 amount=-1 +kerning first=302 second=302 amount=-1 +kerning first=298 second=345 amount=-1 +kerning first=338 second=302 amount=-1 +kerning first=233 second=46 amount=-1 +kerning first=8250 second=193 amount=-1 +kerning first=370 second=345 amount=-1 +kerning first=266 second=302 amount=-1 +kerning first=1027 second=1080 amount=-1 +kerning first=45 second=241 amount=-1 +kerning first=269 second=46 amount=-1 +kerning first=1067 second=1050 amount=-1 +kerning first=1053 second=1069 amount=-1 +kerning first=356 second=335 amount=-1 +kerning first=249 second=114 amount=-1 +kerning first=1031 second=1050 amount=-1 +kerning first=8218 second=364 amount=-1 +kerning first=210 second=370 amount=-1 +kerning first=73 second=110 amount=-1 +kerning first=70 second=336 amount=-1 +kerning first=370 second=200 amount=-1 +kerning first=108 second=114 amount=-1 +kerning first=316 second=378 amount=-1 +kerning first=72 second=114 amount=-1 +kerning first=204 second=81 amount=-1 +kerning first=282 second=323 amount=-1 +kerning first=73 second=80 amount=-1 +kerning first=65 second=199 amount=-1 +kerning first=204 second=207 amount=-1 +kerning first=219 second=250 amount=-1 +kerning first=282 second=370 amount=-1 +kerning first=77 second=284 amount=-1 +kerning first=275 second=115 amount=-1 +kerning first=206 second=199 amount=-1 +kerning first=67 second=378 amount=-1 +kerning first=1053 second=1027 amount=-1 +kerning first=66 second=72 amount=-1 +kerning first=219 second=216 amount=-1 +kerning first=278 second=199 amount=-1 +kerning first=327 second=216 amount=-1 +kerning first=108 second=314 amount=-1 +kerning first=207 second=72 amount=-1 +kerning first=1031 second=1037 amount=-1 +kerning first=68 second=344 amount=-1 +kerning first=1067 second=1037 amount=-1 +kerning first=1053 second=1054 amount=-1 +kerning first=209 second=344 amount=-1 +kerning first=1066 second=1071 amount=-1 +kerning first=264 second=310 amount=-1 +kerning first=103 second=378 amount=-1 +kerning first=214 second=327 amount=-1 +kerning first=209 second=110 amount=-1 +kerning first=108 second=117 amount=-1 +kerning first=45 second=334 amount=-1 +kerning first=86 second=8222 amount=-2 +kerning first=211 second=282 amount=-1 +kerning first=330 second=334 amount=-1 +kerning first=70 second=282 amount=-1 +kerning first=374 second=232 amount=-1 +kerning first=258 second=334 amount=-1 +kerning first=362 second=230 amount=-1 +kerning first=267 second=45 amount=-1 +kerning first=366 second=334 amount=-1 +kerning first=258 second=87 amount=-1 +kerning first=218 second=230 amount=-1 +kerning first=72 second=205 amount=-1 +kerning first=66 second=325 amount=-1 +kerning first=86 second=197 amount=-1 +kerning first=121 second=115 amount=-1 +kerning first=229 second=242 amount=-1 +kerning first=77 second=230 amount=-1 +kerning first=1064 second=1052 amount=-1 +kerning first=81 second=87 amount=-1 +kerning first=226 second=291 amount=-1 +kerning first=45 second=87 amount=-2 +kerning first=201 second=296 amount=-1 +kerning first=121 second=291 amount=-1 +kerning first=252 second=279 amount=-1 +kerning first=356 second=101 amount=-1 +kerning first=206 second=212 amount=-1 +kerning first=339 second=108 amount=-1 +kerning first=375 second=108 amount=-1 +kerning first=194 second=8220 amount=-2 +kerning first=1039 second=1098 amount=-1 +kerning first=1046 second=1117 amount=-1 +kerning first=8217 second=257 amount=-1 +kerning first=65 second=212 amount=-1 +kerning first=324 second=279 amount=-1 +kerning first=333 second=8250 amount=-1 +kerning first=268 second=254 amount=-1 +kerning first=252 second=99 amount=-1 +kerning first=222 second=187 amount=-1 +kerning first=1046 second=1119 amount=-1 +kerning first=81 second=187 amount=-1 +kerning first=307 second=245 amount=-1 +kerning first=99 second=328 amount=-1 +kerning first=225 second=8250 amount=-1 +kerning first=1118 second=1119 amount=-1 +kerning first=271 second=245 amount=-1 +kerning first=220 second=241 amount=-1 +kerning first=235 second=245 amount=-1 +kerning first=117 second=287 amount=-1 +kerning first=199 second=245 amount=-1 +kerning first=230 second=107 amount=-1 +kerning first=242 second=345 amount=-1 +kerning first=81 second=206 amount=-1 +kerning first=324 second=99 amount=-1 +kerning first=224 second=335 amount=-1 +kerning first=118 second=8218 amount=-1 +kerning first=8222 second=254 amount=-1 +kerning first=338 second=8220 amount=-1 +kerning first=269 second=380 amount=-1 +kerning first=203 second=202 amount=-1 +kerning first=266 second=248 amount=-1 +kerning first=230 second=248 amount=-1 +kerning first=260 second=8249 amount=-1 +kerning first=192 second=117 amount=-1 +kerning first=327 second=270 amount=-1 +kerning first=352 second=218 amount=-1 +kerning first=338 second=75 amount=-1 +kerning first=302 second=75 amount=-1 +kerning first=280 second=218 amount=-1 +kerning first=89 second=248 amount=-1 +kerning first=266 second=75 amount=-1 +kerning first=8218 second=305 amount=-1 +kerning first=367 second=231 amount=-1 +kerning first=314 second=242 amount=-1 +kerning first=231 second=307 amount=-1 +kerning first=323 second=66 amount=-1 +kerning first=78 second=270 amount=-1 +kerning first=195 second=307 amount=-1 +kerning first=199 second=264 amount=-1 +kerning first=89 second=8220 amount=-1 +kerning first=1055 second=1073 amount=-1 +kerning first=362 second=171 amount=-2 +kerning first=267 second=307 amount=-1 +kerning first=267 second=108 amount=-1 +kerning first=211 second=209 amount=-1 +kerning first=219 second=270 amount=-1 +kerning first=118 second=367 amount=-1 +kerning first=187 second=202 amount=-1 +kerning first=219 second=196 amount=-1 +kerning first=282 second=69 amount=-1 +kerning first=195 second=108 amount=-1 +kerning first=80 second=74 amount=-1 +kerning first=304 second=205 amount=-1 +kerning first=266 second=8220 amount=-1 +kerning first=231 second=108 amount=-1 +kerning first=74 second=66 amount=-1 +kerning first=70 second=209 amount=-1 +kerning first=230 second=8220 amount=-2 +kerning first=245 second=103 amount=-1 +kerning first=198 second=205 amount=-1 +kerning first=209 second=103 amount=-1 +kerning first=221 second=74 amount=-1 +kerning first=207 second=325 amount=-1 +kerning first=66 second=252 amount=-1 +kerning first=1067 second=1091 amount=-1 +kerning first=104 second=103 amount=-1 +kerning first=1031 second=1091 amount=-1 +kerning first=279 second=8220 amount=-2 +kerning first=105 second=269 amount=-1 +kerning first=106 second=279 amount=-1 +kerning first=1052 second=1034 amount=-1 +kerning first=118 second=187 amount=-1 +kerning first=69 second=69 amount=-1 +kerning first=73 second=273 amount=-1 +kerning first=85 second=44 amount=-2 +kerning first=200 second=304 amount=-1 +kerning first=67 second=218 amount=-1 +kerning first=121 second=44 amount=-1 +kerning first=204 second=261 amount=-1 +kerning first=334 second=44 amount=-1 +kerning first=246 second=316 amount=-1 +kerning first=368 second=193 amount=-1 +kerning first=302 second=248 amount=-1 +kerning first=234 second=316 amount=-1 +kerning first=262 second=44 amount=-1 +kerning first=354 second=269 amount=-1 +kerning first=374 second=248 amount=-1 +kerning first=1071 second=1048 amount=-1 +kerning first=122 second=171 amount=-1 +kerning first=263 second=365 amount=-1 +kerning first=217 second=216 amount=-1 +kerning first=8222 second=101 amount=-1 +kerning first=368 second=65 amount=-1 +kerning first=1030 second=1101 amount=-1 +kerning first=1048 second=1030 amount=-1 +kerning first=1036 second=1074 amount=-1 +kerning first=263 second=171 amount=-1 +kerning first=1038 second=1088 amount=-1 +kerning first=112 second=8221 amount=-2 +kerning first=86 second=365 amount=-1 +kerning first=289 second=117 amount=-1 +kerning first=274 second=203 amount=-1 +kerning first=1027 second=1079 amount=-1 +kerning first=213 second=260 amount=-1 +kerning first=253 second=117 amount=-1 +kerning first=217 second=117 amount=-1 +kerning first=250 second=269 amount=-1 +kerning first=366 second=100 amount=-1 +kerning first=1057 second=1117 amount=-1 +kerning first=74 second=220 amount=-1 +kerning first=330 second=100 amount=-1 +kerning first=202 second=203 amount=-1 +kerning first=367 second=246 amount=-1 +kerning first=115 second=108 amount=-1 +kerning first=196 second=121 amount=-1 +kerning first=1048 second=1025 amount=-1 +kerning first=86 second=171 amount=-2 +kerning first=68 second=298 amount=-1 +kerning first=290 second=330 amount=-1 +kerning first=352 second=77 amount=-1 +kerning first=103 second=8222 amount=-1 +kerning first=362 second=325 amount=-1 +kerning first=364 second=103 amount=-1 +kerning first=67 second=8222 amount=-1 +kerning first=198 second=251 amount=-1 +kerning first=328 second=103 amount=-1 +kerning first=280 second=77 amount=-1 +kerning first=234 second=251 amount=-1 +kerning first=280 second=304 amount=-1 +kerning first=220 second=103 amount=-1 +kerning first=291 second=324 amount=-1 +kerning first=218 second=330 amount=-1 +kerning first=235 second=277 amount=-1 +kerning first=115 second=103 amount=-1 +kerning first=323 second=220 amount=-1 +kerning first=67 second=304 amount=-1 +kerning first=267 second=369 amount=-1 +kerning first=291 second=109 amount=-1 +kerning first=221 second=227 amount=-1 +kerning first=356 second=281 amount=-1 +kerning first=324 second=333 amount=-1 +kerning first=1041 second=1091 amount=-1 +kerning first=327 second=109 amount=-1 +kerning first=70 second=68 amount=-1 +kerning first=1048 second=1092 amount=-1 +kerning first=344 second=211 amount=-1 +kerning first=219 second=109 amount=-1 +kerning first=211 second=68 amount=-1 +kerning first=352 second=8222 amount=-1 +kerning first=252 second=333 amount=-1 +kerning first=257 second=316 amount=-1 +kerning first=1060 second=1048 amount=-1 +kerning first=280 second=8222 amount=-1 +kerning first=8222 second=113 amount=-1 +kerning first=204 second=382 amount=-1 +kerning first=244 second=8222 amount=-1 +kerning first=1047 second=1064 amount=-1 +kerning first=200 second=211 amount=-1 +kerning first=240 second=382 amount=-1 +kerning first=289 second=112 amount=-1 +kerning first=325 second=323 amount=-1 +kerning first=199 second=210 amount=-1 +kerning first=327 second=77 amount=-1 +kerning first=1049 second=1024 amount=-1 +kerning first=204 second=315 amount=-1 +kerning first=281 second=251 amount=-1 +kerning first=233 second=339 amount=-1 +kerning first=220 second=233 amount=-1 +kerning first=77 second=111 amount=-1 +kerning first=302 second=216 amount=-1 +kerning first=368 second=245 amount=-1 +kerning first=117 second=233 amount=-1 +kerning first=259 second=382 amount=-1 +kerning first=218 second=111 amount=-1 +kerning first=296 second=245 amount=-1 +kerning first=78 second=109 amount=-1 +kerning first=1039 second=1057 amount=-1 +kerning first=84 second=44 amount=-1 +kerning first=286 second=219 amount=-1 +kerning first=287 second=120 amount=-1 +kerning first=305 second=339 amount=-1 +kerning first=82 second=290 amount=-1 +kerning first=214 second=219 amount=-1 +kerning first=269 second=339 amount=-1 +kerning first=73 second=219 amount=-1 +kerning first=330 second=233 amount=-1 +kerning first=8218 second=71 amount=-1 +kerning first=1058 second=1118 amount=-1 +kerning first=366 second=233 amount=-1 +kerning first=65 second=374 amount=-1 +kerning first=119 second=8217 amount=-2 +kerning first=209 second=298 amount=-1 +kerning first=84 second=224 amount=-1 +kerning first=325 second=212 amount=-1 +kerning first=224 second=8217 amount=-2 +kerning first=1056 second=1104 amount=-1 +kerning first=260 second=8217 amount=-2 +kerning first=8222 second=121 amount=-1 +kerning first=355 second=228 amount=-1 +kerning first=352 second=369 amount=-1 +kerning first=281 second=357 amount=-1 +kerning first=80 second=357 amount=-1 +kerning first=283 second=8217 amount=-2 +kerning first=217 second=212 amount=-1 +kerning first=83 second=8217 amount=-1 +kerning first=352 second=85 amount=-1 +kerning first=325 second=101 amount=-1 +kerning first=8250 second=65 amount=-1 +kerning first=224 second=245 amount=-1 +kerning first=326 second=111 amount=-1 +kerning first=280 second=85 amount=-1 +kerning first=362 second=111 amount=-1 +kerning first=1051 second=1054 amount=-1 +kerning first=332 second=8217 amount=-2 +kerning first=368 second=8217 amount=-1 +kerning first=199 second=331 amount=-1 +kerning first=67 second=85 amount=-1 +kerning first=230 second=289 amount=-1 +kerning first=89 second=216 amount=-1 +kerning first=304 second=67 amount=-1 +kerning first=70 second=241 amount=-1 +kerning first=1051 second=1075 amount=-1 +kerning first=194 second=216 amount=-1 +kerning first=304 second=113 amount=-1 +kerning first=350 second=366 amount=-1 +kerning first=221 second=262 amount=-1 +kerning first=268 second=67 amount=-1 +kerning first=220 second=195 amount=-1 +kerning first=74 second=274 amount=-1 +kerning first=266 second=216 amount=-1 +kerning first=232 second=113 amount=-1 +kerning first=298 second=79 amount=-1 +kerning first=1041 second=1049 amount=-1 +kerning first=8222 second=286 amount=-1 +kerning first=278 second=366 amount=-1 +kerning first=268 second=113 amount=-1 +kerning first=196 second=67 amount=-1 +kerning first=70 second=216 amount=-1 +kerning first=370 second=79 amount=-1 +kerning first=79 second=195 amount=-1 +kerning first=1077 second=1095 amount=-1 +kerning first=364 second=195 amount=-1 +kerning first=1041 second=1113 amount=-1 +kerning first=235 second=104 amount=-1 +kerning first=263 second=225 amount=-1 +kerning first=8217 second=365 amount=-1 +kerning first=72 second=206 amount=-1 +kerning first=280 second=250 amount=-1 +kerning first=81 second=46 amount=-1 +kerning first=65 second=253 amount=-1 +kerning first=221 second=261 amount=-1 +kerning first=199 second=104 amount=-1 +kerning first=209 second=357 amount=-1 +kerning first=70 second=70 amount=-1 +kerning first=8218 second=257 amount=-1 +kerning first=251 second=345 amount=-1 +kerning first=1048 second=1084 amount=-1 +kerning first=287 second=345 amount=-1 +kerning first=365 second=335 amount=-1 +kerning first=323 second=274 amount=-1 +kerning first=323 second=345 amount=-1 +kerning first=258 second=46 amount=-1 +kerning first=211 second=70 amount=-1 +kerning first=352 second=250 amount=-1 +kerning first=222 second=46 amount=-1 +kerning first=202 second=368 amount=-1 +kerning first=70 second=230 amount=-1 +kerning first=346 second=201 amount=-1 +kerning first=283 second=122 amount=-1 +kerning first=77 second=271 amount=-1 +kerning first=79 second=8221 amount=-2 +kerning first=274 second=368 amount=-1 +kerning first=304 second=213 amount=-1 +kerning first=323 second=207 amount=-1 +kerning first=245 second=46 amount=-1 +kerning first=274 second=201 amount=-1 +kerning first=310 second=368 amount=-1 +kerning first=268 second=213 amount=-1 +kerning first=277 second=107 amount=-1 +kerning first=8222 second=281 amount=-1 +kerning first=70 second=122 amount=-1 +kerning first=200 second=317 amount=-1 +kerning first=202 second=201 amount=-1 +kerning first=103 second=250 amount=-1 +kerning first=99 second=369 amount=-1 +kerning first=256 second=8221 amount=-2 +kerning first=200 second=336 amount=-1 +kerning first=272 second=317 amount=-1 +kerning first=263 second=311 amount=-1 +kerning first=310 second=116 amount=-1 +kerning first=328 second=8221 amount=-2 +kerning first=65 second=366 amount=-1 +kerning first=217 second=204 amount=-1 +kerning first=203 second=252 amount=-1 +kerning first=364 second=8221 amount=-1 +kerning first=374 second=216 amount=-1 +kerning first=198 second=8217 amount=-1 +kerning first=323 second=45 amount=-1 +kerning first=344 second=336 amount=-1 +kerning first=78 second=378 amount=-1 +kerning first=362 second=271 amount=-1 +kerning first=346 second=368 amount=-1 +kerning first=74 second=207 amount=-1 +kerning first=327 second=378 amount=-1 +kerning first=1054 second=1041 amount=-1 +kerning first=325 second=204 amount=-1 +kerning first=291 second=378 amount=-1 +kerning first=80 second=262 amount=-1 +kerning first=362 second=198 amount=-1 +kerning first=87 second=8218 amount=-2 +kerning first=220 second=268 amount=-1 +kerning first=1068 second=1068 amount=-1 +kerning first=187 second=86 amount=-2 +kerning first=89 second=235 amount=-1 +kerning first=339 second=103 amount=-1 +kerning first=323 second=347 amount=-1 +kerning first=82 second=86 amount=-1 +kerning first=364 second=268 amount=-1 +kerning first=230 second=235 amount=-1 +kerning first=287 second=347 amount=-1 +kerning first=266 second=235 amount=-1 +kerning first=302 second=235 amount=-1 +kerning first=209 second=290 amount=-1 +kerning first=67 second=77 amount=-1 +kerning first=74 second=347 amount=-1 +kerning first=262 second=350 amount=-1 +kerning first=374 second=235 amount=-1 +kerning first=218 second=198 amount=-1 +kerning first=1060 second=1056 amount=-1 +kerning first=196 second=213 amount=-1 +kerning first=1070 second=1069 amount=-1 +kerning first=85 second=350 amount=-1 +kerning first=1065 second=1077 amount=-1 +kerning first=86 second=363 amount=-1 +kerning first=199 second=277 amount=-1 +kerning first=1058 second=1073 amount=-1 +kerning first=8217 second=225 amount=-1 +kerning first=8217 second=378 amount=-1 +kerning first=263 second=363 amount=-1 +kerning first=362 second=213 amount=-1 +kerning first=1033 second=1062 amount=-1 +kerning first=298 second=350 amount=-1 +kerning first=307 second=277 amount=-1 +kerning first=370 second=350 amount=-1 +kerning first=362 second=366 amount=-1 +kerning first=1118 second=1087 amount=-1 +kerning first=67 second=231 amount=-1 +kerning first=85 second=79 amount=-1 +kerning first=104 second=244 amount=-1 +kerning first=362 second=338 amount=-1 +kerning first=209 second=244 amount=-1 +kerning first=8222 second=267 amount=-1 +kerning first=356 second=283 amount=-1 +kerning first=199 second=8249 amount=-1 +kerning first=281 second=244 amount=-1 +kerning first=210 second=82 amount=-1 +kerning first=316 second=231 amount=-1 +kerning first=268 second=286 amount=-1 +kerning first=218 second=338 amount=-1 +kerning first=212 second=354 amount=-1 +kerning first=304 second=286 amount=-1 +kerning first=87 second=351 amount=-1 +kerning first=282 second=82 amount=-1 +kerning first=8222 second=289 amount=-1 +kerning first=258 second=8249 amount=-1 +kerning first=100 second=235 amount=-1 +kerning first=204 second=79 amount=-1 +kerning first=354 second=101 amount=-1 +kerning first=85 second=66 amount=-1 +kerning first=370 second=283 amount=-1 +kerning first=205 second=235 amount=-1 +kerning first=45 second=209 amount=-1 +kerning first=78 second=248 amount=-1 +kerning first=304 second=366 amount=-1 +kerning first=298 second=283 amount=-1 +kerning first=277 second=235 amount=-1 +kerning first=70 second=371 amount=-1 +kerning first=325 second=331 amount=-1 +kerning first=74 second=261 amount=-1 +kerning first=226 second=283 amount=-1 +kerning first=262 second=283 amount=-1 +kerning first=1039 second=1076 amount=-1 +kerning first=1042 second=1067 amount=-1 +kerning first=1038 second=1080 amount=-1 +kerning first=103 second=380 amount=-1 +kerning first=244 second=380 amount=-1 +kerning first=45 second=374 amount=-2 +kerning first=1062 second=1076 amount=-1 +kerning first=370 second=66 amount=-1 +kerning first=366 second=209 amount=-1 +kerning first=334 second=66 amount=-1 +kerning first=73 second=46 amount=-1 +kerning first=80 second=213 amount=-1 +kerning first=330 second=209 amount=-1 +kerning first=298 second=66 amount=-1 +kerning first=262 second=66 amount=-1 +kerning first=266 second=270 amount=-1 +kerning first=302 second=270 amount=-1 +kerning first=258 second=336 amount=-1 +kerning first=199 second=323 amount=-1 +kerning first=287 second=44 amount=-1 +kerning first=218 second=252 amount=-1 +kerning first=330 second=336 amount=-1 +kerning first=68 second=192 amount=-1 +kerning first=366 second=336 amount=-1 +kerning first=1067 second=1045 amount=-1 +kerning first=1031 second=1045 amount=-1 +kerning first=67 second=380 amount=-1 +kerning first=362 second=252 amount=-1 +kerning first=286 second=220 amount=-1 +kerning first=116 second=187 amount=-1 +kerning first=187 second=205 amount=-1 +kerning first=220 second=244 amount=-1 +kerning first=305 second=231 amount=-1 +kerning first=296 second=201 amount=-1 +kerning first=327 second=218 amount=-1 +kerning first=363 second=248 amount=-1 +kerning first=220 second=214 amount=-1 +kerning first=366 second=371 amount=-1 +kerning first=212 second=115 amount=-1 +kerning first=258 second=290 amount=-1 +kerning first=375 second=104 amount=-1 +kerning first=328 second=244 amount=-1 +kerning first=364 second=244 amount=-1 +kerning first=1055 second=1045 amount=-1 +kerning first=219 second=218 amount=-1 +kerning first=219 second=248 amount=-1 +kerning first=364 second=214 amount=-1 +kerning first=233 second=231 amount=-1 +kerning first=291 second=248 amount=-1 +kerning first=269 second=231 amount=-1 +kerning first=83 second=201 amount=-1 +kerning first=1041 second=1041 amount=-1 +kerning first=97 second=314 amount=-1 +kerning first=255 second=353 amount=-1 +kerning first=228 second=275 amount=-1 +kerning first=275 second=243 amount=-1 +kerning first=235 second=353 amount=-1 +kerning first=262 second=108 amount=-1 +kerning first=1066 second=1049 amount=-1 +kerning first=221 second=8220 amount=-1 +kerning first=1027 second=1088 amount=-1 +kerning first=264 second=275 amount=-1 +kerning first=241 second=45 amount=-1 +kerning first=65 second=71 amount=-1 +kerning first=1055 second=1081 amount=-1 +kerning first=72 second=366 amount=-1 +kerning first=1091 second=1081 amount=-1 +kerning first=281 second=249 amount=-1 +kerning first=87 second=275 amount=-1 +kerning first=85 second=302 amount=-1 +kerning first=108 second=363 amount=-1 +kerning first=207 second=284 amount=-1 +kerning first=1042 second=1119 amount=-1 +kerning first=199 second=353 amount=-1 +kerning first=80 second=370 amount=-1 +kerning first=199 second=223 amount=-1 +kerning first=203 second=80 amount=-1 +kerning first=267 second=347 amount=-1 +kerning first=74 second=116 amount=-1 +kerning first=268 second=232 amount=-1 +kerning first=345 second=44 amount=-1 +kerning first=1050 second=1098 amount=-1 +kerning first=232 second=232 amount=-1 +kerning first=196 second=362 amount=-1 +kerning first=207 second=200 amount=-1 +kerning first=268 second=362 amount=-1 +kerning first=86 second=225 amount=-1 +kerning first=67 second=226 amount=-1 +kerning first=195 second=266 amount=-1 +kerning first=66 second=200 amount=-1 +kerning first=286 second=8250 amount=-1 +kerning first=304 second=232 amount=-1 +kerning first=304 second=362 amount=-1 +kerning first=85 second=296 amount=-1 +kerning first=101 second=234 amount=-1 +kerning first=278 second=71 amount=-1 +kerning first=278 second=209 amount=-1 +kerning first=8222 second=262 amount=-1 +kerning first=270 second=354 amount=-1 +kerning first=334 second=296 amount=-1 +kerning first=327 second=71 amount=-1 +kerning first=8217 second=279 amount=-1 +kerning first=1054 second=1031 amount=-1 +kerning first=230 second=318 amount=-1 +kerning first=206 second=71 amount=-1 +kerning first=298 second=296 amount=-1 +kerning first=85 second=283 amount=-1 +kerning first=266 second=263 amount=-1 +kerning first=314 second=234 amount=-1 +kerning first=74 second=219 amount=-1 +kerning first=201 second=206 amount=-1 +kerning first=1056 second=1037 amount=-1 +kerning first=219 second=8220 amount=-1 +kerning first=268 second=72 amount=-1 +kerning first=1043 second=1089 amount=-1 +kerning first=323 second=315 amount=-1 +kerning first=106 second=287 amount=-1 +kerning first=212 second=313 amount=-1 +kerning first=291 second=8220 amount=-2 +kerning first=229 second=111 amount=-1 +kerning first=116 second=267 amount=-1 +kerning first=355 second=287 amount=-1 +kerning first=363 second=8220 amount=-1 +kerning first=194 second=213 amount=-1 +kerning first=327 second=8220 amount=-1 +kerning first=304 second=72 amount=-1 +kerning first=283 second=287 amount=-1 +kerning first=334 second=88 amount=-1 +kerning first=1060 second=1024 amount=-1 +kerning first=202 second=298 amount=-1 +kerning first=71 second=313 amount=-1 +kerning first=74 second=315 amount=-1 +kerning first=262 second=120 amount=-1 +kerning first=213 second=85 amount=-1 +kerning first=79 second=374 amount=-1 +kerning first=365 second=267 amount=-1 +kerning first=330 second=263 amount=-1 +kerning first=366 second=263 amount=-1 +kerning first=370 second=120 amount=-1 +kerning first=1059 second=1028 amount=-1 +kerning first=187 second=118 amount=-1 +kerning first=221 second=267 amount=-1 +kerning first=296 second=114 amount=-1 +kerning first=1047 second=1083 amount=-1 +kerning first=217 second=278 amount=-1 +kerning first=195 second=212 amount=-1 +kerning first=114 second=8220 amount=-1 +kerning first=73 second=278 amount=-1 +kerning first=368 second=114 amount=-1 +kerning first=72 second=334 amount=-1 +kerning first=88 second=81 amount=-1 +kerning first=119 second=114 amount=-1 +kerning first=354 second=45 amount=-1 +kerning first=264 second=115 amount=-1 +kerning first=286 second=278 amount=-1 +kerning first=1062 second=1092 amount=-1 +kerning first=224 second=114 amount=-1 +kerning first=296 second=331 amount=-1 +kerning first=255 second=367 amount=-1 +kerning first=217 second=199 amount=-1 +kerning first=117 second=263 amount=-1 +kerning first=368 second=331 amount=-1 +kerning first=87 second=115 amount=-1 +kerning first=83 second=114 amount=-1 +kerning first=193 second=81 amount=-1 +kerning first=219 second=194 amount=-1 +kerning first=325 second=199 amount=-1 +kerning first=1062 second=1116 amount=-1 +kerning first=368 second=363 amount=-1 +kerning first=277 second=365 amount=-1 +kerning first=354 second=74 amount=-1 +kerning first=325 second=310 amount=-1 +kerning first=65 second=361 amount=-1 +kerning first=1042 second=1095 amount=-1 +kerning first=108 second=106 amount=-1 +kerning first=288 second=203 amount=-1 +kerning first=217 second=310 amount=-1 +kerning first=350 second=361 amount=-1 +kerning first=364 second=251 amount=-1 +kerning first=235 second=269 amount=-1 +kerning first=278 second=361 amount=-1 +kerning first=271 second=269 amount=-1 +kerning first=83 second=8221 amount=-1 +kerning first=206 second=288 amount=-1 +kerning first=1052 second=1036 amount=-1 +kerning first=213 second=65 amount=-1 +kerning first=197 second=334 amount=-1 +kerning first=366 second=282 amount=-1 +kerning first=330 second=282 amount=-1 +kerning first=200 second=78 amount=-1 +kerning first=207 second=230 amount=-1 +kerning first=259 second=246 amount=-1 +kerning first=278 second=288 amount=-1 +kerning first=310 second=355 amount=-1 +kerning first=1059 second=1101 amount=-1 +kerning first=1060 second=1043 amount=-1 +kerning first=274 second=355 amount=-1 +kerning first=77 second=325 amount=-1 +kerning first=1068 second=1055 amount=-1 +kerning first=211 second=313 amount=-1 +kerning first=81 second=282 amount=-1 +kerning first=246 second=318 amount=-1 +kerning first=84 second=242 amount=-1 +kerning first=263 second=187 amount=-1 +kerning first=199 second=75 amount=-1 +kerning first=8217 second=333 amount=-1 +kerning first=205 second=346 amount=-1 +kerning first=218 second=325 amount=-1 +kerning first=65 second=288 amount=-1 +kerning first=197 second=87 amount=-1 +kerning first=290 second=325 amount=-1 +kerning first=267 second=291 amount=-1 +kerning first=315 second=220 amount=-1 +kerning first=355 second=187 amount=-1 +kerning first=118 second=251 amount=-1 +kerning first=1055 second=1051 amount=-1 +kerning first=187 second=251 amount=-1 +kerning first=263 second=279 amount=-1 +kerning first=283 second=187 amount=-1 +kerning first=105 second=245 amount=-1 +kerning first=85 second=337 amount=-1 +kerning first=246 second=8217 amount=-2 +kerning first=282 second=8217 amount=-1 +kerning first=354 second=8217 amount=-1 +kerning first=250 second=171 amount=-1 +kerning first=100 second=99 amount=-1 +kerning first=1027 second=1073 amount=-1 +kerning first=67 second=99 amount=-1 +kerning first=192 second=221 amount=-1 +kerning first=205 second=75 amount=-1 +kerning first=277 second=99 amount=-1 +kerning first=211 second=187 amount=-1 +kerning first=354 second=245 amount=-1 +kerning first=1071 second=1119 amount=-1 +kerning first=227 second=279 amount=-1 +kerning first=45 second=68 amount=-1 +kerning first=298 second=337 amount=-1 +kerning first=205 second=99 amount=-1 +kerning first=106 second=187 amount=-1 +kerning first=83 second=206 amount=-1 +kerning first=262 second=337 amount=-1 +kerning first=241 second=99 amount=-1 +kerning first=364 second=261 amount=-1 +kerning first=262 second=242 amount=-1 +kerning first=266 second=99 amount=-1 +kerning first=1071 second=1043 amount=-1 +kerning first=1070 second=1043 amount=-1 +kerning first=298 second=242 amount=-1 +kerning first=302 second=99 amount=-1 +kerning first=1059 second=1082 amount=-1 +kerning first=209 second=281 amount=-1 +kerning first=270 second=86 amount=-1 +kerning first=259 second=281 amount=-1 +kerning first=226 second=242 amount=-1 +kerning first=230 second=99 amount=-1 +kerning first=204 second=347 amount=-1 +kerning first=261 second=382 amount=-1 +kerning first=99 second=347 amount=-1 +kerning first=370 second=242 amount=-1 +kerning first=209 second=268 amount=-1 +kerning first=374 second=99 amount=-1 +kerning first=106 second=233 amount=-1 +kerning first=76 second=364 amount=-1 +kerning first=220 second=120 amount=-1 +kerning first=364 second=290 amount=-1 +kerning first=219 second=77 amount=-1 +kerning first=296 second=277 amount=-1 +kerning first=78 second=77 amount=-1 +kerning first=8218 second=199 amount=-1 +kerning first=282 second=264 amount=-1 +kerning first=70 second=233 amount=-1 +kerning first=224 second=277 amount=-1 +kerning first=79 second=73 amount=-1 +kerning first=365 second=279 amount=-1 +kerning first=283 second=233 amount=-1 +kerning first=269 second=109 amount=-1 +kerning first=1049 second=1056 amount=-1 +kerning first=69 second=264 amount=-1 +kerning first=271 second=8217 amount=-1 +kerning first=199 second=82 amount=-1 +kerning first=307 second=8217 amount=-1 +kerning first=355 second=233 amount=-1 +kerning first=325 second=364 amount=-1 +kerning first=213 second=193 amount=-1 +kerning first=379 second=8217 amount=-1 +kerning first=73 second=224 amount=-1 +kerning first=281 second=108 amount=-1 +kerning first=220 second=290 amount=-1 +kerning first=80 second=69 amount=-1 +kerning first=217 second=364 amount=-1 +kerning first=8250 second=114 amount=-1 +kerning first=199 second=8217 amount=-1 +kerning first=252 second=283 amount=-1 +kerning first=235 second=8217 amount=-2 +kerning first=1056 second=1091 amount=-1 +kerning first=245 second=108 amount=-1 +kerning first=207 second=338 amount=-1 +kerning first=202 second=355 amount=-1 +kerning first=195 second=255 amount=-1 +kerning first=1042 second=1113 amount=-1 +kerning first=353 second=108 amount=-1 +kerning first=1047 second=1061 amount=-1 +kerning first=67 second=334 amount=-1 +kerning first=84 second=273 amount=-1 +kerning first=80 second=286 amount=-1 +kerning first=89 second=99 amount=-1 +kerning first=211 second=347 amount=-1 +kerning first=275 second=351 amount=-1 +kerning first=272 second=78 amount=-1 +kerning first=364 second=8220 amount=-1 +kerning first=1064 second=1070 amount=-1 +kerning first=221 second=286 amount=-1 +kerning first=213 second=87 amount=-1 +kerning first=310 second=171 amount=-1 +kerning first=86 second=333 amount=-1 +kerning first=263 second=112 amount=-1 +kerning first=346 second=171 amount=-1 +kerning first=1030 second=1095 amount=-1 +kerning first=75 second=365 amount=-1 +kerning first=302 second=278 amount=-1 +kerning first=382 second=171 amount=-1 +kerning first=289 second=307 amount=-1 +kerning first=263 second=333 amount=-1 +kerning first=196 second=254 amount=-1 +kerning first=66 second=71 amount=-1 +kerning first=232 second=254 amount=-1 +kerning first=252 second=269 amount=-1 +kerning first=227 second=333 amount=-1 +kerning first=65 second=117 amount=-1 +kerning first=106 second=263 amount=-1 +kerning first=350 second=117 amount=-1 +kerning first=314 second=117 amount=-1 +kerning first=195 second=374 amount=-1 +kerning first=79 second=298 amount=-1 +kerning first=278 second=117 amount=-1 +kerning first=1070 second=1067 amount=-1 +kerning first=97 second=171 amount=-1 +kerning first=1058 second=1083 amount=-1 +kerning first=283 second=100 amount=-1 +kerning first=278 second=212 amount=-1 +kerning first=283 second=263 amount=-1 +kerning first=202 second=171 amount=-1 +kerning first=1052 second=1039 amount=-1 +kerning first=355 second=263 amount=-1 +kerning first=82 second=8249 amount=-1 +kerning first=274 second=171 amount=-1 +kerning first=220 second=298 amount=-1 +kerning first=1047 second=1118 amount=-1 +kerning first=274 second=206 amount=-1 +kerning first=45 second=82 amount=-1 +kerning first=229 second=382 amount=-1 +kerning first=202 second=206 amount=-1 +kerning first=207 second=330 amount=-1 +kerning first=79 second=353 amount=-1 +kerning first=232 second=316 amount=-1 +kerning first=234 second=246 amount=-1 +kerning first=85 second=120 amount=-1 +kerning first=70 second=100 amount=-1 +kerning first=375 second=103 amount=-1 +kerning first=1048 second=1060 amount=-1 +kerning first=196 second=316 amount=-1 +kerning first=121 second=120 amount=-1 +kerning first=1071 second=1077 amount=-1 +kerning first=68 second=8221 amount=-2 +kerning first=66 second=330 amount=-1 +kerning first=268 second=316 amount=-1 +kerning first=70 second=263 amount=-1 +kerning first=346 second=206 amount=-1 +kerning first=104 second=8221 amount=-2 +kerning first=267 second=103 amount=-1 +kerning first=103 second=109 amount=-1 +kerning first=1049 second=1048 amount=-1 +kerning first=234 second=8218 amount=-1 +kerning first=89 second=194 amount=-1 +kerning first=231 second=103 amount=-1 +kerning first=198 second=8218 amount=-1 +kerning first=201 second=252 amount=-1 +kerning first=209 second=8221 amount=-1 +kerning first=304 second=74 amount=-1 +kerning first=366 second=68 amount=-1 +kerning first=245 second=8221 amount=-2 +kerning first=67 second=109 amount=-1 +kerning first=241 second=113 amount=-1 +kerning first=193 second=217 amount=-1 +kerning first=281 second=8221 amount=-2 +kerning first=284 second=313 amount=-1 +kerning first=81 second=68 amount=-1 +kerning first=353 second=8221 amount=-2 +kerning first=270 second=8218 amount=-1 +kerning first=219 second=85 amount=-1 +kerning first=296 second=223 amount=-1 +kerning first=74 second=98 amount=-1 +kerning first=67 second=280 amount=-1 +kerning first=282 second=210 amount=-1 +kerning first=103 second=326 amount=-1 +kerning first=78 second=85 amount=-1 +kerning first=350 second=8250 amount=-1 +kerning first=1064 second=1057 amount=-1 +kerning first=205 second=66 amount=-1 +kerning first=287 second=98 amount=-1 +kerning first=327 second=302 amount=-1 +kerning first=1044 second=1081 amount=-1 +kerning first=219 second=302 amount=-1 +kerning first=69 second=210 amount=-1 +kerning first=368 second=223 amount=-1 +kerning first=330 second=339 amount=-1 +kerning first=73 second=243 amount=-1 +kerning first=259 second=335 amount=-1 +kerning first=355 second=99 amount=-1 +kerning first=280 second=280 amount=-1 +kerning first=365 second=232 amount=-1 +kerning first=74 second=350 amount=-1 +kerning first=78 second=302 amount=-1 +kerning first=366 second=339 amount=-1 +kerning first=194 second=107 amount=-1 +kerning first=109 second=243 amount=-1 +kerning first=250 second=243 amount=-1 +kerning first=117 second=339 amount=-1 +kerning first=367 second=335 amount=-1 +kerning first=83 second=223 amount=-1 +kerning first=1056 second=1055 amount=-1 +kerning first=8222 second=316 amount=-1 +kerning first=274 second=363 amount=-1 +kerning first=323 second=350 amount=-1 +kerning first=66 second=284 amount=-1 +kerning first=310 second=363 amount=-1 +kerning first=364 second=344 amount=-1 +kerning first=346 second=363 amount=-1 +kerning first=364 second=298 amount=-1 +kerning first=296 second=355 amount=-1 +kerning first=1034 second=1042 amount=-1 +kerning first=198 second=357 amount=-1 +kerning first=332 second=46 amount=-1 +kerning first=257 second=232 amount=-1 +kerning first=204 second=76 amount=-1 +kerning first=221 second=232 amount=-1 +kerning first=1065 second=1072 amount=-1 +kerning first=100 second=289 amount=-1 +kerning first=234 second=357 amount=-1 +kerning first=79 second=344 amount=-1 +kerning first=217 second=234 amount=-1 +kerning first=1050 second=1114 amount=-1 +kerning first=1055 second=1027 amount=-1 +kerning first=325 second=234 amount=-1 +kerning first=277 second=289 amount=-1 +kerning first=187 second=354 amount=-1 +kerning first=289 second=234 amount=-1 +kerning first=241 second=289 amount=-1 +kerning first=1049 second=1054 amount=-1 +kerning first=83 second=8249 amount=-1 +kerning first=327 second=85 amount=-1 +kerning first=119 second=8249 amount=-1 +kerning first=1053 second=1108 amount=-1 +kerning first=304 second=262 amount=-1 +kerning first=106 second=46 amount=-1 +kerning first=202 second=280 amount=-1 +kerning first=350 second=204 amount=-1 +kerning first=323 second=79 amount=-1 +kerning first=290 second=66 amount=-1 +kerning first=8250 second=377 amount=-1 +kerning first=195 second=366 amount=-1 +kerning first=78 second=325 amount=-1 +kerning first=211 second=46 amount=-1 +kerning first=278 second=204 amount=-1 +kerning first=283 second=46 amount=-1 +kerning first=279 second=113 amount=-1 +kerning first=89 second=378 amount=-1 +kerning first=207 second=67 amount=-1 +kerning first=1073 second=1084 amount=-1 +kerning first=296 second=345 amount=-1 +kerning first=66 second=67 amount=-1 +kerning first=200 second=70 amount=-1 +kerning first=203 second=332 amount=-1 +kerning first=270 second=192 amount=-1 +kerning first=66 second=87 amount=-1 +kerning first=269 second=250 amount=-1 +kerning first=70 second=46 amount=-2 +kerning first=233 second=250 amount=-1 +kerning first=1056 second=1065 amount=-1 +kerning first=204 second=274 amount=-1 +kerning first=211 second=317 amount=-1 +kerning first=366 second=122 amount=-1 +kerning first=370 second=207 amount=-1 +kerning first=83 second=323 amount=-1 +kerning first=221 second=213 amount=-1 +kerning first=334 second=207 amount=-1 +kerning first=74 second=369 amount=-1 +kerning first=8250 second=106 amount=-1 +kerning first=330 second=122 amount=-1 +kerning first=272 second=70 amount=-1 +kerning first=1088 second=1093 amount=-1 +kerning first=287 second=369 amount=-1 +kerning first=291 second=108 amount=-1 +kerning first=8217 second=368 amount=-1 +kerning first=213 second=201 amount=-1 +kerning first=356 second=259 amount=-1 +kerning first=200 second=8217 amount=-1 +kerning first=207 second=113 amount=-1 +kerning first=305 second=8222 amount=-1 +kerning first=87 second=256 amount=-1 +kerning first=302 second=378 amount=-1 +kerning first=368 second=323 amount=-1 +kerning first=1066 second=1041 amount=-1 +kerning first=233 second=8222 amount=-1 +kerning first=1030 second=1041 amount=-1 +kerning first=72 second=201 amount=-1 +kerning first=85 second=207 amount=-1 +kerning first=230 second=378 amount=-1 +kerning first=296 second=323 amount=-1 +kerning first=104 second=231 amount=-1 +kerning first=8220 second=194 amount=-2 +kerning first=8222 second=362 amount=-1 +kerning first=70 second=317 amount=-1 +kerning first=206 second=204 amount=-1 +kerning first=298 second=207 amount=-1 +kerning first=310 second=119 amount=-1 +kerning first=196 second=262 amount=-1 +kerning first=262 second=207 amount=-1 +kerning first=374 second=378 amount=-1 +kerning first=263 second=314 amount=-1 +kerning first=227 second=314 amount=-1 +kerning first=234 second=369 amount=-1 +kerning first=1039 second=1081 amount=-1 +kerning first=8218 second=100 amount=-1 +kerning first=198 second=369 amount=-1 +kerning first=362 second=355 amount=-1 +kerning first=67 second=201 amount=-1 +kerning first=70 second=366 amount=-1 +kerning first=368 second=116 amount=-1 +kerning first=366 second=204 amount=-1 +kerning first=80 second=198 amount=-1 +kerning first=1058 second=1105 amount=-1 +kerning first=335 second=314 amount=-1 +kerning first=1053 second=1084 amount=-1 +kerning first=330 second=204 amount=-1 +kerning first=221 second=198 amount=-1 +kerning first=296 second=116 amount=-1 +kerning first=197 second=363 amount=-1 +kerning first=73 second=317 amount=-1 +kerning first=268 second=210 amount=-1 +kerning first=233 second=363 amount=-1 +kerning first=68 second=207 amount=-1 +kerning first=304 second=210 amount=-1 +kerning first=366 second=378 amount=-1 +kerning first=269 second=363 amount=-1 +kerning first=209 second=207 amount=-1 +kerning first=196 second=210 amount=-1 +kerning first=325 second=268 amount=-1 +kerning first=214 second=317 amount=-1 +kerning first=1088 second=1078 amount=-1 +kerning first=211 second=366 amount=-1 +kerning first=86 second=67 amount=-1 +kerning first=85 second=101 amount=-1 +kerning first=68 second=354 amount=-1 +kerning first=69 second=213 amount=-1 +kerning first=347 second=8250 amount=-1 +kerning first=264 second=73 amount=-1 +kerning first=364 second=219 amount=-1 +kerning first=84 second=8220 amount=-1 +kerning first=275 second=8250 amount=-1 +kerning first=282 second=213 amount=-1 +kerning first=262 second=101 amount=-1 +kerning first=74 second=296 amount=-1 +kerning first=226 second=101 amount=-1 +kerning first=120 second=8220 amount=-1 +kerning first=203 second=8250 amount=-1 +kerning first=1062 second=1081 amount=-1 +kerning first=217 second=268 amount=-1 +kerning first=8216 second=362 amount=-1 +kerning first=220 second=219 amount=-1 +kerning first=261 second=8220 amount=-2 +kerning first=268 second=298 amount=-1 +kerning first=298 second=101 amount=-1 +kerning first=225 second=8220 amount=-2 +kerning first=275 second=187 amount=-1 +kerning first=277 second=277 amount=-1 +kerning first=370 second=101 amount=-1 +kerning first=241 second=277 amount=-1 +kerning first=225 second=122 amount=-1 +kerning first=279 second=116 amount=-1 +kerning first=205 second=277 amount=-1 +kerning first=232 second=318 amount=-1 +kerning first=79 second=219 amount=-1 +kerning first=261 second=122 amount=-1 +kerning first=8222 second=264 amount=-1 +kerning first=81 second=204 amount=-1 +kerning first=45 second=204 amount=-1 +kerning first=80 second=345 amount=-1 +kerning first=323 second=296 amount=-1 +kerning first=1051 second=1072 amount=-1 +kerning first=84 second=122 amount=-1 +kerning first=207 second=273 amount=-1 +kerning first=88 second=79 amount=-1 +kerning first=324 second=235 amount=-1 +kerning first=227 second=287 amount=-1 +kerning first=100 second=277 amount=-1 +kerning first=363 second=231 amount=-1 +kerning first=206 second=283 amount=-1 +kerning first=366 second=231 amount=-1 +kerning first=101 second=283 amount=-1 +kerning first=72 second=338 amount=-1 +kerning first=333 second=8220 amount=-2 +kerning first=193 second=286 amount=-1 +kerning first=87 second=226 amount=-1 +kerning first=73 second=83 amount=-1 +kerning first=1039 second=1108 amount=-1 +kerning first=77 second=274 amount=-1 +kerning first=81 second=351 amount=-1 +kerning first=263 second=287 amount=-1 +kerning first=369 second=8220 amount=-1 +kerning first=366 second=351 amount=-1 +kerning first=330 second=351 amount=-1 +kerning first=264 second=226 amount=-1 +kerning first=73 second=290 amount=-1 +kerning first=1060 second=1065 amount=-1 +kerning first=1067 second=1047 amount=-1 +kerning first=88 second=286 amount=-1 +kerning first=364 second=192 amount=-1 +kerning first=1031 second=1047 amount=-1 +kerning first=203 second=278 amount=-1 +kerning first=219 second=44 amount=-2 +kerning first=99 second=244 amount=-1 +kerning first=205 second=70 amount=-1 +kerning first=298 second=230 amount=-1 +kerning first=362 second=274 amount=-1 +kerning first=1108 second=1103 amount=-1 +kerning first=220 second=192 amount=-1 +kerning first=8217 second=67 amount=-1 +kerning first=204 second=244 amount=-1 +kerning first=290 second=274 amount=-1 +kerning first=240 second=244 amount=-1 +kerning first=1055 second=1056 amount=-1 +kerning first=354 second=333 amount=-1 +kerning first=218 second=274 amount=-1 +kerning first=8250 second=203 amount=-1 +kerning first=85 second=74 amount=-1 +kerning first=1064 second=1069 amount=-1 +kerning first=80 second=171 amount=-1 +kerning first=116 second=171 amount=-1 +kerning first=264 second=100 amount=-1 +kerning first=1051 second=1099 amount=-1 +kerning first=73 second=327 amount=-1 +kerning first=298 second=74 amount=-1 +kerning first=221 second=171 amount=-2 +kerning first=280 second=201 amount=-1 +kerning first=257 second=171 amount=-1 +kerning first=370 second=74 amount=-1 +kerning first=74 second=269 amount=-1 +kerning first=110 second=269 amount=-1 +kerning first=117 second=231 amount=-1 +kerning first=267 second=8218 amount=-1 +kerning first=334 second=362 amount=-1 +kerning first=218 second=70 amount=-1 +kerning first=201 second=266 amount=-1 +kerning first=1047 second=1088 amount=-1 +kerning first=1078 second=1118 amount=-1 +kerning first=325 second=214 amount=-1 +kerning first=8218 second=253 amount=-1 +kerning first=251 second=269 amount=-1 +kerning first=370 second=362 amount=-1 +kerning first=209 second=69 amount=-1 +kerning first=287 second=269 amount=-1 +kerning first=350 second=310 amount=-1 +kerning first=1036 second=1090 amount=-1 +kerning first=278 second=310 amount=-1 +kerning first=257 second=318 amount=-1 +kerning first=213 second=66 amount=-1 +kerning first=221 second=45 amount=-2 +kerning first=205 second=370 amount=-1 +kerning first=257 second=45 amount=-1 +kerning first=192 second=355 amount=-1 +kerning first=116 second=45 amount=-1 +kerning first=86 second=260 amount=-1 +kerning first=313 second=370 amount=-1 +kerning first=365 second=45 amount=-1 +kerning first=217 second=214 amount=-1 +kerning first=1071 second=1097 amount=-1 +kerning first=1056 second=1062 amount=-1 +kerning first=66 second=382 amount=-1 +kerning first=262 second=362 amount=-1 +kerning first=87 second=199 amount=-1 +kerning first=261 second=275 amount=-1 +kerning first=221 second=252 amount=-1 +kerning first=225 second=275 amount=-1 +kerning first=205 second=223 amount=-1 +kerning first=1048 second=1028 amount=-1 +kerning first=8222 second=210 amount=-1 +kerning first=81 second=258 amount=-1 +kerning first=1062 second=1060 amount=-1 +kerning first=268 second=78 amount=-1 +kerning first=8222 second=84 amount=-1 +kerning first=205 second=97 amount=-1 +kerning first=354 second=267 amount=-1 +kerning first=104 second=234 amount=-1 +kerning first=203 second=251 amount=-1 +kerning first=209 second=234 amount=-1 +kerning first=45 second=79 amount=-1 +kerning first=8250 second=298 amount=-1 +kerning first=204 second=217 amount=-1 +kerning first=269 second=106 amount=-1 +kerning first=366 second=258 amount=-1 +kerning first=1039 second=1027 amount=-1 +kerning first=201 second=200 amount=-1 +kerning first=269 second=243 amount=-1 +kerning first=72 second=257 amount=-1 +kerning first=233 second=243 amount=-1 +kerning first=275 second=251 amount=-1 +kerning first=305 second=243 amount=-1 +kerning first=1068 second=1053 amount=-1 +kerning first=1031 second=1100 amount=-1 +kerning first=223 second=8221 amount=-2 +kerning first=116 second=225 amount=-1 +kerning first=203 second=206 amount=-1 +kerning first=80 second=72 amount=-1 +kerning first=110 second=242 amount=-1 +kerning first=259 second=8221 amount=-2 +kerning first=85 second=335 amount=-1 +kerning first=257 second=345 amount=-1 +kerning first=72 second=187 amount=-1 +kerning first=226 second=335 amount=-1 +kerning first=74 second=242 amount=-1 +kerning first=229 second=232 amount=-1 +kerning first=298 second=335 amount=-1 +kerning first=287 second=242 amount=-1 +kerning first=1039 second=1054 amount=-1 +kerning first=262 second=335 amount=-1 +kerning first=368 second=277 amount=-1 +kerning first=370 second=335 amount=-1 +kerning first=74 second=100 amount=-1 +kerning first=1052 second=1105 amount=-1 +kerning first=117 second=8249 amount=-1 +kerning first=251 second=242 amount=-1 +kerning first=281 second=234 amount=-1 +kerning first=330 second=330 amount=-1 +kerning first=217 second=241 amount=-1 +kerning first=286 second=344 amount=-1 +kerning first=1064 second=1096 amount=-1 +kerning first=113 second=8217 amount=-2 +kerning first=1028 second=1096 amount=-1 +kerning first=197 second=336 amount=-1 +kerning first=325 second=241 amount=-1 +kerning first=355 second=335 amount=-1 +kerning first=86 second=233 amount=-1 +kerning first=289 second=241 amount=-1 +kerning first=1051 second=1045 amount=-1 +kerning first=87 second=46 amount=-1 +kerning first=192 second=199 amount=-1 +kerning first=316 second=114 amount=-1 +kerning first=200 second=80 amount=-1 +kerning first=45 second=378 amount=-1 +kerning first=366 second=200 amount=-1 +kerning first=192 second=46 amount=-1 +kerning first=264 second=199 amount=-1 +kerning first=84 second=275 amount=-1 +kerning first=263 second=233 amount=-1 +kerning first=277 second=250 amount=-1 +kerning first=352 second=114 amount=-1 +kerning first=264 second=46 amount=-1 +kerning first=68 second=327 amount=-1 +kerning first=103 second=114 amount=-1 +kerning first=1058 second=1113 amount=-1 +kerning first=336 second=46 amount=-1 +kerning first=244 second=114 amount=-1 +kerning first=1060 second=1046 amount=-1 +kerning first=272 second=80 amount=-1 +kerning first=277 second=8222 amount=-1 +kerning first=214 second=344 amount=-1 +kerning first=206 second=310 amount=-1 +kerning first=209 second=327 amount=-1 +kerning first=220 second=327 amount=-1 +kerning first=364 second=336 amount=-1 +kerning first=1064 second=1062 amount=-1 +kerning first=217 second=361 amount=-1 +kerning first=67 second=114 amount=-1 +kerning first=1104 second=1080 amount=-1 +kerning first=209 second=81 amount=-1 +kerning first=217 second=115 amount=-1 +kerning first=82 second=8221 amount=-1 +kerning first=253 second=115 amount=-1 +kerning first=118 second=8221 amount=-2 +kerning first=289 second=115 amount=-1 +kerning first=72 second=284 amount=-1 +kerning first=325 second=115 amount=-1 +kerning first=197 second=216 amount=-1 +kerning first=8250 second=284 amount=-1 +kerning first=266 second=331 amount=-1 +kerning first=378 second=8221 amount=-1 +kerning first=223 second=44 amount=-1 +kerning first=1033 second=1098 amount=-1 +kerning first=364 second=78 amount=-1 +kerning first=89 second=8249 amount=-2 +kerning first=204 second=352 amount=-1 +kerning first=187 second=204 amount=-1 +kerning first=194 second=8249 amount=-1 +kerning first=89 second=331 amount=-1 +kerning first=370 second=227 amount=-1 +kerning first=103 second=116 amount=-1 +kerning first=220 second=78 amount=-1 +kerning first=266 second=8249 amount=-1 +kerning first=86 second=380 amount=-1 +kerning first=69 second=72 amount=-1 +kerning first=298 second=227 amount=-1 +kerning first=8217 second=260 amount=-2 +kerning first=266 second=346 amount=-1 +kerning first=282 second=72 amount=-1 +kerning first=346 second=218 amount=-1 +kerning first=310 second=218 amount=-1 +kerning first=199 second=267 amount=-1 +kerning first=204 second=290 amount=-1 +kerning first=274 second=218 amount=-1 +kerning first=1048 second=1055 amount=-1 +kerning first=118 second=44 amount=-1 +kerning first=202 second=218 amount=-1 +kerning first=1043 second=1119 amount=-1 +kerning first=1069 second=1061 amount=-1 +kerning first=74 second=79 amount=-1 +kerning first=1058 second=1086 amount=-1 +kerning first=192 second=361 amount=-1 +kerning first=365 second=291 amount=-1 +kerning first=296 second=230 amount=-1 +kerning first=87 second=361 amount=-1 +kerning first=80 second=279 amount=-1 +kerning first=116 second=279 amount=-1 +kerning first=8217 second=235 amount=-1 +kerning first=302 second=346 amount=-1 +kerning first=1030 second=1056 amount=-1 +kerning first=116 second=291 amount=-1 +kerning first=262 second=227 amount=-1 +kerning first=353 second=8218 amount=-1 +kerning first=1057 second=1080 amount=-1 +kerning first=288 second=368 amount=-1 +kerning first=101 second=187 amount=-1 +kerning first=281 second=8218 amount=-1 +kerning first=1082 second=1095 amount=-1 +kerning first=85 second=227 amount=-1 +kerning first=198 second=8221 amount=-1 +kerning first=75 second=368 amount=-1 +kerning first=1046 second=1095 amount=-1 +kerning first=234 second=8221 amount=-2 +kerning first=196 second=84 amount=-1 +kerning first=289 second=269 amount=-1 +kerning first=87 second=8221 amount=-1 +kerning first=198 second=81 amount=-1 +kerning first=270 second=8221 amount=-2 +kerning first=101 second=337 amount=-1 +kerning first=1034 second=1079 amount=-1 +kerning first=1118 second=1095 amount=-1 +kerning first=68 second=8218 amount=-1 +kerning first=112 second=187 amount=-1 +kerning first=105 second=99 amount=-1 +kerning first=109 second=8220 amount=-2 +kerning first=262 second=200 amount=-1 +kerning first=67 second=75 amount=-1 +kerning first=362 second=44 amount=-2 +kerning first=245 second=8218 amount=-1 +kerning first=204 second=325 amount=-1 +kerning first=289 second=187 amount=-1 +kerning first=197 second=255 amount=-1 +kerning first=209 second=8218 amount=-1 +kerning first=325 second=187 amount=-1 +kerning first=217 second=187 amount=-2 +kerning first=85 second=200 amount=-1 +kerning first=205 second=211 amount=-1 +kerning first=187 second=71 amount=-1 +kerning first=89 second=8222 amount=-2 +kerning first=257 second=279 amount=-1 +kerning first=82 second=71 amount=-1 +kerning first=217 second=202 amount=-1 +kerning first=8217 second=233 amount=-1 +kerning first=221 second=279 amount=-1 +kerning first=259 second=337 amount=-1 +kerning first=352 second=75 amount=-1 +kerning first=327 second=211 amount=-1 +kerning first=111 second=316 amount=-1 +kerning first=206 second=245 amount=-1 +kerning first=74 second=362 amount=-1 +kerning first=8218 second=361 amount=-1 +kerning first=8220 second=219 amount=-1 +kerning first=209 second=261 amount=-1 +kerning first=278 second=364 amount=-1 +kerning first=364 second=66 amount=-1 +kerning first=1070 second=1052 amount=-1 +kerning first=221 second=264 amount=-1 +kerning first=214 second=209 amount=-1 +kerning first=1034 second=1052 amount=-1 +kerning first=206 second=364 amount=-1 +kerning first=362 second=367 amount=-1 +kerning first=296 second=257 amount=-1 +kerning first=268 second=69 amount=-1 +kerning first=80 second=264 amount=-1 +kerning first=73 second=209 amount=-1 +kerning first=65 second=364 amount=-1 +kerning first=368 second=257 amount=-1 +kerning first=304 second=69 amount=-1 +kerning first=79 second=66 amount=-1 +kerning first=218 second=367 amount=-1 +kerning first=227 second=380 amount=-1 +kerning first=77 second=355 amount=-1 +kerning first=338 second=8249 amount=-1 +kerning first=264 second=334 amount=-1 +kerning first=374 second=8249 amount=-2 +kerning first=234 second=108 amount=-1 +kerning first=192 second=334 amount=-1 +kerning first=281 second=273 amount=-1 +kerning first=263 second=380 amount=-1 +kerning first=1064 second=1041 amount=-1 +kerning first=272 second=330 amount=-1 +kerning first=209 second=366 amount=-1 +kerning first=323 second=235 amount=-1 +kerning first=209 second=273 amount=-1 +kerning first=335 second=380 amount=-1 +kerning first=1053 second=1030 amount=-1 +kerning first=338 second=268 amount=-1 +kerning first=350 second=364 amount=-1 +kerning first=374 second=290 amount=-1 +kerning first=266 second=226 amount=-1 +kerning first=286 second=209 amount=-1 +kerning first=82 second=89 amount=-1 +kerning first=1034 second=1050 amount=-1 +kerning first=362 second=286 amount=-1 +kerning first=73 second=263 amount=-1 +kerning first=253 second=249 amount=-1 +kerning first=272 second=194 amount=-1 +kerning first=109 second=263 amount=-1 +kerning first=1027 second=1051 amount=-1 +kerning first=1070 second=1050 amount=-1 +kerning first=221 second=79 amount=-1 +kerning first=87 second=334 amount=-1 +kerning first=45 second=117 amount=-1 +kerning first=218 second=286 amount=-1 +kerning first=101 second=339 amount=-1 +kerning first=250 second=263 amount=-1 +kerning first=205 second=82 amount=-1 +kerning first=1041 second=1094 amount=-1 +kerning first=116 second=8221 amount=-1 +kerning first=1041 second=1039 amount=-1 +kerning first=368 second=203 amount=-1 +kerning first=325 second=229 amount=-1 +kerning first=87 second=332 amount=-1 +kerning first=8222 second=225 amount=-1 +kerning first=77 second=286 amount=-1 +kerning first=108 second=365 amount=-1 +kerning first=204 second=298 amount=-1 +kerning first=269 second=351 amount=-1 +kerning first=1067 second=1074 amount=-1 +kerning first=366 second=117 amount=-1 +kerning first=1064 second=1108 amount=-1 +kerning first=264 second=332 amount=-1 +kerning first=296 second=203 amount=-1 +kerning first=291 second=46 amount=-1 +kerning first=192 second=332 amount=-1 +kerning first=217 second=229 amount=-1 +kerning first=258 second=117 amount=-1 +kerning first=1055 second=1083 amount=-1 +kerning first=370 second=281 amount=-1 +kerning first=72 second=77 amount=-1 +kerning first=325 second=100 amount=-1 +kerning first=1091 second=1083 amount=-1 +kerning first=242 second=382 amount=-1 +kerning first=257 second=333 amount=-1 +kerning first=1070 second=1025 amount=-1 +kerning first=355 second=339 amount=-1 +kerning first=218 second=271 amount=-1 +kerning first=1036 second=1118 amount=-1 +kerning first=1034 second=1025 amount=-1 +kerning first=206 second=229 amount=-1 +kerning first=281 second=246 amount=-1 +kerning first=88 second=220 amount=-1 +kerning first=254 second=382 amount=-1 +kerning first=209 second=246 amount=-1 +kerning first=196 second=171 amount=-1 +kerning first=85 second=281 amount=-1 +kerning first=323 second=103 amount=-1 +kerning first=104 second=246 amount=-1 +kerning first=287 second=103 amount=-1 +kerning first=204 second=323 amount=-1 +kerning first=263 second=369 amount=-1 +kerning first=195 second=364 amount=-1 +kerning first=217 second=100 amount=-1 +kerning first=192 second=307 amount=-1 +kerning first=226 second=281 amount=-1 +kerning first=85 second=262 amount=-1 +kerning first=221 second=333 amount=-1 +kerning first=262 second=281 amount=-1 +kerning first=266 second=304 amount=-1 +kerning first=80 second=333 amount=-1 +kerning first=284 second=209 amount=-1 +kerning first=298 second=281 amount=-1 +kerning first=302 second=304 amount=-1 +kerning first=110 second=103 amount=-1 +kerning first=352 second=69 amount=-1 +kerning first=338 second=304 amount=-1 +kerning first=264 second=81 amount=-1 +kerning first=213 second=77 amount=-1 +kerning first=111 second=314 amount=-1 +kerning first=1108 second=1076 amount=-1 +kerning first=1053 second=1057 amount=-1 +kerning first=1043 second=1092 amount=-1 +kerning first=205 second=109 amount=-1 +kerning first=217 second=256 amount=-1 +kerning first=97 second=245 amount=-1 +kerning first=203 second=85 amount=-1 +kerning first=264 second=280 amount=-1 +kerning first=346 second=8217 amount=-1 +kerning first=272 second=221 amount=-1 +kerning first=1048 second=1067 amount=-1 +kerning first=364 second=120 amount=-1 +kerning first=382 second=8217 amount=-1 +kerning first=221 second=210 amount=-1 +kerning first=344 second=221 amount=-1 +kerning first=68 second=315 amount=-1 +kerning first=218 second=313 amount=-1 +kerning first=1067 second=1101 amount=-1 +kerning first=290 second=313 amount=-1 +kerning first=283 second=339 amount=-1 +kerning first=192 second=44 amount=-1 +kerning first=80 second=210 amount=-1 +kerning first=99 second=248 amount=-1 +kerning first=368 second=230 amount=-1 +kerning first=77 second=313 amount=-1 +kerning first=336 second=8250 amount=-1 +kerning first=99 second=271 amount=-1 +kerning first=106 second=339 amount=-1 +kerning first=269 second=324 amount=-1 +kerning first=70 second=339 amount=-1 +kerning first=204 second=271 amount=-1 +kerning first=1039 second=1042 amount=-1 +kerning first=228 second=8250 amount=-1 +kerning first=304 second=111 amount=-1 +kerning first=8218 second=334 amount=-1 +kerning first=192 second=8250 amount=-1 +kerning first=83 second=203 amount=-1 +kerning first=1052 second=1117 amount=-1 +kerning first=262 second=254 amount=-1 +kerning first=87 second=8250 amount=-1 +kerning first=270 second=195 amount=-1 +kerning first=110 second=101 amount=-1 +kerning first=214 second=258 amount=-1 +kerning first=209 second=219 amount=-1 +kerning first=74 second=101 amount=-1 +kerning first=89 second=273 amount=-1 +kerning first=111 second=289 amount=-1 +kerning first=68 second=219 amount=-1 +kerning first=252 second=289 amount=-1 +kerning first=209 second=350 amount=-1 +kerning first=1031 second=1101 amount=-1 +kerning first=287 second=101 amount=-1 +kerning first=324 second=289 amount=-1 +kerning first=202 second=8217 amount=-1 +kerning first=1033 second=1065 amount=-1 +kerning first=251 second=101 amount=-1 +kerning first=339 second=111 amount=-1 +kerning first=274 second=8217 amount=-1 +kerning first=224 second=380 amount=-1 +kerning first=74 second=76 amount=-1 +kerning first=374 second=331 amount=-1 +kerning first=204 second=296 amount=-1 +kerning first=232 second=111 amount=-1 +kerning first=97 second=8217 amount=-2 +kerning first=268 second=111 amount=-1 +kerning first=121 second=254 amount=-1 +kerning first=269 second=228 amount=-1 +kerning first=268 second=225 amount=-1 +kerning first=70 second=187 amount=-2 +kerning first=106 second=99 amount=-1 +kerning first=77 second=232 amount=-1 +kerning first=8218 second=332 amount=-1 +kerning first=286 second=85 amount=-1 +kerning first=214 second=85 amount=-1 +kerning first=73 second=332 amount=-1 +kerning first=252 second=287 amount=-1 +kerning first=289 second=46 amount=-1 +kerning first=74 second=271 amount=-1 +kerning first=253 second=46 amount=-1 +kerning first=214 second=330 amount=-1 +kerning first=73 second=85 amount=-1 +kerning first=250 second=8220 amount=-1 +kerning first=111 second=287 amount=-1 +kerning first=325 second=46 amount=-1 +kerning first=109 second=277 amount=-1 +kerning first=286 second=302 amount=-1 +kerning first=206 second=241 amount=-1 +kerning first=286 second=8220 amount=-1 +kerning first=370 second=368 amount=-1 +kerning first=324 second=287 amount=-1 +kerning first=214 second=302 amount=-1 +kerning first=323 second=271 amount=-1 +kerning first=1039 second=1096 amount=-1 +kerning first=74 second=243 amount=-1 +kerning first=233 second=378 amount=-1 +kerning first=8250 second=223 amount=-1 +kerning first=230 second=250 amount=-1 +kerning first=227 second=289 amount=-1 +kerning first=194 second=250 amount=-1 +kerning first=231 second=229 amount=-1 +kerning first=112 second=46 amount=-1 +kerning first=202 second=284 amount=-1 +kerning first=274 second=75 amount=-1 +kerning first=263 second=289 amount=-1 +kerning first=87 second=273 amount=-1 +kerning first=8222 second=252 amount=-1 +kerning first=374 second=250 amount=-1 +kerning first=45 second=336 amount=-1 +kerning first=217 second=46 amount=-2 +kerning first=274 second=284 amount=-1 +kerning first=334 second=76 amount=-1 +kerning first=335 second=289 amount=-1 +kerning first=267 second=229 amount=-1 +kerning first=269 second=378 amount=-1 +kerning first=370 second=76 amount=-1 +kerning first=207 second=220 amount=-1 +kerning first=262 second=76 amount=-1 +kerning first=67 second=216 amount=-1 +kerning first=171 second=220 amount=-1 +kerning first=74 second=74 amount=-1 +kerning first=8250 second=218 amount=-1 +kerning first=362 second=259 amount=-1 +kerning first=264 second=278 amount=-1 +kerning first=1027 second=1105 amount=-1 +kerning first=201 second=45 amount=-1 +kerning first=280 second=216 amount=-1 +kerning first=339 second=246 amount=-1 +kerning first=85 second=76 amount=-1 +kerning first=1050 second=1118 amount=-1 +kerning first=203 second=280 amount=-1 +kerning first=267 second=246 amount=-1 +kerning first=321 second=89 amount=-1 +kerning first=231 second=246 amount=-1 +kerning first=66 second=220 amount=-1 +kerning first=323 second=74 amount=-1 +kerning first=204 second=269 amount=-1 +kerning first=262 second=245 amount=-1 +kerning first=345 second=229 amount=-1 +kerning first=240 second=269 amount=-1 +kerning first=77 second=259 amount=-1 +kerning first=70 second=204 amount=-1 +kerning first=99 second=269 amount=-1 +kerning first=1042 second=1084 amount=-1 +kerning first=219 second=201 amount=-1 +kerning first=86 second=65 amount=-1 +kerning first=218 second=259 amount=-1 +kerning first=211 second=204 amount=-1 +kerning first=272 second=366 amount=-1 +kerning first=278 second=268 amount=-1 +kerning first=220 second=207 amount=-1 +kerning first=78 second=8220 amount=-1 +kerning first=200 second=366 amount=-1 +kerning first=206 second=268 amount=-1 +kerning first=1039 second=1069 amount=-1 +kerning first=280 second=67 amount=-1 +kerning first=274 second=67 amount=-1 +kerning first=218 second=110 amount=-1 +kerning first=8217 second=289 amount=-1 +kerning first=364 second=207 amount=-1 +kerning first=310 second=67 amount=-1 +kerning first=74 second=244 amount=-1 +kerning first=207 second=210 amount=-1 +kerning first=1067 second=1062 amount=-1 +kerning first=110 second=244 amount=-1 +kerning first=75 second=303 amount=-1 +kerning first=356 second=113 amount=-1 +kerning first=304 second=224 amount=-1 +kerning first=374 second=277 amount=-1 +kerning first=217 second=73 amount=-1 +kerning first=1054 second=1068 amount=-1 +kerning first=73 second=302 amount=-1 +kerning first=325 second=73 amount=-1 +kerning first=86 second=262 amount=-1 +kerning first=233 second=351 amount=-1 +kerning first=65 second=268 amount=-1 +kerning first=287 second=108 amount=-1 +kerning first=1038 second=1117 amount=-1 +kerning first=89 second=277 amount=-1 +kerning first=230 second=353 amount=-1 +kerning first=192 second=251 amount=-1 +kerning first=199 second=213 amount=-1 +kerning first=87 second=251 amount=-1 +kerning first=302 second=277 amount=-1 +kerning first=266 second=277 amount=-1 +kerning first=230 second=277 amount=-1 +kerning first=205 second=273 amount=-1 +kerning first=368 second=218 amount=-1 +kerning first=187 second=370 amount=-1 +kerning first=71 second=8221 amount=-1 +kerning first=355 second=231 amount=-1 +kerning first=327 second=75 amount=-1 +kerning first=108 second=380 amount=-1 +kerning first=280 second=270 amount=-1 +kerning first=296 second=218 amount=-1 +kerning first=374 second=196 amount=-1 +kerning first=245 second=8222 amount=-1 +kerning first=212 second=8221 amount=-2 +kerning first=262 second=8249 amount=-1 +kerning first=248 second=8221 amount=-2 +kerning first=219 second=75 amount=-1 +kerning first=78 second=216 amount=-1 +kerning first=109 second=248 amount=-1 +kerning first=67 second=336 amount=-1 +kerning first=1031 second=1089 amount=-1 +kerning first=65 second=187 amount=-1 +kerning first=250 second=248 amount=-1 +kerning first=1057 second=1119 amount=-1 +kerning first=283 second=231 amount=-1 +kerning first=83 second=218 amount=-1 +kerning first=99 second=242 amount=-1 +kerning first=356 second=8221 amount=-1 +kerning first=78 second=75 amount=-1 +kerning first=279 second=355 amount=-1 +kerning first=352 second=270 amount=-1 +kerning first=192 second=264 amount=-1 +kerning first=200 second=209 amount=-1 +kerning first=218 second=79 amount=-1 +kerning first=73 second=248 amount=-1 +kerning first=304 second=279 amount=-1 +kerning first=280 second=336 amount=-1 +kerning first=204 second=234 amount=-1 +kerning first=258 second=84 amount=-1 +kerning first=67 second=270 amount=-1 +kerning first=279 second=367 amount=-1 +kerning first=339 second=283 amount=-1 +kerning first=77 second=79 amount=-1 +kerning first=231 second=283 amount=-1 +kerning first=109 second=333 amount=-1 +kerning first=89 second=369 amount=-1 +kerning first=1043 second=1080 amount=-1 +kerning first=362 second=205 amount=-1 +kerning first=251 second=244 amount=-1 +kerning first=79 second=327 amount=-1 +kerning first=338 second=8222 amount=-1 +kerning first=8218 second=369 amount=-1 +kerning first=290 second=205 amount=-1 +kerning first=323 second=244 amount=-1 +kerning first=266 second=8222 amount=-1 +kerning first=362 second=79 amount=-1 +kerning first=207 second=274 amount=-1 +kerning first=230 second=8222 amount=-1 +kerning first=66 second=367 amount=-1 +kerning first=66 second=274 amount=-1 +kerning first=1031 second=1028 amount=-1 +kerning first=252 second=233 amount=-1 +kerning first=338 second=70 amount=-1 +kerning first=364 second=327 amount=-1 +kerning first=70 second=231 amount=-1 +kerning first=86 second=235 amount=-1 +kerning first=106 second=231 amount=-1 +kerning first=1066 second=1062 amount=-1 +kerning first=1055 second=1071 amount=-1 +kerning first=356 second=227 amount=-1 +kerning first=218 second=205 amount=-1 +kerning first=227 second=235 amount=-1 +kerning first=258 second=108 amount=-1 +kerning first=77 second=205 amount=-1 +kerning first=263 second=235 amount=-1 +kerning first=266 second=70 amount=-1 +kerning first=87 second=224 amount=-1 +kerning first=302 second=70 amount=-1 +kerning first=8217 second=65 amount=-2 +kerning first=206 second=214 amount=-1 +kerning first=201 second=71 amount=-1 +kerning first=72 second=353 amount=-1 +kerning first=85 second=266 amount=-1 +kerning first=118 second=249 amount=-1 +kerning first=264 second=224 amount=-1 +kerning first=187 second=249 amount=-1 +kerning first=330 second=70 amount=-1 +kerning first=1038 second=1090 amount=-1 +kerning first=103 second=243 amount=-1 +kerning first=1058 second=1088 amount=-1 +kerning first=1059 second=1104 amount=-1 +kerning first=280 second=363 amount=-1 +kerning first=213 second=353 amount=-1 +kerning first=316 second=363 amount=-1 +kerning first=278 second=214 amount=-1 +kerning first=75 second=370 amount=-1 +kerning first=374 second=223 amount=-1 +kerning first=69 second=45 amount=-1 +kerning first=288 second=370 amount=-1 +kerning first=338 second=223 amount=-1 +kerning first=105 second=45 amount=-1 +kerning first=80 second=232 amount=-1 +kerning first=302 second=223 amount=-1 +kerning first=232 second=252 amount=-1 +kerning first=250 second=275 amount=-1 +kerning first=266 second=223 amount=-1 +kerning first=196 second=252 amount=-1 +kerning first=325 second=8218 amount=-1 +kerning first=240 second=275 amount=-1 +kerning first=65 second=214 amount=-1 +kerning first=1043 second=1107 amount=-1 +kerning first=79 second=354 amount=-1 +kerning first=203 second=199 amount=-1 +kerning first=282 second=45 amount=-1 +kerning first=254 second=106 amount=-1 +kerning first=109 second=275 amount=-1 +kerning first=1050 second=1081 amount=-1 +kerning first=73 second=275 amount=-1 +kerning first=375 second=8221 amount=-2 +kerning first=8217 second=262 amount=-1 +kerning first=1046 second=1097 amount=-1 +kerning first=74 second=217 amount=-1 +kerning first=266 second=97 amount=-1 +kerning first=220 second=234 amount=-1 +kerning first=302 second=97 amount=-1 +kerning first=370 second=288 amount=-1 +kerning first=235 second=267 amount=-1 +kerning first=271 second=267 amount=-1 +kerning first=307 second=267 amount=-1 +kerning first=272 second=209 amount=-1 +kerning first=89 second=97 amount=-1 +kerning first=73 second=8220 amount=-1 +kerning first=364 second=234 amount=-1 +kerning first=89 second=223 amount=-1 +kerning first=8218 second=251 amount=-1 +kerning first=328 second=234 amount=-1 +kerning first=211 second=258 amount=-1 +kerning first=1091 second=1098 amount=-1 +kerning first=288 second=201 amount=-1 +kerning first=288 second=206 amount=-1 +kerning first=1071 second=1095 amount=-1 +kerning first=298 second=266 amount=-1 +kerning first=218 second=232 amount=-1 +kerning first=284 second=200 amount=-1 +kerning first=350 second=345 amount=-1 +kerning first=1062 second=1072 amount=-1 +kerning first=370 second=266 amount=-1 +kerning first=205 second=368 amount=-1 +kerning first=196 second=345 amount=-1 +kerning first=291 second=250 amount=-1 +kerning first=324 second=113 amount=-1 +kerning first=232 second=345 amount=-1 +kerning first=8222 second=279 amount=-1 +kerning first=374 second=97 amount=-1 +kerning first=362 second=232 amount=-1 +kerning first=268 second=345 amount=-1 +kerning first=262 second=266 amount=-1 +kerning first=326 second=232 amount=-1 +kerning first=364 second=79 amount=-1 +kerning first=71 second=200 amount=-1 +kerning first=89 second=109 amount=-1 +kerning first=1059 second=1077 amount=-1 +kerning first=220 second=8218 amount=-2 +kerning first=339 second=120 amount=-1 +kerning first=375 second=120 amount=-1 +kerning first=115 second=8218 amount=-1 +kerning first=87 second=197 amount=-1 +kerning first=79 second=8218 amount=-1 +kerning first=266 second=109 amount=-1 +kerning first=364 second=8218 amount=-2 +kerning first=249 second=245 amount=-1 +kerning first=105 second=111 amount=-1 +kerning first=302 second=109 amount=-1 +kerning first=272 second=258 amount=-1 +kerning first=220 second=315 amount=-1 +kerning first=313 second=368 amount=-1 +kerning first=73 second=199 amount=-1 +kerning first=187 second=367 amount=-1 +kerning first=108 second=245 amount=-1 +kerning first=66 second=313 amount=-1 +kerning first=267 second=105 amount=-1 +kerning first=207 second=313 amount=-1 +kerning first=231 second=105 amount=-1 +kerning first=195 second=105 amount=-1 +kerning first=296 second=267 amount=-1 +kerning first=262 second=217 amount=-1 +kerning first=368 second=267 amount=-1 +kerning first=298 second=217 amount=-1 +kerning first=1071 second=1068 amount=-1 +kerning first=334 second=217 amount=-1 +kerning first=291 second=114 amount=-1 +kerning first=1057 second=1097 amount=-1 +kerning first=370 second=217 amount=-1 +kerning first=326 second=279 amount=-1 +kerning first=219 second=102 amount=-1 +kerning first=1030 second=1037 amount=-1 +kerning first=224 second=267 amount=-1 +kerning first=327 second=114 amount=-1 +kerning first=8220 second=196 amount=-2 +kerning first=72 second=245 amount=-1 +kerning first=78 second=114 amount=-1 +kerning first=317 second=8221 amount=-1 +kerning first=364 second=315 amount=-1 +kerning first=219 second=114 amount=-1 +kerning first=291 second=8249 amount=-1 +kerning first=8222 second=318 amount=-1 +kerning first=201 second=212 amount=-1 +kerning first=70 second=103 amount=-1 +kerning first=279 second=111 amount=-1 +kerning first=274 second=8222 amount=-1 +kerning first=327 second=8249 amount=-1 +kerning first=363 second=8249 amount=-1 +kerning first=101 second=115 amount=-1 +kerning first=1044 second=1098 amount=-1 +kerning first=327 second=331 amount=-1 +kerning first=206 second=115 amount=-1 +kerning first=220 second=273 amount=-1 +kerning first=107 second=44 amount=-1 +kerning first=368 second=261 amount=-1 +kerning first=196 second=318 amount=-1 +kerning first=213 second=218 amount=-1 +kerning first=201 second=77 amount=-1 +kerning first=323 second=352 amount=-1 +kerning first=1033 second=1061 amount=-1 +kerning first=97 second=380 amount=-1 +kerning first=8250 second=89 amount=-2 +kerning first=207 second=355 amount=-1 +kerning first=268 second=318 amount=-1 +kerning first=219 second=331 amount=-1 +kerning first=80 second=288 amount=-1 +kerning first=8220 second=85 amount=-1 +kerning first=1104 second=1119 amount=-1 +kerning first=261 second=248 amount=-1 +kerning first=66 second=355 amount=-1 +kerning first=369 second=248 amount=-1 +kerning first=212 second=44 amount=-1 +kerning first=8222 second=333 amount=-1 +kerning first=362 second=193 amount=-1 +kerning first=248 second=44 amount=-1 +kerning first=354 second=275 amount=-1 +kerning first=1047 second=1059 amount=-2 +kerning first=78 second=346 amount=-1 +kerning first=84 second=248 amount=-1 +kerning first=352 second=282 amount=-1 +kerning first=225 second=248 amount=-1 +kerning first=8216 second=217 amount=-1 +kerning first=280 second=282 amount=-1 +kerning first=199 second=72 amount=-1 +kerning first=325 second=332 amount=-1 +kerning first=291 second=8222 amount=-1 +kerning first=72 second=230 amount=-1 +kerning first=219 second=8222 amount=-2 +kerning first=327 second=346 amount=-1 +kerning first=203 second=361 amount=-1 +kerning first=203 second=117 amount=-1 +kerning first=217 second=332 amount=-1 +kerning first=1071 second=1041 amount=-1 +kerning first=204 second=229 amount=-1 +kerning first=114 second=8222 amount=-1 +kerning first=232 second=279 amount=-1 +kerning first=78 second=8222 amount=-1 +kerning first=268 second=279 amount=-1 +kerning first=219 second=346 amount=-1 +kerning first=8250 second=77 amount=-1 +kerning first=74 second=352 amount=-1 +kerning first=298 second=267 amount=-1 +kerning first=267 second=337 amount=-1 +kerning first=350 second=187 amount=-1 +kerning first=232 second=291 amount=-1 +kerning first=231 second=337 amount=-1 +kerning first=356 second=44 amount=-1 +kerning first=278 second=187 amount=-1 +kerning first=99 second=187 amount=-1 +kerning first=103 second=355 amount=-1 +kerning first=187 second=81 amount=-1 +kerning first=302 second=103 amount=-1 +kerning first=209 second=109 amount=-1 +kerning first=315 second=84 amount=-1 +kerning first=75 second=119 amount=-1 +kerning first=82 second=81 amount=-1 +kerning first=327 second=8222 amount=-1 +kerning first=364 second=288 amount=-1 +kerning first=194 second=211 amount=-1 +kerning first=71 second=204 amount=-1 +kerning first=202 second=338 amount=-1 +kerning first=266 second=211 amount=-1 +kerning first=264 second=362 amount=-1 +kerning first=324 second=119 amount=-1 +kerning first=323 second=325 amount=-1 +kerning first=199 second=99 amount=-1 +kerning first=1033 second=1034 amount=-1 +kerning first=89 second=211 amount=-1 +kerning first=220 second=369 amount=-1 +kerning first=334 second=347 amount=-1 +kerning first=207 second=382 amount=-1 +kerning first=262 second=269 amount=-1 +kerning first=370 second=347 amount=-1 +kerning first=243 second=382 amount=-1 +kerning first=325 second=8250 amount=-1 +kerning first=262 second=347 amount=-1 +kerning first=279 second=382 amount=-1 +kerning first=289 second=8250 amount=-1 +kerning first=298 second=347 amount=-1 +kerning first=271 second=99 amount=-1 +kerning first=253 second=8250 amount=-1 +kerning first=212 second=86 amount=-1 +kerning first=66 second=198 amount=-1 +kerning first=101 second=248 amount=-1 +kerning first=87 second=110 amount=-1 +kerning first=72 second=224 amount=-1 +kerning first=314 second=365 amount=-1 +kerning first=85 second=347 amount=-1 +kerning first=374 second=211 amount=-1 +kerning first=195 second=268 amount=-1 +kerning first=227 second=316 amount=-1 +kerning first=1049 second=1100 amount=-1 +kerning first=1062 second=1087 amount=-1 +kerning first=264 second=110 amount=-1 +kerning first=278 second=202 amount=-1 +kerning first=283 second=117 amount=-1 +kerning first=103 second=351 amount=-1 +kerning first=304 second=264 amount=-1 +kerning first=72 second=8217 amount=-1 +kerning first=219 second=277 amount=-1 +kerning first=67 second=351 amount=-1 +kerning first=350 second=202 amount=-1 +kerning first=108 second=8217 amount=-1 +kerning first=206 second=73 amount=-1 +kerning first=350 second=369 amount=-1 +kerning first=289 second=305 amount=-1 +kerning first=196 second=264 amount=-1 +kerning first=278 second=73 amount=-1 +kerning first=1031 second=1065 amount=-1 +kerning first=363 second=277 amount=-1 +kerning first=203 second=334 amount=-1 +kerning first=206 second=202 amount=-1 +kerning first=1042 second=1030 amount=-1 +kerning first=240 second=8250 amount=-1 +kerning first=321 second=8217 amount=-1 +kerning first=207 second=69 amount=-1 +kerning first=223 second=108 amount=-1 +kerning first=362 second=280 amount=-1 +kerning first=99 second=101 amount=-1 +kerning first=368 second=232 amount=-1 +kerning first=240 second=101 amount=-1 +kerning first=118 second=108 amount=-1 +kerning first=218 second=193 amount=-1 +kerning first=204 second=101 amount=-1 +kerning first=66 second=69 amount=-1 +kerning first=364 second=273 amount=-1 +kerning first=1068 second=1065 amount=-1 +kerning first=8217 second=370 amount=-1 +kerning first=338 second=82 amount=-1 +kerning first=310 second=338 amount=-1 +kerning first=75 second=364 amount=-1 +kerning first=302 second=82 amount=-1 +kerning first=213 second=8217 amount=-2 +kerning first=78 second=277 amount=-1 +kerning first=259 second=108 amount=-1 +kerning first=74 second=325 amount=-1 +kerning first=274 second=338 amount=-1 +kerning first=269 second=254 amount=-1 +kerning first=346 second=365 amount=-1 +kerning first=1056 second=1074 amount=-1 +kerning first=1038 second=1051 amount=-1 +kerning first=121 second=103 amount=-1 +kerning first=272 second=68 amount=-1 +kerning first=225 second=263 amount=-1 +kerning first=85 second=103 amount=-1 +kerning first=274 second=365 amount=-1 +kerning first=74 second=298 amount=-1 +kerning first=66 second=171 amount=-1 +kerning first=1039 second=1097 amount=-1 +kerning first=261 second=263 amount=-1 +kerning first=1075 second=1114 amount=-1 +kerning first=310 second=365 amount=-1 +kerning first=102 second=171 amount=-1 +kerning first=202 second=365 amount=-1 +kerning first=1030 second=1039 amount=-1 +kerning first=66 second=286 amount=-1 +kerning first=114 second=8249 amount=-1 +kerning first=200 second=68 amount=-1 +kerning first=323 second=298 amount=-1 +kerning first=374 second=194 amount=-1 +kerning first=213 second=203 amount=-1 +kerning first=100 second=287 amount=-1 +kerning first=8222 second=211 amount=-1 +kerning first=277 second=287 amount=-1 +kerning first=334 second=374 amount=-1 +kerning first=72 second=203 amount=-1 +kerning first=241 second=287 amount=-1 +kerning first=218 second=199 amount=-1 +kerning first=66 second=270 amount=-1 +kerning first=84 second=263 amount=-1 +kerning first=70 second=117 amount=-1 +kerning first=206 second=100 amount=-1 +kerning first=1054 second=1048 amount=-1 +kerning first=8250 second=202 amount=-1 +kerning first=77 second=220 amount=-1 +kerning first=264 second=83 amount=-1 +kerning first=103 second=324 amount=-1 +kerning first=83 second=77 amount=-1 +kerning first=212 second=330 amount=-1 +kerning first=219 second=304 amount=-1 +kerning first=364 second=246 amount=-1 +kerning first=214 second=356 amount=-1 +kerning first=328 second=246 amount=-1 +kerning first=290 second=220 amount=-1 +kerning first=284 second=330 amount=-1 +kerning first=103 second=339 amount=-1 +kerning first=370 second=103 amount=-1 +kerning first=327 second=304 amount=-1 +kerning first=268 second=218 amount=-1 +kerning first=362 second=220 amount=-1 +kerning first=8250 second=375 amount=-1 +kerning first=368 second=77 amount=-1 +kerning first=298 second=103 amount=-1 +kerning first=69 second=70 amount=-1 +kerning first=78 second=304 amount=-1 +kerning first=1049 second=1031 amount=-1 +kerning first=374 second=197 amount=-1 +kerning first=262 second=103 amount=-1 +kerning first=232 second=333 amount=-1 +kerning first=325 second=278 amount=-1 +kerning first=296 second=77 amount=-1 +kerning first=101 second=100 amount=-1 +kerning first=226 second=103 amount=-1 +kerning first=204 second=74 amount=-1 +kerning first=268 second=333 amount=-1 +kerning first=218 second=220 amount=-1 +kerning first=221 second=382 amount=-1 +kerning first=314 second=246 amount=-1 +kerning first=8217 second=97 amount=-1 +kerning first=85 second=298 amount=-1 +kerning first=211 second=356 amount=-1 +kerning first=339 second=232 amount=-1 +kerning first=1070 second=1030 amount=-1 +kerning first=206 second=246 amount=-1 +kerning first=298 second=298 amount=-1 +kerning first=262 second=298 amount=-1 +kerning first=201 second=330 amount=-1 +kerning first=196 second=220 amount=-1 +kerning first=1039 second=1091 amount=-1 +kerning first=229 second=269 amount=-1 +kerning first=370 second=298 amount=-1 +kerning first=304 second=220 amount=-1 +kerning first=334 second=298 amount=-1 +kerning first=268 second=220 amount=-1 +kerning first=224 second=333 amount=-1 +kerning first=271 second=339 amount=-1 +kerning first=203 second=68 amount=-1 +kerning first=1044 second=1074 amount=-1 +kerning first=1059 second=1040 amount=-1 +kerning first=280 second=211 amount=-1 +kerning first=368 second=333 amount=-1 +kerning first=80 second=382 amount=-1 +kerning first=335 second=8222 amount=-1 +kerning first=45 second=194 amount=-1 +kerning first=235 second=365 amount=-1 +kerning first=296 second=333 amount=-1 +kerning first=81 second=194 amount=-1 +kerning first=263 second=8222 amount=-1 +kerning first=67 second=211 amount=-1 +kerning first=212 second=315 amount=-1 +kerning first=323 second=313 amount=-1 +kerning first=99 second=281 amount=-1 +kerning first=83 second=361 amount=-1 +kerning first=204 second=281 amount=-1 +kerning first=79 second=202 amount=-1 +kerning first=1052 second=1047 amount=-1 +kerning first=261 second=339 amount=-1 +kerning first=240 second=281 amount=-1 +kerning first=8250 second=213 amount=-1 +kerning first=1053 second=1074 amount=-1 +kerning first=284 second=315 amount=-1 +kerning first=89 second=353 amount=-1 +kerning first=268 second=102 amount=-1 +kerning first=1030 second=1051 amount=-1 +kerning first=362 second=264 amount=-1 +kerning first=199 second=111 amount=-1 +kerning first=84 second=339 amount=-1 +kerning first=364 second=202 amount=-1 +kerning first=1041 second=1083 amount=-1 +kerning first=118 second=347 amount=-1 +kerning first=1031 second=1057 amount=-1 +kerning first=118 second=120 amount=-1 +kerning first=68 second=364 amount=-1 +kerning first=187 second=120 amount=-1 +kerning first=218 second=264 amount=-1 +kerning first=314 second=277 amount=-1 +kerning first=223 second=120 amount=-1 +kerning first=220 second=202 amount=-1 +kerning first=1056 second=1025 amount=-1 +kerning first=369 second=339 amount=-1 +kerning first=71 second=315 amount=-1 +kerning first=217 second=251 amount=-1 +kerning first=77 second=264 amount=-1 +kerning first=198 second=212 amount=-1 +kerning first=8218 second=290 amount=-1 +kerning first=65 second=219 amount=-1 +kerning first=70 second=102 amount=-1 +kerning first=288 second=8217 amount=-1 +kerning first=253 second=251 amount=-1 +kerning first=324 second=8217 amount=-2 +kerning first=289 second=251 amount=-1 +kerning first=353 second=8222 amount=-1 +kerning first=85 second=271 amount=-1 +kerning first=75 second=8217 amount=-1 +kerning first=370 second=269 amount=-1 +kerning first=111 second=8217 amount=-2 +kerning first=1043 second=1094 amount=-1 +kerning first=201 second=8221 amount=-1 +kerning first=324 second=245 amount=-1 +kerning first=262 second=271 amount=-1 +kerning first=235 second=111 amount=-1 +kerning first=271 second=111 amount=-1 +kerning first=252 second=245 amount=-1 +kerning first=307 second=111 amount=-1 +kerning first=298 second=271 amount=-1 +kerning first=345 second=8221 amount=-1 +kerning first=207 second=353 amount=-1 +kerning first=381 second=8221 amount=-1 +kerning first=1036 second=1101 amount=-1 +kerning first=1065 second=1092 amount=-1 +kerning first=209 second=334 amount=-1 +kerning first=258 second=221 amount=-1 +kerning first=1053 second=1101 amount=-1 +kerning first=220 second=229 amount=-1 +kerning first=86 second=331 amount=-1 +kerning first=1030 second=1024 amount=-1 +kerning first=1043 second=1075 amount=-1 +kerning first=72 second=67 amount=-1 +kerning first=219 second=267 amount=-1 +kerning first=205 second=233 amount=-1 +kerning first=210 second=203 amount=-1 +kerning first=99 second=254 amount=-1 +kerning first=1056 second=1044 amount=-1 +kerning first=229 second=277 amount=-1 +kerning first=100 second=233 amount=-1 +kerning first=282 second=203 amount=-1 +kerning first=323 second=8221 amount=-1 +kerning first=73 second=280 amount=-1 +kerning first=201 second=357 amount=-1 +kerning first=241 second=233 amount=-1 +kerning first=268 second=274 amount=-1 +kerning first=214 second=280 amount=-1 +kerning first=234 second=117 amount=-1 +kerning first=69 second=203 amount=-1 +kerning first=277 second=233 amount=-1 +kerning first=187 second=374 amount=-2 +kerning first=1066 second=1024 amount=-1 +kerning first=286 second=280 amount=-1 +kerning first=228 second=263 amount=-1 +kerning first=264 second=263 amount=-1 +kerning first=201 second=76 amount=-1 +kerning first=82 second=374 amount=-1 +kerning first=1031 second=1084 amount=-1 +kerning first=219 second=363 amount=-1 +kerning first=187 second=207 amount=-1 +kerning first=198 second=288 amount=-1 +kerning first=255 second=363 amount=-1 +kerning first=302 second=201 amount=-1 +kerning first=291 second=363 amount=-1 +kerning first=368 second=213 amount=-1 +kerning first=338 second=201 amount=-1 +kerning first=275 second=122 amount=-1 +kerning first=327 second=70 amount=-1 +kerning first=235 second=311 amount=-1 +kerning first=374 second=245 amount=-1 +kerning first=264 second=317 amount=-1 +kerning first=266 second=201 amount=-1 +kerning first=325 second=224 amount=-1 +kerning first=1048 second=1104 amount=-1 +kerning first=217 second=224 amount=-1 +kerning first=219 second=103 amount=-1 +kerning first=86 second=250 amount=-1 +kerning first=98 second=122 amount=-1 +kerning first=255 second=316 amount=-1 +kerning first=110 second=113 amount=-1 +kerning first=272 second=204 amount=-1 +kerning first=209 second=382 amount=-1 +kerning first=1091 second=1093 amount=-1 +kerning first=85 second=244 amount=-1 +kerning first=79 second=256 amount=-1 +kerning first=200 second=204 amount=-1 +kerning first=74 second=259 amount=-1 +kerning first=195 second=354 amount=-1 +kerning first=323 second=259 amount=-1 +kerning first=226 second=244 amount=-1 +kerning first=70 second=79 amount=-1 +kerning first=262 second=244 amount=-1 +kerning first=282 second=116 amount=-1 +kerning first=362 second=210 amount=-1 +kerning first=298 second=244 amount=-1 +kerning first=1042 second=1096 amount=-1 +kerning first=364 second=256 amount=-1 +kerning first=218 second=210 amount=-1 +kerning first=1078 second=1096 amount=-1 +kerning first=77 second=210 amount=-1 +kerning first=99 second=363 amount=-1 +kerning first=327 second=283 amount=-1 +kerning first=1096 second=1095 amount=-1 +kerning first=202 second=262 amount=-1 +kerning first=220 second=256 amount=-1 +kerning first=66 second=345 amount=-1 +kerning first=274 second=262 amount=-1 +kerning first=217 second=355 amount=-1 +kerning first=1033 second=1049 amount=-1 +kerning first=234 second=98 amount=-1 +kerning first=264 second=298 amount=-1 +kerning first=1043 second=1102 amount=-1 +kerning first=211 second=302 amount=-1 +kerning first=286 second=73 amount=-1 +kerning first=277 second=248 amount=-1 +kerning first=204 second=335 amount=-1 +kerning first=207 second=345 amount=-1 +kerning first=243 second=345 amount=-1 +kerning first=258 second=107 amount=-1 +kerning first=279 second=345 amount=-1 +kerning first=350 second=219 amount=-1 +kerning first=240 second=335 amount=-1 +kerning first=296 second=213 amount=-1 +kerning first=70 second=302 amount=-1 +kerning first=203 second=268 amount=-1 +kerning first=278 second=219 amount=-1 +kerning first=205 second=206 amount=-1 +kerning first=1068 second=1070 amount=-1 +kerning first=206 second=219 amount=-1 +kerning first=263 second=277 amount=-1 +kerning first=266 second=368 amount=-1 +kerning first=352 second=8221 amount=-1 +kerning first=227 second=277 amount=-1 +kerning first=8249 second=374 amount=-1 +kerning first=302 second=368 amount=-1 +kerning first=338 second=368 amount=-1 +kerning first=73 second=226 amount=-1 +kerning first=86 second=81 amount=-1 +kerning first=87 second=290 amount=-1 +kerning first=85 second=217 amount=-1 +kerning first=73 second=73 amount=-1 +kerning first=1053 second=1047 amount=-1 +kerning first=192 second=290 amount=-1 +kerning first=214 second=73 amount=-1 +kerning first=194 second=368 amount=-1 +kerning first=328 second=283 amount=-1 +kerning first=122 second=8249 amount=-1 +kerning first=217 second=197 amount=-1 +kerning first=1056 second=1092 amount=-1 +kerning first=364 second=283 amount=-1 +kerning first=199 second=338 amount=-1 +kerning first=1054 second=1084 amount=-1 +kerning first=202 second=82 amount=-1 +kerning first=8222 second=246 amount=-1 +kerning first=289 second=245 amount=-1 +kerning first=263 second=8249 amount=-1 +kerning first=86 second=277 amount=-1 +kerning first=1062 second=1057 amount=-1 +kerning first=274 second=82 amount=-1 +kerning first=323 second=286 amount=-1 +kerning first=230 second=120 amount=-1 +kerning first=212 second=282 amount=-1 +kerning first=220 second=283 amount=-1 +kerning first=1036 second=1086 amount=-1 +kerning first=1118 second=1097 amount=-1 +kerning first=251 second=99 amount=-1 +kerning first=271 second=45 amount=-1 +kerning first=1060 second=1068 amount=-1 +kerning first=370 second=244 amount=-1 +kerning first=199 second=45 amount=-1 +kerning first=199 second=171 amount=-1 +kerning first=69 second=116 amount=-1 +kerning first=287 second=113 amount=-1 +kerning first=207 second=79 amount=-1 +kerning first=323 second=113 amount=-1 +kerning first=97 second=235 amount=-1 +kerning first=307 second=171 amount=-1 +kerning first=1053 second=1048 amount=-1 +kerning first=74 second=286 amount=-1 +kerning first=251 second=113 amount=-1 +kerning first=86 second=8249 amount=-2 +kerning first=218 second=350 amount=-1 +kerning first=219 second=70 amount=-1 +kerning first=246 second=8250 amount=-1 +kerning first=263 second=104 amount=-1 +kerning first=304 second=274 amount=-1 +kerning first=77 second=350 amount=-1 +kerning first=1041 second=1056 amount=-1 +kerning first=1048 second=1077 amount=-1 +kerning first=87 second=117 amount=-1 +kerning first=262 second=226 amount=-1 +kerning first=217 second=344 amount=-1 +kerning first=1118 second=1085 amount=-1 +kerning first=282 second=284 amount=-1 +kerning first=375 second=115 amount=-1 +kerning first=84 second=231 amount=-1 +kerning first=220 second=310 amount=-1 +kerning first=351 second=318 amount=-1 +kerning first=1046 second=1085 amount=-1 +kerning first=8217 second=250 amount=-1 +kerning first=74 second=205 amount=-1 +kerning first=8218 second=85 amount=-1 +kerning first=1071 second=1053 amount=-1 +kerning first=79 second=310 amount=-1 +kerning first=231 second=115 amount=-1 +kerning first=323 second=205 amount=-1 +kerning first=69 second=284 amount=-1 +kerning first=267 second=115 amount=-1 +kerning first=339 second=115 amount=-1 +kerning first=243 second=106 amount=-1 +kerning first=369 second=231 amount=-1 +kerning first=279 second=106 amount=-1 +kerning first=1054 second=1036 amount=-1 +kerning first=1105 second=1091 amount=-1 +kerning first=80 second=89 amount=-1 +kerning first=203 second=214 amount=-1 +kerning first=225 second=231 amount=-1 +kerning first=261 second=231 amount=-1 +kerning first=364 second=310 amount=-1 +kerning first=201 second=217 amount=-1 +kerning first=1047 second=1044 amount=-1 +kerning first=83 second=45 amount=-1 +kerning first=119 second=45 amount=-1 +kerning first=78 second=97 amount=-1 +kerning first=88 second=365 amount=-1 +kerning first=72 second=235 amount=-1 +kerning first=287 second=333 amount=-1 +kerning first=283 second=243 amount=-1 +kerning first=65 second=332 amount=-1 +kerning first=108 second=235 amount=-1 +kerning first=260 second=45 amount=-1 +kerning first=355 second=243 amount=-1 +kerning first=205 second=353 amount=-1 +kerning first=232 second=281 amount=-1 +kerning first=278 second=332 amount=-1 +kerning first=366 second=275 amount=-1 +kerning first=1062 second=1028 amount=-1 +kerning first=224 second=45 amount=-1 +kerning first=277 second=353 amount=-1 +kerning first=209 second=71 amount=-1 +kerning first=117 second=275 amount=-1 +kerning first=1048 second=1050 amount=-1 +kerning first=8220 second=368 amount=-1 +kerning first=193 second=362 amount=-1 +kerning first=1034 second=1067 amount=-1 +kerning first=86 second=223 amount=-1 +kerning first=8250 second=67 amount=-1 +kerning first=368 second=45 amount=-2 +kerning first=1030 second=1096 amount=-1 +kerning first=219 second=97 amount=-1 +kerning first=77 second=323 amount=-1 +kerning first=263 second=223 amount=-1 +kerning first=106 second=243 amount=-1 +kerning first=84 second=226 amount=-1 +kerning first=70 second=243 amount=-1 +kerning first=274 second=370 amount=-1 +kerning first=197 second=107 amount=-1 +kerning first=45 second=302 amount=-1 +kerning first=228 second=122 amount=-1 +kerning first=1071 second=1080 amount=-1 +kerning first=310 second=370 amount=-1 +kerning first=323 second=232 amount=-1 +kerning first=81 second=302 amount=-1 +kerning first=87 second=122 amount=-1 +kerning first=202 second=370 amount=-1 +kerning first=364 second=337 amount=-1 +kerning first=287 second=232 amount=-1 +kerning first=78 second=336 amount=-1 +kerning first=218 second=323 amount=-1 +kerning first=328 second=337 amount=-1 +kerning first=251 second=232 amount=-1 +kerning first=117 second=234 amount=-1 +kerning first=268 second=266 amount=-1 +kerning first=219 second=336 amount=-1 +kerning first=346 second=370 amount=-1 +kerning first=220 second=337 amount=-1 +kerning first=217 second=317 amount=-1 +kerning first=362 second=323 amount=-1 +kerning first=241 second=119 amount=-1 +kerning first=8217 second=277 amount=-1 +kerning first=327 second=336 amount=-1 +kerning first=242 second=8250 amount=-1 +kerning first=201 second=249 amount=-1 +kerning first=8222 second=122 amount=-1 +kerning first=1030 second=1105 amount=-1 +kerning first=1060 second=1041 amount=-1 +kerning first=101 second=8250 amount=-1 +kerning first=266 second=314 amount=-1 +kerning first=264 second=122 amount=-1 +kerning first=259 second=234 amount=-1 +kerning first=110 second=232 amount=-1 +kerning first=230 second=314 amount=-1 +kerning first=1047 second=1071 amount=-1 +kerning first=344 second=45 amount=-1 +kerning first=74 second=232 amount=-1 +kerning first=8217 second=242 amount=-1 +kerning first=325 second=171 amount=-1 +kerning first=72 second=267 amount=-1 +kerning first=108 second=267 amount=-1 +kerning first=65 second=105 amount=-1 +kerning first=281 second=98 amount=-1 +kerning first=217 second=110 amount=-1 +kerning first=325 second=110 amount=-1 +kerning first=289 second=110 amount=-1 +kerning first=368 second=72 amount=-1 +kerning first=1049 second=1036 amount=-1 +kerning first=314 second=269 amount=-1 +kerning first=302 second=114 amount=-1 +kerning first=1048 second=1079 amount=-1 +kerning first=199 second=225 amount=-1 +kerning first=266 second=114 amount=-1 +kerning first=72 second=103 amount=-1 +kerning first=264 second=290 amount=-1 +kerning first=374 second=114 amount=-1 +kerning first=1104 second=1097 amount=-1 +kerning first=302 second=211 amount=-1 +kerning first=330 second=302 amount=-1 +kerning first=330 second=231 amount=-1 +kerning first=249 second=267 amount=-1 +kerning first=89 second=114 amount=-1 +kerning first=214 second=46 amount=-1 +kerning first=218 second=115 amount=-1 +kerning first=230 second=114 amount=-1 +kerning first=1038 second=1046 amount=-1 +kerning first=243 second=318 amount=-1 +kerning first=229 second=335 amount=-1 +kerning first=194 second=114 amount=-1 +kerning first=99 second=8250 amount=-1 +kerning first=279 second=318 amount=-1 +kerning first=77 second=69 amount=-1 +kerning first=339 second=273 amount=-1 +kerning first=199 second=380 amount=-1 +kerning first=204 second=227 amount=-1 +kerning first=267 second=273 amount=-1 +kerning first=231 second=273 amount=-1 +kerning first=290 second=296 amount=-1 +kerning first=350 second=78 amount=-1 +kerning first=366 second=102 amount=-1 +kerning first=234 second=337 amount=-1 +kerning first=346 second=117 amount=-1 +kerning first=218 second=296 amount=-1 +kerning first=364 second=364 amount=-1 +kerning first=245 second=44 amount=-1 +kerning first=354 second=111 amount=-1 +kerning first=206 second=78 amount=-1 +kerning first=281 second=44 amount=-1 +kerning first=362 second=296 amount=-1 +kerning first=278 second=78 amount=-1 +kerning first=209 second=44 amount=-1 +kerning first=1047 second=1098 amount=-1 +kerning first=304 second=355 amount=-1 +kerning first=366 second=248 amount=-1 +kerning first=73 second=334 amount=-1 +kerning first=327 second=282 amount=-1 +kerning first=232 second=355 amount=-1 +kerning first=196 second=355 amount=-1 +kerning first=353 second=44 amount=-1 +kerning first=1041 second=1024 amount=-1 +kerning first=219 second=282 amount=-1 +kerning first=230 second=287 amount=-1 +kerning first=187 second=288 amount=-1 +kerning first=45 second=221 amount=-2 +kerning first=1076 second=1091 amount=-1 +kerning first=82 second=288 amount=-1 +kerning first=78 second=282 amount=-1 +kerning first=217 second=8250 amount=-2 +kerning first=354 second=230 amount=-1 +kerning first=67 second=346 amount=-1 +kerning first=8222 second=382 amount=-1 +kerning first=1059 second=1089 amount=-1 +kerning first=217 second=83 amount=-1 +kerning first=1038 second=1073 amount=-1 +kerning first=351 second=291 amount=-1 +kerning first=262 second=352 amount=-1 +kerning first=194 second=87 amount=-1 +kerning first=325 second=83 amount=-1 +kerning first=279 second=291 amount=-1 +kerning first=243 second=291 amount=-1 +kerning first=370 second=352 amount=-1 +kerning first=307 second=99 amount=-1 +kerning first=298 second=352 amount=-1 +kerning first=200 second=76 amount=-1 +kerning first=268 second=282 amount=-1 +kerning first=339 second=8218 amount=-1 +kerning first=334 second=325 amount=-1 +kerning first=307 second=279 amount=-1 +kerning first=199 second=279 amount=-1 +kerning first=347 second=187 amount=-1 +kerning first=350 second=278 amount=-1 +kerning first=248 second=108 amount=-1 +kerning first=231 second=8218 amount=-1 +kerning first=235 second=279 amount=-1 +kerning first=78 second=211 amount=-1 +kerning first=266 second=362 amount=-1 +kerning first=1077 second=1119 amount=-1 +kerning first=70 second=211 amount=-1 +kerning first=78 second=68 amount=-1 +kerning first=77 second=269 amount=-1 +kerning first=210 second=84 amount=-1 +kerning first=8217 second=223 amount=-1 +kerning first=8217 second=226 amount=-1 +kerning first=221 second=71 amount=-1 +kerning first=88 second=362 amount=-1 +kerning first=98 second=187 amount=-1 +kerning first=218 second=269 amount=-1 +kerning first=224 second=99 amount=-1 +kerning first=97 second=316 amount=-1 +kerning first=219 second=211 amount=-1 +kerning first=362 second=269 amount=-1 +kerning first=81 second=75 amount=-1 +kerning first=232 second=382 amount=-1 +kerning first=217 second=371 amount=-1 +kerning first=368 second=99 amount=-1 +kerning first=1044 second=1082 amount=-1 +kerning first=268 second=382 amount=-1 +kerning first=203 second=187 amount=-1 +kerning first=198 second=266 amount=-1 +kerning first=304 second=382 amount=-1 +kerning first=1062 second=1082 amount=-1 +kerning first=296 second=99 amount=-1 +kerning first=326 second=269 amount=-1 +kerning first=8250 second=86 amount=-2 +kerning first=89 second=260 amount=-1 +kerning first=200 second=117 amount=-1 +kerning first=1076 second=1083 amount=-1 +kerning first=366 second=8220 amount=-1 +kerning first=330 second=248 amount=-1 +kerning first=1059 second=1116 amount=-1 +kerning first=277 second=380 amount=-1 +kerning first=66 second=350 amount=-1 +kerning first=288 second=218 amount=-1 +kerning first=1067 second=1030 amount=-1 +kerning first=275 second=103 amount=-1 +kerning first=1068 second=1043 amount=-1 +kerning first=1038 second=1100 amount=-1 +kerning first=366 second=75 amount=-1 +kerning first=330 second=75 amount=-1 +kerning first=117 second=248 amount=-1 +kerning first=207 second=264 amount=-1 +kerning first=374 second=260 amount=-1 +kerning first=264 second=209 amount=-1 +kerning first=81 second=8220 amount=-2 +kerning first=362 second=69 amount=-1 +kerning first=85 second=325 amount=-1 +kerning first=66 second=193 amount=-1 +kerning first=220 second=364 amount=-1 +kerning first=66 second=264 amount=-1 +kerning first=70 second=270 amount=-1 +kerning first=270 second=66 amount=-1 +kerning first=99 second=367 amount=-1 +kerning first=86 second=196 amount=-1 +kerning first=258 second=8220 amount=-2 +kerning first=65 second=251 amount=-1 +kerning first=222 second=8220 amount=-2 +kerning first=218 second=69 amount=-1 +kerning first=79 second=364 amount=-1 +kerning first=198 second=66 amount=-1 +kerning first=262 second=325 amount=-1 +kerning first=211 second=270 amount=-1 +kerning first=226 second=316 amount=-1 +kerning first=100 second=380 amount=-1 +kerning first=107 second=108 amount=-1 +kerning first=1052 second=1073 amount=-1 +kerning first=335 second=8217 amount=-2 +kerning first=193 second=264 amount=-1 +kerning first=350 second=8221 amount=-1 +kerning first=355 second=351 amount=-1 +kerning first=244 second=8218 amount=-1 +kerning first=101 second=251 amount=-1 +kerning first=103 second=103 amount=-1 +kerning first=270 second=364 amount=-1 +kerning first=88 second=264 amount=-1 +kerning first=269 second=122 amount=-1 +kerning first=1055 second=1034 amount=-1 +kerning first=283 second=351 amount=-1 +kerning first=1055 second=1024 amount=-1 +kerning first=350 second=251 amount=-1 +kerning first=204 second=69 amount=-1 +kerning first=296 second=338 amount=-1 +kerning first=252 second=277 amount=-1 +kerning first=108 second=316 amount=-1 +kerning first=278 second=251 amount=-1 +kerning first=263 second=8217 amount=-2 +kerning first=314 second=251 amount=-1 +kerning first=1065 second=1060 amount=-1 +kerning first=252 second=232 amount=-1 +kerning first=325 second=273 amount=-1 +kerning first=1071 second=1050 amount=-1 +kerning first=85 second=8221 amount=-1 +kerning first=72 second=99 amount=-1 +kerning first=121 second=8221 amount=-2 +kerning first=193 second=268 amount=-1 +kerning first=1041 second=1051 amount=-1 +kerning first=226 second=8221 amount=-2 +kerning first=1064 second=1064 amount=-1 +kerning first=221 second=193 amount=-1 +kerning first=249 second=99 amount=-1 +kerning first=211 second=351 amount=-1 +kerning first=204 second=286 amount=-1 +kerning first=218 second=242 amount=-1 +kerning first=108 second=99 amount=-1 +kerning first=77 second=242 amount=-1 +kerning first=356 second=347 amount=-1 +kerning first=326 second=242 amount=-1 +kerning first=8250 second=365 amount=-1 +kerning first=1056 second=1030 amount=-1 +kerning first=282 second=171 amount=-1 +kerning first=362 second=242 amount=-1 +kerning first=1066 second=1056 amount=-1 +kerning first=354 second=171 amount=-1 +kerning first=264 second=78 amount=-1 +kerning first=199 second=333 amount=-1 +kerning first=323 second=246 amount=-1 +kerning first=370 second=113 amount=-1 +kerning first=70 second=8250 amount=-2 +kerning first=65 second=118 amount=-1 +kerning first=78 second=44 amount=-1 +kerning first=205 second=282 amount=-1 +kerning first=330 second=346 amount=-1 +kerning first=275 second=100 amount=-1 +kerning first=230 second=233 amount=-1 +kerning first=8218 second=117 amount=-1 +kerning first=86 second=8217 amount=-1 +kerning first=89 second=233 amount=-1 +kerning first=122 second=8217 amount=-1 +kerning first=1049 second=1091 amount=-1 +kerning first=69 second=171 amount=-1 +kerning first=72 second=111 amount=-1 +kerning first=105 second=171 amount=-1 +kerning first=374 second=233 amount=-1 +kerning first=89 second=117 amount=-1 +kerning first=266 second=233 amount=-1 +kerning first=302 second=233 amount=-1 +kerning first=74 second=71 amount=-1 +kerning first=1056 second=1108 amount=-1 +kerning first=298 second=330 amount=-1 +kerning first=1069 second=1034 amount=-1 +kerning first=325 second=246 amount=-1 +kerning first=73 second=68 amount=-1 +kerning first=356 second=103 amount=-1 +kerning first=289 second=365 amount=-1 +kerning first=80 second=220 amount=-1 +kerning first=246 second=382 amount=-1 +kerning first=1054 second=1065 amount=-1 +kerning first=66 second=374 amount=-1 +kerning first=211 second=194 amount=-1 +kerning first=217 second=246 amount=-1 +kerning first=248 second=103 amount=-1 +kerning first=368 second=365 amount=-1 +kerning first=346 second=77 amount=-1 +kerning first=375 second=45 amount=-1 +kerning first=354 second=382 amount=-1 +kerning first=85 second=330 amount=-1 +kerning first=108 second=289 amount=-1 +kerning first=253 second=316 amount=-1 +kerning first=107 second=103 amount=-1 +kerning first=263 second=109 amount=-1 +kerning first=1078 second=1074 amount=-1 +kerning first=253 second=8218 amount=-1 +kerning first=70 second=194 amount=-1 +kerning first=1068 second=1048 amount=-1 +kerning first=217 second=8218 amount=-2 +kerning first=214 second=68 amount=-1 +kerning first=370 second=330 amount=-1 +kerning first=119 second=365 amount=-1 +kerning first=8220 second=260 amount=-2 +kerning first=271 second=171 amount=-1 +kerning first=286 second=68 amount=-1 +kerning first=83 second=365 amount=-1 +kerning first=296 second=334 amount=-1 +kerning first=73 second=339 amount=-1 +kerning first=204 second=313 amount=-1 +kerning first=251 second=281 amount=-1 +kerning first=1085 second=1095 amount=-1 +kerning first=287 second=281 amount=-1 +kerning first=334 second=86 amount=-1 +kerning first=212 second=347 amount=-1 +kerning first=72 second=355 amount=-1 +kerning first=323 second=281 amount=-1 +kerning first=1033 second=1041 amount=-1 +kerning first=272 second=8220 amount=-2 +kerning first=112 second=8218 amount=-1 +kerning first=86 second=109 amount=-1 +kerning first=87 second=353 amount=-1 +kerning first=380 second=8220 amount=-1 +kerning first=1049 second=1095 amount=-1 +kerning first=344 second=8220 amount=-1 +kerning first=1031 second=1025 amount=-1 +kerning first=316 second=277 amount=-1 +kerning first=274 second=77 amount=-1 +kerning first=234 second=120 amount=-1 +kerning first=202 second=77 amount=-1 +kerning first=187 second=315 amount=-1 +kerning first=250 second=339 amount=-1 +kerning first=8218 second=105 amount=-1 +kerning first=8217 second=326 amount=-1 +kerning first=74 second=281 amount=-1 +kerning first=1052 second=1100 amount=-1 +kerning first=1070 second=1070 amount=-1 +kerning first=110 second=281 amount=-1 +kerning first=110 second=118 amount=-1 +kerning first=201 second=298 amount=-1 +kerning first=272 second=356 amount=-1 +kerning first=68 second=202 amount=-1 +kerning first=1053 second=1042 amount=-1 +kerning first=288 second=8249 amount=-1 +kerning first=78 second=368 amount=-1 +kerning first=204 second=232 amount=-1 +kerning first=302 second=206 amount=-1 +kerning first=105 second=232 amount=-1 +kerning first=324 second=8249 amount=-1 +kerning first=284 second=76 amount=-1 +kerning first=338 second=206 amount=-1 +kerning first=370 second=357 amount=-1 +kerning first=99 second=232 amount=-1 +kerning first=74 second=335 amount=-1 +kerning first=1028 second=1118 amount=-1 +kerning first=219 second=368 amount=-1 +kerning first=212 second=76 amount=-1 +kerning first=266 second=206 amount=-1 +kerning first=76 second=219 amount=-1 +kerning first=262 second=357 amount=-1 +kerning first=8250 second=121 amount=-1 +kerning first=110 second=335 amount=-1 +kerning first=1064 second=1118 amount=-1 +kerning first=251 second=335 amount=-1 +kerning first=240 second=232 amount=-1 +kerning first=298 second=357 amount=-1 +kerning first=203 second=344 amount=-1 +kerning first=8222 second=79 amount=-1 +kerning first=344 second=85 amount=-1 +kerning first=75 second=8249 amount=-1 +kerning first=234 second=234 amount=-1 +kerning first=77 second=332 amount=-1 +kerning first=264 second=241 amount=-1 +kerning first=272 second=85 amount=-1 +kerning first=8250 second=338 amount=-1 +kerning first=67 second=102 amount=-1 +kerning first=72 second=262 amount=-1 +kerning first=200 second=85 amount=-1 +kerning first=327 second=368 amount=-1 +kerning first=1069 second=1044 amount=-1 +kerning first=252 second=8249 amount=-1 +kerning first=368 second=67 amount=-1 +kerning first=1042 second=1042 amount=-1 +kerning first=258 second=216 amount=-1 +kerning first=296 second=67 amount=-1 +kerning first=275 second=46 amount=-1 +kerning first=286 second=366 amount=-1 +kerning first=330 second=216 amount=-1 +kerning first=70 second=378 amount=-1 +kerning first=347 second=46 amount=-1 +kerning first=258 second=213 amount=-1 +kerning first=214 second=366 amount=-1 +kerning first=73 second=366 amount=-1 +kerning first=1036 second=1081 amount=-1 +kerning first=366 second=216 amount=-1 +kerning first=87 second=241 amount=-1 +kerning first=85 second=357 amount=-1 +kerning first=296 second=284 amount=-1 +kerning first=86 second=353 amount=-1 +kerning first=89 second=363 amount=-1 +kerning first=202 second=325 amount=-1 +kerning first=74 second=103 amount=-1 +kerning first=195 second=252 amount=-1 +kerning first=354 second=225 amount=-1 +kerning first=207 second=350 amount=-1 +kerning first=194 second=363 amount=-1 +kerning first=211 second=80 amount=-1 +kerning first=230 second=363 amount=-1 +kerning first=209 second=229 amount=-1 +kerning first=263 second=353 amount=-1 +kerning first=1065 second=1114 amount=-1 +kerning first=45 second=216 amount=-1 +kerning first=70 second=80 amount=-1 +kerning first=75 second=8222 amount=-1 +kerning first=352 second=70 amount=-1 +kerning first=270 second=207 amount=-1 +kerning first=204 second=73 amount=-1 +kerning first=70 second=107 amount=-1 +kerning first=75 second=250 amount=-1 +kerning first=1033 second=1071 amount=-1 +kerning first=256 second=8220 amount=-2 +kerning first=119 second=311 amount=-1 +kerning first=1069 second=1071 amount=-1 +kerning first=8217 second=353 amount=-1 +kerning first=280 second=70 amount=-1 +kerning first=118 second=369 amount=-1 +kerning first=283 second=378 amount=-1 +kerning first=298 second=113 amount=-1 +kerning first=205 second=201 amount=-1 +kerning first=1041 second=1070 amount=-1 +kerning first=310 second=44 amount=-1 +kerning first=226 second=113 amount=-1 +kerning first=288 second=8222 amount=-1 +kerning first=262 second=113 amount=-1 +kerning first=235 second=116 amount=-1 +kerning first=216 second=8222 amount=-1 +kerning first=1049 second=1068 amount=-1 +kerning first=199 second=116 amount=-1 +kerning first=326 second=118 amount=-1 +kerning first=203 second=317 amount=-1 +kerning first=111 second=8222 amount=-1 +kerning first=85 second=113 amount=-1 +kerning first=198 second=207 amount=-1 +kerning first=99 second=259 amount=-1 +kerning first=264 second=268 amount=-1 +kerning first=8217 second=109 amount=-1 +kerning first=192 second=268 amount=-1 +kerning first=1036 second=1108 amount=-1 +kerning first=195 second=332 amount=-1 +kerning first=8217 second=194 amount=-2 +kerning first=263 second=326 amount=-1 +kerning first=272 second=302 amount=-1 +kerning first=1054 second=1038 amount=-1 +kerning first=68 second=256 amount=-1 +kerning first=118 second=98 amount=-1 +kerning first=200 second=302 amount=-1 +kerning first=1053 second=1096 amount=-1 +kerning first=193 second=210 amount=-1 +kerning first=323 second=335 amount=-1 +kerning first=287 second=335 amount=-1 +kerning first=88 second=210 amount=-1 +kerning first=210 second=198 amount=-1 +kerning first=203 second=73 amount=-1 +kerning first=324 second=277 amount=-1 +kerning first=73 second=122 amount=-1 +kerning first=264 second=234 amount=-1 +kerning first=1044 second=1114 amount=-1 +kerning first=87 second=268 amount=-1 +kerning first=325 second=219 amount=-1 +kerning first=283 second=107 amount=-1 +kerning first=202 second=213 amount=-1 +kerning first=264 second=187 amount=-1 +kerning first=194 second=336 amount=-1 +kerning first=79 second=88 amount=-1 +kerning first=192 second=187 amount=-1 +kerning first=66 second=323 amount=-1 +kerning first=354 second=279 amount=-1 +kerning first=266 second=336 amount=-1 +kerning first=228 second=187 amount=-1 +kerning first=263 second=117 amount=-1 +kerning first=302 second=336 amount=-1 +kerning first=74 second=200 amount=-1 +kerning first=81 second=270 amount=-1 +kerning first=204 second=362 amount=-1 +kerning first=241 second=118 amount=-1 +kerning first=338 second=336 amount=-1 +kerning first=310 second=213 amount=-1 +kerning first=8217 second=245 amount=-1 +kerning first=267 second=8250 amount=-1 +kerning first=374 second=336 amount=-1 +kerning first=274 second=213 amount=-1 +kerning first=231 second=8250 amount=-1 +kerning first=1048 second=1045 amount=-1 +kerning first=207 second=323 amount=-1 +kerning first=209 second=283 amount=-1 +kerning first=194 second=119 amount=-1 +kerning first=105 second=279 amount=-1 +kerning first=356 second=244 amount=-1 +kerning first=192 second=371 amount=-1 +kerning first=82 second=266 amount=-1 +kerning first=121 second=314 amount=-1 +kerning first=187 second=266 amount=-1 +kerning first=87 second=187 amount=-1 +kerning first=206 second=327 amount=-1 +kerning first=323 second=200 amount=-1 +kerning first=73 second=204 amount=-1 +kerning first=278 second=327 amount=-1 +kerning first=106 second=248 amount=-1 +kerning first=291 second=314 amount=-1 +kerning first=268 second=79 amount=-1 +kerning first=209 second=66 amount=-1 +kerning first=70 second=248 amount=-1 +kerning first=255 second=314 amount=-1 +kerning first=304 second=79 amount=-1 +kerning first=1060 second=1036 amount=-1 +kerning first=327 second=171 amount=-1 +kerning first=1056 second=1052 amount=-1 +kerning first=206 second=110 amount=-1 +kerning first=68 second=66 amount=-1 +kerning first=1070 second=1062 amount=-1 +kerning first=281 second=283 amount=-1 +kerning first=120 second=318 amount=-1 +kerning first=196 second=79 amount=-1 +kerning first=113 second=318 amount=-1 +kerning first=229 second=245 amount=-1 +kerning first=67 second=70 amount=-1 +kerning first=88 second=367 amount=-1 +kerning first=111 second=380 amount=-1 +kerning first=254 second=318 amount=-1 +kerning first=193 second=367 amount=-1 +kerning first=217 second=192 amount=-1 +kerning first=267 second=305 amount=-1 +kerning first=328 second=231 amount=-1 +kerning first=339 second=44 amount=-1 +kerning first=231 second=305 amount=-1 +kerning first=199 second=257 amount=-1 +kerning first=203 second=209 amount=-1 +kerning first=1064 second=1089 amount=-1 +kerning first=80 second=274 amount=-1 +kerning first=1047 second=1049 amount=-1 +kerning first=366 second=270 amount=-1 +kerning first=197 second=356 amount=-1 +kerning first=1048 second=1072 amount=-1 +kerning first=338 second=363 amount=-1 +kerning first=8217 second=218 amount=-1 +kerning first=374 second=363 amount=-1 +kerning first=68 second=310 amount=-1 +kerning first=205 second=114 amount=-1 +kerning first=282 second=252 amount=-1 +kerning first=241 second=8249 amount=-1 +kerning first=218 second=101 amount=-1 +kerning first=219 second=79 amount=-1 +kerning first=199 second=284 amount=-1 +kerning first=364 second=115 amount=-1 +kerning first=326 second=101 amount=-1 +kerning first=79 second=115 amount=-1 +kerning first=242 second=114 amount=-1 +kerning first=204 second=205 amount=-1 +kerning first=66 second=296 amount=-1 +kerning first=65 second=354 amount=-1 +kerning first=1058 second=1098 amount=-1 +kerning first=71 second=217 amount=-1 +kerning first=362 second=101 amount=-1 +kerning first=220 second=115 amount=-1 +kerning first=192 second=214 amount=-1 +kerning first=250 second=231 amount=-1 +kerning first=1056 second=1036 amount=-1 +kerning first=212 second=217 amount=-1 +kerning first=87 second=214 amount=-1 +kerning first=232 second=106 amount=-1 +kerning first=207 second=296 amount=-1 +kerning first=284 second=217 amount=-1 +kerning first=210 second=89 amount=-1 +kerning first=229 second=8220 amount=-2 +kerning first=73 second=231 amount=-1 +kerning first=109 second=231 amount=-1 +kerning first=193 second=220 amount=-1 +kerning first=264 second=214 amount=-1 +kerning first=264 second=344 amount=-1 +kerning first=209 second=310 amount=-1 +kerning first=69 second=252 amount=-1 +kerning first=100 second=8249 amount=-1 +kerning first=242 second=187 amount=-1 +kerning first=330 second=243 amount=-1 +kerning first=283 second=275 amount=-1 +kerning first=77 second=345 amount=-1 +kerning first=224 second=235 amount=-1 +kerning first=370 second=249 amount=-1 +kerning first=366 second=80 amount=-1 +kerning first=355 second=275 amount=-1 +kerning first=366 second=243 amount=-1 +kerning first=1071 second=1031 amount=-1 +kerning first=108 second=45 amount=-1 +kerning first=198 second=71 amount=-1 +kerning first=1049 second=1043 amount=-1 +kerning first=296 second=235 amount=-1 +kerning first=121 second=249 amount=-1 +kerning first=255 second=287 amount=-1 +kerning first=106 second=275 amount=-1 +kerning first=218 second=345 amount=-1 +kerning first=187 second=223 amount=-1 +kerning first=254 second=345 amount=-1 +kerning first=368 second=235 amount=-1 +kerning first=72 second=45 amount=-1 +kerning first=290 second=345 amount=-1 +kerning first=8218 second=268 amount=-1 +kerning first=326 second=345 amount=-1 +kerning first=362 second=345 amount=-1 +kerning first=81 second=80 amount=-1 +kerning first=363 second=287 amount=-1 +kerning first=70 second=275 amount=-1 +kerning first=206 second=83 amount=-1 +kerning first=45 second=80 amount=-1 +kerning first=249 second=45 amount=-1 +kerning first=67 second=97 amount=-1 +kerning first=1118 second=1080 amount=-1 +kerning first=117 second=243 amount=-1 +kerning first=1046 second=1080 amount=-1 +kerning first=89 second=336 amount=-1 +kerning first=1060 second=1063 amount=-1 +kerning first=75 second=223 amount=-1 +kerning first=281 second=337 amount=-1 +kerning first=68 second=195 amount=-1 +kerning first=205 second=304 amount=-1 +kerning first=82 second=213 amount=-1 +kerning first=86 second=245 amount=-1 +kerning first=1031 second=1079 amount=-1 +kerning first=209 second=337 amount=-1 +kerning first=200 second=199 amount=-1 +kerning first=82 second=212 amount=-1 +kerning first=350 second=8218 amount=-1 +kerning first=104 second=337 amount=-1 +kerning first=77 second=74 amount=-1 +kerning first=245 second=120 amount=-1 +kerning first=282 second=364 amount=-1 +kerning first=87 second=100 amount=-1 +kerning first=344 second=199 amount=-1 +kerning first=281 second=120 amount=-1 +kerning first=218 second=74 amount=-1 +kerning first=211 second=221 amount=-1 +kerning first=45 second=324 amount=-1 +kerning first=101 second=8218 amount=-1 +kerning first=242 second=122 amount=-1 +kerning first=75 second=220 amount=-1 +kerning first=362 second=74 amount=-1 +kerning first=1042 second=1082 amount=-1 +kerning first=279 second=269 amount=-1 +kerning first=242 second=8218 amount=-1 +kerning first=227 second=245 amount=-1 +kerning first=1039 second=1037 amount=-1 +kerning first=119 second=250 amount=-1 +kerning first=199 second=203 amount=-1 +kerning first=283 second=8220 amount=-2 +kerning first=221 second=111 amount=-1 +kerning first=213 second=72 amount=-1 +kerning first=1034 second=1037 amount=-1 +kerning first=257 second=111 amount=-1 +kerning first=72 second=72 amount=-1 +kerning first=355 second=8220 amount=-1 +kerning first=1042 second=1101 amount=-1 +kerning first=1091 second=1088 amount=-1 +kerning first=289 second=105 amount=-1 +kerning first=1078 second=1101 amount=-1 +kerning first=365 second=111 amount=-1 +kerning first=287 second=254 amount=-1 +kerning first=374 second=65 amount=-1 +kerning first=230 second=249 amount=-1 +kerning first=72 second=370 amount=-1 +kerning first=212 second=374 amount=-1 +kerning first=219 second=260 amount=-1 +kerning first=198 second=315 amount=-1 +kerning first=275 second=263 amount=-1 +kerning first=277 second=114 amount=-1 +kerning first=187 second=212 amount=-1 +kerning first=97 second=267 amount=-1 +kerning first=1059 second=1094 amount=-1 +kerning first=241 second=114 amount=-1 +kerning first=1043 second=1097 amount=-1 +kerning first=70 second=8220 amount=-1 +kerning first=80 second=111 amount=-1 +kerning first=211 second=8220 amount=-2 +kerning first=258 second=253 amount=-1 +kerning first=213 second=370 amount=-1 +kerning first=270 second=315 amount=-1 +kerning first=224 second=316 amount=-1 +kerning first=323 second=227 amount=-1 +kerning first=231 second=251 amount=-1 +kerning first=317 second=364 amount=-1 +kerning first=232 second=337 amount=-1 +kerning first=267 second=251 amount=-1 +kerning first=201 second=81 amount=-1 +kerning first=195 second=251 amount=-1 +kerning first=1064 second=1105 amount=-1 +kerning first=209 second=364 amount=-1 +kerning first=375 second=251 amount=-1 +kerning first=206 second=273 amount=-1 +kerning first=101 second=273 amount=-1 +kerning first=205 second=331 amount=-1 +kerning first=339 second=251 amount=-1 +kerning first=270 second=44 amount=-1 +kerning first=268 second=370 amount=-1 +kerning first=283 second=248 amount=-1 +kerning first=217 second=78 amount=-1 +kerning first=80 second=355 amount=-1 +kerning first=325 second=78 amount=-1 +kerning first=355 second=248 amount=-1 +kerning first=234 second=44 amount=-1 +kerning first=290 second=69 amount=-1 +kerning first=1107 second=1085 amount=-1 +kerning first=207 second=242 amount=-1 +kerning first=338 second=282 amount=-1 +kerning first=264 second=202 amount=-1 +kerning first=206 second=113 amount=-1 +kerning first=266 second=282 amount=-1 +kerning first=1049 second=1067 amount=-1 +kerning first=1052 second=1024 amount=-1 +kerning first=8218 second=214 amount=-1 +kerning first=279 second=242 amount=-1 +kerning first=200 second=8220 amount=-1 +kerning first=74 second=227 amount=-1 +kerning first=78 second=233 amount=-1 +kerning first=313 second=87 amount=-1 +kerning first=199 second=230 amount=-1 +kerning first=305 second=99 amount=-1 +kerning first=219 second=233 amount=-1 +kerning first=326 second=291 amount=-1 +kerning first=8222 second=220 amount=-1 diff --git a/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.png b/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.png new file mode 100644 index 000000000..240e0c1eb Binary files /dev/null and b/jme3-examples/src/main/resources/jme3test/font/Native-FreeSerif16I.png differ diff --git a/jme3-jbullet/build.gradle b/jme3-jbullet/build.gradle index 0e3967ab2..473f03b04 100644 --- a/jme3-jbullet/build.gradle +++ b/jme3-jbullet/build.gradle @@ -12,9 +12,9 @@ sourceSets { } dependencies { - compile ('java3d:vecmath:1.3.1') - compile files('../lib/jbullet.jar', '../lib/stack-alloc.jar') + compile 'java3d:vecmath:1.3.1' + compile 'jbullet:jbullet' + compile 'stack-alloc:stack-alloc' compile project(':jme3-core') compile project(':jme3-terrain') -// compile project(':jme3-bullet') } diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java b/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java index b69332490..fd934a162 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/PhysicsSpace.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -227,7 +227,7 @@ public class PhysicsSpace { collides = (bp1.collisionFilterGroup & bp.collisionFilterMask) != 0; } if (collides) { - assert (bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject && bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject); + assert (bp.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject && bp1.clientObject instanceof com.bulletphysics.collision.dispatch.CollisionObject); com.bulletphysics.collision.dispatch.CollisionObject colOb = (com.bulletphysics.collision.dispatch.CollisionObject) bp.clientObject; com.bulletphysics.collision.dispatch.CollisionObject colOb1 = (com.bulletphysics.collision.dispatch.CollisionObject) bp1.clientObject; assert (colOb.getUserPointer() != null && colOb1.getUserPointer() != null); @@ -827,7 +827,7 @@ public class PhysicsSpace { * when the fps is below the physics fps. Doing this maintains determinism in physics. * For example a maximum number of 2 can compensate for framerates as low as 30fps * when the physics has the default accuracy of 60 fps. Note that setting this - * value too high can make the physics drive down its own fps in case its overloaded. + * value too high can make the physics drive down its own fps in case it's overloaded. * @param steps The maximum number of extra steps, default is 4. */ public void setMaxSubSteps(int steps) { diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java index 0416799b8..56769e61c 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/collision/PhysicsCollisionObject.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -93,7 +93,7 @@ public abstract class PhysicsCollisionObject implements Savable { * Sets the collision group number for this physics object.
* The groups are integer bit masks and some pre-made variables are available in CollisionObject. * All physics objects are by default in COLLISION_GROUP_01.
- * Two object will collide when one of the partys has the + * Two object will collide when one of the parties has the * collisionGroup of the other in its collideWithGroups set. * @param collisionGroup the collisionGroup to set */ @@ -103,7 +103,7 @@ public abstract class PhysicsCollisionObject implements Savable { /** * Add a group that this object will collide with.
- * Two object will collide when one of the partys has the + * Two object will collide when one of the parties has the * collisionGroup of the other in its collideWithGroups set.
* @param collisionGroup */ diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java index 45afa9d1a..d5c13dc66 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/ConeJoint.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -45,7 +45,7 @@ import java.io.IOException; /** * From bullet manual:
- * To create ragdolls, the conve twist constraint is very useful for limbs like the upper arm. + * To create ragdolls, the cone twist constraint is very useful for limbs like the upper arm. * It is a special point to point constraint that adds cone and twist axis limits. * The x-axis serves as twist axis. * @author normenhansen diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java index 96dea1d72..b25f762a4 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/joints/HingeJoint.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -99,7 +99,7 @@ public class HingeJoint extends PhysicsJoint { * @param high the high limit in radians. * @param _softness the factor at which the velocity error correction starts operating,i.e a softness of 0.9 means that the vel. corr starts at 90% of the limit range. * @param _biasFactor the magnitude of the position correction. It tells you how strictly the position error (drift ) is corrected. - * @param _relaxationFactor the rate at which velocity errors are corrected. This can be seen as the strength of the limits. A low value will make the the limits more spongy. + * @param _relaxationFactor the rate at which velocity errors are corrected. This can be seen as the strength of the limits. A low value will make the limits more spongy. */ public void setLimit(float low, float high, float _softness, float _biasFactor, float _relaxationFactor) { biasFactor = _biasFactor; diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java index 3d5463421..b21fa698c 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/PhysicsVehicle.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -275,8 +275,8 @@ public class PhysicsVehicle extends PhysicsRigidBody { } /** - * This vaue caps the maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * This value caps the maximum suspension force, raise this above the default 6000 if your suspension cannot + * handle the weight of your vehicle. * @param maxSuspensionForce */ public void setMaxSuspensionForce(float maxSuspensionForce) { @@ -284,8 +284,8 @@ public class PhysicsVehicle extends PhysicsRigidBody { } /** - * This vaue caps the maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * This value caps the maximum suspension force, raise this above the default 6000 if your suspension cannot + * handle the weight of your vehicle. * @param wheel * @param maxSuspensionForce */ diff --git a/jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java index efcb79ec7..789e0c682 100644 --- a/jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java +++ b/jme3-jbullet/src/main/java/com/jme3/bullet/objects/VehicleWheel.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -237,7 +237,7 @@ public class VehicleWheel implements Savable { /** * The maximum suspension force, raise this above the default 6000 if your suspension cannot - * handle the weight of your vehcile. + * handle the weight of your vehicle. * @param maxSuspensionForce */ public void setMaxSuspensionForce(float maxSuspensionForce) { diff --git a/jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java b/jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java index 8b0006182..2302c5f4e 100644 --- a/jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java +++ b/jme3-jogg/src/main/java/com/jme3/audio/plugins/OGGLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -152,7 +152,7 @@ public class OGGLoader implements AssetLoader { // HACK: Reload the logical and vorbis streams from scratch // based on the existing ogg page data. // This fixes an audio discontinuity issue when looping - // an streaming OGG file via setTime(0). + // a streaming OGG file via setTime(0). ls = ((CachedOggStream) ps).reloadLogicalOggStream(); vs = new VorbisStream(ls); endOfStream = false; diff --git a/jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java b/jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java index 8f3c5b156..17bf21bfd 100644 --- a/jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java +++ b/jme3-jogl/src/main/java/com/jme3/renderer/jogl/TextureUtil.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -294,7 +294,7 @@ public class TextureUtil { int[] mipSizes = image.getMipMapSizes(); int pos = 0; - // TODO: Remove unneccessary allocation + // TODO: Remove unnecessary allocation if (mipSizes == null){ if (data != null) mipSizes = new int[]{ data.capacity() }; @@ -473,7 +473,7 @@ public class TextureUtil { int[] mipSizes = image.getMipMapSizes(); int pos = 0; - // TODO: Remove unneccessary allocation + // TODO: Remove unnecessary allocation if (mipSizes == null){ if (data != null) { mipSizes = new int[]{ data.capacity() }; diff --git a/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java b/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java index f3982fd25..b53d93660 100644 --- a/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java +++ b/jme3-lwjgl/src/main/java/com/jme3/input/lwjgl/LwjglMouseInput.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -85,6 +85,10 @@ public class LwjglMouseInput implements MouseInput { } catch (LWJGLException ex) { logger.log(Level.SEVERE, "Error while creating mouse", ex); } + + if (listener != null) { + sendFirstMouseEvent(); + } } public boolean isInitialized(){ @@ -158,8 +162,32 @@ public class LwjglMouseInput implements MouseInput { Mouse.setGrabbed(!visible); } + @Override public void setInputListener(RawInputListener listener) { this.listener = listener; + if (listener != null && Mouse.isCreated()) { + sendFirstMouseEvent(); + } + } + + /** + * Send the input listener a special mouse-motion event with zero deltas in + * order to initialize the listener's cursor position. + */ + private void sendFirstMouseEvent() { + assert listener != null; + assert Mouse.isCreated(); + + int x = Mouse.getX(); + int y = Mouse.getY(); + int xDelta = 0; + int yDelta = 0; + int wheelDelta = 0; + MouseMotionEvent evt = new MouseMotionEvent(x, y, xDelta, yDelta, + curWheel, wheelDelta); + evt.setTime(Mouse.getEventNanoseconds()); + + listener.onMouseMotionEvent(evt); } public long getInputTimeNanos() { diff --git a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java index 802b12a0f..e019008f2 100644 --- a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java +++ b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglAbstractDisplay.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -66,13 +66,13 @@ public abstract class LwjglAbstractDisplay extends LwjglContext implements Runna public abstract Type getType(); /** - * Set the title if its a windowed display + * Set the title if it's a windowed display * @param title */ public abstract void setTitle(String title); /** - * Restart if its a windowed or full-screen display. + * Restart if it's a windowed or full-screen display. */ public abstract void restart(); diff --git a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java index bd2e275ed..213d472c5 100644 --- a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java +++ b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglSmoothingTimer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -76,7 +76,7 @@ public class LwjglSmoothingTimer extends Timer { /** * Constructor builds a Timer object. All values will be - * initialized to it's default values. + * initialized to its default values. */ public LwjglSmoothingTimer() { reset(); @@ -144,7 +144,7 @@ public class LwjglSmoothingTimer extends Timer { if ( oldTime == -1 ) { // For the first frame use 60 fps. This value will not be counted in further averages. // This is done so initialization code between creating the timer and the first - // frame is not counted as a single frame on it's own. + // frame is not counted as a single frame on its own. lastTPF = 1 / 60f; lastFPS = 1f / lastTPF; return; diff --git a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java index 6adf03323..fb69a5550 100644 --- a/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java +++ b/jme3-lwjgl/src/main/java/com/jme3/system/lwjgl/LwjglTimer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -63,7 +63,7 @@ public class LwjglTimer extends Timer { /** * Constructor builds a Timer object. All values will be - * initialized to it's default values. + * initialized to its default values. */ public LwjglTimer() { reset(); diff --git a/jme3-lwjgl3/build.gradle b/jme3-lwjgl3/build.gradle index 785ce75de..d388e4aea 100644 --- a/jme3-lwjgl3/build.gradle +++ b/jme3-lwjgl3/build.gradle @@ -2,7 +2,7 @@ if (!hasProperty('mainClass')) { ext.mainClass = '' } -def lwjglVersion = '3.1.2' +def lwjglVersion = '3.1.5' sourceCompatibility = '1.8' diff --git a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglAL.java b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglAL.java index 313bdd5ee..1b1ae2a4b 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglAL.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglAL.java @@ -31,8 +31,6 @@ */package com.jme3.audio.lwjgl; import com.jme3.audio.openal.AL; -import com.jme3.system.NativeLibraryLoader; -import com.jme3.system.Platform; import org.lwjgl.openal.AL10; import org.lwjgl.openal.AL11; @@ -40,101 +38,123 @@ import java.nio.ByteBuffer; import java.nio.FloatBuffer; import java.nio.IntBuffer; +/** + * The LWJGL implementation of {@link AL}. + */ public final class LwjglAL implements AL { public LwjglAL() { } - public String alGetString(int parameter) { + @Override + public String alGetString(final int parameter) { return AL10.alGetString(parameter); } + @Override public int alGenSources() { return AL10.alGenSources(); } + @Override public int alGetError() { return AL10.alGetError(); } - public void alDeleteSources(int numSources, IntBuffer sources) { + @Override + public void alDeleteSources(final int numSources, final IntBuffer sources) { if (sources.position() != 0) throw new AssertionError(); if (sources.limit() != numSources) throw new AssertionError(); AL10.alDeleteSources(sources); } - public void alGenBuffers(int numBuffers, IntBuffer buffers) { + @Override + public void alGenBuffers(final int numBuffers, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numBuffers) throw new AssertionError(); AL10.alGenBuffers(buffers); } - public void alDeleteBuffers(int numBuffers, IntBuffer buffers) { + @Override + public void alDeleteBuffers(final int numBuffers, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numBuffers) throw new AssertionError(); AL10.alDeleteBuffers(buffers); } - public void alSourceStop(int source) { + @Override + public void alSourceStop(final int source) { AL10.alSourceStop(source); } - public void alSourcei(int source, int param, int value) { + @Override + public void alSourcei(final int source, final int param, final int value) { AL10.alSourcei(source, param, value); } - public void alBufferData(int buffer, int format, ByteBuffer data, int size, int frequency) { + @Override + public void alBufferData(final int buffer, final int format, final ByteBuffer data, final int size, final int frequency) { if (data.position() != 0) throw new AssertionError(); if (data.limit() != size) throw new AssertionError(); AL10.alBufferData(buffer, format, data, frequency); } - public void alSourcePlay(int source) { + @Override + public void alSourcePlay(final int source) { AL10.alSourcePlay(source); } - public void alSourcePause(int source) { + @Override + public void alSourcePause(final int source) { AL10.alSourcePause(source); } - public void alSourcef(int source, int param, float value) { + @Override + public void alSourcef(final int source, final int param, final float value) { AL10.alSourcef(source, param, value); } - public void alSource3f(int source, int param, float value1, float value2, float value3) { + @Override + public void alSource3f(final int source, final int param, final float value1, final float value2, final float value3) { AL10.alSource3f(source, param, value1, value2, value3); } - public int alGetSourcei(int source, int param) { + @Override + public int alGetSourcei(final int source, final int param) { return AL10.alGetSourcei(source, param); } - public void alSourceUnqueueBuffers(int source, int numBuffers, IntBuffer buffers) { + @Override + public void alSourceUnqueueBuffers(final int source, final int numBuffers, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numBuffers) throw new AssertionError(); AL10.alSourceUnqueueBuffers(source, buffers); } - public void alSourceQueueBuffers(int source, int numBuffers, IntBuffer buffers) { + @Override + public void alSourceQueueBuffers(final int source, final int numBuffers, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numBuffers) throw new AssertionError(); AL10.alSourceQueueBuffers(source, buffers); } - public void alListener(int param, FloatBuffer data) { + @Override + public void alListener(final int param, final FloatBuffer data) { AL10.alListenerfv(param, data); } - public void alListenerf(int param, float value) { + @Override + public void alListenerf(final int param, final float value) { AL10.alListenerf(param, value); } - public void alListener3f(int param, float value1, float value2, float value3) { + @Override + public void alListener3f(final int param, final float value1, final float value2, final float value3) { AL10.alListener3f(param, value1, value2, value3); } - public void alSource3i(int source, int param, int value1, int value2, int value3) { + @Override + public void alSource3i(final int source, final int param, final int value1, final int value2, final int value3) { AL11.alSource3i(source, param, value1, value2, value3); } - } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglALC.java b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglALC.java index cd4e428c0..71add8c6e 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglALC.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglALC.java @@ -31,19 +31,27 @@ */ package com.jme3.audio.lwjgl; +import org.lwjgl.openal.*; + import java.nio.ByteBuffer; import java.nio.IntBuffer; -import org.lwjgl.openal.AL; -import org.lwjgl.openal.ALC; -import org.lwjgl.openal.ALC10; -import org.lwjgl.openal.ALCCapabilities; -import org.lwjgl.openal.SOFTPauseDevice; +/** + * The LWJGL implementation of {@link com.jme3.audio.openal.ALC}. + */ public class LwjglALC implements com.jme3.audio.openal.ALC { + /** + * The device id. + */ private long device; + + /** + * The context id. + */ private long context; + @Override public void createALC() { device = ALC10.alcOpenDevice((ByteBuffer) null); ALCCapabilities deviceCaps = ALC.createCapabilities(device); @@ -52,6 +60,7 @@ public class LwjglALC implements com.jme3.audio.openal.ALC { AL.createCapabilities(deviceCaps); } + @Override public void destroyALC() { if (context != 0) { ALC10.alcDestroyContext(context); @@ -64,18 +73,22 @@ public class LwjglALC implements com.jme3.audio.openal.ALC { } } + @Override public boolean isCreated() { return context != 0; } + @Override public String alcGetString(final int parameter) { return ALC10.alcGetString(device, parameter); } + @Override public boolean alcIsExtensionPresent(final String extension) { return ALC10.alcIsExtensionPresent(device, extension); } + @Override public void alcGetInteger(final int param, final IntBuffer buffer, final int size) { if (buffer.position() != 0) { throw new AssertionError(); @@ -86,12 +99,13 @@ public class LwjglALC implements com.jme3.audio.openal.ALC { ALC10.alcGetIntegerv(device, param, buffer); } + @Override public void alcDevicePauseSOFT() { SOFTPauseDevice.alcDevicePauseSOFT(device); } + @Override public void alcDeviceResumeSOFT() { SOFTPauseDevice.alcDeviceResumeSOFT(device); } - } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglEFX.java b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglEFX.java index ecd67211f..2f143a6de 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglEFX.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/audio/lwjgl/LwjglEFX.java @@ -36,62 +36,75 @@ import org.lwjgl.openal.EXTEfx; import java.nio.IntBuffer; +/** + * The LWJGL implementation of {@link EFX}. + */ public class LwjglEFX implements EFX { - public void alGenAuxiliaryEffectSlots(int numSlots, IntBuffer buffers) { + @Override + public void alGenAuxiliaryEffectSlots(final int numSlots, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numSlots) throw new AssertionError(); EXTEfx.alGenAuxiliaryEffectSlots(buffers); } - public void alGenEffects(int numEffects, IntBuffer buffers) { + @Override + public void alGenEffects(final int numEffects, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numEffects) throw new AssertionError(); EXTEfx.alGenEffects(buffers); } - public void alEffecti(int effect, int param, int value) { + @Override + public void alEffecti(final int effect, final int param, final int value) { EXTEfx.alEffecti(effect, param, value); } - public void alAuxiliaryEffectSloti(int effectSlot, int param, int value) { + @Override + public void alAuxiliaryEffectSloti(final int effectSlot, final int param, final int value) { EXTEfx.alAuxiliaryEffectSloti(effectSlot, param, value); } - public void alDeleteEffects(int numEffects, IntBuffer buffers) { + @Override + public void alDeleteEffects(final int numEffects, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numEffects) throw new AssertionError(); EXTEfx.alDeleteEffects(buffers); } - public void alDeleteAuxiliaryEffectSlots(int numEffectSlots, IntBuffer buffers) { + @Override + public void alDeleteAuxiliaryEffectSlots(final int numEffectSlots, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numEffectSlots) throw new AssertionError(); EXTEfx.alDeleteAuxiliaryEffectSlots(buffers); } - public void alGenFilters(int numFilters, IntBuffer buffers) { + @Override + public void alGenFilters(final int numFilters, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numFilters) throw new AssertionError(); EXTEfx.alGenFilters(buffers); } - public void alFilteri(int filter, int param, int value) { + @Override + public void alFilteri(final int filter, final int param, final int value) { EXTEfx.alFilteri(filter, param, value); } - public void alFilterf(int filter, int param, float value) { + @Override + public void alFilterf(final int filter, final int param, final float value) { EXTEfx.alFilterf(filter, param, value); } - public void alDeleteFilters(int numFilters, IntBuffer buffers) { + @Override + public void alDeleteFilters(final int numFilters, final IntBuffer buffers) { if (buffers.position() != 0) throw new AssertionError(); if (buffers.limit() != numFilters) throw new AssertionError(); EXTEfx.alDeleteFilters(buffers); } - public void alEffectf(int effect, int param, float value) { + @Override + public void alEffectf(final int effect, final int param, final float value) { EXTEfx.alEffectf(effect, param, value); } - } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwJoystickInput.java b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwJoystickInput.java index 764b38379..840e506df 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwJoystickInput.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwJoystickInput.java @@ -31,10 +31,10 @@ */ package com.jme3.input.lwjgl; +import static org.lwjgl.glfw.GLFW.*; import com.jme3.input.*; import com.jme3.input.event.JoyAxisEvent; import com.jme3.input.event.JoyButtonEvent; -import org.lwjgl.opengl.GL11; import java.nio.ByteBuffer; import java.nio.FloatBuffer; @@ -42,9 +42,9 @@ import java.util.HashMap; import java.util.Map; import java.util.logging.Logger; -import static org.lwjgl.glfw.GLFW.*; - /** + * The LWJGL implementation of {@link JoyInput}. + * * @author Daniel Johansson (dannyjo) * @since 3.1 */ @@ -52,11 +52,13 @@ public class GlfwJoystickInput implements JoyInput { private static final Logger LOGGER = Logger.getLogger(InputManager.class.getName()); - private boolean initialized = false; private RawInputListener listener; - private Map joysticks = new HashMap(); + private Map joysticks = new HashMap<>(); + + private boolean initialized = false; - public void setJoyRumble(int joyId, float amount) { + @Override + public void setJoyRumble(final int joyId, final float amount) { if (joyId >= joysticks.size()) { throw new IllegalArgumentException(); } @@ -111,10 +113,12 @@ public class GlfwJoystickInput implements JoyInput { return String.valueOf(index); } + @Override public void initialize() { initialized = true; } + @Override public void update() { for (final Map.Entry entry : joysticks.entrySet()) { // Axes @@ -135,18 +139,22 @@ public class GlfwJoystickInput implements JoyInput { } } + @Override public void destroy() { initialized = false; } + @Override public boolean isInitialized() { return initialized; } - public void setInputListener(RawInputListener listener) { + @Override + public void setInputListener(final RawInputListener listener) { this.listener = listener; } + @Override public long getInputTimeNanos() { return 0; } @@ -156,7 +164,7 @@ public class GlfwJoystickInput implements JoyInput { private JoystickAxis povAxisX; private JoystickAxis povAxisY; - public GlfwJoystick(InputManager inputManager, JoyInput joyInput, int joyId, String name) { + public GlfwJoystick(final InputManager inputManager, final JoyInput joyInput, final int joyId, final String name) { super(inputManager, joyInput, joyId, name); } @@ -171,7 +179,7 @@ public class GlfwJoystickInput implements JoyInput { } @Override - protected void addButton(JoystickButton button) { + protected void addButton(final JoystickButton button) { super.addButton(button); } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyInput.java b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyInput.java index 971ee98fc..cef732c43 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyInput.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyInput.java @@ -32,11 +32,11 @@ package com.jme3.input.lwjgl; +import static org.lwjgl.glfw.GLFW.*; import com.jme3.input.KeyInput; import com.jme3.input.RawInputListener; import com.jme3.input.event.KeyInputEvent; import com.jme3.system.lwjgl.LwjglWindow; - import org.lwjgl.glfw.GLFWCharCallback; import org.lwjgl.glfw.GLFWKeyCallback; @@ -44,37 +44,54 @@ import java.util.LinkedList; import java.util.Queue; import java.util.logging.Logger; -import static org.lwjgl.glfw.GLFW.GLFW_KEY_LAST; -import static org.lwjgl.glfw.GLFW.GLFW_KEY_SPACE; -import static org.lwjgl.glfw.GLFW.GLFW_PRESS; -import static org.lwjgl.glfw.GLFW.GLFW_REPEAT; -import static org.lwjgl.glfw.GLFW.glfwGetTime; -import static org.lwjgl.glfw.GLFW.glfwSetCharCallback; -import static org.lwjgl.glfw.GLFW.glfwSetKeyCallback; - +/** + * The LWJGL implementation of {@link KeyInput}. + */ public class GlfwKeyInput implements KeyInput { private static final Logger logger = Logger.getLogger(GlfwKeyInput.class.getName()); + /** + * The queue of key events. + */ + private final Queue keyInputEvents = new LinkedList<>(); + + /** + * The LWJGL context. + */ private LwjglWindow context; - private RawInputListener listener; - private boolean initialized; + + /** + * The key callback. + */ private GLFWKeyCallback keyCallback; + + /** + * The char callback. + */ private GLFWCharCallback charCallback; - private Queue keyInputEvents = new LinkedList(); - public GlfwKeyInput(LwjglWindow context) { + /** + * The raw input listener. + */ + private RawInputListener listener; + + private boolean initialized; + + public GlfwKeyInput(final LwjglWindow context) { this.context = context; } + @Override public void initialize() { + if (!context.isRenderable()) { return; } glfwSetKeyCallback(context.getWindowHandle(), keyCallback = new GLFWKeyCallback() { @Override - public void invoke(long window, int key, int scancode, int action, int mods) { + public void invoke(final long window, final int key, final int scancode, final int action, final int mods) { if (key < 0 || key > GLFW_KEY_LAST) { return; @@ -87,22 +104,11 @@ public class GlfwKeyInput implements KeyInput { keyInputEvents.add(event); } - - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); glfwSetCharCallback(context.getWindowHandle(), charCallback = new GLFWCharCallback() { - @Override - public void invoke(long window, int codepoint) { + public void invoke(final long window, final int codepoint) { final char keyChar = (char) codepoint; @@ -116,16 +122,6 @@ public class GlfwKeyInput implements KeyInput { keyInputEvents.add(released); } - - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); initialized = true; @@ -137,6 +133,7 @@ public class GlfwKeyInput implements KeyInput { return GLFW_KEY_LAST - GLFW_KEY_SPACE; } + @Override public void update() { if (!context.isRenderable()) { return; @@ -147,6 +144,7 @@ public class GlfwKeyInput implements KeyInput { } } + @Override public void destroy() { if (!context.isRenderable()) { return; @@ -157,14 +155,17 @@ public class GlfwKeyInput implements KeyInput { logger.fine("Keyboard destroyed."); } + @Override public boolean isInitialized() { return initialized; } - public void setInputListener(RawInputListener listener) { + @Override + public void setInputListener(final RawInputListener listener) { this.listener = listener; } + @Override public long getInputTimeNanos() { return (long) (glfwGetTime() * 1000000000); } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java index 39592fe60..0c130b9d4 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwKeyMap.java @@ -36,10 +36,10 @@ import static com.jme3.input.KeyInput.*; public class GlfwKeyMap { - private static final int[] glfwToJmeKeyMap = new int[GLFW_KEY_LAST + 1]; + private static final int[] GLFW_TO_JME_KEY_MAP = new int[GLFW_KEY_LAST + 1]; - private static void reg(int jmeKey, int glfwKey) { - glfwToJmeKeyMap[glfwKey] = jmeKey; + private static void reg(final int jmeKey, final int glfwKey) { + GLFW_TO_JME_KEY_MAP[glfwKey] = jmeKey; } static { @@ -165,7 +165,7 @@ public class GlfwKeyMap { reg(KEY_RMETA, GLFW_KEY_RIGHT_SUPER); } - public static int toJmeKeyCode(int glfwKey) { - return glfwToJmeKeyMap[glfwKey]; + public static int toJmeKeyCode(final int glfwKey) { + return GLFW_TO_JME_KEY_MAP[glfwKey]; } } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwMouseInput.java b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwMouseInput.java index 7e9f70f2d..5790a3f35 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwMouseInput.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/input/lwjgl/GlfwMouseInput.java @@ -29,9 +29,9 @@ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ - package com.jme3.input.lwjgl; +import static org.lwjgl.glfw.GLFW.*; import com.jme3.cursors.plugins.JmeCursor; import com.jme3.input.MouseInput; import com.jme3.input.RawInputListener; @@ -39,9 +39,9 @@ import com.jme3.input.event.MouseButtonEvent; import com.jme3.input.event.MouseMotionEvent; import com.jme3.system.lwjgl.LwjglWindow; import com.jme3.util.BufferUtils; -import org.lwjgl.glfw.GLFWCursorPosCallback; -import org.lwjgl.glfw.GLFWMouseButtonCallback; -import org.lwjgl.glfw.GLFWScrollCallback; +import org.lwjgl.glfw.*; +import org.lwjgl.system.MemoryStack; +import org.lwjgl.system.MemoryUtil; import java.nio.ByteBuffer; import java.nio.IntBuffer; @@ -51,14 +51,12 @@ import java.util.Map; import java.util.Queue; import java.util.logging.Logger; -import static org.lwjgl.glfw.GLFW.*; -import org.lwjgl.glfw.GLFWImage; -import org.lwjgl.system.MemoryUtil; - /** - * Captures mouse input using GLFW callbacks. It then temporarily stores these in event queues which are processed in the - * {@link #update()} method. Due to some of the GLFW button id's there is a conversion method in this class which will - * convert the GLFW left, middle and right mouse button to JME3 left, middle and right button codes. + * Captures mouse input using GLFW callbacks. It then temporarily stores these + * in event queues which are processed in the {@link #update()} method. Due to + * some of the GLFW button id's there is a conversion method in this class which + * will convert the GLFW left, middle and right mouse button to JME3 left, + * middle and right button codes. * * @author Daniel Johansson (dannyjo) * @since 3.1 @@ -69,30 +67,86 @@ public class GlfwMouseInput implements MouseInput { private static final int WHEEL_SCALE = 120; - private LwjglWindow context; + private static long[] createGlfwCursor(final JmeCursor jmeCursor) { + + long[] cursorArray = new long[jmeCursor.getNumImages()]; + + for (int i = 0; i < jmeCursor.getNumImages(); i++) { + + final ByteBuffer buffer = transformCursorImage(jmeCursor.getImagesData(), jmeCursor.getWidth(), jmeCursor.getHeight(), i); + final GLFWImage glfwImage = new GLFWImage(BufferUtils.createByteBuffer(GLFWImage.SIZEOF)); + glfwImage.set(jmeCursor.getWidth(), jmeCursor.getHeight(), buffer); + + final int hotspotX = jmeCursor.getXHotSpot(); + final int hotspotY = jmeCursor.getHeight() - jmeCursor.getYHotSpot(); + + cursorArray[i] = glfwCreateCursor(glfwImage, hotspotX, hotspotY); + } + + return cursorArray; + } + + + private static ByteBuffer transformCursorImage(final IntBuffer imageData, final int width, final int height, + final int index) { + + final ByteBuffer byteBuffer = BufferUtils.createByteBuffer(width * height * 4); + + // Transform image: ARGB -> RGBA, vertical flip + for (int y = height - 1; y >= 0; --y) { + for (int x = 0; x < width; ++x) { + int pixel = imageData.get(width * height * index + y * width + x); + byteBuffer.put((byte) ((pixel >> 16) & 0xFF)); // red + byteBuffer.put((byte) ((pixel >> 8) & 0xFF)); // green + byteBuffer.put((byte) (pixel & 0xFF)); // blue + byteBuffer.put((byte) ((pixel >> 24) & 0xFF)); // alpha + } + } + + byteBuffer.flip(); + + return byteBuffer; + } + + private final Map jmeToGlfwCursorMap = new HashMap<>(); + + private final Queue mouseMotionEvents = new LinkedList<>(); + private final Queue mouseButtonEvents = new LinkedList<>(); + + private final LwjglWindow context; + private RawInputListener listener; - private boolean cursorVisible = true; - private int mouseX; - private int mouseY; - private int mouseWheel; - private boolean initialized; + + private IntBuffer currentCursorDelays; private GLFWCursorPosCallback cursorPosCallback; private GLFWScrollCallback scrollCallback; private GLFWMouseButtonCallback mouseButtonCallback; - private Queue mouseMotionEvents = new LinkedList(); - private Queue mouseButtonEvents = new LinkedList(); - private Map jmeToGlfwCursorMap = new HashMap(); + private long[] currentCursor; + + private double currentCursorFrameStartTime = 0.0; + + private int currentCursorFrame = 0; + private int mouseX; + private int mouseY; + private int mouseWheel; + private int currentWidth; + private int currentHeight; + + private boolean cursorVisible; + private boolean initialized; - public GlfwMouseInput(LwjglWindow context) { + public GlfwMouseInput(final LwjglWindow context) { this.context = context; + this.cursorVisible = true; } - private void onCursorPos(long window, double xpos, double ypos) { + private void onCursorPos(final long window, final double xpos, final double ypos) { + int xDelta; int yDelta; int x = (int) Math.round(xpos); - int y = context.getSettings().getHeight() - (int) Math.round(ypos); + int y = currentHeight - (int) Math.round(ypos); if (mouseX == 0) { mouseX = x; @@ -114,7 +168,7 @@ public class GlfwMouseInput implements MouseInput { } } - private void onWheelScroll(long window, double xOffset, double yOffset) { + private void onWheelScroll(final long window, final double xOffset, final double yOffset) { mouseWheel += yOffset; final MouseMotionEvent mouseMotionEvent = new MouseMotionEvent(mouseX, mouseY, 0, 0, mouseWheel, (int) Math.round(yOffset)); mouseMotionEvent.setTime(getInputTimeNanos()); @@ -122,58 +176,54 @@ public class GlfwMouseInput implements MouseInput { } private void onMouseButton(final long window, final int button, final int action, final int mods) { - final MouseButtonEvent mouseButtonEvent = new MouseButtonEvent(convertButton(button), action == GLFW_PRESS, mouseX, mouseY); + final boolean pressed = action == GLFW_PRESS; + final MouseButtonEvent mouseButtonEvent = new MouseButtonEvent(convertButton(button), pressed, mouseX, mouseY); mouseButtonEvent.setTime(getInputTimeNanos()); mouseButtonEvents.add(mouseButtonEvent); } + @Override public void initialize() { - glfwSetCursorPosCallback(context.getWindowHandle(), cursorPosCallback = new GLFWCursorPosCallback() { - @Override - public void invoke(long window, double xpos, double ypos) { - onCursorPos(window, xpos, ypos); - } - @Override - public void close() { - super.close(); - } + final long window = context.getWindowHandle(); + + try (MemoryStack stack = MemoryStack.stackPush()) { + + final IntBuffer width = stack.callocInt(1); + final IntBuffer height = stack.callocInt(1); + + glfwGetWindowSize(window, width, height); + + currentWidth = width.get(); + currentHeight = height.get(); + } + glfwSetCursorPosCallback(window, cursorPosCallback = new GLFWCursorPosCallback() { @Override - public void callback(long args) { - super.callback(args); + public void invoke(final long window, final double xpos, final double ypos) { + onCursorPos(window, xpos, ypos); } }); - glfwSetScrollCallback(context.getWindowHandle(), scrollCallback = new GLFWScrollCallback() { + glfwSetScrollCallback(window, scrollCallback = new GLFWScrollCallback() { @Override public void invoke(final long window, final double xOffset, final double yOffset) { onWheelScroll(window, xOffset, yOffset * WHEEL_SCALE); } - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); - glfwSetMouseButtonCallback(context.getWindowHandle(), mouseButtonCallback = new GLFWMouseButtonCallback() { + glfwSetMouseButtonCallback(window, mouseButtonCallback = new GLFWMouseButtonCallback() { @Override public void invoke(final long window, final int button, final int action, final int mods) { onMouseButton(window, button, action, mods); } - @Override - public void close() { - super.close(); - } + }); + glfwSetWindowSizeCallback(window, new GLFWWindowSizeCallback() { @Override - public void callback(long args) { - super.callback(args); + public void invoke(final long window, final int width, final int height) { + currentHeight = height; + currentWidth = width; } }); @@ -182,15 +232,31 @@ public class GlfwMouseInput implements MouseInput { initialized = true; } + @Override public boolean isInitialized() { return initialized; } + @Override public int getButtonCount() { return GLFW_MOUSE_BUTTON_LAST + 1; } + @Override public void update() { + + // Manage cursor animation + if (currentCursor != null && currentCursor.length > 1) { + double now = glfwGetTime(); + double frameTime = (glfwGetTime() - currentCursorFrameStartTime) * 1000; + if (currentCursorDelays == null || frameTime >= currentCursorDelays.get(currentCursorFrame)) { + currentCursorFrame = ++currentCursorFrame % currentCursor.length; + currentCursorFrameStartTime = now; + glfwSetCursor(context.getWindowHandle(), currentCursor[currentCursorFrame]); + } + } + + // Process events while (!mouseMotionEvents.isEmpty()) { listener.onMouseMotionEvent(mouseMotionEvents.poll()); } @@ -200,7 +266,9 @@ public class GlfwMouseInput implements MouseInput { } } + @Override public void destroy() { + if (!context.isRenderable()) { return; } @@ -209,13 +277,21 @@ public class GlfwMouseInput implements MouseInput { scrollCallback.close(); mouseButtonCallback.close(); - for (long glfwCursor : jmeToGlfwCursorMap.values()) { - glfwDestroyCursor(glfwCursor); + currentCursor = null; + currentCursorDelays = null; + + for (long[] glfwCursors : jmeToGlfwCursorMap.values()) { + for (long glfwCursor : glfwCursors) { + glfwDestroyCursor(glfwCursor); + } } + jmeToGlfwCursorMap.clear(); + logger.fine("Mouse destroyed."); } + @Override public void setCursorVisible(boolean visible) { cursorVisible = visible; @@ -230,56 +306,36 @@ public class GlfwMouseInput implements MouseInput { } } + @Override public void setInputListener(RawInputListener listener) { this.listener = listener; } + @Override public long getInputTimeNanos() { return (long) (glfwGetTime() * 1000000000); } - private ByteBuffer transformCursorImage(IntBuffer imageData, int w, int h) { - ByteBuffer buf = BufferUtils.createByteBuffer(imageData.capacity() * 4); - - // Transform image: ARGB -> RGBA, vertical flip - for (int y = h-1; y >= 0; --y) { - for (int x = 0; x < w; ++x) { - int pixel = imageData.get(y*w + x); - buf.put((byte) ((pixel >> 16) & 0xFF)); // red - buf.put((byte) ((pixel >> 8) & 0xFF)); // green - buf.put((byte) ( pixel & 0xFF)); // blue - buf.put((byte) ((pixel >> 24) & 0xFF)); // alpha - } - } - - buf.flip(); - return buf; - } - - private long createGlfwCursor(JmeCursor jmeCursor) { - // TODO: currently animated cursors are not supported - IntBuffer imageData = jmeCursor.getImagesData(); - ByteBuffer buf = transformCursorImage(imageData, jmeCursor.getWidth(), jmeCursor.getHeight()); + @Override + public void setNativeCursor(final JmeCursor jmeCursor) { + if (jmeCursor != null) { - GLFWImage glfwImage = new GLFWImage(BufferUtils.createByteBuffer(GLFWImage.SIZEOF)); - glfwImage.set(jmeCursor.getWidth(), jmeCursor.getHeight(), buf); + final long[] glfwCursor = jmeToGlfwCursorMap.computeIfAbsent(jmeCursor, GlfwMouseInput::createGlfwCursor); - int hotspotX = jmeCursor.getXHotSpot(); - int hotspotY = jmeCursor.getHeight() - jmeCursor.getYHotSpot(); - return glfwCreateCursor(glfwImage, hotspotX, hotspotY); - } + currentCursorFrame = 0; + currentCursor = glfwCursor; + currentCursorDelays = null; + currentCursorFrameStartTime = glfwGetTime(); - public void setNativeCursor(JmeCursor jmeCursor) { - if (jmeCursor != null) { - Long glfwCursor = jmeToGlfwCursorMap.get(jmeCursor); - - if (glfwCursor == null) { - glfwCursor = createGlfwCursor(jmeCursor); - jmeToGlfwCursorMap.put(jmeCursor, glfwCursor); + if (jmeCursor.getImagesDelay() != null) { + currentCursorDelays = jmeCursor.getImagesDelay(); } - glfwSetCursor(context.getWindowHandle(), glfwCursor); + glfwSetCursor(context.getWindowHandle(), glfwCursor[currentCursorFrame]); + } else { + currentCursor = null; + currentCursorDelays = null; glfwSetCursor(context.getWindowHandle(), MemoryUtil.NULL); } } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/lwjgl3/utils/APIUtil.java b/jme3-lwjgl3/src/main/java/com/jme3/lwjgl3/utils/APIUtil.java index 689659e3b..a36d22211 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/lwjgl3/utils/APIUtil.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/lwjgl3/utils/APIUtil.java @@ -20,16 +20,22 @@ import java.util.regex.Pattern; */ public final class APIUtil { - private static final ThreadLocal API_BUFFERS = new ThreadLocal() { - @Override - protected APIBuffer initialValue() { - return new APIBuffer(); - } - }; + private static final ThreadLocal API_BUFFERS = ThreadLocal.withInitial(APIBuffer::new); private APIUtil() { } + /** + * Converts dynamic arguments to object array. + * + * @param arguments the list of arguments. + * @return the object array. + */ + @SafeVarargs + public static T[] toArray(T... arguments) { + return arguments; + } + /** * Returns a thread-local {@link APIBuffer} that has been reset. */ diff --git a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGL.java b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGL.java index 915b185d1..e87bdf20a 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGL.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGL.java @@ -31,449 +31,553 @@ */ package com.jme3.renderer.lwjgl; -import com.jme3.renderer.RendererException; import com.jme3.renderer.opengl.GL; import com.jme3.renderer.opengl.GL2; import com.jme3.renderer.opengl.GL3; import com.jme3.renderer.opengl.GL4; import org.lwjgl.opengl.*; -import java.nio.*; +import java.nio.ByteBuffer; +import java.nio.FloatBuffer; +import java.nio.IntBuffer; +import java.nio.ShortBuffer; -public class LwjglGL implements GL, GL2, GL3, GL4 { +/** + * The LWJGL implementation of interfaces {@link GL}, {@link GL2}, {@link GL3}, {@link GL4}. + */ +public class LwjglGL extends LwjglRender implements GL, GL2, GL3, GL4 { - private static void checkLimit(Buffer buffer) { - if (buffer == null) { - return; - } - if (buffer.limit() == 0) { - throw new RendererException("Attempting to upload empty buffer (limit = 0), that's an error"); - } - if (buffer.remaining() == 0) { - throw new RendererException("Attempting to upload empty buffer (remaining = 0), that's an error"); - } - } - + @Override public void resetStats() { } - - public void glActiveTexture(int param1) { - GL13.glActiveTexture(param1); + + @Override + public void glActiveTexture(final int texture) { + GL13.glActiveTexture(texture); } - public void glAlphaFunc(int param1, float param2) { - GL11.glAlphaFunc(param1, param2); + @Override + public void glAlphaFunc(final int func, final float ref) { + GL11.glAlphaFunc(func, ref); } - public void glAttachShader(int param1, int param2) { - GL20.glAttachShader(param1, param2); + @Override + public void glAttachShader(final int program, final int shader) { + GL20.glAttachShader(program, shader); } @Override - public void glBeginQuery(int target, int query) { + public void glBeginQuery(final int target, final int query) { GL15.glBeginQuery(target, query); } - public void glBindBuffer(int param1, int param2) { - GL15.glBindBuffer(param1, param2); + @Override + public void glBindBuffer(final int target, final int buffer) { + GL15.glBindBuffer(target, buffer); } - public void glBindTexture(int param1, int param2) { - GL11.glBindTexture(param1, param2); + @Override + public void glBindTexture(final int target, final int texture) { + GL11.glBindTexture(target, texture); } - public void glBlendEquationSeparate(int colorMode, int alphaMode){ - GL20.glBlendEquationSeparate(colorMode,alphaMode); + @Override + public void glBlendEquationSeparate(final int colorMode, final int alphaMode) { + GL20.glBlendEquationSeparate(colorMode, alphaMode); } - public void glBlendFunc(int param1, int param2) { - GL11.glBlendFunc(param1, param2); + @Override + public void glBlendFunc(final int sfactor, final int dfactor) { + GL11.glBlendFunc(sfactor, dfactor); } - - public void glBlendFuncSeparate(int param1, int param2, int param3, int param4) { - GL14.glBlendFuncSeparate(param1, param2, param3, param4); + + @Override + public void glBlendFuncSeparate(final int sfactorRGB, final int dfactorRGB, final int sfactorAlpha, + final int dfactorAlpha) { + GL14.glBlendFuncSeparate(sfactorRGB, dfactorRGB, sfactorAlpha, dfactorAlpha); } - public void glBufferData(int param1, long param2, int param3) { - GL15.glBufferData(param1, param2, param3); + @Override + public void glBufferData(final int target, final long dataSize, final int usage) { + GL15.glBufferData(target, dataSize, usage); } - - public void glBufferData(int param1, FloatBuffer param2, int param3) { - checkLimit(param2); - GL15.glBufferData(param1, param2, param3); + + @Override + public void glBufferData(final int target, final FloatBuffer data, final int usage) { + checkLimit(data); + GL15.glBufferData(target, data, usage); } - public void glBufferData(int param1, ShortBuffer param2, int param3) { - checkLimit(param2); - GL15.glBufferData(param1, param2, param3); + @Override + public void glBufferData(final int target, final ShortBuffer data, final int usage) { + checkLimit(data); + GL15.glBufferData(target, data, usage); } - public void glBufferData(int param1, ByteBuffer param2, int param3) { - checkLimit(param2); - GL15.glBufferData(param1, param2, param3); + @Override + public void glBufferData(final int target, final ByteBuffer data, final int usage) { + checkLimit(data); + GL15.glBufferData(target, data, usage); } - public void glBufferSubData(int param1, long param2, FloatBuffer param3) { - checkLimit(param3); - GL15.glBufferSubData(param1, param2, param3); + @Override + public void glBufferSubData(final int target, final long offset, final FloatBuffer data) { + checkLimit(data); + GL15.glBufferSubData(target, offset, data); } - public void glBufferSubData(int param1, long param2, ShortBuffer param3) { - checkLimit(param3); - GL15.glBufferSubData(param1, param2, param3); + @Override + public void glBufferSubData(final int target, final long offset, final ShortBuffer data) { + checkLimit(data); + GL15.glBufferSubData(target, offset, data); } - public void glBufferSubData(int param1, long param2, ByteBuffer param3) { - checkLimit(param3); - GL15.glBufferSubData(param1, param2, param3); + @Override + public void glBufferSubData(final int target, final long offset, final ByteBuffer data) { + checkLimit(data); + GL15.glBufferSubData(target, offset, data); } - public void glClear(int param1) { - GL11.glClear(param1); + @Override + public void glClear(final int mask) { + GL11.glClear(mask); } - public void glClearColor(float param1, float param2, float param3, float param4) { - GL11.glClearColor(param1, param2, param3, param4); + @Override + public void glClearColor(final float red, final float green, final float blue, final float alpha) { + GL11.glClearColor(red, green, blue, alpha); } - public void glColorMask(boolean param1, boolean param2, boolean param3, boolean param4) { - GL11.glColorMask(param1, param2, param3, param4); + @Override + public void glColorMask(final boolean red, final boolean green, final boolean blue, final boolean alpha) { + GL11.glColorMask(red, green, blue, alpha); } - public void glCompileShader(int param1) { - GL20.glCompileShader(param1); + @Override + public void glCompileShader(final int shader) { + GL20.glCompileShader(shader); } - public void glCompressedTexImage2D(int param1, int param2, int param3, int param4, int param5, int param6, ByteBuffer param7) { - checkLimit(param7); - GL13.glCompressedTexImage2D(param1, param2, param3, param4, param5, param6, param7); + @Override + public void glCompressedTexImage2D(final int target, final int level, final int internalFormat, final int width, + final int height, final int border, final ByteBuffer data) { + checkLimit(data); + GL13.glCompressedTexImage2D(target, level, internalFormat, width, height, border, data); } - public void glCompressedTexImage3D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, ByteBuffer param8) { - checkLimit(param8); - GL13.glCompressedTexImage3D(param1, param2, param3, param4, param5, param6, param7, param8); + @Override + public void glCompressedTexImage3D(final int target, final int level, final int internalFormat, final int width, + final int height, final int depth, final int border, final ByteBuffer data) { + checkLimit(data); + GL13.glCompressedTexImage3D(target, level, internalFormat, width, height, depth, border, data); } - public void glCompressedTexSubImage2D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, ByteBuffer param8) { - checkLimit(param8); - GL13.glCompressedTexSubImage2D(param1, param2, param3, param4, param5, param6, param7, param8); + @Override + public void glCompressedTexSubImage2D(final int target, final int level, final int xoffset, final int yoffset, + final int width, final int height, final int format, final ByteBuffer data) { + checkLimit(data); + GL13.glCompressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data); } - public void glCompressedTexSubImage3D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, int param8, int param9, ByteBuffer param10) { - checkLimit(param10); - GL13.glCompressedTexSubImage3D(param1, param2, param3, param4, param5, param6, param7, param8, param9, param10); + @Override + public void glCompressedTexSubImage3D(final int target, final int level, final int xoffset, final int yoffset, + final int zoffset, final int width, final int height, final int depth, + final int format, final ByteBuffer data) { + checkLimit(data); + GL13.glCompressedTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, data); } + @Override public int glCreateProgram() { return GL20.glCreateProgram(); } - public int glCreateShader(int param1) { - return GL20.glCreateShader(param1); + @Override + public int glCreateShader(final int shaderType) { + return GL20.glCreateShader(shaderType); } - public void glCullFace(int param1) { - GL11.glCullFace(param1); + @Override + public void glCullFace(final int mode) { + GL11.glCullFace(mode); } - public void glDeleteBuffers(IntBuffer param1) { - checkLimit(param1); - GL15.glDeleteBuffers(param1); + @Override + public void glDeleteBuffers(final IntBuffer buffers) { + checkLimit(buffers); + GL15.glDeleteBuffers(buffers); } - public void glDeleteProgram(int param1) { - GL20.glDeleteProgram(param1); + @Override + public void glDeleteProgram(final int program) { + GL20.glDeleteProgram(program); } - public void glDeleteShader(int param1) { - GL20.glDeleteShader(param1); + @Override + public void glDeleteShader(final int shader) { + GL20.glDeleteShader(shader); } - public void glDeleteTextures(IntBuffer param1) { - checkLimit(param1); - GL11.glDeleteTextures(param1); + @Override + public void glDeleteTextures(final IntBuffer textures) { + checkLimit(textures); + GL11.glDeleteTextures(textures); } - public void glDepthFunc(int param1) { - GL11.glDepthFunc(param1); + @Override + public void glDepthFunc(final int func) { + GL11.glDepthFunc(func); } - public void glDepthMask(boolean param1) { - GL11.glDepthMask(param1); + @Override + public void glDepthMask(final boolean flag) { + GL11.glDepthMask(flag); } - public void glDepthRange(double param1, double param2) { - GL11.glDepthRange(param1, param2); + @Override + public void glDepthRange(final double nearVal, final double farVal) { + GL11.glDepthRange(nearVal, farVal); } - public void glDetachShader(int param1, int param2) { - GL20.glDetachShader(param1, param2); + @Override + public void glDetachShader(final int program, final int shader) { + GL20.glDetachShader(program, shader); } - public void glDisable(int param1) { - GL11.glDisable(param1); + @Override + public void glDisable(final int cap) { + GL11.glDisable(cap); } - public void glDisableVertexAttribArray(int param1) { - GL20.glDisableVertexAttribArray(param1); + @Override + public void glDisableVertexAttribArray(final int index) { + GL20.glDisableVertexAttribArray(index); } - public void glDrawArrays(int param1, int param2, int param3) { - GL11.glDrawArrays(param1, param2, param3); + @Override + public void glDrawArrays(final int mode, final int first, final int count) { + GL11.glDrawArrays(mode, first, count); } - public void glDrawBuffer(int param1) { - GL11.glDrawBuffer(param1); + @Override + public void glDrawBuffer(final int mode) { + GL11.glDrawBuffer(mode); } - - public void glDrawRangeElements(int param1, int param2, int param3, int param4, int param5, long param6) { - GL12.glDrawRangeElements(param1, param2, param3, param4, param5, param6); + + @Override + public void glDrawRangeElements(final int mode, final int start, final int end, final int count, final int type, + final long indices) { + GL12.glDrawRangeElements(mode, start, end, count, type, indices); } - public void glEnable(int param1) { - GL11.glEnable(param1); + @Override + public void glEnable(final int cap) { + GL11.glEnable(cap); } - public void glEnableVertexAttribArray(int param1) { - GL20.glEnableVertexAttribArray(param1); + @Override + public void glEnableVertexAttribArray(final int index) { + GL20.glEnableVertexAttribArray(index); } @Override - public void glEndQuery(int target) { + public void glEndQuery(final int target) { GL15.glEndQuery(target); } - public void glGenBuffers(IntBuffer param1) { - checkLimit(param1); - GL15.glGenBuffers(param1); + @Override + public void glGenBuffers(final IntBuffer buffers) { + checkLimit(buffers); + GL15.glGenBuffers(buffers); } - public void glGenTextures(IntBuffer param1) { - checkLimit(param1); - GL11.glGenTextures(param1); + @Override + public void glGenTextures(final IntBuffer textures) { + checkLimit(textures); + GL11.glGenTextures(textures); } @Override - public void glGenQueries(int num, IntBuffer ids) { + public void glGenQueries(final int num, final IntBuffer ids) { GL15.glGenQueries(ids); } - public void glGetBoolean(int param1, ByteBuffer param2) { - checkLimit(param2); - GL11.glGetBooleanv(param1, param2); + @Override + public void glGetBoolean(final int pname, final ByteBuffer params) { + checkLimit(params); + GL11.glGetBooleanv(pname, params); } - - public void glGetBufferSubData(int target, long offset, ByteBuffer data) { + + @Override + public void glGetBufferSubData(final int target, final long offset, final ByteBuffer data) { checkLimit(data); GL15.glGetBufferSubData(target, offset, data); } + @Override public int glGetError() { return GL11.glGetError(); } - - public void glGetInteger(int param1, IntBuffer param2) { - checkLimit(param2); - GL11.glGetIntegerv(param1, param2); + + @Override + public void glGetInteger(final int pname, final IntBuffer params) { + checkLimit(params); + GL11.glGetIntegerv(pname, params); } - public void glGetProgram(int param1, int param2, IntBuffer param3) { - checkLimit(param3); - GL20.glGetProgramiv(param1, param2, param3); + @Override + public void glGetProgram(final int program, final int pname, final IntBuffer params) { + checkLimit(params); + GL20.glGetProgramiv(program, pname, params); } - public void glGetShader(int param1, int param2, IntBuffer param3) { - checkLimit(param3); - GL20.glGetShaderiv(param1, param2, param3); + @Override + public void glGetShader(final int shader, final int pname, final IntBuffer params) { + checkLimit(params); + GL20.glGetShaderiv(shader, pname, params); } - public String glGetString(int param1) { - return GL11.glGetString(param1); + @Override + public String glGetString(final int name) { + return GL11.glGetString(name); } - - public String glGetString(int param1, int param2) { - return GL30.glGetStringi(param1, param2); + + @Override + public String glGetString(final int name, final int index) { + return GL30.glGetStringi(name, index); } - public boolean glIsEnabled(int param1) { - return GL11.glIsEnabled(param1); + @Override + public boolean glIsEnabled(final int cap) { + return GL11.glIsEnabled(cap); } - public void glLineWidth(float param1) { - GL11.glLineWidth(param1); + @Override + public void glLineWidth(final float width) { + GL11.glLineWidth(width); } - public void glLinkProgram(int param1) { - GL20.glLinkProgram(param1); + @Override + public void glLinkProgram(final int program) { + GL20.glLinkProgram(program); } - public void glPixelStorei(int param1, int param2) { - GL11.glPixelStorei(param1, param2); + @Override + public void glPixelStorei(final int pname, final int param) { + GL11.glPixelStorei(pname, param); } - public void glPointSize(float param1) { - GL11.glPointSize(param1); + @Override + public void glPointSize(final float size) { + GL11.glPointSize(size); } - public void glPolygonMode(int param1, int param2) { - GL11.glPolygonMode(param1, param2); + @Override + public void glPolygonMode(final int face, final int mode) { + GL11.glPolygonMode(face, mode); } - public void glPolygonOffset(float param1, float param2) { - GL11.glPolygonOffset(param1, param2); + @Override + public void glPolygonOffset(final float factor, final float units) { + GL11.glPolygonOffset(factor, units); } - public void glReadBuffer(int param1) { - GL11.glReadBuffer(param1); + @Override + public void glReadBuffer(final int mode) { + GL11.glReadBuffer(mode); } - public void glReadPixels(int param1, int param2, int param3, int param4, int param5, int param6, ByteBuffer param7) { - checkLimit(param7); - GL11.glReadPixels(param1, param2, param3, param4, param5, param6, param7); + @Override + public void glReadPixels(final int x, final int y, final int width, final int height, final int format, + final int type, final ByteBuffer data) { + checkLimit(data); + GL11.glReadPixels(x, y, width, height, format, type, data); } - - public void glReadPixels(int param1, int param2, int param3, int param4, int param5, int param6, long param7) { - GL11.glReadPixels(param1, param2, param3, param4, param5, param6, param7); + + @Override + public void glReadPixels(final int x, final int y, final int width, final int height, final int format, + final int type, final long offset) { + GL11.glReadPixels(x, y, width, height, format, type, offset); } - public void glScissor(int param1, int param2, int param3, int param4) { - GL11.glScissor(param1, param2, param3, param4); + @Override + public void glScissor(final int x, final int y, final int width, final int height) { + GL11.glScissor(x, y, width, height); } - public void glStencilFuncSeparate(int param1, int param2, int param3, int param4) { - GL20.glStencilFuncSeparate(param1, param2, param3, param4); + @Override + public void glStencilFuncSeparate(final int face, final int func, final int ref, final int mask) { + GL20.glStencilFuncSeparate(face, func, ref, mask); } - public void glStencilOpSeparate(int param1, int param2, int param3, int param4) { - GL20.glStencilOpSeparate(param1, param2, param3, param4); + @Override + public void glStencilOpSeparate(final int face, final int sfail, final int dpfail, final int dppass) { + GL20.glStencilOpSeparate(face, sfail, dpfail, dppass); } - public void glTexImage2D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, int param8, ByteBuffer param9) { - checkLimit(param9); - GL11.glTexImage2D(param1, param2, param3, param4, param5, param6, param7, param8, param9); + @Override + public void glTexImage2D(final int target, final int level, final int internalFormat, final int width, + final int height, final int border, final int format, final int type, + final ByteBuffer data) { + checkLimit(data); + GL11.glTexImage2D(target, level, internalFormat, width, height, border, format, type, data); } - public void glTexImage3D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, int param8, int param9, ByteBuffer param10) { - checkLimit(param10); - GL12.glTexImage3D(param1, param2, param3, param4, param5, param6, param7, param8, param9, param10); + @Override + public void glTexImage3D(final int target, final int level, final int internalFormat, final int width, + final int height, final int depth, final int border, final int format, final int type, + final ByteBuffer data) { + checkLimit(data); + GL12.glTexImage3D(target, level, internalFormat, width, height, depth, border, format, type, data); } - public void glTexParameterf(int param1, int param2, float param3) { - GL11.glTexParameterf(param1, param2, param3); + @Override + public void glTexParameterf(final int target, final int pname, final float param) { + GL11.glTexParameterf(target, pname, param); } - public void glTexParameteri(int param1, int param2, int param3) { - GL11.glTexParameteri(param1, param2, param3); + @Override + public void glTexParameteri(final int target, final int pname, final int param) { + GL11.glTexParameteri(target, pname, param); } - public void glTexSubImage2D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, int param8, ByteBuffer param9) { - checkLimit(param9); - GL11.glTexSubImage2D(param1, param2, param3, param4, param5, param6, param7, param8, param9); + @Override + public void glTexSubImage2D(final int target, final int level, final int xoffset, final int yoffset, + final int width, final int height, final int format, final int type, + final ByteBuffer data) { + checkLimit(data); + GL11.glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, data); } - public void glTexSubImage3D(int param1, int param2, int param3, int param4, int param5, int param6, int param7, int param8, int param9, int param10, ByteBuffer param11) { - checkLimit(param11); - GL12.glTexSubImage3D(param1, param2, param3, param4, param5, param6, param7, param8, param9, param10, param11); + @Override + public void glTexSubImage3D(final int target, final int level, final int xoffset, final int yoffset, + final int zoffset, final int width, final int height, final int depth, final int format, + final int type, final ByteBuffer data) { + checkLimit(data); + GL12.glTexSubImage3D(target, level, xoffset, yoffset, zoffset, width, height, depth, format, type, data); } - public void glUniform1(int param1, FloatBuffer param2) { - checkLimit(param2); - GL20.glUniform1fv(param1, param2); + @Override + public void glUniform1(final int location, final FloatBuffer value) { + checkLimit(value); + GL20.glUniform1fv(location, value); } - public void glUniform1(int param1, IntBuffer param2) { - checkLimit(param2); - GL20.glUniform1iv(param1, param2); + @Override + public void glUniform1(final int location, final IntBuffer value) { + checkLimit(value); + GL20.glUniform1iv(location, value); } - public void glUniform1f(int param1, float param2) { - GL20.glUniform1f(param1, param2); + @Override + public void glUniform1f(final int location, final float v0) { + GL20.glUniform1f(location, v0); } - public void glUniform1i(int param1, int param2) { - GL20.glUniform1i(param1, param2); + @Override + public void glUniform1i(final int location, final int v0) { + GL20.glUniform1i(location, v0); } - public void glUniform2(int param1, IntBuffer param2) { - checkLimit(param2); - GL20.glUniform2iv(param1, param2); + @Override + public void glUniform2(final int location, final IntBuffer value) { + checkLimit(value); + GL20.glUniform2iv(location, value); } - public void glUniform2(int param1, FloatBuffer param2) { - checkLimit(param2); - GL20.glUniform2fv(param1, param2); + @Override + public void glUniform2(final int location, final FloatBuffer value) { + checkLimit(value); + GL20.glUniform2fv(location, value); } - public void glUniform2f(int param1, float param2, float param3) { - GL20.glUniform2f(param1, param2, param3); + @Override + public void glUniform2f(final int location, final float v0, final float v1) { + GL20.glUniform2f(location, v0, v1); } - public void glUniform3(int param1, IntBuffer param2) { - checkLimit(param2); - GL20.glUniform3iv(param1, param2); + @Override + public void glUniform3(final int location, final IntBuffer value) { + checkLimit(value); + GL20.glUniform3iv(location, value); } - public void glUniform3(int param1, FloatBuffer param2) { - checkLimit(param2); - GL20.glUniform3fv(param1, param2); + @Override + public void glUniform3(final int location, final FloatBuffer value) { + checkLimit(value); + GL20.glUniform3fv(location, value); } - public void glUniform3f(int param1, float param2, float param3, float param4) { - GL20.glUniform3f(param1, param2, param3, param4); + @Override + public void glUniform3f(final int location, final float v0, final float v1, final float v2) { + GL20.glUniform3f(location, v0, v1, v2); } - public void glUniform4(int param1, FloatBuffer param2) { - checkLimit(param2); - GL20.glUniform4fv(param1, param2); + @Override + public void glUniform4(final int location, final FloatBuffer value) { + checkLimit(value); + GL20.glUniform4fv(location, value); } - public void glUniform4(int param1, IntBuffer param2) { - checkLimit(param2); - GL20.glUniform4iv(param1, param2); + @Override + public void glUniform4(final int location, final IntBuffer value) { + checkLimit(value); + GL20.glUniform4iv(location, value); } - public void glUniform4f(int param1, float param2, float param3, float param4, float param5) { - GL20.glUniform4f(param1, param2, param3, param4, param5); + @Override + public void glUniform4f(final int location, final float v0, final float v1, final float v2, final float v3) { + GL20.glUniform4f(location, v0, v1, v2, v3); } - public void glUniformMatrix3(int param1, boolean param2, FloatBuffer param3) { - checkLimit(param3); - GL20.glUniformMatrix3fv(param1, param2, param3); + @Override + public void glUniformMatrix3(final int location, final boolean transpose, final FloatBuffer value) { + checkLimit(value); + GL20.glUniformMatrix3fv(location, transpose, value); } - public void glUniformMatrix4(int param1, boolean param2, FloatBuffer param3) { - checkLimit(param3); - GL20.glUniformMatrix4fv(param1, param2, param3); + @Override + public void glUniformMatrix4(final int location, final boolean transpose, final FloatBuffer value) { + checkLimit(value); + GL20.glUniformMatrix4fv(location, transpose, value); } - public void glUseProgram(int param1) { - GL20.glUseProgram(param1); + @Override + public void glUseProgram(final int program) { + GL20.glUseProgram(program); } - public void glVertexAttribPointer(int param1, int param2, int param3, boolean param4, int param5, long param6) { - GL20.glVertexAttribPointer(param1, param2, param3, param4, param5, param6); + @Override + public void glVertexAttribPointer(final int index, final int size, final int type, final boolean normalized, + final int stride, final long pointer) { + GL20.glVertexAttribPointer(index, size, type, normalized, stride, pointer); } - public void glViewport(int param1, int param2, int param3, int param4) { - GL11.glViewport(param1, param2, param3, param4); + @Override + public void glViewport(final int x, final int y, final int width, final int height) { + GL11.glViewport(x, y, width, height); } - public int glGetAttribLocation(int param1, String param2) { + @Override + public int glGetAttribLocation(final int program, final String name) { // NOTE: LWJGL requires null-terminated strings - return GL20.glGetAttribLocation(param1, param2 + "\0"); + return GL20.glGetAttribLocation(program, name + "\0"); } - public int glGetUniformLocation(int param1, String param2) { + @Override + public int glGetUniformLocation(final int program, final String name) { // NOTE: LWJGL requires null-terminated strings - return GL20.glGetUniformLocation(param1, param2 + "\0"); + return GL20.glGetUniformLocation(program, name + "\0"); } - public void glShaderSource(int param1, String[] param2, IntBuffer param3) { - checkLimit(param3); - GL20.glShaderSource(param1, param2); + @Override + public void glShaderSource(final int shader, final String[] strings, final IntBuffer length) { + checkLimit(length); + GL20.glShaderSource(shader, strings); } - public String glGetProgramInfoLog(int program, int maxSize) { + @Override + public String glGetProgramInfoLog(final int program, final int maxSize) { return GL20.glGetProgramInfoLog(program, maxSize); } @@ -492,28 +596,28 @@ public class LwjglGL implements GL, GL2, GL3, GL4 { } @Override - public void glBindFragDataLocation(int param1, int param2, String param3) { - GL30.glBindFragDataLocation(param1, param2, param3); + public void glBindFragDataLocation(final int program, final int colorNumber, final String name) { + GL30.glBindFragDataLocation(program, colorNumber, name); } @Override - public void glBindVertexArray(int param1) { - GL30.glBindVertexArray(param1); + public void glBindVertexArray(final int array) { + GL30.glBindVertexArray(array); } @Override - public void glGenVertexArrays(IntBuffer param1) { - checkLimit(param1); - GL30.glGenVertexArrays(param1); + public void glGenVertexArrays(final IntBuffer arrays) { + checkLimit(arrays); + GL30.glGenVertexArrays(arrays); } @Override - public void glPatchParameter(int count) { - GL40.glPatchParameteri(GL40.GL_PATCH_VERTICES,count); + public void glPatchParameter(final int count) { + GL40.glPatchParameteri(GL40.GL_PATCH_VERTICES, count); } - + @Override - public void glDeleteVertexArrays(IntBuffer arrays) { + public void glDeleteVertexArrays(final IntBuffer arrays) { checkLimit(arrays); ARBVertexArrayObject.glDeleteVertexArrays(arrays); } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLExt.java b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLExt.java index 2ed2ec215..711833822 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLExt.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLExt.java @@ -31,74 +31,65 @@ */ package com.jme3.renderer.lwjgl; -import com.jme3.renderer.RendererException; import com.jme3.renderer.opengl.GLExt; import org.lwjgl.opengl.*; -import java.nio.Buffer; import java.nio.FloatBuffer; import java.nio.IntBuffer; -public class LwjglGLExt implements GLExt { - - private static void checkLimit(Buffer buffer) { - if (buffer == null) { - return; - } - if (buffer.limit() == 0) { - throw new RendererException("Attempting to upload empty buffer (limit = 0), that's an error"); - } - if (buffer.remaining() == 0) { - throw new RendererException("Attempting to upload empty buffer (remaining = 0), that's an error"); - } - } +/** + * The LWJGL implementation og {@link GLExt}. + */ +public class LwjglGLExt extends LwjglRender implements GLExt { @Override - public void glBufferData(int target, IntBuffer data, int usage) { + public void glBufferData(final int target, final IntBuffer data, final int usage) { checkLimit(data); GL15.glBufferData(target, data, usage); } @Override - public void glBufferSubData(int target, long offset, IntBuffer data) { + public void glBufferSubData(final int target, final long offset, final IntBuffer data) { checkLimit(data); GL15.glBufferSubData(target, offset, data); } @Override - public void glDrawArraysInstancedARB(int mode, int first, int count, int primcount) { - ARBDrawInstanced.glDrawArraysInstancedARB(mode, first, count, primcount); + public void glDrawArraysInstancedARB(final int mode, final int first, final int count, final int primCount) { + ARBDrawInstanced.glDrawArraysInstancedARB(mode, first, count, primCount); } @Override - public void glDrawBuffers(IntBuffer bufs) { + public void glDrawBuffers(final IntBuffer bufs) { checkLimit(bufs); GL20.glDrawBuffers(bufs); } @Override - public void glDrawElementsInstancedARB(int mode, int indices_count, int type, long indices_buffer_offset, int primcount) { - ARBDrawInstanced.glDrawElementsInstancedARB(mode, indices_count, type, indices_buffer_offset, primcount); + public void glDrawElementsInstancedARB(final int mode, final int indicesCount, final int type, + final long indicesBufferOffset, final int primCount) { + ARBDrawInstanced.glDrawElementsInstancedARB(mode, indicesCount, type, indicesBufferOffset, primCount); } @Override - public void glGetMultisample(int pname, int index, FloatBuffer val) { + public void glGetMultisample(final int pname, final int index, final FloatBuffer val) { checkLimit(val); ARBTextureMultisample.glGetMultisamplefv(pname, index, val); } @Override - public void glTexImage2DMultisample(int target, int samples, int internalformat, int width, int height, boolean fixedsamplelocations) { - ARBTextureMultisample.glTexImage2DMultisample(target, samples, internalformat, width, height, fixedsamplelocations); + public void glTexImage2DMultisample(final int target, final int samples, final int internalFormat, final int width, + final int height, final boolean fixedSampleLocations) { + ARBTextureMultisample.glTexImage2DMultisample(target, samples, internalFormat, width, height, fixedSampleLocations); } @Override - public void glVertexAttribDivisorARB(int index, int divisor) { + public void glVertexAttribDivisorARB(final int index, final int divisor) { ARBInstancedArrays.glVertexAttribDivisorARB(index, divisor); } @Override - public Object glFenceSync(int condition, int flags) { + public Object glFenceSync(final int condition, final int flags) { return ARBSync.glFenceSync(condition, flags); } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboEXT.java b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboEXT.java index ce2ebe806..52b268317 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboEXT.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboEXT.java @@ -31,106 +31,99 @@ */ package com.jme3.renderer.lwjgl; -import com.jme3.renderer.RendererException; import com.jme3.renderer.opengl.GLFbo; import org.lwjgl.opengl.EXTFramebufferBlit; import org.lwjgl.opengl.EXTFramebufferMultisample; import org.lwjgl.opengl.EXTFramebufferObject; +import org.lwjgl.opengl.EXTTextureArray; -import java.nio.Buffer; import java.nio.IntBuffer; -import org.lwjgl.opengl.EXTTextureArray; /** * Implements GLFbo via GL_EXT_framebuffer_object. - * + * * @author Kirill Vainer */ -public class LwjglGLFboEXT implements GLFbo { - - private static void checkLimit(Buffer buffer) { - if (buffer == null) { - return; - } - if (buffer.limit() == 0) { - throw new RendererException("Attempting to upload empty buffer (limit = 0), that's an error"); - } - if (buffer.remaining() == 0) { - throw new RendererException("Attempting to upload empty buffer (remaining = 0), that's an error"); - } - } - +public class LwjglGLFboEXT extends LwjglRender implements GLFbo { + @Override - public void glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + public void glBlitFramebufferEXT(final int srcX0, final int srcY0, final int srcX1, final int srcY1, + final int dstX0, final int dstY0, final int dstX1, final int dstY1, final int mask, + final int filter) { EXTFramebufferBlit.glBlitFramebufferEXT(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } - + @Override - public void glRenderbufferStorageMultisampleEXT(int target, int samples, int internalformat, int width, int height) { - EXTFramebufferMultisample.glRenderbufferStorageMultisampleEXT(target, samples, internalformat, width, height); + public void glRenderbufferStorageMultisampleEXT(final int target, final int samples, final int internalFormat, + final int width, final int height) { + EXTFramebufferMultisample.glRenderbufferStorageMultisampleEXT(target, samples, internalFormat, width, height); } - + @Override - public void glBindFramebufferEXT(int param1, int param2) { - EXTFramebufferObject.glBindFramebufferEXT(param1, param2); + public void glBindFramebufferEXT(final int target, final int frameBuffer) { + EXTFramebufferObject.glBindFramebufferEXT(target, frameBuffer); } - + @Override - public void glBindRenderbufferEXT(int param1, int param2) { - EXTFramebufferObject.glBindRenderbufferEXT(param1, param2); + public void glBindRenderbufferEXT(final int target, final int renderBuffer) { + EXTFramebufferObject.glBindRenderbufferEXT(target, renderBuffer); } - + @Override - public int glCheckFramebufferStatusEXT(int param1) { - return EXTFramebufferObject.glCheckFramebufferStatusEXT(param1); + public int glCheckFramebufferStatusEXT(final int target) { + return EXTFramebufferObject.glCheckFramebufferStatusEXT(target); } - + @Override - public void glDeleteFramebuffersEXT(IntBuffer param1) { - checkLimit(param1); - EXTFramebufferObject.glDeleteFramebuffersEXT(param1); + public void glDeleteFramebuffersEXT(final IntBuffer frameBuffers) { + checkLimit(frameBuffers); + EXTFramebufferObject.glDeleteFramebuffersEXT(frameBuffers); } - + @Override - public void glDeleteRenderbuffersEXT(IntBuffer param1) { - checkLimit(param1); - EXTFramebufferObject.glDeleteRenderbuffersEXT(param1); + public void glDeleteRenderbuffersEXT(final IntBuffer renderBuffers) { + checkLimit(renderBuffers); + EXTFramebufferObject.glDeleteRenderbuffersEXT(renderBuffers); } - + @Override - public void glFramebufferRenderbufferEXT(int param1, int param2, int param3, int param4) { - EXTFramebufferObject.glFramebufferRenderbufferEXT(param1, param2, param3, param4); + public void glFramebufferRenderbufferEXT(final int target, final int attachment, final int renderBufferTarget, + final int renderBuffer) { + EXTFramebufferObject.glFramebufferRenderbufferEXT(target, attachment, renderBufferTarget, renderBuffer); } - + @Override - public void glFramebufferTexture2DEXT(int param1, int param2, int param3, int param4, int param5) { - EXTFramebufferObject.glFramebufferTexture2DEXT(param1, param2, param3, param4, param5); + public void glFramebufferTexture2DEXT(final int target, final int attachment, final int texTarget, + final int texture, final int level) { + EXTFramebufferObject.glFramebufferTexture2DEXT(target, attachment, texTarget, texture, level); } - + @Override - public void glGenFramebuffersEXT(IntBuffer param1) { - checkLimit(param1); - EXTFramebufferObject.glGenFramebuffersEXT(param1); + public void glGenFramebuffersEXT(final IntBuffer frameBuffers) { + checkLimit(frameBuffers); + EXTFramebufferObject.glGenFramebuffersEXT(frameBuffers); } - + @Override - public void glGenRenderbuffersEXT(IntBuffer param1) { - checkLimit(param1); - EXTFramebufferObject.glGenRenderbuffersEXT(param1); + public void glGenRenderbuffersEXT(final IntBuffer renderBuffers) { + checkLimit(renderBuffers); + EXTFramebufferObject.glGenRenderbuffersEXT(renderBuffers); } - + @Override - public void glGenerateMipmapEXT(int param1) { - EXTFramebufferObject.glGenerateMipmapEXT(param1); + public void glGenerateMipmapEXT(final int target) { + EXTFramebufferObject.glGenerateMipmapEXT(target); } - + @Override - public void glRenderbufferStorageEXT(int param1, int param2, int param3, int param4) { - EXTFramebufferObject.glRenderbufferStorageEXT(param1, param2, param3, param4); + public void glRenderbufferStorageEXT(final int target, final int internalFormat, final int width, + final int height) { + EXTFramebufferObject.glRenderbufferStorageEXT(target, internalFormat, width, height); } - + @Override - public void glFramebufferTextureLayerEXT(int target, int attachment, int texture, int level, int layer) { + public void glFramebufferTextureLayerEXT(final int target, final int attachment, final int texture, final int level, + final int layer) { EXTTextureArray.glFramebufferTextureLayerEXT(target, attachment, texture, level, layer); } } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboGL3.java b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboGL3.java index 39ed0a647..ba699b02a 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboGL3.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglGLFboGL3.java @@ -31,103 +31,96 @@ */ package com.jme3.renderer.lwjgl; -import com.jme3.renderer.RendererException; import com.jme3.renderer.opengl.GLFbo; import org.lwjgl.opengl.GL30; -import java.nio.Buffer; import java.nio.IntBuffer; /** * Implements GLFbo via OpenGL3+. - * + * * @author Kirill Vainer */ -public class LwjglGLFboGL3 implements GLFbo { - - private static void checkLimit(Buffer buffer) { - if (buffer == null) { - return; - } - if (buffer.limit() == 0) { - throw new RendererException("Attempting to upload empty buffer (limit = 0), that's an error"); - } - if (buffer.remaining() == 0) { - throw new RendererException("Attempting to upload empty buffer (remaining = 0), that's an error"); - } - } - +public class LwjglGLFboGL3 extends LwjglRender implements GLFbo { + @Override - public void glBlitFramebufferEXT(int srcX0, int srcY0, int srcX1, int srcY1, int dstX0, int dstY0, int dstX1, int dstY1, int mask, int filter) { + public void glBlitFramebufferEXT(final int srcX0, final int srcY0, final int srcX1, final int srcY1, + final int dstX0, final int dstY0, final int dstX1, final int dstY1, final int mask, + final int filter) { GL30.glBlitFramebuffer(srcX0, srcY0, srcX1, srcY1, dstX0, dstY0, dstX1, dstY1, mask, filter); } - + @Override - public void glRenderbufferStorageMultisampleEXT(int target, int samples, int internalformat, int width, int height) { - GL30.glRenderbufferStorageMultisample(target, samples, internalformat, width, height); + public void glRenderbufferStorageMultisampleEXT(final int target, final int samples, final int internalFormat, + final int width, final int height) { + GL30.glRenderbufferStorageMultisample(target, samples, internalFormat, width, height); } - + @Override - public void glBindFramebufferEXT(int param1, int param2) { - GL30.glBindFramebuffer(param1, param2); + public void glBindFramebufferEXT(final int target, final int frameBuffer) { + GL30.glBindFramebuffer(target, frameBuffer); } - + @Override - public void glBindRenderbufferEXT(int param1, int param2) { - GL30.glBindRenderbuffer(param1, param2); + public void glBindRenderbufferEXT(final int target, final int renderBuffer) { + GL30.glBindRenderbuffer(target, renderBuffer); } - + @Override - public int glCheckFramebufferStatusEXT(int param1) { - return GL30.glCheckFramebufferStatus(param1); + public int glCheckFramebufferStatusEXT(final int target) { + return GL30.glCheckFramebufferStatus(target); } - + @Override - public void glDeleteFramebuffersEXT(IntBuffer param1) { - checkLimit(param1); - GL30.glDeleteFramebuffers(param1); + public void glDeleteFramebuffersEXT(final IntBuffer frameBuffers) { + checkLimit(frameBuffers); + GL30.glDeleteFramebuffers(frameBuffers); } - + @Override - public void glDeleteRenderbuffersEXT(IntBuffer param1) { - checkLimit(param1); - GL30.glDeleteRenderbuffers(param1); + public void glDeleteRenderbuffersEXT(final IntBuffer renderBuffers) { + checkLimit(renderBuffers); + GL30.glDeleteRenderbuffers(renderBuffers); } - + @Override - public void glFramebufferRenderbufferEXT(int param1, int param2, int param3, int param4) { - GL30.glFramebufferRenderbuffer(param1, param2, param3, param4); + public void glFramebufferRenderbufferEXT(final int target, final int attachment, final int renderBufferTarget, + final int renderBuffer) { + GL30.glFramebufferRenderbuffer(target, attachment, renderBufferTarget, renderBuffer); } - + @Override - public void glFramebufferTexture2DEXT(int param1, int param2, int param3, int param4, int param5) { - GL30.glFramebufferTexture2D(param1, param2, param3, param4, param5); + public void glFramebufferTexture2DEXT(final int target, final int attachment, final int texTarget, + final int texture, final int level) { + GL30.glFramebufferTexture2D(target, attachment, texTarget, texture, level); } - + @Override - public void glGenFramebuffersEXT(IntBuffer param1) { - checkLimit(param1); - GL30.glGenFramebuffers(param1); + public void glGenFramebuffersEXT(final IntBuffer frameBuffers) { + checkLimit(frameBuffers); + GL30.glGenFramebuffers(frameBuffers); } - + @Override - public void glGenRenderbuffersEXT(IntBuffer param1) { - checkLimit(param1); - GL30.glGenRenderbuffers(param1); + public void glGenRenderbuffersEXT(final IntBuffer renderBuffers) { + checkLimit(renderBuffers); + GL30.glGenRenderbuffers(renderBuffers); } - + @Override - public void glGenerateMipmapEXT(int param1) { - GL30.glGenerateMipmap(param1); + public void glGenerateMipmapEXT(final int target) { + GL30.glGenerateMipmap(target); } - + @Override - public void glRenderbufferStorageEXT(int param1, int param2, int param3, int param4) { - GL30.glRenderbufferStorage(param1, param2, param3, param4); + public void glRenderbufferStorageEXT(final int target, final int internalFormat, final int width, + final int height) { + GL30.glRenderbufferStorage(target, internalFormat, width, height); } - + @Override - public void glFramebufferTextureLayerEXT(int param1, int param2, int param3, int param4, int param5) { - GL30.glFramebufferTextureLayer(param1, param2, param3, param4, param5); + public void glFramebufferTextureLayerEXT(final int target, final int attachment, final int texture, final int level, + final int layer) { + GL30.glFramebufferTextureLayer(target, attachment, texture, level, layer); } } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglRender.java b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglRender.java new file mode 100644 index 000000000..ebd8d94c3 --- /dev/null +++ b/jme3-lwjgl3/src/main/java/com/jme3/renderer/lwjgl/LwjglRender.java @@ -0,0 +1,25 @@ +package com.jme3.renderer.lwjgl; + +import com.jme3.renderer.RendererException; + +import java.nio.Buffer; + +/** + * The base class of LWJGL implementations. + * + * @author JavaSaBr + */ +public class LwjglRender { + + protected static void checkLimit(final Buffer buffer) { + if (buffer == null) { + return; + } + if (buffer.limit() == 0) { + throw new RendererException("Attempting to upload empty buffer (limit = 0), that's an error"); + } + if (buffer.remaining() == 0) { + throw new RendererException("Attempting to upload empty buffer (remaining = 0), that's an error"); + } + } +} diff --git a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java index 3e9662668..845962cfe 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglContext.java @@ -33,12 +33,14 @@ package com.jme3.system.lwjgl; import static com.jme3.util.LWJGLBufferAllocator.PROPERTY_CONCURRENT_BUFFER_ALLOCATOR; +import static java.util.stream.Collectors.toSet; import static org.lwjgl.opencl.CL10.CL_CONTEXT_PLATFORM; import static org.lwjgl.opengl.GL.createCapabilities; import static org.lwjgl.opengl.GL11.glGetInteger; import com.jme3.input.lwjgl.GlfwJoystickInput; import com.jme3.input.lwjgl.GlfwKeyInput; import com.jme3.input.lwjgl.GlfwMouseInput; +import com.jme3.lwjgl3.utils.APIUtil; import com.jme3.opencl.Context; import com.jme3.opencl.DefaultPlatformChooser; import com.jme3.opencl.Device; @@ -61,6 +63,7 @@ import com.jme3.util.BufferAllocatorFactory; import com.jme3.util.LWJGLBufferAllocator; import com.jme3.util.LWJGLBufferAllocator.ConcurrentLWJGLBufferAllocator; import org.lwjgl.PointerBuffer; +import org.lwjgl.Version; import org.lwjgl.glfw.GLFW; import org.lwjgl.opencl.APPLEGLSharing; import org.lwjgl.opencl.CL10; @@ -69,11 +72,11 @@ import org.lwjgl.opengl.ARBDebugOutput; import org.lwjgl.opengl.ARBFramebufferObject; import org.lwjgl.opengl.EXTFramebufferMultisample; import org.lwjgl.opengl.GLCapabilities; +import org.lwjgl.system.MemoryStack; import org.lwjgl.system.Platform; import java.nio.IntBuffer; -import java.util.ArrayList; -import java.util.List; +import java.util.*; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Level; import java.util.logging.Logger; @@ -98,35 +101,48 @@ public abstract class LwjglContext implements JmeContext { } } + private static final Set SUPPORTED_RENDERS = new HashSet<>(Arrays.asList( + AppSettings.LWJGL_OPENGL2, + AppSettings.LWJGL_OPENGL3, + AppSettings.LWJGL_OPENGL33, + AppSettings.LWJGL_OPENGL4, + AppSettings.LWJGL_OPENGL41, + AppSettings.LWJGL_OPENGL42, + AppSettings.LWJGL_OPENGL43, + AppSettings.LWJGL_OPENGL44, + AppSettings.LWJGL_OPENGL45 + )); + public static final boolean CL_GL_SHARING_POSSIBLE = true; - - protected static final String THREAD_NAME = "jME3 Main"; - protected AtomicBoolean created = new AtomicBoolean(false); - protected AtomicBoolean renderable = new AtomicBoolean(false); protected final Object createdLock = new Object(); + protected final AtomicBoolean created = new AtomicBoolean(false); + protected final AtomicBoolean renderable = new AtomicBoolean(false); + protected final AppSettings settings = new AppSettings(true); - protected AppSettings settings = new AppSettings(true); - protected Renderer renderer; protected GlfwKeyInput keyInput; protected GlfwMouseInput mouseInput; protected GlfwJoystickInput joyInput; + protected Timer timer; + + protected Renderer renderer; protected SystemListener listener; protected com.jme3.opencl.lwjgl.LwjglContext clContext; - public void setSystemListener(SystemListener listener) { + @Override + public void setSystemListener(final SystemListener listener) { this.listener = listener; } protected void printContextInitInfo() { - logger.log(Level.INFO, "LWJGL {0} context running on thread {1}\n" - + " * Graphics Adapter: GLFW {2}", - new Object[]{org.lwjgl.Version.getVersion(), Thread.currentThread().getName(), GLFW.glfwGetVersionString()}); + logger.log(Level.INFO, "LWJGL {0} context running on thread {1}\n * Graphics Adapter: GLFW {2}", + APIUtil.toArray(Version.getVersion(), Thread.currentThread().getName(), GLFW.glfwGetVersionString())); } protected int determineMaxSamples() { + // If we already have a valid context, determine samples using current context. if (GLFW.glfwExtensionSupported("GL_ARB_framebuffer_object")) { return glGetInteger(ARBFramebufferObject.GL_MAX_SAMPLES); @@ -138,19 +154,19 @@ public abstract class LwjglContext implements JmeContext { } protected int getNumSamplesToUse() { + int samples = 0; + if (settings.getSamples() > 1) { samples = settings.getSamples(); final int supportedSamples = determineMaxSamples(); if (supportedSamples < samples) { - logger.log(Level.WARNING, - "Couldn't satisfy antialiasing samples requirement: x{0}. " - + "Video hardware only supports: x{1}", - new Object[]{samples, supportedSamples}); - + logger.log(Level.WARNING, "Couldn't satisfy antialiasing samples requirement: x{0}. " + + "Video hardware only supports: x{1}", APIUtil.toArray(samples, supportedSamples)); samples = supportedSamples; } } + return samples; } @@ -161,53 +177,42 @@ public abstract class LwjglContext implements JmeContext { if (!capabilities.OpenGL20) { throw new RendererException("OpenGL 2.0 or higher is required for jMonkeyEngine"); + } else if (!SUPPORTED_RENDERS.contains(renderer)) { + throw new UnsupportedOperationException("Unsupported renderer: " + renderer); } - if (renderer.equals(AppSettings.LWJGL_OPENGL2) - || renderer.equals(AppSettings.LWJGL_OPENGL3) - || renderer.equals(AppSettings.LWJGL_OPENGL33) - || renderer.equals(AppSettings.LWJGL_OPENGL4) - || renderer.equals(AppSettings.LWJGL_OPENGL41) - || renderer.equals(AppSettings.LWJGL_OPENGL42) - || renderer.equals(AppSettings.LWJGL_OPENGL43) - || renderer.equals(AppSettings.LWJGL_OPENGL44) - || renderer.equals(AppSettings.LWJGL_OPENGL45)) { - - GL gl = new LwjglGL(); - GLExt glext = new LwjglGLExt(); - GLFbo glfbo; - - if (capabilities.OpenGL30) { - glfbo = new LwjglGLFboGL3(); - } else { - glfbo = new LwjglGLFboEXT(); - } + GL gl = new LwjglGL(); + GLExt glext = new LwjglGLExt(); + GLFbo glfbo; - if (settings.getBoolean("GraphicsDebug")) { - gl = new GLDebugDesktop(gl, glext, glfbo); - glext = (GLExt) gl; - glfbo = (GLFbo) gl; - } + if (capabilities.OpenGL30) { + glfbo = new LwjglGLFboGL3(); + } else { + glfbo = new LwjglGLFboEXT(); + } - if (settings.getBoolean("GraphicsTiming")) { - GLTimingState timingState = new GLTimingState(); - gl = (GL) GLTiming.createGLTiming(gl, timingState, GL.class, GL2.class, GL3.class, GL4.class); - glext = (GLExt) GLTiming.createGLTiming(glext, timingState, GLExt.class); - glfbo = (GLFbo) GLTiming.createGLTiming(glfbo, timingState, GLFbo.class); - } + if (settings.getBoolean("GraphicsDebug")) { + gl = new GLDebugDesktop(gl, glext, glfbo); + glext = (GLExt) gl; + glfbo = (GLFbo) gl; + } - if (settings.getBoolean("GraphicsTrace")) { - gl = (GL) GLTracer.createDesktopGlTracer(gl, GL.class, GL2.class, GL3.class, GL4.class); - glext = (GLExt) GLTracer.createDesktopGlTracer(glext, GLExt.class); - glfbo = (GLFbo) GLTracer.createDesktopGlTracer(glfbo, GLFbo.class); - } + if (settings.getBoolean("GraphicsTiming")) { + GLTimingState timingState = new GLTimingState(); + gl = (GL) GLTiming.createGLTiming(gl, timingState, GL.class, GL2.class, GL3.class, GL4.class); + glext = (GLExt) GLTiming.createGLTiming(glext, timingState, GLExt.class); + glfbo = (GLFbo) GLTiming.createGLTiming(glfbo, timingState, GLFbo.class); + } - this.renderer = new GLRenderer(gl, glext, glfbo); - this.renderer.initialize(); - } else { - throw new UnsupportedOperationException("Unsupported renderer: " + renderer); + if (settings.getBoolean("GraphicsTrace")) { + gl = (GL) GLTracer.createDesktopGlTracer(gl, GL.class, GL2.class, GL3.class, GL4.class); + glext = (GLExt) GLTracer.createDesktopGlTracer(glext, GLExt.class); + glfbo = (GLFbo) GLTracer.createDesktopGlTracer(glfbo, GLFbo.class); } + this.renderer = new GLRenderer(gl, glext, glfbo); + this.renderer.initialize(); + if (capabilities.GL_ARB_debug_output && settings.getBoolean("GraphicsDebug")) { ARBDebugOutput.glDebugMessageCallbackARB(new LwjglGLDebugOutputHandler(), 0); } @@ -227,42 +232,41 @@ public abstract class LwjglContext implements JmeContext { if (joyInput != null) { joyInput.initialize(); } + renderable.set(true); - } /** * Returns a list of the available platforms, filtered by the specified * filter. - * + *

* Copied from the old release * * @return the available platforms */ private static long[] getPlatforms() { - int[] count = new int[1]; - int errcode = CL10.clGetPlatformIDs(null, count); - Utils.checkError(errcode, "clGetDeviceIDs"); + try (MemoryStack stack = MemoryStack.stackPush()) { - int num_platforms = count[0]; - if (num_platforms == 0) { - return new long[0]; - } + final IntBuffer countBuffer = stack.callocInt(1); + int errcode = CL10.clGetPlatformIDs(null, countBuffer); + Utils.checkError(errcode, "clGetDeviceIDs"); - PointerBuffer platforms = PointerBuffer.allocateDirect(num_platforms); - errcode = CL10.clGetPlatformIDs(platforms, (IntBuffer) null); - Utils.checkError(errcode, "clGetDeviceIDs"); + final int count = countBuffer.get(); + final PointerBuffer pointer = stack.callocPointer(count); - platforms.rewind(); - long[] platformIDs = new long[num_platforms]; - for (int i = 0; i < num_platforms; i++) { - platformIDs[i] = platforms.get(); - } + errcode = CL10.clGetPlatformIDs(pointer, (IntBuffer) null); + Utils.checkError(errcode, "clGetDeviceIDs"); + + final long[] platformIDs = new long[count]; + for (int i = 0; i < count; i++) { + platformIDs[i] = pointer.get(); + } - return platformIDs; + return platformIDs; + } } - protected void initOpenCL(long window) { + protected void initOpenCL(final long window) { logger.info("Initialize OpenCL with LWJGL3"); // try { @@ -272,16 +276,18 @@ public abstract class LwjglContext implements JmeContext { // return; // } - //load platforms and devices + // load platforms and devices StringBuilder platformInfos = new StringBuilder(); - ArrayList platforms = new ArrayList<>(); - for (long p : getPlatforms()) { - platforms.add(new LwjglPlatform(p)); + List platforms = new ArrayList<>(); + for (long platformId : getPlatforms()) { + platforms.add(new LwjglPlatform(platformId)); } + platformInfos.append("Available OpenCL platforms:"); - for (int i=0; i choosenDevices = chooser.chooseDevices(platforms); - List devices = new ArrayList<>(choosenDevices.size()); - LwjglPlatform platform = null; - for (Device d : choosenDevices) { - if (!(d instanceof LwjglDevice)) { - logger.log(Level.SEVERE, "attempt to return a custom Device implementation from PlatformChooser: {0}", d); - return; - } - LwjglDevice ld = (LwjglDevice) d; - if (platform == null) { - platform = ld.getPlatform(); - } else if (platform != ld.getPlatform()) { - logger.severe("attempt to use devices from different platforms"); - return; - } - devices.add(ld.getDevice()); + + final List choosenDevices = chooser.chooseDevices(platforms); + final Optional unsupportedDevice = choosenDevices.stream() + .filter(dev -> !(dev instanceof LwjglDevice)) + .findAny(); + + if (unsupportedDevice.isPresent()) { + logger.log(Level.SEVERE, "attempt to return a custom Device implementation " + + "from PlatformChooser: {0}", unsupportedDevice.get()); + return; + } + + final Set lwjglPlatforms = choosenDevices.stream() + .map(LwjglDevice.class::cast) + .map(LwjglDevice::getPlatform) + .collect(toSet()); + + if (lwjglPlatforms.size() != 1) { + logger.severe("attempt to use devices from different platforms"); + return; } - if (devices.isEmpty()) { + + final long[] deviceIds = choosenDevices.stream() + .map(LwjglDevice.class::cast) + .mapToLong(LwjglDevice::getDevice) + .toArray(); + + if (deviceIds.length < 1) { logger.warning("no devices specified, no OpenCL context created"); return; } + + final LwjglPlatform platform = lwjglPlatforms.stream() + .findFirst() + .orElseThrow(() -> new RuntimeException("not found a platform")); + logger.log(Level.INFO, "chosen platform: {0}", platform.getName()); logger.log(Level.INFO, "chosen devices: {0}", choosenDevices); - //create context + // create context try { - long c = createContext(platform.getPlatform(), devices, window); - clContext = new com.jme3.opencl.lwjgl.LwjglContext(c, (List) choosenDevices); + long context = createContext(platform.getPlatform(), deviceIds, window); + clContext = new com.jme3.opencl.lwjgl.LwjglContext(context, (List) choosenDevices); } catch (final Exception ex) { logger.log(Level.SEVERE, "Unable to create OpenCL context", ex); return; @@ -358,50 +381,52 @@ public abstract class LwjglContext implements JmeContext { logger.info("OpenCL context created"); } - private long createContext(final long platform, final List devices, long window) throws Exception { - - final int propertyCount = 2 + 4 + 1; - final PointerBuffer properties = PointerBuffer.allocateDirect(propertyCount + devices.size()); - - //set sharing properties - //https://github.com/glfw/glfw/issues/104 - //https://github.com/LWJGL/lwjgl3/blob/master/modules/core/src/test/java/org/lwjgl/demo/opencl/Mandelbrot.java - //TODO: test on Linus and MacOSX - switch (Platform.get()) { - case WINDOWS: - properties - .put(KHRGLSharing.CL_GL_CONTEXT_KHR) - .put(org.lwjgl.glfw.GLFWNativeWGL.glfwGetWGLContext(window)) - .put(KHRGLSharing.CL_WGL_HDC_KHR) - .put(org.lwjgl.opengl.WGL.wglGetCurrentDC()); - break; - case LINUX: - properties - .put(KHRGLSharing.CL_GL_CONTEXT_KHR) - .put(org.lwjgl.glfw.GLFWNativeGLX.glfwGetGLXContext(window)) - .put(KHRGLSharing.CL_GLX_DISPLAY_KHR) - .put(org.lwjgl.glfw.GLFWNativeX11.glfwGetX11Display()); - break; - case MACOSX: - properties - .put(APPLEGLSharing.CL_CONTEXT_PROPERTY_USE_CGL_SHAREGROUP_APPLE) - .put(org.lwjgl.opengl.CGL.CGLGetShareGroup(org.lwjgl.opengl.CGL.CGLGetCurrentContext())); - } - properties.put(CL_CONTEXT_PLATFORM).put(platform); - properties.put(0); - properties.flip(); - - Utils.errorBuffer.rewind(); - PointerBuffer deviceBuffer = PointerBuffer.allocateDirect(devices.size()); - for (long d : devices) { - deviceBuffer.put(d); + private long createContext(final long platform, final long[] devices, long window) { + try (MemoryStack stack = MemoryStack.stackPush()) { + + final int propertyCount = 2 + 4 + 1; + final PointerBuffer properties = stack.callocPointer(propertyCount + devices.length); + + // set sharing properties + // https://github.com/glfw/glfw/issues/104 + // https://github.com/LWJGL/lwjgl3/blob/master/modules/core/src/test/java/org/lwjgl/demo/opencl/Mandelbrot.java + // TODO: test on Linux and MacOSX + switch (Platform.get()) { + case WINDOWS: + properties.put(KHRGLSharing.CL_GL_CONTEXT_KHR) + .put(org.lwjgl.glfw.GLFWNativeWGL.glfwGetWGLContext(window)) + .put(KHRGLSharing.CL_WGL_HDC_KHR) + .put(org.lwjgl.opengl.WGL.wglGetCurrentDC()); + break; + case LINUX: + properties.put(KHRGLSharing.CL_GL_CONTEXT_KHR) + .put(org.lwjgl.glfw.GLFWNativeGLX.glfwGetGLXContext(window)) + .put(KHRGLSharing.CL_GLX_DISPLAY_KHR) + .put(org.lwjgl.glfw.GLFWNativeX11.glfwGetX11Display()); + break; + case MACOSX: + properties.put(APPLEGLSharing.CL_CONTEXT_PROPERTY_USE_CGL_SHAREGROUP_APPLE) + .put(org.lwjgl.opengl.CGL.CGLGetShareGroup(org.lwjgl.opengl.CGL.CGLGetCurrentContext())); + } + + properties.put(CL_CONTEXT_PLATFORM).put(platform); + properties.put(0); + properties.flip(); + + final IntBuffer error = stack.callocInt(1); + final PointerBuffer deviceBuffer = stack.callocPointer(devices.length); + for (final long deviceId : devices) { + deviceBuffer.put(deviceId); + } + + deviceBuffer.flip(); + + long context = CL10.clCreateContext(properties, deviceBuffer, null, 0, error); + Utils.checkError(error, "clCreateContext"); + + return context; } - deviceBuffer.flip(); - long context = CL10.clCreateContext(properties, deviceBuffer, null, 0, Utils.errorBuffer); - Utils.checkError(Utils.errorBuffer, "clCreateContext"); - - return context; } public void internalDestroy() { @@ -419,7 +444,6 @@ public abstract class LwjglContext implements JmeContext { created.set(true); createdLock.notifyAll(); } - initContextFirstTime(); } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglGLDebugOutputHandler.java b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglGLDebugOutputHandler.java index d03f54962..aa9c46511 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglGLDebugOutputHandler.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglGLDebugOutputHandler.java @@ -75,14 +75,4 @@ class LwjglGLDebugOutputHandler extends GLDebugMessageARBCallback { System.err.println(String.format(MESSAGE_FORMAT, id, sourceStr, typeStr, severityStr, message)); } - - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } } diff --git a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java index 24c6b3fd9..453258b27 100644 --- a/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java +++ b/jme3-lwjgl3/src/main/java/com/jme3/system/lwjgl/LwjglWindow.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,6 +53,9 @@ import org.lwjgl.glfw.*; import java.awt.*; import java.awt.image.BufferedImage; import java.nio.ByteBuffer; +import java.util.EnumSet; +import java.util.HashMap; +import java.util.Map; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Level; import java.util.logging.Logger; @@ -66,6 +69,48 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { private static final Logger LOGGER = Logger.getLogger(LwjglWindow.class.getName()); + private static final EnumSet SUPPORTED_TYPES = EnumSet.of( + JmeContext.Type.Display, + JmeContext.Type.Canvas, + JmeContext.Type.OffscreenSurface); + + private static final Map RENDER_CONFIGS = new HashMap<>(); + + static { + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL3, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL33, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL4, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL41, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL42, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL43, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL44, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 4); + }); + RENDER_CONFIGS.put(AppSettings.LWJGL_OPENGL45, () -> { + glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); + glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 5); + }); + } + protected final AtomicBoolean needClose = new AtomicBoolean(false); protected final AtomicBoolean needRestart = new AtomicBoolean(false); @@ -86,7 +131,8 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { protected boolean allowSwapBuffers = false; public LwjglWindow(final JmeContext.Type type) { - if (!JmeContext.Type.Display.equals(type) && !JmeContext.Type.OffscreenSurface.equals(type) && !JmeContext.Type.Canvas.equals(type)) { + + if (!SUPPORTED_TYPES.contains(type)) { throw new IllegalArgumentException("Unsupported type '" + type.name() + "' provided"); } @@ -101,7 +147,7 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { } /** - * Set the title if its a windowed display + * Set the title if it's a windowed display * * @param title the title to set */ @@ -112,7 +158,7 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { } /** - * Restart if its a windowed or full-screen display. + * Restart if it's a windowed or full-screen display. */ public void restart() { if (created.get()) { @@ -134,16 +180,6 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { final String message = GLFWErrorCallback.getDescription(description); listener.handleError(message, new Exception(message)); } - - @Override - public void close(){ - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); if (!glfwInit()) { @@ -157,36 +193,12 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_TRUE); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); - if (renderer.equals(AppSettings.LWJGL_OPENGL3)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL33)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL4)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL41)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL42)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL43)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL44)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 4); - } else if (renderer.equals(AppSettings.LWJGL_OPENGL45)) { - glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 4); - glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 5); - } else { + RENDER_CONFIGS.computeIfAbsent(renderer, s -> () -> { glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GLFW_FALSE); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_ANY_PROFILE); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 2); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 0); - } + }).run(); if (settings.getBoolean("RendererDebug")) { glfwWindowHint(GLFW_OPENGL_DEBUG_CONTEXT, GLFW_TRUE); @@ -242,16 +254,6 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { settings.setResolution(width, height); listener.reshape(width, height); } - - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); glfwSetWindowFocusCallback(window, windowFocusCallback = new GLFWWindowFocusCallback() { @@ -264,20 +266,9 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { } else { listener.loseFocus(); } - wasActive = !wasActive; } } - - @Override - public void close() { - super.close(); - } - - @Override - public void callback(long args) { - super.callback(args); - } }); // Center the window @@ -434,15 +425,12 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { try { if (!JmeSystem.isLowPermissions()) { // Enable uncaught exception handler only for current thread - Thread.currentThread().setUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { - @Override - public void uncaughtException(Thread thread, Throwable thrown) { - listener.handleError("Uncaught exception thrown in " + thread.toString(), thrown); - if (needClose.get()) { - // listener.handleError() has requested the - // context to close. Satisfy request. - deinitInThread(); - } + Thread.currentThread().setUncaughtExceptionHandler((thread, thrown) -> { + listener.handleError("Uncaught exception thrown in " + thread.toString(), thrown); + if (needClose.get()) { + // listener.handleError() has requested the + // context to close. Satisfy request. + deinitInThread(); } }); } @@ -600,6 +588,7 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { deinitInThread(); } + @Override public JoyInput getJoyInput() { if (joyInput == null) { joyInput = new GlfwJoystickInput(); @@ -607,6 +596,7 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { return joyInput; } + @Override public MouseInput getMouseInput() { if (mouseInput == null) { mouseInput = new GlfwMouseInput(this); @@ -614,22 +604,25 @@ public abstract class LwjglWindow extends LwjglContext implements Runnable { return mouseInput; } + @Override public KeyInput getKeyInput() { if (keyInput == null) { keyInput = new GlfwKeyInput(this); } - return keyInput; } + @Override public TouchInput getTouchInput() { return null; } + @Override public void setAutoFlushFrames(boolean enabled) { this.autoFlush = enabled; } + @Override public void destroy(boolean waitFor) { needClose.set(true); diff --git a/jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java b/jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java index 6d6fcef7b..0cddbdd24 100644 --- a/jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java +++ b/jme3-networking/src/main/java/com/jme3/network/base/KernelAdapter.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -152,7 +152,7 @@ public class KernelAdapter extends Thread * than for any user-code safety. 99% of the time the user code should * be writing for multithreaded access anyway. * - *

The issue with the messages is that if a an implementation is + *

The issue with the messages is that if an implementation is * using a general thread pool then it would be possible for a * naive implementation to have one thread grab an Envelope from * connection 1's and another grab the next Envelope. Since an Envelope diff --git a/jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java b/jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java index 1f44fed0a..024c4d009 100644 --- a/jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java +++ b/jme3-networking/src/main/java/com/jme3/network/base/NioKernelFactory.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -37,7 +37,7 @@ import java.io.IOException; /** - * KernelFactory implemention for creating TCP kernels + * KernelFactory implementation for creating TCP kernels * using the NIO selector model. * * @version $Revision$ diff --git a/jme3-networking/src/main/java/com/jme3/network/service/rmi/RmiHostedService.java b/jme3-networking/src/main/java/com/jme3/network/service/rmi/RmiHostedService.java index ebd0e5908..766627464 100644 --- a/jme3-networking/src/main/java/com/jme3/network/service/rmi/RmiHostedService.java +++ b/jme3-networking/src/main/java/com/jme3/network/service/rmi/RmiHostedService.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 jMonkeyEngine + * Copyright (c) 2015-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -150,7 +150,7 @@ public class RmiHostedService extends AbstractHostedService { * Set to true if all new connections should automatically have RMI hosting started. * Set to false if the game-specific connection setup will call startHostingOnConnection() * after some connection setup is done (for example, logging in). Note: generally - * is is safe to autohost RMI as long as callers are careful about what they've added + * is safe to autohost RMI as long as callers are careful about what they've added * using shareGlobal(). One reasonable use-case is to shareGlobal() some kind of login * service and nothing else. All other shared objects would then be added as connection * specific objects during successful login processing. @@ -167,7 +167,7 @@ public class RmiHostedService extends AbstractHostedService { } /** - * Returns the RMI registry for the specific HostedConection. Each connection + * Returns the RMI registry for the specific HostedConnection. Each connection * has its own registry with its own connection-specific shared objects. */ public RmiRegistry getRmiRegistry( HostedConnection hc ) { diff --git a/jme3-networking/src/main/java/com/jme3/network/util/AbstractMessageDelegator.java b/jme3-networking/src/main/java/com/jme3/network/util/AbstractMessageDelegator.java index a73496ea8..f8b1be2f5 100644 --- a/jme3-networking/src/main/java/com/jme3/network/util/AbstractMessageDelegator.java +++ b/jme3-networking/src/main/java/com/jme3/network/util/AbstractMessageDelegator.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 jMonkeyEngine + * Copyright (c) 2015-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -90,7 +90,7 @@ public abstract class AbstractMessageDelegator /** * Returns true if the specified method is valid for the specified * message type. This is used internally during automapping to - * provide implementation specific filting of methods. + * provide implementation specific filtering of methods. * This implementation checks for methods that take either the connection and message * type arguments (in that order) or just the message type. */ @@ -129,7 +129,7 @@ public abstract class AbstractMessageDelegator /** * Convenience method that returns the message type as - * reflecively determined for a particular method. This + * reflectively determined for a particular method. This * only works with methods that actually have arguments. * This implementation returns the last element of the method's * getParameterTypes() array, thus supporting both @@ -167,7 +167,7 @@ public abstract class AbstractMessageDelegator /** * Returns true if the specified method name is allowed. * This is used by automapping to determine if a method - * should be rejected purely on name. Default implemention + * should be rejected purely on name. Default implementation * always returns true. */ protected boolean allowName( String name ) { diff --git a/jme3-niftygui/build.gradle b/jme3-niftygui/build.gradle index 4945ea407..7db287711 100644 --- a/jme3-niftygui/build.gradle +++ b/jme3-niftygui/build.gradle @@ -2,17 +2,11 @@ if (!hasProperty('mainClass')) { ext.mainClass = '' } -repositories { - maven{ - url 'http://nifty-gui.sourceforge.net/nifty-maven-repo' - } -} - dependencies { compile project(':jme3-core') - compile 'lessvoid:nifty:1.4.1' - compile 'lessvoid:nifty-default-controls:1.4.1' - compile 'lessvoid:nifty-style-black:1.4.1' + compile 'com.github.nifty-gui:nifty:1.4.2' + compile 'com.github.nifty-gui:nifty-default-controls:1.4.2' + compile 'com.github.nifty-gui:nifty-style-black:1.4.2' } ext.pomConfig = { @@ -44,4 +38,4 @@ ext.pomConfig = { url "http://nifty-gui.sourceforge.net/nifty-maven-repo" } } -} \ No newline at end of file +} diff --git a/jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java index d76fc0b20..38c7427f1 100644 --- a/jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java +++ b/jme3-niftygui/src/main/java/com/jme3/niftygui/InputSystemJme.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -95,7 +95,7 @@ public class InputSystemJme implements InputSystem, RawInputListener { /** * @param height The height of the viewport. Used to convert - * buttom-left origin to upper-left origin. + * bottom-left origin to upper-left origin. */ public void setHeight(int height) { this.height = height; @@ -179,7 +179,7 @@ public class InputSystemJme implements InputSystem, RawInputListener { } private void onTouchEventQueued(TouchEvent evt, NiftyInputConsumer nic) { - if (inputManager.getSimulateMouse()) { + if (inputManager.isSimulateMouse()) { return; } @@ -311,7 +311,7 @@ public class InputSystemJme implements InputSystem, RawInputListener { final TextField textField = element.getNiftyControl(TextField.class); if (textField != null) { Logger.getLogger(InputSystemJme.class.getName()).log(Level.FINE, "Current TextField: {0}", textField.getId()); - String initialValue = textField.getText(); + String initialValue = textField.getRealText(); if (initialValue == null) { initialValue = ""; } diff --git a/jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java index cea3b7531..10104224c 100644 --- a/jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java +++ b/jme3-niftygui/src/main/java/com/jme3/niftygui/JmeBatchRenderBackend.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -219,7 +219,7 @@ public class JmeBatchRenderBackend implements BatchRenderBackend { @Override public Image loadImage(final ByteBuffer imageData, final int imageWidth, final int imageHeight) { - return new ImageImpl(new com.jme3.texture.Image(Format.RGBA8, imageWidth, imageHeight, imageData)); + return new ImageImpl(new com.jme3.texture.Image(Format.RGBA8, imageWidth, imageHeight, imageData, ColorSpace.Linear)); } @Override diff --git a/jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java index 4f6d6de7b..435890151 100644 --- a/jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java +++ b/jme3-niftygui/src/main/java/com/jme3/niftygui/NiftyJmeDisplay.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -52,7 +52,7 @@ import com.jme3.texture.FrameBuffer; import de.lessvoid.nifty.Nifty; import de.lessvoid.nifty.render.batch.BatchRenderConfiguration; import de.lessvoid.nifty.render.batch.BatchRenderDevice; -import de.lessvoid.nifty.tools.TimeProvider; +import de.lessvoid.nifty.spi.time.impl.AccurateTimeProvider; import de.lessvoid.nifty.tools.resourceloader.ResourceLocation; public class NiftyJmeDisplay implements SceneProcessor { @@ -167,7 +167,7 @@ public class NiftyJmeDisplay implements SceneProcessor { * * Currently you have to make sure to not use more image space than this single texture provides. However, Nifty * tries to be smart about this and internally will make sure that only the images are uploaded that your GUI - * really needs. So in general this shoudln't be an issue. + * really needs. So in general this shouldn't be an issue. * * A complete re-organisation of the texture atlas happens when a Nifty screen ends and another begins. Dynamically * adding images while a screen is running is supported as well. @@ -210,7 +210,7 @@ public class NiftyJmeDisplay implements SceneProcessor { new BatchRenderDevice(batchRendererBackend, batchRenderConfiguration), soundDev, inputSys, - new TimeProvider()); + new AccurateTimeProvider()); inputSys.setNifty(nifty); resourceLocation = new ResourceLocationJme(); @@ -233,7 +233,7 @@ public class NiftyJmeDisplay implements SceneProcessor { new BatchRenderDevice(batchRendererBackend, batchRenderConfiguration), soundDev, inputSys, - new TimeProvider()); + new AccurateTimeProvider()); inputSys.setNifty(nifty); resourceLocation = new ResourceLocationJme(); @@ -259,7 +259,7 @@ public class NiftyJmeDisplay implements SceneProcessor { this.renderDev = new RenderDeviceJme(this); this.batchRendererBackend = null; - nifty = new Nifty(renderDev, soundDev, inputSys, new TimeProvider()); + nifty = new Nifty(renderDev, soundDev, inputSys, new AccurateTimeProvider()); inputSys.setNifty(nifty); resourceLocation = new ResourceLocationJme(); diff --git a/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java index d7eeea71d..7868468e9 100644 --- a/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java +++ b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundDeviceJme.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -32,6 +32,7 @@ package com.jme3.niftygui; import com.jme3.asset.AssetManager; +import com.jme3.audio.AudioData; import com.jme3.audio.AudioNode; import com.jme3.audio.AudioRenderer; import de.lessvoid.nifty.sound.SoundSystem; @@ -53,7 +54,7 @@ public class SoundDeviceJme implements SoundDevice { } public SoundHandle loadSound(SoundSystem soundSystem, String filename) { - AudioNode an = new AudioNode(assetManager, filename, false); + AudioNode an = new AudioNode(assetManager, filename, AudioData.DataType.Buffer); an.setPositional(false); return new SoundHandleJme(ar, an); } diff --git a/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java index 97f84bc56..545f3d201 100644 --- a/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java +++ b/jme3-niftygui/src/main/java/com/jme3/niftygui/SoundHandleJme.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -32,6 +32,7 @@ package com.jme3.niftygui; import com.jme3.asset.AssetManager; +import com.jme3.audio.AudioData; import com.jme3.audio.AudioNode; import com.jme3.audio.AudioSource.Status; import com.jme3.audio.AudioRenderer; @@ -77,7 +78,7 @@ public class SoundHandleJme implements SoundHandle { node.stop(); } - node = new AudioNode(am, fileName, true); + node = new AudioNode(am, fileName,AudioData.DataType.Stream); node.setPositional(false); node.setVolume(volume); node.play(); diff --git a/jme3-plugins/src/fbx/java/com/jme3/scene/plugins/fbx/SceneLoader.java b/jme3-plugins/src/fbx/java/com/jme3/scene/plugins/fbx/SceneLoader.java index accbdbbf4..43565837a 100644 --- a/jme3-plugins/src/fbx/java/com/jme3/scene/plugins/fbx/SceneLoader.java +++ b/jme3-plugins/src/fbx/java/com/jme3/scene/plugins/fbx/SceneLoader.java @@ -72,7 +72,7 @@ public class SceneLoader implements AssetLoader { // Scene objects private Map allObjects = new HashMap<>(); // All supported FBX objects private Map skinMap = new HashMap<>(); // Skin for bone clusters - private Map alayerMap = new HashMap<>(); // Amination layers + private Map alayerMap = new HashMap<>(); // Animation layers public Map modelMap = new HashMap<>(); // Nodes private Map limbMap = new HashMap<>(); // Nodes that are actually bones private Map bindMap = new HashMap<>(); // Node bind poses @@ -309,7 +309,7 @@ public class SceneLoader implements AssetLoader { animList.add(layer.name, layer.name, 0, -1); } } - // Extract aminations + // Extract animations HashMap anims = new HashMap(); for(AnimInverval animInfo : animList.list) { float realLength = 0; diff --git a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GlbLoader.java b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GlbLoader.java index 7ca499c9d..c3fe31103 100644 --- a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GlbLoader.java +++ b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GlbLoader.java @@ -22,9 +22,6 @@ public class GlbLoader extends GltfLoader { int magic = stream.readInt(); int version = stream.readInt(); int length = stream.readInt(); - System.err.println(magic == GLTF_MAGIC ? "gltf" : "no no no"); - System.err.println(version); - System.err.println(length); byte[] json = null; @@ -37,7 +34,6 @@ public class GlbLoader extends GltfLoader { if (chunkType == JSON_TYPE) { json = new byte[chunkLength]; stream.read(json); - System.err.println(new String(json)); } else { byte[] bin = new byte[chunkLength]; stream.read(bin); diff --git a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfLoader.java b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfLoader.java index a1353d33f..0b1350845 100644 --- a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfLoader.java +++ b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfLoader.java @@ -19,7 +19,6 @@ import com.jme3.util.mikktspace.MikktspaceTangentGenerator; import javax.xml.bind.DatatypeConverter; import java.io.*; import java.nio.Buffer; -import java.sql.Time; import java.util.*; import java.util.logging.Level; import java.util.logging.Logger; @@ -84,6 +83,7 @@ public class GltfLoader implements AssetLoader { try { dataCache.clear(); info = assetInfo; + skinnedSpatials.clear(); rootNode = new Node(); if (defaultMat == null) { @@ -130,6 +130,13 @@ public class GltfLoader implements AssetLoader { setupControls(); + //Loading animations + if (animations != null) { + for (int i = 0; i < animations.size(); i++) { + readAnimation(i); + } + } + //only one scene let's not return the root. if (rootNode.getChildren().size() == 1) { rootNode = (Node) rootNode.getChild(0); @@ -178,13 +185,6 @@ public class GltfLoader implements AssetLoader { } - //Loading animations - if (animations != null) { - for (int i = 0; i < animations.size(); i++) { - readAnimation(i); - } - } - //Setting the default scene cul hint to inherit. int activeChild = 0; if (defaultScene != null) { @@ -247,6 +247,7 @@ public class GltfLoader implements AssetLoader { SkinData skinData = fetchFromCache("skins", skinIndex, SkinData.class); List spatials = skinnedSpatials.get(skinData); spatials.add(spatial); + skinData.used = true; } spatial.setLocalTransform(readTransforms(nodeData)); @@ -278,7 +279,10 @@ public class GltfLoader implements AssetLoader { BoneWrapper bw = (BoneWrapper) loaded; bw.isRoot = true; SkinData skinData = fetchFromCache("skins", bw.skinIndex, SkinData.class); - skinData.armatureTransforms = parent.getLocalTransform(); + if (skinData == null) { + return; + } + skinData.parent = parent; } } @@ -714,7 +718,7 @@ public class GltfLoader implements AssetLoader { assertNotNull(samplers, "No samplers for animation " + name); //temp data storage of track data - AnimData[] animatedNodes = new AnimData[nodes.size()]; + TrackData[] tracks = new TrackData[nodes.size()]; for (JsonElement channel : channels) { @@ -733,10 +737,11 @@ public class GltfLoader implements AssetLoader { logger.log(Level.WARNING, "Morph animation is not supported by JME yet, skipping animation"); continue; } - AnimData animData = animatedNodes[targetNode]; - if (animData == null) { - animData = new AnimData(); - animatedNodes[targetNode] = animData; + + TrackData trackData = tracks[targetNode]; + if (trackData == null) { + trackData = new TrackData(); + tracks[targetNode] = trackData; } Integer samplerIndex = getAsInteger(channel.getAsJsonObject(), "sampler"); @@ -754,38 +759,32 @@ public class GltfLoader implements AssetLoader { logger.log(Level.WARNING, "JME only supports linear interpolation for animations"); } - animData = customContentManager.readExtensionAndExtras("animation.sampler", sampler, animData); + trackData = customContentManager.readExtensionAndExtras("animation.sampler", sampler, trackData); float[] times = fetchFromCache("accessors", timeIndex, float[].class); if (times == null) { times = readAccessorData(timeIndex, floatArrayPopulator); addToCache("accessors", timeIndex, times, accessors.size()); } -// if (animData.times == null) { -// animData.times = times; -// } else { -// //check if we are loading the same time array -// if (animData.times != times) { -// //TODO there might be work to do here... if the inputs are different we might want to merge the different times array... -// //easier said than done. -// logger.log(Level.WARNING, "Channel has different input accessors for samplers"); -// } -// } if (targetPath.equals("translation")) { - animData.timeArrays.add(new AnimData.TimeData(times, AnimData.Type.Translation)); + trackData.timeArrays.add(new TrackData.TimeData(times, TrackData.Type.Translation)); Vector3f[] translations = readAccessorData(dataIndex, vector3fArrayPopulator); - animData.translations = translations; + trackData.translations = translations; } else if (targetPath.equals("scale")) { - animData.timeArrays.add(new AnimData.TimeData(times, AnimData.Type.Scale)); + trackData.timeArrays.add(new TrackData.TimeData(times, TrackData.Type.Scale)); Vector3f[] scales = readAccessorData(dataIndex, vector3fArrayPopulator); - animData.scales = scales; + trackData.scales = scales; } else if (targetPath.equals("rotation")) { - animData.timeArrays.add(new AnimData.TimeData(times, AnimData.Type.Rotation)); + trackData.timeArrays.add(new TrackData.TimeData(times, TrackData.Type.Rotation)); Quaternion[] rotations = readAccessorData(dataIndex, quaternionArrayPopulator); - animData.rotations = rotations; + trackData.rotations = rotations; + } else { + //TODO support weights + logger.log(Level.WARNING, "Morph animation is not supported"); + continue; } - animatedNodes[targetNode] = customContentManager.readExtensionAndExtras("channel", channel, animData); + tracks[targetNode] = customContentManager.readExtensionAndExtras("channel", channel, trackData); } if (name == null) { @@ -797,36 +796,67 @@ public class GltfLoader implements AssetLoader { anim.setName(name); int skinIndex = -1; - for (int i = 0; i < animatedNodes.length; i++) { - AnimData animData = animatedNodes[i]; - if (animData == null) { + List usedBones = new ArrayList<>(); + for (int i = 0; i < tracks.length; i++) { + TrackData trackData = tracks[i]; + if (trackData == null || trackData.timeArrays.isEmpty()) { continue; } - animData.update(); - if (animData.length > anim.getLength()) { - anim.setLength(animData.length); + trackData.update(); + if (trackData.length > anim.getLength()) { + anim.setLength(trackData.length); } Object node = fetchFromCache("nodes", i, Object.class); if (node instanceof Spatial) { Spatial s = (Spatial) node; spatials.add(s); - SpatialTrack track = new SpatialTrack(animData.times, animData.translations, animData.rotations, animData.scales); + SpatialTrack track = new SpatialTrack(trackData.times, trackData.translations, trackData.rotations, trackData.scales); track.setTrackSpatial(s); anim.addTrack(track); } else if (node instanceof BoneWrapper) { BoneWrapper b = (BoneWrapper) node; //apply the inverseBindMatrix to animation data. - b.update(animData); - BoneTrack track = new BoneTrack(b.boneIndex, animData.times, animData.translations, animData.rotations, animData.scales); - anim.addTrack(track); + b.update(trackData); + usedBones.add(b.bone); + if (skinIndex == -1) { skinIndex = b.skinIndex; } else { - //Check if all bones affected by this animation are from the same skin, otherwise raise an error. + //Check if all bones affected by this animation are from the same skin, the track will be skipped. if (skinIndex != b.skinIndex) { - throw new AssetLoadException("Animation " + animationIndex + " (" + name + ") applies to bones that are not from the same skin: skin " + skinIndex + ", bone " + b.bone.getName() + " from skin " + b.skinIndex); + logger.log(Level.WARNING, "Animation " + animationIndex + " (" + name + ") applies to bones that are not from the same skin: skin " + skinIndex + ", bone " + b.bone.getName() + " from skin " + b.skinIndex); + continue; } - //else everything is fine. + } + + BoneTrack track = new BoneTrack(b.boneIndex, trackData.times, trackData.translations, trackData.rotations, trackData.scales); + anim.addTrack(track); + + } + } + + // Check each bone to see if their local pose is different from their bind pose. + // If it is, we ensure that the bone has an animation track, else JME way of applying anim transforms will apply the bind pose to those bones, + // instead of the local pose that is supposed to be the default + if (skinIndex != -1) { + SkinData skin = fetchFromCache("skins", skinIndex, SkinData.class); + Skeleton skeleton = skin.skeletonControl.getSkeleton(); + for (Bone bone : skin.bones) { + if (!usedBones.contains(bone) && !equalBindAndLocalTransforms(bone)) { + //create a track + float[] times = new float[]{0, anim.getLength()}; + + Vector3f t = bone.getLocalPosition().subtract(bone.getBindPosition()); + Quaternion r = tmpQuat.set(bone.getBindRotation()).inverse().multLocal(bone.getLocalRotation()); + Vector3f s = bone.getLocalScale().divide(bone.getBindScale()); + + Vector3f[] translations = new Vector3f[]{t, t}; + Quaternion[] rotations = new Quaternion[]{r, r}; + Vector3f[] scales = new Vector3f[]{s, s}; + + int boneIndex = skeleton.getBoneIndex(bone); + BoneTrack track = new BoneTrack(boneIndex, times, translations, rotations, scales); + anim.addTrack(track); } } } @@ -836,16 +866,10 @@ public class GltfLoader implements AssetLoader { if (skinIndex != -1) { //we have a bone animation. SkinData skin = fetchFromCache("skins", skinIndex, SkinData.class); - if (skin.animControl == null) { - skin.animControl = new AnimControl(skin.skeletonControl.getSkeleton()); - } skin.animControl.addAnim(anim); - //the controls will be added to the right spatial in setupControls() } - if (!spatials.isEmpty()) { - //Note that it's pretty unlikely to have an animation that is both a spatial animation and a bone animation...But you never know. The specs doesn't forbids it if (skinIndex != -1) { //there are some spatial tracks in this bone animation... or the other way around. Let's add the spatials in the skinnedSpatials. SkinData skin = fetchFromCache("skins", skinIndex, SkinData.class); @@ -853,6 +877,7 @@ public class GltfLoader implements AssetLoader { spat.addAll(spatials); //the animControl will be added in the setupControls(); } else { + //Spatial animation Spatial spatial = null; if (spatials.size() == 1) { spatial = spatials.get(0); @@ -899,6 +924,7 @@ public class GltfLoader implements AssetLoader { //no skins, no bone animation. return; } + List allJoints = new ArrayList<>(); for (int index = 0; index < skins.size(); index++) { JsonObject skin = skins.get(index).getAsJsonObject(); @@ -908,6 +934,15 @@ public class GltfLoader implements AssetLoader { JsonArray joints = skin.getAsJsonArray("joints"); assertNotNull(joints, "No joints defined for skin"); + int idx = allJoints.indexOf(joints); + if (idx >= 0) { + //skin already exists let's just set it in the cache + SkinData sd = fetchFromCache("skins", idx, SkinData.class); + addToCache("skins", index, sd, nodes.size()); + continue; + } else { + allJoints.add(joints); + } //These inverse bind matrices, once inverted again, will give us the real bind pose of the bones (in model space), //since the skeleton in not guaranteed to be exported in bind pose. @@ -942,20 +977,28 @@ public class GltfLoader implements AssetLoader { computeBindTransforms(bw, skeleton); } - if (isKeepSkeletonPose(info)) { - //Set local transforms. The skeleton may come in a given pose, that is not the rest pose, so let's apply it. - for (int i = 0; i < joints.size(); i++) { - applyPose(joints.get(i).getAsInt()); - } - skeleton.updateWorldVectors(); - } - skeleton = customContentManager.readExtensionAndExtras("skin", skin, skeleton); - SkinData skinData = new SkinData(); + skinData.bones = bones; skinData.skeletonControl = new SkeletonControl(skeleton); + skinData.animControl = new AnimControl(skinData.skeletonControl.getSkeleton()); addToCache("skins", index, skinData, nodes.size()); skinnedSpatials.put(skinData, new ArrayList()); + + // Set local transforms. + // The skeleton may come in a given pose, that is not the rest pose, so let 's apply it. + // We will need it later for animation + for (int i = 0; i < joints.size(); i++) { + applyPose(joints.get(i).getAsInt()); + } + skeleton.updateWorldVectors(); + + //If the user didn't ask to keep the pose we reset the skeleton user control + if (!isKeepSkeletonPose(info)) { + for (Bone bone : bones) { + bone.setUserControl(false); + } + } } } @@ -990,7 +1033,6 @@ public class GltfLoader implements AssetLoader { BoneWrapper child = fetchFromCache("nodes", childIndex, BoneWrapper.class); computeBindTransforms(child, skeleton); } - } private BoneWrapper findBoneWrapper(Bone bone) { @@ -1016,9 +1058,8 @@ public class GltfLoader implements AssetLoader { } Bone bone = new Bone(name); Transform boneTransforms = null; - if (isKeepSkeletonPose(info)) { - boneTransforms = readTransforms(nodeData); - } + boneTransforms = readTransforms(nodeData); + addToCache("nodes", nodeIndex, new BoneWrapper(bone, boneIndex, skinIndex, modelBindMatrix, boneTransforms), nodes.size()); return bone; @@ -1032,17 +1073,23 @@ public class GltfLoader implements AssetLoader { if (children != null) { for (JsonElement child : children) { int childIndex = child.getAsInt(); + if (bw.children.contains(childIndex)) { + //bone already has the child in its children + continue; + } BoneWrapper cbw = fetchFromCache("nodes", childIndex, BoneWrapper.class); if (cbw != null) { bw.bone.addChild(cbw.bone); bw.children.add(childIndex); } else { - JsonObject childNode = nodes.get(childIndex).getAsJsonObject(); - //The child might be a Geom - if (getAsInteger(childNode, "mesh") != null) { - //this is a geometry, let's load it as a spatial - bw.attachedSpatial = (Spatial) readNode(childIndex); - } + //The child might be a Node + //Creating a dummy node to read the subgraph + Node n = new Node(); + readChild(n, child); + Spatial s = n.getChild(0); + //removing the spatial from the dummy node, it will be attached to the attachment node of the bone + s.removeFromParent(); + bw.attachedSpatial = s; } } @@ -1052,28 +1099,21 @@ public class GltfLoader implements AssetLoader { private void setupControls() { for (SkinData skinData : skinnedSpatials.keySet()) { List spatials = skinnedSpatials.get(skinData); - Spatial spatial; + Spatial spatial = skinData.parent; if (spatials.isEmpty()) { - //can happen when a file contains a skin that is not used by any mesh... continue; } + if (spatials.size() >= 1) { spatial = findCommonAncestor(spatials); - } else { - spatial = spatials.get(0); } - AnimControl animControl = spatial.getControl(AnimControl.class); - if (animControl != null) { - //The spatial already has an anim control, we need to merge it with the one in skinData. Then remove it. - for (String name : animControl.getAnimationNames()) { - Animation anim = animControl.getAnim(name); - skinData.animControl.addAnim(anim); - } - spatial.removeControl(animControl); + if (skinData.parent != null && spatial != skinData.parent) { + skinData.rootBoneTransformOffset = spatial.getWorldTransform().invert(); + skinData.rootBoneTransformOffset.combineWithParent(skinData.parent.getWorldTransform()); } - if (skinData.animControl != null) { + if (skinData.animControl != null && skinData.animControl.getSpatial() == null) { spatial.addControl(skinData.animControl); } spatial.addControl(skinData.skeletonControl); @@ -1147,8 +1187,10 @@ public class GltfLoader implements AssetLoader { int boneIndex; int skinIndex; Transform localTransform; + Transform localTransformOffset; Matrix4f modelBindMatrix; boolean isRoot = false; + boolean localUpdated = false; Spatial attachedSpatial; List children = new ArrayList<>(); @@ -1158,43 +1200,101 @@ public class GltfLoader implements AssetLoader { this.skinIndex = skinIndex; this.modelBindMatrix = modelBindMatrix; this.localTransform = localTransform; + this.localTransformOffset = localTransform.clone(); } /** * Applies the inverse Bind transforms to anim data. and the armature transforms if relevant. */ - public void update(AnimData data) { + public void update(TrackData data) { Transform bindTransforms = new Transform(bone.getBindPosition(), bone.getBindRotation(), bone.getBindScale()); SkinData skinData = fetchFromCache("skins", skinIndex, SkinData.class); - for (int i = 0; i < data.translations.length; i++) { - Transform t = new Transform(data.translations[i], data.rotations[i], data.scales[i]); - if (isRoot) { + if (!localUpdated) { + //LocalTransform of the bone are default position to use for animations when there is no track. + //We need to transform them so that JME can us them in blendAnimTransform. + reverseBlendAnimTransforms(localTransformOffset, bindTransforms); + localUpdated = true; + } + + for (int i = 0; i < data.getNbKeyFrames(); i++) { + + Vector3f translation = getTranslation(data, i); + Quaternion rotation = getRotation(data, i); + Vector3f scale = getScale(data, i); + + Transform t = new Transform(translation, rotation, scale); + if (isRoot && skinData.rootBoneTransformOffset != null) { //Apply the armature transforms to the root bone anim track. - t.combineWithParent(skinData.armatureTransforms); + t.combineWithParent(skinData.rootBoneTransformOffset); } - //This is wrong - //You'd normally combine those transforms with transform.combineWithParent() - //Here we actually do in reverse what JME does to combine anim transforms with bind transfoms (add trans/mult rot/ mult scale) - //The code to fix is in Bone.blendAnimTransforms - //TODO fix blendAnimTransforms - t.getTranslation().subtractLocal(bindTransforms.getTranslation()); - t.getScale().divideLocal(bindTransforms.getScale()); - tmpQuat.set(bindTransforms.getRotation()).inverseLocal().multLocal(t.getRotation()); - t.setRotation(tmpQuat); - - data.translations[i] = t.getTranslation(); - data.rotations[i] = t.getRotation(); - data.scales[i] = t.getScale(); + reverseBlendAnimTransforms(t, bindTransforms); + + if (data.translations != null) { + data.translations[i] = t.getTranslation(); + } + if (data.rotations != null) { + data.rotations[i] = t.getRotation(); + } + if (data.scales != null) { + data.scales[i] = t.getScale(); + } } + + data.ensureTranslationRotations(localTransformOffset); + } + + private void reverseBlendAnimTransforms(Transform t, Transform bindTransforms) { + //This is wrong + //You'd normally combine those transforms with transform.combineWithParent() + //Here we actually do in reverse what JME does to combine anim transforms with bind transfoms (add trans/mult rot/ mult scale) + //The code to fix is in Bone.blendAnimTransforms + //TODO fix blendAnimTransforms + t.getTranslation().subtractLocal(bindTransforms.getTranslation()); + t.getScale().divideLocal(bindTransforms.getScale()); + tmpQuat.set(bindTransforms.getRotation()).inverseLocal().multLocal(t.getRotation()); + t.setRotation(tmpQuat); + } + + private Vector3f getTranslation(TrackData data, int i) { + Vector3f translation; + if (data.translations == null) { + translation = bone.getLocalPosition(); + } else { + translation = data.translations[i]; + } + return translation; + } + + private Quaternion getRotation(TrackData data, int i) { + Quaternion rotation; + if (data.rotations == null) { + rotation = bone.getLocalRotation(); + } else { + rotation = data.rotations[i]; + } + return rotation; + } + + private Vector3f getScale(TrackData data, int i) { + Vector3f scale; + if (data.scales == null) { + scale = bone.getLocalScale(); + } else { + scale = data.scales[i]; + } + return scale; } } private class SkinData { SkeletonControl skeletonControl; AnimControl animControl; - Transform armatureTransforms; + Spatial parent; + Transform rootBoneTransformOffset; + Bone[] bones; + boolean used = false; } public static class SkinBuffers { @@ -1211,10 +1311,6 @@ public class GltfLoader implements AssetLoader { } } - private class TextureData { - byte[] data; - } - private interface Populator { T populate(Integer bufferViewIndex, int componentType, String type, int count, int byteOffset, boolean normalized) throws IOException; } diff --git a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfUtils.java b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfUtils.java index b5fd0614a..68675e680 100644 --- a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfUtils.java +++ b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/GltfUtils.java @@ -1,6 +1,7 @@ package com.jme3.scene.plugins.gltf; import com.google.gson.*; +import com.jme3.animation.Bone; import com.jme3.asset.AssetInfo; import com.jme3.asset.AssetLoadException; import com.jme3.math.*; @@ -685,6 +686,74 @@ public class GltfUtils { } } + public static boolean equalBindAndLocalTransforms(Bone b) { + return equalsEpsilon(b.getBindPosition(), b.getLocalPosition()) + && equalsEpsilon(b.getBindRotation(), b.getLocalRotation()) + && equalsEpsilon(b.getBindScale(), b.getLocalScale()); + } + + private static float epsilon = 0.0001f; + + public static boolean equalsEpsilon(Vector3f v1, Vector3f v2) { + return FastMath.abs(v1.x - v2.x) < epsilon + && FastMath.abs(v1.y - v2.y) < epsilon + && FastMath.abs(v1.z - v2.z) < epsilon; + } + + public static boolean equalsEpsilon(Quaternion q1, Quaternion q2) { + return (FastMath.abs(q1.getX() - q2.getX()) < epsilon + && FastMath.abs(q1.getY() - q2.getY()) < epsilon + && FastMath.abs(q1.getZ() - q2.getZ()) < epsilon + && FastMath.abs(q1.getW() - q2.getW()) < epsilon) + || + (FastMath.abs(q1.getX() + q2.getX()) < epsilon + && FastMath.abs(q1.getY() + q2.getY()) < epsilon + && FastMath.abs(q1.getZ() + q2.getZ()) < epsilon + && FastMath.abs(q1.getW() + q2.getW()) < epsilon); + } + + + public static void dumpArray(Object[] array) { + if (array == null) { + System.err.println("null"); + return; + } + for (int i = 0; i < array.length; i++) { + Object o = array[i]; + System.err.print(i + ": "); + if (o instanceof Quaternion) { + Quaternion q = (Quaternion) o; + System.err.print("("); + if (q.getX() > 0.00001) System.err.print(q.getX() + ", "); + else System.err.print("0.0, "); + if (q.getY() > 0.00001) System.err.print(q.getY() + ", "); + else System.err.print("0.0, "); + if (q.getZ() > 0.00001) System.err.print(q.getZ() + ", "); + else System.err.print("0.0, "); + if (q.getW() > 0.00001) System.err.print(q.getW() + ", "); + else System.err.print("0.0, "); + System.err.println(")"); + } else { + System.err.println(o.toString() + ", "); + } + } + System.err.println(""); + } + + public static void dumpArray(float[] array) { + if (array == null) { + System.err.println("null"); + return; + } + + for (int i = 0; i < array.length; i++) { + float o = array[i]; + System.err.println(i + ": " + o); + } + + System.err.println(""); + } + public static Spatial findCommonAncestor(List spatials) { Map> flatParents = new HashMap<>(); @@ -704,6 +773,9 @@ public class GltfUtils { while (true) { for (Spatial spatial : flatParents.keySet()) { List parents = flatParents.get(spatial); + if (parents.isEmpty()) { + continue; + } if (index == parents.size()) { //we reached the end of a spatial hierarchy let's return; return lastCommonParent; diff --git a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/MaterialAdapter.java b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/MaterialAdapter.java index 6662a4200..602ad961f 100644 --- a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/MaterialAdapter.java +++ b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/MaterialAdapter.java @@ -13,7 +13,7 @@ import java.util.Map; /** * A MaterialAdapter allows to map a GLTF material to a JME material. - * It maps each gltf parameter to it's matching parameter in the JME material, + * It maps each gltf parameter to its matching parameter in the JME material, * and allows for some conversion if the JME material model doesn't exactly match the gltf material model * Created by Nehon on 08/08/2017. */ diff --git a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/AnimData.java b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/TrackData.java similarity index 80% rename from jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/AnimData.java rename to jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/TrackData.java index 890b74239..b9122f072 100644 --- a/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/AnimData.java +++ b/jme3-plugins/src/gltf/java/com/jme3/scene/plugins/gltf/TrackData.java @@ -1,10 +1,11 @@ package com.jme3.scene.plugins.gltf; +import com.jme3.asset.AssetLoadException; import com.jme3.math.*; import java.util.*; -public class AnimData { +public class TrackData { public enum Type { Translation, @@ -27,7 +28,6 @@ public class AnimData { if (equalTimes(timeArrays)) { times = timeArrays.get(0).times; - ensureArraysInit(); } else { //Times array are different and contains different sampling times. //We have to merge them because JME needs the 3 types of transforms for each keyFrame. @@ -36,8 +36,15 @@ public class AnimData { List keyFrames = new ArrayList<>(); TimeData timeData = timeArrays.get(0); Type type = timeData.type; + float lastTime = -1f; for (int i = 0; i < timeData.times.length; i++) { float time = timeData.times[i]; + //avoid some double keyframes that can have bad effects on interpolation + if (Float.floatToIntBits(time) == Float.floatToIntBits(lastTime)) { + lastTime = time; + continue; + } + lastTime = time; KeyFrame keyFrame = new KeyFrame(); keyFrame.time = time; setKeyFrameTransforms(type, keyFrame, timeData.times); @@ -69,7 +76,7 @@ public class AnimData { // populating transforms array from the keyframes, interpolating times = new float[keyFrames.size()]; - ensureArraysInit(); + ensureArraysLength(); TransformIndices translationIndices = new TransformIndices(); TransformIndices rotationIndices = new TransformIndices(); @@ -79,14 +86,18 @@ public class AnimData { KeyFrame kf = keyFrames.get(i); //we need Interpolate between keyframes when transforms are sparse. times[i] = kf.time; - populateTransform(Type.Translation, i, keyFrames, kf, translationIndices); - populateTransform(Type.Rotation, i, keyFrames, kf, rotationIndices); - populateTransform(Type.Scale, i, keyFrames, kf, scaleIndices); + if (translations != null) { + populateTransform(Type.Translation, i, keyFrames, kf, translationIndices); + } + if (rotations != null) { + populateTransform(Type.Rotation, i, keyFrames, kf, rotationIndices); + } + if (scales != null) { + populateTransform(Type.Scale, i, keyFrames, kf, scaleIndices); + } } } - ensureArraysInit(); - if (times[0] > 0) { //Anim doesn't start at 0, JME can't handle that and will interpolate transforms linearly from 0 to the first frame of the anim. //we need to add a frame at 0 that copies the first real frame @@ -116,9 +127,19 @@ public class AnimData { } } + checkTimesConsistantcy(); + length = times[times.length - 1]; } + public void checkTimesConsistantcy() { + if ((translations != null && times.length != translations.length) + || (rotations != null && times.length != rotations.length) + || (scales != null && times.length != scales.length)) { + throw new AssetLoadException("Inconsistent animation sampling "); + } + } + private void populateTransform(Type type, int index, List keyFrames, KeyFrame currentKeyFrame, TransformIndices transformIndices) { Object transform = getTransform(type, currentKeyFrame); if (transform != null) { @@ -174,6 +195,13 @@ public class AnimData { return -1; } + public int getNbKeyFrames() { + if (times != null) { + return times.length; + } + return 0; + } + private void interpolate(Type type, float ratio, KeyFrame lastKeyFrame, KeyFrame nextKeyFrame, int currentIndex) { //TODO here we should interpolate differently according to the interpolation given in the gltf file. switch (type) { @@ -217,23 +245,38 @@ public class AnimData { } } - private void ensureArraysInit() { - if (translations == null || translations.length < times.length) { + private void ensureArraysLength() { + if (translations != null && translations.length != times.length) { + translations = new Vector3f[times.length]; + } + if (rotations != null && rotations.length != times.length) { + rotations = new Quaternion[times.length]; + } + if (scales != null && scales.length != times.length) { + scales = new Vector3f[times.length]; + } + } + + + //JME assumes there are translation and rotation track every time, so we create them with identity transforms if they don't exist + //TODO change this behavior in BoneTrack. + public void ensureTranslationRotations(Transform localTransforms) { + if (translations == null) { translations = new Vector3f[times.length]; for (int i = 0; i < translations.length; i++) { - translations[i] = new Vector3f(); + translations[i] = localTransforms.getTranslation(); } } - if (rotations == null || rotations.length < times.length) { + if (rotations == null) { rotations = new Quaternion[times.length]; for (int i = 0; i < rotations.length; i++) { - rotations[i] = new Quaternion(); + rotations[i] = localTransforms.getRotation(); } } - if (scales == null || scales.length < times.length) { + if (scales == null) { scales = new Vector3f[times.length]; for (int i = 0; i < scales.length; i++) { - scales[i] = new Vector3f().set(Vector3f.UNIT_XYZ); + scales[i] = localTransforms.getScale(); } } } diff --git a/jme3-plugins/src/main/java/com/jme3/material/plugin/export/materialdef/J3mdTechniqueDefWriter.java b/jme3-plugins/src/main/java/com/jme3/material/plugin/export/materialdef/J3mdTechniqueDefWriter.java index 23e30953a..eabfda1c0 100644 --- a/jme3-plugins/src/main/java/com/jme3/material/plugin/export/materialdef/J3mdTechniqueDefWriter.java +++ b/jme3-plugins/src/main/java/com/jme3/material/plugin/export/materialdef/J3mdTechniqueDefWriter.java @@ -5,14 +5,17 @@ */ package com.jme3.material.plugin.export.materialdef; -import com.jme3.material.*; +import com.jme3.material.MatParam; +import com.jme3.material.RenderState; +import com.jme3.material.TechniqueDef; import com.jme3.shader.*; -import java.io.*; +import java.io.IOException; +import java.io.OutputStreamWriter; import java.util.Collection; -import java.util.regex.*; - -import static java.util.regex.Pattern.compile; +import java.util.List; +import java.util.regex.Matcher; +import java.util.regex.Pattern; /** * @author nehon @@ -168,47 +171,79 @@ public class J3mdTechniqueDefWriter { out.write(shaderNode.getDefinition().getPath()); out.write("\n"); - out.write(" InputMappings{\n"); - for (VariableMapping mapping : shaderNode.getInputMapping()) { - writeVariableMapping(out, shaderNode, mapping, matParams); - } - out.write(" }\n"); + final List inputMapping = shaderNode.getInputMapping(); + final List outputMapping = shaderNode.getOutputMapping(); - out.write(" OutputMappings{\n"); - for (VariableMapping mapping : shaderNode.getOutputMapping()) { - writeVariableMapping(out, shaderNode, mapping, matParams); + if (!inputMapping.isEmpty()) { + out.write(" InputMappings {\n"); + for (VariableMapping mapping : inputMapping) { + writeVariableMapping(out, shaderNode, mapping, matParams); + } + out.write(" }\n"); } - out.write(" }\n"); + if (!outputMapping.isEmpty()) { + out.write(" OutputMappings {\n"); + for (VariableMapping mapping : outputMapping) { + writeVariableMapping(out, shaderNode, mapping, matParams); + } + out.write(" }\n"); + } out.write(" }\n"); } - private void writeVariableMapping(OutputStreamWriter out, ShaderNode shaderNode, VariableMapping mapping, Collection matParams) throws IOException { + private void writeVariableMapping(final OutputStreamWriter out, final ShaderNode shaderNode, + final VariableMapping mapping, final Collection matParams) + throws IOException { + + final ShaderNodeVariable leftVar = mapping.getLeftVariable(); + final ShaderNodeVariable rightVar = mapping.getRightVariable(); + final String rightExpression = mapping.getRightExpression(); + out.write(" "); - if(!mapping.getLeftVariable().getNameSpace().equals(shaderNode.getName())) { - out.write(mapping.getLeftVariable().getNameSpace()); + + if (!leftVar.getNameSpace().equals(shaderNode.getName())) { + out.write(leftVar.getNameSpace()); out.write("."); } - out.write(mapping.getLeftVariable().getName()); - if(!mapping.getLeftSwizzling().equals("")){ + + out.write(leftVar.getName()); + + if (!mapping.getLeftSwizzling().equals("")) { out.write("."); out.write(mapping.getLeftSwizzling()); } + out.write(" = "); - if(!mapping.getRightVariable().getNameSpace().equals(shaderNode.getName())) { - out.write(mapping.getRightVariable().getNameSpace()); - out.write("."); - } - out.write(mapping.getRightVariable().getName().replaceFirst("g_","").replaceFirst("m_","")); - if(!mapping.getRightSwizzling().equals("")){ - out.write("."); - out.write(mapping.getRightSwizzling()); + + if (rightVar != null) { + + if (!rightVar.getNameSpace().equals(shaderNode.getName())) { + out.write(rightVar.getNameSpace()); + out.write("."); + } + + String rightVarName = rightVar.getName(); + if (rightVarName.startsWith("g_") || rightVarName.startsWith("m_")) { + rightVarName = rightVarName.substring(2, rightVarName.length()); + } + + out.write(rightVarName); + + if (!mapping.getRightSwizzling().equals("")) { + out.write("."); + out.write(mapping.getRightSwizzling()); + } + } else { + out.write("%%"); + out.write(rightExpression); + out.write("%%"); } - if (mapping.getCondition() != null){ + if (mapping.getCondition() != null) { out.write(" : "); - out.write(formatCondition(mapping.getCondition(),matParams)); + out.write(formatCondition(mapping.getCondition(), matParams)); } out.write("\n"); @@ -288,7 +323,4 @@ public class J3mdTechniqueDefWriter { } return null; } - -} - - +} \ No newline at end of file diff --git a/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java index cd2ecb8fa..ed11ddd25 100644 --- a/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java +++ b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MaterialLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -69,6 +69,7 @@ public class MaterialLoader implements AssetLoader { private boolean twoSide = false; private boolean noLight = false; private boolean separateTexCoord = false; + private boolean receiveShadow = false; private int texUnit = 0; private ColorRGBA readColor(String content){ @@ -143,7 +144,7 @@ public class MaterialLoader implements AssetLoader { textures[texUnit].setAnisotropicFilter(loadedTexture.getAnisotropicFilter()); textures[texUnit].setKey(loadedTexture.getKey()); - // XXX: Is this really neccessary? + // XXX: Is this really necessary? textures[texUnit].setWrap(WrapMode.Repeat); if (texName != null){ textures[texUnit].setName(texName); @@ -314,7 +315,8 @@ public class MaterialLoader implements AssetLoader { readTechnique(statement); }else if (statement.getLine().startsWith("receive_shadows")){ String isOn = statement.getLine().split("\\s")[1]; - if (isOn != null && isOn.equals("true")){ + if (isOn != null && isOn.equals("on")){ + receiveShadow = true; } } } @@ -334,6 +336,11 @@ public class MaterialLoader implements AssetLoader { mat = new Material(assetManager, "Common/MatDefs/Light/Lighting.j3md"); } mat.setName(matName); + + if(receiveShadow){ + mat.setReceivesShadows(true); + } + if (blend){ RenderState rs = mat.getAdditionalRenderState(); mat.setFloat("AlphaDiscardThreshold", 0.01f); @@ -433,13 +440,14 @@ public class MaterialLoader implements AssetLoader { twoSide = false; matName = null; texName = null; + receiveShadow = false; return mat; } private MaterialList load(AssetManager assetManager, AssetKey key, InputStream in) throws IOException{ folderName = key.getFolder(); this.assetManager = assetManager; - + MaterialList list = null; List statements = BlockLanguageParser.parse(in); @@ -471,8 +479,8 @@ public class MaterialLoader implements AssetLoader { list.put(mat.getName(), mat); } } - - return list; + + return list; } public Object load(AssetInfo info) throws IOException { diff --git a/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java index 42780f411..baa30a0d1 100644 --- a/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java +++ b/jme3-plugins/src/ogre/java/com/jme3/scene/plugins/ogre/MeshLoader.java @@ -38,6 +38,7 @@ import com.jme3.asset.*; import com.jme3.material.Material; import com.jme3.material.MaterialList; import com.jme3.math.ColorRGBA; +import com.jme3.renderer.queue.RenderQueue; import com.jme3.renderer.queue.RenderQueue.Bucket; import com.jme3.scene.*; import com.jme3.scene.VertexBuffer.Format; @@ -241,6 +242,10 @@ public class MeshLoader extends DefaultHandler implements AssetLoader { geom.setQueueBucket(Bucket.Transparent); } + if(mat.isReceivesShadows()){ + geom.setShadowMode(RenderQueue.ShadowMode.Receive); + } + geom.setMaterial(mat); } diff --git a/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java b/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java index a8ba4f7aa..6b0eb39b7 100644 --- a/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java +++ b/jme3-plugins/src/xml/java/com/jme3/export/xml/DOMInputCapsule.java @@ -974,14 +974,13 @@ public class DOMInputCapsule implements InputCapsule { ret = referencedSavables.get(reference); } else { String className = currentElem.getNodeName(); - if (defVal != null) { - className = defVal.getClass().getName(); - } else if (currentElem.hasAttribute("class")) { + if (currentElem.hasAttribute("class")) { className = currentElem.getAttribute("class"); + } else if (defVal != null) { + className = defVal.getClass().getName(); } tmp = SavableClassUtil.fromName(className, null); - String versionsStr = currentElem.getAttribute("savable_versions"); if (versionsStr != null && !versionsStr.equals("")){ String[] versionStr = versionsStr.split(","); @@ -1508,4 +1507,4 @@ public class DOMInputCapsule implements InputCapsule { ? zeroStrings : outStrings; } -} \ No newline at end of file +} diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java index efa823c66..a6774400a 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/GeoMap.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -127,7 +127,7 @@ public class GeoMap implements Savable { * If false, then the data is unavailable- must be loaded with load() * before the methods getHeight/getNormal can be used * - * @return wether the geomap data is loaded in system memory + * @return whether the geomap data is loaded in system memory */ public boolean isLoaded() { return true; diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java b/jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java index d96bb1340..fefba99bc 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/Terrain.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -87,7 +87,7 @@ public interface Terrain { * Each xz coordinate entry matches to a height entry, 1 for 1. So the * first coordinate matches to the first height value, the last to the * last etc. - * @param xz a list of coordinates where the hight will be set + * @param xz a list of coordinates where the height will be set * @param height the heights that match the xz coordinates */ public void setHeight(List xz, List height); @@ -104,7 +104,7 @@ public interface Terrain { * Each xz coordinate entry matches to a height entry, 1 for 1. So the * first coordinate matches to the first height value, the last to the * last etc. - * @param xz a list of coordinates where the hight will be adjusted + * @param xz a list of coordinates where the height will be adjusted * @param height +- value to adjust the height by, that matches the xz coordinates */ public void adjustHeight(List xz, List height); diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/executor/TerrainExecutorService.java b/jme3-terrain/src/main/java/com/jme3/terrain/executor/TerrainExecutorService.java new file mode 100644 index 000000000..7d8dbe3ba --- /dev/null +++ b/jme3-terrain/src/main/java/com/jme3/terrain/executor/TerrainExecutorService.java @@ -0,0 +1,108 @@ +package com.jme3.terrain.executor; + +import java.util.concurrent.*; +import java.util.concurrent.atomic.AtomicInteger; + +/** + * The class to provide single executor service to run background tasks of terrain stuff. + * + * @author JavaSaBr + */ +public class TerrainExecutorService { + + private static final Runtime RUNTIME = Runtime.getRuntime(); + + /** + * The constructor of the terrain executor service. + */ + private static volatile Callable constructor = new Callable() { + + @Override + public ExecutorService call() throws Exception { + return Executors.newFixedThreadPool(RUNTIME.availableProcessors(), new ThreadFactory() { + + private final AtomicInteger counter = new AtomicInteger(-1); + + @Override + public Thread newThread(final Runnable task) { + final Thread thread = new Thread(task); + thread.setName("jME3 Terrain Thread [" + counter.incrementAndGet() + "]"); + thread.setDaemon(true); + return thread; + } + }); + } + }; + + /** + * Set a new constructor of executor service to provide other implementation. + * + * @param constructor the constructor. + */ + public static void setConstructor(final Callable constructor) { + TerrainExecutorService.constructor = constructor; + } + + /** + * https://stackoverflow.com/questions/29883403/double-checked-locking-without-volatile + *

+ * This suggestion is of Aleksey Shipilev + */ + private static class LazyInitializer { + public final TerrainExecutorService instance; + public LazyInitializer(final TerrainExecutorService instance) { + this.instance = instance; + } + } + + /** + * The lazy singleton. + */ + private static LazyInitializer initializer; + + public static TerrainExecutorService getInstance() { + + LazyInitializer lazy = initializer; + + if (lazy == null) { // check 1 + synchronized (TerrainExecutorService.class) { + lazy = initializer; + if (lazy == null) { // check2 + lazy = new LazyInitializer(new TerrainExecutorService()); + initializer = lazy; + } + } + } + + return lazy.instance; + } + + /** + * The implementation of executor service. + */ + private final ExecutorService executorService; + + private TerrainExecutorService() { + try { + this.executorService = constructor.call(); + } catch (final Exception e) { + throw new RuntimeException(e); + } + } + + public Future submit(final Callable task) { + return executorService.submit(task); + } + + public Future submit(final Runnable task, final T result) { + return executorService.submit(task, result); + } + + public Future submit(final Runnable task) { + return executorService.submit(task); + } + + public void execute(final Runnable command) { + executorService.execute(command); + } +} diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java index 995bc8f13..9e37fb6b2 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/MultiTerrainLodControl.java @@ -33,8 +33,11 @@ package com.jme3.terrain.geomipmap; import com.jme3.math.Vector3f; import com.jme3.renderer.Camera; +import com.jme3.terrain.Terrain; import com.jme3.terrain.geomipmap.lodcalc.DistanceLodCalculator; import com.jme3.terrain.geomipmap.lodcalc.LodCalculator; +import com.jme3.util.SafeArrayList; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -48,21 +51,41 @@ import java.util.List; * @author Brent Owens */ public class MultiTerrainLodControl extends TerrainLodControl { - - List terrains = new ArrayList(); - private List addedTerrains = new ArrayList(); - private List removedTerrains = new ArrayList(); - public MultiTerrainLodControl(List cameras) { - this.cameras = cameras; - lodCalculator = new DistanceLodCalculator(65, 2.7f); + private SafeArrayList terrains; + + private List addedTerrains; + private List removedTerrains; + + public MultiTerrainLodControl() { + terrains = new SafeArrayList<>(TerrainQuad.class); + removedTerrains = new ArrayList<>(); + addedTerrains = new ArrayList<>(); + } + + public MultiTerrainLodControl(final Terrain terrain) { + this(); + setTerrain(terrain); + } + + public MultiTerrainLodControl(final Camera camera) { + this(); + setCamera(camera); + } + + public MultiTerrainLodControl(final Terrain terrain, final Camera camera) { + this(terrain); + setCamera(camera); } - public MultiTerrainLodControl(Camera camera) { - List cams = new ArrayList(); - cams.add(camera); - this.cameras = cams; - lodCalculator = new DistanceLodCalculator(65, 2.7f); + public MultiTerrainLodControl(final Terrain terrain, final List cameras) { + this(terrain); + setCameras(cameras); + } + + @Override + protected DistanceLodCalculator makeLodCalculator() { + return new DistanceLodCalculator(65, 2.7f); } /** @@ -84,7 +107,8 @@ public class MultiTerrainLodControl extends TerrainLodControl { } @Override - protected UpdateLOD getLodThread(List locations, LodCalculator lodCalculator) { + protected UpdateLOD createLodUpdateTask(final List locations, + final LodCalculator lodCalculator) { return new UpdateMultiLOD(locations, lodCalculator); } @@ -92,8 +116,9 @@ public class MultiTerrainLodControl extends TerrainLodControl { protected void prepareTerrain() { if (!addedTerrains.isEmpty()) { for (TerrainQuad t : addedTerrains) { - if (!terrains.contains(t)) + if (!terrains.contains(t)) { terrains.add(t); + } } addedTerrains.clear(); } @@ -103,8 +128,10 @@ public class MultiTerrainLodControl extends TerrainLodControl { removedTerrains.clear(); } - for (TerrainQuad terrain : terrains) - terrain.cacheTerrainTransforms();// cache the terrain's world transforms so they can be accessed on the separate thread safely + for (TerrainQuad terrain : terrains.getArray()) { + // cache the terrain's world transforms so they can be accessed on the separate thread safely + terrain.cacheTerrainTransforms(); + } } /** @@ -112,18 +139,15 @@ public class MultiTerrainLodControl extends TerrainLodControl { * multiple terrains. */ protected class UpdateMultiLOD extends UpdateLOD { - - - protected UpdateMultiLOD(List camLocations, LodCalculator lodCalculator) { + + protected UpdateMultiLOD(final List camLocations, final LodCalculator lodCalculator) { super(camLocations, lodCalculator); } @Override public HashMap call() throws Exception { - - setLodCalcRunning(true); - - HashMap updated = new HashMap(); + + HashMap updated = new HashMap<>(); for (TerrainQuad terrainQuad : terrains) { // go through each patch and calculate its LOD based on camera distance @@ -146,7 +170,7 @@ public class MultiTerrainLodControl extends TerrainLodControl { } //setUpdateQuadLODs(updated); // set back to main ogl thread - setLodCalcRunning(false); + lodCalcRunning.set(false); return updated; } diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java index f6682dbe2..9f0eda562 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/NormalRecalcControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -39,9 +39,7 @@ import com.jme3.renderer.RenderManager; import com.jme3.renderer.ViewPort; import com.jme3.scene.Spatial; import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; import java.io.IOException; @@ -88,14 +86,6 @@ public class NormalRecalcControl extends AbstractControl { this.terrain = cloner.clone(terrain); } - @Override - public Control cloneForSpatial(Spatial spatial) { - NormalRecalcControl control = new NormalRecalcControl(terrain); - control.setSpatial(spatial); - control.setEnabled(true); - return control; - } - @Override public void setSpatial(Spatial spatial) { super.setSpatial(spatial); diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java index 65a209be3..20a088901 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainGridLodControl.java @@ -35,7 +35,7 @@ import com.jme3.math.Vector3f; import com.jme3.renderer.Camera; import com.jme3.terrain.Terrain; import com.jme3.terrain.geomipmap.lodcalc.LodCalculator; -import java.util.List; +import com.jme3.util.SafeArrayList; /** * Updates grid offsets and cell positions. @@ -50,7 +50,7 @@ public class TerrainGridLodControl extends TerrainLodControl { } @Override - protected void updateLOD(List locations, LodCalculator lodCalculator) { + protected void updateLOD(SafeArrayList locations, LodCalculator lodCalculator) { TerrainGrid terrainGrid = (TerrainGrid)getSpatial(); // for now, only the first camera is handled. diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java index d551ff4e5..7bab7f207 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainLodControl.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -42,22 +42,20 @@ import com.jme3.renderer.ViewPort; import com.jme3.scene.Node; import com.jme3.scene.Spatial; import com.jme3.scene.control.AbstractControl; -import com.jme3.scene.control.Control; import com.jme3.terrain.Terrain; +import com.jme3.terrain.executor.TerrainExecutorService; import com.jme3.terrain.geomipmap.lodcalc.DistanceLodCalculator; import com.jme3.terrain.geomipmap.lodcalc.LodCalculator; +import com.jme3.util.SafeArrayList; import com.jme3.util.clone.Cloner; -import com.jme3.util.clone.JmeCloneable; import java.io.IOException; import java.util.ArrayList; +import static java.util.Collections.singletonList; import java.util.HashMap; import java.util.List; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; -import java.util.concurrent.ExecutorService; -import java.util.concurrent.Executors; import java.util.concurrent.Future; -import java.util.concurrent.ThreadFactory; import java.util.concurrent.atomic.AtomicBoolean; import java.util.logging.Level; import java.util.logging.Logger; @@ -84,32 +82,68 @@ import java.util.logging.Logger; */ public class TerrainLodControl extends AbstractControl { - private Terrain terrain; - protected List cameras; - private List cameraLocations = new ArrayList(); - protected LodCalculator lodCalculator; - private boolean hasResetLod = false; // used when enabled is set to false + /** + * The list of cameras for when terrain supports multiple cameras (ie split screen) + */ + protected SafeArrayList cameras; + protected SafeArrayList cameraLocations; + protected SafeArrayList lastCameraLocations; + + protected AtomicBoolean lodCalcRunning; - private HashMap updatedPatches; - private final Object updatePatchesLock = new Object(); + /** + * The previous location of {@link #camera}. + */ + protected Vector3f previousCameraLocation; - protected List lastCameraLocations; // used for LOD calc - private AtomicBoolean lodCalcRunning = new AtomicBoolean(false); - private int lodOffCount = 0; + /** + * The camera from render view port. + */ + protected Camera camera; - protected ExecutorService executor; + protected Terrain terrain; + protected LodCalculator lodCalculator; protected Future> indexer; - private boolean forceUpdate = true; + + private int lodOffCount; + + /** + * The flag of using a camera from render viewport instead cameras from {@link #cameras}. + */ + protected boolean useRenderCamera; + + protected boolean forceUpdate; + protected boolean hasResetLod; // used when enabled is set to false public TerrainLodControl() { + hasResetLod = false; + forceUpdate = true; + previousCameraLocation = new Vector3f(); + cameras = new SafeArrayList<>(Camera.class); + cameraLocations = new SafeArrayList<>(Vector3f.class); + lastCameraLocations = new SafeArrayList<>(Vector3f.class); + lodCalcRunning = new AtomicBoolean(false); + lodOffCount = 0; + lodCalculator = makeLodCalculator(); // a default calculator + } + + protected DistanceLodCalculator makeLodCalculator() { + return new DistanceLodCalculator(65, 2.7f); } - public TerrainLodControl(Terrain terrain, Camera camera) { - List cams = new ArrayList(); - cams.add(camera); + public TerrainLodControl(final Terrain terrain) { + this(); this.terrain = terrain; - this.cameras = cams; - lodCalculator = new DistanceLodCalculator(65, 2.7f); // a default calculator + } + + public TerrainLodControl(final Camera camera) { + this(); + setCamera(camera); + } + + public TerrainLodControl(final Terrain terrain, final Camera camera) { + this(terrain); + setCamera(camera); } /** @@ -117,41 +151,44 @@ public class TerrainLodControl extends AbstractControl { * @param terrain to act upon (must be a Spatial) * @param cameras one or more cameras to reference for LOD calc */ - public TerrainLodControl(Terrain terrain, List cameras) { - this.terrain = terrain; - this.cameras = cameras; - lodCalculator = new DistanceLodCalculator(65, 2.7f); // a default calculator + public TerrainLodControl(final Terrain terrain, final List cameras) { + this(terrain); + setCameras(cameras); } - @Override - protected void controlRender(RenderManager rm, ViewPort vp) { + /** + * @param useRenderCamera true if need to use a camera from render view port. + */ + public void setUseRenderCamera(final boolean useRenderCamera) { + this.useRenderCamera = useRenderCamera; } /** - * Set your own custom executor to be used. The control will use - * this instead of creating its own. + * @return true if need to use a camera from render view port. */ - public void setExecutor(ExecutorService executor) { - this.executor = executor; + public boolean isUseRenderCamera() { + return useRenderCamera; } - protected ExecutorService createExecutorService() { - return Executors.newSingleThreadExecutor(new ThreadFactory() { - public Thread newThread(Runnable r) { - Thread th = new Thread(r); - th.setName("jME3 Terrain Thread"); - th.setDaemon(true); - return th; - } - }); + @Override + protected void controlRender(final RenderManager rm, final ViewPort vp) { + + if (!isUseRenderCamera()) { + return; + } else if (camera == vp.getCamera()) { + return; + } + + camera = vp.getCamera(); + previousCameraLocation.set(camera.getLocation()); } @Override protected void controlUpdate(float tpf) { - //list of cameras for when terrain supports multiple cameras (ie split screen) - if (lodCalculator == null) + if (lodCalculator == null) { return; + } if (!enabled) { if (!hasResetLod) { @@ -161,12 +198,26 @@ public class TerrainLodControl extends AbstractControl { } } - if (cameras != null) { - cameraLocations.clear(); - for (Camera c : cameras) // populate them - { - cameraLocations.add(c.getLocation()); + // if we use a camera from render + if (isUseRenderCamera()) { + updateLOD(lodCalculator); + } + // if we use set cameras + else if (!cameras.isEmpty()) { + + // need to have count of positions the same with count of cameras + if (cameraLocations.size() != cameras.size()) { + cameraLocations.clear(); + for (int i = 0; i < cameras.size(); i++) { + cameraLocations.add(new Vector3f()); + } + } + + // we need to update current camera positions + for (int i = 0; i < cameras.size(); i++) { + cameraLocations.get(i).set(cameras.get(i).getLocation()); } + updateLOD(cameraLocations, lodCalculator); } } @@ -176,53 +227,107 @@ public class TerrainLodControl extends AbstractControl { * It will clear up any threads it had. */ public void detachAndCleanUpControl() { - if (executor != null) - executor.shutdownNow(); + + if (indexer != null) { + indexer.cancel(true); + indexer = null; + } + getSpatial().removeControl(this); } // do all of the LOD calculations - protected void updateLOD(List locations, LodCalculator lodCalculator) { - if(getSpatial() == null){ + protected void updateLOD(final LodCalculator lodCalculator) { + + if (getSpatial() == null || camera == null) { return; } // update any existing ones that need updating updateQuadLODs(); - if (lodCalculator.isLodOff()) { - // we want to calculate the base lod at least once - if (lodOffCount == 1) - return; - else - lodOffCount++; - } else - lodOffCount = 0; + if (updateLodOffCount(lodCalculator)) { + return; + } + + final Vector3f currentLocation = camera.getLocation(); + + if (!forceUpdate && previousCameraLocation.equals(currentLocation) && !lodCalculator.isLodOff()) { + return; // don't update if in same spot + } else { + previousCameraLocation.set(currentLocation); + } - if (lastCameraLocations != null) { - if (!forceUpdate && lastCameraLocationsTheSame(locations) && !lodCalculator.isLodOff()) - return; // don't update if in same spot - else - lastCameraLocations = cloneVectorList(locations); - forceUpdate = false; + forceUpdate = false; + + if (!lodCalcRunning.compareAndSet(false, true)) { + return; } - else { - lastCameraLocations = cloneVectorList(locations); + + prepareTerrain(); + + final TerrainExecutorService executorService = TerrainExecutorService.getInstance(); + indexer = executorService.submit(createLodUpdateTask(singletonList(currentLocation), lodCalculator)); + } + + // do all of the LOD calculations + protected void updateLOD(final SafeArrayList locations, final LodCalculator lodCalculator) { + + if (getSpatial() == null || locations.isEmpty()) { return; } - if (isLodCalcRunning()) { + // update any existing ones that need updating + updateQuadLODs(); + + if (updateLodOffCount(lodCalculator)) { return; } - setLodCalcRunning(true); - if (executor == null) - executor = createExecutorService(); + if (!forceUpdate && locations.equals(lastCameraLocations) && !lodCalculator.isLodOff()) { + return; // don't update if in same spot + } else { + + // need to have count of last camera locations the same with count of locations + if (lastCameraLocations.size() != locations.size()) { + lastCameraLocations.clear(); + for (int i = 0; i < locations.size(); i++) { + lastCameraLocations.add(new Vector3f()); + } + } + + // we need to update last camera locations to current + for (int i = 0; i < locations.size(); i++) { + lastCameraLocations.get(i).set(locations.get(i)); + } + } + + forceUpdate = false; + + if (!lodCalcRunning.compareAndSet(false, true)) { + return; + } prepareTerrain(); - UpdateLOD updateLodThread = getLodThread(locations, lodCalculator); - indexer = executor.submit(updateLodThread); + final TerrainExecutorService executorService = TerrainExecutorService.getInstance(); + indexer = executorService.submit(createLodUpdateTask(cloneVectorList(locations), lodCalculator)); + } + + protected boolean updateLodOffCount(final LodCalculator lodCalculator) { + + if (lodCalculator.isLodOff()) { + // we want to calculate the base lod at least once + if (lodOffCount == 1) { + return true; + } else { + lodOffCount++; + } + } else { + lodOffCount = 0; + } + + return false; } /** @@ -234,11 +339,12 @@ public class TerrainLodControl extends AbstractControl { } protected void prepareTerrain() { - TerrainQuad terrain = (TerrainQuad)getSpatial(); - terrain.cacheTerrainTransforms();// cache the terrain's world transforms so they can be accessed on the separate thread safely + TerrainQuad terrain = (TerrainQuad) getSpatial(); + // cache the terrain's world transforms so they can be accessed on the separate thread safely + terrain.cacheTerrainTransforms(); } - protected UpdateLOD getLodThread(List locations, LodCalculator lodCalculator) { + protected UpdateLOD createLodUpdateTask(final List locations, final LodCalculator lodCalculator) { return new UpdateLOD(locations, lodCalculator); } @@ -246,115 +352,68 @@ public class TerrainLodControl extends AbstractControl { * Back on the ogl thread: update the terrain patch geometries */ private void updateQuadLODs() { - if (indexer != null) { - if (indexer.isDone()) { - try { - - HashMap updated = indexer.get(); - if (updated != null) { - // do the actual geometry update here - for (UpdatedTerrainPatch utp : updated.values()) { - utp.updateAll(); - } - } - - } catch (InterruptedException ex) { - Logger.getLogger(TerrainLodControl.class.getName()).log(Level.SEVERE, null, ex); - } catch (ExecutionException ex) { - Logger.getLogger(TerrainLodControl.class.getName()).log(Level.SEVERE, null, ex); - } finally { - indexer = null; - } - } + + if (indexer == null || !indexer.isDone()) { + return; } - } - private boolean lastCameraLocationsTheSame(List locations) { - boolean theSame = true; - for (Vector3f l : locations) { - for (Vector3f v : lastCameraLocations) { - if (!v.equals(l) ) { - theSame = false; - return false; + try { + + final HashMap updated = indexer.get(); + if (updated != null) { + // do the actual geometry update here + for (final UpdatedTerrainPatch utp : updated.values()) { + utp.updateAll(); } } + + } catch (final InterruptedException | ExecutionException ex) { + Logger.getLogger(TerrainLodControl.class.getName()).log(Level.SEVERE, null, ex); + } finally { + indexer = null; } - return theSame; } - protected synchronized boolean isLodCalcRunning() { - return lodCalcRunning.get(); - } + private List cloneVectorList(SafeArrayList locations) { - protected synchronized void setLodCalcRunning(boolean running) { - lodCalcRunning.set(running); - } + final List cloned = new ArrayList<>(locations.size()); + + for (final Vector3f location : locations.getArray()) { + cloned.add(location.clone()); + } - private List cloneVectorList(List locations) { - List cloned = new ArrayList(); - for(Vector3f l : locations) - cloned.add(l.clone()); return cloned; } - - - - @Override public Object jmeClone() { - if (spatial instanceof Terrain) { - TerrainLodControl cloned = new TerrainLodControl((Terrain) spatial, cameras); - cloned.setLodCalculator(lodCalculator.clone()); - cloned.spatial = spatial; - return cloned; + try { + return super.clone(); + } catch (final CloneNotSupportedException e) { + throw new RuntimeException(e); } - return null; } @Override - public void cloneFields( Cloner cloner, Object original ) { + public void cloneFields(final Cloner cloner, final Object original) { super.cloneFields(cloner, original); this.lodCalculator = cloner.clone(lodCalculator); - - try { - // Not deep clone of the cameras themselves - this.cameras = cloner.javaClone(cameras); - } catch( CloneNotSupportedException e ) { - throw new RuntimeException("Error cloning", e); - } + this.cameras = new SafeArrayList<>(Camera.class, cameras); + this.cameraLocations = new SafeArrayList<>(Vector3f.class); + this.lastCameraLocations = new SafeArrayList<>(Vector3f.class); + this.lodCalcRunning = new AtomicBoolean(); + this.previousCameraLocation = new Vector3f(); } - - @Override - public Control cloneForSpatial(Spatial spatial) { - if (spatial instanceof Terrain) { - List cameraClone = new ArrayList(); - if (cameras != null) { - for (Camera c : cameras) { - cameraClone.add(c); - } - } - TerrainLodControl cloned = new TerrainLodControl((Terrain) spatial, cameraClone); - cloned.setLodCalculator(lodCalculator.clone()); - return cloned; - } - return null; + public void setCamera(final Camera camera) { + this.cameras.clear(); + this.cameras.add(camera); } - public void setCamera(Camera camera) { - List cams = new ArrayList(); - cams.add(camera); - setCameras(cams); - } - - public void setCameras(List cameras) { - this.cameras = cameras; - cameraLocations.clear(); - for (Camera c : cameras) { - cameraLocations.add(c.getLocation()); - } + public void setCameras(final List cameras) { + this.cameras.clear(); + this.cameras.addAll(cameras); } @Override @@ -373,7 +432,7 @@ public class TerrainLodControl extends AbstractControl { return lodCalculator; } - public void setLodCalculator(LodCalculator lodCalculator) { + public void setLodCalculator(final LodCalculator lodCalculator) { this.lodCalculator = lodCalculator; } @@ -393,64 +452,60 @@ public class TerrainLodControl extends AbstractControl { /** * Calculates the LOD of all child terrain patches. */ - protected class UpdateLOD implements Callable> { - protected List camLocations; - protected LodCalculator lodCalculator; + protected class UpdateLOD implements Callable> { - protected UpdateLOD(List camLocations, LodCalculator lodCalculator) { + protected final List camLocations; + protected final LodCalculator lodCalculator; + + protected UpdateLOD(final List camLocations, final LodCalculator lodCalculator) { this.camLocations = camLocations; this.lodCalculator = lodCalculator; } public HashMap call() throws Exception { - //long start = System.currentTimeMillis(); - //if (isLodCalcRunning()) { - // return null; - //} - setLodCalcRunning(true); - TerrainQuad terrainQuad = (TerrainQuad)getSpatial(); + TerrainQuad terrainQuad = (TerrainQuad) getSpatial(); // go through each patch and calculate its LOD based on camera distance - HashMap updated = new HashMap(); - boolean lodChanged = terrainQuad.calculateLod(camLocations, updated, lodCalculator); // 'updated' gets populated here + HashMap updated = new HashMap<>(); + // 'updated' gets populated here + boolean lodChanged = terrainQuad.calculateLod(camLocations, updated, lodCalculator); if (!lodChanged) { // not worth updating anything else since no one's LOD changed - setLodCalcRunning(false); + lodCalcRunning.set(false); return null; } - // then calculate its neighbour LOD values for seaming in the shader terrainQuad.findNeighboursLod(updated); - - terrainQuad.fixEdges(updated); // 'updated' can get added to here - + // 'updated' can get added to here + terrainQuad.fixEdges(updated); terrainQuad.reIndexPages(updated, lodCalculator.usesVariableLod()); //setUpdateQuadLODs(updated); // set back to main ogl thread - setLodCalcRunning(false); + lodCalcRunning.set(false); return updated; } } @Override - public void write(JmeExporter ex) throws IOException { + public void write(final JmeExporter ex) throws IOException { super.write(ex); OutputCapsule oc = ex.getCapsule(this); oc.write((Node)terrain, "terrain", null); oc.write(lodCalculator, "lodCalculator", null); + oc.write(useRenderCamera, "useRenderCamera", false); } @Override - public void read(JmeImporter im) throws IOException { + public void read(final JmeImporter im) throws IOException { super.read(im); InputCapsule ic = im.getCapsule(this); terrain = (Terrain) ic.readSavable("terrain", null); lodCalculator = (LodCalculator) ic.readSavable("lodCalculator", new DistanceLodCalculator()); + useRenderCamera = ic.readBoolean("useRenderCamera", false); } - } diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java index 626eb4fd5..eb3263960 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/TerrainPatch.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -74,7 +74,7 @@ import java.util.List; * is a mathematical limit on the number of times the 'size' of the patch can be divided by two. However there is a -1 to that * for now until I add in a custom index buffer calculation for that max level, the current algorithm does not go that far. * - * You can supply a LodThresholdCalculator for use in determining when the LOD should change. It's API will no doubt change + * You can supply a LodThresholdCalculator for use in determining when the LOD should change. Its API will no doubt change * in the near future. Right now it defaults to just changing LOD every two patch sizes. So if a patch has a size of 65, * then the LOD changes every 130 units away. * @@ -86,7 +86,7 @@ public class TerrainPatch extends Geometry { protected int lod = 0; // this terrain patch's LOD private int maxLod = -1; protected int previousLod = -1; - protected int lodLeft, lodTop, lodRight, lodBottom; // it's neighbour's LODs + protected int lodLeft, lodTop, lodRight, lodBottom; // its neighbour's LODs protected int size; diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java index 4e2d14dd8..ffd77c0c7 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/geomipmap/grid/ImageTileLoader.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -74,7 +74,7 @@ public class ImageTileLoader implements TerrainGridTileLoader{ } /** - * Effects vertical scale of the height of the terrain when loaded. + * Affects the vertical scale of the terrain when loaded. */ public void setHeightScale(float heightScale) { this.heightScale = heightScale; diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java index 283f14974..e36dd03a6 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/CombinerHeightMap.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -36,7 +36,7 @@ import java.util.logging.Logger; /** * CombinerHeightMap generates a new height map based on * two provided height maps. These had maps can either be added together - * or substracted from each other. Each heightmap has a weight to + * or subtracted from each other. Each heightmap has a weight to * determine how much one will affect the other. By default it is set to * 0.5, 0.5 and meaning the two heightmaps are averaged evenly. This * value can be adjusted at will, as long as the two factors are equal diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java index 2518eb897..d5594b19a 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/FaultHeightMap.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -37,7 +37,7 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * Creates an heightmap based on the fault algorithm. Each iteration, a random line + * Creates a heightmap based on the fault algorithm. Each iteration, a random line * crossing the map is generated. On one side height values are raised, on the other side * lowered. * @author cghislai @@ -118,7 +118,7 @@ public class FaultHeightMap extends AbstractHeightMap { } /** - * Create an heightmap with linear step faults. + * Create a heightmap with linear step faults. * @param size size of heightmap * @param iterations number of iterations * @param minFaultHeight Height modified on each side @@ -240,7 +240,7 @@ public class FaultHeightMap extends AbstractHeightMap { return val; } } - //shoudn't go here + //shouldn't go here throw new RuntimeException("Code needs update to switch allcases"); } diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java index 34b20a398..7a53c9711 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/MidpointDisplacementHeightMap.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -37,7 +37,7 @@ import java.util.logging.Level; import java.util.logging.Logger; /** - * MidpointDisplacementHeightMap generates an heightmap based on + * MidpointDisplacementHeightMap generates a heightmap based on * the midpoint displacement algorithm. See Constructor javadoc for more info. * @author cghislai */ @@ -50,7 +50,7 @@ public class MidpointDisplacementHeightMap extends AbstractHeightMap { /** * The constructor generates the heightmap. After the first 4 corners are - * randomly given an height, the center will be heighted to the average of + * randomly given a height, the center will be heighted to the average of * the 4 corners to which a random value is added. Then other passes fill * the heightmap by the same principle. * The random value is generated between the values -range @@ -87,7 +87,7 @@ public class MidpointDisplacementHeightMap extends AbstractHeightMap { /** * The constructor generates the heightmap. After the first 4 corners are - * randomly given an height, the center will be heighted to the average of + * randomly given a height, the center will be heighted to the average of * the 4 corners to which a random value is added. Then other passes fill * the heightmap by the same principle. * The random value is generated between the values -range @@ -156,10 +156,10 @@ public class MidpointDisplacementHeightMap extends AbstractHeightMap { /** * Will fill the value at (coords[0]+stepSize/2, coords[1]+stepSize/2) with - * the average from the corners of the square with topleft corner at (coords[0],coords[1]) + * the average from the corners of the square with top, left corner at (coords[0],coords[1]) * and width of stepSize. - * @param tempBuffer the temprary heightmap - * @param coords an int array of lenght 2 with the x coord in position 0 + * @param tempBuffer the temporary heightmap + * @param coords an int array of length 2 with the x coord in position 0 * @param stepSize the size of the square * @param offsetRange the offset range within a random value is picked and added to the average * @param random the random generator diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java index cfd9d6755..a260d7b65 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/heightmap/Namer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -38,7 +38,7 @@ package com.jme3.terrain.heightmap; public interface Namer { /** - * Gets a name for a heightmap tile given it's cell id + * Gets a name for a heightmap tile given its cell id * @param x * @param y * @return diff --git a/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java index db0580f63..ec23d21eb 100644 --- a/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java +++ b/jme3-terrain/src/main/java/com/jme3/terrain/noise/filter/HydraulicErodeFilter.java @@ -1,5 +1,5 @@ /** - * Copyright (c) 2011, Novyon Events + * Copyright (c) 2011-2018, Novyon Events * * All rights reserved. * @@ -100,7 +100,7 @@ public class HydraulicErodeFilter extends AbstractFilter { } } - // step 3. water is transported to it's neighbours + // step 3. water is transported to its neighbours float a = ga[idx] + wt[idx]; // float[] aj = new float[idxrel.length]; float amax = 0; diff --git a/jme3-testdata/src/main/resources/Models/Tank/Tank_Metallic.png b/jme3-testdata/src/main/resources/Models/Tank/Tank_Metallic.png deleted file mode 100644 index afe233143..000000000 Binary files a/jme3-testdata/src/main/resources/Models/Tank/Tank_Metallic.png and /dev/null differ diff --git a/jme3-testdata/src/main/resources/Models/Tank/Tank_Occ_Rough_Metal.png b/jme3-testdata/src/main/resources/Models/Tank/Tank_Occ_Rough_Metal.png new file mode 100644 index 000000000..9a6cf378f Binary files /dev/null and b/jme3-testdata/src/main/resources/Models/Tank/Tank_Occ_Rough_Metal.png differ diff --git a/jme3-testdata/src/main/resources/Models/Tank/Tank_Roughness.png b/jme3-testdata/src/main/resources/Models/Tank/Tank_Roughness.png deleted file mode 100644 index 41f6c0a73..000000000 Binary files a/jme3-testdata/src/main/resources/Models/Tank/Tank_Roughness.png and /dev/null differ diff --git a/jme3-testdata/src/main/resources/Models/Tank/tank.j3m b/jme3-testdata/src/main/resources/Models/Tank/tank.j3m index 0bd16814e..3cd8ac428 100644 --- a/jme3-testdata/src/main/resources/Models/Tank/tank.j3m +++ b/jme3-testdata/src/main/resources/Models/Tank/tank.j3m @@ -1,11 +1,12 @@ Material Tank : Common/MatDefs/Light/PBRLighting.j3md { MaterialParameters { - MetallicMap : Flip Models/Tank/Tank_Metallic.png - RoughnessMap : Flip Models/Tank/Tank_Roughness.png + MetallicRoughnessMap : Flip Models/Tank/Tank_Occ_Rough_Metal.png NormalMap : Flip Models/Tank/Tank_Normal.png BaseColorMap : Flip Models/Tank/Tank_Base_Color.png EmissiveMap : Flip Models/Tank/Tank_Emissive.png + LightMap: Flip Models/Tank/Tank_Occ_Rough_Metal.png + LightMapAsAOMap: true; EmissiveIntensity : 2.0 } diff --git a/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.bin b/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.bin new file mode 100644 index 000000000..fb6b6831c Binary files /dev/null and b/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.bin differ diff --git a/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.gltf b/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.gltf new file mode 100644 index 000000000..d986072b0 --- /dev/null +++ b/jme3-testdata/src/main/resources/Scenes/PBR/ref/scene.gltf @@ -0,0 +1,2466 @@ +{ + "accessors": [ + { + "bufferView": 1, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 5784, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 11568, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 17352, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 11520, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 23136, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 28920, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 23040, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 34704, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 40488, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 34560, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 46272, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 52056, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 46080, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 57840, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 63624, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 57600, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 69408, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 75192, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 69120, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 80976, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 86760, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 80640, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 92544, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 98328, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 92160, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 104112, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 109896, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 103680, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 115680, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 121464, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 115200, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 127248, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 133032, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 126720, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 138816, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 144600, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 138240, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 150384, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 156168, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 149760, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 161952, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 167736, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 161280, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 173520, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 179304, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 172800, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 185088, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 190872, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 184320, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 196656, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 202440, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 195840, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 208224, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 214008, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 207360, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 219792, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 225576, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 218880, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 231360, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 237144, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 230400, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + }, + { + "bufferView": 1, + "byteOffset": 242928, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 1, + "byteOffset": 248712, + "componentType": 5126, + "count": 482, + "max": [ + 1, + 1, + 1 + ], + "min": [ + -1, + -1, + -1 + ], + "type": "VEC3" + }, + { + "bufferView": 0, + "byteOffset": 241920, + "componentType": 5125, + "count": 2880, + "max": [ + 481 + ], + "min": [ + 0 + ], + "type": "SCALAR" + } + ], + "asset": { + "generator": "Sketchfab (OSG glTF plugin)", + "version": "2.0" + }, + "bufferViews": [ + { + "buffer": 0, + "byteLength": 253440, + "byteOffset": 0, + "name": "ScalarBufferView", + "target": 34963 + }, + { + "buffer": 0, + "byteLength": 254496, + "byteOffset": 253440, + "byteStride": 12, + "name": "Vec4BufferView", + "target": 34962 + } + ], + "buffers": [ + { + "byteLength": 507936, + "uri": "scene.bin" + } + ], + "materials": [ + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.022", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 1 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.021", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.90000000000000002 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.020", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 1 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.019", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.90000000000000002 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.010", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.011", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.20000000000000001 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.012", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.20000000000000001 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.013", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.29999999999999999 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.014", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.40000000000000002 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.018", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.80000000000000004 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.017", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.69999999999999996 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.016", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.59999999999999998 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.015", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0, + 0, + 0, + 1 + ], + "metallicFactor": 0, + "roughnessFactor": 0.5 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.006", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.5 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.007", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.59999999999999998 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.008", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.69999999999999996 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.009", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.80000000000000004 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.005", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.40000000000000002 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.004", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.29999999999999999 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.003", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.20000000000000001 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.002", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0.10000000000000001 + } + }, + { + "doubleSided": true, + "emissiveFactor": [ + 0, + 0, + 0 + ], + "name": "Material.001", + "pbrMetallicRoughness": { + "baseColorFactor": [ + 0.80000001190000003, + 0.80000001190000003, + 0.80000001190000003, + 1 + ], + "metallicFactor": 1, + "roughnessFactor": 0 + } + } + ], + "meshes": [ + { + "name": "GeodeSphere", + "primitives": [ + { + "attributes": { + "NORMAL": 1, + "POSITION": 0 + }, + "indices": 2, + "material": 21, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.001", + "primitives": [ + { + "attributes": { + "NORMAL": 4, + "POSITION": 3 + }, + "indices": 5, + "material": 20, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.002", + "primitives": [ + { + "attributes": { + "NORMAL": 7, + "POSITION": 6 + }, + "indices": 8, + "material": 19, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.003", + "primitives": [ + { + "attributes": { + "NORMAL": 10, + "POSITION": 9 + }, + "indices": 11, + "material": 18, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.004", + "primitives": [ + { + "attributes": { + "NORMAL": 13, + "POSITION": 12 + }, + "indices": 14, + "material": 17, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.005", + "primitives": [ + { + "attributes": { + "NORMAL": 16, + "POSITION": 15 + }, + "indices": 17, + "material": 16, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.006", + "primitives": [ + { + "attributes": { + "NORMAL": 19, + "POSITION": 18 + }, + "indices": 20, + "material": 15, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.007", + "primitives": [ + { + "attributes": { + "NORMAL": 22, + "POSITION": 21 + }, + "indices": 23, + "material": 14, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.008", + "primitives": [ + { + "attributes": { + "NORMAL": 25, + "POSITION": 24 + }, + "indices": 26, + "material": 13, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.009", + "primitives": [ + { + "attributes": { + "NORMAL": 28, + "POSITION": 27 + }, + "indices": 29, + "material": 12, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.010", + "primitives": [ + { + "attributes": { + "NORMAL": 31, + "POSITION": 30 + }, + "indices": 32, + "material": 11, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.011", + "primitives": [ + { + "attributes": { + "NORMAL": 34, + "POSITION": 33 + }, + "indices": 35, + "material": 10, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.012", + "primitives": [ + { + "attributes": { + "NORMAL": 37, + "POSITION": 36 + }, + "indices": 38, + "material": 9, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.013", + "primitives": [ + { + "attributes": { + "NORMAL": 40, + "POSITION": 39 + }, + "indices": 41, + "material": 8, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.014", + "primitives": [ + { + "attributes": { + "NORMAL": 43, + "POSITION": 42 + }, + "indices": 44, + "material": 7, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.015", + "primitives": [ + { + "attributes": { + "NORMAL": 46, + "POSITION": 45 + }, + "indices": 47, + "material": 6, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.016", + "primitives": [ + { + "attributes": { + "NORMAL": 49, + "POSITION": 48 + }, + "indices": 50, + "material": 5, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.017", + "primitives": [ + { + "attributes": { + "NORMAL": 52, + "POSITION": 51 + }, + "indices": 53, + "material": 4, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.018", + "primitives": [ + { + "attributes": { + "NORMAL": 55, + "POSITION": 54 + }, + "indices": 56, + "material": 3, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.019", + "primitives": [ + { + "attributes": { + "NORMAL": 58, + "POSITION": 57 + }, + "indices": 59, + "material": 2, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.020", + "primitives": [ + { + "attributes": { + "NORMAL": 61, + "POSITION": 60 + }, + "indices": 62, + "material": 1, + "mode": 4 + } + ] + }, + { + "name": "GeodeSphere.021", + "primitives": [ + { + "attributes": { + "NORMAL": 64, + "POSITION": 63 + }, + "indices": 65, + "material": 0, + "mode": 4 + } + ] + } + ], + "nodes": [ + { + "children": [ + 1 + ], + "name": "RootNode (gltf orientation matrix)", + "rotation": [ + -0.70710678118654746, + -0, + -0, + 0.70710678118654757 + ] + }, + { + "children": [ + 2 + ], + "name": "RootNode (model correction matrix)" + }, + { + "children": [ + 3, + 5, + 7, + 9, + 11, + 13, + 15, + 17, + 19, + 21, + 23, + 25, + 27, + 29, + 31, + 33, + 35, + 37, + 39, + 41, + 43, + 45 + ], + "name": "Root" + }, + { + "children": [ + 4 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -15, + 0, + 2, + 1 + ], + "name": "Sphere" + }, + { + "mesh": 0, + "name": "GeodeSphere" + }, + { + "children": [ + 6 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -12, + 0, + 2, + 1 + ], + "name": "Sphere.001" + }, + { + "mesh": 1, + "name": "GeodeSphere.001" + }, + { + "children": [ + 8 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -9, + 0, + 2, + 1 + ], + "name": "Sphere.002" + }, + { + "mesh": 2, + "name": "GeodeSphere.002" + }, + { + "children": [ + 10 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -6, + 0, + 2, + 1 + ], + "name": "Sphere.003" + }, + { + "mesh": 3, + "name": "GeodeSphere.003" + }, + { + "children": [ + 12 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -3, + 0, + 2, + 1 + ], + "name": "Sphere.004" + }, + { + "mesh": 4, + "name": "GeodeSphere.004" + }, + { + "children": [ + 14 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 9, + 0, + 2, + 1 + ], + "name": "Sphere.005" + }, + { + "mesh": 5, + "name": "GeodeSphere.005" + }, + { + "children": [ + 16 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 6, + 0, + 2, + 1 + ], + "name": "Sphere.006" + }, + { + "mesh": 6, + "name": "GeodeSphere.006" + }, + { + "children": [ + 18 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 3, + 0, + 2, + 1 + ], + "name": "Sphere.007" + }, + { + "mesh": 7, + "name": "GeodeSphere.007" + }, + { + "children": [ + 20 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 2, + 1 + ], + "name": "Sphere.008" + }, + { + "mesh": 8, + "name": "GeodeSphere.008" + }, + { + "children": [ + 22 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + -2, + 1 + ], + "name": "Sphere.009" + }, + { + "mesh": 9, + "name": "GeodeSphere.009" + }, + { + "children": [ + 24 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 3, + 0, + -2, + 1 + ], + "name": "Sphere.010" + }, + { + "mesh": 10, + "name": "GeodeSphere.010" + }, + { + "children": [ + 26 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 6, + 0, + -2, + 1 + ], + "name": "Sphere.011" + }, + { + "mesh": 11, + "name": "GeodeSphere.011" + }, + { + "children": [ + 28 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 9, + 0, + -2, + 1 + ], + "name": "Sphere.012" + }, + { + "mesh": 12, + "name": "GeodeSphere.012" + }, + { + "children": [ + 30 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -3, + 0, + -2, + 1 + ], + "name": "Sphere.013" + }, + { + "mesh": 13, + "name": "GeodeSphere.013" + }, + { + "children": [ + 32 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -6, + 0, + -2, + 1 + ], + "name": "Sphere.014" + }, + { + "mesh": 14, + "name": "GeodeSphere.014" + }, + { + "children": [ + 34 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -9, + 0, + -2, + 1 + ], + "name": "Sphere.015" + }, + { + "mesh": 15, + "name": "GeodeSphere.015" + }, + { + "children": [ + 36 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -12, + 0, + -2, + 1 + ], + "name": "Sphere.016" + }, + { + "mesh": 16, + "name": "GeodeSphere.016" + }, + { + "children": [ + 38 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + -15, + 0, + -2, + 1 + ], + "name": "Sphere.017" + }, + { + "mesh": 17, + "name": "GeodeSphere.017" + }, + { + "children": [ + 40 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 12, + 0, + 2, + 1 + ], + "name": "Sphere.018" + }, + { + "mesh": 18, + "name": "GeodeSphere.018" + }, + { + "children": [ + 42 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 15, + 0, + 2, + 1 + ], + "name": "Sphere.019" + }, + { + "mesh": 19, + "name": "GeodeSphere.019" + }, + { + "children": [ + 44 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 12, + 0, + -2, + 1 + ], + "name": "Sphere.020" + }, + { + "mesh": 20, + "name": "GeodeSphere.020" + }, + { + "children": [ + 46 + ], + "matrix": [ + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 0, + 0, + 0, + 1, + 0, + 15, + 0, + -2, + 1 + ], + "name": "Sphere.021" + }, + { + "mesh": 21, + "name": "GeodeSphere.021" + } + ], + "scene": 0, + "scenes": [ + { + "name": "OSG_Scene", + "nodes": [ + 0 + ] + } + ] +} + diff --git a/jme3-vr/build.gradle b/jme3-vr/build.gradle index ec1ec8fed..d2c299eb0 100644 --- a/jme3-vr/build.gradle +++ b/jme3-vr/build.gradle @@ -2,7 +2,7 @@ if (!hasProperty('mainClass')) { ext.mainClass = '' } -def lwjglVersion = '3.0.0' +def lwjglVersion = '3.1.3' sourceCompatibility = '1.8' @@ -14,4 +14,8 @@ dependencies { // https://mvnrepository.com/artifact/net.java.dev.jna/jna compile group: 'net.java.dev.jna', name: 'jna', version: '4.3.0' compile 'com.nativelibs4java:jnaerator-runtime:0.12' + + // Native LibOVR/Oculus support + compile "org.lwjgl:lwjgl-ovr:${lwjglVersion}" + runtime "org.lwjgl:lwjgl-ovr:${lwjglVersion}:natives-windows" } \ No newline at end of file diff --git a/jme3-vr/src/main/java/com/jme3/app/VRAppState.java b/jme3-vr/src/main/java/com/jme3/app/VRAppState.java index a468e71b9..2ff8c50d5 100644 --- a/jme3-vr/src/main/java/com/jme3/app/VRAppState.java +++ b/jme3-vr/src/main/java/com/jme3/app/VRAppState.java @@ -1,7 +1,7 @@ package com.jme3.app; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -36,6 +36,8 @@ import com.jme3.app.state.AbstractAppState; import com.jme3.app.state.AppStateManager; import com.jme3.input.vr.VRAPI; import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.VRMouseManager; +import com.jme3.input.vr.VRViewManager; import com.jme3.math.ColorRGBA; import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; @@ -46,8 +48,6 @@ import com.jme3.scene.Spatial; import com.jme3.system.AppSettings; import com.jme3.util.VRGUIPositioningMode; import com.jme3.util.VRGuiManager; -import com.jme3.util.VRMouseManager; -import com.jme3.util.VRViewManager; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; @@ -72,7 +72,7 @@ import java.util.logging.Logger; *

  • To start the main {@link Application application}. * * Attaching an instance of this app state to an already started application may cause crashes. - * @author Julien Seinturier - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class VRAppState extends AbstractAppState { @@ -117,7 +117,7 @@ public class VRAppState extends AbstractAppState { } /** - * Create a new VR app state with given settings. The app state relies on the the given {@link VREnvironment VR environment}. + * Create a new VR app state with given settings. The app state relies on the given {@link VREnvironment VR environment}. * @param settings the settings to use. * @param environment the {@link VREnvironment VR environment} that this app state is using. */ @@ -146,9 +146,9 @@ public class VRAppState extends AbstractAppState { } /** - * Set the frustrum values for the application. - * @param near the frustrum near value. - * @param far the frustrum far value. + * Set the frustum values for the application. + * @param near the frustum near value. + * @param far the frustum far value. */ public void setFrustrumNearFar(float near, float far) { fNear = near; @@ -301,7 +301,7 @@ public class VRAppState extends AbstractAppState { } /** - * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the the application {@link #getCamera() camera}. + * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the application {@link #getCamera() camera}. * @param observer the scene observer. */ public void setObserver(Spatial observer) { @@ -396,32 +396,31 @@ public class VRAppState extends AbstractAppState { } else if( environment.getObserver() != null ) { environment.getCamera().setFrame(((Spatial)environment.getObserver()).getWorldTranslation(), ((Spatial)environment.getObserver()).getWorldRotation()); } - - //FIXME: check if this code is necessary. - // Updates scene and gui states. - Iterator spatialIter = application.getViewPort().getScenes().iterator(); - Spatial spatial = null; - while(spatialIter.hasNext()){ - spatial = spatialIter.next(); - spatial.updateLogicalState(tpf); - spatial.updateGeometricState(); - } - + if( environment.isInVR() == false || environment.getVRGUIManager().getPositioningMode() == VRGUIPositioningMode.MANUAL ) { // only update geometric state here if GUI is in manual mode, or not in VR // it will get updated automatically in the viewmanager update otherwise - spatialIter = application.getGuiViewPort().getScenes().iterator(); - spatial = null; - while(spatialIter.hasNext()){ - spatial = spatialIter.next(); + // TODO isn't this done by SimpleApplication? + for (Spatial spatial : application.getGuiViewPort().getScenes()) { + //spatial.updateLogicalState(tpf); spatial.updateGeometricState(); } } - + // use the analog control on the first tracked controller to push around the mouse environment.getVRMouseManager().updateAnalogAsMouse(0, null, null, null, tpf); } + @Override + public void render(RenderManager rm) { + super.render(rm); + + // update compositor + if( environment.getVRViewManager() != null ) { + environment.getVRViewManager().render(); + } + } + @Override public void postRender() { super.postRender(); diff --git a/jme3-vr/src/main/java/com/jme3/app/VRApplication.java b/jme3-vr/src/main/java/com/jme3/app/VRApplication.java index 9d502431d..0ea29d645 100644 --- a/jme3-vr/src/main/java/com/jme3/app/VRApplication.java +++ b/jme3-vr/src/main/java/com/jme3/app/VRApplication.java @@ -18,10 +18,12 @@ import com.jme3.input.KeyInput; import com.jme3.input.MouseInput; import com.jme3.input.TouchInput; import com.jme3.input.controls.KeyTrigger; -import com.jme3.input.vr.OSVR; -import com.jme3.input.vr.OpenVR; import com.jme3.input.vr.VRAPI; import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.openvr.OpenVR; +import com.jme3.input.vr.openvr.OpenVRMouseManager; +import com.jme3.input.vr.openvr.OpenVRViewManager; +import com.jme3.input.vr.osvr.OSVR; import com.jme3.math.ColorRGBA; import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; @@ -47,8 +49,6 @@ import com.jme3.system.lwjgl.LwjglDisplayVR; import com.jme3.system.lwjgl.LwjglOffscreenBufferVR; import com.jme3.util.VRGUIPositioningMode; import com.jme3.util.VRGuiManager; -import com.jme3.util.VRMouseManager; -import com.jme3.util.VRViewManagerOpenVR; import java.awt.GraphicsDevice; import java.awt.GraphicsEnvironment; @@ -72,7 +72,7 @@ import org.lwjgl.system.Platform; *

    * This class is no more functional and is deprecated. Please use {@link VRAppState VRAppState} instead. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * @deprecated use {@link VRAppState VRAppState} instead. */ public abstract class VRApplication implements Application, SystemListener { @@ -171,8 +171,8 @@ public abstract class VRApplication implements Application, SystemListener { private VRAPI VRhardware = null; private VRGuiManager guiManager = null; - private VRMouseManager mouseManager = null; - private VRViewManagerOpenVR viewmanager = null; + private OpenVRMouseManager mouseManager = null; + private OpenVRViewManager viewmanager = null; private String OS; @@ -259,10 +259,10 @@ public abstract class VRApplication implements Application, SystemListener { guiManager = new VRGuiManager(null); // Create a new view manager. - viewmanager = new VRViewManagerOpenVR(null); + viewmanager = new OpenVRViewManager(null); // Create a new mouse manager. - mouseManager = new VRMouseManager(null); + mouseManager = new OpenVRMouseManager(null); // we are going to use OpenVR now, not the Oculus Rift // OpenVR does support the Rift @@ -311,7 +311,7 @@ public abstract class VRApplication implements Application, SystemListener { * Get the VR view manager. * @return the VR view manager. */ - public VRViewManagerOpenVR getVRViewManager() { + public OpenVRViewManager getVRViewManager() { return viewmanager; } @@ -327,14 +327,14 @@ public abstract class VRApplication implements Application, SystemListener { * Get the VR mouse manager attached to this application. * @return the VR mouse manager attached to this application. */ - public VRMouseManager getVRMouseManager(){ + public OpenVRMouseManager getVRMouseManager(){ return mouseManager; } /** - * Set the frustrum values for the application. - * @param near the frustrum near value. - * @param far the frustrum far value. + * Set the frustum values for the application. + * @param near the frustum near value. + * @param far the frustum far value. */ public void setFrustrumNearFar(float near, float far) { fNear = near; @@ -1006,7 +1006,7 @@ public abstract class VRApplication implements Application, SystemListener { } /** - * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the the application {@link #getCamera() camera}. + * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the application {@link #getCamera() camera}. * @param observer the scene observer. */ public void setObserver(Spatial observer) { @@ -1359,7 +1359,7 @@ public abstract class VRApplication implements Application, SystemListener { } //FIXME: WARNING !! - viewmanager = new VRViewManagerOpenVR(null); + viewmanager = new OpenVRViewManager(null); viewmanager.setResolutionMultiplier(resMult); inputManager.addMapping(RESET_HMD, new KeyTrigger(KeyInput.KEY_F9)); setLostFocusBehavior(LostFocusBehavior.Disabled); diff --git a/jme3-vr/src/main/java/com/jme3/app/VRConstants.java b/jme3-vr/src/main/java/com/jme3/app/VRConstants.java index 6e23ec2bf..969f6cb80 100644 --- a/jme3-vr/src/main/java/com/jme3/app/VRConstants.java +++ b/jme3-vr/src/main/java/com/jme3/app/VRConstants.java @@ -6,7 +6,7 @@ import com.jme3.system.AppSettings; /** * Some constants dedicated to the VR module. - * @author Julien Seinturier - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * @since 3.1.0 */ public class VRConstants { @@ -117,6 +117,7 @@ public class VRConstants { *

  • {@link VRConstants#SETTING_VRAPI_OPENVR_VALUE SETTING_VRAPI_OPENVR_VALUE}: Use OpenVR binding. *
  • {@link VRConstants#SETTING_VRAPI_OSVR_VALUE SETTING_VRAPI_OSVR_VALUE}: Use OSVR binding. *
  • {@link VRConstants#SETTING_VRAPI_OPENVR_LWJGL_VALUE SETTING_VRAPI_OPENVR_LWJGL_VALUE}: Use OpenVR binding from LWJGL. + *
  • {@link VRConstants#SETTING_VRAPI_OCULUSVR_VALUE SETTING_VRAPI_OCULUSVR_VALUE}: Use Occulus Rift binding binding. * * Type: int
    * Usage: {@link AppSettings appSettings}.{@link HashMap#put(Object, Object) put}(VRConstants.SETTING_VRAPI, value) @@ -126,22 +127,34 @@ public class VRConstants { /** * The identifier of the OpenVR system. - * @see #SETTING_VRAPI + * @see #SETTING_VRAPI_OSVR_VALUE + * @see #SETTING_VRAPI_OPENVR_LWJGL_VALUE + * @see #SETTING_VRAPI_OCULUSVR_VALUE */ public static final int SETTING_VRAPI_OPENVR_VALUE = 1; /** * The identifier of the OSVR system. - * @see #SETTING_VRAPI + * @see #SETTING_VRAPI_OPENVR_VALUE + * @see #SETTING_VRAPI_OPENVR_LWJGL_VALUE + * @see #SETTING_VRAPI_OCULUSVR_VALUE */ public static final int SETTING_VRAPI_OSVR_VALUE = 2; /** * The identifier of the OpenVR from LWJGL system. - * @see #SETTING_VRAPI + * @see #SETTING_VRAPI_OPENVR_VALUE + * @see #SETTING_VRAPI_OSVR_VALUE + * @see #SETTING_VRAPI_OCULUSVR_VALUE */ public static final int SETTING_VRAPI_OPENVR_LWJGL_VALUE = 3; - + /** + * The identifier of the Oculus Rift system. + * @see #SETTING_VRAPI_OPENVR_VALUE + * @see #SETTING_VRAPI_OSVR_VALUE + * @see #SETTING_VRAPI_OPENVR_LWJGL_VALUE + */ + public static final int SETTING_VRAPI_OCULUSVR_VALUE = 4; } diff --git a/jme3-vr/src/main/java/com/jme3/app/VREnvironment.java b/jme3-vr/src/main/java/com/jme3/app/VREnvironment.java index e0e9048dc..aaf5249ca 100644 --- a/jme3-vr/src/main/java/com/jme3/app/VREnvironment.java +++ b/jme3-vr/src/main/java/com/jme3/app/VREnvironment.java @@ -5,21 +5,30 @@ import java.util.logging.Level; import java.util.logging.Logger; import com.jme3.app.state.AppState; -import com.jme3.input.vr.OSVR; -import com.jme3.input.vr.OpenVR; import com.jme3.input.vr.VRAPI; import com.jme3.input.vr.VRBounds; import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.VRMouseManager; +import com.jme3.input.vr.VRViewManager; +import com.jme3.input.vr.oculus.OculusMouseManager; +import com.jme3.input.vr.oculus.OculusVR; +import com.jme3.input.vr.oculus.OculusViewManager; +import com.jme3.input.vr.openvr.OpenVR; +import com.jme3.input.vr.openvr.OpenVRMouseManager; +import com.jme3.input.vr.openvr.OpenVRViewManager; +import com.jme3.input.vr.osvr.OSVR; +import com.jme3.input.vr.osvr.OSVRViewManager; import com.jme3.renderer.Camera; import com.jme3.scene.Spatial; import com.jme3.system.AppSettings; import com.jme3.system.jopenvr.JOpenVRLibrary; import com.jme3.util.VRGuiManager; -import com.jme3.util.VRMouseManager; -import com.jme3.util.VRViewManager; -import com.jme3.util.VRViewManagerOSVR; -import com.jme3.util.VRViewManagerOpenVR; +/** + * + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ public class VREnvironment { private static final Logger logger = Logger.getLogger(VREnvironment.class.getName()); @@ -72,11 +81,8 @@ public class VREnvironment { public VREnvironment(AppSettings settings){ this.settings = settings; - - guiManager = new VRGuiManager(this); - mouseManager = new VRMouseManager(this); - - bounds = new VRBounds(); + + bounds = null; processSettings(); } @@ -89,9 +95,19 @@ public class VREnvironment { return hardware; } + /** + * Set the VR bounds. + * @return the VR bounds. + * @see #getVRBounds() + */ + public void setVRBounds(VRBounds bounds){ + this.bounds = bounds; + } + /** * Get the VR bounds. * @return the VR bounds. + * @see #setVRBounds(VRBounds) */ public VRBounds getVRBounds(){ return bounds; @@ -203,7 +219,7 @@ public class VREnvironment { } /** - * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the the application {@link #getCamera() camera}. + * Set the scene observer. The VR headset will be linked to it. If no observer is set, the VR headset is linked to the application {@link #getCamera() camera}. * @param observer the scene observer. */ public void setObserver(Spatial observer) { @@ -385,9 +401,11 @@ public class VREnvironment { // Instanciate view manager if (vrBinding == VRConstants.SETTING_VRAPI_OPENVR_VALUE){ - viewmanager = new VRViewManagerOpenVR(this); + viewmanager = new OpenVRViewManager(this); } else if (vrBinding == VRConstants.SETTING_VRAPI_OSVR_VALUE){ - viewmanager = new VRViewManagerOSVR(this); + viewmanager = new OSVRViewManager(this); + } else if (vrBinding == VRConstants.SETTING_VRAPI_OCULUSVR_VALUE) { + viewmanager = new OculusViewManager(this); } else { logger.severe("Cannot instanciate view manager, unknown VRAPI type: "+vrBinding); } @@ -412,13 +430,29 @@ public class VREnvironment { if( vrSupportedOS) { if( vrBinding == VRConstants.SETTING_VRAPI_OSVR_VALUE ) { + + guiManager = new VRGuiManager(this); + mouseManager = new OpenVRMouseManager(this); + hardware = new OSVR(this); initialized = true; logger.config("Creating OSVR wrapper [SUCCESS]"); } else if( vrBinding == VRConstants.SETTING_VRAPI_OPENVR_VALUE ) { + + guiManager = new VRGuiManager(this); + mouseManager = new OpenVRMouseManager(this); + hardware = new OpenVR(this); initialized = true; logger.config("Creating OpenVR wrapper [SUCCESS]"); + } else if (vrBinding == VRConstants.SETTING_VRAPI_OCULUSVR_VALUE) { + + guiManager = new VRGuiManager(this); + mouseManager = new OculusMouseManager(this); + + hardware = new OculusVR(this); + initialized = true; + logger.config("Creating Occulus Rift wrapper [SUCCESS]"); } else { logger.config("Cannot create VR binding: "+vrBinding+" [FAILED]"); logger.log(Level.SEVERE, "Cannot initialize VR environment [FAILED]"); diff --git a/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwKeyInputVR.java b/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwKeyInputVR.java index c670ccd3e..e551f0fdc 100644 --- a/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwKeyInputVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwKeyInputVR.java @@ -48,7 +48,7 @@ import static org.lwjgl.glfw.GLFW.*; /** * A key input that wraps GLFW underlying components. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * */ public class GlfwKeyInputVR implements KeyInput { diff --git a/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwMouseInputVR.java b/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwMouseInputVR.java index e1060666a..5dbb958fb 100644 --- a/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwMouseInputVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/lwjgl/GlfwMouseInputVR.java @@ -63,7 +63,7 @@ import org.lwjgl.system.MemoryUtil; * This class support modifications dedicated to VR rendering. * @author Daniel Johansson (dannyjo) * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org */ public class GlfwMouseInputVR implements MouseInput { diff --git a/jme3-vr/src/main/java/com/jme3/util/VRMouseManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRMouseManager.java similarity index 56% rename from jme3-vr/src/main/java/com/jme3/util/VRMouseManager.java rename to jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRMouseManager.java index 32eaca069..8d73e7c04 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRMouseManager.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRMouseManager.java @@ -1,334 +1,228 @@ -/* - * To change this license header, choose License Headers in Project Properties. - * To change this template file, choose Tools | Templates - * and open the template in the editor. - */ -package com.jme3.util; - -import java.util.logging.Logger; - -import org.lwjgl.glfw.GLFW; - -import com.jme3.app.VREnvironment; -import com.jme3.input.MouseInput; -import com.jme3.input.controls.AnalogListener; -import com.jme3.input.lwjgl.GlfwMouseInputVR; -import com.jme3.input.vr.VRInputType; -import com.jme3.material.RenderState.BlendMode; -import com.jme3.math.Vector2f; -import com.jme3.scene.Node; -import com.jme3.system.AppSettings; -import com.jme3.system.lwjgl.LwjglWindow; -import com.jme3.texture.Texture; -import com.jme3.texture.Texture2D; -import com.jme3.ui.Picture; - -/** - * A class dedicated to the handling of the mouse within VR environment. - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org - * - */ -public class VRMouseManager { - - private static final Logger logger = Logger.getLogger(VRMouseManager.class.getName()); - - - private VREnvironment environment = null; - - private final int AVERAGE_AMNT = 4; - private int avgCounter; - - private Picture mouseImage; - private int recentCenterCount = 0; - private final Vector2f cursorPos = new Vector2f(); - private float ySize, sensitivity = 8f, acceleration = 2f; - private final float[] lastXmv = new float[AVERAGE_AMNT], lastYmv = new float[AVERAGE_AMNT]; - private boolean thumbstickMode; - private float moveScale = 1f; - - private float avg(float[] arr) { - float amt = 0f; - for(float f : arr) amt += f; - return amt / arr.length; - } - - /** - * Create a new VR mouse manager within the given {@link VREnvironment VR environment}. - * @param environment the VR environment of the mouse manager. - */ - public VRMouseManager(VREnvironment environment){ - this.environment = environment; - } - - /** - * Initialize the VR mouse manager. - */ - protected void initialize() { - - logger.config("Initializing VR mouse manager."); - - // load default mouseimage - mouseImage = new Picture("mouse"); - setImage("Common/Util/mouse.png"); - // hide default cursor by making it invisible - - MouseInput mi = environment.getApplication().getContext().getMouseInput(); - if( mi instanceof GlfwMouseInputVR ){ - ((GlfwMouseInputVR)mi).hideActiveCursor(); - } - centerMouse(); - - logger.config("Initialized VR mouse manager [SUCCESS]"); - } - - public void setThumbstickMode(boolean set) { - thumbstickMode = set; - } - - public boolean isThumbstickMode() { - return thumbstickMode; - } - - /** - * Set the speed of the mouse. - * @param sensitivity the sensitivity of the mouse. - * @param acceleration the acceleration of the mouse. - * @see #getSpeedAcceleration() - * @see #getSpeedSensitivity() - */ - public void setSpeed(float sensitivity, float acceleration) { - this.sensitivity = sensitivity; - this.acceleration = acceleration; - } - - /** - * Get the sensitivity of the mouse. - * @return the sensitivity of the mouse. - * @see #setSpeed(float, float) - */ - public float getSpeedSensitivity() { - return sensitivity; - } - - /** - * Get the acceleration of the mouse. - * @return the acceleration of the mouse. - * @see #setSpeed(float, float) - */ - public float getSpeedAcceleration() { - return acceleration; - } - - /** - * Set the mouse move scale. - * @param set the mouse move scale. - */ - public void setMouseMoveScale(float set) { - moveScale = set; - } - - /** - * Set the image to use as mouse cursor. The given string describe an asset that the underlying application asset manager has to load. - * @param texture the image to use as mouse cursor. - */ - public void setImage(String texture) { - - if (environment != null){ - - if (environment.getApplication() != null){ - if( environment.isInVR() == false ){ - Texture tex = environment.getApplication().getAssetManager().loadTexture(texture); - mouseImage.setTexture(environment.getApplication().getAssetManager(), (Texture2D)tex, true); - ySize = tex.getImage().getHeight(); - mouseImage.setHeight(ySize); - mouseImage.setWidth(tex.getImage().getWidth()); - mouseImage.getMaterial().getAdditionalRenderState().setBlendMode(BlendMode.Alpha); - mouseImage.getMaterial().getAdditionalRenderState().setDepthWrite(false); - } else { - Texture tex = environment.getApplication().getAssetManager().loadTexture(texture); - mouseImage.setTexture(environment.getApplication().getAssetManager(), (Texture2D)tex, true); - ySize = tex.getImage().getHeight(); - mouseImage.setHeight(ySize); - mouseImage.setWidth(tex.getImage().getWidth()); - mouseImage.getMaterial().getAdditionalRenderState().setBlendMode(BlendMode.Alpha); - mouseImage.getMaterial().getAdditionalRenderState().setDepthWrite(false); - } - } else { - throw new IllegalStateException("This VR environment is not attached to any application."); - } - - } else { - throw new IllegalStateException("This VR view manager is not attached to any VR environment."); - } - } - - /** - * Update analog controller as it was a mouse controller. - * @param inputIndex the index of the controller attached to the VR system. - * @param mouseListener the JMonkey mouse listener to trigger. - * @param mouseXName the mouseX identifier. - * @param mouseYName the mouseY identifier - * @param tpf the time per frame. - */ - public void updateAnalogAsMouse(int inputIndex, AnalogListener mouseListener, String mouseXName, String mouseYName, float tpf) { - - if (environment != null){ - if (environment.getApplication() != null){ - // got a tracked controller to use as the "mouse" - if( environment.isInVR() == false || - environment.getVRinput() == null || - environment.getVRinput().isInputDeviceTracking(inputIndex) == false ){ - return; - } - - Vector2f tpDelta; - if( thumbstickMode ) { - tpDelta = environment.getVRinput().getAxis(inputIndex, VRInputType.ViveTrackpadAxis); - } else { - tpDelta = environment.getVRinput().getAxisDeltaSinceLastCall(inputIndex, VRInputType.ViveTrackpadAxis); - } - - float Xamount = (float)Math.pow(Math.abs(tpDelta.x) * sensitivity, acceleration); - float Yamount = (float)Math.pow(Math.abs(tpDelta.y) * sensitivity, acceleration); - - if( tpDelta.x < 0f ){ - Xamount = -Xamount; - } - - if( tpDelta.y < 0f ){ - Yamount = -Yamount; - } - - Xamount *= moveScale; Yamount *= moveScale; - if( mouseListener != null ) { - if( tpDelta.x != 0f && mouseXName != null ) mouseListener.onAnalog(mouseXName, Xamount * 0.2f, tpf); - if( tpDelta.y != 0f && mouseYName != null ) mouseListener.onAnalog(mouseYName, Yamount * 0.2f, tpf); - } - - if( environment.getApplication().getInputManager().isCursorVisible() ) { - int index = (avgCounter+1) % AVERAGE_AMNT; - lastXmv[index] = Xamount * 133f; - lastYmv[index] = Yamount * 133f; - cursorPos.x -= avg(lastXmv); - cursorPos.y -= avg(lastYmv); - Vector2f maxsize = environment.getVRGUIManager().getCanvasSize(); - - if( cursorPos.x > maxsize.x ){ - cursorPos.x = maxsize.x; - } - - if( cursorPos.x < 0f ){ - cursorPos.x = 0f; - } - - if( cursorPos.y > maxsize.y ){ - cursorPos.y = maxsize.y; - } - - if( cursorPos.y < 0f ){ - cursorPos.y = 0f; - } - } - } else { - throw new IllegalStateException("This VR environment is not attached to any application."); - } - } else { - throw new IllegalStateException("This VR view manager is not attached to any VR environment."); - } - } - - /** - * Get the actual cursor position. - * @return the actual cursor position. - */ - public Vector2f getCursorPosition() { - - if (environment != null){ - if (environment.getApplication() != null){ - if( environment.isInVR() ) { - return cursorPos; - } - - return environment.getApplication().getInputManager().getCursorPosition(); - } else { - throw new IllegalStateException("This VR environment is not attached to any application."); - } - } else { - throw new IllegalStateException("This VR view manager is not attached to any VR environment."); - } - } - - /** - * Center the mouse on the display. - */ - public void centerMouse() { - - if (environment != null){ - if (environment.getApplication() != null){ - // set mouse in center of the screen if newly added - Vector2f size = environment.getVRGUIManager().getCanvasSize(); - MouseInput mi = environment.getApplication().getContext().getMouseInput(); - AppSettings as = environment.getApplication().getContext().getSettings(); - if( mi instanceof GlfwMouseInputVR ) ((GlfwMouseInputVR)mi).setCursorPosition((int)(as.getWidth() / 2f), (int)(as.getHeight() / 2f)); - if( environment.isInVR() ) { - cursorPos.x = size.x / 2f; - cursorPos.y = size.y / 2f; - recentCenterCount = 2; - } - } else { - throw new IllegalStateException("This VR environment is not attached to any application."); - } - } else { - throw new IllegalStateException("This VR view manager is not attached to any VR environment."); - } - - } - - /** - * Update the mouse manager. This method should not be called manually. - * The standard behavior for this method is to be called from the {@link VRViewManager#update(float) update method} of the attached {@link VRViewManager VR view manager}. - * @param tpf the time per frame. - */ - protected void update(float tpf) { - // if we are showing the cursor, add our picture as it - - if( environment.getApplication().getInputManager().isCursorVisible() ) { - if( mouseImage.getParent() == null ) { - - environment.getApplication().getGuiViewPort().attachScene(mouseImage); - centerMouse(); - // the "real" mouse pointer should stay hidden - if (environment.getApplication().getContext() instanceof LwjglWindow){ - GLFW.glfwSetInputMode(((LwjglWindow)environment.getApplication().getContext()).getWindowHandle(), GLFW.GLFW_CURSOR, GLFW.GLFW_CURSOR_DISABLED); - } - } - // handle mouse movements, which may be in addition to (or exclusive from) tracked movement - MouseInput mi = environment.getApplication().getContext().getMouseInput(); - if( mi instanceof GlfwMouseInputVR ) { - if( recentCenterCount <= 0 ) { - //Vector2f winratio = VRGuiManager.getCanvasToWindowRatio(); - cursorPos.x += ((GlfwMouseInputVR)mi).getLastDeltaX();// * winratio.x; - cursorPos.y += ((GlfwMouseInputVR)mi).getLastDeltaY();// * winratio.y; - if( cursorPos.x < 0f ) cursorPos.x = 0f; - if( cursorPos.y < 0f ) cursorPos.y = 0f; - if( cursorPos.x > environment.getVRGUIManager().getCanvasSize().x ) cursorPos.x = environment.getVRGUIManager().getCanvasSize().x; - if( cursorPos.y > environment.getVRGUIManager().getCanvasSize().y ) cursorPos.y = environment.getVRGUIManager().getCanvasSize().y; - } else recentCenterCount--; - ((GlfwMouseInputVR)mi).clearDeltas(); - } - // ok, update the cursor graphic position - Vector2f currentPos = getCursorPosition(); - mouseImage.setLocalTranslation(currentPos.x, currentPos.y - ySize, environment.getVRGUIManager().getGuiDistance() + 1f); - - mouseImage.updateGeometricState(); - - } else if( mouseImage.getParent() != null ) { - Node n = mouseImage.getParent(); - mouseImage.removeFromParent(); - - if (n != null){ - n.updateGeometricState(); - } - } - } -} +package com.jme3.input.vr; + +import java.util.logging.Logger; + +import org.lwjgl.glfw.GLFW; + +import com.jme3.app.VREnvironment; +import com.jme3.input.MouseInput; +import com.jme3.input.lwjgl.GlfwMouseInputVR; +import com.jme3.material.RenderState.BlendMode; +import com.jme3.math.Vector2f; +import com.jme3.scene.Node; +import com.jme3.system.AppSettings; +import com.jme3.system.lwjgl.LwjglWindow; +import com.jme3.texture.Texture; +import com.jme3.texture.Texture2D; +import com.jme3.ui.Picture; + +/** + * An abstract implementation of a {@link VRMouseManager}. This class should be overrided by specific hardware implementation of VR devices. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ +public abstract class AbstractVRMouseManager implements VRMouseManager { + + private static final Logger logger = Logger.getLogger(AbstractVRMouseManager.class.getName()); + + private VREnvironment environment = null; + + + + private Picture mouseImage; + private int recentCenterCount = 0; + + protected final Vector2f cursorPos = new Vector2f(); + + private float ySize, sensitivity = 8f, acceleration = 2f; + + private boolean thumbstickMode; + private float moveScale = 1f; + + /** + * Create a new AbstractVRMouseManager attached to the given {@link VREnvironment VR environment}. + * @param environment the {@link VREnvironment VR environment} that this manager is attached to. + */ + public AbstractVRMouseManager(VREnvironment environment) { + this.environment = environment; + } + + @Override + public void initialize() { + + logger.config("Initializing VR mouse manager."); + + // load default mouseimage + mouseImage = new Picture("mouse"); + setImage("Common/Util/mouse.png"); + // hide default cursor by making it invisible + + MouseInput mi = environment.getApplication().getContext().getMouseInput(); + if( mi instanceof GlfwMouseInputVR ){ + ((GlfwMouseInputVR)mi).hideActiveCursor(); + } + centerMouse(); + + logger.config("Initialized VR mouse manager [SUCCESS]"); + } + + @Override + public VREnvironment getVREnvironment() { + return environment; + } + + @Override + public void setThumbstickMode(boolean set) { + thumbstickMode = set; + } + + @Override + public boolean isThumbstickMode() { + return thumbstickMode; + } + + @Override + public void setSpeed(float sensitivity, float acceleration) { + this.sensitivity = sensitivity; + this.acceleration = acceleration; + } + + @Override + public float getSpeedSensitivity() { + return sensitivity; + } + + @Override + public float getSpeedAcceleration() { + return acceleration; + } + + @Override + public float getMouseMoveScale() { + return moveScale; + } + + @Override + public void setMouseMoveScale(float set) { + moveScale = set; + } + + @Override + public void setImage(String texture) { + + if (environment != null){ + + if (environment.getApplication() != null){ + if( environment.isInVR() == false ){ + Texture tex = environment.getApplication().getAssetManager().loadTexture(texture); + mouseImage.setTexture(environment.getApplication().getAssetManager(), (Texture2D)tex, true); + ySize = tex.getImage().getHeight(); + mouseImage.setHeight(ySize); + mouseImage.setWidth(tex.getImage().getWidth()); + mouseImage.getMaterial().getAdditionalRenderState().setBlendMode(BlendMode.Alpha); + mouseImage.getMaterial().getAdditionalRenderState().setDepthWrite(false); + } else { + Texture tex = environment.getApplication().getAssetManager().loadTexture(texture); + mouseImage.setTexture(environment.getApplication().getAssetManager(), (Texture2D)tex, true); + ySize = tex.getImage().getHeight(); + mouseImage.setHeight(ySize); + mouseImage.setWidth(tex.getImage().getWidth()); + mouseImage.getMaterial().getAdditionalRenderState().setBlendMode(BlendMode.Alpha); + mouseImage.getMaterial().getAdditionalRenderState().setDepthWrite(false); + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + + @Override + public Vector2f getCursorPosition() { + + if (environment != null){ + if (environment.getApplication() != null){ + if( environment.isInVR() ) { + return cursorPos; + } + + return environment.getApplication().getInputManager().getCursorPosition(); + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + @Override + public void centerMouse() { + + if (environment != null){ + if (environment.getApplication() != null){ + // set mouse in center of the screen if newly added + Vector2f size = environment.getVRGUIManager().getCanvasSize(); + MouseInput mi = environment.getApplication().getContext().getMouseInput(); + AppSettings as = environment.getApplication().getContext().getSettings(); + if( mi instanceof GlfwMouseInputVR ) ((GlfwMouseInputVR)mi).setCursorPosition((int)(as.getWidth() / 2f), (int)(as.getHeight() / 2f)); + if( environment.isInVR() ) { + cursorPos.x = size.x / 2f; + cursorPos.y = size.y / 2f; + recentCenterCount = 2; + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + + } + + @Override + public void update(float tpf) { + // if we are showing the cursor, add our picture as it + + if( environment.getApplication().getInputManager().isCursorVisible() ) { + if( mouseImage.getParent() == null ) { + + environment.getApplication().getGuiViewPort().attachScene(mouseImage); + centerMouse(); + // the "real" mouse pointer should stay hidden + if (environment.getApplication().getContext() instanceof LwjglWindow){ + GLFW.glfwSetInputMode(((LwjglWindow)environment.getApplication().getContext()).getWindowHandle(), GLFW.GLFW_CURSOR, GLFW.GLFW_CURSOR_DISABLED); + } + } + // handle mouse movements, which may be in addition to (or exclusive from) tracked movement + MouseInput mi = environment.getApplication().getContext().getMouseInput(); + if( mi instanceof GlfwMouseInputVR ) { + if( recentCenterCount <= 0 ) { + //Vector2f winratio = VRGuiManager.getCanvasToWindowRatio(); + cursorPos.x += ((GlfwMouseInputVR)mi).getLastDeltaX();// * winratio.x; + cursorPos.y += ((GlfwMouseInputVR)mi).getLastDeltaY();// * winratio.y; + if( cursorPos.x < 0f ) cursorPos.x = 0f; + if( cursorPos.y < 0f ) cursorPos.y = 0f; + if( cursorPos.x > environment.getVRGUIManager().getCanvasSize().x ) cursorPos.x = environment.getVRGUIManager().getCanvasSize().x; + if( cursorPos.y > environment.getVRGUIManager().getCanvasSize().y ) cursorPos.y = environment.getVRGUIManager().getCanvasSize().y; + } else recentCenterCount--; + ((GlfwMouseInputVR)mi).clearDeltas(); + } + // ok, update the cursor graphic position + Vector2f currentPos = getCursorPosition(); + mouseImage.setLocalTranslation(currentPos.x, currentPos.y - ySize, environment.getVRGUIManager().getGuiDistance() + 1f); + + mouseImage.updateGeometricState(); + + } else if( mouseImage.getParent() != null ) { + Node n = mouseImage.getParent(); + mouseImage.removeFromParent(); + + if (n != null){ + n.updateGeometricState(); + } + } + } +} diff --git a/jme3-vr/src/main/java/com/jme3/util/AbstractVRViewManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRViewManager.java similarity index 95% rename from jme3-vr/src/main/java/com/jme3/util/AbstractVRViewManager.java rename to jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRViewManager.java index f4f7e7f91..54251fadf 100644 --- a/jme3-vr/src/main/java/com/jme3/util/AbstractVRViewManager.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/AbstractVRViewManager.java @@ -1,4 +1,4 @@ -package com.jme3.util; +package com.jme3.input.vr; import com.jme3.app.VREnvironment; import com.jme3.post.CartoonSSAO; @@ -18,7 +18,7 @@ import com.jme3.texture.Texture2D; /** * A VR view manager. This class holds methods that enable to submit 3D views to the VR compositor. * System dependent classes should extends from this one. - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public abstract class AbstractVRViewManager implements VRViewManager { diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/HmdType.java b/jme3-vr/src/main/java/com/jme3/input/vr/HmdType.java index 044a032ef..5ad535d72 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/HmdType.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/HmdType.java @@ -3,7 +3,7 @@ package com.jme3.input.vr; /** * The type of VR Head Mounted Device (HMD) * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public enum HmdType { diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRAPI.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRAPI.java index 4691f4e66..b1d0fc46a 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/VRAPI.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRAPI.java @@ -14,7 +14,7 @@ import com.jme3.renderer.Camera; /** * An interface that represents a VR system. This interface has to be implemented in order to wrap underlying VR system (OpenVR, OSVR, ...) * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public interface VRAPI { @@ -86,13 +86,14 @@ public interface VRAPI { public boolean isInitialized(); /** - * Reset the VR system. + * Reset the VR system. After a call to this method, the current position of the HMD should be + * the origin (i-e the observer without any combined transformation). */ public void reset(); /** - * Get the size of an Head Mounted Device (HMD) rendering area in pixels. - * @param store the size of an Head Mounted Device (HMD) rendering area in pixels (modified). + * Get the size of a Head Mounted Device (HMD) rendering area in pixels. + * @param store the size of a Head Mounted Device (HMD) rendering area in pixels (modified). */ public void getRenderSize(Vector2f store); diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRBounds.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRBounds.java index 0f81b4105..288812c68 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/VRBounds.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRBounds.java @@ -1,61 +1,17 @@ -package com.jme3.input.vr; - -import com.jme3.math.Vector2f; -import com.jme3.system.jopenvr.JOpenVRLibrary; -import com.jme3.system.jopenvr.VR_IVRChaperone_FnTable; -import com.sun.jna.ptr.FloatByReference; - -import java.util.logging.Logger; - -/** - * A class that represents VR world bounds. - * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org - */ -public class VRBounds { - - private static Logger logger = Logger.getLogger(VRBounds.class.getName()); - - private VR_IVRChaperone_FnTable vrChaperone; - private Vector2f playSize; - - /** - * Initialize the VR bounds. - * @return true if the initialization is a success and false otherwise. - */ - public boolean init(OpenVR api) { - - logger.config("Initialize VR bounds..."); - - if( vrChaperone == null ) { - vrChaperone = new VR_IVRChaperone_FnTable(JOpenVRLibrary.VR_GetGenericInterface(JOpenVRLibrary.IVRChaperone_Version, api.hmdErrorStore).getPointer()); - if( vrChaperone != null ) { - vrChaperone.setAutoSynch(false); - vrChaperone.read(); - FloatByReference fbX = new FloatByReference(); - FloatByReference fbZ = new FloatByReference(); - vrChaperone.GetPlayAreaSize.apply(fbX, fbZ); - playSize = new Vector2f(fbX.getValue(), fbZ.getValue()); - - logger.config("Initialize VR bounds [SUCCESS]"); - return true; // init success - } - - logger.warning("Initialize VR bounds [FAILED]."); - return false; // failed to init - } - - logger.config("Initialize VR bounds already done."); - return true; // already initialized - } - - /** - * Get the size of the VR world. - * @return the size of the VR world. - */ - public Vector2f getPlaySize() { - return playSize; - } - -} - +package com.jme3.input.vr; + +import com.jme3.math.Vector2f; + +/** + * This interface describe the VR playground bounds. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ +public interface VRBounds { + + /** + * Get the size of the VR playground. + * @return the size of the VR playground. + */ + public Vector2f getPlaySize(); +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRInputAPI.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRInputAPI.java index 50733e04b..6cb9afb41 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/VRInputAPI.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRInputAPI.java @@ -12,7 +12,7 @@ import com.jme3.math.Vector3f; /** * An interface that represents a VR input (typically a VR device such as a controller). * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public interface VRInputAPI { @@ -89,16 +89,16 @@ public interface VRInputAPI { public boolean init(); /** - * Get the number of tracked controller (for example an hand controllers) attached to the VR system. - * @return the number of controller attached to the VR system. + * Get the number of tracked controllers (for example, hand controllers) attached to the VR system. + * @return the number of controllers attached to the VR system. * @see #getTrackedController(int) */ public int getTrackedControllerCount(); /** - * Get the tracked controller (for example an hand controllers) that is attached to the VR system. + * Get a tracked controller (for example, a hand controller) that is attached to the VR system. * @param index the index of the controller. - * @return the tracked controller (for example an hand controllers) that is attached to the VR system. + * @return the tracked controller (for example, a hand controller) that is attached to the VR system. * @see #getTrackedControllerCount() */ public VRTrackedController getTrackedController(int index); @@ -189,7 +189,7 @@ public interface VRInputAPI { public Vector3f getFinalObserverPosition(int index); /** - * Trigger an haptic pulse on the selected controller for the duration given in parameters (in seconds). + * Trigger a haptic pulse on the selected controller for the duration given in parameters (in seconds). * @param controllerIndex the index of the controller. * @param seconds the duration of the pulse in seconds. */ diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRInputType.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRInputType.java index aca571f35..c82e2b518 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/VRInputType.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRInputType.java @@ -3,7 +3,7 @@ package com.jme3.input.vr; /** * The type of a VR input. This enumeration enables to determine which part of the VR device is involved within input callback. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * */ public enum VRInputType { @@ -26,7 +26,103 @@ public enum VRInputType { /** * an HTC vive menu button (about Vive controller). */ - ViveMenuButton(3); + ViveMenuButton(3), + + /** + * The thumbstick on the Oculus Touch controllers. + * + * Unlike the Vive controllers where the touchpad is commonly used + * as a virtual DPad, you should avoid using the thumbstick for purposes + * that do not require analog input. + */ + OculusThumbstickAxis(0), + + /** + * The trigger button on the Oculus Touch controllers. + * + * This is the button under the user's index finger, and should not be used to + * pick up objects. See the + * Oculus Developer documentation. + */ + OculusTriggerAxis(0), + + /** + * The 'grab' button on the Oculus Touch controllers. + * + * This button should only (unless you have a compelling reason otherwise) be used to pick up objects. + */ + OculusGripAxis(0), + + /** + * The upper buttons on the Oculus Touch controllers - B on the right controller, and Y on the left. + */ + OculusTopButton(org.lwjgl.ovr.OVR.ovrButton_B | org.lwjgl.ovr.OVR.ovrButton_Y), + + /** + * The lower (not counting menu) buttons on the Oculus Touch + * controllers - A on the right controller, and X on the left. + */ + OculusBottomButton(org.lwjgl.ovr.OVR.ovrButton_A | org.lwjgl.ovr.OVR.ovrButton_X), + + /** + * The 'click' button on the Oculus Touch thumbsticks. + */ + OculusThumbstickButton(org.lwjgl.ovr.OVR.ovrButton_LThumb | org.lwjgl.ovr.OVR.ovrButton_RThumb), + + /** + * The game-usable menu button, under and to the left of the 'X' button on the left controller. + * + * Most games use this to pause - it preferably should be used for at least that purpose, and is + * uncomfortable to rest your thumb on (in games where you suddenly have to pause/open a menu). + */ + OculusMenuButton(org.lwjgl.ovr.OVR.ovrButton_Enter), + + /** + * The capacitive touch sensors on the top buttons (Y and B) of the Oculus Touch. + */ + OculusTopTouch(org.lwjgl.ovr.OVR.ovrTouch_B | org.lwjgl.ovr.OVR.ovrTouch_Y), + + /** + * The capacitive touch sensors on the lower buttons (X and A) of the Oculus Touch. + */ + OculusBottomTouch(org.lwjgl.ovr.OVR.ovrTouch_A | org.lwjgl.ovr.OVR.ovrTouch_X), + + /** + * The capacitive touch sensors on the thumbsticks of the Oculus Touch. + */ + OculusThumbstickTouch(org.lwjgl.ovr.OVR.ovrTouch_LThumb | org.lwjgl.ovr.OVR.ovrTouch_RThumb), + + /** + * The capacitive touch sensors on the thumbrests of the Oculus Touch - this is a textured pad + * on the Oculus Touch controller next to the ABXY buttons for users to reset their thumbs on. + * + * While it probably goes without saying, only use this for gesture support and do not bind game + * elements to it. + */ + OculusThumbrestTouch(org.lwjgl.ovr.OVR.ovrTouch_LThumbRest | org.lwjgl.ovr.OVR.ovrTouch_RThumbRest), + + /** + * The state of a software calculation based on the capacitive touch sensor values that determine if + * the user has lifted their thumb off the controller, and can be used for gesture support. + * + * This should be used instead of calculating this yourself based on the touch results of all the other + * parts of the controller. + */ + OculusThumbUp(org.lwjgl.ovr.OVR.ovrTouch_LThumbUp | org.lwjgl.ovr.OVR.ovrTouch_RThumbUp), + + /** + * Is the user resting their finger on the trigger of an Oculus Touch controller? + */ + OculusIndexTouch(org.lwjgl.ovr.OVR.ovrTouch_LIndexPointing | org.lwjgl.ovr.OVR.ovrTouch_RIndexPointing), + + /** + * Is the user pointing their finger forwards, as if to press a button? + * + * This is internally calculated from proximity and filtering is applied - it should be used rather + * than !OculusIndexTouch, as it will probably lead to better results. + */ + OculusIndexPointing(org.lwjgl.ovr.OVR.ovrTouch_LIndexPointing | org.lwjgl.ovr.OVR.ovrTouch_RIndexPointing); /** * The value that codes the input type. diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRMouseManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRMouseManager.java new file mode 100644 index 000000000..5257cd05c --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRMouseManager.java @@ -0,0 +1,107 @@ +package com.jme3.input.vr; + +import com.jme3.app.VREnvironment; +import com.jme3.input.controls.AnalogListener; +import com.jme3.math.Vector2f; + +/** + * A class dedicated to the handling of the mouse within VR environment. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + */ +public interface VRMouseManager { + + + /** + * Initialize the VR mouse manager. + */ + public void initialize(); + + /** + * Get the {@link VREnvironment VR Environment} to which this manager is attached. + * @return the {@link VREnvironment VR Environment} to which this manager is attached. + */ + public VREnvironment getVREnvironment(); + + /** + * Set if the VR device controller is used within thumb stick mode. + * @param set true if the VR device controller is used within thumb stick mode and false otherwise. + */ + public void setThumbstickMode(boolean set); + + /** + * Get if the VR device controller is used within thumb stick mode. + * @return true if the VR device controller is used within thumb stick mode and false otherwise. + */ + public boolean isThumbstickMode(); + + /** + * Set the speed of the mouse. + * @param sensitivity the sensitivity of the mouse. + * @param acceleration the acceleration of the mouse. + * @see #getSpeedAcceleration() + * @see #getSpeedSensitivity() + */ + public void setSpeed(float sensitivity, float acceleration); + + /** + * Get the sensitivity of the mouse. + * @return the sensitivity of the mouse. + * @see #setSpeed(float, float) + */ + public float getSpeedSensitivity(); + + /** + * Get the acceleration of the mouse. + * @return the acceleration of the mouse. + * @see #setSpeed(float, float) + */ + public float getSpeedAcceleration(); + + /** + * Get the move scale. + * return the move scale. + * @see #setMouseMoveScale(float) + */ + public float getMouseMoveScale(); + + /** + * Set the mouse move scale. + * @param set the mouse move scale. + * @see #getMouseMoveScale() + */ + public void setMouseMoveScale(float set); + + /** + * Set the image to use as mouse cursor. The given string describe an asset that the underlying application asset manager has to load. + * @param texture the image to use as mouse cursor. + */ + public void setImage(String texture); + + /** + * Update analog controller as it was a mouse controller. + * @param inputIndex the index of the controller attached to the VR system. + * @param mouseListener the JMonkey mouse listener to trigger. + * @param mouseXName the mouseX identifier. + * @param mouseYName the mouseY identifier + * @param tpf the time per frame. + */ + public void updateAnalogAsMouse(int inputIndex, AnalogListener mouseListener, String mouseXName, String mouseYName, float tpf); + + /** + * Get the actual cursor position. + * @return the actual cursor position. + */ + public Vector2f getCursorPosition(); + + /** + * Center the mouse on the display. + */ + public void centerMouse(); + + /** + * Update the mouse manager. This method should not be called manually. + * The standard behavior for this method is to be called from the {@link VRViewManager#update(float) update method} of the attached {@link VRViewManager VR view manager}. + * @param tpf the time per frame. + */ + public void update(float tpf); +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/VRTrackedController.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRTrackedController.java index 3ce20e5c0..f47e36aa8 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/VRTrackedController.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRTrackedController.java @@ -6,8 +6,7 @@ import com.jme3.math.Vector3f; /** * TODO - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org - * + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public interface VRTrackedController { diff --git a/jme3-vr/src/main/java/com/jme3/util/VRViewManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/VRViewManager.java similarity index 88% rename from jme3-vr/src/main/java/com/jme3/util/VRViewManager.java rename to jme3-vr/src/main/java/com/jme3/input/vr/VRViewManager.java index 58a6c166e..96b3eda95 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRViewManager.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/VRViewManager.java @@ -1,4 +1,4 @@ -package com.jme3.util; +package com.jme3.input.vr; import com.jme3.app.VRAppState; import com.jme3.app.VREnvironment; @@ -11,7 +11,7 @@ import com.jme3.texture.Texture2D; /** * A VR view manager. This interface describes methods that enable to submit 3D views to the VR compositor. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public interface VRViewManager { @@ -150,10 +150,18 @@ public interface VRViewManager { */ public void update(float tpf); + /** + * This method contains action to be done during the rendering phase. + * This method should be called for example from the {@link com.jme3.app.state.AppState#render(com.jme3.renderer.RenderManager) render} method of an {@link com.jme3.app.state.AppState app state}. + * @see #postRender() + */ + public void render(); + /** * Send the rendering result as textures to the two eyes. * This method should be called after all the rendering operations * (for example at the end of the {@link AppState#postRender() postRender()} method of the attached app state.) + * @see #preRender() */ public void postRender(); diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusMouseManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusMouseManager.java new file mode 100644 index 000000000..52fbaf7b0 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusMouseManager.java @@ -0,0 +1,108 @@ +package com.jme3.input.vr.oculus; + +import com.jme3.app.VREnvironment; +import com.jme3.input.controls.AnalogListener; +import com.jme3.input.vr.AbstractVRMouseManager; +import com.jme3.input.vr.VRInputType; +import com.jme3.math.Vector2f; + +/** + * A class dedicated to the mouse handling within Oculus Rift based VR experience. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ +public class OculusMouseManager extends AbstractVRMouseManager { + + private final int AVERAGE_AMNT = 4; + + private int avgCounter; + + private final float[] lastXmv = new float[AVERAGE_AMNT]; + + private final float[] lastYmv = new float[AVERAGE_AMNT]; + + /** + * Create a new VR mouse manager within the given {@link VREnvironment VR environment}. + * @param environment the VR environment of the mouse manager. + */ + public OculusMouseManager(VREnvironment environment){ + super(environment); + } + + @Override + public void updateAnalogAsMouse(int inputIndex, AnalogListener mouseListener, String mouseXName, String mouseYName, float tpf) { + + if (getVREnvironment() != null){ + if (getVREnvironment().getApplication() != null){ + // got a tracked controller to use as the "mouse" + if( getVREnvironment().isInVR() == false || + getVREnvironment().getVRinput() == null || + getVREnvironment().getVRinput().isInputDeviceTracking(inputIndex) == false ){ + return; + } + + Vector2f tpDelta; + // TODO option to use Touch joysticks + if( isThumbstickMode() ) { + tpDelta = getVREnvironment().getVRinput().getAxis(inputIndex, VRInputType.OculusThumbstickAxis); + } else { + tpDelta = getVREnvironment().getVRinput().getAxisDeltaSinceLastCall(inputIndex, VRInputType.OculusThumbstickAxis); + } + + float Xamount = (float)Math.pow(Math.abs(tpDelta.x) * getSpeedSensitivity(), getSpeedAcceleration()); + float Yamount = (float)Math.pow(Math.abs(tpDelta.y) * getSpeedSensitivity(), getSpeedAcceleration()); + + if( tpDelta.x < 0f ){ + Xamount = -Xamount; + } + + if( tpDelta.y < 0f ){ + Yamount = -Yamount; + } + + Xamount *= getMouseMoveScale(); + Yamount *= getMouseMoveScale(); + + if( mouseListener != null ) { + if( tpDelta.x != 0f && mouseXName != null ) mouseListener.onAnalog(mouseXName, Xamount * 0.2f, tpf); + if( tpDelta.y != 0f && mouseYName != null ) mouseListener.onAnalog(mouseYName, Yamount * 0.2f, tpf); + } + + if( getVREnvironment().getApplication().getInputManager().isCursorVisible() ) { + int index = (avgCounter+1) % AVERAGE_AMNT; + lastXmv[index] = Xamount * 133f; + lastYmv[index] = Yamount * 133f; + cursorPos.x -= avg(lastXmv); + cursorPos.y -= avg(lastYmv); + Vector2f maxsize = getVREnvironment().getVRGUIManager().getCanvasSize(); + + if( cursorPos.x > maxsize.x ){ + cursorPos.x = maxsize.x; + } + + if( cursorPos.x < 0f ){ + cursorPos.x = 0f; + } + + if( cursorPos.y > maxsize.y ){ + cursorPos.y = maxsize.y; + } + + if( cursorPos.y < 0f ){ + cursorPos.y = 0f; + } + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + private float avg(float[] arr) { + float amt = 0f; + for(float f : arr) amt += f; + return amt / arr.length; + } +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVR.java b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVR.java new file mode 100644 index 000000000..0c12b98d2 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVR.java @@ -0,0 +1,663 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.jme3.input.vr.oculus; + +import com.jme3.app.VREnvironment; +import com.jme3.input.vr.HmdType; +import com.jme3.input.vr.VRAPI; +import com.jme3.math.*; +import com.jme3.renderer.Camera; +import com.jme3.texture.*; +import org.lwjgl.*; +import org.lwjgl.ovr.*; + +import java.nio.IntBuffer; +import java.util.logging.Logger; + +import static org.lwjgl.BufferUtils.createPointerBuffer; +import static org.lwjgl.ovr.OVR.*; +import static org.lwjgl.ovr.OVRErrorCode.ovrSuccess; +import static org.lwjgl.ovr.OVRUtil.ovr_Detect; +import static org.lwjgl.system.MemoryUtil.*; + +/** + * Oculus VR (LibOVR 1.3.0) Native support. + *

    + * A few notes about the Oculus coordinate system: + *

      + *
    • Matrices should be transposed
    • + *
    • Quaternions should be inverted
    • + *
    • Vectors should have their X and Z axes flipped, but apparently not Y.
    • + *
    + * + * @author Campbell Suter + */ +public class OculusVR implements VRAPI { + + private static final Logger LOGGER = Logger.getLogger(OculusVR.class.getName()); + + private final VREnvironment environment; + private boolean initialized; + + /** + * Pointer to the HMD object + */ + private long session; + + /** + * Information about the VR session (should the app quit, is + * it visible or is the universal menu open, etc) + */ + private OVRSessionStatus sessionStatus; + + /** + * HMD information, such as product name and manufacturer. + */ + private OVRHmdDesc hmdDesc; + + /** + * The horizontal resolution of the HMD + */ + private int resolutionW; + + /** + * The vertical resolution of the HMD + */ + private int resolutionH; + + /** + * Field-of-view data for each eye (how many degrees from the + * center can the user see). + */ + private final OVRFovPort fovPorts[] = new OVRFovPort[2]; + + /** + * Data about each eye to be rendered - in particular, the + * offset from the center of the HMD to the eye. + */ + private final OVREyeRenderDesc eyeRenderDesc[] = new OVREyeRenderDesc[2]; + + /** + * Store the projections for each eye, so we don't have to malloc + * and recalculate them each frame. + */ + private final OVRMatrix4f[] projections = new OVRMatrix4f[2]; + + /** + * Store the poses for each eye, relative to the HMD. + * + * @see #getHMDMatrixPoseLeftEye() + */ + private final Matrix4f[] hmdRelativeEyePoses = new Matrix4f[2]; + + /** + * Store the positions for each eye, relative to the HMD. + * + * @see #getHMDVectorPoseLeftEye() + */ + private final Vector3f[] hmdRelativeEyePositions = new Vector3f[2]; + + /** + * The current state of the tracked components (HMD, touch) + */ + private OVRTrackingState trackingState; + + /** + * The position and orientation of the user's head. + */ + private OVRPosef headPose; + + /** + * The state of the Touch controllers. + */ + private OculusVRInput input; + + // The size of the texture drawn onto the HMD + private int textureW; + private int textureH; + + // Layers to render into + private PointerBuffer layers; + private OVRLayerEyeFov layer0; + + /** + * Chain texture set thing. + */ + private long chains[]; + + /** + * Frame buffers we can draw into. + */ + private FrameBuffer framebuffers[][]; + + public OculusVR(VREnvironment environment) { + this.environment = environment; + } + + @Override + public OculusVRInput getVRinput() { + return input; + } + + @Override + public String getName() { + return "OVR"; + } + + @Override + public int getDisplayFrequency() { + // TODO find correct frequency. I'm not sure + // if LibOVR has a way to do that, though. + return 60; + } + + @Override + public boolean initialize() { + // Check to make sure the HMD is connected + OVRDetectResult detect = OVRDetectResult.calloc(); + ovr_Detect(0, detect); + boolean connected = detect.IsOculusHMDConnected(); + LOGGER.config("OVRDetectResult.IsOculusHMDConnected = " + connected); + LOGGER.config("OVRDetectResult.IsOculusServiceRunning = " + detect.IsOculusServiceRunning()); + detect.free(); + + if (!connected) { + LOGGER.info("Oculus Rift not connected"); + return false; + } + + initialized = true; + + // Set up the HMD + OVRLogCallback callback = new OVRLogCallback() { + @Override + public void invoke(long userData, int level, long message) { + LOGGER.fine("LibOVR [" + userData + "] [" + level + "] " + memASCII(message)); + } + }; + OVRInitParams initParams = OVRInitParams.calloc(); + initParams.LogCallback(callback); + if (ovr_Initialize(initParams) != ovrSuccess) { + LOGGER.severe("LibOVR Init Failed"); + return false; // TODO fix memory leak - destroy() is not called + } + LOGGER.config("LibOVR Version " + ovr_GetVersionString()); + initParams.free(); + + // Get access to the HMD + LOGGER.info("Initialize HMD Session"); + PointerBuffer pHmd = memAllocPointer(1); + OVRGraphicsLuid luid = OVRGraphicsLuid.calloc(); + if (ovr_Create(pHmd, luid) != ovrSuccess) { + LOGGER.severe("Failed to create HMD"); + return false; // TODO fix memory leak - destroy() is not called + } + session = pHmd.get(0); + memFree(pHmd); + luid.free(); + sessionStatus = OVRSessionStatus.calloc(); + + // Get the information about the HMD + LOGGER.fine("Get HMD properties"); + hmdDesc = OVRHmdDesc.malloc(); + ovr_GetHmdDesc(session, hmdDesc); + if (hmdDesc.Type() == ovrHmd_None) { + LOGGER.warning("No HMD connected"); + return false; // TODO fix memory leak - destroy() is not called + } + + resolutionW = hmdDesc.Resolution().w(); + resolutionH = hmdDesc.Resolution().h(); + + LOGGER.config("HMD Properties: " + + "\t Manufacturer: " + hmdDesc.ManufacturerString() + + "\t Product: " + hmdDesc.ProductNameString() + + "\t Serial: " // + hmdDesc.SerialNumberString() // Hidden for privacy reasons + + "\t Type: " + hmdDesc.Type() + + "\t Resolution (total): " + resolutionW + "," + resolutionH); + + if (resolutionW == 0) { + LOGGER.severe("HMD witdth=0 : aborting"); + return false; // TODO fix memory leak - destroy() is not called + } + + // Find the FOV for each eye + for (int eye = 0; eye < 2; eye++) { + fovPorts[eye] = hmdDesc.DefaultEyeFov(eye); + } + + // Get the pose for each eye, and cache it for later. + for (int eye = 0; eye < 2; eye++) { + // Create the projection objects + projections[eye] = OVRMatrix4f.malloc(); + hmdRelativeEyePoses[eye] = new Matrix4f(); + hmdRelativeEyePositions[eye] = new Vector3f(); + + // Find the eye render information - we use this in the + // view manager for giving LibOVR its timewarp information. + eyeRenderDesc[eye] = OVREyeRenderDesc.malloc(); + ovr_GetRenderDesc(session, eye, fovPorts[eye], eyeRenderDesc[eye]); + + // Get the pose of the eye + OVRPosef pose = eyeRenderDesc[eye].HmdToEyePose(); + + // Get the position and rotation of the eye + vecO2J(pose.Position(), hmdRelativeEyePositions[eye]); + Quaternion rotation = quatO2J(pose.Orientation(), new Quaternion()); + + // Put it into a matrix for the get eye pose functions + hmdRelativeEyePoses[eye].loadIdentity(); + hmdRelativeEyePoses[eye].setTranslation(hmdRelativeEyePositions[eye]); + hmdRelativeEyePoses[eye].setRotationQuaternion(rotation); + } + + // Recenter the HMD. The game itself should do this too, but just in case / before they do. + reset(); + + // Do this so others relying on our texture size (the GUI in particular) get it correct. + findHMDTextureSize(); + + // Allocate the memory for the tracking state - we actually + // set it up later, but Input uses it so calloc it now. + trackingState = OVRTrackingState.calloc(); + + // Set up the input + input = new OculusVRInput(this, session, sessionStatus, trackingState); + + // TODO find some way to get in ovrTrackingOrigin_FloorLevel + + // throw new UnsupportedOperationException("Not yet implemented!"); + return true; + } + + @Override + public void updatePose() { + double ftiming = ovr_GetPredictedDisplayTime(session, 0); + ovr_GetTrackingState(session, ftiming, true, trackingState); + ovr_GetSessionStatus(session, sessionStatus); + + input.updateControllerStates(); + + headPose = trackingState.HeadPose().ThePose(); + } + + @Override + public boolean isInitialized() { + return initialized; + } + + @Override + public void destroy() { + // fovPorts: contents are managed by LibOVR, no need to do anything. + + // Clean up the input + input.dispose(); + + // Check if we've set up rendering - if so, clean that up. + if (chains != null) { + // Destroy our set of huge buffer images. + for (long chain : chains) { + ovr_DestroyTextureSwapChain(session, chain); + } + + // Free up the layer + layer0.free(); + + // The layers array apparently takes care of itself (and crashes if we try to free it) + } + + for (OVREyeRenderDesc eye : eyeRenderDesc) { + eye.free(); + } + for (OVRMatrix4f projection : projections) { + projection.free(); + } + + hmdDesc.free(); + trackingState.free(); + sessionStatus.free(); + + // Wrap everything up + ovr_Destroy(session); + ovr_Shutdown(); + } + + @Override + public void reset() { + // Reset the coordinate system - where the user's head is now is facing forwards from [0,0,0] + ovr_RecenterTrackingOrigin(session); + } + + @Override + public void getRenderSize(Vector2f store) { + if (!isInitialized()) { + throw new IllegalStateException("Cannot call getRenderSize() before initialized!"); + } + store.x = textureW; + store.y = textureH; + } + + @Override + public float getInterpupillaryDistance() { + return 0.065f; // TODO + } + + @Override + public Quaternion getOrientation() { + return quatO2J(headPose.Orientation(), new Quaternion()); + } + + @Override + public Vector3f getPosition() { + return vecO2J(headPose.Position(), new Vector3f()); + } + + @Override + public void getPositionAndOrientation(Vector3f storePos, Quaternion storeRot) { + storePos.set(getPosition()); + storeRot.set(getOrientation()); + } + + private Matrix4f calculateProjection(int eye, Camera cam) { + Matrix4f mat = new Matrix4f(); + + // Get LibOVR to find the correct projection + OVRUtil.ovrMatrix4f_Projection(fovPorts[eye], cam.getFrustumNear(), cam.getFrustumFar(), OVRUtil.ovrProjection_None, projections[eye]); + + matrixO2J(projections[eye], mat); + + return mat; + } + + @Override + public Matrix4f getHMDMatrixProjectionLeftEye(Camera cam) { + return calculateProjection(ovrEye_Left, cam); + } + + @Override + public Matrix4f getHMDMatrixProjectionRightEye(Camera cam) { + return calculateProjection(ovrEye_Right, cam); + } + + @Override + public Vector3f getHMDVectorPoseLeftEye() { + return hmdRelativeEyePositions[ovrEye_Left]; + } + + @Override + public Vector3f getHMDVectorPoseRightEye() { + return hmdRelativeEyePositions[ovrEye_Right]; + } + + @Override + public Vector3f getSeatedToAbsolutePosition() { + throw new UnsupportedOperationException(); + } + + @Override + public Matrix4f getHMDMatrixPoseLeftEye() { + return hmdRelativeEyePoses[ovrEye_Left]; + } + + @Override + public Matrix4f getHMDMatrixPoseRightEye() { + return hmdRelativeEyePoses[ovrEye_Left]; + } + + @Override + public HmdType getType() { + return HmdType.OCULUS_RIFT; + } + + public boolean initVRCompositor(boolean set) { + if (!set) { + throw new UnsupportedOperationException("Cannot use LibOVR without compositor!"); + } + + setupLayers(); + + framebuffers = new FrameBuffer[2][]; + for (int eye = 0; eye < 2; eye++) + setupFramebuffers(eye); + + // TODO move initialization code here from VRViewManagerOculus + return true; + } + + public void printLatencyInfoToConsole(boolean set) { + throw new UnsupportedOperationException("Not yet implemented!"); + } + + public void setFlipEyes(boolean set) { + throw new UnsupportedOperationException("Not yet implemented!"); + } + + public Void getCompositor() { + throw new UnsupportedOperationException("Not yet implemented!"); + } + + public Void getVRSystem() { + throw new UnsupportedOperationException("Not yet implemented!"); + } + + // Rendering-type stuff + + public void findHMDTextureSize() { + // Texture sizes + float pixelScaling = 1.0f; // pixelsPerDisplayPixel + + OVRSizei leftTextureSize = OVRSizei.malloc(); + ovr_GetFovTextureSize(session, ovrEye_Left, fovPorts[ovrEye_Left], pixelScaling, leftTextureSize); + + OVRSizei rightTextureSize = OVRSizei.malloc(); + ovr_GetFovTextureSize(session, ovrEye_Right, fovPorts[ovrEye_Right], pixelScaling, rightTextureSize); + + if (leftTextureSize.w() != rightTextureSize.w()) { + throw new IllegalStateException("Texture sizes do not match [horizontal]"); + } + if (leftTextureSize.h() != rightTextureSize.h()) { + throw new IllegalStateException("Texture sizes do not match [vertical]"); + } + + textureW = leftTextureSize.w(); + textureH = leftTextureSize.h(); + + leftTextureSize.free(); + rightTextureSize.free(); + } + + private long setupTextureChain() { + // Set up the information for the texture buffer chain thing + OVRTextureSwapChainDesc swapChainDesc = OVRTextureSwapChainDesc.calloc() + .Type(ovrTexture_2D) + .ArraySize(1) + .Format(OVR_FORMAT_R8G8B8A8_UNORM_SRGB) + .Width(textureW) + .Height(textureH) + .MipLevels(1) + .SampleCount(1) + .StaticImage(false); // ovrFalse + + // Create the chain + PointerBuffer textureSetPB = createPointerBuffer(1); + if (OVRGL.ovr_CreateTextureSwapChainGL(session, swapChainDesc, textureSetPB) != ovrSuccess) { + throw new RuntimeException("Failed to create Swap Texture Set"); + } + swapChainDesc.free(); + + return textureSetPB.get(); // TODO is this a memory leak? + } + + public void setupLayers() { + //Layers + layer0 = OVRLayerEyeFov.calloc(); + layer0.Header().Type(ovrLayerType_EyeFov); + layer0.Header().Flags(ovrLayerFlag_TextureOriginAtBottomLeft); + + chains = new long[2]; + for (int eye = 0; eye < 2; eye++) { + long eyeChain = setupTextureChain(); + chains[eye] = eyeChain; + + OVRRecti viewport = OVRRecti.calloc(); + viewport.Pos().x(0); + viewport.Pos().y(0); + viewport.Size().w(textureW); + viewport.Size().h(textureH); + + layer0.ColorTexture(eye, eyeChain); + layer0.Viewport(eye, viewport); + layer0.Fov(eye, fovPorts[eye]); + + viewport.free(); + // we update pose only when we have it in the render loop + } + + layers = createPointerBuffer(1); + layers.put(0, layer0); + } + + /** + * Create a framebuffer for an eye. + */ + public void setupFramebuffers(int eye) { + // Find the chain length + IntBuffer length = BufferUtils.createIntBuffer(1); + ovr_GetTextureSwapChainLength(session, chains[eye], length); + int chainLength = length.get(); + + LOGGER.fine("HMD Eye #" + eye + " texture chain length: " + chainLength); + + // Create the frame buffers + framebuffers[eye] = new FrameBuffer[chainLength]; + for (int i = 0; i < chainLength; i++) { + // find the GL texture ID for this texture + IntBuffer textureIdB = BufferUtils.createIntBuffer(1); + OVRGL.ovr_GetTextureSwapChainBufferGL(session, chains[eye], i, textureIdB); + int textureId = textureIdB.get(); + + // TODO less hacky way of getting our texture into JMonkeyEngine + Image img = new Image(); + img.setId(textureId); + img.setFormat(Image.Format.RGBA8); + img.setWidth(textureW); + img.setHeight(textureH); + + Texture2D tex = new Texture2D(img); + + FrameBuffer buffer = new FrameBuffer(textureW, textureH, 1); + buffer.setDepthBuffer(Image.Format.Depth); + buffer.setColorTexture(tex); + + framebuffers[eye][i] = buffer; + } + } + + // UTILITIES + // TODO move to helper class + + /** + * Copy the values from a LibOVR matrix into a jMonkeyEngine matrix. + * + * @param from The matrix to copy from. + * @param to The matrix to copy to. + * @return The {@code to} argument. + */ + public static Matrix4f matrixO2J(OVRMatrix4f from, Matrix4f to) { + to.loadIdentity(); // For the additional columns (unless I'm badly misunderstanding matricies) + + for (int x = 0; x < 4; x++) { + for (int y = 0; y < 4; y++) { + float val = from.M(x + y * 4); // TODO verify this + to.set(x, y, val); + } + } + + to.transposeLocal(); // jME vs LibOVR coordinate spaces - Yay! + + return to; + } + + /** + * Copy the values from a LibOVR quaternion into a jMonkeyEngine quaternion. + * + * @param from The quaternion to copy from. + * @param to The quaternion to copy to. + * @return The {@code to} argument. + */ + public static Quaternion quatO2J(OVRQuatf from, Quaternion to) { + // jME and LibOVR do their coordinate spaces differently for rotations, so flip Y and W (thanks, jMonkeyVR). + to.set( + from.x(), + -from.y(), + from.z(), + -from.w() + ); + + to.normalizeLocal(); + + return to; + } + + /** + * Copy the values from a LibOVR vector into a jMonkeyEngine vector. + * + * @param from The vector to copy from. + * @param to The vector to copy to. + * @return The {@code to} argument. + */ + public static Vector3f vecO2J(OVRVector3f from, Vector3f to) { + // jME and LibOVR disagree on which way X and Z are, too. + to.set( + -from.x(), + from.y(), + -from.z() + ); + + return to; + } + + // Getters, intended for VRViewManager. + + public long getSessionPointer() { + return session; + } + + public long getChain(int eye) { + return chains[eye]; + } + + public FrameBuffer[] getFramebuffers(int eye) { + return framebuffers[eye]; + } + + public PointerBuffer getLayers() { + return layers; + } + + public OVRLayerEyeFov getLayer0() { + return layer0; + } + + public OVRFovPort getFovPort() { + return fovPorts[ovrEye_Left]; // TODO checking the left and right eyes match + } + + public OVRPosef getHeadPose() { + return headPose; + } + + public OVRPosef getEyePose(int eye) { + return eyeRenderDesc[eye].HmdToEyePose(); + } + + public VREnvironment getEnvironment() { + return environment; + } +} + +/* vim: set ts=4 softtabstop=0 sw=4 expandtab: */ + diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVRInput.java b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVRInput.java new file mode 100644 index 000000000..e3631e72a --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusVRInput.java @@ -0,0 +1,370 @@ +package com.jme3.input.vr.oculus; + +import com.jme3.app.VREnvironment; +import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.VRInputType; +import com.jme3.input.vr.VRTrackedController; +import com.jme3.math.*; +import com.jme3.renderer.Camera; +import com.jme3.scene.Spatial; + +import org.lwjgl.ovr.*; + +import static org.lwjgl.ovr.OVR.*; + +public class OculusVRInput implements VRInputAPI { + // State control + private final OVRInputState inputState; + private final OVRSessionStatus sessionStatus; + private final OVRTrackingState trackingState; + private final OculusVR hardware; + private long session; + + // Setup values + private float axisMultiplier = 1; + + // Cached stuff + private int buttons, touch; + + // Used to calculate sinceLastCall stuff + private int lastButtons, lastTouch; + private final Vector2f[][] lastAxises; + + /** + * The state data (linear and angular velocity and acceleration) for each hand + */ + private OVRPoseStatef[] handStates; + + /** + * The position and orientation of the Touch controllers. + */ + private OVRPosef[] handPoses; + + /** + * The object forms of the tracked controllers. + */ + private final OculusController[] controllers = { + new OculusController(0), + new OculusController(1) + }; + + public OculusVRInput(OculusVR hardware, long session, + OVRSessionStatus sessionStatus, OVRTrackingState trackingState) { + this.hardware = hardware; + this.session = session; + this.sessionStatus = sessionStatus; + this.trackingState = trackingState; + + inputState = OVRInputState.calloc(); + + handStates = new OVRPoseStatef[ovrHand_Count]; + handPoses = new OVRPosef[handStates.length]; + lastAxises = new Vector2f[handStates.length][3]; // trigger+grab+thumbstick for each hand. + } + + public void dispose() { + inputState.free(); + session = 0; // Crashing > undefined behaviour if this object is incorrectly accessed again. + } + + @Override + public void updateControllerStates() { + // Handle buttons, axies + ovr_GetInputState(session, ovrControllerType_Touch, inputState); + buttons = inputState.Buttons(); + touch = inputState.Touches(); + + // Get the touch controller poses + // TODO what if no touch controllers are available? + for (int hand = 0; hand < handPoses.length; hand++) { + handStates[hand] = trackingState.HandPoses(hand); + handPoses[hand] = handStates[hand].ThePose(); + } + } + + private Vector3f cv(OVRVector3f in) { + // TODO do we want to reuse vectors rather than making new ones? + // TODO OpenVRInput does this, but it will probably cause some bugs. + return OculusVR.vecO2J(in, new Vector3f()); // This also fixes the coordinate space transform issues. + } + + private Vector2f cv(OVRVector2f in) { + // TODO do we want to reuse vectors rather than making new ones? + // TODO OpenVRInput does this, but it will probably cause some bugs. + return new Vector2f(in.x(), in.y()); + } + + private Quaternion cq(OVRQuatf in) { + // TODO do we want to reuse quaternions rather than making new ones? + // TODO OpenVRInput does this, but it will probably cause some bugs. + return OculusVR.quatO2J(in, new Quaternion()); // This also fixes the coordinate space transform issues. + } + + private Vector2f axis(float input) { + // See above comments about reusing vectors + return new Vector2f(input, input); + } + + // Tracking (position, rotation, velocity, status) + + @Override + public Vector3f getPosition(int index) { + return cv(handPoses[index].Position()); + } + + @Override + public Vector3f getVelocity(int controllerIndex) { + return cv(handStates[controllerIndex].LinearVelocity()); + } + + @Override + public Quaternion getOrientation(int index) { + return cq(handPoses[index].Orientation()); + } + + @Override + public Vector3f getAngularVelocity(int controllerIndex) { + return cv(handStates[controllerIndex].AngularVelocity()); + } + + @Override + public Quaternion getFinalObserverRotation(int index) { + // Copied from OpenVRInput + + VREnvironment env = hardware.getEnvironment(); + OculusViewManager vrvm = (OculusViewManager) hardware.getEnvironment().getVRViewManager(); + + Object obs = env.getObserver(); + Quaternion tempq = new Quaternion(); // TODO move to class scope? + if (obs instanceof Camera) { + tempq.set(((Camera) obs).getRotation()); + } else { + tempq.set(((Spatial) obs).getWorldRotation()); + } + + return tempq.multLocal(getOrientation(index)); + } + + @Override + public Vector3f getFinalObserverPosition(int index) { + // Copied from OpenVRInput + + VREnvironment env = hardware.getEnvironment(); + OculusViewManager vrvm = (OculusViewManager) hardware.getEnvironment().getVRViewManager(); + + Object obs = env.getObserver(); + Vector3f pos = getPosition(index); + if (obs instanceof Camera) { + ((Camera) obs).getRotation().mult(pos, pos); + return pos.addLocal(((Camera) obs).getLocation()); + } else { + ((Spatial) obs).getWorldRotation().mult(pos, pos); + return pos.addLocal(((Spatial) obs).getWorldTranslation()); + } + } + + @Override + public boolean isInputDeviceTracking(int index) { + int flags = trackingState.HandStatusFlags(index); + return (flags & ovrStatus_PositionTracked) != 0; // TODO do we require orientation as well? + } + + // Input Getters + + @Override + public Vector2f getAxis(int controllerIndex, VRInputType forAxis) { + Vector2f result = getAxisRaw(controllerIndex, forAxis); + return result == null ? null : result.multLocal(axisMultiplier); + } + + @Override + public Vector2f getAxisRaw(int controllerIndex, VRInputType forAxis) { + switch (forAxis) { + case OculusThumbstickAxis: + return cv(inputState.Thumbstick(controllerIndex)); + case OculusTriggerAxis: + return axis(inputState.IndexTrigger(controllerIndex)); + case OculusGripAxis: + return axis(inputState.HandTrigger(controllerIndex)); + default: + return null; + } + } + + @Override + public boolean isButtonDown(int controllerIndex, VRInputType checkButton) { + return isButtonDownForStatus(controllerIndex, checkButton, buttons, touch); + } + + public boolean isButtonDownForStatus(int controllerIndex, VRInputType checkButton, int buttons, int touch) { + int buttonMask = (controllerIndex == ovrHand_Left) ? ovrButton_LMask : ovrButton_RMask; + int touchMask = (controllerIndex == ovrHand_Left) ? + (ovrTouch_LButtonMask + ovrTouch_LPoseMask) : + (ovrTouch_RButtonMask + ovrTouch_RPoseMask); + + switch (checkButton) { + default: + return false; + + case OculusTopButton: // Physical buttons + case OculusBottomButton: + case OculusThumbstickButton: + case OculusMenuButton: + return (buttons & buttonMask & checkButton.getValue()) != 0; + + case OculusTopTouch: // Standard capacitive buttons + case OculusBottomTouch: + case OculusThumbstickTouch: + case OculusThumbrestTouch: + case OculusIndexTouch: + case OculusThumbUp: // Calculated/virtual capacitive buttons + case OculusIndexPointing: + return (touch & touchMask & checkButton.getValue()) != 0; + } + } + + // Since-last-call stuff + + @Override + public void resetInputSinceLastCall() { + lastButtons = 0; + lastTouch = 0; + } + + @Override + public boolean wasButtonPressedSinceLastCall(int controllerIndex, VRInputType checkButton) { + boolean wasPressed = isButtonDownForStatus(controllerIndex, checkButton, lastButtons, lastTouch); + lastButtons = buttons; + lastTouch = touch; + return !wasPressed && isButtonDown(controllerIndex, checkButton); + } + + @Override + public Vector2f getAxisDeltaSinceLastCall(int controllerIndex, VRInputType forAxis) { + int index; + switch (forAxis) { + case OculusTriggerAxis: + index = 0; + break; + case OculusGripAxis: + index = 1; + break; + case OculusThumbstickAxis: + index = 2; + break; + default: + return null; + } + + Vector2f last = lastAxises[controllerIndex][index]; + if (last == null) { + last = lastAxises[controllerIndex][index] = new Vector2f(); + } + + Vector2f current = getAxis(controllerIndex, forAxis); + + // TODO could this lead to accuracy problems? + current.subtractLocal(last); + last.addLocal(current); + + return current; + } + + // Misc + + @Override + public boolean init() { + throw new UnsupportedOperationException("Input initialized at creation time"); + } + + @Override + public void updateConnectedControllers() { + throw new UnsupportedOperationException("Automatically done by LibOVR (I think?)"); + } + + @Override + public float getAxisMultiplier() { + return axisMultiplier; + } + + @Override + public void setAxisMultiplier(float axisMultiplier) { + this.axisMultiplier = axisMultiplier; + } + + @Override + public void triggerHapticPulse(int controllerIndex, float seconds) { + // TODO: How do we time so we can turn the feedback off? + } + + @Override + public boolean isInputFocused() { + return sessionStatus.IsVisible(); // TODO do we need HmdMounted, or is it counted in IsVisible + } + + @Override + public Object getRawControllerState(int index) { + throw new UnsupportedOperationException("Cannot get raw controller state!"); + } + + @Override + public void swapHands() { + // Do nothing. + // TODO although OSVR and OpenVR if it has more than two controllers both do nothing, shouldn't we be + // TODO throwing an exception or something? + } + + @Override + public int getTrackedControllerCount() { + // TODO: Shouldn't we be seeing if the user has the touch controllers first? + return 2; + } + + @Override + public VRTrackedController getTrackedController(int index) { + return controllers[index]; + } + + /** + * The object form representation of a controller. + */ + public class OculusController implements VRTrackedController { + + /** + * The ID of the hand to track + */ + private int hand; + + public OculusController(int hand) { + this.hand = hand; + } + + @Override + public String getControllerName() { + return "Touch"; // TODO + } + + @Override + public String getControllerManufacturer() { + return "Oculus"; // TODO + } + + @Override + public Vector3f getPosition() { + return OculusVRInput.this.getPosition(hand); + } + + @Override + public Quaternion getOrientation() { + return OculusVRInput.this.getOrientation(hand); + } + + @Override + public Matrix4f getPose() { + Matrix4f mat = new Matrix4f(); + mat.setRotationQuaternion(getOrientation()); + mat.setTranslation(getPosition()); + return mat; + } + } +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusViewManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusViewManager.java new file mode 100644 index 000000000..517d8d265 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/oculus/OculusViewManager.java @@ -0,0 +1,342 @@ +/* + * Copyright (c) 2009-2018 jMonkeyEngine + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are + * met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * * Neither the name of 'jMonkeyEngine' nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR + * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, + * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, + * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF + * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING + * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS + * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ +package com.jme3.input.vr.oculus; + +import com.jme3.app.VREnvironment; +import com.jme3.input.vr.AbstractVRViewManager; +import com.jme3.input.vr.VRAPI; +import com.jme3.math.*; +import com.jme3.renderer.Camera; +import com.jme3.renderer.ViewPort; +import com.jme3.scene.Spatial; +import com.jme3.texture.*; +import com.jme3.util.BufferUtils; +import com.jme3.util.VRGUIPositioningMode; + +import java.nio.IntBuffer; +import java.util.Iterator; +import java.util.Objects; +import java.util.logging.Logger; + +import org.lwjgl.ovr.*; + +import static org.lwjgl.ovr.OVR.*; +import static org.lwjgl.ovr.OVRErrorCode.*; + +/** + * A rendering system for Oculus's LibOVR API. + * + * @author Campbell Suter + */ +public class OculusViewManager extends AbstractVRViewManager { + + private static final Logger LOG = Logger.getLogger(OculusViewManager.class.getName()); + + private final VREnvironment environment; + private final OculusVR hardware; + + // Copied from OSVR + //final & temp values for camera calculations + private final Vector3f finalPosition = new Vector3f(); + private final Quaternion finalRotation = new Quaternion(); + private final Vector3f hmdPos = new Vector3f(); + private final Quaternion hmdRot = new Quaternion(); + + public OculusViewManager(VREnvironment environment) { + this.environment = environment; + + VRAPI hardware = environment.getVRHardware(); + Objects.requireNonNull(hardware, "Attached VR Hardware cannot be null"); + if (!(hardware instanceof OculusVR)) { + throw new IllegalStateException("Cannot use Oculus VR view manager on non-Oculus hardware state!"); + } + + this.hardware = (OculusVR) hardware; + + if (!environment.compositorAllowed()) { + throw new UnsupportedOperationException("Cannot render without compositor on LibOVR"); + } + } + + @Override + public void initialize() { + setupCamerasAndViews(); + + if (environment.hasTraditionalGUIOverlay()) { + + environment.getVRMouseManager().initialize(); + + // update the pose to position the gui correctly on start + update(0f); + environment.getVRGUIManager().positionGui(); + } + } + + private long session() { + return hardware.getSessionPointer(); + } + + @Override + public void update(float tpf) { + // TODO + + hardware.updatePose(); + + // TODO deduplicate + if (environment == null) { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + + // grab the observer + Object obs = environment.getObserver(); + Quaternion objRot; + Vector3f objPos; + if (obs instanceof Camera) { + objRot = ((Camera) obs).getRotation(); + objPos = ((Camera) obs).getLocation(); + } else { + objRot = ((Spatial) obs).getWorldRotation(); + objPos = ((Spatial) obs).getWorldTranslation(); + } + + // update the HMD's position & orientation + hardware.getPositionAndOrientation(hmdPos, hmdRot); + if (obs != null) { + // update hmdPos based on obs rotation + finalRotation.set(objRot); + finalRotation.mult(hmdPos, hmdPos); + finalRotation.multLocal(hmdRot); + } + + // Update both eye cameras + finalizeCamera(hardware.getHMDVectorPoseLeftEye(), objPos, leftCamera); + finalizeCamera(hardware.getHMDVectorPoseRightEye(), objPos, rightCamera); + + // Update the main camera, so it shows the same basic view the HMD is getting + // TODO: Do this in VRAppState, so it works on all HMDs. + // I only have a Rift, so I can't test it on anything else. + if(!environment.isInstanceRendering()) { // We use the app camera as the left camera here + // TODO: Double up on rendering and use one eye, to reduce GPU load rendering the scene again. + // TODO: Snip at the image to remove the distorted corners from a very high FOV. + finalizeCamera(Vector3f.ZERO, objPos, environment.getApplication().getCamera()); + } + + if (environment.hasTraditionalGUIOverlay()) { + // update the mouse? + environment.getVRMouseManager().update(tpf); + + // update GUI position? + if (environment.getVRGUIManager().isWantsReposition() || environment.getVRGUIManager().getPositioningMode() != VRGUIPositioningMode.MANUAL) { + environment.getVRGUIManager().positionGuiNow(tpf); + environment.getVRGUIManager().updateGuiQuadGeometricState(); + } + } + } + + /** + * Place the camera within the scene. + * + * @param eyePos the eye position. + * @param obsPosition the observer position. + * @param cam the camera to place. + */ + private void finalizeCamera(Vector3f eyePos, Vector3f obsPosition, Camera cam) { + finalRotation.mult(eyePos, finalPosition); + finalPosition.addLocal(hmdPos); + if (obsPosition != null) { + finalPosition.addLocal(obsPosition); + } + finalPosition.y += getHeightAdjustment(); + cam.setFrame(finalPosition, finalRotation); + } + + @Override + public void render() { + + // Calculate the render pose (translation/rotation) for each eye. + // LibOVR takes the difference between this and the real position of each eye at display time + // to apply AZW (timewarp). + + OVRPosef.Buffer hmdToEyeOffsets = OVRPosef.calloc(2); + hmdToEyeOffsets.put(0, hardware.getEyePose(ovrEye_Left)); + hmdToEyeOffsets.put(1, hardware.getEyePose(ovrEye_Right)); + + //calculate eye poses + OVRUtil.ovr_CalcEyePoses(hardware.getHeadPose(), hmdToEyeOffsets, hardware.getLayer0().RenderPose()); + hmdToEyeOffsets.free(); + + for (int eye = 0; eye < 2; eye++) { + IntBuffer currentIndexB = BufferUtils.createIntBuffer(1); + ovr_GetTextureSwapChainCurrentIndex(session(), hardware.getChain(eye), currentIndexB); + int index = currentIndexB.get(); + + // Constantly (each frame) rotating through a series of + // frame buffers, so make sure we write into the correct one. + (eye == ovrEye_Left ? leftViewPort : rightViewPort).setOutputFrameBuffer(hardware.getFramebuffers(eye)[index]); + } + + // Now the game will render into the buffers given to us by LibOVR + } + + @Override + public void postRender() { + // We're done with our textures now - the game is done drawing into them. + for (int eye = 0; eye < 2; eye++) { + ovr_CommitTextureSwapChain(session(), hardware.getChain(eye)); + } + + // Send the result to the HMD + int result = ovr_SubmitFrame(session(), 0, null, hardware.getLayers()); + if (result != ovrSuccess) { + throw new IllegalStateException("Failed to submit frame!"); + } + } + + /* + ********************************************************* + * Show's over, now it's just boring camera stuff etc. * + ********************************************************* + */ + + /** + * Set up the cameras and views for each eye and the mirror display. + */ + private void setupCamerasAndViews() { + // TODO: Use LobOVR IPD etc + if (environment != null) { + // get desired frustum from original camera + Camera origCam = environment.getCamera(); + float fFar = origCam.getFrustumFar(); + float fNear = origCam.getFrustumNear(); + + // restore frustum on distortion scene cam, if needed + if (environment.isInstanceRendering()) { + leftCamera = origCam; + } else { + leftCamera = origCam.clone(); + } + + OVRFovPort fp = hardware.getFovPort(); + float hFov = fp.LeftTan() + fp.RightTan(); + float vFov = fp.UpTan() + fp.DownTan(); + getLeftCamera().setFrustumPerspective(hFov / FastMath.TWO_PI * 360, vFov / hFov, fNear, fFar); + + prepareCameraSize(getLeftCamera(), 1f); + if (environment.getVRHardware() != null) { + getLeftCamera().setProjectionMatrix(environment.getVRHardware().getHMDMatrixProjectionLeftEye(getLeftCamera())); + } + //org.lwjgl.opengl.GL11.glEnable(org.lwjgl.opengl.GL30.GL_FRAMEBUFFER_SRGB); + + if (!environment.isInstanceRendering()) { + leftViewPort = setupViewBuffers(getLeftCamera(), LEFT_VIEW_NAME); + rightCamera = getLeftCamera().clone(); + if (environment.getVRHardware() != null) { + getRightCamera().setProjectionMatrix(environment.getVRHardware().getHMDMatrixProjectionRightEye(getRightCamera())); + } + rightViewPort = setupViewBuffers(getRightCamera(), RIGHT_VIEW_NAME); + } else if (environment.getApplication() != null) { + throw new UnsupportedOperationException("Not yet implemented!"); + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + + // setup gui + environment.getVRGUIManager().setupGui(getLeftCamera(), getRightCamera(), getLeftViewPort(), getRightViewPort()); + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + private void prepareCameraSize(Camera cam, float xMult) { + // TODO this function is identical to that in VRViewManagerOpenVR; merge the two. + if (environment != null) { + if (environment.getApplication() != null) { + Vector2f size = new Vector2f(); + VRAPI vrhmd = environment.getVRHardware(); + + if (vrhmd == null) { + size.x = 1280f; + size.y = 720f; + } else { + vrhmd.getRenderSize(size); + } + + if (size.x < environment.getApplication().getContext().getSettings().getWidth()) { + size.x = environment.getApplication().getContext().getSettings().getWidth(); + } + if (size.y < environment.getApplication().getContext().getSettings().getHeight()) { + size.y = environment.getApplication().getContext().getSettings().getHeight(); + } + + if (environment.isInstanceRendering()) { + size.x *= 2f; + } + + // other adjustments + size.x *= xMult; + size.x *= getResolutionMuliplier(); + size.y *= getResolutionMuliplier(); + + if (cam.getWidth() != size.x || cam.getHeight() != size.y) { + cam.resize((int) size.x, (int) size.y, false); + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + private ViewPort setupViewBuffers(Camera cam, String viewName) { + // TODO this function is identical to that in VRViewManagerOpenVR; merge the two. + if (environment != null) { + if (environment.getApplication() != null) { + ViewPort viewPort = environment.getApplication().getRenderManager().createPreView(viewName, cam); + viewPort.setClearFlags(true, true, true); + viewPort.setBackgroundColor(ColorRGBA.Black); + + Iterator spatialIter = environment.getApplication().getViewPort().getScenes().iterator(); + while (spatialIter.hasNext()) { + viewPort.attachScene(spatialIter.next()); + } + + // The viewbuffer to render into will be set during prerender. + return viewPort; + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVR.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVR.java similarity index 90% rename from jme3-vr/src/main/java/com/jme3/input/vr/OpenVR.java rename to jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVR.java index a9f3fdcfb..8e10ecd0a 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVR.java @@ -3,9 +3,11 @@ * To change this template file, choose Tools | Templates * and open the template in the editor. */ -package com.jme3.input.vr; +package com.jme3.input.vr.openvr; import com.jme3.app.VREnvironment; +import com.jme3.input.vr.HmdType; +import com.jme3.input.vr.VRAPI; import com.jme3.math.Matrix4f; import com.jme3.math.Quaternion; import com.jme3.math.Vector2f; @@ -18,6 +20,7 @@ import com.jme3.system.jopenvr.OpenVRUtil; import com.jme3.system.jopenvr.TrackedDevicePose_t; import com.jme3.system.jopenvr.VR_IVRCompositor_FnTable; import com.jme3.system.jopenvr.VR_IVRSystem_FnTable; +import com.jme3.system.jopenvr.VR_IVRTrackedCamera_FnTable; import com.jme3.util.VRUtil; import com.sun.jna.Memory; import com.sun.jna.Pointer; @@ -34,7 +37,7 @@ import java.util.logging.Logger; /** * A class that wraps an OpenVR system. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class OpenVR implements VRAPI { @@ -42,6 +45,7 @@ public class OpenVR implements VRAPI { private static VR_IVRCompositor_FnTable compositorFunctions; private static VR_IVRSystem_FnTable vrsystemFunctions; + private static VR_IVRTrackedCamera_FnTable cameraFunctions; private static boolean initSuccess = false; private static boolean flipEyes = false; @@ -107,6 +111,10 @@ public class OpenVR implements VRAPI { return compositorFunctions; } + public VR_IVRTrackedCamera_FnTable getTrackedCamera(){ + return cameraFunctions; + } + @Override public String getName() { return "OpenVR"; @@ -139,7 +147,17 @@ public class OpenVR implements VRAPI { hmdErrorStore = new IntByReference(); vrsystemFunctions = null; + + // Init the native linking to the OpenVR library. + try{ + JOpenVRLibrary.init(); + } catch(Throwable t){ + logger.log(Level.SEVERE, "Cannot link to OpenVR system library: "+t.getMessage(), t); + return false; + } + JOpenVRLibrary.VR_InitInternal(hmdErrorStore, JOpenVRLibrary.EVRApplicationType.EVRApplicationType_VRApplication_Scene); + if( hmdErrorStore.getValue() == 0 ) { vrsystemFunctions = new VR_IVRSystem_FnTable(JOpenVRLibrary.VR_GetGenericInterface(JOpenVRLibrary.IVRSystem_Version, hmdErrorStore).getPointer()); } @@ -154,6 +172,7 @@ public class OpenVR implements VRAPI { vrsystemFunctions.setAutoSynch(false); vrsystemFunctions.read(); + tlastVsync = new FloatByReference(); _tframeCount = new LongByReference(); @@ -182,7 +201,9 @@ public class OpenVR implements VRAPI { VRinput.updateConnectedControllers(); // init bounds & chaperone info - environment.getVRBounds().init(this); + OpenVRBounds bounds = new OpenVRBounds(); + bounds.init(this); + environment.setVRBounds(bounds); logger.config("Initializing OpenVR system [SUCCESS]"); initSuccess = true; @@ -236,6 +257,26 @@ public class OpenVR implements VRAPI { return compositorFunctions != null; } + /** + * Initialize the headset camera. + * @param allowed true is the use of the headset camera is allowed and false otherwise. + */ + public void initCamera(boolean allowed) { + hmdErrorStore.setValue(0); // clear the error store + + if( allowed && vrsystemFunctions != null ) { + IntByReference intptr = JOpenVRLibrary.VR_GetGenericInterface(JOpenVRLibrary.IVRTrackedCamera_Version, hmdErrorStore); + if (intptr != null){ + cameraFunctions = new VR_IVRTrackedCamera_FnTable(intptr.getPointer()); + if(cameraFunctions != null && hmdErrorStore.getValue() == 0 ){ + cameraFunctions.setAutoSynch(false); + cameraFunctions.read(); + logger.config("OpenVR Camera initialized"); + } + } + } + } + @Override public void destroy() { JOpenVRLibrary.VR_ShutdownInternal(); diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRBounds.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRBounds.java new file mode 100644 index 000000000..b487a5f22 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRBounds.java @@ -0,0 +1,59 @@ +package com.jme3.input.vr.openvr; + +import com.jme3.input.vr.VRBounds; +import com.jme3.math.Vector2f; +import com.jme3.system.jopenvr.JOpenVRLibrary; +import com.jme3.system.jopenvr.VR_IVRChaperone_FnTable; +import com.sun.jna.ptr.FloatByReference; + +import java.util.logging.Logger; + +/** + * A class that represents VR world bounds. + * @author reden - phr00t - https://github.com/phr00t + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + */ +public class OpenVRBounds implements VRBounds { + + private static Logger logger = Logger.getLogger(OpenVRBounds.class.getName()); + + private VR_IVRChaperone_FnTable vrChaperone; + private Vector2f playSize; + + /** + * Initialize the VR bounds. + * @return true if the initialization is a success and false otherwise. + */ + public boolean init(OpenVR api) { + + logger.config("Initialize VR bounds..."); + + if( vrChaperone == null ) { + vrChaperone = new VR_IVRChaperone_FnTable(JOpenVRLibrary.VR_GetGenericInterface(JOpenVRLibrary.IVRChaperone_Version, api.hmdErrorStore).getPointer()); + if( vrChaperone != null ) { + vrChaperone.setAutoSynch(false); + vrChaperone.read(); + FloatByReference fbX = new FloatByReference(); + FloatByReference fbZ = new FloatByReference(); + vrChaperone.GetPlayAreaSize.apply(fbX, fbZ); + playSize = new Vector2f(fbX.getValue(), fbZ.getValue()); + + logger.config("Initialize VR bounds [SUCCESS]"); + return true; // init success + } + + logger.warning("Initialize VR bounds [FAILED]."); + return false; // failed to init + } + + logger.config("Initialize VR bounds already done."); + return true; // already initialized + } + + @Override + public Vector2f getPlaySize() { + return playSize; + } + +} + diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVRInput.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRInput.java similarity index 95% rename from jme3-vr/src/main/java/com/jme3/input/vr/OpenVRInput.java rename to jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRInput.java index 2f9b81e95..08c697fa2 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVRInput.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRInput.java @@ -3,7 +3,7 @@ * To change this template file, choose Tools | Templates * and open the template in the editor. */ -package com.jme3.input.vr; +package com.jme3.input.vr.openvr; import java.util.ArrayList; import java.util.List; @@ -11,6 +11,9 @@ import java.util.logging.Level; import java.util.logging.Logger; import com.jme3.app.VREnvironment; +import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.VRInputType; +import com.jme3.input.vr.VRTrackedController; import com.jme3.math.Quaternion; import com.jme3.math.Vector2f; import com.jme3.math.Vector3f; @@ -21,7 +24,6 @@ import com.jme3.system.jopenvr.OpenVRUtil; import com.jme3.system.jopenvr.VRControllerState_t; import com.jme3.system.jopenvr.VR_IVRSystem_FnTable; import com.jme3.util.VRUtil; -import com.jme3.util.VRViewManagerOpenVR; /* make helper functions to pull the following easily from raw data (DONE) @@ -65,7 +67,7 @@ Button press: 2, touch: 2 * null values will be returned if no valid pose exists, or that input device isn't available * user code should check for null values. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class OpenVRInput implements VRInputAPI { @@ -393,7 +395,7 @@ public class OpenVRInput implements VRInputAPI { public Quaternion getFinalObserverRotation(int index) { if (environment != null){ - VRViewManagerOpenVR vrvm = (VRViewManagerOpenVR)environment.getVRViewManager(); + OpenVRViewManager vrvm = (OpenVRViewManager)environment.getVRViewManager(); if (vrvm != null){ if(isInputDeviceTracking(index) == false ){ @@ -422,7 +424,7 @@ public class OpenVRInput implements VRInputAPI { public Vector3f getFinalObserverPosition(int index) { if (environment != null){ - VRViewManagerOpenVR vrvm = (VRViewManagerOpenVR)environment.getVRViewManager(); + OpenVRViewManager vrvm = (OpenVRViewManager)environment.getVRViewManager(); if (vrvm != null){ if(isInputDeviceTracking(index) == false ){ @@ -484,7 +486,7 @@ public class OpenVRInput implements VRInputAPI { } trackedControllers.add(new OpenVRTrackedController(i, this, controllerName, manufacturerName, environment)); - // Send an Haptic pulse to the controller + // Send a Haptic pulse to the controller triggerHapticPulse(controllerCount, 1.0f); controllerCount++; diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRMouseManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRMouseManager.java new file mode 100644 index 000000000..72de95cc0 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRMouseManager.java @@ -0,0 +1,114 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package com.jme3.input.vr.openvr; + +import com.jme3.app.VREnvironment; +import com.jme3.input.controls.AnalogListener; +import com.jme3.input.vr.AbstractVRMouseManager; +import com.jme3.input.vr.VRInputType; +import com.jme3.math.Vector2f; + + +/** + * A class dedicated to the handling of the mouse within VR environment. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + */ +public class OpenVRMouseManager extends AbstractVRMouseManager { + + private final int AVERAGE_AMNT = 4; + + private int avgCounter; + + private final float[] lastXmv = new float[AVERAGE_AMNT]; + + private final float[] lastYmv = new float[AVERAGE_AMNT]; + + /** + * Create a new VR mouse manager within the given {@link VREnvironment VR environment}. + * @param environment the VR environment of the mouse manager. + */ + public OpenVRMouseManager(VREnvironment environment){ + super(environment); + } + + + @Override + public void updateAnalogAsMouse(int inputIndex, AnalogListener mouseListener, String mouseXName, String mouseYName, float tpf) { + + if (getVREnvironment() != null){ + if (getVREnvironment().getApplication() != null){ + // got a tracked controller to use as the "mouse" + if( getVREnvironment().isInVR() == false || + getVREnvironment().getVRinput() == null || + getVREnvironment().getVRinput().isInputDeviceTracking(inputIndex) == false ){ + return; + } + + Vector2f tpDelta; + // TODO option to use Touch joysticks + if( isThumbstickMode() ) { + tpDelta = getVREnvironment().getVRinput().getAxis(inputIndex, VRInputType.ViveTrackpadAxis); + } else { + tpDelta = getVREnvironment().getVRinput().getAxisDeltaSinceLastCall(inputIndex, VRInputType.ViveTrackpadAxis); + } + + float Xamount = (float)Math.pow(Math.abs(tpDelta.x) * getSpeedSensitivity(), getSpeedAcceleration()); + float Yamount = (float)Math.pow(Math.abs(tpDelta.y) * getSpeedSensitivity(), getSpeedAcceleration()); + + if( tpDelta.x < 0f ){ + Xamount = -Xamount; + } + + if( tpDelta.y < 0f ){ + Yamount = -Yamount; + } + + Xamount *= getMouseMoveScale(); + Yamount *= getMouseMoveScale(); + + if( mouseListener != null ) { + if( tpDelta.x != 0f && mouseXName != null ) mouseListener.onAnalog(mouseXName, Xamount * 0.2f, tpf); + if( tpDelta.y != 0f && mouseYName != null ) mouseListener.onAnalog(mouseYName, Yamount * 0.2f, tpf); + } + + if( getVREnvironment().getApplication().getInputManager().isCursorVisible() ) { + int index = (avgCounter+1) % AVERAGE_AMNT; + lastXmv[index] = Xamount * 133f; + lastYmv[index] = Yamount * 133f; + cursorPos.x -= avg(lastXmv); + cursorPos.y -= avg(lastYmv); + Vector2f maxsize = getVREnvironment().getVRGUIManager().getCanvasSize(); + + if( cursorPos.x > maxsize.x ){ + cursorPos.x = maxsize.x; + } + + if( cursorPos.x < 0f ){ + cursorPos.x = 0f; + } + + if( cursorPos.y > maxsize.y ){ + cursorPos.y = maxsize.y; + } + + if( cursorPos.y < 0f ){ + cursorPos.y = 0f; + } + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + private float avg(float[] arr) { + float amt = 0f; + for(float f : arr) amt += f; + return amt / arr.length; + } +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVRTrackedController.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRTrackedController.java similarity index 88% rename from jme3-vr/src/main/java/com/jme3/input/vr/OpenVRTrackedController.java rename to jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRTrackedController.java index 026830604..741a518e6 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/OpenVRTrackedController.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRTrackedController.java @@ -1,10 +1,16 @@ -package com.jme3.input.vr; +package com.jme3.input.vr.openvr; import com.jme3.app.VREnvironment; +import com.jme3.input.vr.VRTrackedController; import com.jme3.math.Matrix4f; import com.jme3.math.Quaternion; import com.jme3.math.Vector3f; +/** + * + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ public class OpenVRTrackedController implements VRTrackedController{ /** diff --git a/jme3-vr/src/main/java/com/jme3/util/VRViewManagerOpenVR.java b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRViewManager.java similarity index 95% rename from jme3-vr/src/main/java/com/jme3/util/VRViewManagerOpenVR.java rename to jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRViewManager.java index 545754a59..f4bdc920b 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRViewManagerOpenVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/openvr/OpenVRViewManager.java @@ -2,12 +2,11 @@ * To change this template, choose Tools | Templates * and open the template in the editor. */ -package com.jme3.util; +package com.jme3.input.vr.openvr; import com.jme3.app.VREnvironment; -import com.jme3.input.vr.OpenVR; +import com.jme3.input.vr.AbstractVRViewManager; import com.jme3.input.vr.VRAPI; -import com.jme3.input.vr.VRTrackedController; import com.jme3.material.Material; import com.jme3.math.ColorRGBA; import com.jme3.math.Quaternion; @@ -32,6 +31,7 @@ import com.jme3.texture.Image; import com.jme3.texture.Texture; import com.jme3.texture.Texture2D; import com.jme3.ui.Picture; +import com.jme3.util.VRGUIPositioningMode; import java.util.Iterator; import java.util.logging.Logger; @@ -39,11 +39,11 @@ import java.util.logging.Logger; /** * A VR view manager based on OpenVR. This class enable to submit 3D views to the VR compositor. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ -public class VRViewManagerOpenVR extends AbstractVRViewManager { +public class OpenVRViewManager extends AbstractVRViewManager { - private static final Logger logger = Logger.getLogger(VRViewManagerOpenVR.class.getName()); + private static final Logger logger = Logger.getLogger(OpenVRViewManager.class.getName()); // OpenVR values private VRTextureBounds_t leftTextureBounds; @@ -64,7 +64,7 @@ public class VRViewManagerOpenVR extends AbstractVRViewManager { * Create a new VR view manager attached to the given {@link VREnvironment VR environment}. * @param environment the {@link VREnvironment VR environment} to which this view manager is attached. */ - public VRViewManagerOpenVR(VREnvironment environment){ + public OpenVRViewManager(VREnvironment environment){ this.environment = environment; } @@ -168,6 +168,11 @@ public class VRViewManagerOpenVR extends AbstractVRViewManager { } } + @Override + public void render() { + + } + @Override public void postRender() { @@ -464,7 +469,7 @@ public class VRViewManagerOpenVR extends AbstractVRViewManager { environment.getVRMouseManager().update(tpf); // update GUI position? - if( environment.getVRGUIManager().wantsReposition || environment.getVRGUIManager().getPositioningMode() != VRGUIPositioningMode.MANUAL ) { + if( environment.getVRGUIManager().isWantsReposition() || environment.getVRGUIManager().getPositioningMode() != VRGUIPositioningMode.MANUAL ) { environment.getVRGUIManager().positionGuiNow(tpf); environment.getVRGUIManager().updateGuiQuadGeometricState(); } @@ -492,12 +497,12 @@ public class VRViewManagerOpenVR extends AbstractVRViewManager { private void setupCamerasAndViews() { if (environment != null){ - // get desired frustrum from original camera + // get desired frustum from original camera Camera origCam = environment.getCamera(); float fFar = origCam.getFrustumFar(); float fNear = origCam.getFrustumNear(); - // restore frustrum on distortion scene cam, if needed + // restore frustum on distortion scene cam, if needed if( environment.isInstanceRendering() ) { leftCamera = origCam; } else if( environment.compositorAllowed() == false ) { diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/OSVR.java b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVR.java similarity index 96% rename from jme3-vr/src/main/java/com/jme3/input/vr/OSVR.java rename to jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVR.java index dce04e7b4..28d7aac06 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/OSVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVR.java @@ -1,461 +1,464 @@ -/* - -https://github.com/sensics/OSVR-RenderManager/blob/master/examples/RenderManagerOpenGLCAPIExample.cpp - -- JVM crashes often.. placing breakpoints during initialization clears it up most of the time (WHY!?) - - OSVR is just unstable.. any way to improve things? -- render manager looks good, but left eye seems stretched - - */ -package com.jme3.input.vr; - -import com.jme3.app.VREnvironment; -import com.jme3.math.Matrix4f; -import com.jme3.math.Quaternion; -import com.jme3.math.Vector2f; -import com.jme3.math.Vector3f; -import com.jme3.renderer.Camera; -import com.jme3.system.osvr.osvrclientkit.OsvrClientKitLibrary; -import com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary; -import com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.OSVR_DisplayConfig; -import com.jme3.system.osvr.osvrmatrixconventions.OSVR_Pose3; -import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_OpenResultsOpenGL; -import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderBufferOpenGL; -import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderInfoOpenGL; -import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderParams; -import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_ViewportDescription; -import com.jme3.system.osvr.osvrrendermanageropengl.OsvrRenderManagerOpenGLLibrary; -import com.ochafik.lang.jnaerator.runtime.NativeSize; -import com.ochafik.lang.jnaerator.runtime.NativeSizeByReference; -import com.sun.jna.Pointer; -import com.sun.jna.ptr.PointerByReference; -import java.nio.FloatBuffer; -import java.util.logging.Logger; - -/** - * A class that wraps an OSVR system. - * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org - */ -public class OSVR implements VRAPI { - - private static final Logger logger = Logger.getLogger(OSVR.class.getName()); - - /** - * The first viewer index. - */ - public static final int FIRST_VIEWER = 0; - - /** - * The left eye index. - */ - public static final int EYE_LEFT = 0; - - /** - * The right eye index. - */ - public static final int EYE_RIGHT = 1; - - /** - * The size of the left eye. - */ - public static final NativeSize EYE_LEFT_SIZE = new NativeSize(EYE_LEFT); - - /** - * The size of the right eye. - */ - public static final NativeSize EYE_RIGHT_SIZE = new NativeSize(EYE_RIGHT); - - /** - * The default J String. - */ - public static byte[] defaultJString = { 'j', (byte)0 }; - - /** - * The default OpenGL String. - */ - public static byte[] OpenGLString = { 'O', 'p', 'e', 'n', 'G', 'L', (byte)0 }; - - private final Matrix4f[] eyeMatrix = new Matrix4f[2]; - - private PointerByReference grabRM; - private PointerByReference grabRMOGL; - private PointerByReference grabRIC; - - OSVR_RenderParams.ByValue renderParams; - OsvrClientKitLibrary.OSVR_ClientContext context; - com.jme3.system.osvr.osvrrendermanageropengl.OSVR_GraphicsLibraryOpenGL.ByValue graphicsLibrary; - Pointer renderManager, renderManagerOpenGL, renderInfoCollection, registerBufferState; - OSVRInput VRinput; - NativeSize numRenderInfo; - NativeSizeByReference grabNumInfo = new NativeSizeByReference(); - OSVR_RenderInfoOpenGL.ByValue eyeLeftInfo, eyeRightInfo; - Matrix4f hmdPoseLeftEye; - Matrix4f hmdPoseRightEye; - Vector3f hmdPoseLeftEyeVec, hmdPoseRightEyeVec, hmdSeatToStand; - OSVR_DisplayConfig displayConfig; - OSVR_Pose3 hmdPose = new OSVR_Pose3(); - Vector3f storePos = new Vector3f(); - Quaternion storeRot = new Quaternion(); - PointerByReference presentState = new PointerByReference(); - OSVR_OpenResultsOpenGL openResults = new OSVR_OpenResultsOpenGL(); - - long glfwContext; - long renderManagerContext; - long wglGLFW; - long wglRM; - - boolean initSuccess = false; - boolean flipEyes = false; - - private VREnvironment environment = null; - - /** - * Create a new OSVR system attached to the given {@link VREnvironment VR environment}. - * @param environment the {@link VREnvironment VR environment} to which the input is attached. - */ - public OSVR(VREnvironment environment){ - this.environment = environment; - } - - /** - * Access to the underlying OSVR structures. - * @param leftView the left viewport. - * @param rightView the right viewport. - * @param leftBuffer the left buffer. - * @param rightBuffer the right buffer. - * @return true if the structure are accessible and false otherwise. - */ - public boolean handleRenderBufferPresent(OSVR_ViewportDescription.ByValue leftView, OSVR_ViewportDescription.ByValue rightView, - OSVR_RenderBufferOpenGL.ByValue leftBuffer, OSVR_RenderBufferOpenGL.ByValue rightBuffer) { - if( eyeLeftInfo == null || eyeRightInfo == null ) return false; - byte retval; - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerStartPresentRenderBuffers(presentState); - getEyeInfo(); - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerPresentRenderBufferOpenGL(presentState.getValue(), leftBuffer, eyeLeftInfo, leftView); - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerPresentRenderBufferOpenGL(presentState.getValue(), rightBuffer, eyeRightInfo, rightView); - retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerFinishPresentRenderBuffers(renderManager, presentState.getValue(), renderParams, (byte)0); - return retval == 0; // only check the last error, since if something errored above, the last call won't work & all calls will log to syserr - } - - - - @Override - public boolean initialize() { - - logger.config("Initialize OSVR system."); - - hmdPose.setAutoSynch(false); - context = OsvrClientKitLibrary.osvrClientInit(defaultJString, 0); - VRinput = new OSVRInput(environment); - initSuccess = context != null && VRinput.init(); - if( initSuccess ) { - PointerByReference grabDisplay = new PointerByReference(); - byte retval = OsvrDisplayLibrary.osvrClientGetDisplay(context, grabDisplay); - if( retval != 0 ) { - System.out.println("OSVR Get Display Error: " + retval); - initSuccess = false; - return false; - } - displayConfig = new OSVR_DisplayConfig(grabDisplay.getValue()); - System.out.println("Waiting for the display to fully start up, including receiving initial pose update..."); - int i = 400; - while (OsvrDisplayLibrary.osvrClientCheckDisplayStartup(displayConfig) != 0) { - if( i-- < 0 ) { - System.out.println("Couldn't get display startup update in time, continuing anyway..."); - break; - } - OsvrClientKitLibrary.osvrClientUpdate(context); - try { - Thread.sleep(5); - } catch(Exception e) { } - } - System.out.println("OK, display startup status is good!"); - } - return initSuccess; - } - - - /** - * Grab the current GLFW context. - */ - public void grabGLFWContext() { - // get current conext - wglGLFW = org.lwjgl.opengl.WGL.wglGetCurrentContext(); - glfwContext = org.lwjgl.glfw.GLFW.glfwGetCurrentContext(); - } - - /** - * Enable context sharing. - * @return true if the context is successfully shared and false otherwise. - */ - public boolean shareContext() { - if( org.lwjgl.opengl.WGL.wglShareLists(wglRM, wglGLFW)) { - System.out.println("Context sharing success!"); - return true; - } else { - System.out.println("Context sharing problem..."); - return false; - } - } - - @Override - public boolean initVRCompositor(boolean allowed) { - if( !allowed || renderManager != null ) return false; - grabGLFWContext(); - graphicsLibrary = new com.jme3.system.osvr.osvrrendermanageropengl.OSVR_GraphicsLibraryOpenGL.ByValue(); - graphicsLibrary.toolkit = null; - graphicsLibrary.setAutoSynch(false); - grabRM = new PointerByReference(); grabRMOGL = new PointerByReference(); - byte retval = OsvrRenderManagerOpenGLLibrary.osvrCreateRenderManagerOpenGL(context, OpenGLString, graphicsLibrary, grabRM, grabRMOGL); - if( retval == 0 ) { - renderManager = grabRM.getValue(); renderManagerOpenGL = grabRMOGL.getValue(); - if( renderManager == null || renderManagerOpenGL == null ) { - System.out.println("Render Manager Created NULL, error!"); - return false; - } - openResults.setAutoSynch(false); - retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerOpenDisplayOpenGL(renderManager, openResults); - if( retval == 0 ) { - wglRM = org.lwjgl.opengl.WGL.wglGetCurrentContext(); - renderManagerContext = org.lwjgl.glfw.GLFW.glfwGetCurrentContext(); - shareContext(); - OsvrClientKitLibrary.osvrClientUpdate(context); - renderParams = new OSVR_RenderParams.ByValue(); - renderParams.setAutoSynch(false); - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetDefaultRenderParams(renderParams); - grabRIC = new PointerByReference(); - retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoCollection(renderManager, renderParams, grabRIC); - if( retval == 0 ) { - renderInfoCollection = grabRIC.getValue(); - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetNumRenderInfoInCollection(renderInfoCollection, grabNumInfo); - numRenderInfo = grabNumInfo.getValue(); - eyeLeftInfo = new OSVR_RenderInfoOpenGL.ByValue(); - eyeRightInfo = new OSVR_RenderInfoOpenGL.ByValue(); - eyeLeftInfo.setAutoSynch(false); - eyeRightInfo.setAutoSynch(false); - return true; - } - OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); - System.out.println("OSVR Render Manager Info Collection Error: " + retval); - return false; - } - OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); - System.out.println("OSVR Open Render Manager Display Error: " + retval); - return false; - } - System.out.println("OSVR Create Render Manager Error: " + retval); - return false; - } - - @Override - public OsvrClientKitLibrary.OSVR_ClientContext getVRSystem() { - return context; - } - - @Override - public Pointer getCompositor() { - return renderManager; - } - - @Override - public String getName() { - return "OSVR"; - } - - @Override - public VRInputAPI getVRinput() { - return VRinput; - } - - @Override - public void setFlipEyes(boolean set) { - flipEyes = set; - } - - @Override - public void printLatencyInfoToConsole(boolean set) { - - } - - @Override - public int getDisplayFrequency() { - return 60; //debug display frequency - } - - @Override - public void destroy() { - if( renderManager != null ) OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); - if( displayConfig != null ) OsvrDisplayLibrary.osvrClientFreeDisplay(displayConfig); - } - - @Override - public boolean isInitialized() { - return initSuccess; - } - - @Override - public void reset() { - // TODO: no native OSVR reset function - // may need to take current position and negate it from future values - } - - @Override - public void getRenderSize(Vector2f store) { - if( eyeLeftInfo == null || eyeLeftInfo.viewport.width == 0.0 ) { - store.x = 1280f; store.y = 720f; - } else { - store.x = (float)eyeLeftInfo.viewport.width; - store.y = (float)eyeLeftInfo.viewport.height; - } - } - - /** - * Read and update the eye info from the underlying OSVR system. - */ - public void getEyeInfo() { - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoFromCollectionOpenGL(renderInfoCollection, EYE_LEFT_SIZE, eyeLeftInfo); - OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoFromCollectionOpenGL(renderInfoCollection, EYE_RIGHT_SIZE, eyeRightInfo); - eyeLeftInfo.read(); eyeRightInfo.read(); - } -/* - @Override - public float getFOV(int dir) { - return 105f; //default FOV - } -*/ - @Override - public float getInterpupillaryDistance() { - return 0.065f; //default IPD - } - - @Override - public Quaternion getOrientation() { - storeRot.set((float)-hmdPose.rotation.data[1], - (float)hmdPose.rotation.data[2], - (float)-hmdPose.rotation.data[3], - (float)hmdPose.rotation.data[0]); - if( storeRot.equals(Quaternion.ZERO) ) storeRot.set(Quaternion.DIRECTION_Z); - return storeRot; - } - - @Override - public Vector3f getPosition() { - storePos.x = (float)-hmdPose.translation.data[0]; - storePos.y = (float)hmdPose.translation.data[1]; - storePos.z = (float)-hmdPose.translation.data[2]; - return storePos; - } - - @Override - public void getPositionAndOrientation(Vector3f storePos, Quaternion storeRot) { - storePos.x = (float)-hmdPose.translation.data[0]; - storePos.y = (float)hmdPose.translation.data[1]; - storePos.z = (float)-hmdPose.translation.data[2]; - storeRot.set((float)-hmdPose.rotation.data[1], - (float)hmdPose.rotation.data[2], - (float)-hmdPose.rotation.data[3], - (float)hmdPose.rotation.data[0]); - if( storeRot.equals(Quaternion.ZERO) ) storeRot.set(Quaternion.DIRECTION_Z); - } - - @Override - public void updatePose() { - if( context == null || displayConfig == null ) return; - OsvrClientKitLibrary.osvrClientUpdate(context); - OsvrDisplayLibrary.osvrClientGetViewerPose(displayConfig, FIRST_VIEWER, hmdPose.getPointer()); - VRinput.updateControllerStates(); - hmdPose.read(); - } - - @Override - public Matrix4f getHMDMatrixProjectionLeftEye(Camera cam) { - if( eyeLeftInfo == null ) return cam.getProjectionMatrix(); - if( eyeMatrix[EYE_LEFT] == null ) { - FloatBuffer tfb = FloatBuffer.allocate(16); - com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.osvrClientGetViewerEyeSurfaceProjectionMatrixf(displayConfig, 0, (byte)EYE_LEFT, 0, cam.getFrustumNear(), cam.getFrustumFar(), (short)0, tfb); - eyeMatrix[EYE_LEFT] = new Matrix4f(); - eyeMatrix[EYE_LEFT].set(tfb.get(0), tfb.get(4), tfb.get(8), tfb.get(12), - tfb.get(1), tfb.get(5), tfb.get(9), tfb.get(13), - tfb.get(2), tfb.get(6), tfb.get(10), tfb.get(14), - tfb.get(3), tfb.get(7), tfb.get(11), tfb.get(15)); - } - return eyeMatrix[EYE_LEFT]; - } - - @Override - public Matrix4f getHMDMatrixProjectionRightEye(Camera cam) { - if( eyeRightInfo == null ) return cam.getProjectionMatrix(); - if( eyeMatrix[EYE_RIGHT] == null ) { - FloatBuffer tfb = FloatBuffer.allocate(16); - com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.osvrClientGetViewerEyeSurfaceProjectionMatrixf(displayConfig, 0, (byte)EYE_RIGHT, 0, cam.getFrustumNear(), cam.getFrustumFar(), (short)0, tfb); - eyeMatrix[EYE_RIGHT] = new Matrix4f(); - eyeMatrix[EYE_RIGHT].set(tfb.get(0), tfb.get(4), tfb.get(8), tfb.get(12), - tfb.get(1), tfb.get(5), tfb.get(9), tfb.get(13), - tfb.get(2), tfb.get(6), tfb.get(10), tfb.get(14), - tfb.get(3), tfb.get(7), tfb.get(11), tfb.get(15)); - } - return eyeMatrix[EYE_RIGHT]; - } - - @Override - public Vector3f getHMDVectorPoseLeftEye() { - if( hmdPoseLeftEyeVec == null ) { - hmdPoseLeftEyeVec = new Vector3f(); - hmdPoseLeftEyeVec.x = 0.065f * -0.5f; - if( flipEyes == false ) hmdPoseLeftEyeVec.x *= -1f; // it seems these need flipping - } - return hmdPoseLeftEyeVec; - } - - @Override - public Vector3f getHMDVectorPoseRightEye() { - if( hmdPoseRightEyeVec == null ) { - hmdPoseRightEyeVec = new Vector3f(); - hmdPoseRightEyeVec.x = 0.065f * 0.5f; - if( flipEyes == false ) hmdPoseRightEyeVec.x *= -1f; // it seems these need flipping - } - return hmdPoseRightEyeVec; - } - - @Override - public Vector3f getSeatedToAbsolutePosition() { - return Vector3f.ZERO; - } - - @Override - public Matrix4f getHMDMatrixPoseLeftEye() { - // not actually used internally... - /*if( hmdPoseLeftEye != null ) { - return hmdPoseLeftEye; - } else { - FloatBuffer mat = FloatBuffer.allocate(16); - OsvrDisplayLibrary.osvrClientGetViewerEyeViewMatrixf(displayConfig, FIRST_VIEWER, (byte)EYE_LEFT, - (short)(OsvrMatrixConventionsLibrary.OSVR_MatrixVectorFlags.OSVR_MATRIX_COLVECTORS | - OsvrMatrixConventionsLibrary.OSVR_MatrixOrderingFlags.OSVR_MATRIX_COLMAJOR), tempfb); - hmdPoseLeftEye = new Matrix4f(tempfb.array()); - return hmdPoseLeftEye; - }*/ - return null; - } - - @Override - public Matrix4f getHMDMatrixPoseRightEye() { - // not actually used internally... - /*if( hmdPoseRightEye != null ) { - return hmdPoseRightEye; - } else { - OsvrDisplayLibrary.osvrClientGetViewerEyeViewMatrixf(displayConfig, FIRST_VIEWER, (byte)EYE_RIGHT, - (short)(OsvrMatrixConventionsLibrary.OSVR_MatrixVectorFlags.OSVR_MATRIX_COLVECTORS | - OsvrMatrixConventionsLibrary.OSVR_MatrixOrderingFlags.OSVR_MATRIX_COLMAJOR), tempfb); - hmdPoseRightEye = new Matrix4f(tempfb.array()); - return hmdPoseRightEye; - }*/ - return null; - } - - @Override - public HmdType getType() { - return HmdType.OSVR; - } -} +/* + +https://github.com/sensics/OSVR-RenderManager/blob/master/examples/RenderManagerOpenGLCAPIExample.cpp + +- JVM crashes often.. placing breakpoints during initialization clears it up most of the time (WHY!?) + - OSVR is just unstable.. any way to improve things? +- render manager looks good, but left eye seems stretched + + */ +package com.jme3.input.vr.osvr; + +import com.jme3.app.VREnvironment; +import com.jme3.input.vr.HmdType; +import com.jme3.input.vr.VRAPI; +import com.jme3.input.vr.VRInputAPI; +import com.jme3.math.Matrix4f; +import com.jme3.math.Quaternion; +import com.jme3.math.Vector2f; +import com.jme3.math.Vector3f; +import com.jme3.renderer.Camera; +import com.jme3.system.osvr.osvrclientkit.OsvrClientKitLibrary; +import com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary; +import com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.OSVR_DisplayConfig; +import com.jme3.system.osvr.osvrmatrixconventions.OSVR_Pose3; +import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_OpenResultsOpenGL; +import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderBufferOpenGL; +import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderInfoOpenGL; +import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_RenderParams; +import com.jme3.system.osvr.osvrrendermanageropengl.OSVR_ViewportDescription; +import com.jme3.system.osvr.osvrrendermanageropengl.OsvrRenderManagerOpenGLLibrary; +import com.ochafik.lang.jnaerator.runtime.NativeSize; +import com.ochafik.lang.jnaerator.runtime.NativeSizeByReference; +import com.sun.jna.Pointer; +import com.sun.jna.ptr.PointerByReference; +import java.nio.FloatBuffer; +import java.util.logging.Logger; + +/** + * A class that wraps an OSVR system. + * @author reden - phr00t - https://github.com/phr00t + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + */ +public class OSVR implements VRAPI { + + private static final Logger logger = Logger.getLogger(OSVR.class.getName()); + + /** + * The first viewer index. + */ + public static final int FIRST_VIEWER = 0; + + /** + * The left eye index. + */ + public static final int EYE_LEFT = 0; + + /** + * The right eye index. + */ + public static final int EYE_RIGHT = 1; + + /** + * The size of the left eye. + */ + public static final NativeSize EYE_LEFT_SIZE = new NativeSize(EYE_LEFT); + + /** + * The size of the right eye. + */ + public static final NativeSize EYE_RIGHT_SIZE = new NativeSize(EYE_RIGHT); + + /** + * The default J String. + */ + public static byte[] defaultJString = { 'j', (byte)0 }; + + /** + * The default OpenGL String. + */ + public static byte[] OpenGLString = { 'O', 'p', 'e', 'n', 'G', 'L', (byte)0 }; + + private final Matrix4f[] eyeMatrix = new Matrix4f[2]; + + private PointerByReference grabRM; + private PointerByReference grabRMOGL; + private PointerByReference grabRIC; + + OSVR_RenderParams.ByValue renderParams; + OsvrClientKitLibrary.OSVR_ClientContext context; + com.jme3.system.osvr.osvrrendermanageropengl.OSVR_GraphicsLibraryOpenGL.ByValue graphicsLibrary; + Pointer renderManager, renderManagerOpenGL, renderInfoCollection, registerBufferState; + OSVRInput VRinput; + NativeSize numRenderInfo; + NativeSizeByReference grabNumInfo = new NativeSizeByReference(); + OSVR_RenderInfoOpenGL.ByValue eyeLeftInfo, eyeRightInfo; + Matrix4f hmdPoseLeftEye; + Matrix4f hmdPoseRightEye; + Vector3f hmdPoseLeftEyeVec, hmdPoseRightEyeVec, hmdSeatToStand; + OSVR_DisplayConfig displayConfig; + OSVR_Pose3 hmdPose = new OSVR_Pose3(); + Vector3f storePos = new Vector3f(); + Quaternion storeRot = new Quaternion(); + PointerByReference presentState = new PointerByReference(); + OSVR_OpenResultsOpenGL openResults = new OSVR_OpenResultsOpenGL(); + + long glfwContext; + long renderManagerContext; + long wglGLFW; + long wglRM; + + boolean initSuccess = false; + boolean flipEyes = false; + + private VREnvironment environment = null; + + /** + * Create a new OSVR system attached to the given {@link VREnvironment VR environment}. + * @param environment the {@link VREnvironment VR environment} to which the input is attached. + */ + public OSVR(VREnvironment environment){ + this.environment = environment; + } + + /** + * Access to the underlying OSVR structures. + * @param leftView the left viewport. + * @param rightView the right viewport. + * @param leftBuffer the left buffer. + * @param rightBuffer the right buffer. + * @return true if the structure are accessible and false otherwise. + */ + public boolean handleRenderBufferPresent(OSVR_ViewportDescription.ByValue leftView, OSVR_ViewportDescription.ByValue rightView, + OSVR_RenderBufferOpenGL.ByValue leftBuffer, OSVR_RenderBufferOpenGL.ByValue rightBuffer) { + if( eyeLeftInfo == null || eyeRightInfo == null ) return false; + byte retval; + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerStartPresentRenderBuffers(presentState); + getEyeInfo(); + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerPresentRenderBufferOpenGL(presentState.getValue(), leftBuffer, eyeLeftInfo, leftView); + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerPresentRenderBufferOpenGL(presentState.getValue(), rightBuffer, eyeRightInfo, rightView); + retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerFinishPresentRenderBuffers(renderManager, presentState.getValue(), renderParams, (byte)0); + return retval == 0; // only check the last error, since if something errored above, the last call won't work & all calls will log to syserr + } + + + + @Override + public boolean initialize() { + + logger.config("Initialize OSVR system."); + + hmdPose.setAutoSynch(false); + context = OsvrClientKitLibrary.osvrClientInit(defaultJString, 0); + VRinput = new OSVRInput(environment); + initSuccess = context != null && VRinput.init(); + if( initSuccess ) { + PointerByReference grabDisplay = new PointerByReference(); + byte retval = OsvrDisplayLibrary.osvrClientGetDisplay(context, grabDisplay); + if( retval != 0 ) { + System.out.println("OSVR Get Display Error: " + retval); + initSuccess = false; + return false; + } + displayConfig = new OSVR_DisplayConfig(grabDisplay.getValue()); + System.out.println("Waiting for the display to fully start up, including receiving initial pose update..."); + int i = 400; + while (OsvrDisplayLibrary.osvrClientCheckDisplayStartup(displayConfig) != 0) { + if( i-- < 0 ) { + System.out.println("Couldn't get display startup update in time, continuing anyway..."); + break; + } + OsvrClientKitLibrary.osvrClientUpdate(context); + try { + Thread.sleep(5); + } catch(Exception e) { } + } + System.out.println("OK, display startup status is good!"); + } + return initSuccess; + } + + + /** + * Grab the current GLFW context. + */ + public void grabGLFWContext() { + // get current conext + wglGLFW = org.lwjgl.opengl.WGL.wglGetCurrentContext(); + glfwContext = org.lwjgl.glfw.GLFW.glfwGetCurrentContext(); + } + + /** + * Enable context sharing. + * @return true if the context is successfully shared and false otherwise. + */ + public boolean shareContext() { + if( org.lwjgl.opengl.WGL.wglShareLists(wglRM, wglGLFW)) { + System.out.println("Context sharing success!"); + return true; + } else { + System.out.println("Context sharing problem..."); + return false; + } + } + + @Override + public boolean initVRCompositor(boolean allowed) { + if( !allowed || renderManager != null ) return false; + grabGLFWContext(); + graphicsLibrary = new com.jme3.system.osvr.osvrrendermanageropengl.OSVR_GraphicsLibraryOpenGL.ByValue(); + graphicsLibrary.toolkit = null; + graphicsLibrary.setAutoSynch(false); + grabRM = new PointerByReference(); grabRMOGL = new PointerByReference(); + byte retval = OsvrRenderManagerOpenGLLibrary.osvrCreateRenderManagerOpenGL(context, OpenGLString, graphicsLibrary, grabRM, grabRMOGL); + if( retval == 0 ) { + renderManager = grabRM.getValue(); renderManagerOpenGL = grabRMOGL.getValue(); + if( renderManager == null || renderManagerOpenGL == null ) { + System.out.println("Render Manager Created NULL, error!"); + return false; + } + openResults.setAutoSynch(false); + retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerOpenDisplayOpenGL(renderManager, openResults); + if( retval == 0 ) { + wglRM = org.lwjgl.opengl.WGL.wglGetCurrentContext(); + renderManagerContext = org.lwjgl.glfw.GLFW.glfwGetCurrentContext(); + shareContext(); + OsvrClientKitLibrary.osvrClientUpdate(context); + renderParams = new OSVR_RenderParams.ByValue(); + renderParams.setAutoSynch(false); + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetDefaultRenderParams(renderParams); + grabRIC = new PointerByReference(); + retval = OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoCollection(renderManager, renderParams, grabRIC); + if( retval == 0 ) { + renderInfoCollection = grabRIC.getValue(); + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetNumRenderInfoInCollection(renderInfoCollection, grabNumInfo); + numRenderInfo = grabNumInfo.getValue(); + eyeLeftInfo = new OSVR_RenderInfoOpenGL.ByValue(); + eyeRightInfo = new OSVR_RenderInfoOpenGL.ByValue(); + eyeLeftInfo.setAutoSynch(false); + eyeRightInfo.setAutoSynch(false); + return true; + } + OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); + System.out.println("OSVR Render Manager Info Collection Error: " + retval); + return false; + } + OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); + System.out.println("OSVR Open Render Manager Display Error: " + retval); + return false; + } + System.out.println("OSVR Create Render Manager Error: " + retval); + return false; + } + + @Override + public OsvrClientKitLibrary.OSVR_ClientContext getVRSystem() { + return context; + } + + @Override + public Pointer getCompositor() { + return renderManager; + } + + @Override + public String getName() { + return "OSVR"; + } + + @Override + public VRInputAPI getVRinput() { + return VRinput; + } + + @Override + public void setFlipEyes(boolean set) { + flipEyes = set; + } + + @Override + public void printLatencyInfoToConsole(boolean set) { + + } + + @Override + public int getDisplayFrequency() { + return 60; //debug display frequency + } + + @Override + public void destroy() { + if( renderManager != null ) OsvrRenderManagerOpenGLLibrary.osvrDestroyRenderManager(renderManager); + if( displayConfig != null ) OsvrDisplayLibrary.osvrClientFreeDisplay(displayConfig); + } + + @Override + public boolean isInitialized() { + return initSuccess; + } + + @Override + public void reset() { + // TODO: no native OSVR reset function + // may need to take current position and negate it from future values + } + + @Override + public void getRenderSize(Vector2f store) { + if( eyeLeftInfo == null || eyeLeftInfo.viewport.width == 0.0 ) { + store.x = 1280f; store.y = 720f; + } else { + store.x = (float)eyeLeftInfo.viewport.width; + store.y = (float)eyeLeftInfo.viewport.height; + } + } + + /** + * Read and update the eye info from the underlying OSVR system. + */ + public void getEyeInfo() { + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoFromCollectionOpenGL(renderInfoCollection, EYE_LEFT_SIZE, eyeLeftInfo); + OsvrRenderManagerOpenGLLibrary.osvrRenderManagerGetRenderInfoFromCollectionOpenGL(renderInfoCollection, EYE_RIGHT_SIZE, eyeRightInfo); + eyeLeftInfo.read(); eyeRightInfo.read(); + } +/* + @Override + public float getFOV(int dir) { + return 105f; //default FOV + } +*/ + @Override + public float getInterpupillaryDistance() { + return 0.065f; //default IPD + } + + @Override + public Quaternion getOrientation() { + storeRot.set((float)-hmdPose.rotation.data[1], + (float)hmdPose.rotation.data[2], + (float)-hmdPose.rotation.data[3], + (float)hmdPose.rotation.data[0]); + if( storeRot.equals(Quaternion.ZERO) ) storeRot.set(Quaternion.DIRECTION_Z); + return storeRot; + } + + @Override + public Vector3f getPosition() { + storePos.x = (float)-hmdPose.translation.data[0]; + storePos.y = (float)hmdPose.translation.data[1]; + storePos.z = (float)-hmdPose.translation.data[2]; + return storePos; + } + + @Override + public void getPositionAndOrientation(Vector3f storePos, Quaternion storeRot) { + storePos.x = (float)-hmdPose.translation.data[0]; + storePos.y = (float)hmdPose.translation.data[1]; + storePos.z = (float)-hmdPose.translation.data[2]; + storeRot.set((float)-hmdPose.rotation.data[1], + (float)hmdPose.rotation.data[2], + (float)-hmdPose.rotation.data[3], + (float)hmdPose.rotation.data[0]); + if( storeRot.equals(Quaternion.ZERO) ) storeRot.set(Quaternion.DIRECTION_Z); + } + + @Override + public void updatePose() { + if( context == null || displayConfig == null ) return; + OsvrClientKitLibrary.osvrClientUpdate(context); + OsvrDisplayLibrary.osvrClientGetViewerPose(displayConfig, FIRST_VIEWER, hmdPose.getPointer()); + VRinput.updateControllerStates(); + hmdPose.read(); + } + + @Override + public Matrix4f getHMDMatrixProjectionLeftEye(Camera cam) { + if( eyeLeftInfo == null ) return cam.getProjectionMatrix(); + if( eyeMatrix[EYE_LEFT] == null ) { + FloatBuffer tfb = FloatBuffer.allocate(16); + com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.osvrClientGetViewerEyeSurfaceProjectionMatrixf(displayConfig, 0, (byte)EYE_LEFT, 0, cam.getFrustumNear(), cam.getFrustumFar(), (short)0, tfb); + eyeMatrix[EYE_LEFT] = new Matrix4f(); + eyeMatrix[EYE_LEFT].set(tfb.get(0), tfb.get(4), tfb.get(8), tfb.get(12), + tfb.get(1), tfb.get(5), tfb.get(9), tfb.get(13), + tfb.get(2), tfb.get(6), tfb.get(10), tfb.get(14), + tfb.get(3), tfb.get(7), tfb.get(11), tfb.get(15)); + } + return eyeMatrix[EYE_LEFT]; + } + + @Override + public Matrix4f getHMDMatrixProjectionRightEye(Camera cam) { + if( eyeRightInfo == null ) return cam.getProjectionMatrix(); + if( eyeMatrix[EYE_RIGHT] == null ) { + FloatBuffer tfb = FloatBuffer.allocate(16); + com.jme3.system.osvr.osvrdisplay.OsvrDisplayLibrary.osvrClientGetViewerEyeSurfaceProjectionMatrixf(displayConfig, 0, (byte)EYE_RIGHT, 0, cam.getFrustumNear(), cam.getFrustumFar(), (short)0, tfb); + eyeMatrix[EYE_RIGHT] = new Matrix4f(); + eyeMatrix[EYE_RIGHT].set(tfb.get(0), tfb.get(4), tfb.get(8), tfb.get(12), + tfb.get(1), tfb.get(5), tfb.get(9), tfb.get(13), + tfb.get(2), tfb.get(6), tfb.get(10), tfb.get(14), + tfb.get(3), tfb.get(7), tfb.get(11), tfb.get(15)); + } + return eyeMatrix[EYE_RIGHT]; + } + + @Override + public Vector3f getHMDVectorPoseLeftEye() { + if( hmdPoseLeftEyeVec == null ) { + hmdPoseLeftEyeVec = new Vector3f(); + hmdPoseLeftEyeVec.x = 0.065f * -0.5f; + if( flipEyes == false ) hmdPoseLeftEyeVec.x *= -1f; // it seems these need flipping + } + return hmdPoseLeftEyeVec; + } + + @Override + public Vector3f getHMDVectorPoseRightEye() { + if( hmdPoseRightEyeVec == null ) { + hmdPoseRightEyeVec = new Vector3f(); + hmdPoseRightEyeVec.x = 0.065f * 0.5f; + if( flipEyes == false ) hmdPoseRightEyeVec.x *= -1f; // it seems these need flipping + } + return hmdPoseRightEyeVec; + } + + @Override + public Vector3f getSeatedToAbsolutePosition() { + return Vector3f.ZERO; + } + + @Override + public Matrix4f getHMDMatrixPoseLeftEye() { + // not actually used internally... + /*if( hmdPoseLeftEye != null ) { + return hmdPoseLeftEye; + } else { + FloatBuffer mat = FloatBuffer.allocate(16); + OsvrDisplayLibrary.osvrClientGetViewerEyeViewMatrixf(displayConfig, FIRST_VIEWER, (byte)EYE_LEFT, + (short)(OsvrMatrixConventionsLibrary.OSVR_MatrixVectorFlags.OSVR_MATRIX_COLVECTORS | + OsvrMatrixConventionsLibrary.OSVR_MatrixOrderingFlags.OSVR_MATRIX_COLMAJOR), tempfb); + hmdPoseLeftEye = new Matrix4f(tempfb.array()); + return hmdPoseLeftEye; + }*/ + return null; + } + + @Override + public Matrix4f getHMDMatrixPoseRightEye() { + // not actually used internally... + /*if( hmdPoseRightEye != null ) { + return hmdPoseRightEye; + } else { + OsvrDisplayLibrary.osvrClientGetViewerEyeViewMatrixf(displayConfig, FIRST_VIEWER, (byte)EYE_RIGHT, + (short)(OsvrMatrixConventionsLibrary.OSVR_MatrixVectorFlags.OSVR_MATRIX_COLVECTORS | + OsvrMatrixConventionsLibrary.OSVR_MatrixOrderingFlags.OSVR_MATRIX_COLMAJOR), tempfb); + hmdPoseRightEye = new Matrix4f(tempfb.array()); + return hmdPoseRightEye; + }*/ + return null; + } + + @Override + public HmdType getType() { + return HmdType.OSVR; + } +} diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/OSVRInput.java b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRInput.java similarity index 97% rename from jme3-vr/src/main/java/com/jme3/input/vr/OSVRInput.java rename to jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRInput.java index 8d11f3a2e..ab18f6288 100644 --- a/jme3-vr/src/main/java/com/jme3/input/vr/OSVRInput.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRInput.java @@ -3,11 +3,14 @@ * To change this template file, choose Tools | Templates * and open the template in the editor. */ -package com.jme3.input.vr; +package com.jme3.input.vr.osvr; import java.util.logging.Logger; import com.jme3.app.VREnvironment; +import com.jme3.input.vr.VRInputAPI; +import com.jme3.input.vr.VRInputType; +import com.jme3.input.vr.VRTrackedController; import com.jme3.math.Quaternion; import com.jme3.math.Vector2f; import com.jme3.math.Vector3f; @@ -20,7 +23,6 @@ import com.jme3.system.osvr.osvrclientreporttypes.OSVR_ButtonReport; import com.jme3.system.osvr.osvrclientreporttypes.OSVR_Pose3; import com.jme3.system.osvr.osvrinterface.OsvrInterfaceLibrary; import com.jme3.system.osvr.osvrtimevalue.OSVR_TimeValue; -import com.jme3.util.VRViewManagerOSVR; import com.sun.jna.Callback; import com.sun.jna.Pointer; import com.sun.jna.ptr.PointerByReference; @@ -29,7 +31,7 @@ import com.sun.jna.ptr.PointerByReference; /** * A class that wraps an OSVR input. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class OSVRInput implements VRInputAPI { @@ -301,7 +303,7 @@ public class OSVRInput implements VRInputAPI { @Override public Quaternion getFinalObserverRotation(int index) { - VRViewManagerOSVR vrvm = (VRViewManagerOSVR)environment.getVRViewManager(); + OSVRViewManager vrvm = (OSVRViewManager)environment.getVRViewManager(); if( vrvm == null || isInputDeviceTracking(index) == false ) return null; Object obs = environment.getObserver(); if( obs instanceof Camera ) { @@ -314,7 +316,7 @@ public class OSVRInput implements VRInputAPI { @Override public Vector3f getFinalObserverPosition(int index) { - VRViewManagerOSVR vrvm = (VRViewManagerOSVR) environment.getVRViewManager(); + OSVRViewManager vrvm = (OSVRViewManager) environment.getVRViewManager(); if( vrvm == null || isInputDeviceTracking(index) == false ) return null; Object obs = environment.getObserver(); Vector3f pos = getPosition(index); diff --git a/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRMouseManager.java b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRMouseManager.java new file mode 100644 index 000000000..5b1c8635b --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRMouseManager.java @@ -0,0 +1,108 @@ +package com.jme3.input.vr.osvr; + +import com.jme3.app.VREnvironment; +import com.jme3.input.controls.AnalogListener; +import com.jme3.input.vr.AbstractVRMouseManager; +import com.jme3.input.vr.VRInputType; +import com.jme3.math.Vector2f; + +/** + * A class dedicated to the mouse handling within OSVR based VR experience. + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + */ +public class OSVRMouseManager extends AbstractVRMouseManager { + + private final int AVERAGE_AMNT = 4; + + private int avgCounter; + + private final float[] lastXmv = new float[AVERAGE_AMNT]; + + private final float[] lastYmv = new float[AVERAGE_AMNT]; + + /** + * Create a new VR mouse manager within the given {@link VREnvironment VR environment}. + * @param environment the VR environment of the mouse manager. + */ + public OSVRMouseManager(VREnvironment environment){ + super(environment); + } + + + @Override + public void updateAnalogAsMouse(int inputIndex, AnalogListener mouseListener, String mouseXName, String mouseYName, float tpf) { + + if (getVREnvironment() != null){ + if (getVREnvironment().getApplication() != null){ + // got a tracked controller to use as the "mouse" + if( getVREnvironment().isInVR() == false || + getVREnvironment().getVRinput() == null || + getVREnvironment().getVRinput().isInputDeviceTracking(inputIndex) == false ){ + return; + } + + Vector2f tpDelta; + // TODO option to use Touch joysticks + if( isThumbstickMode() ) { + tpDelta = getVREnvironment().getVRinput().getAxis(inputIndex, VRInputType.ViveTrackpadAxis); + } else { + tpDelta = getVREnvironment().getVRinput().getAxisDeltaSinceLastCall(inputIndex, VRInputType.ViveTrackpadAxis); + } + + float Xamount = (float)Math.pow(Math.abs(tpDelta.x) * getSpeedSensitivity(), getSpeedAcceleration()); + float Yamount = (float)Math.pow(Math.abs(tpDelta.y) * getSpeedSensitivity(), getSpeedAcceleration()); + + if( tpDelta.x < 0f ){ + Xamount = -Xamount; + } + + if( tpDelta.y < 0f ){ + Yamount = -Yamount; + } + + Xamount *= getMouseMoveScale(); + Yamount *= getMouseMoveScale(); + + if( mouseListener != null ) { + if( tpDelta.x != 0f && mouseXName != null ) mouseListener.onAnalog(mouseXName, Xamount * 0.2f, tpf); + if( tpDelta.y != 0f && mouseYName != null ) mouseListener.onAnalog(mouseYName, Yamount * 0.2f, tpf); + } + + if( getVREnvironment().getApplication().getInputManager().isCursorVisible() ) { + int index = (avgCounter+1) % AVERAGE_AMNT; + lastXmv[index] = Xamount * 133f; + lastYmv[index] = Yamount * 133f; + cursorPos.x -= avg(lastXmv); + cursorPos.y -= avg(lastYmv); + Vector2f maxsize = getVREnvironment().getVRGUIManager().getCanvasSize(); + + if( cursorPos.x > maxsize.x ){ + cursorPos.x = maxsize.x; + } + + if( cursorPos.x < 0f ){ + cursorPos.x = 0f; + } + + if( cursorPos.y > maxsize.y ){ + cursorPos.y = maxsize.y; + } + + if( cursorPos.y < 0f ){ + cursorPos.y = 0f; + } + } + } else { + throw new IllegalStateException("This VR environment is not attached to any application."); + } + } else { + throw new IllegalStateException("This VR view manager is not attached to any VR environment."); + } + } + + private float avg(float[] arr) { + float amt = 0f; + for(float f : arr) amt += f; + return amt / arr.length; + } +} diff --git a/jme3-vr/src/main/java/com/jme3/util/VRViewManagerOSVR.java b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRViewManager.java similarity index 88% rename from jme3-vr/src/main/java/com/jme3/util/VRViewManagerOSVR.java rename to jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRViewManager.java index e3d85406e..e3f1df53a 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRViewManagerOSVR.java +++ b/jme3-vr/src/main/java/com/jme3/input/vr/osvr/OSVRViewManager.java @@ -1,12 +1,13 @@ -package com.jme3.util; +package com.jme3.input.vr.osvr; import java.awt.GraphicsEnvironment; import java.util.Iterator; import java.util.logging.Logger; import com.jme3.app.VREnvironment; -import com.jme3.input.vr.OSVR; +import com.jme3.input.vr.AbstractVRViewManager; import com.jme3.input.vr.VRAPI; +import com.jme3.input.vr.openvr.OpenVRViewManager; import com.jme3.material.Material; import com.jme3.math.ColorRGBA; import com.jme3.math.Quaternion; @@ -44,23 +45,17 @@ import com.jme3.texture.Image; import com.jme3.texture.Texture; import com.jme3.texture.Texture2D; import com.jme3.ui.Picture; +import com.jme3.util.VRGUIPositioningMode; import com.sun.jna.Pointer; import com.sun.jna.ptr.PointerByReference; -public class VRViewManagerOSVR extends AbstractVRViewManager{ - private static final Logger logger = Logger.getLogger(VRViewManagerOpenVR.class.getName()); - - private Camera leftCamera; - private ViewPort leftViewport; - private FilterPostProcessor leftPostProcessor; - private Texture2D leftEyeTexture; - private Texture2D leftEyeDepth; - - private Camera rightCamera; - private ViewPort rightViewport; - private FilterPostProcessor rightPostProcessor; - private Texture2D rightEyeTexture; - private Texture2D rightEyeDepth; +/** + * + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ +public class OSVRViewManager extends AbstractVRViewManager{ + private static final Logger logger = Logger.getLogger(OpenVRViewManager.class.getName()); // OpenVR values private Texture_t leftTextureType; @@ -73,15 +68,10 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ OSVR_ViewportDescription.ByValue osvr_viewDescRight; Pointer osvr_rmBufferState; - //private static boolean useCustomDistortion; - private float heightAdjustment; - private Texture2D dualEyeTex; private final PointerByReference grabRBS = new PointerByReference(); - private float resMult = 1f; - //final & temp values for camera calculations private final Vector3f finalPosition = new Vector3f(); private final Quaternion finalRotation = new Quaternion(); @@ -92,46 +82,10 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ * Create a new VR view manager attached to the given {@link VREnvironment VR environment}. * @param environment the {@link VREnvironment VR environment} to which this view manager is attached. */ - public VRViewManagerOSVR(VREnvironment environment){ + public OSVRViewManager(VREnvironment environment){ this.environment = environment; } - /** - * Get the {@link Camera camera} attached to the left eye. - * @return the {@link Camera camera} attached to the left eye. - * @see #getRightCamera() - */ - public Camera getLeftCamera() { - return leftCamera; - } - - /** - * Get the {@link Camera camera} attached to the right eye. - * @return the {@link Camera camera} attached to the right eye. - * @see #getLeftCamera() - */ - public Camera getRightCamera() { - return rightCamera; - } - - /** - * Get the {@link ViewPort viewport} attached to the left eye. - * @return the {@link ViewPort viewport} attached to the left eye. - * @see #getRightViewPort() - */ - public ViewPort getLeftViewPort() { - return leftViewport; - } - - /** - * Get the {@link ViewPort viewport} attached to the right eye. - * @return the {@link ViewPort viewport} attached to the right eye. - * @see #getLeftViewPort() - */ - public ViewPort getRightViewPort() { - return rightViewport; - } - /** * Get the identifier of the left eye texture. * @return the identifier of the left eye texture. @@ -162,42 +116,6 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ return (int)dualEyeTex.getImage().getId(); } - /** - * Get the height adjustment to apply to the cameras before rendering. - * @return the height adjustment to apply to the cameras before rendering. - * @see #setHeightAdjustment(float) - */ - public float getHeightAdjustment() { - return heightAdjustment; - } - - /** - * Set the height adjustment to apply to the cameras before rendering. - * @param amount the height adjustment to apply to the cameras before rendering. - * @see #getHeightAdjustment() - */ - public void setHeightAdjustment(float amount) { - heightAdjustment = amount; - } - - /** - * Get the resolution multiplier. - * @return the resolution multiplier. - * @see #setResolutionMultiplier(float) - */ - public float getResolutionMuliplier() { - return resMult; - } - - /** - * Set the resolution multiplier. - * @param resMult the resolution multiplier. - * @see #getResolutionMuliplier() - */ - public void setResolutionMultiplier(float resMult) { - this.resMult = resMult; - } - /** * Initialize the system binds of the textures. */ @@ -442,8 +360,8 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ // other adjustments size.x *= xMult; - size.x *= resMult; - size.y *= resMult; + size.x *= getResolutionMuliplier(); + size.y *= getResolutionMuliplier(); if( cam.getWidth() != size.x || cam.getHeight() != size.y ){ cam.resize((int)size.x, (int)size.y, false); @@ -469,10 +387,10 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ return; } - leftEyeTexture = (Texture2D) leftViewport.getOutputFrameBuffer().getColorBuffer().getTexture(); - rightEyeTexture = (Texture2D)rightViewport.getOutputFrameBuffer().getColorBuffer().getTexture(); - leftEyeDepth = (Texture2D) leftViewport.getOutputFrameBuffer().getDepthBuffer().getTexture(); - rightEyeDepth = (Texture2D)rightViewport.getOutputFrameBuffer().getDepthBuffer().getTexture(); + leftEyeTexture = (Texture2D) getLeftViewPort().getOutputFrameBuffer().getColorBuffer().getTexture(); + rightEyeTexture = (Texture2D)getRightViewPort().getOutputFrameBuffer().getColorBuffer().getTexture(); + leftEyeDepth = (Texture2D) getLeftViewPort().getOutputFrameBuffer().getDepthBuffer().getTexture(); + rightEyeDepth = (Texture2D)getRightViewPort().getOutputFrameBuffer().getDepthBuffer().getTexture(); // main viewport is either going to be a distortion scene or nothing // mirroring is handled by copying framebuffers @@ -565,7 +483,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ environment.getVRMouseManager().update(tpf); // update GUI position? - if( environment.getVRGUIManager().wantsReposition || environment.getVRGUIManager().getPositioningMode() != VRGUIPositioningMode.MANUAL ) { + if( environment.getVRGUIManager().isWantsReposition() || environment.getVRGUIManager().getPositioningMode() != VRGUIPositioningMode.MANUAL ) { environment.getVRGUIManager().positionGuiNow(tpf); environment.getVRGUIManager().updateGuiQuadGeometricState(); } @@ -587,7 +505,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ if( obsPosition != null ){ finalPosition.addLocal(obsPosition); } - finalPosition.y += heightAdjustment; + finalPosition.y += getHeightAdjustment(); cam.setFrame(finalPosition, finalRotation); } @@ -595,7 +513,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ * Handles moving filters from the main view to each eye */ public void moveScreenProcessingToEyes() { - if( rightViewport == null ){ + if( getRightViewPort() == null ){ return; } @@ -617,7 +535,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ * @param sourceViewport the {@link ViewPort viewport} that contains the processors to use. */ public void syncScreenProcessing(ViewPort sourceViewport) { - if( rightViewport == null ){ + if( getRightViewPort() == null ){ return; } @@ -631,13 +549,13 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ // clear out all filters & processors, to start from scratch rightPostProcessor.removeAllFilters(); leftPostProcessor.removeAllFilters(); - leftViewport.clearProcessors(); - rightViewport.clearProcessors(); + getLeftViewPort().clearProcessors(); + getRightViewPort().clearProcessors(); // if we have no processors to sync, don't add the FilterPostProcessor if( sourceViewport.getProcessors().isEmpty() ) return; // add post processors we just made, which are empty - leftViewport.addProcessor(leftPostProcessor); - rightViewport.addProcessor(rightPostProcessor); + getLeftViewPort().addProcessor(leftPostProcessor); + getRightViewPort().addProcessor(rightPostProcessor); // go through all of the filters in the processors list // add them to the left viewport processor & clone them to the right for(SceneProcessor sceneProcessor : sourceViewport.getProcessors()) { @@ -670,8 +588,8 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ VRDirectionalLightShadowRenderer dlsr = (VRDirectionalLightShadowRenderer) sceneProcessor; VRDirectionalLightShadowRenderer dlsrRight = dlsr.clone(); dlsrRight.setLight(dlsr.getLight()); - rightViewport.getProcessors().add(0, dlsrRight); - leftViewport.getProcessors().add(0, sceneProcessor); + getRightViewPort().getProcessors().add(0, dlsrRight); + getLeftViewPort().getProcessors().add(0, sceneProcessor); } } // make sure each has a translucent filter renderer @@ -689,7 +607,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ if (environment != null){ if (environment.getApplication() != null){ - // get desired frustrum from original camera + // get desired frustum from original camera Camera origCam = environment.getCamera(); float fFar = origCam.getFrustumFar(); float fNear = origCam.getFrustumNear(); @@ -699,7 +617,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ ((OSVR)environment.getVRHardware()).getEyeInfo(); } - // restore frustrum on distortion scene cam, if needed + // restore frustum on distortion scene cam, if needed if( environment.isInstanceRendering() ) { leftCamera = origCam; } else if( environment.compositorAllowed() == false ) { @@ -718,16 +636,16 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ //org.lwjgl.opengl.GL11.glEnable(org.lwjgl.opengl.GL30.GL_FRAMEBUFFER_SRGB); if( !environment.isInstanceRendering()) { - leftViewport = setupViewBuffers(leftCamera, LEFT_VIEW_NAME); + leftViewPort = setupViewBuffers(leftCamera, LEFT_VIEW_NAME); rightCamera = leftCamera.clone(); if( environment.getVRHardware() != null ){ rightCamera.setProjectionMatrix(environment.getVRHardware().getHMDMatrixProjectionRightEye(rightCamera)); } - rightViewport = setupViewBuffers(rightCamera, RIGHT_VIEW_NAME); + rightViewPort = setupViewBuffers(rightCamera, RIGHT_VIEW_NAME); } else { System.err.println("[VRViewManager] THIS CODE NEED CHANGES !!!"); - leftViewport = environment.getApplication().getViewPort(); + leftViewPort = environment.getApplication().getViewPort(); //leftViewport.attachScene(app.getRootNode()); rightCamera = leftCamera.clone(); if( environment.getVRHardware() != null ){ @@ -742,7 +660,7 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ } // setup gui - environment.getVRGUIManager().setupGui(leftCamera, rightCamera, leftViewport, rightViewport); + environment.getVRGUIManager().setupGui(leftCamera, rightCamera, getLeftViewPort(), getRightViewPort()); if( environment.getVRHardware() != null ) { // call these to cache the results internally @@ -953,5 +871,11 @@ public class VRViewManagerOSVR extends AbstractVRViewManager{ distortionMesh.setBuffer(VertexBuffer.Type.TexCoord3, 2, texcoordB); distortionMesh.setStatic(); return distortionMesh; - } + } + + @Override + public void render() { + // TODO Auto-generated method stub + + } } diff --git a/jme3-vr/src/main/java/com/jme3/post/CartoonSSAO.java b/jme3-vr/src/main/java/com/jme3/post/CartoonSSAO.java index cc3c36b09..e578e6e76 100644 --- a/jme3-vr/src/main/java/com/jme3/post/CartoonSSAO.java +++ b/jme3-vr/src/main/java/com/jme3/post/CartoonSSAO.java @@ -17,7 +17,7 @@ import com.jme3.texture.Image.Format; /** * A Cartoon Screen Space Ambient Occlusion filter with instance rendering capabilities. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * */ public class CartoonSSAO extends Filter{ diff --git a/jme3-vr/src/main/java/com/jme3/post/PreNormalCaching.java b/jme3-vr/src/main/java/com/jme3/post/PreNormalCaching.java index 94a0009ab..83159f134 100644 --- a/jme3-vr/src/main/java/com/jme3/post/PreNormalCaching.java +++ b/jme3-vr/src/main/java/com/jme3/post/PreNormalCaching.java @@ -15,7 +15,7 @@ import com.jme3.texture.FrameBuffer; /** * Pre normal caching class. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class PreNormalCaching { diff --git a/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowFilterVR.java b/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowFilterVR.java index 00ab55319..9c6d355c9 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowFilterVR.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowFilterVR.java @@ -1,7 +1,7 @@ package com.jme3.shadow; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -55,7 +55,7 @@ import java.io.IOException; * * @author Rémy Bouquet aka Nehon * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * @param the type of the underlying renderer (subclass of {@link AbstractShadowRendererVR}). */ public abstract class AbstractShadowFilterVR extends Filter { @@ -186,7 +186,7 @@ public abstract class AbstractShadowFilterVR } /** - * returns the shdaow intensity + * returns the shadow intensity * * @see #setShadowIntensity(float shadowIntensity) * @return shadowIntensity @@ -309,7 +309,7 @@ public abstract class AbstractShadowFilterVR /** - * Get the the edge filtering mode. + * Get the edge filtering mode. * @return the edge filtering mode. */ public EdgeFilteringMode getEdgeFilteringMode() { diff --git a/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowRendererVR.java b/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowRendererVR.java index 8c9fae742..296855e5a 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowRendererVR.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/AbstractShadowRendererVR.java @@ -1,7 +1,7 @@ package com.jme3.shadow; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -71,7 +71,7 @@ import java.util.List; * * @author Rémy Bouquet aka Nehon * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public abstract class AbstractShadowRendererVR implements SceneProcessor, Savable { @@ -487,7 +487,7 @@ public abstract class AbstractShadowRendererVR implements SceneProcessor, Savabl getReceivers(lightReceivers); if (lightReceivers.size() != 0) { - //setting params to recieving geometry list + //setting params to receiving geometry list setMatParams(lightReceivers); Camera cam = viewPort.getCamera(); diff --git a/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowFilterVR.java b/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowFilterVR.java index 30399999f..5cc149ea3 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowFilterVR.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowFilterVR.java @@ -1,7 +1,7 @@ package com.jme3.shadow; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -43,10 +43,10 @@ import java.io.IOException; /** * * This Filter does basically the same as a DirectionalLightShadowRenderer - * except it renders the post shadow pass as a fulscreen quad pass instead of a + * except it renders the post shadow pass as a fullscreen quad pass instead of a * geometry pass. It's mostly faster than PssmShadowRenderer as long as you have - * more than a about ten shadow recieving objects. The expense is the draw back - * that the shadow Recieve mode set on spatial is ignored. So basically all and + * more than a about ten shadow receiving objects. The expense is the draw back + * that the shadow Receive mode set on spatial is ignored. So basically all and * only objects that render depth in the scene receive shadows. See this post * for more details * http://jmonkeyengine.org/groups/general-2/forum/topic/silly-question-about-shadow-rendering/#post-191599 @@ -55,7 +55,7 @@ import java.io.IOException; * * @author Rémy Bouquet aka Nehon * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class DirectionalLightShadowFilterVR extends AbstractShadowFilterVR { @@ -106,7 +106,7 @@ public class DirectionalLightShadowFilterVR extends AbstractShadowFilterVRtrue
    ) - * This prevents shadows' edges to flicker when the camera moves + * Enables the stabilization of the shadow's edges. (default is true) + * This prevents shadow edges from flickering when the camera moves. * However it can lead to some shadow quality loss in some particular scenes. * @param stabilize true if the stabilization has to be enabled and false otherwise. * @see #isEnabledStabilization() diff --git a/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowRendererVR.java b/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowRendererVR.java index e82fcc8be..318407a82 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowRendererVR.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/DirectionalLightShadowRendererVR.java @@ -1,7 +1,7 @@ package com.jme3.shadow; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -53,17 +53,17 @@ import com.jme3.shadow.ShadowUtil; import java.io.IOException; /** - * DirectionalLightShadowRenderer renderer use Parrallel Split Shadow Mapping + * DirectionalLightShadowRenderer renderer use Parallel Split Shadow Mapping * technique (pssm)
    It splits the view frustum in several parts and compute * a shadow map for each one.
    splits are distributed so that the closer they * are from the camera, the smaller they are to maximize the resolution used of - * the shadow map.
    This result in a better quality shadow than standard + * the shadow map.
    This results in a better quality shadow than standard * shadow mapping.
    for more informations on this read this http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html
    *

    * @author Rémy Bouquet aka Nehon * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { @@ -77,7 +77,7 @@ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { private boolean stabilize = true; /** - * Used for serialzation use + * Used for serialization use * DirectionalLightShadowRenderer#DirectionalLightShadowRenderer(AssetManager * assetManager, int shadowMapSize, int nbSplits) */ @@ -182,7 +182,7 @@ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { // update frustum points based on current camera and split ShadowUtil.updateFrustumPoints(viewPort.getCamera(), splitsArray[shadowMapIndex], splitsArray[shadowMapIndex + 1], points); - //Updating shadow cam with curent split frustra + //Updating shadow cam with current split frusta if (lightReceivers.size()==0) { for (Spatial scene : viewPort.getScenes()) { ShadowUtil.getGeometriesInCamFrustum(scene, viewPort.getCamera(), RenderQueue.ShadowMode.Receive, lightReceivers); @@ -231,7 +231,7 @@ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { } /** - * returns the labda parameter see #setLambda(float lambda) + * returns the lambda parameter see #setLambda(float lambda) * * @return lambda */ @@ -241,10 +241,10 @@ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { /** * Adjust the repartition of the different shadow maps in the shadow extend - * usualy goes from 0.0 to 1.0 + * usually goes from 0.0 to 1.0 * a low value give a more linear repartition resulting in a constant quality in the shadow over the extends, but near shadows could look very jagged * a high value give a more logarithmic repartition resulting in a high quality for near shadows, but the quality quickly decrease over the extend. - * the default value is set to 0.65f (theoric optimal value). + * the default value is set to 0.65f (theoretic optimal value). * @param lambda the lambda value. */ public void setLambda(float lambda) { @@ -260,8 +260,8 @@ public class DirectionalLightShadowRendererVR extends AbstractShadowRendererVR { } /** - * Enables the stabilization of the shadows's edges. (default is true) - * This prevents shadows' edges to flicker when the camera moves + * Enables the stabilization of the shadow's edges. (default is true) + * This prevents shadow edges from flickering when the camera moves. * However it can lead to some shadow quality loss in some particular scenes. * @param stabilize true if stabilization has to be enabled and false otherwise. */ diff --git a/jme3-vr/src/main/java/com/jme3/shadow/InstancedDirectionalShadowFilter.java b/jme3-vr/src/main/java/com/jme3/shadow/InstancedDirectionalShadowFilter.java index 1ad3cf85d..d3f079812 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/InstancedDirectionalShadowFilter.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/InstancedDirectionalShadowFilter.java @@ -13,7 +13,7 @@ import com.jme3.renderer.Camera; /** * An instanced version of the {@link DirectionalLightShadowFilterVR directional light shadow filter} dedi. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr */ public class InstancedDirectionalShadowFilter extends DirectionalLightShadowFilterVR { diff --git a/jme3-vr/src/main/java/com/jme3/shadow/VRDirectionalLightShadowRenderer.java b/jme3-vr/src/main/java/com/jme3/shadow/VRDirectionalLightShadowRenderer.java index d73d6d08a..759fdc42b 100644 --- a/jme3-vr/src/main/java/com/jme3/shadow/VRDirectionalLightShadowRenderer.java +++ b/jme3-vr/src/main/java/com/jme3/shadow/VRDirectionalLightShadowRenderer.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -35,11 +35,11 @@ import com.jme3.asset.AssetManager; import com.jme3.shadow.DirectionalLightShadowRenderer; /** - * DirectionalLightShadowRenderer renderer use Parrallel Split Shadow Mapping + * DirectionalLightShadowRenderer renderer use Parallel Split Shadow Mapping * technique (pssm)
    It splits the view frustum in several parts and compute * a shadow map for each one.
    splits are distributed so that the closer they * are from the camera, the smaller they are to maximize the resolution used of - * the shadow map.
    This result in a better quality shadow than standard + * the shadow map.
    This results in a better quality shadow than standard * shadow mapping.
    for more informations on this read this http://http.developer.nvidia.com/GPUGems3/gpugems3_ch10.html
    *

    diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/AppOverrideKeys_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/AppOverrideKeys_t.java index 0c085466d..588a73e0e 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/AppOverrideKeys_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/AppOverrideKeys_t.java @@ -4,46 +4,46 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1133
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class AppOverrideKeys_t extends Structure { + * native declaration : headers\openvr_capi.h:1160
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class AppOverrideKeys_t extends Structure { /** - * const char *
    - * C type : char* - */ - public Pointer pchKey; + * const char *
    + * C type : char* + */ + public Pointer pchKey; /** - * const char *
    - * C type : char* - */ - public Pointer pchValue; - public AppOverrideKeys_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("pchKey", "pchValue"); - } + * const char *
    + * C type : char* + */ + public Pointer pchValue; + public AppOverrideKeys_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("pchKey", "pchValue"); + } /** - * @param pchKey const char *
    - * C type : char*
    - * @param pchValue const char *
    - * C type : char* - */ - public AppOverrideKeys_t(Pointer pchKey, Pointer pchValue) { - super(); - this.pchKey = pchKey; - this.pchValue = pchValue; - } - public AppOverrideKeys_t(Pointer peer) { - super(peer); - } - public static class ByReference extends AppOverrideKeys_t implements Structure.ByReference { - - }; - public static class ByValue extends AppOverrideKeys_t implements Structure.ByValue { - - }; + * @param pchKey const char *
    + * C type : char*
    + * @param pchValue const char *
    + * C type : char* + */ + public AppOverrideKeys_t(Pointer pchKey, Pointer pchValue) { + super(); + this.pchKey = pchKey; + this.pchValue = pchValue; + } + public AppOverrideKeys_t(Pointer peer) { + super(peer); + } + public static class ByReference extends AppOverrideKeys_t implements Structure.ByReference { + + }; + public static class ByValue extends AppOverrideKeys_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/COpenVRContext.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/COpenVRContext.java index 0fd88b1ab..8f85d1e5c 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/COpenVRContext.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/COpenVRContext.java @@ -5,85 +5,90 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1262
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class COpenVRContext extends Structure { + * native declaration : headers\openvr_capi.h:1291
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class COpenVRContext extends Structure { /** - * class vr::IVRSystem *
    - * C type : intptr_t - */ - public IntByReference m_pVRSystem; + * class vr::IVRSystem *
    + * C type : intptr_t + */ + public IntByReference m_pVRSystem; /** - * class vr::IVRChaperone *
    - * C type : intptr_t - */ - public IntByReference m_pVRChaperone; + * class vr::IVRChaperone *
    + * C type : intptr_t + */ + public IntByReference m_pVRChaperone; /** - * class vr::IVRChaperoneSetup *
    - * C type : intptr_t - */ - public IntByReference m_pVRChaperoneSetup; + * class vr::IVRChaperoneSetup *
    + * C type : intptr_t + */ + public IntByReference m_pVRChaperoneSetup; /** - * class vr::IVRCompositor *
    - * C type : intptr_t - */ - public IntByReference m_pVRCompositor; + * class vr::IVRCompositor *
    + * C type : intptr_t + */ + public IntByReference m_pVRCompositor; /** - * class vr::IVROverlay *
    - * C type : intptr_t - */ - public IntByReference m_pVROverlay; + * class vr::IVROverlay *
    + * C type : intptr_t + */ + public IntByReference m_pVROverlay; /** - * class vr::IVRResources *
    - * C type : intptr_t - */ - public IntByReference m_pVRResources; + * class vr::IVRResources *
    + * C type : intptr_t + */ + public IntByReference m_pVRResources; /** - * class vr::IVRRenderModels *
    - * C type : intptr_t - */ - public IntByReference m_pVRRenderModels; + * class vr::IVRRenderModels *
    + * C type : intptr_t + */ + public IntByReference m_pVRRenderModels; /** - * class vr::IVRExtendedDisplay *
    - * C type : intptr_t - */ - public IntByReference m_pVRExtendedDisplay; + * class vr::IVRExtendedDisplay *
    + * C type : intptr_t + */ + public IntByReference m_pVRExtendedDisplay; /** - * class vr::IVRSettings *
    - * C type : intptr_t - */ - public IntByReference m_pVRSettings; + * class vr::IVRSettings *
    + * C type : intptr_t + */ + public IntByReference m_pVRSettings; /** - * class vr::IVRApplications *
    - * C type : intptr_t - */ - public IntByReference m_pVRApplications; + * class vr::IVRApplications *
    + * C type : intptr_t + */ + public IntByReference m_pVRApplications; /** - * class vr::IVRTrackedCamera *
    - * C type : intptr_t - */ - public IntByReference m_pVRTrackedCamera; + * class vr::IVRTrackedCamera *
    + * C type : intptr_t + */ + public IntByReference m_pVRTrackedCamera; /** - * class vr::IVRScreenshots *
    - * C type : intptr_t - */ - public IntByReference m_pVRScreenshots; - public COpenVRContext() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_pVRSystem", "m_pVRChaperone", "m_pVRChaperoneSetup", "m_pVRCompositor", "m_pVROverlay", "m_pVRResources", "m_pVRRenderModels", "m_pVRExtendedDisplay", "m_pVRSettings", "m_pVRApplications", "m_pVRTrackedCamera", "m_pVRScreenshots"); - } - public COpenVRContext(Pointer peer) { - super(peer); - } - public static class ByReference extends COpenVRContext implements Structure.ByReference { - - }; - public static class ByValue extends COpenVRContext implements Structure.ByValue { - - }; + * class vr::IVRScreenshots *
    + * C type : intptr_t + */ + public IntByReference m_pVRScreenshots; + /** + * class vr::IVRDriverManager *
    + * C type : intptr_t + */ + public IntByReference m_pVRDriverManager; + public COpenVRContext() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_pVRSystem", "m_pVRChaperone", "m_pVRChaperoneSetup", "m_pVRCompositor", "m_pVROverlay", "m_pVRResources", "m_pVRRenderModels", "m_pVRExtendedDisplay", "m_pVRSettings", "m_pVRApplications", "m_pVRTrackedCamera", "m_pVRScreenshots", "m_pVRDriverManager"); + } + public COpenVRContext(Pointer peer) { + super(peer); + } + public static class ByReference extends COpenVRContext implements Structure.ByReference { + + }; + public static class ByValue extends COpenVRContext implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/CameraVideoStreamFrameHeader_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/CameraVideoStreamFrameHeader_t.java index d519ad028..d7f7f690b 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/CameraVideoStreamFrameHeader_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/CameraVideoStreamFrameHeader_t.java @@ -4,50 +4,50 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1127
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class CameraVideoStreamFrameHeader_t extends Structure { + * native declaration : headers\openvr_capi.h:1154
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class CameraVideoStreamFrameHeader_t extends Structure { /** - * @see EVRTrackedCameraFrameType
    - * C type : EVRTrackedCameraFrameType - */ - public int eFrameType; - public int nWidth; - public int nHeight; - public int nBytesPerPixel; - public int nFrameSequence; - /** C type : TrackedDevicePose_t */ - public TrackedDevicePose_t standingTrackedDevicePose; - public CameraVideoStreamFrameHeader_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("eFrameType", "nWidth", "nHeight", "nBytesPerPixel", "nFrameSequence", "standingTrackedDevicePose"); - } + * @see EVRTrackedCameraFrameType
    + * C type : EVRTrackedCameraFrameType + */ + public int eFrameType; + public int nWidth; + public int nHeight; + public int nBytesPerPixel; + public int nFrameSequence; + /** C type : TrackedDevicePose_t */ + public TrackedDevicePose_t standingTrackedDevicePose; + public CameraVideoStreamFrameHeader_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("eFrameType", "nWidth", "nHeight", "nBytesPerPixel", "nFrameSequence", "standingTrackedDevicePose"); + } /** - * @param eFrameType @see EVRTrackedCameraFrameType
    - * C type : EVRTrackedCameraFrameType
    - * @param standingTrackedDevicePose C type : TrackedDevicePose_t - */ - public CameraVideoStreamFrameHeader_t(int eFrameType, int nWidth, int nHeight, int nBytesPerPixel, int nFrameSequence, TrackedDevicePose_t standingTrackedDevicePose) { - super(); - this.eFrameType = eFrameType; - this.nWidth = nWidth; - this.nHeight = nHeight; - this.nBytesPerPixel = nBytesPerPixel; - this.nFrameSequence = nFrameSequence; - this.standingTrackedDevicePose = standingTrackedDevicePose; - } - public CameraVideoStreamFrameHeader_t(Pointer peer) { - super(peer); - } - public static class ByReference extends CameraVideoStreamFrameHeader_t implements Structure.ByReference { - - }; - public static class ByValue extends CameraVideoStreamFrameHeader_t implements Structure.ByValue { - - }; + * @param eFrameType @see EVRTrackedCameraFrameType
    + * C type : EVRTrackedCameraFrameType
    + * @param standingTrackedDevicePose C type : TrackedDevicePose_t + */ + public CameraVideoStreamFrameHeader_t(int eFrameType, int nWidth, int nHeight, int nBytesPerPixel, int nFrameSequence, TrackedDevicePose_t standingTrackedDevicePose) { + super(); + this.eFrameType = eFrameType; + this.nWidth = nWidth; + this.nHeight = nHeight; + this.nBytesPerPixel = nBytesPerPixel; + this.nFrameSequence = nFrameSequence; + this.standingTrackedDevicePose = standingTrackedDevicePose; + } + public CameraVideoStreamFrameHeader_t(Pointer peer) { + super(peer); + } + public static class ByReference extends CameraVideoStreamFrameHeader_t implements Structure.ByReference { + + }; + public static class ByValue extends CameraVideoStreamFrameHeader_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_CumulativeStats.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_CumulativeStats.java index 285ac08e7..23f44fb91 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_CumulativeStats.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_CumulativeStats.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1176
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class Compositor_CumulativeStats extends Structure { - public int m_nPid; - public int m_nNumFramePresents; - public int m_nNumDroppedFrames; - public int m_nNumReprojectedFrames; - public int m_nNumFramePresentsOnStartup; - public int m_nNumDroppedFramesOnStartup; - public int m_nNumReprojectedFramesOnStartup; - public int m_nNumLoading; - public int m_nNumFramePresentsLoading; - public int m_nNumDroppedFramesLoading; - public int m_nNumReprojectedFramesLoading; - public int m_nNumTimedOut; - public int m_nNumFramePresentsTimedOut; - public int m_nNumDroppedFramesTimedOut; - public int m_nNumReprojectedFramesTimedOut; - public Compositor_CumulativeStats() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nPid", "m_nNumFramePresents", "m_nNumDroppedFrames", "m_nNumReprojectedFrames", "m_nNumFramePresentsOnStartup", "m_nNumDroppedFramesOnStartup", "m_nNumReprojectedFramesOnStartup", "m_nNumLoading", "m_nNumFramePresentsLoading", "m_nNumDroppedFramesLoading", "m_nNumReprojectedFramesLoading", "m_nNumTimedOut", "m_nNumFramePresentsTimedOut", "m_nNumDroppedFramesTimedOut", "m_nNumReprojectedFramesTimedOut"); - } - public Compositor_CumulativeStats(Pointer peer) { - super(peer); - } - public static class ByReference extends Compositor_CumulativeStats implements Structure.ByReference { - - }; - public static class ByValue extends Compositor_CumulativeStats implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1203
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class Compositor_CumulativeStats extends Structure { + public int m_nPid; + public int m_nNumFramePresents; + public int m_nNumDroppedFrames; + public int m_nNumReprojectedFrames; + public int m_nNumFramePresentsOnStartup; + public int m_nNumDroppedFramesOnStartup; + public int m_nNumReprojectedFramesOnStartup; + public int m_nNumLoading; + public int m_nNumFramePresentsLoading; + public int m_nNumDroppedFramesLoading; + public int m_nNumReprojectedFramesLoading; + public int m_nNumTimedOut; + public int m_nNumFramePresentsTimedOut; + public int m_nNumDroppedFramesTimedOut; + public int m_nNumReprojectedFramesTimedOut; + public Compositor_CumulativeStats() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nPid", "m_nNumFramePresents", "m_nNumDroppedFrames", "m_nNumReprojectedFrames", "m_nNumFramePresentsOnStartup", "m_nNumDroppedFramesOnStartup", "m_nNumReprojectedFramesOnStartup", "m_nNumLoading", "m_nNumFramePresentsLoading", "m_nNumDroppedFramesLoading", "m_nNumReprojectedFramesLoading", "m_nNumTimedOut", "m_nNumFramePresentsTimedOut", "m_nNumDroppedFramesTimedOut", "m_nNumReprojectedFramesTimedOut"); + } + public Compositor_CumulativeStats(Pointer peer) { + super(peer); + } + public static class ByReference extends Compositor_CumulativeStats implements Structure.ByReference { + + }; + public static class ByValue extends Compositor_CumulativeStats implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_FrameTiming.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_FrameTiming.java index 3e4598d21..680c463fd 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_FrameTiming.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_FrameTiming.java @@ -4,50 +4,50 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1159
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class Compositor_FrameTiming extends Structure { - public int m_nSize; - public int m_nFrameIndex; - public int m_nNumFramePresents; - public int m_nNumMisPresented; - public int m_nNumDroppedFrames; - public int m_nReprojectionFlags; - public double m_flSystemTimeInSeconds; - public float m_flPreSubmitGpuMs; - public float m_flPostSubmitGpuMs; - public float m_flTotalRenderGpuMs; - public float m_flCompositorRenderGpuMs; - public float m_flCompositorRenderCpuMs; - public float m_flCompositorIdleCpuMs; - public float m_flClientFrameIntervalMs; - public float m_flPresentCallCpuMs; - public float m_flWaitForPresentCpuMs; - public float m_flSubmitFrameMs; - public float m_flWaitGetPosesCalledMs; - public float m_flNewPosesReadyMs; - public float m_flNewFrameReadyMs; - public float m_flCompositorUpdateStartMs; - public float m_flCompositorUpdateEndMs; - public float m_flCompositorRenderStartMs; - /** C type : TrackedDevicePose_t */ - public TrackedDevicePose_t m_HmdPose; - public Compositor_FrameTiming() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nSize", "m_nFrameIndex", "m_nNumFramePresents", "m_nNumMisPresented", "m_nNumDroppedFrames", "m_nReprojectionFlags", "m_flSystemTimeInSeconds", "m_flPreSubmitGpuMs", "m_flPostSubmitGpuMs", "m_flTotalRenderGpuMs", "m_flCompositorRenderGpuMs", "m_flCompositorRenderCpuMs", "m_flCompositorIdleCpuMs", "m_flClientFrameIntervalMs", "m_flPresentCallCpuMs", "m_flWaitForPresentCpuMs", "m_flSubmitFrameMs", "m_flWaitGetPosesCalledMs", "m_flNewPosesReadyMs", "m_flNewFrameReadyMs", "m_flCompositorUpdateStartMs", "m_flCompositorUpdateEndMs", "m_flCompositorRenderStartMs", "m_HmdPose"); - } - public Compositor_FrameTiming(Pointer peer) { - super(peer); - } - public static class ByReference extends Compositor_FrameTiming implements Structure.ByReference { - - }; - public static class ByValue extends Compositor_FrameTiming implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1186
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class Compositor_FrameTiming extends Structure { + public int m_nSize; + public int m_nFrameIndex; + public int m_nNumFramePresents; + public int m_nNumMisPresented; + public int m_nNumDroppedFrames; + public int m_nReprojectionFlags; + public double m_flSystemTimeInSeconds; + public float m_flPreSubmitGpuMs; + public float m_flPostSubmitGpuMs; + public float m_flTotalRenderGpuMs; + public float m_flCompositorRenderGpuMs; + public float m_flCompositorRenderCpuMs; + public float m_flCompositorIdleCpuMs; + public float m_flClientFrameIntervalMs; + public float m_flPresentCallCpuMs; + public float m_flWaitForPresentCpuMs; + public float m_flSubmitFrameMs; + public float m_flWaitGetPosesCalledMs; + public float m_flNewPosesReadyMs; + public float m_flNewFrameReadyMs; + public float m_flCompositorUpdateStartMs; + public float m_flCompositorUpdateEndMs; + public float m_flCompositorRenderStartMs; + /** C type : TrackedDevicePose_t */ + public TrackedDevicePose_t m_HmdPose; + public Compositor_FrameTiming() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nSize", "m_nFrameIndex", "m_nNumFramePresents", "m_nNumMisPresented", "m_nNumDroppedFrames", "m_nReprojectionFlags", "m_flSystemTimeInSeconds", "m_flPreSubmitGpuMs", "m_flPostSubmitGpuMs", "m_flTotalRenderGpuMs", "m_flCompositorRenderGpuMs", "m_flCompositorRenderCpuMs", "m_flCompositorIdleCpuMs", "m_flClientFrameIntervalMs", "m_flPresentCallCpuMs", "m_flWaitForPresentCpuMs", "m_flSubmitFrameMs", "m_flWaitGetPosesCalledMs", "m_flNewPosesReadyMs", "m_flNewFrameReadyMs", "m_flCompositorUpdateStartMs", "m_flCompositorUpdateEndMs", "m_flCompositorRenderStartMs", "m_HmdPose"); + } + public Compositor_FrameTiming(Pointer peer) { + super(peer); + } + public static class ByReference extends Compositor_FrameTiming implements Structure.ByReference { + + }; + public static class ByValue extends Compositor_FrameTiming implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_OverlaySettings.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_OverlaySettings.java index d9f72ea4b..9875cc952 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_OverlaySettings.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Compositor_OverlaySettings.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1117
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class Compositor_OverlaySettings extends Structure { - public int size; - public byte curved; - public byte antialias; - public float scale; - public float distance; - public float alpha; - public float uOffset; - public float vOffset; - public float uScale; - public float vScale; - public float gridDivs; - public float gridWidth; - public float gridScale; - /** C type : HmdMatrix44_t */ - public HmdMatrix44_t transform; - public Compositor_OverlaySettings() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("size", "curved", "antialias", "scale", "distance", "alpha", "uOffset", "vOffset", "uScale", "vScale", "gridDivs", "gridWidth", "gridScale", "transform"); - } - public Compositor_OverlaySettings(Pointer peer) { - super(peer); - } - public static class ByReference extends Compositor_OverlaySettings implements Structure.ByReference { - - }; - public static class ByValue extends Compositor_OverlaySettings implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1144
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class Compositor_OverlaySettings extends Structure { + public int size; + public byte curved; + public byte antialias; + public float scale; + public float distance; + public float alpha; + public float uOffset; + public float vOffset; + public float uScale; + public float vScale; + public float gridDivs; + public float gridWidth; + public float gridScale; + /** C type : HmdMatrix44_t */ + public HmdMatrix44_t transform; + public Compositor_OverlaySettings() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("size", "curved", "antialias", "scale", "distance", "alpha", "uOffset", "vOffset", "uScale", "vScale", "gridDivs", "gridWidth", "gridScale", "transform"); + } + public Compositor_OverlaySettings(Pointer peer) { + super(peer); + } + public static class ByReference extends Compositor_OverlaySettings implements Structure.ByReference { + + }; + public static class ByValue extends Compositor_OverlaySettings implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/D3D12TextureData_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/D3D12TextureData_t.java index 60d2437e5..5639198ca 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/D3D12TextureData_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/D3D12TextureData_t.java @@ -6,48 +6,48 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1003
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class D3D12TextureData_t extends Structure { + * native declaration : headers\openvr_capi.h:1030
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class D3D12TextureData_t extends Structure { /** - * struct ID3D12Resource *
    - * C type : ID3D12Resource* - */ - public ID3D12Resource m_pResource; + * struct ID3D12Resource *
    + * C type : ID3D12Resource* + */ + public ID3D12Resource m_pResource; /** - * struct ID3D12CommandQueue *
    - * C type : ID3D12CommandQueue* - */ - public ID3D12CommandQueue m_pCommandQueue; - public int m_nNodeMask; - public D3D12TextureData_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_pResource", "m_pCommandQueue", "m_nNodeMask"); - } + * struct ID3D12CommandQueue *
    + * C type : ID3D12CommandQueue* + */ + public ID3D12CommandQueue m_pCommandQueue; + public int m_nNodeMask; + public D3D12TextureData_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_pResource", "m_pCommandQueue", "m_nNodeMask"); + } /** - * @param m_pResource struct ID3D12Resource *
    - * C type : ID3D12Resource*
    - * @param m_pCommandQueue struct ID3D12CommandQueue *
    - * C type : ID3D12CommandQueue* - */ - public D3D12TextureData_t(ID3D12Resource m_pResource, ID3D12CommandQueue m_pCommandQueue, int m_nNodeMask) { - super(); - this.m_pResource = m_pResource; - this.m_pCommandQueue = m_pCommandQueue; - this.m_nNodeMask = m_nNodeMask; - } - public D3D12TextureData_t(Pointer peer) { - super(peer); - } - public static class ByReference extends D3D12TextureData_t implements Structure.ByReference { - - }; - public static class ByValue extends D3D12TextureData_t implements Structure.ByValue { - - }; + * @param m_pResource struct ID3D12Resource *
    + * C type : ID3D12Resource*
    + * @param m_pCommandQueue struct ID3D12CommandQueue *
    + * C type : ID3D12CommandQueue* + */ + public D3D12TextureData_t(ID3D12Resource m_pResource, ID3D12CommandQueue m_pCommandQueue, int m_nNodeMask) { + super(); + this.m_pResource = m_pResource; + this.m_pCommandQueue = m_pCommandQueue; + this.m_nNodeMask = m_nNodeMask; + } + public D3D12TextureData_t(Pointer peer) { + super(peer); + } + public static class ByReference extends D3D12TextureData_t implements Structure.ByReference { + + }; + public static class ByValue extends D3D12TextureData_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/DistortionCoordinates_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/DistortionCoordinates_t.java index d57170895..780da5845 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/DistortionCoordinates_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/DistortionCoordinates_t.java @@ -4,60 +4,60 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:954
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class DistortionCoordinates_t extends Structure { + * native declaration : headers\openvr_capi.h:981
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class DistortionCoordinates_t extends Structure { /** - * float[2]
    - * C type : float[2] - */ - public float[] rfRed = new float[2]; + * float[2]
    + * C type : float[2] + */ + public float[] rfRed = new float[2]; /** - * float[2]
    - * C type : float[2] - */ - public float[] rfGreen = new float[2]; + * float[2]
    + * C type : float[2] + */ + public float[] rfGreen = new float[2]; /** - * float[2]
    - * C type : float[2] - */ - public float[] rfBlue = new float[2]; - public DistortionCoordinates_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("rfRed", "rfGreen", "rfBlue"); - } + * float[2]
    + * C type : float[2] + */ + public float[] rfBlue = new float[2]; + public DistortionCoordinates_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("rfRed", "rfGreen", "rfBlue"); + } /** - * @param rfRed float[2]
    - * C type : float[2]
    - * @param rfGreen float[2]
    - * C type : float[2]
    - * @param rfBlue float[2]
    - * C type : float[2] - */ - public DistortionCoordinates_t(float rfRed[], float rfGreen[], float rfBlue[]) { - super(); - if ((rfRed.length != this.rfRed.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.rfRed = rfRed; - if ((rfGreen.length != this.rfGreen.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.rfGreen = rfGreen; - if ((rfBlue.length != this.rfBlue.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.rfBlue = rfBlue; - } - public DistortionCoordinates_t(Pointer peer) { - super(peer); - } - public static class ByReference extends DistortionCoordinates_t implements Structure.ByReference { - - }; - public static class ByValue extends DistortionCoordinates_t implements Structure.ByValue { - - }; + * @param rfRed float[2]
    + * C type : float[2]
    + * @param rfGreen float[2]
    + * C type : float[2]
    + * @param rfBlue float[2]
    + * C type : float[2] + */ + public DistortionCoordinates_t(float rfRed[], float rfGreen[], float rfBlue[]) { + super(); + if ((rfRed.length != this.rfRed.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.rfRed = rfRed; + if ((rfGreen.length != this.rfGreen.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.rfGreen = rfGreen; + if ((rfBlue.length != this.rfBlue.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.rfBlue = rfBlue; + } + public DistortionCoordinates_t(Pointer peer) { + super(peer); + } + public static class ByReference extends DistortionCoordinates_t implements Structure.ByReference { + + }; + public static class ByValue extends DistortionCoordinates_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HiddenAreaMesh_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HiddenAreaMesh_t.java index d8beaeb74..582f296c2 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HiddenAreaMesh_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HiddenAreaMesh_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1090
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HiddenAreaMesh_t extends Structure { + * native declaration : headers\openvr_capi.h:1117
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HiddenAreaMesh_t extends Structure { /** - * const struct vr::HmdVector2_t *
    - * C type : HmdVector2_t* - */ - public com.jme3.system.jopenvr.HmdVector2_t.ByReference pVertexData; - public int unTriangleCount; - public HiddenAreaMesh_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("pVertexData", "unTriangleCount"); - } + * const struct vr::HmdVector2_t *
    + * C type : HmdVector2_t* + */ + public com.jme3.system.jopenvr.HmdVector2_t.ByReference pVertexData; + public int unTriangleCount; + public HiddenAreaMesh_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("pVertexData", "unTriangleCount"); + } /** - * @param pVertexData const struct vr::HmdVector2_t *
    - * C type : HmdVector2_t* - */ - public HiddenAreaMesh_t(com.jme3.system.jopenvr.HmdVector2_t.ByReference pVertexData, int unTriangleCount) { - super(); - this.pVertexData = pVertexData; - this.unTriangleCount = unTriangleCount; - } - public HiddenAreaMesh_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HiddenAreaMesh_t implements Structure.ByReference { - - }; - public static class ByValue extends HiddenAreaMesh_t implements Structure.ByValue { - - }; + * @param pVertexData const struct vr::HmdVector2_t *
    + * C type : HmdVector2_t* + */ + public HiddenAreaMesh_t(com.jme3.system.jopenvr.HmdVector2_t.ByReference pVertexData, int unTriangleCount) { + super(); + this.pVertexData = pVertexData; + this.unTriangleCount = unTriangleCount; + } + public HiddenAreaMesh_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HiddenAreaMesh_t implements Structure.ByReference { + + }; + public static class ByValue extends HiddenAreaMesh_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdColor_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdColor_t.java index c0771cfce..32e3ef1fb 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdColor_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdColor_t.java @@ -4,36 +4,36 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:938
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdColor_t extends Structure { - public float r; - public float g; - public float b; - public float a; - public HmdColor_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("r", "g", "b", "a"); - } - public HmdColor_t(float r, float g, float b, float a) { - super(); - this.r = r; - this.g = g; - this.b = b; - this.a = a; - } - public HmdColor_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdColor_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdColor_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:965
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdColor_t extends Structure { + public float r; + public float g; + public float b; + public float a; + public HmdColor_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("r", "g", "b", "a"); + } + public HmdColor_t(float r, float g, float b, float a) { + super(); + this.r = r; + this.g = g; + this.b = b; + this.a = a; + } + public HmdColor_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdColor_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdColor_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix34_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix34_t.java index f649a5f13..e28e27c1d 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix34_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix34_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:906
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdMatrix34_t extends Structure { + * native declaration : headers\openvr_capi.h:933
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdMatrix34_t extends Structure { /** - * float[3][4]
    - * C type : float[3][4] - */ - public float[] m = new float[((3) * (4))]; - public HmdMatrix34_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m"); - } + * float[3][4]
    + * C type : float[3][4] + */ + public float[] m = new float[((3) * (4))]; + public HmdMatrix34_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m"); + } /** - * @param m float[3][4]
    - * C type : float[3][4] - */ - public HmdMatrix34_t(float m[]) { - super(); - if ((m.length != this.m.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.m = m; - } - public HmdMatrix34_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdMatrix34_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdMatrix34_t implements Structure.ByValue { - - }; + * @param m float[3][4]
    + * C type : float[3][4] + */ + public HmdMatrix34_t(float m[]) { + super(); + if ((m.length != this.m.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.m = m; + } + public HmdMatrix34_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdMatrix34_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdMatrix34_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix44_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix44_t.java index 3422b1bf7..83a093abd 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix44_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdMatrix44_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:910
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdMatrix44_t extends Structure { + * native declaration : headers\openvr_capi.h:937
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdMatrix44_t extends Structure { /** - * float[4][4]
    - * C type : float[4][4] - */ - public float[] m = new float[((4) * (4))]; - public HmdMatrix44_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m"); - } + * float[4][4]
    + * C type : float[4][4] + */ + public float[] m = new float[((4) * (4))]; + public HmdMatrix44_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m"); + } /** - * @param m float[4][4]
    - * C type : float[4][4] - */ - public HmdMatrix44_t(float m[]) { - super(); - if ((m.length != this.m.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.m = m; - } - public HmdMatrix44_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdMatrix44_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdMatrix44_t implements Structure.ByValue { - - }; + * @param m float[4][4]
    + * C type : float[4][4] + */ + public HmdMatrix44_t(float m[]) { + super(); + if ((m.length != this.m.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.m = m; + } + public HmdMatrix44_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdMatrix44_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdMatrix44_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuad_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuad_t.java index 51565b92c..f0ddccb70 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuad_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuad_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:942
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdQuad_t extends Structure { + * native declaration : headers\openvr_capi.h:969
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdQuad_t extends Structure { /** - * struct vr::HmdVector3_t[4]
    - * C type : HmdVector3_t[4] - */ - public HmdVector3_t[] vCorners = new HmdVector3_t[4]; - public HmdQuad_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("vCorners"); - } + * struct vr::HmdVector3_t[4]
    + * C type : HmdVector3_t[4] + */ + public HmdVector3_t[] vCorners = new HmdVector3_t[4]; + public HmdQuad_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("vCorners"); + } /** - * @param vCorners struct vr::HmdVector3_t[4]
    - * C type : HmdVector3_t[4] - */ - public HmdQuad_t(HmdVector3_t vCorners[]) { - super(); - if ((vCorners.length != this.vCorners.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.vCorners = vCorners; - } - public HmdQuad_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdQuad_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdQuad_t implements Structure.ByValue { - - }; + * @param vCorners struct vr::HmdVector3_t[4]
    + * C type : HmdVector3_t[4] + */ + public HmdQuad_t(HmdVector3_t vCorners[]) { + super(); + if ((vCorners.length != this.vCorners.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.vCorners = vCorners; + } + public HmdQuad_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdQuad_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdQuad_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuaternion_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuaternion_t.java index f96ea2d8a..a02389493 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuaternion_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdQuaternion_t.java @@ -4,36 +4,36 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:932
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdQuaternion_t extends Structure { - public double w; - public double x; - public double y; - public double z; - public HmdQuaternion_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("w", "x", "y", "z"); - } - public HmdQuaternion_t(double w, double x, double y, double z) { - super(); - this.w = w; - this.x = x; - this.y = y; - this.z = z; - } - public HmdQuaternion_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdQuaternion_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdQuaternion_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:959
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdQuaternion_t extends Structure { + public double w; + public double x; + public double y; + public double z; + public HmdQuaternion_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("w", "x", "y", "z"); + } + public HmdQuaternion_t(double w, double x, double y, double z) { + super(); + this.w = w; + this.x = x; + this.y = y; + this.z = z; + } + public HmdQuaternion_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdQuaternion_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdQuaternion_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdRect2_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdRect2_t.java index 24d144c10..39fce7ebb 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdRect2_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdRect2_t.java @@ -4,38 +4,38 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:946
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdRect2_t extends Structure { - /** C type : HmdVector2_t */ - public HmdVector2_t vTopLeft; - /** C type : HmdVector2_t */ - public HmdVector2_t vBottomRight; - public HmdRect2_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("vTopLeft", "vBottomRight"); - } + * native declaration : headers\openvr_capi.h:973
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdRect2_t extends Structure { + /** C type : HmdVector2_t */ + public HmdVector2_t vTopLeft; + /** C type : HmdVector2_t */ + public HmdVector2_t vBottomRight; + public HmdRect2_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("vTopLeft", "vBottomRight"); + } /** - * @param vTopLeft C type : HmdVector2_t
    - * @param vBottomRight C type : HmdVector2_t - */ - public HmdRect2_t(HmdVector2_t vTopLeft, HmdVector2_t vBottomRight) { - super(); - this.vTopLeft = vTopLeft; - this.vBottomRight = vBottomRight; - } - public HmdRect2_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdRect2_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdRect2_t implements Structure.ByValue { - - }; + * @param vTopLeft C type : HmdVector2_t
    + * @param vBottomRight C type : HmdVector2_t + */ + public HmdRect2_t(HmdVector2_t vTopLeft, HmdVector2_t vBottomRight) { + super(); + this.vTopLeft = vTopLeft; + this.vBottomRight = vBottomRight; + } + public HmdRect2_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdRect2_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdRect2_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector2_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector2_t.java index 07980d03e..700bf9a5e 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector2_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector2_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:926
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdVector2_t extends Structure { + * native declaration : headers\openvr_capi.h:953
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdVector2_t extends Structure { /** - * float[2]
    - * C type : float[2] - */ - public float[] v = new float[2]; - public HmdVector2_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("v"); - } + * float[2]
    + * C type : float[2] + */ + public float[] v = new float[2]; + public HmdVector2_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("v"); + } /** - * @param v float[2]
    - * C type : float[2] - */ - public HmdVector2_t(float v[]) { - super(); - if ((v.length != this.v.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.v = v; - } - public HmdVector2_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdVector2_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdVector2_t implements Structure.ByValue { - - }; + * @param v float[2]
    + * C type : float[2] + */ + public HmdVector2_t(float v[]) { + super(); + if ((v.length != this.v.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.v = v; + } + public HmdVector2_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdVector2_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdVector2_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3_t.java index 79b1aa023..b136791e1 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:914
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdVector3_t extends Structure { + * native declaration : headers\openvr_capi.h:941
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdVector3_t extends Structure { /** - * float[3]
    - * C type : float[3] - */ - public float[] v = new float[3]; - public HmdVector3_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("v"); - } + * float[3]
    + * C type : float[3] + */ + public float[] v = new float[3]; + public HmdVector3_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("v"); + } /** - * @param v float[3]
    - * C type : float[3] - */ - public HmdVector3_t(float v[]) { - super(); - if ((v.length != this.v.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.v = v; - } - public HmdVector3_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdVector3_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdVector3_t implements Structure.ByValue { - - }; + * @param v float[3]
    + * C type : float[3] + */ + public HmdVector3_t(float v[]) { + super(); + if ((v.length != this.v.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.v = v; + } + public HmdVector3_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdVector3_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdVector3_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3d_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3d_t.java index 83f7cca24..8a4f0b499 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3d_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector3d_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:922
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdVector3d_t extends Structure { + * native declaration : headers\openvr_capi.h:949
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdVector3d_t extends Structure { /** - * double[3]
    - * C type : double[3] - */ - public double[] v = new double[3]; - public HmdVector3d_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("v"); - } + * double[3]
    + * C type : double[3] + */ + public double[] v = new double[3]; + public HmdVector3d_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("v"); + } /** - * @param v double[3]
    - * C type : double[3] - */ - public HmdVector3d_t(double v[]) { - super(); - if ((v.length != this.v.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.v = v; - } - public HmdVector3d_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdVector3d_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdVector3d_t implements Structure.ByValue { - - }; + * @param v double[3]
    + * C type : double[3] + */ + public HmdVector3d_t(double v[]) { + super(); + if ((v.length != this.v.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.v = v; + } + public HmdVector3d_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdVector3d_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdVector3d_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector4_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector4_t.java index 7c13cb220..c2c3d06a3 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector4_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/HmdVector4_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:918
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class HmdVector4_t extends Structure { + * native declaration : headers\openvr_capi.h:945
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class HmdVector4_t extends Structure { /** - * float[4]
    - * C type : float[4] - */ - public float[] v = new float[4]; - public HmdVector4_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("v"); - } + * float[4]
    + * C type : float[4] + */ + public float[] v = new float[4]; + public HmdVector4_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("v"); + } /** - * @param v float[4]
    - * C type : float[4] - */ - public HmdVector4_t(float v[]) { - super(); - if ((v.length != this.v.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.v = v; - } - public HmdVector4_t(Pointer peer) { - super(peer); - } - public static class ByReference extends HmdVector4_t implements Structure.ByReference { - - }; - public static class ByValue extends HmdVector4_t implements Structure.ByValue { - - }; + * @param v float[4]
    + * C type : float[4] + */ + public HmdVector4_t(float v[]) { + super(); + if ((v.length != this.v.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.v = v; + } + public HmdVector4_t(Pointer peer) { + super(peer); + } + public static class ByReference extends HmdVector4_t implements Structure.ByReference { + + }; + public static class ByValue extends HmdVector4_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskCircle_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskCircle_t.java index ae463d988..2cf98516f 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskCircle_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskCircle_t.java @@ -4,34 +4,34 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1200
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class IntersectionMaskCircle_t extends Structure { - public float m_flCenterX; - public float m_flCenterY; - public float m_flRadius; - public IntersectionMaskCircle_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_flCenterX", "m_flCenterY", "m_flRadius"); - } - public IntersectionMaskCircle_t(float m_flCenterX, float m_flCenterY, float m_flRadius) { - super(); - this.m_flCenterX = m_flCenterX; - this.m_flCenterY = m_flCenterY; - this.m_flRadius = m_flRadius; - } - public IntersectionMaskCircle_t(Pointer peer) { - super(peer); - } - public static class ByReference extends IntersectionMaskCircle_t implements Structure.ByReference { - - }; - public static class ByValue extends IntersectionMaskCircle_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1227
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class IntersectionMaskCircle_t extends Structure { + public float m_flCenterX; + public float m_flCenterY; + public float m_flRadius; + public IntersectionMaskCircle_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_flCenterX", "m_flCenterY", "m_flRadius"); + } + public IntersectionMaskCircle_t(float m_flCenterX, float m_flCenterY, float m_flRadius) { + super(); + this.m_flCenterX = m_flCenterX; + this.m_flCenterY = m_flCenterY; + this.m_flRadius = m_flRadius; + } + public IntersectionMaskCircle_t(Pointer peer) { + super(peer); + } + public static class ByReference extends IntersectionMaskCircle_t implements Structure.ByReference { + + }; + public static class ByValue extends IntersectionMaskCircle_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskRectangle_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskRectangle_t.java index bbbd2f5a1..bb9b3e0da 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskRectangle_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/IntersectionMaskRectangle_t.java @@ -4,36 +4,36 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1195
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class IntersectionMaskRectangle_t extends Structure { - public float m_flTopLeftX; - public float m_flTopLeftY; - public float m_flWidth; - public float m_flHeight; - public IntersectionMaskRectangle_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_flTopLeftX", "m_flTopLeftY", "m_flWidth", "m_flHeight"); - } - public IntersectionMaskRectangle_t(float m_flTopLeftX, float m_flTopLeftY, float m_flWidth, float m_flHeight) { - super(); - this.m_flTopLeftX = m_flTopLeftX; - this.m_flTopLeftY = m_flTopLeftY; - this.m_flWidth = m_flWidth; - this.m_flHeight = m_flHeight; - } - public IntersectionMaskRectangle_t(Pointer peer) { - super(peer); - } - public static class ByReference extends IntersectionMaskRectangle_t implements Structure.ByReference { - - }; - public static class ByValue extends IntersectionMaskRectangle_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1222
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class IntersectionMaskRectangle_t extends Structure { + public float m_flTopLeftX; + public float m_flTopLeftY; + public float m_flWidth; + public float m_flHeight; + public IntersectionMaskRectangle_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_flTopLeftX", "m_flTopLeftY", "m_flWidth", "m_flHeight"); + } + public IntersectionMaskRectangle_t(float m_flTopLeftX, float m_flTopLeftY, float m_flWidth, float m_flHeight) { + super(); + this.m_flTopLeftX = m_flTopLeftX; + this.m_flTopLeftY = m_flTopLeftY; + this.m_flWidth = m_flWidth; + this.m_flHeight = m_flHeight; + } + public IntersectionMaskRectangle_t(Pointer peer) { + super(peer); + } + public static class ByReference extends IntersectionMaskRectangle_t implements Structure.ByReference { + + }; + public static class ByValue extends IntersectionMaskRectangle_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/JOpenVRLibrary.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/JOpenVRLibrary.java index 6d1b7abfc..2a3b99733 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/JOpenVRLibrary.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/JOpenVRLibrary.java @@ -6,48 +6,1618 @@ import com.sun.jna.Pointer; import com.sun.jna.PointerType; import com.sun.jna.ptr.IntByReference; import java.nio.IntBuffer; +import java.util.logging.Logger; /** - * JNA Wrapper for library JOpenVR
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ + * JNA Wrapper for library JOpenVR
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ public class JOpenVRLibrary implements Library { + private static final Logger logger = Logger.getLogger(JOpenVRLibrary.class.getName()); + + private static String JNA_LIBRARY_NAME; + private static NativeLibrary JNA_NATIVE_LIB; + + /** + * The system property that specifies an implementation of OpenVR (openvr_api file) to use. + * This property has to be set at the program launch using -D connector. + * If this property is not set, the embedded library is loaded. + */ + public static final String JNA_OPENVR_LIBRARY_PATH = "openvr.library.path"; +/* + static { + init(); + } +*/ /** - * Get the version of the underlying OpenVR API.
    - * see https://github.com/ValveSoftware/openvr/tree/v1.0.6. + * Init the native binding to the underlying system library. + * @return true if the link is effective and false otherwise. */ - public static final String OPENVR_VERSION = "1.0.6"; + public static void init() throws UnsatisfiedLinkError { + Native.unregister(JOpenVRLibrary.class); + + String path = System.getProperty(JNA_OPENVR_LIBRARY_PATH); + if (path != null){ + + JNA_LIBRARY_NAME = path; + + logger.config("Using OpenVR implementation located at "+JNA_LIBRARY_NAME); + + JNA_NATIVE_LIB = NativeLibrary.getInstance(JOpenVRLibrary.JNA_LIBRARY_NAME); + Native.register(JOpenVRLibrary.class, JOpenVRLibrary.JNA_NATIVE_LIB); + } else { + + JNA_LIBRARY_NAME = "openvr_api"; + + logger.config("Using embedded OpenVR implementation "+JOpenVRLibrary.JNA_LIBRARY_NAME); + + JNA_NATIVE_LIB = NativeLibrary.getInstance(JOpenVRLibrary.JNA_LIBRARY_NAME); + Native.register(JOpenVRLibrary.class, JOpenVRLibrary.JNA_NATIVE_LIB); + } + } /** - * Get the commit number of the underlying OpenVR API. - * see https://github.com/ValveSoftware/openvr/commit/7fa6470f2972970859f2395f1390f6d87d4b0fc3 + * Get the name of the underlying system library. + * @return the name of the underlying system library. */ - public static final String OPENVR_COMMIT = "7fa6470"; - - public static final String JNA_LIBRARY_NAME = "openvr_api"; - public static final NativeLibrary JNA_NATIVE_LIB = NativeLibrary.getInstance(JOpenVRLibrary.JNA_LIBRARY_NAME); - static { - Native.register(JOpenVRLibrary.class, JOpenVRLibrary.JNA_NATIVE_LIB); + public static String getSystemLibraryName(){ + return ""+JNA_LIBRARY_NAME; } - - // OpenVR Constants + + /** + * native declaration : headers\openvr_capi.h:181
    + * enum values + */ + public static interface EVREye { + /** native declaration : headers\openvr_capi.h:179 */ + public static final int EVREye_Eye_Left = 0; + /** native declaration : headers\openvr_capi.h:180 */ + public static final int EVREye_Eye_Right = 1; + }; + /** + * native declaration : headers\openvr_capi.h:188
    + * enum values + */ + public static interface ETextureType { + /** native declaration : headers\openvr_capi.h:183 */ + public static final int ETextureType_TextureType_DirectX = 0; + /** native declaration : headers\openvr_capi.h:184 */ + public static final int ETextureType_TextureType_OpenGL = 1; + /** native declaration : headers\openvr_capi.h:185 */ + public static final int ETextureType_TextureType_Vulkan = 2; + /** native declaration : headers\openvr_capi.h:186 */ + public static final int ETextureType_TextureType_IOSurface = 3; + /** native declaration : headers\openvr_capi.h:187 */ + public static final int ETextureType_TextureType_DirectX12 = 4; + }; + /** + * native declaration : headers\openvr_capi.h:193
    + * enum values + */ + public static interface EColorSpace { + /** native declaration : headers\openvr_capi.h:190 */ + public static final int EColorSpace_ColorSpace_Auto = 0; + /** native declaration : headers\openvr_capi.h:191 */ + public static final int EColorSpace_ColorSpace_Gamma = 1; + /** native declaration : headers\openvr_capi.h:192 */ + public static final int EColorSpace_ColorSpace_Linear = 2; + }; + /** + * native declaration : headers\openvr_capi.h:200
    + * enum values + */ + public static interface ETrackingResult { + /** native declaration : headers\openvr_capi.h:195 */ + public static final int ETrackingResult_TrackingResult_Uninitialized = 1; + /** native declaration : headers\openvr_capi.h:196 */ + public static final int ETrackingResult_TrackingResult_Calibrating_InProgress = 100; + /** native declaration : headers\openvr_capi.h:197 */ + public static final int ETrackingResult_TrackingResult_Calibrating_OutOfRange = 101; + /** native declaration : headers\openvr_capi.h:198 */ + public static final int ETrackingResult_TrackingResult_Running_OK = 200; + /** native declaration : headers\openvr_capi.h:199 */ + public static final int ETrackingResult_TrackingResult_Running_OutOfRange = 201; + }; + /** + * native declaration : headers\openvr_capi.h:208
    + * enum values + */ + public static interface ETrackedDeviceClass { + /** native declaration : headers\openvr_capi.h:202 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_Invalid = 0; + /** native declaration : headers\openvr_capi.h:203 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_HMD = 1; + /** native declaration : headers\openvr_capi.h:204 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_Controller = 2; + /** native declaration : headers\openvr_capi.h:205 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_GenericTracker = 3; + /** native declaration : headers\openvr_capi.h:206 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_TrackingReference = 4; + /** native declaration : headers\openvr_capi.h:207 */ + public static final int ETrackedDeviceClass_TrackedDeviceClass_DisplayRedirect = 5; + }; + /** + * native declaration : headers\openvr_capi.h:213
    + * enum values + */ + public static interface ETrackedControllerRole { + /** native declaration : headers\openvr_capi.h:210 */ + public static final int ETrackedControllerRole_TrackedControllerRole_Invalid = 0; + /** native declaration : headers\openvr_capi.h:211 */ + public static final int ETrackedControllerRole_TrackedControllerRole_LeftHand = 1; + /** native declaration : headers\openvr_capi.h:212 */ + public static final int ETrackedControllerRole_TrackedControllerRole_RightHand = 2; + }; + /** + * native declaration : headers\openvr_capi.h:218
    + * enum values + */ + public static interface ETrackingUniverseOrigin { + /** native declaration : headers\openvr_capi.h:215 */ + public static final int ETrackingUniverseOrigin_TrackingUniverseSeated = 0; + /** native declaration : headers\openvr_capi.h:216 */ + public static final int ETrackingUniverseOrigin_TrackingUniverseStanding = 1; + /** native declaration : headers\openvr_capi.h:217 */ + public static final int ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated = 2; + }; + /** + * native declaration : headers\openvr_capi.h:339
    + * enum values + */ + public static interface ETrackedDeviceProperty { + /** native declaration : headers\openvr_capi.h:220 */ + public static final int ETrackedDeviceProperty_Prop_Invalid = 0; + /** native declaration : headers\openvr_capi.h:221 */ + public static final int ETrackedDeviceProperty_Prop_TrackingSystemName_String = 1000; + /** native declaration : headers\openvr_capi.h:222 */ + public static final int ETrackedDeviceProperty_Prop_ModelNumber_String = 1001; + /** native declaration : headers\openvr_capi.h:223 */ + public static final int ETrackedDeviceProperty_Prop_SerialNumber_String = 1002; + /** native declaration : headers\openvr_capi.h:224 */ + public static final int ETrackedDeviceProperty_Prop_RenderModelName_String = 1003; + /** native declaration : headers\openvr_capi.h:225 */ + public static final int ETrackedDeviceProperty_Prop_WillDriftInYaw_Bool = 1004; + /** native declaration : headers\openvr_capi.h:226 */ + public static final int ETrackedDeviceProperty_Prop_ManufacturerName_String = 1005; + /** native declaration : headers\openvr_capi.h:227 */ + public static final int ETrackedDeviceProperty_Prop_TrackingFirmwareVersion_String = 1006; + /** native declaration : headers\openvr_capi.h:228 */ + public static final int ETrackedDeviceProperty_Prop_HardwareRevision_String = 1007; + /** native declaration : headers\openvr_capi.h:229 */ + public static final int ETrackedDeviceProperty_Prop_AllWirelessDongleDescriptions_String = 1008; + /** native declaration : headers\openvr_capi.h:230 */ + public static final int ETrackedDeviceProperty_Prop_ConnectedWirelessDongle_String = 1009; + /** native declaration : headers\openvr_capi.h:231 */ + public static final int ETrackedDeviceProperty_Prop_DeviceIsWireless_Bool = 1010; + /** native declaration : headers\openvr_capi.h:232 */ + public static final int ETrackedDeviceProperty_Prop_DeviceIsCharging_Bool = 1011; + /** native declaration : headers\openvr_capi.h:233 */ + public static final int ETrackedDeviceProperty_Prop_DeviceBatteryPercentage_Float = 1012; + /** native declaration : headers\openvr_capi.h:234 */ + public static final int ETrackedDeviceProperty_Prop_StatusDisplayTransform_Matrix34 = 1013; + /** native declaration : headers\openvr_capi.h:235 */ + public static final int ETrackedDeviceProperty_Prop_Firmware_UpdateAvailable_Bool = 1014; + /** native declaration : headers\openvr_capi.h:236 */ + public static final int ETrackedDeviceProperty_Prop_Firmware_ManualUpdate_Bool = 1015; + /** native declaration : headers\openvr_capi.h:237 */ + public static final int ETrackedDeviceProperty_Prop_Firmware_ManualUpdateURL_String = 1016; + /** native declaration : headers\openvr_capi.h:238 */ + public static final int ETrackedDeviceProperty_Prop_HardwareRevision_Uint64 = 1017; + /** native declaration : headers\openvr_capi.h:239 */ + public static final int ETrackedDeviceProperty_Prop_FirmwareVersion_Uint64 = 1018; + /** native declaration : headers\openvr_capi.h:240 */ + public static final int ETrackedDeviceProperty_Prop_FPGAVersion_Uint64 = 1019; + /** native declaration : headers\openvr_capi.h:241 */ + public static final int ETrackedDeviceProperty_Prop_VRCVersion_Uint64 = 1020; + /** native declaration : headers\openvr_capi.h:242 */ + public static final int ETrackedDeviceProperty_Prop_RadioVersion_Uint64 = 1021; + /** native declaration : headers\openvr_capi.h:243 */ + public static final int ETrackedDeviceProperty_Prop_DongleVersion_Uint64 = 1022; + /** native declaration : headers\openvr_capi.h:244 */ + public static final int ETrackedDeviceProperty_Prop_BlockServerShutdown_Bool = 1023; + /** native declaration : headers\openvr_capi.h:245 */ + public static final int ETrackedDeviceProperty_Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024; + /** native declaration : headers\openvr_capi.h:246 */ + public static final int ETrackedDeviceProperty_Prop_ContainsProximitySensor_Bool = 1025; + /** native declaration : headers\openvr_capi.h:247 */ + public static final int ETrackedDeviceProperty_Prop_DeviceProvidesBatteryStatus_Bool = 1026; + /** native declaration : headers\openvr_capi.h:248 */ + public static final int ETrackedDeviceProperty_Prop_DeviceCanPowerOff_Bool = 1027; + /** native declaration : headers\openvr_capi.h:249 */ + public static final int ETrackedDeviceProperty_Prop_Firmware_ProgrammingTarget_String = 1028; + /** native declaration : headers\openvr_capi.h:250 */ + public static final int ETrackedDeviceProperty_Prop_DeviceClass_Int32 = 1029; + /** native declaration : headers\openvr_capi.h:251 */ + public static final int ETrackedDeviceProperty_Prop_HasCamera_Bool = 1030; + /** native declaration : headers\openvr_capi.h:252 */ + public static final int ETrackedDeviceProperty_Prop_DriverVersion_String = 1031; + /** native declaration : headers\openvr_capi.h:253 */ + public static final int ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool = 1032; + /** native declaration : headers\openvr_capi.h:254 */ + public static final int ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool = 1033; + /** native declaration : headers\openvr_capi.h:255 */ + public static final int ETrackedDeviceProperty_Prop_ParentDriver_Uint64 = 1034; + /** native declaration : headers\openvr_capi.h:256 */ + public static final int ETrackedDeviceProperty_Prop_ResourceRoot_String = 1035; + /** native declaration : headers\openvr_capi.h:257 */ + public static final int ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000; + /** native declaration : headers\openvr_capi.h:258 */ + public static final int ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001; + /** native declaration : headers\openvr_capi.h:259 */ + public static final int ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002; + /** native declaration : headers\openvr_capi.h:260 */ + public static final int ETrackedDeviceProperty_Prop_UserIpdMeters_Float = 2003; + /** native declaration : headers\openvr_capi.h:261 */ + public static final int ETrackedDeviceProperty_Prop_CurrentUniverseId_Uint64 = 2004; + /** native declaration : headers\openvr_capi.h:262 */ + public static final int ETrackedDeviceProperty_Prop_PreviousUniverseId_Uint64 = 2005; + /** native declaration : headers\openvr_capi.h:263 */ + public static final int ETrackedDeviceProperty_Prop_DisplayFirmwareVersion_Uint64 = 2006; + /** native declaration : headers\openvr_capi.h:264 */ + public static final int ETrackedDeviceProperty_Prop_IsOnDesktop_Bool = 2007; + /** native declaration : headers\openvr_capi.h:265 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCType_Int32 = 2008; + /** native declaration : headers\openvr_capi.h:266 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCOffset_Float = 2009; + /** native declaration : headers\openvr_capi.h:267 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCScale_Float = 2010; + /** native declaration : headers\openvr_capi.h:268 */ + public static final int ETrackedDeviceProperty_Prop_EdidVendorID_Int32 = 2011; + /** native declaration : headers\openvr_capi.h:269 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageLeft_String = 2012; + /** native declaration : headers\openvr_capi.h:270 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageRight_String = 2013; + /** native declaration : headers\openvr_capi.h:271 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCBlackClamp_Float = 2014; + /** native declaration : headers\openvr_capi.h:272 */ + public static final int ETrackedDeviceProperty_Prop_EdidProductID_Int32 = 2015; + /** native declaration : headers\openvr_capi.h:273 */ + public static final int ETrackedDeviceProperty_Prop_CameraToHeadTransform_Matrix34 = 2016; + /** native declaration : headers\openvr_capi.h:274 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCType_Int32 = 2017; + /** native declaration : headers\openvr_capi.h:275 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCOffset_Float = 2018; + /** native declaration : headers\openvr_capi.h:276 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCScale_Float = 2019; + /** native declaration : headers\openvr_capi.h:277 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCPrescale_Float = 2020; + /** native declaration : headers\openvr_capi.h:278 */ + public static final int ETrackedDeviceProperty_Prop_DisplayGCImage_String = 2021; + /** native declaration : headers\openvr_capi.h:279 */ + public static final int ETrackedDeviceProperty_Prop_LensCenterLeftU_Float = 2022; + /** native declaration : headers\openvr_capi.h:280 */ + public static final int ETrackedDeviceProperty_Prop_LensCenterLeftV_Float = 2023; + /** native declaration : headers\openvr_capi.h:281 */ + public static final int ETrackedDeviceProperty_Prop_LensCenterRightU_Float = 2024; + /** native declaration : headers\openvr_capi.h:282 */ + public static final int ETrackedDeviceProperty_Prop_LensCenterRightV_Float = 2025; + /** native declaration : headers\openvr_capi.h:283 */ + public static final int ETrackedDeviceProperty_Prop_UserHeadToEyeDepthMeters_Float = 2026; + /** native declaration : headers\openvr_capi.h:284 */ + public static final int ETrackedDeviceProperty_Prop_CameraFirmwareVersion_Uint64 = 2027; + /** native declaration : headers\openvr_capi.h:285 */ + public static final int ETrackedDeviceProperty_Prop_CameraFirmwareDescription_String = 2028; + /** native declaration : headers\openvr_capi.h:286 */ + public static final int ETrackedDeviceProperty_Prop_DisplayFPGAVersion_Uint64 = 2029; + /** native declaration : headers\openvr_capi.h:287 */ + public static final int ETrackedDeviceProperty_Prop_DisplayBootloaderVersion_Uint64 = 2030; + /** native declaration : headers\openvr_capi.h:288 */ + public static final int ETrackedDeviceProperty_Prop_DisplayHardwareVersion_Uint64 = 2031; + /** native declaration : headers\openvr_capi.h:289 */ + public static final int ETrackedDeviceProperty_Prop_AudioFirmwareVersion_Uint64 = 2032; + /** native declaration : headers\openvr_capi.h:290 */ + public static final int ETrackedDeviceProperty_Prop_CameraCompatibilityMode_Int32 = 2033; + /** native declaration : headers\openvr_capi.h:291 */ + public static final int ETrackedDeviceProperty_Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034; + /** native declaration : headers\openvr_capi.h:292 */ + public static final int ETrackedDeviceProperty_Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035; + /** native declaration : headers\openvr_capi.h:293 */ + public static final int ETrackedDeviceProperty_Prop_DisplaySuppressed_Bool = 2036; + /** native declaration : headers\openvr_capi.h:294 */ + public static final int ETrackedDeviceProperty_Prop_DisplayAllowNightMode_Bool = 2037; + /** native declaration : headers\openvr_capi.h:295 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageWidth_Int32 = 2038; + /** native declaration : headers\openvr_capi.h:296 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32 = 2039; + /** native declaration : headers\openvr_capi.h:297 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32 = 2040; + /** native declaration : headers\openvr_capi.h:298 */ + public static final int ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary = 2041; + /** native declaration : headers\openvr_capi.h:299 */ + public static final int ETrackedDeviceProperty_Prop_SecondsFromPhotonsToVblank_Float = 2042; + /** native declaration : headers\openvr_capi.h:300 */ + public static final int ETrackedDeviceProperty_Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043; + /** native declaration : headers\openvr_capi.h:301 */ + public static final int ETrackedDeviceProperty_Prop_DisplayDebugMode_Bool = 2044; + /** native declaration : headers\openvr_capi.h:302 */ + public static final int ETrackedDeviceProperty_Prop_GraphicsAdapterLuid_Uint64 = 2045; + /** native declaration : headers\openvr_capi.h:303 */ + public static final int ETrackedDeviceProperty_Prop_DriverProvidedChaperonePath_String = 2048; + /** native declaration : headers\openvr_capi.h:304 */ + public static final int ETrackedDeviceProperty_Prop_AttachedDeviceId_String = 3000; + /** native declaration : headers\openvr_capi.h:305 */ + public static final int ETrackedDeviceProperty_Prop_SupportedButtons_Uint64 = 3001; + /** native declaration : headers\openvr_capi.h:306 */ + public static final int ETrackedDeviceProperty_Prop_Axis0Type_Int32 = 3002; + /** native declaration : headers\openvr_capi.h:307 */ + public static final int ETrackedDeviceProperty_Prop_Axis1Type_Int32 = 3003; + /** native declaration : headers\openvr_capi.h:308 */ + public static final int ETrackedDeviceProperty_Prop_Axis2Type_Int32 = 3004; + /** native declaration : headers\openvr_capi.h:309 */ + public static final int ETrackedDeviceProperty_Prop_Axis3Type_Int32 = 3005; + /** native declaration : headers\openvr_capi.h:310 */ + public static final int ETrackedDeviceProperty_Prop_Axis4Type_Int32 = 3006; + /** native declaration : headers\openvr_capi.h:311 */ + public static final int ETrackedDeviceProperty_Prop_ControllerRoleHint_Int32 = 3007; + /** native declaration : headers\openvr_capi.h:312 */ + public static final int ETrackedDeviceProperty_Prop_FieldOfViewLeftDegrees_Float = 4000; + /** native declaration : headers\openvr_capi.h:313 */ + public static final int ETrackedDeviceProperty_Prop_FieldOfViewRightDegrees_Float = 4001; + /** native declaration : headers\openvr_capi.h:314 */ + public static final int ETrackedDeviceProperty_Prop_FieldOfViewTopDegrees_Float = 4002; + /** native declaration : headers\openvr_capi.h:315 */ + public static final int ETrackedDeviceProperty_Prop_FieldOfViewBottomDegrees_Float = 4003; + /** native declaration : headers\openvr_capi.h:316 */ + public static final int ETrackedDeviceProperty_Prop_TrackingRangeMinimumMeters_Float = 4004; + /** native declaration : headers\openvr_capi.h:317 */ + public static final int ETrackedDeviceProperty_Prop_TrackingRangeMaximumMeters_Float = 4005; + /** native declaration : headers\openvr_capi.h:318 */ + public static final int ETrackedDeviceProperty_Prop_ModeLabel_String = 4006; + /** native declaration : headers\openvr_capi.h:319 */ + public static final int ETrackedDeviceProperty_Prop_IconPathName_String = 5000; + /** native declaration : headers\openvr_capi.h:320 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceOff_String = 5001; + /** native declaration : headers\openvr_capi.h:321 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearching_String = 5002; + /** native declaration : headers\openvr_capi.h:322 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearchingAlert_String = 5003; + /** native declaration : headers\openvr_capi.h:323 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceReady_String = 5004; + /** native declaration : headers\openvr_capi.h:324 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceReadyAlert_String = 5005; + /** native declaration : headers\openvr_capi.h:325 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceNotReady_String = 5006; + /** native declaration : headers\openvr_capi.h:326 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandby_String = 5007; + /** native declaration : headers\openvr_capi.h:327 */ + public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceAlertLow_String = 5008; + /** native declaration : headers\openvr_capi.h:328 */ + public static final int ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_Start = 5100; + /** native declaration : headers\openvr_capi.h:329 */ + public static final int ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End = 5150; + /** native declaration : headers\openvr_capi.h:330 */ + public static final int ETrackedDeviceProperty_Prop_UserConfigPath_String = 6000; + /** native declaration : headers\openvr_capi.h:331 */ + public static final int ETrackedDeviceProperty_Prop_InstallPath_String = 6001; + /** native declaration : headers\openvr_capi.h:332 */ + public static final int ETrackedDeviceProperty_Prop_HasDisplayComponent_Bool = 6002; + /** native declaration : headers\openvr_capi.h:333 */ + public static final int ETrackedDeviceProperty_Prop_HasControllerComponent_Bool = 6003; + /** native declaration : headers\openvr_capi.h:334 */ + public static final int ETrackedDeviceProperty_Prop_HasCameraComponent_Bool = 6004; + /** native declaration : headers\openvr_capi.h:335 */ + public static final int ETrackedDeviceProperty_Prop_HasDriverDirectModeComponent_Bool = 6005; + /** native declaration : headers\openvr_capi.h:336 */ + public static final int ETrackedDeviceProperty_Prop_HasVirtualDisplayComponent_Bool = 6006; + /** native declaration : headers\openvr_capi.h:337 */ + public static final int ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start = 10000; + /** native declaration : headers\openvr_capi.h:338 */ + public static final int ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End = 10999; + }; + /** + * native declaration : headers\openvr_capi.h:353
    + * enum values + */ + public static interface ETrackedPropertyError { + /** native declaration : headers\openvr_capi.h:341 */ + public static final int ETrackedPropertyError_TrackedProp_Success = 0; + /** native declaration : headers\openvr_capi.h:342 */ + public static final int ETrackedPropertyError_TrackedProp_WrongDataType = 1; + /** native declaration : headers\openvr_capi.h:343 */ + public static final int ETrackedPropertyError_TrackedProp_WrongDeviceClass = 2; + /** native declaration : headers\openvr_capi.h:344 */ + public static final int ETrackedPropertyError_TrackedProp_BufferTooSmall = 3; + /** native declaration : headers\openvr_capi.h:345 */ + public static final int ETrackedPropertyError_TrackedProp_UnknownProperty = 4; + /** native declaration : headers\openvr_capi.h:346 */ + public static final int ETrackedPropertyError_TrackedProp_InvalidDevice = 5; + /** native declaration : headers\openvr_capi.h:347 */ + public static final int ETrackedPropertyError_TrackedProp_CouldNotContactServer = 6; + /** native declaration : headers\openvr_capi.h:348 */ + public static final int ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice = 7; + /** native declaration : headers\openvr_capi.h:349 */ + public static final int ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength = 8; + /** native declaration : headers\openvr_capi.h:350 */ + public static final int ETrackedPropertyError_TrackedProp_NotYetAvailable = 9; + /** native declaration : headers\openvr_capi.h:351 */ + public static final int ETrackedPropertyError_TrackedProp_PermissionDenied = 10; + /** native declaration : headers\openvr_capi.h:352 */ + public static final int ETrackedPropertyError_TrackedProp_InvalidOperation = 11; + }; + /** + * native declaration : headers\openvr_capi.h:359
    + * enum values + */ + public static interface EVRSubmitFlags { + /** native declaration : headers\openvr_capi.h:355 */ + public static final int EVRSubmitFlags_Submit_Default = 0; + /** native declaration : headers\openvr_capi.h:356 */ + public static final int EVRSubmitFlags_Submit_LensDistortionAlreadyApplied = 1; + /** native declaration : headers\openvr_capi.h:357 */ + public static final int EVRSubmitFlags_Submit_GlRenderBuffer = 2; + /** native declaration : headers\openvr_capi.h:358 */ + public static final int EVRSubmitFlags_Submit_Reserved = 4; + }; + /** + * native declaration : headers\openvr_capi.h:370
    + * enum values + */ + public static interface EVRState { + /** native declaration : headers\openvr_capi.h:361 */ + public static final int EVRState_VRState_Undefined = -1; + /** native declaration : headers\openvr_capi.h:362 */ + public static final int EVRState_VRState_Off = 0; + /** native declaration : headers\openvr_capi.h:363 */ + public static final int EVRState_VRState_Searching = 1; + /** native declaration : headers\openvr_capi.h:364 */ + public static final int EVRState_VRState_Searching_Alert = 2; + /** native declaration : headers\openvr_capi.h:365 */ + public static final int EVRState_VRState_Ready = 3; + /** native declaration : headers\openvr_capi.h:366 */ + public static final int EVRState_VRState_Ready_Alert = 4; + /** native declaration : headers\openvr_capi.h:367 */ + public static final int EVRState_VRState_NotReady = 5; + /** native declaration : headers\openvr_capi.h:368 */ + public static final int EVRState_VRState_Standby = 6; + /** native declaration : headers\openvr_capi.h:369 */ + public static final int EVRState_VRState_Ready_Alert_Low = 7; + }; + /** + * native declaration : headers\openvr_capi.h:486
    + * enum values + */ + public static interface EVREventType { + /** native declaration : headers\openvr_capi.h:372 */ + public static final int EVREventType_VREvent_None = 0; + /** native declaration : headers\openvr_capi.h:373 */ + public static final int EVREventType_VREvent_TrackedDeviceActivated = 100; + /** native declaration : headers\openvr_capi.h:374 */ + public static final int EVREventType_VREvent_TrackedDeviceDeactivated = 101; + /** native declaration : headers\openvr_capi.h:375 */ + public static final int EVREventType_VREvent_TrackedDeviceUpdated = 102; + /** native declaration : headers\openvr_capi.h:376 */ + public static final int EVREventType_VREvent_TrackedDeviceUserInteractionStarted = 103; + /** native declaration : headers\openvr_capi.h:377 */ + public static final int EVREventType_VREvent_TrackedDeviceUserInteractionEnded = 104; + /** native declaration : headers\openvr_capi.h:378 */ + public static final int EVREventType_VREvent_IpdChanged = 105; + /** native declaration : headers\openvr_capi.h:379 */ + public static final int EVREventType_VREvent_EnterStandbyMode = 106; + /** native declaration : headers\openvr_capi.h:380 */ + public static final int EVREventType_VREvent_LeaveStandbyMode = 107; + /** native declaration : headers\openvr_capi.h:381 */ + public static final int EVREventType_VREvent_TrackedDeviceRoleChanged = 108; + /** native declaration : headers\openvr_capi.h:382 */ + public static final int EVREventType_VREvent_WatchdogWakeUpRequested = 109; + /** native declaration : headers\openvr_capi.h:383 */ + public static final int EVREventType_VREvent_LensDistortionChanged = 110; + /** native declaration : headers\openvr_capi.h:384 */ + public static final int EVREventType_VREvent_PropertyChanged = 111; + /** native declaration : headers\openvr_capi.h:385 */ + public static final int EVREventType_VREvent_WirelessDisconnect = 112; + /** native declaration : headers\openvr_capi.h:386 */ + public static final int EVREventType_VREvent_WirelessReconnect = 113; + /** native declaration : headers\openvr_capi.h:387 */ + public static final int EVREventType_VREvent_ButtonPress = 200; + /** native declaration : headers\openvr_capi.h:388 */ + public static final int EVREventType_VREvent_ButtonUnpress = 201; + /** native declaration : headers\openvr_capi.h:389 */ + public static final int EVREventType_VREvent_ButtonTouch = 202; + /** native declaration : headers\openvr_capi.h:390 */ + public static final int EVREventType_VREvent_ButtonUntouch = 203; + /** native declaration : headers\openvr_capi.h:391 */ + public static final int EVREventType_VREvent_MouseMove = 300; + /** native declaration : headers\openvr_capi.h:392 */ + public static final int EVREventType_VREvent_MouseButtonDown = 301; + /** native declaration : headers\openvr_capi.h:393 */ + public static final int EVREventType_VREvent_MouseButtonUp = 302; + /** native declaration : headers\openvr_capi.h:394 */ + public static final int EVREventType_VREvent_FocusEnter = 303; + /** native declaration : headers\openvr_capi.h:395 */ + public static final int EVREventType_VREvent_FocusLeave = 304; + /** native declaration : headers\openvr_capi.h:396 */ + public static final int EVREventType_VREvent_Scroll = 305; + /** native declaration : headers\openvr_capi.h:397 */ + public static final int EVREventType_VREvent_TouchPadMove = 306; + /** native declaration : headers\openvr_capi.h:398 */ + public static final int EVREventType_VREvent_OverlayFocusChanged = 307; + /** native declaration : headers\openvr_capi.h:399 */ + public static final int EVREventType_VREvent_InputFocusCaptured = 400; + /** native declaration : headers\openvr_capi.h:400 */ + public static final int EVREventType_VREvent_InputFocusReleased = 401; + /** native declaration : headers\openvr_capi.h:401 */ + public static final int EVREventType_VREvent_SceneFocusLost = 402; + /** native declaration : headers\openvr_capi.h:402 */ + public static final int EVREventType_VREvent_SceneFocusGained = 403; + /** native declaration : headers\openvr_capi.h:403 */ + public static final int EVREventType_VREvent_SceneApplicationChanged = 404; + /** native declaration : headers\openvr_capi.h:404 */ + public static final int EVREventType_VREvent_SceneFocusChanged = 405; + /** native declaration : headers\openvr_capi.h:405 */ + public static final int EVREventType_VREvent_InputFocusChanged = 406; + /** native declaration : headers\openvr_capi.h:406 */ + public static final int EVREventType_VREvent_SceneApplicationSecondaryRenderingStarted = 407; + /** native declaration : headers\openvr_capi.h:407 */ + public static final int EVREventType_VREvent_HideRenderModels = 410; + /** native declaration : headers\openvr_capi.h:408 */ + public static final int EVREventType_VREvent_ShowRenderModels = 411; + /** native declaration : headers\openvr_capi.h:409 */ + public static final int EVREventType_VREvent_OverlayShown = 500; + /** native declaration : headers\openvr_capi.h:410 */ + public static final int EVREventType_VREvent_OverlayHidden = 501; + /** native declaration : headers\openvr_capi.h:411 */ + public static final int EVREventType_VREvent_DashboardActivated = 502; + /** native declaration : headers\openvr_capi.h:412 */ + public static final int EVREventType_VREvent_DashboardDeactivated = 503; + /** native declaration : headers\openvr_capi.h:413 */ + public static final int EVREventType_VREvent_DashboardThumbSelected = 504; + /** native declaration : headers\openvr_capi.h:414 */ + public static final int EVREventType_VREvent_DashboardRequested = 505; + /** native declaration : headers\openvr_capi.h:415 */ + public static final int EVREventType_VREvent_ResetDashboard = 506; + /** native declaration : headers\openvr_capi.h:416 */ + public static final int EVREventType_VREvent_RenderToast = 507; + /** native declaration : headers\openvr_capi.h:417 */ + public static final int EVREventType_VREvent_ImageLoaded = 508; + /** native declaration : headers\openvr_capi.h:418 */ + public static final int EVREventType_VREvent_ShowKeyboard = 509; + /** native declaration : headers\openvr_capi.h:419 */ + public static final int EVREventType_VREvent_HideKeyboard = 510; + /** native declaration : headers\openvr_capi.h:420 */ + public static final int EVREventType_VREvent_OverlayGamepadFocusGained = 511; + /** native declaration : headers\openvr_capi.h:421 */ + public static final int EVREventType_VREvent_OverlayGamepadFocusLost = 512; + /** native declaration : headers\openvr_capi.h:422 */ + public static final int EVREventType_VREvent_OverlaySharedTextureChanged = 513; + /** native declaration : headers\openvr_capi.h:423 */ + public static final int EVREventType_VREvent_DashboardGuideButtonDown = 514; + /** native declaration : headers\openvr_capi.h:424 */ + public static final int EVREventType_VREvent_DashboardGuideButtonUp = 515; + /** native declaration : headers\openvr_capi.h:425 */ + public static final int EVREventType_VREvent_ScreenshotTriggered = 516; + /** native declaration : headers\openvr_capi.h:426 */ + public static final int EVREventType_VREvent_ImageFailed = 517; + /** native declaration : headers\openvr_capi.h:427 */ + public static final int EVREventType_VREvent_DashboardOverlayCreated = 518; + /** native declaration : headers\openvr_capi.h:428 */ + public static final int EVREventType_VREvent_RequestScreenshot = 520; + /** native declaration : headers\openvr_capi.h:429 */ + public static final int EVREventType_VREvent_ScreenshotTaken = 521; + /** native declaration : headers\openvr_capi.h:430 */ + public static final int EVREventType_VREvent_ScreenshotFailed = 522; + /** native declaration : headers\openvr_capi.h:431 */ + public static final int EVREventType_VREvent_SubmitScreenshotToDashboard = 523; + /** native declaration : headers\openvr_capi.h:432 */ + public static final int EVREventType_VREvent_ScreenshotProgressToDashboard = 524; + /** native declaration : headers\openvr_capi.h:433 */ + public static final int EVREventType_VREvent_PrimaryDashboardDeviceChanged = 525; + /** native declaration : headers\openvr_capi.h:434 */ + public static final int EVREventType_VREvent_Notification_Shown = 600; + /** native declaration : headers\openvr_capi.h:435 */ + public static final int EVREventType_VREvent_Notification_Hidden = 601; + /** native declaration : headers\openvr_capi.h:436 */ + public static final int EVREventType_VREvent_Notification_BeginInteraction = 602; + /** native declaration : headers\openvr_capi.h:437 */ + public static final int EVREventType_VREvent_Notification_Destroyed = 603; + /** native declaration : headers\openvr_capi.h:438 */ + public static final int EVREventType_VREvent_Quit = 700; + /** native declaration : headers\openvr_capi.h:439 */ + public static final int EVREventType_VREvent_ProcessQuit = 701; + /** native declaration : headers\openvr_capi.h:440 */ + public static final int EVREventType_VREvent_QuitAborted_UserPrompt = 702; + /** native declaration : headers\openvr_capi.h:441 */ + public static final int EVREventType_VREvent_QuitAcknowledged = 703; + /** native declaration : headers\openvr_capi.h:442 */ + public static final int EVREventType_VREvent_DriverRequestedQuit = 704; + /** native declaration : headers\openvr_capi.h:443 */ + public static final int EVREventType_VREvent_ChaperoneDataHasChanged = 800; + /** native declaration : headers\openvr_capi.h:444 */ + public static final int EVREventType_VREvent_ChaperoneUniverseHasChanged = 801; + /** native declaration : headers\openvr_capi.h:445 */ + public static final int EVREventType_VREvent_ChaperoneTempDataHasChanged = 802; + /** native declaration : headers\openvr_capi.h:446 */ + public static final int EVREventType_VREvent_ChaperoneSettingsHaveChanged = 803; + /** native declaration : headers\openvr_capi.h:447 */ + public static final int EVREventType_VREvent_SeatedZeroPoseReset = 804; + /** native declaration : headers\openvr_capi.h:448 */ + public static final int EVREventType_VREvent_AudioSettingsHaveChanged = 820; + /** native declaration : headers\openvr_capi.h:449 */ + public static final int EVREventType_VREvent_BackgroundSettingHasChanged = 850; + /** native declaration : headers\openvr_capi.h:450 */ + public static final int EVREventType_VREvent_CameraSettingsHaveChanged = 851; + /** native declaration : headers\openvr_capi.h:451 */ + public static final int EVREventType_VREvent_ReprojectionSettingHasChanged = 852; + /** native declaration : headers\openvr_capi.h:452 */ + public static final int EVREventType_VREvent_ModelSkinSettingsHaveChanged = 853; + /** native declaration : headers\openvr_capi.h:453 */ + public static final int EVREventType_VREvent_EnvironmentSettingsHaveChanged = 854; + /** native declaration : headers\openvr_capi.h:454 */ + public static final int EVREventType_VREvent_PowerSettingsHaveChanged = 855; + /** native declaration : headers\openvr_capi.h:455 */ + public static final int EVREventType_VREvent_EnableHomeAppSettingsHaveChanged = 856; + /** native declaration : headers\openvr_capi.h:456 */ + public static final int EVREventType_VREvent_StatusUpdate = 900; + /** native declaration : headers\openvr_capi.h:457 */ + public static final int EVREventType_VREvent_MCImageUpdated = 1000; + /** native declaration : headers\openvr_capi.h:458 */ + public static final int EVREventType_VREvent_FirmwareUpdateStarted = 1100; + /** native declaration : headers\openvr_capi.h:459 */ + public static final int EVREventType_VREvent_FirmwareUpdateFinished = 1101; + /** native declaration : headers\openvr_capi.h:460 */ + public static final int EVREventType_VREvent_KeyboardClosed = 1200; + /** native declaration : headers\openvr_capi.h:461 */ + public static final int EVREventType_VREvent_KeyboardCharInput = 1201; + /** native declaration : headers\openvr_capi.h:462 */ + public static final int EVREventType_VREvent_KeyboardDone = 1202; + /** native declaration : headers\openvr_capi.h:463 */ + public static final int EVREventType_VREvent_ApplicationTransitionStarted = 1300; + /** native declaration : headers\openvr_capi.h:464 */ + public static final int EVREventType_VREvent_ApplicationTransitionAborted = 1301; + /** native declaration : headers\openvr_capi.h:465 */ + public static final int EVREventType_VREvent_ApplicationTransitionNewAppStarted = 1302; + /** native declaration : headers\openvr_capi.h:466 */ + public static final int EVREventType_VREvent_ApplicationListUpdated = 1303; + /** native declaration : headers\openvr_capi.h:467 */ + public static final int EVREventType_VREvent_ApplicationMimeTypeLoad = 1304; + /** native declaration : headers\openvr_capi.h:468 */ + public static final int EVREventType_VREvent_ApplicationTransitionNewAppLaunchComplete = 1305; + /** native declaration : headers\openvr_capi.h:469 */ + public static final int EVREventType_VREvent_ProcessConnected = 1306; + /** native declaration : headers\openvr_capi.h:470 */ + public static final int EVREventType_VREvent_ProcessDisconnected = 1307; + /** native declaration : headers\openvr_capi.h:471 */ + public static final int EVREventType_VREvent_Compositor_MirrorWindowShown = 1400; + /** native declaration : headers\openvr_capi.h:472 */ + public static final int EVREventType_VREvent_Compositor_MirrorWindowHidden = 1401; + /** native declaration : headers\openvr_capi.h:473 */ + public static final int EVREventType_VREvent_Compositor_ChaperoneBoundsShown = 1410; + /** native declaration : headers\openvr_capi.h:474 */ + public static final int EVREventType_VREvent_Compositor_ChaperoneBoundsHidden = 1411; + /** native declaration : headers\openvr_capi.h:475 */ + public static final int EVREventType_VREvent_TrackedCamera_StartVideoStream = 1500; + /** native declaration : headers\openvr_capi.h:476 */ + public static final int EVREventType_VREvent_TrackedCamera_StopVideoStream = 1501; + /** native declaration : headers\openvr_capi.h:477 */ + public static final int EVREventType_VREvent_TrackedCamera_PauseVideoStream = 1502; + /** native declaration : headers\openvr_capi.h:478 */ + public static final int EVREventType_VREvent_TrackedCamera_ResumeVideoStream = 1503; + /** native declaration : headers\openvr_capi.h:479 */ + public static final int EVREventType_VREvent_TrackedCamera_EditingSurface = 1550; + /** native declaration : headers\openvr_capi.h:480 */ + public static final int EVREventType_VREvent_PerformanceTest_EnableCapture = 1600; + /** native declaration : headers\openvr_capi.h:481 */ + public static final int EVREventType_VREvent_PerformanceTest_DisableCapture = 1601; + /** native declaration : headers\openvr_capi.h:482 */ + public static final int EVREventType_VREvent_PerformanceTest_FidelityLevel = 1602; + /** native declaration : headers\openvr_capi.h:483 */ + public static final int EVREventType_VREvent_MessageOverlay_Closed = 1650; + /** native declaration : headers\openvr_capi.h:484 */ + public static final int EVREventType_VREvent_VendorSpecific_Reserved_Start = 10000; + /** native declaration : headers\openvr_capi.h:485 */ + public static final int EVREventType_VREvent_VendorSpecific_Reserved_End = 19999; + }; + /** + * native declaration : headers\openvr_capi.h:493
    + * enum values + */ + public static interface EDeviceActivityLevel { + /** native declaration : headers\openvr_capi.h:488 */ + public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Unknown = -1; + /** native declaration : headers\openvr_capi.h:489 */ + public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Idle = 0; + /** native declaration : headers\openvr_capi.h:490 */ + public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction = 1; + /** native declaration : headers\openvr_capi.h:491 */ + public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction_Timeout = 2; + /** native declaration : headers\openvr_capi.h:492 */ + public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Standby = 3; + }; + /** + * native declaration : headers\openvr_capi.h:513
    + * enum values + */ + public static interface EVRButtonId { + /** native declaration : headers\openvr_capi.h:495 */ + public static final int EVRButtonId_k_EButton_System = 0; + /** native declaration : headers\openvr_capi.h:496 */ + public static final int EVRButtonId_k_EButton_ApplicationMenu = 1; + /** native declaration : headers\openvr_capi.h:497 */ + public static final int EVRButtonId_k_EButton_Grip = 2; + /** native declaration : headers\openvr_capi.h:498 */ + public static final int EVRButtonId_k_EButton_DPad_Left = 3; + /** native declaration : headers\openvr_capi.h:499 */ + public static final int EVRButtonId_k_EButton_DPad_Up = 4; + /** native declaration : headers\openvr_capi.h:500 */ + public static final int EVRButtonId_k_EButton_DPad_Right = 5; + /** native declaration : headers\openvr_capi.h:501 */ + public static final int EVRButtonId_k_EButton_DPad_Down = 6; + /** native declaration : headers\openvr_capi.h:502 */ + public static final int EVRButtonId_k_EButton_A = 7; + /** native declaration : headers\openvr_capi.h:503 */ + public static final int EVRButtonId_k_EButton_ProximitySensor = 31; + /** native declaration : headers\openvr_capi.h:504 */ + public static final int EVRButtonId_k_EButton_Axis0 = 32; + /** native declaration : headers\openvr_capi.h:505 */ + public static final int EVRButtonId_k_EButton_Axis1 = 33; + /** native declaration : headers\openvr_capi.h:506 */ + public static final int EVRButtonId_k_EButton_Axis2 = 34; + /** native declaration : headers\openvr_capi.h:507 */ + public static final int EVRButtonId_k_EButton_Axis3 = 35; + /** native declaration : headers\openvr_capi.h:508 */ + public static final int EVRButtonId_k_EButton_Axis4 = 36; + /** native declaration : headers\openvr_capi.h:509 */ + public static final int EVRButtonId_k_EButton_SteamVR_Touchpad = 32; + /** native declaration : headers\openvr_capi.h:510 */ + public static final int EVRButtonId_k_EButton_SteamVR_Trigger = 33; + /** native declaration : headers\openvr_capi.h:511 */ + public static final int EVRButtonId_k_EButton_Dashboard_Back = 2; + /** native declaration : headers\openvr_capi.h:512 */ + public static final int EVRButtonId_k_EButton_Max = 64; + }; + /** + * native declaration : headers\openvr_capi.h:518
    + * enum values + */ + public static interface EVRMouseButton { + /** native declaration : headers\openvr_capi.h:515 */ + public static final int EVRMouseButton_VRMouseButton_Left = 1; + /** native declaration : headers\openvr_capi.h:516 */ + public static final int EVRMouseButton_VRMouseButton_Right = 2; + /** native declaration : headers\openvr_capi.h:517 */ + public static final int EVRMouseButton_VRMouseButton_Middle = 4; + }; + /** + * native declaration : headers\openvr_capi.h:524
    + * enum values + */ + public static interface EHiddenAreaMeshType { + /** native declaration : headers\openvr_capi.h:520 */ + public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Standard = 0; + /** native declaration : headers\openvr_capi.h:521 */ + public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Inverse = 1; + /** native declaration : headers\openvr_capi.h:522 */ + public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_LineLoop = 2; + /** native declaration : headers\openvr_capi.h:523 */ + public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Max = 3; + }; + /** + * native declaration : headers\openvr_capi.h:530
    + * enum values + */ + public static interface EVRControllerAxisType { + /** native declaration : headers\openvr_capi.h:526 */ + public static final int EVRControllerAxisType_k_eControllerAxis_None = 0; + /** native declaration : headers\openvr_capi.h:527 */ + public static final int EVRControllerAxisType_k_eControllerAxis_TrackPad = 1; + /** native declaration : headers\openvr_capi.h:528 */ + public static final int EVRControllerAxisType_k_eControllerAxis_Joystick = 2; + /** native declaration : headers\openvr_capi.h:529 */ + public static final int EVRControllerAxisType_k_eControllerAxis_Trigger = 3; + }; + /** + * native declaration : headers\openvr_capi.h:534
    + * enum values + */ + public static interface EVRControllerEventOutputType { + /** native declaration : headers\openvr_capi.h:532 */ + public static final int EVRControllerEventOutputType_ControllerEventOutput_OSEvents = 0; + /** native declaration : headers\openvr_capi.h:533 */ + public static final int EVRControllerEventOutputType_ControllerEventOutput_VREvents = 1; + }; + /** + * native declaration : headers\openvr_capi.h:542
    + * enum values + */ + public static interface ECollisionBoundsStyle { + /** native declaration : headers\openvr_capi.h:536 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_BEGINNER = 0; + /** native declaration : headers\openvr_capi.h:537 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_INTERMEDIATE = 1; + /** native declaration : headers\openvr_capi.h:538 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_SQUARES = 2; + /** native declaration : headers\openvr_capi.h:539 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_ADVANCED = 3; + /** native declaration : headers\openvr_capi.h:540 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_NONE = 4; + /** native declaration : headers\openvr_capi.h:541 */ + public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_COUNT = 5; + }; + /** + * native declaration : headers\openvr_capi.h:565
    + * enum values + */ + public static interface EVROverlayError { + /** native declaration : headers\openvr_capi.h:544 */ + public static final int EVROverlayError_VROverlayError_None = 0; + /** native declaration : headers\openvr_capi.h:545 */ + public static final int EVROverlayError_VROverlayError_UnknownOverlay = 10; + /** native declaration : headers\openvr_capi.h:546 */ + public static final int EVROverlayError_VROverlayError_InvalidHandle = 11; + /** native declaration : headers\openvr_capi.h:547 */ + public static final int EVROverlayError_VROverlayError_PermissionDenied = 12; + /** native declaration : headers\openvr_capi.h:548 */ + public static final int EVROverlayError_VROverlayError_OverlayLimitExceeded = 13; + /** native declaration : headers\openvr_capi.h:549 */ + public static final int EVROverlayError_VROverlayError_WrongVisibilityType = 14; + /** native declaration : headers\openvr_capi.h:550 */ + public static final int EVROverlayError_VROverlayError_KeyTooLong = 15; + /** native declaration : headers\openvr_capi.h:551 */ + public static final int EVROverlayError_VROverlayError_NameTooLong = 16; + /** native declaration : headers\openvr_capi.h:552 */ + public static final int EVROverlayError_VROverlayError_KeyInUse = 17; + /** native declaration : headers\openvr_capi.h:553 */ + public static final int EVROverlayError_VROverlayError_WrongTransformType = 18; + /** native declaration : headers\openvr_capi.h:554 */ + public static final int EVROverlayError_VROverlayError_InvalidTrackedDevice = 19; + /** native declaration : headers\openvr_capi.h:555 */ + public static final int EVROverlayError_VROverlayError_InvalidParameter = 20; + /** native declaration : headers\openvr_capi.h:556 */ + public static final int EVROverlayError_VROverlayError_ThumbnailCantBeDestroyed = 21; + /** native declaration : headers\openvr_capi.h:557 */ + public static final int EVROverlayError_VROverlayError_ArrayTooSmall = 22; + /** native declaration : headers\openvr_capi.h:558 */ + public static final int EVROverlayError_VROverlayError_RequestFailed = 23; + /** native declaration : headers\openvr_capi.h:559 */ + public static final int EVROverlayError_VROverlayError_InvalidTexture = 24; + /** native declaration : headers\openvr_capi.h:560 */ + public static final int EVROverlayError_VROverlayError_UnableToLoadFile = 25; + /** native declaration : headers\openvr_capi.h:561 */ + public static final int EVROverlayError_VROverlayError_KeyboardAlreadyInUse = 26; + /** native declaration : headers\openvr_capi.h:562 */ + public static final int EVROverlayError_VROverlayError_NoNeighbor = 27; + /** native declaration : headers\openvr_capi.h:563 */ + public static final int EVROverlayError_VROverlayError_TooManyMaskPrimitives = 29; + /** native declaration : headers\openvr_capi.h:564 */ + public static final int EVROverlayError_VROverlayError_BadMaskPrimitive = 30; + }; + /** + * native declaration : headers\openvr_capi.h:576
    + * enum values + */ + public static interface EVRApplicationType { + /** native declaration : headers\openvr_capi.h:567 */ + public static final int EVRApplicationType_VRApplication_Other = 0; + /** native declaration : headers\openvr_capi.h:568 */ + public static final int EVRApplicationType_VRApplication_Scene = 1; + /** native declaration : headers\openvr_capi.h:569 */ + public static final int EVRApplicationType_VRApplication_Overlay = 2; + /** native declaration : headers\openvr_capi.h:570 */ + public static final int EVRApplicationType_VRApplication_Background = 3; + /** native declaration : headers\openvr_capi.h:571 */ + public static final int EVRApplicationType_VRApplication_Utility = 4; + /** native declaration : headers\openvr_capi.h:572 */ + public static final int EVRApplicationType_VRApplication_VRMonitor = 5; + /** native declaration : headers\openvr_capi.h:573 */ + public static final int EVRApplicationType_VRApplication_SteamWatchdog = 6; + /** native declaration : headers\openvr_capi.h:574 */ + public static final int EVRApplicationType_VRApplication_Bootstrapper = 7; + /** native declaration : headers\openvr_capi.h:575 */ + public static final int EVRApplicationType_VRApplication_Max = 8; + }; + /** + * native declaration : headers\openvr_capi.h:581
    + * enum values + */ + public static interface EVRFirmwareError { + /** native declaration : headers\openvr_capi.h:578 */ + public static final int EVRFirmwareError_VRFirmwareError_None = 0; + /** native declaration : headers\openvr_capi.h:579 */ + public static final int EVRFirmwareError_VRFirmwareError_Success = 1; + /** native declaration : headers\openvr_capi.h:580 */ + public static final int EVRFirmwareError_VRFirmwareError_Fail = 2; + }; + /** + * native declaration : headers\openvr_capi.h:588
    + * enum values + */ + public static interface EVRNotificationError { + /** native declaration : headers\openvr_capi.h:583 */ + public static final int EVRNotificationError_VRNotificationError_OK = 0; + /** native declaration : headers\openvr_capi.h:584 */ + public static final int EVRNotificationError_VRNotificationError_InvalidNotificationId = 100; + /** native declaration : headers\openvr_capi.h:585 */ + public static final int EVRNotificationError_VRNotificationError_NotificationQueueFull = 101; + /** native declaration : headers\openvr_capi.h:586 */ + public static final int EVRNotificationError_VRNotificationError_InvalidOverlayHandle = 102; + /** native declaration : headers\openvr_capi.h:587 */ + public static final int EVRNotificationError_VRNotificationError_SystemWithUserValueAlreadyExists = 103; + }; + /** + * native declaration : headers\openvr_capi.h:671
    + * enum values + */ + public static interface EVRInitError { + /** native declaration : headers\openvr_capi.h:590 */ + public static final int EVRInitError_VRInitError_None = 0; + /** native declaration : headers\openvr_capi.h:591 */ + public static final int EVRInitError_VRInitError_Unknown = 1; + /** native declaration : headers\openvr_capi.h:592 */ + public static final int EVRInitError_VRInitError_Init_InstallationNotFound = 100; + /** native declaration : headers\openvr_capi.h:593 */ + public static final int EVRInitError_VRInitError_Init_InstallationCorrupt = 101; + /** native declaration : headers\openvr_capi.h:594 */ + public static final int EVRInitError_VRInitError_Init_VRClientDLLNotFound = 102; + /** native declaration : headers\openvr_capi.h:595 */ + public static final int EVRInitError_VRInitError_Init_FileNotFound = 103; + /** native declaration : headers\openvr_capi.h:596 */ + public static final int EVRInitError_VRInitError_Init_FactoryNotFound = 104; + /** native declaration : headers\openvr_capi.h:597 */ + public static final int EVRInitError_VRInitError_Init_InterfaceNotFound = 105; + /** native declaration : headers\openvr_capi.h:598 */ + public static final int EVRInitError_VRInitError_Init_InvalidInterface = 106; + /** native declaration : headers\openvr_capi.h:599 */ + public static final int EVRInitError_VRInitError_Init_UserConfigDirectoryInvalid = 107; + /** native declaration : headers\openvr_capi.h:600 */ + public static final int EVRInitError_VRInitError_Init_HmdNotFound = 108; + /** native declaration : headers\openvr_capi.h:601 */ + public static final int EVRInitError_VRInitError_Init_NotInitialized = 109; + /** native declaration : headers\openvr_capi.h:602 */ + public static final int EVRInitError_VRInitError_Init_PathRegistryNotFound = 110; + /** native declaration : headers\openvr_capi.h:603 */ + public static final int EVRInitError_VRInitError_Init_NoConfigPath = 111; + /** native declaration : headers\openvr_capi.h:604 */ + public static final int EVRInitError_VRInitError_Init_NoLogPath = 112; + /** native declaration : headers\openvr_capi.h:605 */ + public static final int EVRInitError_VRInitError_Init_PathRegistryNotWritable = 113; + /** native declaration : headers\openvr_capi.h:606 */ + public static final int EVRInitError_VRInitError_Init_AppInfoInitFailed = 114; + /** native declaration : headers\openvr_capi.h:607 */ + public static final int EVRInitError_VRInitError_Init_Retry = 115; + /** native declaration : headers\openvr_capi.h:608 */ + public static final int EVRInitError_VRInitError_Init_InitCanceledByUser = 116; + /** native declaration : headers\openvr_capi.h:609 */ + public static final int EVRInitError_VRInitError_Init_AnotherAppLaunching = 117; + /** native declaration : headers\openvr_capi.h:610 */ + public static final int EVRInitError_VRInitError_Init_SettingsInitFailed = 118; + /** native declaration : headers\openvr_capi.h:611 */ + public static final int EVRInitError_VRInitError_Init_ShuttingDown = 119; + /** native declaration : headers\openvr_capi.h:612 */ + public static final int EVRInitError_VRInitError_Init_TooManyObjects = 120; + /** native declaration : headers\openvr_capi.h:613 */ + public static final int EVRInitError_VRInitError_Init_NoServerForBackgroundApp = 121; + /** native declaration : headers\openvr_capi.h:614 */ + public static final int EVRInitError_VRInitError_Init_NotSupportedWithCompositor = 122; + /** native declaration : headers\openvr_capi.h:615 */ + public static final int EVRInitError_VRInitError_Init_NotAvailableToUtilityApps = 123; + /** native declaration : headers\openvr_capi.h:616 */ + public static final int EVRInitError_VRInitError_Init_Internal = 124; + /** native declaration : headers\openvr_capi.h:617 */ + public static final int EVRInitError_VRInitError_Init_HmdDriverIdIsNone = 125; + /** native declaration : headers\openvr_capi.h:618 */ + public static final int EVRInitError_VRInitError_Init_HmdNotFoundPresenceFailed = 126; + /** native declaration : headers\openvr_capi.h:619 */ + public static final int EVRInitError_VRInitError_Init_VRMonitorNotFound = 127; + /** native declaration : headers\openvr_capi.h:620 */ + public static final int EVRInitError_VRInitError_Init_VRMonitorStartupFailed = 128; + /** native declaration : headers\openvr_capi.h:621 */ + public static final int EVRInitError_VRInitError_Init_LowPowerWatchdogNotSupported = 129; + /** native declaration : headers\openvr_capi.h:622 */ + public static final int EVRInitError_VRInitError_Init_InvalidApplicationType = 130; + /** native declaration : headers\openvr_capi.h:623 */ + public static final int EVRInitError_VRInitError_Init_NotAvailableToWatchdogApps = 131; + /** native declaration : headers\openvr_capi.h:624 */ + public static final int EVRInitError_VRInitError_Init_WatchdogDisabledInSettings = 132; + /** native declaration : headers\openvr_capi.h:625 */ + public static final int EVRInitError_VRInitError_Init_VRDashboardNotFound = 133; + /** native declaration : headers\openvr_capi.h:626 */ + public static final int EVRInitError_VRInitError_Init_VRDashboardStartupFailed = 134; + /** native declaration : headers\openvr_capi.h:627 */ + public static final int EVRInitError_VRInitError_Init_VRHomeNotFound = 135; + /** native declaration : headers\openvr_capi.h:628 */ + public static final int EVRInitError_VRInitError_Init_VRHomeStartupFailed = 136; + /** native declaration : headers\openvr_capi.h:629 */ + public static final int EVRInitError_VRInitError_Driver_Failed = 200; + /** native declaration : headers\openvr_capi.h:630 */ + public static final int EVRInitError_VRInitError_Driver_Unknown = 201; + /** native declaration : headers\openvr_capi.h:631 */ + public static final int EVRInitError_VRInitError_Driver_HmdUnknown = 202; + /** native declaration : headers\openvr_capi.h:632 */ + public static final int EVRInitError_VRInitError_Driver_NotLoaded = 203; + /** native declaration : headers\openvr_capi.h:633 */ + public static final int EVRInitError_VRInitError_Driver_RuntimeOutOfDate = 204; + /** native declaration : headers\openvr_capi.h:634 */ + public static final int EVRInitError_VRInitError_Driver_HmdInUse = 205; + /** native declaration : headers\openvr_capi.h:635 */ + public static final int EVRInitError_VRInitError_Driver_NotCalibrated = 206; + /** native declaration : headers\openvr_capi.h:636 */ + public static final int EVRInitError_VRInitError_Driver_CalibrationInvalid = 207; + /** native declaration : headers\openvr_capi.h:637 */ + public static final int EVRInitError_VRInitError_Driver_HmdDisplayNotFound = 208; + /** native declaration : headers\openvr_capi.h:638 */ + public static final int EVRInitError_VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209; + /** native declaration : headers\openvr_capi.h:639 */ + public static final int EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds = 211; + /** native declaration : headers\openvr_capi.h:640 */ + public static final int EVRInitError_VRInitError_Driver_HmdDisplayMirrored = 212; + /** native declaration : headers\openvr_capi.h:641 */ + public static final int EVRInitError_VRInitError_IPC_ServerInitFailed = 300; + /** native declaration : headers\openvr_capi.h:642 */ + public static final int EVRInitError_VRInitError_IPC_ConnectFailed = 301; + /** native declaration : headers\openvr_capi.h:643 */ + public static final int EVRInitError_VRInitError_IPC_SharedStateInitFailed = 302; + /** native declaration : headers\openvr_capi.h:644 */ + public static final int EVRInitError_VRInitError_IPC_CompositorInitFailed = 303; + /** native declaration : headers\openvr_capi.h:645 */ + public static final int EVRInitError_VRInitError_IPC_MutexInitFailed = 304; + /** native declaration : headers\openvr_capi.h:646 */ + public static final int EVRInitError_VRInitError_IPC_Failed = 305; + /** native declaration : headers\openvr_capi.h:647 */ + public static final int EVRInitError_VRInitError_IPC_CompositorConnectFailed = 306; + /** native declaration : headers\openvr_capi.h:648 */ + public static final int EVRInitError_VRInitError_IPC_CompositorInvalidConnectResponse = 307; + /** native declaration : headers\openvr_capi.h:649 */ + public static final int EVRInitError_VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308; + /** native declaration : headers\openvr_capi.h:650 */ + public static final int EVRInitError_VRInitError_Compositor_Failed = 400; + /** native declaration : headers\openvr_capi.h:651 */ + public static final int EVRInitError_VRInitError_Compositor_D3D11HardwareRequired = 401; + /** native declaration : headers\openvr_capi.h:652 */ + public static final int EVRInitError_VRInitError_Compositor_FirmwareRequiresUpdate = 402; + /** native declaration : headers\openvr_capi.h:653 */ + public static final int EVRInitError_VRInitError_Compositor_OverlayInitFailed = 403; + /** native declaration : headers\openvr_capi.h:654 */ + public static final int EVRInitError_VRInitError_Compositor_ScreenshotsInitFailed = 404; + /** native declaration : headers\openvr_capi.h:655 */ + public static final int EVRInitError_VRInitError_Compositor_UnableToCreateDevice = 405; + /** native declaration : headers\openvr_capi.h:656 */ + public static final int EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000; + /** native declaration : headers\openvr_capi.h:657 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101; + /** native declaration : headers\openvr_capi.h:658 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102; + /** native declaration : headers\openvr_capi.h:659 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103; + /** native declaration : headers\openvr_capi.h:660 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104; + /** native declaration : headers\openvr_capi.h:661 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105; + /** native declaration : headers\openvr_capi.h:662 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106; + /** native declaration : headers\openvr_capi.h:663 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107; + /** native declaration : headers\openvr_capi.h:664 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108; + /** native declaration : headers\openvr_capi.h:665 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109; + /** native declaration : headers\openvr_capi.h:666 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110; + /** native declaration : headers\openvr_capi.h:667 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111; + /** native declaration : headers\openvr_capi.h:668 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError = 1112; + /** native declaration : headers\openvr_capi.h:669 */ + public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113; + /** native declaration : headers\openvr_capi.h:670 */ + public static final int EVRInitError_VRInitError_Steam_SteamInstallationNotFound = 2000; + }; + /** + * native declaration : headers\openvr_capi.h:679
    + * enum values + */ + public static interface EVRScreenshotType { + /** native declaration : headers\openvr_capi.h:673 */ + public static final int EVRScreenshotType_VRScreenshotType_None = 0; + /** native declaration : headers\openvr_capi.h:674 */ + public static final int EVRScreenshotType_VRScreenshotType_Mono = 1; + /** native declaration : headers\openvr_capi.h:675 */ + public static final int EVRScreenshotType_VRScreenshotType_Stereo = 2; + /** native declaration : headers\openvr_capi.h:676 */ + public static final int EVRScreenshotType_VRScreenshotType_Cubemap = 3; + /** native declaration : headers\openvr_capi.h:677 */ + public static final int EVRScreenshotType_VRScreenshotType_MonoPanorama = 4; + /** native declaration : headers\openvr_capi.h:678 */ + public static final int EVRScreenshotType_VRScreenshotType_StereoPanorama = 5; + }; + /** + * native declaration : headers\openvr_capi.h:683
    + * enum values + */ + public static interface EVRScreenshotPropertyFilenames { + /** native declaration : headers\openvr_capi.h:681 */ + public static final int EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_Preview = 0; + /** native declaration : headers\openvr_capi.h:682 */ + public static final int EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_VR = 1; + }; + /** + * native declaration : headers\openvr_capi.h:702
    + * enum values + */ + public static interface EVRTrackedCameraError { + /** native declaration : headers\openvr_capi.h:685 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_None = 0; + /** native declaration : headers\openvr_capi.h:686 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_OperationFailed = 100; + /** native declaration : headers\openvr_capi.h:687 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidHandle = 101; + /** native declaration : headers\openvr_capi.h:688 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameHeaderVersion = 102; + /** native declaration : headers\openvr_capi.h:689 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_OutOfHandles = 103; + /** native declaration : headers\openvr_capi.h:690 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_IPCFailure = 104; + /** native declaration : headers\openvr_capi.h:691 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_NotSupportedForThisDevice = 105; + /** native declaration : headers\openvr_capi.h:692 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_SharedMemoryFailure = 106; + /** native declaration : headers\openvr_capi.h:693 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_FrameBufferingFailure = 107; + /** native declaration : headers\openvr_capi.h:694 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_StreamSetupFailure = 108; + /** native declaration : headers\openvr_capi.h:695 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidGLTextureId = 109; + /** native declaration : headers\openvr_capi.h:696 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidSharedTextureHandle = 110; + /** native declaration : headers\openvr_capi.h:697 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_FailedToGetGLTextureId = 111; + /** native declaration : headers\openvr_capi.h:698 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_SharedTextureFailure = 112; + /** native declaration : headers\openvr_capi.h:699 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_NoFrameAvailable = 113; + /** native declaration : headers\openvr_capi.h:700 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidArgument = 114; + /** native declaration : headers\openvr_capi.h:701 */ + public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameBufferSize = 115; + }; + /** + * native declaration : headers\openvr_capi.h:708
    + * enum values + */ + public static interface EVRTrackedCameraFrameType { + /** native declaration : headers\openvr_capi.h:704 */ + public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Distorted = 0; + /** native declaration : headers\openvr_capi.h:705 */ + public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Undistorted = 1; + /** native declaration : headers\openvr_capi.h:706 */ + public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_MaximumUndistorted = 2; + /** native declaration : headers\openvr_capi.h:707 */ + public static final int EVRTrackedCameraFrameType_MAX_CAMERA_FRAME_TYPES = 3; + }; + /** + * native declaration : headers\openvr_capi.h:731
    + * enum values + */ + public static interface EVRApplicationError { + /** native declaration : headers\openvr_capi.h:710 */ + public static final int EVRApplicationError_VRApplicationError_None = 0; + /** native declaration : headers\openvr_capi.h:711 */ + public static final int EVRApplicationError_VRApplicationError_AppKeyAlreadyExists = 100; + /** native declaration : headers\openvr_capi.h:712 */ + public static final int EVRApplicationError_VRApplicationError_NoManifest = 101; + /** native declaration : headers\openvr_capi.h:713 */ + public static final int EVRApplicationError_VRApplicationError_NoApplication = 102; + /** native declaration : headers\openvr_capi.h:714 */ + public static final int EVRApplicationError_VRApplicationError_InvalidIndex = 103; + /** native declaration : headers\openvr_capi.h:715 */ + public static final int EVRApplicationError_VRApplicationError_UnknownApplication = 104; + /** native declaration : headers\openvr_capi.h:716 */ + public static final int EVRApplicationError_VRApplicationError_IPCFailed = 105; + /** native declaration : headers\openvr_capi.h:717 */ + public static final int EVRApplicationError_VRApplicationError_ApplicationAlreadyRunning = 106; + /** native declaration : headers\openvr_capi.h:718 */ + public static final int EVRApplicationError_VRApplicationError_InvalidManifest = 107; + /** native declaration : headers\openvr_capi.h:719 */ + public static final int EVRApplicationError_VRApplicationError_InvalidApplication = 108; + /** native declaration : headers\openvr_capi.h:720 */ + public static final int EVRApplicationError_VRApplicationError_LaunchFailed = 109; + /** native declaration : headers\openvr_capi.h:721 */ + public static final int EVRApplicationError_VRApplicationError_ApplicationAlreadyStarting = 110; + /** native declaration : headers\openvr_capi.h:722 */ + public static final int EVRApplicationError_VRApplicationError_LaunchInProgress = 111; + /** native declaration : headers\openvr_capi.h:723 */ + public static final int EVRApplicationError_VRApplicationError_OldApplicationQuitting = 112; + /** native declaration : headers\openvr_capi.h:724 */ + public static final int EVRApplicationError_VRApplicationError_TransitionAborted = 113; + /** native declaration : headers\openvr_capi.h:725 */ + public static final int EVRApplicationError_VRApplicationError_IsTemplate = 114; + /** native declaration : headers\openvr_capi.h:726 */ + public static final int EVRApplicationError_VRApplicationError_SteamVRIsExiting = 115; + /** native declaration : headers\openvr_capi.h:727 */ + public static final int EVRApplicationError_VRApplicationError_BufferTooSmall = 200; + /** native declaration : headers\openvr_capi.h:728 */ + public static final int EVRApplicationError_VRApplicationError_PropertyNotSet = 201; + /** native declaration : headers\openvr_capi.h:729 */ + public static final int EVRApplicationError_VRApplicationError_UnknownProperty = 202; + /** native declaration : headers\openvr_capi.h:730 */ + public static final int EVRApplicationError_VRApplicationError_InvalidParameter = 203; + }; + /** + * native declaration : headers\openvr_capi.h:749
    + * enum values + */ + public static interface EVRApplicationProperty { + /** native declaration : headers\openvr_capi.h:733 */ + public static final int EVRApplicationProperty_VRApplicationProperty_Name_String = 0; + /** native declaration : headers\openvr_capi.h:734 */ + public static final int EVRApplicationProperty_VRApplicationProperty_LaunchType_String = 11; + /** native declaration : headers\openvr_capi.h:735 */ + public static final int EVRApplicationProperty_VRApplicationProperty_WorkingDirectory_String = 12; + /** native declaration : headers\openvr_capi.h:736 */ + public static final int EVRApplicationProperty_VRApplicationProperty_BinaryPath_String = 13; + /** native declaration : headers\openvr_capi.h:737 */ + public static final int EVRApplicationProperty_VRApplicationProperty_Arguments_String = 14; + /** native declaration : headers\openvr_capi.h:738 */ + public static final int EVRApplicationProperty_VRApplicationProperty_URL_String = 15; + /** native declaration : headers\openvr_capi.h:739 */ + public static final int EVRApplicationProperty_VRApplicationProperty_Description_String = 50; + /** native declaration : headers\openvr_capi.h:740 */ + public static final int EVRApplicationProperty_VRApplicationProperty_NewsURL_String = 51; + /** native declaration : headers\openvr_capi.h:741 */ + public static final int EVRApplicationProperty_VRApplicationProperty_ImagePath_String = 52; + /** native declaration : headers\openvr_capi.h:742 */ + public static final int EVRApplicationProperty_VRApplicationProperty_Source_String = 53; + /** native declaration : headers\openvr_capi.h:743 */ + public static final int EVRApplicationProperty_VRApplicationProperty_IsDashboardOverlay_Bool = 60; + /** native declaration : headers\openvr_capi.h:744 */ + public static final int EVRApplicationProperty_VRApplicationProperty_IsTemplate_Bool = 61; + /** native declaration : headers\openvr_capi.h:745 */ + public static final int EVRApplicationProperty_VRApplicationProperty_IsInstanced_Bool = 62; + /** native declaration : headers\openvr_capi.h:746 */ + public static final int EVRApplicationProperty_VRApplicationProperty_IsInternal_Bool = 63; + /** native declaration : headers\openvr_capi.h:747 */ + public static final int EVRApplicationProperty_VRApplicationProperty_WantsCompositorPauseInStandby_Bool = 64; + /** native declaration : headers\openvr_capi.h:748 */ + public static final int EVRApplicationProperty_VRApplicationProperty_LastLaunchTime_Uint64 = 70; + }; + /** + * native declaration : headers\openvr_capi.h:755
    + * enum values + */ + public static interface EVRApplicationTransitionState { + /** native declaration : headers\openvr_capi.h:751 */ + public static final int EVRApplicationTransitionState_VRApplicationTransition_None = 0; + /** native declaration : headers\openvr_capi.h:752 */ + public static final int EVRApplicationTransitionState_VRApplicationTransition_OldAppQuitSent = 10; + /** native declaration : headers\openvr_capi.h:753 */ + public static final int EVRApplicationTransitionState_VRApplicationTransition_WaitingForExternalLaunch = 11; + /** native declaration : headers\openvr_capi.h:754 */ + public static final int EVRApplicationTransitionState_VRApplicationTransition_NewAppLaunched = 20; + }; + /** + * native declaration : headers\openvr_capi.h:767
    + * enum values + */ + public static interface ChaperoneCalibrationState { + /** native declaration : headers\openvr_capi.h:757 */ + public static final int ChaperoneCalibrationState_OK = 1; + /** native declaration : headers\openvr_capi.h:758 */ + public static final int ChaperoneCalibrationState_Warning = 100; + /** native declaration : headers\openvr_capi.h:759 */ + public static final int ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved = 101; + /** native declaration : headers\openvr_capi.h:760 */ + public static final int ChaperoneCalibrationState_Warning_BaseStationRemoved = 102; + /** native declaration : headers\openvr_capi.h:761 */ + public static final int ChaperoneCalibrationState_Warning_SeatedBoundsInvalid = 103; + /** native declaration : headers\openvr_capi.h:762 */ + public static final int ChaperoneCalibrationState_Error = 200; + /** native declaration : headers\openvr_capi.h:763 */ + public static final int ChaperoneCalibrationState_Error_BaseStationUninitialized = 201; + /** native declaration : headers\openvr_capi.h:764 */ + public static final int ChaperoneCalibrationState_Error_BaseStationConflict = 202; + /** native declaration : headers\openvr_capi.h:765 */ + public static final int ChaperoneCalibrationState_Error_PlayAreaInvalid = 203; + /** native declaration : headers\openvr_capi.h:766 */ + public static final int ChaperoneCalibrationState_Error_CollisionBoundsInvalid = 204; + }; + /** + * native declaration : headers\openvr_capi.h:771
    + * enum values + */ + public static interface EChaperoneConfigFile { + /** native declaration : headers\openvr_capi.h:769 */ + public static final int EChaperoneConfigFile_Live = 1; + /** native declaration : headers\openvr_capi.h:770 */ + public static final int EChaperoneConfigFile_Temp = 2; + }; + /** + * native declaration : headers\openvr_capi.h:774
    + * enum values + */ + public static interface EChaperoneImportFlags { + /** native declaration : headers\openvr_capi.h:773 */ + public static final int EChaperoneImportFlags_EChaperoneImport_BoundsOnly = 1; + }; + /** + * native declaration : headers\openvr_capi.h:788
    + * enum values + */ + public static interface EVRCompositorError { + /** native declaration : headers\openvr_capi.h:776 */ + public static final int EVRCompositorError_VRCompositorError_None = 0; + /** native declaration : headers\openvr_capi.h:777 */ + public static final int EVRCompositorError_VRCompositorError_RequestFailed = 1; + /** native declaration : headers\openvr_capi.h:778 */ + public static final int EVRCompositorError_VRCompositorError_IncompatibleVersion = 100; + /** native declaration : headers\openvr_capi.h:779 */ + public static final int EVRCompositorError_VRCompositorError_DoNotHaveFocus = 101; + /** native declaration : headers\openvr_capi.h:780 */ + public static final int EVRCompositorError_VRCompositorError_InvalidTexture = 102; + /** native declaration : headers\openvr_capi.h:781 */ + public static final int EVRCompositorError_VRCompositorError_IsNotSceneApplication = 103; + /** native declaration : headers\openvr_capi.h:782 */ + public static final int EVRCompositorError_VRCompositorError_TextureIsOnWrongDevice = 104; + /** native declaration : headers\openvr_capi.h:783 */ + public static final int EVRCompositorError_VRCompositorError_TextureUsesUnsupportedFormat = 105; + /** native declaration : headers\openvr_capi.h:784 */ + public static final int EVRCompositorError_VRCompositorError_SharedTexturesNotSupported = 106; + /** native declaration : headers\openvr_capi.h:785 */ + public static final int EVRCompositorError_VRCompositorError_IndexOutOfRange = 107; + /** native declaration : headers\openvr_capi.h:786 */ + public static final int EVRCompositorError_VRCompositorError_AlreadySubmitted = 108; + /** native declaration : headers\openvr_capi.h:787 */ + public static final int EVRCompositorError_VRCompositorError_InvalidBounds = 109; + }; + /** + * native declaration : headers\openvr_capi.h:792
    + * enum values + */ + public static interface VROverlayInputMethod { + /** native declaration : headers\openvr_capi.h:790 */ + public static final int VROverlayInputMethod_None = 0; + /** native declaration : headers\openvr_capi.h:791 */ + public static final int VROverlayInputMethod_Mouse = 1; + }; + /** + * native declaration : headers\openvr_capi.h:798
    + * enum values + */ + public static interface VROverlayTransformType { + /** native declaration : headers\openvr_capi.h:794 */ + public static final int VROverlayTransformType_VROverlayTransform_Absolute = 0; + /** native declaration : headers\openvr_capi.h:795 */ + public static final int VROverlayTransformType_VROverlayTransform_TrackedDeviceRelative = 1; + /** native declaration : headers\openvr_capi.h:796 */ + public static final int VROverlayTransformType_VROverlayTransform_SystemOverlay = 2; + /** native declaration : headers\openvr_capi.h:797 */ + public static final int VROverlayTransformType_VROverlayTransform_TrackedComponent = 3; + }; + /** + * native declaration : headers\openvr_capi.h:816
    + * enum values + */ + public static interface VROverlayFlags { + /** native declaration : headers\openvr_capi.h:800 */ + public static final int VROverlayFlags_None = 0; + /** native declaration : headers\openvr_capi.h:801 */ + public static final int VROverlayFlags_Curved = 1; + /** native declaration : headers\openvr_capi.h:802 */ + public static final int VROverlayFlags_RGSS4X = 2; + /** native declaration : headers\openvr_capi.h:803 */ + public static final int VROverlayFlags_NoDashboardTab = 3; + /** native declaration : headers\openvr_capi.h:804 */ + public static final int VROverlayFlags_AcceptsGamepadEvents = 4; + /** native declaration : headers\openvr_capi.h:805 */ + public static final int VROverlayFlags_ShowGamepadFocus = 5; + /** native declaration : headers\openvr_capi.h:806 */ + public static final int VROverlayFlags_SendVRScrollEvents = 6; + /** native declaration : headers\openvr_capi.h:807 */ + public static final int VROverlayFlags_SendVRTouchpadEvents = 7; + /** native declaration : headers\openvr_capi.h:808 */ + public static final int VROverlayFlags_ShowTouchPadScrollWheel = 8; + /** native declaration : headers\openvr_capi.h:809 */ + public static final int VROverlayFlags_TransferOwnershipToInternalProcess = 9; + /** native declaration : headers\openvr_capi.h:810 */ + public static final int VROverlayFlags_SideBySide_Parallel = 10; + /** native declaration : headers\openvr_capi.h:811 */ + public static final int VROverlayFlags_SideBySide_Crossed = 11; + /** native declaration : headers\openvr_capi.h:812 */ + public static final int VROverlayFlags_Panorama = 12; + /** native declaration : headers\openvr_capi.h:813 */ + public static final int VROverlayFlags_StereoPanorama = 13; + /** native declaration : headers\openvr_capi.h:814 */ + public static final int VROverlayFlags_SortWithNonSceneOverlays = 14; + /** native declaration : headers\openvr_capi.h:815 */ + public static final int VROverlayFlags_VisibleInDashboard = 15; + }; + /** + * native declaration : headers\openvr_capi.h:825
    + * enum values + */ + public static interface VRMessageOverlayResponse { + /** native declaration : headers\openvr_capi.h:818 */ + public static final int VRMessageOverlayResponse_ButtonPress_0 = 0; + /** native declaration : headers\openvr_capi.h:819 */ + public static final int VRMessageOverlayResponse_ButtonPress_1 = 1; + /** native declaration : headers\openvr_capi.h:820 */ + public static final int VRMessageOverlayResponse_ButtonPress_2 = 2; + /** native declaration : headers\openvr_capi.h:821 */ + public static final int VRMessageOverlayResponse_ButtonPress_3 = 3; + /** native declaration : headers\openvr_capi.h:822 */ + public static final int VRMessageOverlayResponse_CouldntFindSystemOverlay = 4; + /** native declaration : headers\openvr_capi.h:823 */ + public static final int VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay = 5; + /** native declaration : headers\openvr_capi.h:824 */ + public static final int VRMessageOverlayResponse_ApplicationQuit = 6; + }; + /** + * native declaration : headers\openvr_capi.h:830
    + * enum values + */ + public static interface EGamepadTextInputMode { + /** native declaration : headers\openvr_capi.h:827 */ + public static final int EGamepadTextInputMode_k_EGamepadTextInputModeNormal = 0; + /** native declaration : headers\openvr_capi.h:828 */ + public static final int EGamepadTextInputMode_k_EGamepadTextInputModePassword = 1; + /** native declaration : headers\openvr_capi.h:829 */ + public static final int EGamepadTextInputMode_k_EGamepadTextInputModeSubmit = 2; + }; + /** + * native declaration : headers\openvr_capi.h:834
    + * enum values + */ + public static interface EGamepadTextInputLineMode { + /** native declaration : headers\openvr_capi.h:832 */ + public static final int EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine = 0; + /** native declaration : headers\openvr_capi.h:833 */ + public static final int EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines = 1; + }; + /** + * native declaration : headers\openvr_capi.h:841
    + * enum values + */ + public static interface EOverlayDirection { + /** native declaration : headers\openvr_capi.h:836 */ + public static final int EOverlayDirection_OverlayDirection_Up = 0; + /** native declaration : headers\openvr_capi.h:837 */ + public static final int EOverlayDirection_OverlayDirection_Down = 1; + /** native declaration : headers\openvr_capi.h:838 */ + public static final int EOverlayDirection_OverlayDirection_Left = 2; + /** native declaration : headers\openvr_capi.h:839 */ + public static final int EOverlayDirection_OverlayDirection_Right = 3; + /** native declaration : headers\openvr_capi.h:840 */ + public static final int EOverlayDirection_OverlayDirection_Count = 4; + }; + /** + * native declaration : headers\openvr_capi.h:845
    + * enum values + */ + public static interface EVROverlayIntersectionMaskPrimitiveType { + /** native declaration : headers\openvr_capi.h:843 */ + public static final int EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Rectangle = 0; + /** native declaration : headers\openvr_capi.h:844 */ + public static final int EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Circle = 1; + }; + /** + * native declaration : headers\openvr_capi.h:860
    + * enum values + */ + public static interface EVRRenderModelError { + /** native declaration : headers\openvr_capi.h:847 */ + public static final int EVRRenderModelError_VRRenderModelError_None = 0; + /** native declaration : headers\openvr_capi.h:848 */ + public static final int EVRRenderModelError_VRRenderModelError_Loading = 100; + /** native declaration : headers\openvr_capi.h:849 */ + public static final int EVRRenderModelError_VRRenderModelError_NotSupported = 200; + /** native declaration : headers\openvr_capi.h:850 */ + public static final int EVRRenderModelError_VRRenderModelError_InvalidArg = 300; + /** native declaration : headers\openvr_capi.h:851 */ + public static final int EVRRenderModelError_VRRenderModelError_InvalidModel = 301; + /** native declaration : headers\openvr_capi.h:852 */ + public static final int EVRRenderModelError_VRRenderModelError_NoShapes = 302; + /** native declaration : headers\openvr_capi.h:853 */ + public static final int EVRRenderModelError_VRRenderModelError_MultipleShapes = 303; + /** native declaration : headers\openvr_capi.h:854 */ + public static final int EVRRenderModelError_VRRenderModelError_TooManyVertices = 304; + /** native declaration : headers\openvr_capi.h:855 */ + public static final int EVRRenderModelError_VRRenderModelError_MultipleTextures = 305; + /** native declaration : headers\openvr_capi.h:856 */ + public static final int EVRRenderModelError_VRRenderModelError_BufferTooSmall = 306; + /** native declaration : headers\openvr_capi.h:857 */ + public static final int EVRRenderModelError_VRRenderModelError_NotEnoughNormals = 307; + /** native declaration : headers\openvr_capi.h:858 */ + public static final int EVRRenderModelError_VRRenderModelError_NotEnoughTexCoords = 308; + /** native declaration : headers\openvr_capi.h:859 */ + public static final int EVRRenderModelError_VRRenderModelError_InvalidTexture = 400; + }; + /** + * native declaration : headers\openvr_capi.h:867
    + * enum values + */ + public static interface EVRComponentProperty { + /** native declaration : headers\openvr_capi.h:862 */ + public static final int EVRComponentProperty_VRComponentProperty_IsStatic = 1; + /** native declaration : headers\openvr_capi.h:863 */ + public static final int EVRComponentProperty_VRComponentProperty_IsVisible = 2; + /** native declaration : headers\openvr_capi.h:864 */ + public static final int EVRComponentProperty_VRComponentProperty_IsTouched = 4; + /** native declaration : headers\openvr_capi.h:865 */ + public static final int EVRComponentProperty_VRComponentProperty_IsPressed = 8; + /** native declaration : headers\openvr_capi.h:866 */ + public static final int EVRComponentProperty_VRComponentProperty_IsScrolled = 16; + }; + /** + * native declaration : headers\openvr_capi.h:872
    + * enum values + */ + public static interface EVRNotificationType { + /** native declaration : headers\openvr_capi.h:869 */ + public static final int EVRNotificationType_Transient = 0; + /** native declaration : headers\openvr_capi.h:870 */ + public static final int EVRNotificationType_Persistent = 1; + /** native declaration : headers\openvr_capi.h:871 */ + public static final int EVRNotificationType_Transient_SystemWithUserValue = 2; + }; + /** + * native declaration : headers\openvr_capi.h:879
    + * enum values + */ + public static interface EVRNotificationStyle { + /** native declaration : headers\openvr_capi.h:874 */ + public static final int EVRNotificationStyle_None = 0; + /** native declaration : headers\openvr_capi.h:875 */ + public static final int EVRNotificationStyle_Application = 100; + /** native declaration : headers\openvr_capi.h:876 */ + public static final int EVRNotificationStyle_Contact_Disabled = 200; + /** native declaration : headers\openvr_capi.h:877 */ + public static final int EVRNotificationStyle_Contact_Enabled = 201; + /** native declaration : headers\openvr_capi.h:878 */ + public static final int EVRNotificationStyle_Contact_Active = 202; + }; + /** + * native declaration : headers\openvr_capi.h:887
    + * enum values + */ + public static interface EVRSettingsError { + /** native declaration : headers\openvr_capi.h:881 */ + public static final int EVRSettingsError_VRSettingsError_None = 0; + /** native declaration : headers\openvr_capi.h:882 */ + public static final int EVRSettingsError_VRSettingsError_IPCFailed = 1; + /** native declaration : headers\openvr_capi.h:883 */ + public static final int EVRSettingsError_VRSettingsError_WriteFailed = 2; + /** native declaration : headers\openvr_capi.h:884 */ + public static final int EVRSettingsError_VRSettingsError_ReadFailed = 3; + /** native declaration : headers\openvr_capi.h:885 */ + public static final int EVRSettingsError_VRSettingsError_JsonParseFailed = 4; + /** native declaration : headers\openvr_capi.h:886 */ + public static final int EVRSettingsError_VRSettingsError_UnsetSettingHasNoDefault = 5; + }; + /** + * native declaration : headers\openvr_capi.h:895
    + * enum values + */ + public static interface EVRScreenshotError { + /** native declaration : headers\openvr_capi.h:889 */ + public static final int EVRScreenshotError_VRScreenshotError_None = 0; + /** native declaration : headers\openvr_capi.h:890 */ + public static final int EVRScreenshotError_VRScreenshotError_RequestFailed = 1; + /** native declaration : headers\openvr_capi.h:891 */ + public static final int EVRScreenshotError_VRScreenshotError_IncompatibleVersion = 100; + /** native declaration : headers\openvr_capi.h:892 */ + public static final int EVRScreenshotError_VRScreenshotError_NotFound = 101; + /** native declaration : headers\openvr_capi.h:893 */ + public static final int EVRScreenshotError_VRScreenshotError_BufferTooSmall = 102; + /** native declaration : headers\openvr_capi.h:894 */ + public static final int EVRScreenshotError_VRScreenshotError_ScreenshotAlreadyInProgress = 108; + }; + + /** OpenVR Constants */ + public static final long k_nDriverNone = 4294967295L; public static final int k_unMaxDriverDebugResponseSize = 32768; - public static final int k_unTrackedDeviceIndex_Hmd = 0; - public static final int k_unMaxTrackedDeviceCount = 16; - public static final long k_unTrackedDeviceIndexOther = 4294967294L; + public static final int k_unTrackedDeviceIndex_Hmd = 0; + public static final int k_unMaxTrackedDeviceCount = 16; + public static final int k_unTrackedDeviceIndexOther = -2; public static final long k_unTrackedDeviceIndexInvalid = 4294967295L; - public static final long k_ulInvalidPropertyContainer = 0; - public static final int k_unInvalidPropertyTag = 0; - public static final int k_unFloatPropertyTag = 1; - public static final int k_unInt32PropertyTag = 2; - public static final int k_unUint64PropertyTag = 3; - public static final int k_unBoolPropertyTag = 4; - public static final int k_unStringPropertyTag = 5; - public static final int k_unHmdMatrix34PropertyTag = 20; - public static final int k_unHmdMatrix44PropertyTag = 21; - public static final int k_unHmdVector3PropertyTag = 22; + public static final long k_ulInvalidPropertyContainer = 0; + public static final int k_unInvalidPropertyTag = 0; + public static final int k_unFloatPropertyTag = 1; + public static final int k_unInt32PropertyTag = 2; + public static final int k_unUint64PropertyTag = 3; + public static final int k_unBoolPropertyTag = 4; + public static final int k_unStringPropertyTag = 5; + public static final int k_unHmdMatrix34PropertyTag = 20; + public static final int k_unHmdMatrix44PropertyTag = 21; + public static final int k_unHmdVector3PropertyTag = 22; public static final int k_unHmdVector4PropertyTag = 23; public static final int k_unHiddenAreaPropertyTag = 30; public static final int k_unOpenVRInternalReserved_Start = 1000; @@ -56,32 +1626,37 @@ public class JOpenVRLibrary implements Library { public static final int k_unControllerStateAxisCount = 5; public static final long k_ulOverlayHandleInvalid = 0; public static final int k_unScreenshotHandleInvalid = 0; + + public static final int k_unMaxApplicationKeyLength = 128; - public static final String k_pch_MimeType_HomeApp = "vr/home"; + + public static final String k_pch_MimeType_HomeApp = "vr/home"; public static final String k_pch_MimeType_GameTheater = "vr/game_theater"; - public static final String IVRApplications_Version = "FnTable:IVRApplications_006"; + + public static final int k_unVROverlayMaxKeyLength = 128; public static final int k_unVROverlayMaxNameLength = 128; public static final int k_unMaxOverlayCount = 64; public static final int k_unMaxOverlayIntersectionMaskPrimitivesCount = 32; - public static final String IVROverlay_Version = "FnTable:IVROverlay_014"; - public static final String k_pch_Controller_Component_GDC2015 = "gdc2015"; - public static final String k_pch_Controller_Component_Base = "base"; - public static final String k_pch_Controller_Component_Tip = "tip"; + + + public static final String k_pch_Controller_Component_GDC2015 = "gdc2015"; + public static final String k_pch_Controller_Component_Base = "base"; + public static final String k_pch_Controller_Component_Tip = "tip"; public static final String k_pch_Controller_Component_HandGrip = "handgrip"; - public static final String k_pch_Controller_Component_Status = "status"; - public static final String IVRRenderModels_Version = "FnTable:IVRRenderModels_005"; + public static final String k_pch_Controller_Component_Status = "status"; + + public static final int k_unNotificationTextMaxSize = 256; - public static final String IVRNotifications_Version = "FnTable:IVRNotifications_002"; + public static final int k_unMaxSettingsKeyLength = 128; - public static final String IVRSettings_Version = "FnTable:IVRSettings_002"; + public static final String k_pch_SteamVR_Section = "steamvr"; public static final String k_pch_SteamVR_RequireHmd_String = "requireHmd"; public static final String k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver"; public static final String k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd"; public static final String k_pch_SteamVR_DisplayDebug_Bool = "displayDebug"; public static final String k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe"; - public static final String k_pch_SteamVR_EnableDistortion_Bool = "enableDistortion"; public static final String k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX"; public static final String k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY"; public static final String k_pch_SteamVR_SendSystemButtonToAllApps_Bool = "sendSystemButtonToAllApps"; @@ -102,7 +1677,7 @@ public class JOpenVRLibrary implements Library { public static final String k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees"; public static final String k_pch_SteamVR_BaseStationPowerManagement_Bool = "basestationPowerManagement"; public static final String k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses"; - public static final String k_pch_SteamVR_RenderTargetMultiplier_Float = "renderTargetMultiplier"; + public static final String k_pch_SteamVR_SupersampleScale_Float = "supersampleScale"; public static final String k_pch_SteamVR_AllowAsyncReprojection_Bool = "allowAsyncReprojection"; public static final String k_pch_SteamVR_AllowReprojection_Bool = "allowInterleavedReprojection"; public static final String k_pch_SteamVR_ForceReprojection_Bool = "forceReprojection"; @@ -115,10 +1690,10 @@ public class JOpenVRLibrary implements Library { public static final String k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch"; public static final String k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard"; public static final String k_pch_SteamVR_EnableHomeApp = "enableHomeApp"; - public static final String k_pch_SteamVR_SetInitialDefaultHomeApp = "setInitialDefaultHomeApp"; public static final String k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec"; public static final String k_pch_SteamVR_RetailDemo_Bool = "retailDemo"; public static final String k_pch_SteamVR_IpdOffset_Float = "ipdOffset"; + public static final String k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering"; public static final String k_pch_Lighthouse_Section = "driver_lighthouse"; public static final String k_pch_Lighthouse_DisableIMU_Bool = "disableimu"; public static final String k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation"; @@ -158,6 +1733,7 @@ public class JOpenVRLibrary implements Library { public static final String k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore"; public static final String k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit"; public static final String k_pch_Perf_TestData_Float = "perfTestData"; + public static final String k_pch_Perf_LinuxGPUProfiling_Bool = "linuxGPUProfiling"; public static final String k_pch_CollisionBounds_Section = "collisionBounds"; public static final String k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle"; public static final String k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn"; @@ -191,1651 +1767,126 @@ public class JOpenVRLibrary implements Library { public static final String k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout"; public static final String k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout"; public static final String k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress"; + public static final String k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby"; public static final String k_pch_Dashboard_Section = "dashboard"; public static final String k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard"; public static final String k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode"; public static final String k_pch_modelskin_Section = "modelskins"; public static final String k_pch_Driver_Enable_Bool = "enable"; - public static final String IVRSystem_Version = "FnTable:IVRSystem_015"; - public static final String IVRExtendedDisplay_Version = "FnTable:IVRExtendedDisplay_001"; - public static final String IVRTrackedCamera_Version = "FnTable:IVRTrackedCamera_003"; + + public static final String IVRApplications_Version = "FnTable:IVRApplications_006"; public static final String IVRChaperone_Version = "FnTable:IVRChaperone_003"; public static final String IVRChaperoneSetup_Version = "FnTable:IVRChaperoneSetup_005"; - //public static final String IVRCompositor_Version = "FnTable:IVRCompositor_020"; - public static final String IVRCompositor_Version = "FnTable:IVRCompositor_019"; + public static final String IVRCompositor_Version = "FnTable:IVRCompositor_020"; + public static final String IVRSystem_Version = "FnTable:IVRSystem_016"; + public static final String IVRExtendedDisplay_Version = "FnTable:IVRExtendedDisplay_001"; + public static final String IVRTrackedCamera_Version = "FnTable:IVRTrackedCamera_003"; + public static final String IVROverlay_Version = "FnTable:IVROverlay_016"; + public static final String IVRRenderModels_Version = "FnTable:IVRRenderModels_005"; + public static final String IVRNotifications_Version = "FnTable:IVRNotifications_002"; + public static final String IVRSettings_Version = "FnTable:IVRSettings_002"; public static final String IVRScreenshots_Version = "FnTable:IVRScreenshots_001"; public static final String IVRResources_Version = "FnTable:IVRResources_001"; + public static final String IVRDriverManager_Version = "FnTable:IVRDriverManager_001"; - - - /** - * native declaration : headers\openvr_capi.h:178
    - * enum values - */ - public static interface EVREye { - /** native declaration : headers\openvr_capi.h:176 */ - public static final int EVREye_Eye_Left = 0; - /** native declaration : headers\openvr_capi.h:177 */ - public static final int EVREye_Eye_Right = 1; - }; - /** - * native declaration : headers\openvr_capi.h:185
    - * enum values - */ - public static interface ETextureType { - /** native declaration : headers\openvr_capi.h:180 */ - public static final int ETextureType_TextureType_DirectX = 0; - /** native declaration : headers\openvr_capi.h:181 */ - public static final int ETextureType_TextureType_OpenGL = 1; - /** native declaration : headers\openvr_capi.h:182 */ - public static final int ETextureType_TextureType_Vulkan = 2; - /** native declaration : headers\openvr_capi.h:183 */ - public static final int ETextureType_TextureType_IOSurface = 3; - /** native declaration : headers\openvr_capi.h:184 */ - public static final int ETextureType_TextureType_DirectX12 = 4; - }; - - - - - /** - * native declaration : headers\openvr_capi.h:190
    - * enum values - */ - public static interface EColorSpace { - /** native declaration : headers\openvr_capi.h:187 */ - public static final int EColorSpace_ColorSpace_Auto = 0; - /** native declaration : headers\openvr_capi.h:188 */ - public static final int EColorSpace_ColorSpace_Gamma = 1; - /** native declaration : headers\openvr_capi.h:189 */ - public static final int EColorSpace_ColorSpace_Linear = 2; - }; - - - - /** - * native declaration : headers\openvr_capi.h:197
    - * enum values - */ - public static interface ETrackingResult { - /** native declaration : headers\openvr_capi.h:192 */ - public static final int ETrackingResult_TrackingResult_Uninitialized = 1; - /** native declaration : headers\openvr_capi.h:193 */ - public static final int ETrackingResult_TrackingResult_Calibrating_InProgress = 100; - /** native declaration : headers\openvr_capi.h:194 */ - public static final int ETrackingResult_TrackingResult_Calibrating_OutOfRange = 101; - /** native declaration : headers\openvr_capi.h:195 */ - public static final int ETrackingResult_TrackingResult_Running_OK = 200; - /** native declaration : headers\openvr_capi.h:196 */ - public static final int ETrackingResult_TrackingResult_Running_OutOfRange = 201; - }; - /** - * native declaration : headers\openvr_capi.h:204
    - * enum values - */ - public static interface ETrackedDeviceClass { - /** native declaration : headers\openvr_capi.h:199 */ - public static final int ETrackedDeviceClass_TrackedDeviceClass_Invalid = 0; - /** native declaration : headers\openvr_capi.h:200 */ - public static final int ETrackedDeviceClass_TrackedDeviceClass_HMD = 1; - /** native declaration : headers\openvr_capi.h:201 */ - public static final int ETrackedDeviceClass_TrackedDeviceClass_Controller = 2; - /** native declaration : headers\openvr_capi.h:202 */ - public static final int ETrackedDeviceClass_TrackedDeviceClass_GenericTracker = 3; - /** native declaration : headers\openvr_capi.h:203 */ - public static final int ETrackedDeviceClass_TrackedDeviceClass_TrackingReference = 4; - }; - /** - * native declaration : headers\openvr_capi.h:209
    - * enum values - */ - public static interface ETrackedControllerRole { - /** native declaration : headers\openvr_capi.h:206 */ - public static final int ETrackedControllerRole_TrackedControllerRole_Invalid = 0; - /** native declaration : headers\openvr_capi.h:207 */ - public static final int ETrackedControllerRole_TrackedControllerRole_LeftHand = 1; - /** native declaration : headers\openvr_capi.h:208 */ - public static final int ETrackedControllerRole_TrackedControllerRole_RightHand = 2; - }; - /** - * native declaration : headers\openvr_capi.h:214
    - * enum values - */ - public static interface ETrackingUniverseOrigin { - /** native declaration : headers\openvr_capi.h:211 */ - public static final int ETrackingUniverseOrigin_TrackingUniverseSeated = 0; - /** native declaration : headers\openvr_capi.h:212 */ - public static final int ETrackingUniverseOrigin_TrackingUniverseStanding = 1; - /** native declaration : headers\openvr_capi.h:213 */ - public static final int ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated = 2; - }; - /** - * The enumeration of tracked devices properties. - */ - public static interface ETrackedDeviceProperty { - - /** - * An invalid property. - */ - public static final int ETrackedDeviceProperty_Prop_Invalid = 0; - - /** - * The tracking system name property (String). - */ - public static final int ETrackedDeviceProperty_Prop_TrackingSystemName_String = 1000; - - /** - * The tracking system model number property (String). - */ - public static final int ETrackedDeviceProperty_Prop_ModelNumber_String = 1001; - - /** - * The tracking system serial number property (String). - */ - public static final int ETrackedDeviceProperty_Prop_SerialNumber_String = 1002; - - /** - * The tracking system render model name property (String). - */ - public static final int ETrackedDeviceProperty_Prop_RenderModelName_String = 1003; - - /** - * The tracking system will drift in yaw property (bool). - */ - public static final int ETrackedDeviceProperty_Prop_WillDriftInYaw_Bool = 1004; - - /** - * The tracking system manufacturer name property (String). - */ - public static final int ETrackedDeviceProperty_Prop_ManufacturerName_String = 1005; - - /** - * The tracking system tracking firmware version property (String). - */ - public static final int ETrackedDeviceProperty_Prop_TrackingFirmwareVersion_String = 1006; - - /** - * The tracking system hardware revision property (String). - */ - public static final int ETrackedDeviceProperty_Prop_HardwareRevision_String = 1007; - - /** - * The tracking system all wireless dongle descriptions property (String). - */ - public static final int ETrackedDeviceProperty_Prop_AllWirelessDongleDescriptions_String = 1008; - /** native declaration : headers\openvr_capi.h:226 */ - public static final int ETrackedDeviceProperty_Prop_ConnectedWirelessDongle_String = 1009; - /** native declaration : headers\openvr_capi.h:227 */ - public static final int ETrackedDeviceProperty_Prop_DeviceIsWireless_Bool = 1010; - /** native declaration : headers\openvr_capi.h:228 */ - public static final int ETrackedDeviceProperty_Prop_DeviceIsCharging_Bool = 1011; - /** native declaration : headers\openvr_capi.h:229 */ - public static final int ETrackedDeviceProperty_Prop_DeviceBatteryPercentage_Float = 1012; - /** native declaration : headers\openvr_capi.h:230 */ - public static final int ETrackedDeviceProperty_Prop_StatusDisplayTransform_Matrix34 = 1013; - /** native declaration : headers\openvr_capi.h:231 */ - public static final int ETrackedDeviceProperty_Prop_Firmware_UpdateAvailable_Bool = 1014; - /** native declaration : headers\openvr_capi.h:232 */ - public static final int ETrackedDeviceProperty_Prop_Firmware_ManualUpdate_Bool = 1015; - /** native declaration : headers\openvr_capi.h:233 */ - public static final int ETrackedDeviceProperty_Prop_Firmware_ManualUpdateURL_String = 1016; - /** native declaration : headers\openvr_capi.h:234 */ - public static final int ETrackedDeviceProperty_Prop_HardwareRevision_Uint64 = 1017; - /** native declaration : headers\openvr_capi.h:235 */ - public static final int ETrackedDeviceProperty_Prop_FirmwareVersion_Uint64 = 1018; - /** native declaration : headers\openvr_capi.h:236 */ - public static final int ETrackedDeviceProperty_Prop_FPGAVersion_Uint64 = 1019; - /** native declaration : headers\openvr_capi.h:237 */ - public static final int ETrackedDeviceProperty_Prop_VRCVersion_Uint64 = 1020; - /** native declaration : headers\openvr_capi.h:238 */ - public static final int ETrackedDeviceProperty_Prop_RadioVersion_Uint64 = 1021; - /** native declaration : headers\openvr_capi.h:239 */ - public static final int ETrackedDeviceProperty_Prop_DongleVersion_Uint64 = 1022; - /** native declaration : headers\openvr_capi.h:240 */ - public static final int ETrackedDeviceProperty_Prop_BlockServerShutdown_Bool = 1023; - /** native declaration : headers\openvr_capi.h:241 */ - public static final int ETrackedDeviceProperty_Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024; - /** native declaration : headers\openvr_capi.h:242 */ - public static final int ETrackedDeviceProperty_Prop_ContainsProximitySensor_Bool = 1025; - /** native declaration : headers\openvr_capi.h:243 */ - public static final int ETrackedDeviceProperty_Prop_DeviceProvidesBatteryStatus_Bool = 1026; - /** native declaration : headers\openvr_capi.h:244 */ - public static final int ETrackedDeviceProperty_Prop_DeviceCanPowerOff_Bool = 1027; - /** native declaration : headers\openvr_capi.h:245 */ - public static final int ETrackedDeviceProperty_Prop_Firmware_ProgrammingTarget_String = 1028; - /** native declaration : headers\openvr_capi.h:246 */ - public static final int ETrackedDeviceProperty_Prop_DeviceClass_Int32 = 1029; - /** native declaration : headers\openvr_capi.h:247 */ - public static final int ETrackedDeviceProperty_Prop_HasCamera_Bool = 1030; - /** native declaration : headers\openvr_capi.h:248 */ - public static final int ETrackedDeviceProperty_Prop_DriverVersion_String = 1031; - /** native declaration : headers\openvr_capi.h:249 */ - public static final int ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool = 1032; - /** native declaration : headers\openvr_capi.h:250 */ - public static final int ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool = 1033; - /** native declaration : headers\openvr_capi.h:251 */ - public static final int ETrackedDeviceProperty_Prop_ParentDriver_Uint64 = 1034; - /** native declaration : headers\openvr_capi.h:252 */ - public static final int ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000; - /** native declaration : headers\openvr_capi.h:253 */ - public static final int ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001; - /** native declaration : headers\openvr_capi.h:254 */ - public static final int ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002; - /** native declaration : headers\openvr_capi.h:255 */ - public static final int ETrackedDeviceProperty_Prop_UserIpdMeters_Float = 2003; - /** native declaration : headers\openvr_capi.h:256 */ - public static final int ETrackedDeviceProperty_Prop_CurrentUniverseId_Uint64 = 2004; - /** native declaration : headers\openvr_capi.h:257 */ - public static final int ETrackedDeviceProperty_Prop_PreviousUniverseId_Uint64 = 2005; - /** native declaration : headers\openvr_capi.h:258 */ - public static final int ETrackedDeviceProperty_Prop_DisplayFirmwareVersion_Uint64 = 2006; - /** native declaration : headers\openvr_capi.h:259 */ - public static final int ETrackedDeviceProperty_Prop_IsOnDesktop_Bool = 2007; - /** native declaration : headers\openvr_capi.h:260 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCType_Int32 = 2008; - /** native declaration : headers\openvr_capi.h:261 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCOffset_Float = 2009; - /** native declaration : headers\openvr_capi.h:262 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCScale_Float = 2010; - /** native declaration : headers\openvr_capi.h:263 */ - public static final int ETrackedDeviceProperty_Prop_EdidVendorID_Int32 = 2011; - /** native declaration : headers\openvr_capi.h:264 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageLeft_String = 2012; - /** native declaration : headers\openvr_capi.h:265 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageRight_String = 2013; - /** native declaration : headers\openvr_capi.h:266 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCBlackClamp_Float = 2014; - /** native declaration : headers\openvr_capi.h:267 */ - public static final int ETrackedDeviceProperty_Prop_EdidProductID_Int32 = 2015; - /** native declaration : headers\openvr_capi.h:268 */ - public static final int ETrackedDeviceProperty_Prop_CameraToHeadTransform_Matrix34 = 2016; - /** native declaration : headers\openvr_capi.h:269 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCType_Int32 = 2017; - /** native declaration : headers\openvr_capi.h:270 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCOffset_Float = 2018; - /** native declaration : headers\openvr_capi.h:271 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCScale_Float = 2019; - /** native declaration : headers\openvr_capi.h:272 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCPrescale_Float = 2020; - /** native declaration : headers\openvr_capi.h:273 */ - public static final int ETrackedDeviceProperty_Prop_DisplayGCImage_String = 2021; - /** native declaration : headers\openvr_capi.h:274 */ - public static final int ETrackedDeviceProperty_Prop_LensCenterLeftU_Float = 2022; - /** native declaration : headers\openvr_capi.h:275 */ - public static final int ETrackedDeviceProperty_Prop_LensCenterLeftV_Float = 2023; - /** native declaration : headers\openvr_capi.h:276 */ - public static final int ETrackedDeviceProperty_Prop_LensCenterRightU_Float = 2024; - /** native declaration : headers\openvr_capi.h:277 */ - public static final int ETrackedDeviceProperty_Prop_LensCenterRightV_Float = 2025; - /** native declaration : headers\openvr_capi.h:278 */ - public static final int ETrackedDeviceProperty_Prop_UserHeadToEyeDepthMeters_Float = 2026; - /** native declaration : headers\openvr_capi.h:279 */ - public static final int ETrackedDeviceProperty_Prop_CameraFirmwareVersion_Uint64 = 2027; - /** native declaration : headers\openvr_capi.h:280 */ - public static final int ETrackedDeviceProperty_Prop_CameraFirmwareDescription_String = 2028; - /** native declaration : headers\openvr_capi.h:281 */ - public static final int ETrackedDeviceProperty_Prop_DisplayFPGAVersion_Uint64 = 2029; - /** native declaration : headers\openvr_capi.h:282 */ - public static final int ETrackedDeviceProperty_Prop_DisplayBootloaderVersion_Uint64 = 2030; - /** native declaration : headers\openvr_capi.h:283 */ - public static final int ETrackedDeviceProperty_Prop_DisplayHardwareVersion_Uint64 = 2031; - /** native declaration : headers\openvr_capi.h:284 */ - public static final int ETrackedDeviceProperty_Prop_AudioFirmwareVersion_Uint64 = 2032; - /** native declaration : headers\openvr_capi.h:285 */ - public static final int ETrackedDeviceProperty_Prop_CameraCompatibilityMode_Int32 = 2033; - /** native declaration : headers\openvr_capi.h:286 */ - public static final int ETrackedDeviceProperty_Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034; - /** native declaration : headers\openvr_capi.h:287 */ - public static final int ETrackedDeviceProperty_Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035; - /** native declaration : headers\openvr_capi.h:288 */ - public static final int ETrackedDeviceProperty_Prop_DisplaySuppressed_Bool = 2036; - /** native declaration : headers\openvr_capi.h:289 */ - public static final int ETrackedDeviceProperty_Prop_DisplayAllowNightMode_Bool = 2037; - /** native declaration : headers\openvr_capi.h:290 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageWidth_Int32 = 2038; - /** native declaration : headers\openvr_capi.h:291 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32 = 2039; - /** native declaration : headers\openvr_capi.h:292 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32 = 2040; - /** native declaration : headers\openvr_capi.h:293 */ - public static final int ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary = 2041; - /** native declaration : headers\openvr_capi.h:294 */ - public static final int ETrackedDeviceProperty_Prop_UsesDriverDirectMode_Bool = 2042; - /** native declaration : headers\openvr_capi.h:295 */ - public static final int ETrackedDeviceProperty_Prop_AttachedDeviceId_String = 3000; - /** native declaration : headers\openvr_capi.h:296 */ - public static final int ETrackedDeviceProperty_Prop_SupportedButtons_Uint64 = 3001; - /** native declaration : headers\openvr_capi.h:297 */ - public static final int ETrackedDeviceProperty_Prop_Axis0Type_Int32 = 3002; - /** native declaration : headers\openvr_capi.h:298 */ - public static final int ETrackedDeviceProperty_Prop_Axis1Type_Int32 = 3003; - /** native declaration : headers\openvr_capi.h:299 */ - public static final int ETrackedDeviceProperty_Prop_Axis2Type_Int32 = 3004; - /** native declaration : headers\openvr_capi.h:300 */ - public static final int ETrackedDeviceProperty_Prop_Axis3Type_Int32 = 3005; - /** native declaration : headers\openvr_capi.h:301 */ - public static final int ETrackedDeviceProperty_Prop_Axis4Type_Int32 = 3006; - /** native declaration : headers\openvr_capi.h:302 */ - public static final int ETrackedDeviceProperty_Prop_ControllerRoleHint_Int32 = 3007; - /** native declaration : headers\openvr_capi.h:303 */ - public static final int ETrackedDeviceProperty_Prop_FieldOfViewLeftDegrees_Float = 4000; - /** native declaration : headers\openvr_capi.h:304 */ - public static final int ETrackedDeviceProperty_Prop_FieldOfViewRightDegrees_Float = 4001; - /** native declaration : headers\openvr_capi.h:305 */ - public static final int ETrackedDeviceProperty_Prop_FieldOfViewTopDegrees_Float = 4002; - /** native declaration : headers\openvr_capi.h:306 */ - public static final int ETrackedDeviceProperty_Prop_FieldOfViewBottomDegrees_Float = 4003; - /** native declaration : headers\openvr_capi.h:307 */ - public static final int ETrackedDeviceProperty_Prop_TrackingRangeMinimumMeters_Float = 4004; - /** native declaration : headers\openvr_capi.h:308 */ - public static final int ETrackedDeviceProperty_Prop_TrackingRangeMaximumMeters_Float = 4005; - /** native declaration : headers\openvr_capi.h:309 */ - public static final int ETrackedDeviceProperty_Prop_ModeLabel_String = 4006; - /** native declaration : headers\openvr_capi.h:310 */ - public static final int ETrackedDeviceProperty_Prop_IconPathName_String = 5000; - /** native declaration : headers\openvr_capi.h:311 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceOff_String = 5001; - /** native declaration : headers\openvr_capi.h:312 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearching_String = 5002; - /** native declaration : headers\openvr_capi.h:313 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearchingAlert_String = 5003; - /** native declaration : headers\openvr_capi.h:314 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceReady_String = 5004; - /** native declaration : headers\openvr_capi.h:315 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceReadyAlert_String = 5005; - /** native declaration : headers\openvr_capi.h:316 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceNotReady_String = 5006; - /** native declaration : headers\openvr_capi.h:317 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandby_String = 5007; - /** native declaration : headers\openvr_capi.h:318 */ - public static final int ETrackedDeviceProperty_Prop_NamedIconPathDeviceAlertLow_String = 5008; - /** native declaration : headers\openvr_capi.h:319 */ - public static final int ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_Start = 5100; - /** native declaration : headers\openvr_capi.h:320 */ - public static final int ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End = 5150; - /** native declaration : headers\openvr_capi.h:321 */ - public static final int ETrackedDeviceProperty_Prop_UserConfigPath_String = 6000; - /** native declaration : headers\openvr_capi.h:322 */ - public static final int ETrackedDeviceProperty_Prop_InstallPath_String = 6001; - /** native declaration : headers\openvr_capi.h:323 */ - public static final int ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start = 10000; - /** native declaration : headers\openvr_capi.h:324 */ - public static final int ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End = 10999; - }; /** - * native declaration : headers\openvr_capi.h:339
    - * enum values - */ - public static interface ETrackedPropertyError { - /** native declaration : headers\openvr_capi.h:327 */ - public static final int ETrackedPropertyError_TrackedProp_Success = 0; - /** native declaration : headers\openvr_capi.h:328 */ - public static final int ETrackedPropertyError_TrackedProp_WrongDataType = 1; - /** native declaration : headers\openvr_capi.h:329 */ - public static final int ETrackedPropertyError_TrackedProp_WrongDeviceClass = 2; - /** native declaration : headers\openvr_capi.h:330 */ - public static final int ETrackedPropertyError_TrackedProp_BufferTooSmall = 3; - /** native declaration : headers\openvr_capi.h:331 */ - public static final int ETrackedPropertyError_TrackedProp_UnknownProperty = 4; - /** native declaration : headers\openvr_capi.h:332 */ - public static final int ETrackedPropertyError_TrackedProp_InvalidDevice = 5; - /** native declaration : headers\openvr_capi.h:333 */ - public static final int ETrackedPropertyError_TrackedProp_CouldNotContactServer = 6; - /** native declaration : headers\openvr_capi.h:334 */ - public static final int ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice = 7; - /** native declaration : headers\openvr_capi.h:335 */ - public static final int ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength = 8; - /** native declaration : headers\openvr_capi.h:336 */ - public static final int ETrackedPropertyError_TrackedProp_NotYetAvailable = 9; - /** native declaration : headers\openvr_capi.h:337 */ - public static final int ETrackedPropertyError_TrackedProp_PermissionDenied = 10; - /** native declaration : headers\openvr_capi.h:338 */ - public static final int ETrackedPropertyError_TrackedProp_InvalidOperation = 11; - }; - /** - * native declaration : headers\openvr_capi.h:345
    - * enum values - */ - public static interface EVRSubmitFlags { - /** native declaration : headers\openvr_capi.h:341 */ - public static final int EVRSubmitFlags_Submit_Default = 0; - /** native declaration : headers\openvr_capi.h:342 */ - public static final int EVRSubmitFlags_Submit_LensDistortionAlreadyApplied = 1; - /** native declaration : headers\openvr_capi.h:343 */ - public static final int EVRSubmitFlags_Submit_GlRenderBuffer = 2; - /** native declaration : headers\openvr_capi.h:344 */ - public static final int EVRSubmitFlags_Submit_Reserved = 4; - }; - /** - * native declaration : headers\openvr_capi.h:356
    - * enum values - */ - public static interface EVRState { - /** native declaration : headers\openvr_capi.h:347 */ - public static final int EVRState_VRState_Undefined = -1; - /** native declaration : headers\openvr_capi.h:348 */ - public static final int EVRState_VRState_Off = 0; - /** native declaration : headers\openvr_capi.h:349 */ - public static final int EVRState_VRState_Searching = 1; - /** native declaration : headers\openvr_capi.h:350 */ - public static final int EVRState_VRState_Searching_Alert = 2; - /** native declaration : headers\openvr_capi.h:351 */ - public static final int EVRState_VRState_Ready = 3; - /** native declaration : headers\openvr_capi.h:352 */ - public static final int EVRState_VRState_Ready_Alert = 4; - /** native declaration : headers\openvr_capi.h:353 */ - public static final int EVRState_VRState_NotReady = 5; - /** native declaration : headers\openvr_capi.h:354 */ - public static final int EVRState_VRState_Standby = 6; - /** native declaration : headers\openvr_capi.h:355 */ - public static final int EVRState_VRState_Ready_Alert_Low = 7; - }; - /** - * native declaration : headers\openvr_capi.h:467
    - * enum values - */ - public static interface EVREventType { - /** native declaration : headers\openvr_capi.h:358 */ - public static final int EVREventType_VREvent_None = 0; - /** native declaration : headers\openvr_capi.h:359 */ - public static final int EVREventType_VREvent_TrackedDeviceActivated = 100; - /** native declaration : headers\openvr_capi.h:360 */ - public static final int EVREventType_VREvent_TrackedDeviceDeactivated = 101; - /** native declaration : headers\openvr_capi.h:361 */ - public static final int EVREventType_VREvent_TrackedDeviceUpdated = 102; - /** native declaration : headers\openvr_capi.h:362 */ - public static final int EVREventType_VREvent_TrackedDeviceUserInteractionStarted = 103; - /** native declaration : headers\openvr_capi.h:363 */ - public static final int EVREventType_VREvent_TrackedDeviceUserInteractionEnded = 104; - /** native declaration : headers\openvr_capi.h:364 */ - public static final int EVREventType_VREvent_IpdChanged = 105; - /** native declaration : headers\openvr_capi.h:365 */ - public static final int EVREventType_VREvent_EnterStandbyMode = 106; - /** native declaration : headers\openvr_capi.h:366 */ - public static final int EVREventType_VREvent_LeaveStandbyMode = 107; - /** native declaration : headers\openvr_capi.h:367 */ - public static final int EVREventType_VREvent_TrackedDeviceRoleChanged = 108; - /** native declaration : headers\openvr_capi.h:368 */ - public static final int EVREventType_VREvent_WatchdogWakeUpRequested = 109; - /** native declaration : headers\openvr_capi.h:369 */ - public static final int EVREventType_VREvent_LensDistortionChanged = 110; - /** native declaration : headers\openvr_capi.h:370 */ - public static final int EVREventType_VREvent_PropertyChanged = 111; - /** native declaration : headers\openvr_capi.h:371 */ - public static final int EVREventType_VREvent_ButtonPress = 200; - /** native declaration : headers\openvr_capi.h:372 */ - public static final int EVREventType_VREvent_ButtonUnpress = 201; - /** native declaration : headers\openvr_capi.h:373 */ - public static final int EVREventType_VREvent_ButtonTouch = 202; - /** native declaration : headers\openvr_capi.h:374 */ - public static final int EVREventType_VREvent_ButtonUntouch = 203; - /** native declaration : headers\openvr_capi.h:375 */ - public static final int EVREventType_VREvent_MouseMove = 300; - /** native declaration : headers\openvr_capi.h:376 */ - public static final int EVREventType_VREvent_MouseButtonDown = 301; - /** native declaration : headers\openvr_capi.h:377 */ - public static final int EVREventType_VREvent_MouseButtonUp = 302; - /** native declaration : headers\openvr_capi.h:378 */ - public static final int EVREventType_VREvent_FocusEnter = 303; - /** native declaration : headers\openvr_capi.h:379 */ - public static final int EVREventType_VREvent_FocusLeave = 304; - /** native declaration : headers\openvr_capi.h:380 */ - public static final int EVREventType_VREvent_Scroll = 305; - /** native declaration : headers\openvr_capi.h:381 */ - public static final int EVREventType_VREvent_TouchPadMove = 306; - /** native declaration : headers\openvr_capi.h:382 */ - public static final int EVREventType_VREvent_OverlayFocusChanged = 307; - /** native declaration : headers\openvr_capi.h:383 */ - public static final int EVREventType_VREvent_InputFocusCaptured = 400; - /** native declaration : headers\openvr_capi.h:384 */ - public static final int EVREventType_VREvent_InputFocusReleased = 401; - /** native declaration : headers\openvr_capi.h:385 */ - public static final int EVREventType_VREvent_SceneFocusLost = 402; - /** native declaration : headers\openvr_capi.h:386 */ - public static final int EVREventType_VREvent_SceneFocusGained = 403; - /** native declaration : headers\openvr_capi.h:387 */ - public static final int EVREventType_VREvent_SceneApplicationChanged = 404; - /** native declaration : headers\openvr_capi.h:388 */ - public static final int EVREventType_VREvent_SceneFocusChanged = 405; - /** native declaration : headers\openvr_capi.h:389 */ - public static final int EVREventType_VREvent_InputFocusChanged = 406; - /** native declaration : headers\openvr_capi.h:390 */ - public static final int EVREventType_VREvent_SceneApplicationSecondaryRenderingStarted = 407; - /** native declaration : headers\openvr_capi.h:391 */ - public static final int EVREventType_VREvent_HideRenderModels = 410; - /** native declaration : headers\openvr_capi.h:392 */ - public static final int EVREventType_VREvent_ShowRenderModels = 411; - /** native declaration : headers\openvr_capi.h:393 */ - public static final int EVREventType_VREvent_OverlayShown = 500; - /** native declaration : headers\openvr_capi.h:394 */ - public static final int EVREventType_VREvent_OverlayHidden = 501; - /** native declaration : headers\openvr_capi.h:395 */ - public static final int EVREventType_VREvent_DashboardActivated = 502; - /** native declaration : headers\openvr_capi.h:396 */ - public static final int EVREventType_VREvent_DashboardDeactivated = 503; - /** native declaration : headers\openvr_capi.h:397 */ - public static final int EVREventType_VREvent_DashboardThumbSelected = 504; - /** native declaration : headers\openvr_capi.h:398 */ - public static final int EVREventType_VREvent_DashboardRequested = 505; - /** native declaration : headers\openvr_capi.h:399 */ - public static final int EVREventType_VREvent_ResetDashboard = 506; - /** native declaration : headers\openvr_capi.h:400 */ - public static final int EVREventType_VREvent_RenderToast = 507; - /** native declaration : headers\openvr_capi.h:401 */ - public static final int EVREventType_VREvent_ImageLoaded = 508; - /** native declaration : headers\openvr_capi.h:402 */ - public static final int EVREventType_VREvent_ShowKeyboard = 509; - /** native declaration : headers\openvr_capi.h:403 */ - public static final int EVREventType_VREvent_HideKeyboard = 510; - /** native declaration : headers\openvr_capi.h:404 */ - public static final int EVREventType_VREvent_OverlayGamepadFocusGained = 511; - /** native declaration : headers\openvr_capi.h:405 */ - public static final int EVREventType_VREvent_OverlayGamepadFocusLost = 512; - /** native declaration : headers\openvr_capi.h:406 */ - public static final int EVREventType_VREvent_OverlaySharedTextureChanged = 513; - /** native declaration : headers\openvr_capi.h:407 */ - public static final int EVREventType_VREvent_DashboardGuideButtonDown = 514; - /** native declaration : headers\openvr_capi.h:408 */ - public static final int EVREventType_VREvent_DashboardGuideButtonUp = 515; - /** native declaration : headers\openvr_capi.h:409 */ - public static final int EVREventType_VREvent_ScreenshotTriggered = 516; - /** native declaration : headers\openvr_capi.h:410 */ - public static final int EVREventType_VREvent_ImageFailed = 517; - /** native declaration : headers\openvr_capi.h:411 */ - public static final int EVREventType_VREvent_DashboardOverlayCreated = 518; - /** native declaration : headers\openvr_capi.h:412 */ - public static final int EVREventType_VREvent_RequestScreenshot = 520; - /** native declaration : headers\openvr_capi.h:413 */ - public static final int EVREventType_VREvent_ScreenshotTaken = 521; - /** native declaration : headers\openvr_capi.h:414 */ - public static final int EVREventType_VREvent_ScreenshotFailed = 522; - /** native declaration : headers\openvr_capi.h:415 */ - public static final int EVREventType_VREvent_SubmitScreenshotToDashboard = 523; - /** native declaration : headers\openvr_capi.h:416 */ - public static final int EVREventType_VREvent_ScreenshotProgressToDashboard = 524; - /** native declaration : headers\openvr_capi.h:417 */ - public static final int EVREventType_VREvent_PrimaryDashboardDeviceChanged = 525; - /** native declaration : headers\openvr_capi.h:418 */ - public static final int EVREventType_VREvent_Notification_Shown = 600; - /** native declaration : headers\openvr_capi.h:419 */ - public static final int EVREventType_VREvent_Notification_Hidden = 601; - /** native declaration : headers\openvr_capi.h:420 */ - public static final int EVREventType_VREvent_Notification_BeginInteraction = 602; - /** native declaration : headers\openvr_capi.h:421 */ - public static final int EVREventType_VREvent_Notification_Destroyed = 603; - /** native declaration : headers\openvr_capi.h:422 */ - public static final int EVREventType_VREvent_Quit = 700; - /** native declaration : headers\openvr_capi.h:423 */ - public static final int EVREventType_VREvent_ProcessQuit = 701; - /** native declaration : headers\openvr_capi.h:424 */ - public static final int EVREventType_VREvent_QuitAborted_UserPrompt = 702; - /** native declaration : headers\openvr_capi.h:425 */ - public static final int EVREventType_VREvent_QuitAcknowledged = 703; - /** native declaration : headers\openvr_capi.h:426 */ - public static final int EVREventType_VREvent_DriverRequestedQuit = 704; - /** native declaration : headers\openvr_capi.h:427 */ - public static final int EVREventType_VREvent_ChaperoneDataHasChanged = 800; - /** native declaration : headers\openvr_capi.h:428 */ - public static final int EVREventType_VREvent_ChaperoneUniverseHasChanged = 801; - /** native declaration : headers\openvr_capi.h:429 */ - public static final int EVREventType_VREvent_ChaperoneTempDataHasChanged = 802; - /** native declaration : headers\openvr_capi.h:430 */ - public static final int EVREventType_VREvent_ChaperoneSettingsHaveChanged = 803; - /** native declaration : headers\openvr_capi.h:431 */ - public static final int EVREventType_VREvent_SeatedZeroPoseReset = 804; - /** native declaration : headers\openvr_capi.h:432 */ - public static final int EVREventType_VREvent_AudioSettingsHaveChanged = 820; - /** native declaration : headers\openvr_capi.h:433 */ - public static final int EVREventType_VREvent_BackgroundSettingHasChanged = 850; - /** native declaration : headers\openvr_capi.h:434 */ - public static final int EVREventType_VREvent_CameraSettingsHaveChanged = 851; - /** native declaration : headers\openvr_capi.h:435 */ - public static final int EVREventType_VREvent_ReprojectionSettingHasChanged = 852; - /** native declaration : headers\openvr_capi.h:436 */ - public static final int EVREventType_VREvent_ModelSkinSettingsHaveChanged = 853; - /** native declaration : headers\openvr_capi.h:437 */ - public static final int EVREventType_VREvent_EnvironmentSettingsHaveChanged = 854; - /** native declaration : headers\openvr_capi.h:438 */ - public static final int EVREventType_VREvent_PowerSettingsHaveChanged = 855; - /** native declaration : headers\openvr_capi.h:439 */ - public static final int EVREventType_VREvent_StatusUpdate = 900; - /** native declaration : headers\openvr_capi.h:440 */ - public static final int EVREventType_VREvent_MCImageUpdated = 1000; - /** native declaration : headers\openvr_capi.h:441 */ - public static final int EVREventType_VREvent_FirmwareUpdateStarted = 1100; - /** native declaration : headers\openvr_capi.h:442 */ - public static final int EVREventType_VREvent_FirmwareUpdateFinished = 1101; - /** native declaration : headers\openvr_capi.h:443 */ - public static final int EVREventType_VREvent_KeyboardClosed = 1200; - /** native declaration : headers\openvr_capi.h:444 */ - public static final int EVREventType_VREvent_KeyboardCharInput = 1201; - /** native declaration : headers\openvr_capi.h:445 */ - public static final int EVREventType_VREvent_KeyboardDone = 1202; - /** native declaration : headers\openvr_capi.h:446 */ - public static final int EVREventType_VREvent_ApplicationTransitionStarted = 1300; - /** native declaration : headers\openvr_capi.h:447 */ - public static final int EVREventType_VREvent_ApplicationTransitionAborted = 1301; - /** native declaration : headers\openvr_capi.h:448 */ - public static final int EVREventType_VREvent_ApplicationTransitionNewAppStarted = 1302; - /** native declaration : headers\openvr_capi.h:449 */ - public static final int EVREventType_VREvent_ApplicationListUpdated = 1303; - /** native declaration : headers\openvr_capi.h:450 */ - public static final int EVREventType_VREvent_ApplicationMimeTypeLoad = 1304; - /** native declaration : headers\openvr_capi.h:451 */ - public static final int EVREventType_VREvent_ApplicationTransitionNewAppLaunchComplete = 1305; - /** native declaration : headers\openvr_capi.h:452 */ - public static final int EVREventType_VREvent_Compositor_MirrorWindowShown = 1400; - /** native declaration : headers\openvr_capi.h:453 */ - public static final int EVREventType_VREvent_Compositor_MirrorWindowHidden = 1401; - /** native declaration : headers\openvr_capi.h:454 */ - public static final int EVREventType_VREvent_Compositor_ChaperoneBoundsShown = 1410; - /** native declaration : headers\openvr_capi.h:455 */ - public static final int EVREventType_VREvent_Compositor_ChaperoneBoundsHidden = 1411; - /** native declaration : headers\openvr_capi.h:456 */ - public static final int EVREventType_VREvent_TrackedCamera_StartVideoStream = 1500; - /** native declaration : headers\openvr_capi.h:457 */ - public static final int EVREventType_VREvent_TrackedCamera_StopVideoStream = 1501; - /** native declaration : headers\openvr_capi.h:458 */ - public static final int EVREventType_VREvent_TrackedCamera_PauseVideoStream = 1502; - /** native declaration : headers\openvr_capi.h:459 */ - public static final int EVREventType_VREvent_TrackedCamera_ResumeVideoStream = 1503; - /** native declaration : headers\openvr_capi.h:460 */ - public static final int EVREventType_VREvent_TrackedCamera_EditingSurface = 1550; - /** native declaration : headers\openvr_capi.h:461 */ - public static final int EVREventType_VREvent_PerformanceTest_EnableCapture = 1600; - /** native declaration : headers\openvr_capi.h:462 */ - public static final int EVREventType_VREvent_PerformanceTest_DisableCapture = 1601; - /** native declaration : headers\openvr_capi.h:463 */ - public static final int EVREventType_VREvent_PerformanceTest_FidelityLevel = 1602; - /** native declaration : headers\openvr_capi.h:464 */ - public static final int EVREventType_VREvent_MessageOverlay_Closed = 1650; - /** native declaration : headers\openvr_capi.h:465 */ - public static final int EVREventType_VREvent_VendorSpecific_Reserved_Start = 10000; - /** native declaration : headers\openvr_capi.h:466 */ - public static final int EVREventType_VREvent_VendorSpecific_Reserved_End = 19999; - }; - /** - * native declaration : headers\openvr_capi.h:474
    - * enum values - */ - public static interface EDeviceActivityLevel { - /** native declaration : headers\openvr_capi.h:469 */ - public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Unknown = -1; - /** native declaration : headers\openvr_capi.h:470 */ - public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Idle = 0; - /** native declaration : headers\openvr_capi.h:471 */ - public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction = 1; - /** native declaration : headers\openvr_capi.h:472 */ - public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction_Timeout = 2; - /** native declaration : headers\openvr_capi.h:473 */ - public static final int EDeviceActivityLevel_k_EDeviceActivityLevel_Standby = 3; - }; - /** - * native declaration : headers\openvr_capi.h:494
    - * enum values - */ - public static interface EVRButtonId { - /** native declaration : headers\openvr_capi.h:476 */ - public static final int EVRButtonId_k_EButton_System = 0; - /** native declaration : headers\openvr_capi.h:477 */ - public static final int EVRButtonId_k_EButton_ApplicationMenu = 1; - /** native declaration : headers\openvr_capi.h:478 */ - public static final int EVRButtonId_k_EButton_Grip = 2; - /** native declaration : headers\openvr_capi.h:479 */ - public static final int EVRButtonId_k_EButton_DPad_Left = 3; - /** native declaration : headers\openvr_capi.h:480 */ - public static final int EVRButtonId_k_EButton_DPad_Up = 4; - /** native declaration : headers\openvr_capi.h:481 */ - public static final int EVRButtonId_k_EButton_DPad_Right = 5; - /** native declaration : headers\openvr_capi.h:482 */ - public static final int EVRButtonId_k_EButton_DPad_Down = 6; - /** native declaration : headers\openvr_capi.h:483 */ - public static final int EVRButtonId_k_EButton_A = 7; - /** native declaration : headers\openvr_capi.h:484 */ - public static final int EVRButtonId_k_EButton_ProximitySensor = 31; - /** native declaration : headers\openvr_capi.h:485 */ - public static final int EVRButtonId_k_EButton_Axis0 = 32; - /** native declaration : headers\openvr_capi.h:486 */ - public static final int EVRButtonId_k_EButton_Axis1 = 33; - /** native declaration : headers\openvr_capi.h:487 */ - public static final int EVRButtonId_k_EButton_Axis2 = 34; - /** native declaration : headers\openvr_capi.h:488 */ - public static final int EVRButtonId_k_EButton_Axis3 = 35; - /** native declaration : headers\openvr_capi.h:489 */ - public static final int EVRButtonId_k_EButton_Axis4 = 36; - /** native declaration : headers\openvr_capi.h:490 */ - public static final int EVRButtonId_k_EButton_SteamVR_Touchpad = 32; - /** native declaration : headers\openvr_capi.h:491 */ - public static final int EVRButtonId_k_EButton_SteamVR_Trigger = 33; - /** native declaration : headers\openvr_capi.h:492 */ - public static final int EVRButtonId_k_EButton_Dashboard_Back = 2; - /** native declaration : headers\openvr_capi.h:493 */ - public static final int EVRButtonId_k_EButton_Max = 64; - }; - /** - * native declaration : headers\openvr_capi.h:499
    - * enum values - */ - public static interface EVRMouseButton { - /** native declaration : headers\openvr_capi.h:496 */ - public static final int EVRMouseButton_VRMouseButton_Left = 1; - /** native declaration : headers\openvr_capi.h:497 */ - public static final int EVRMouseButton_VRMouseButton_Right = 2; - /** native declaration : headers\openvr_capi.h:498 */ - public static final int EVRMouseButton_VRMouseButton_Middle = 4; - }; + * Global entry points
    + * Original signature : intptr_t VR_InitInternal(EVRInitError*, EVRApplicationType)
    + * native declaration : headers\openvr_capi.h:1923
    + * @deprecated use the safer methods {@link #VR_InitInternal(java.nio.IntBuffer, int)} and {@link #VR_InitInternal(com.sun.jna.ptr.IntByReference, int)} instead + */ + @Deprecated + public static native IntByReference VR_InitInternal(IntByReference peError, int eType); /** - * native declaration : headers\openvr_capi.h:505
    - * enum values - */ - public static interface EHiddenAreaMeshType { - /** native declaration : headers\openvr_capi.h:501 */ - public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Standard = 0; - /** native declaration : headers\openvr_capi.h:502 */ - public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Inverse = 1; - /** native declaration : headers\openvr_capi.h:503 */ - public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_LineLoop = 2; - /** native declaration : headers\openvr_capi.h:504 */ - public static final int EHiddenAreaMeshType_k_eHiddenAreaMesh_Max = 3; - }; + * Global entry points
    + * Original signature : intptr_t VR_InitInternal(EVRInitError*, EVRApplicationType)
    + * native declaration : headers\openvr_capi.h:1923 + */ + public static native IntByReference VR_InitInternal(IntBuffer peError, int eType); /** - * native declaration : headers\openvr_capi.h:511
    - * enum values - */ - public static interface EVRControllerAxisType { - /** native declaration : headers\openvr_capi.h:507 */ - public static final int EVRControllerAxisType_k_eControllerAxis_None = 0; - /** native declaration : headers\openvr_capi.h:508 */ - public static final int EVRControllerAxisType_k_eControllerAxis_TrackPad = 1; - /** native declaration : headers\openvr_capi.h:509 */ - public static final int EVRControllerAxisType_k_eControllerAxis_Joystick = 2; - /** native declaration : headers\openvr_capi.h:510 */ - public static final int EVRControllerAxisType_k_eControllerAxis_Trigger = 3; - }; + * Original signature : void VR_ShutdownInternal()
    + * native declaration : headers\openvr_capi.h:1925 + */ + public static native void VR_ShutdownInternal(); /** - * native declaration : headers\openvr_capi.h:515
    - * enum values - */ - public static interface EVRControllerEventOutputType { - /** native declaration : headers\openvr_capi.h:513 */ - public static final int EVRControllerEventOutputType_ControllerEventOutput_OSEvents = 0; - /** native declaration : headers\openvr_capi.h:514 */ - public static final int EVRControllerEventOutputType_ControllerEventOutput_VREvents = 1; - }; + * Original signature : bool VR_IsHmdPresent()
    + * native declaration : headers\openvr_capi.h:1927 + */ + public static native byte VR_IsHmdPresent(); /** - * native declaration : headers\openvr_capi.h:523
    - * enum values - */ - public static interface ECollisionBoundsStyle { - /** native declaration : headers\openvr_capi.h:517 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_BEGINNER = 0; - /** native declaration : headers\openvr_capi.h:518 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_INTERMEDIATE = 1; - /** native declaration : headers\openvr_capi.h:519 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_SQUARES = 2; - /** native declaration : headers\openvr_capi.h:520 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_ADVANCED = 3; - /** native declaration : headers\openvr_capi.h:521 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_NONE = 4; - /** native declaration : headers\openvr_capi.h:522 */ - public static final int ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_COUNT = 5; - }; + * Original signature : intptr_t VR_GetGenericInterface(const char*, EVRInitError*)
    + * native declaration : headers\openvr_capi.h:1929
    + * @deprecated use the safer methods {@link #VR_GetGenericInterface(java.lang.String, java.nio.IntBuffer)} and {@link #VR_GetGenericInterface(com.sun.jna.Pointer, com.sun.jna.ptr.IntByReference)} instead + */ + @Deprecated + public static native IntByReference VR_GetGenericInterface(Pointer pchInterfaceVersion, IntByReference peError); /** - * native declaration : headers\openvr_capi.h:546
    - * enum values - */ - public static interface EVROverlayError { - /** native declaration : headers\openvr_capi.h:525 */ - public static final int EVROverlayError_VROverlayError_None = 0; - /** native declaration : headers\openvr_capi.h:526 */ - public static final int EVROverlayError_VROverlayError_UnknownOverlay = 10; - /** native declaration : headers\openvr_capi.h:527 */ - public static final int EVROverlayError_VROverlayError_InvalidHandle = 11; - /** native declaration : headers\openvr_capi.h:528 */ - public static final int EVROverlayError_VROverlayError_PermissionDenied = 12; - /** native declaration : headers\openvr_capi.h:529 */ - public static final int EVROverlayError_VROverlayError_OverlayLimitExceeded = 13; - /** native declaration : headers\openvr_capi.h:530 */ - public static final int EVROverlayError_VROverlayError_WrongVisibilityType = 14; - /** native declaration : headers\openvr_capi.h:531 */ - public static final int EVROverlayError_VROverlayError_KeyTooLong = 15; - /** native declaration : headers\openvr_capi.h:532 */ - public static final int EVROverlayError_VROverlayError_NameTooLong = 16; - /** native declaration : headers\openvr_capi.h:533 */ - public static final int EVROverlayError_VROverlayError_KeyInUse = 17; - /** native declaration : headers\openvr_capi.h:534 */ - public static final int EVROverlayError_VROverlayError_WrongTransformType = 18; - /** native declaration : headers\openvr_capi.h:535 */ - public static final int EVROverlayError_VROverlayError_InvalidTrackedDevice = 19; - /** native declaration : headers\openvr_capi.h:536 */ - public static final int EVROverlayError_VROverlayError_InvalidParameter = 20; - /** native declaration : headers\openvr_capi.h:537 */ - public static final int EVROverlayError_VROverlayError_ThumbnailCantBeDestroyed = 21; - /** native declaration : headers\openvr_capi.h:538 */ - public static final int EVROverlayError_VROverlayError_ArrayTooSmall = 22; - /** native declaration : headers\openvr_capi.h:539 */ - public static final int EVROverlayError_VROverlayError_RequestFailed = 23; - /** native declaration : headers\openvr_capi.h:540 */ - public static final int EVROverlayError_VROverlayError_InvalidTexture = 24; - /** native declaration : headers\openvr_capi.h:541 */ - public static final int EVROverlayError_VROverlayError_UnableToLoadFile = 25; - /** native declaration : headers\openvr_capi.h:542 */ - public static final int EVROverlayError_VROverlayError_KeyboardAlreadyInUse = 26; - /** native declaration : headers\openvr_capi.h:543 */ - public static final int EVROverlayError_VROverlayError_NoNeighbor = 27; - /** native declaration : headers\openvr_capi.h:544 */ - public static final int EVROverlayError_VROverlayError_TooManyMaskPrimitives = 29; - /** native declaration : headers\openvr_capi.h:545 */ - public static final int EVROverlayError_VROverlayError_BadMaskPrimitive = 30; - }; + * Original signature : intptr_t VR_GetGenericInterface(const char*, EVRInitError*)
    + * native declaration : headers\openvr_capi.h:1929 + */ + public static native IntByReference VR_GetGenericInterface(String pchInterfaceVersion, IntByReference peError); /** - * native declaration : headers\openvr_capi.h:556
    - * enum values - */ - public static interface EVRApplicationType { - /** native declaration : headers\openvr_capi.h:548 */ - public static final int EVRApplicationType_VRApplication_Other = 0; - /** native declaration : headers\openvr_capi.h:549 */ - public static final int EVRApplicationType_VRApplication_Scene = 1; - /** native declaration : headers\openvr_capi.h:550 */ - public static final int EVRApplicationType_VRApplication_Overlay = 2; - /** native declaration : headers\openvr_capi.h:551 */ - public static final int EVRApplicationType_VRApplication_Background = 3; - /** native declaration : headers\openvr_capi.h:552 */ - public static final int EVRApplicationType_VRApplication_Utility = 4; - /** native declaration : headers\openvr_capi.h:553 */ - public static final int EVRApplicationType_VRApplication_VRMonitor = 5; - /** native declaration : headers\openvr_capi.h:554 */ - public static final int EVRApplicationType_VRApplication_SteamWatchdog = 6; - /** native declaration : headers\openvr_capi.h:555 */ - public static final int EVRApplicationType_VRApplication_Max = 7; - }; + * Original signature : bool VR_IsRuntimeInstalled()
    + * native declaration : headers\openvr_capi.h:1931 + */ + public static native byte VR_IsRuntimeInstalled(); /** - * native declaration : headers\openvr_capi.h:561
    - * enum values - */ - public static interface EVRFirmwareError { - /** native declaration : headers\openvr_capi.h:558 */ - public static final int EVRFirmwareError_VRFirmwareError_None = 0; - /** native declaration : headers\openvr_capi.h:559 */ - public static final int EVRFirmwareError_VRFirmwareError_Success = 1; - /** native declaration : headers\openvr_capi.h:560 */ - public static final int EVRFirmwareError_VRFirmwareError_Fail = 2; - }; + * Original signature : char* VR_GetVRInitErrorAsSymbol(EVRInitError)
    + * native declaration : headers\openvr_capi.h:1933 + */ + public static native Pointer VR_GetVRInitErrorAsSymbol(int error); /** - * native declaration : headers\openvr_capi.h:568
    - * enum values - */ - public static interface EVRNotificationError { - /** native declaration : headers\openvr_capi.h:563 */ - public static final int EVRNotificationError_VRNotificationError_OK = 0; - /** native declaration : headers\openvr_capi.h:564 */ - public static final int EVRNotificationError_VRNotificationError_InvalidNotificationId = 100; - /** native declaration : headers\openvr_capi.h:565 */ - public static final int EVRNotificationError_VRNotificationError_NotificationQueueFull = 101; - /** native declaration : headers\openvr_capi.h:566 */ - public static final int EVRNotificationError_VRNotificationError_InvalidOverlayHandle = 102; - /** native declaration : headers\openvr_capi.h:567 */ - public static final int EVRNotificationError_VRNotificationError_SystemWithUserValueAlreadyExists = 103; + * Original signature : char* VR_GetVRInitErrorAsEnglishDescription(EVRInitError)
    + * native declaration : headers\openvr_capi.h:1935 + */ + public static native Pointer VR_GetVRInitErrorAsEnglishDescription(int error); + public static class VkQueue_T extends PointerType { + public VkQueue_T(Pointer address) { + super(address); + } + public VkQueue_T() { + super(); + } }; - - /** - * native declaration : headers\openvr_capi.h:648
    - * enum values - */ - public static interface EVRInitError { - /** native declaration : headers\openvr_capi.h:570 */ - public static final int EVRInitError_VRInitError_None = 0; - /** native declaration : headers\openvr_capi.h:571 */ - public static final int EVRInitError_VRInitError_Unknown = 1; - /** native declaration : headers\openvr_capi.h:572 */ - public static final int EVRInitError_VRInitError_Init_InstallationNotFound = 100; - /** native declaration : headers\openvr_capi.h:573 */ - public static final int EVRInitError_VRInitError_Init_InstallationCorrupt = 101; - /** native declaration : headers\openvr_capi.h:574 */ - public static final int EVRInitError_VRInitError_Init_VRClientDLLNotFound = 102; - /** native declaration : headers\openvr_capi.h:575 */ - public static final int EVRInitError_VRInitError_Init_FileNotFound = 103; - /** native declaration : headers\openvr_capi.h:576 */ - public static final int EVRInitError_VRInitError_Init_FactoryNotFound = 104; - /** native declaration : headers\openvr_capi.h:577 */ - public static final int EVRInitError_VRInitError_Init_InterfaceNotFound = 105; - /** native declaration : headers\openvr_capi.h:578 */ - public static final int EVRInitError_VRInitError_Init_InvalidInterface = 106; - /** native declaration : headers\openvr_capi.h:579 */ - public static final int EVRInitError_VRInitError_Init_UserConfigDirectoryInvalid = 107; - /** native declaration : headers\openvr_capi.h:580 */ - public static final int EVRInitError_VRInitError_Init_HmdNotFound = 108; - /** native declaration : headers\openvr_capi.h:581 */ - public static final int EVRInitError_VRInitError_Init_NotInitialized = 109; - /** native declaration : headers\openvr_capi.h:582 */ - public static final int EVRInitError_VRInitError_Init_PathRegistryNotFound = 110; - /** native declaration : headers\openvr_capi.h:583 */ - public static final int EVRInitError_VRInitError_Init_NoConfigPath = 111; - /** native declaration : headers\openvr_capi.h:584 */ - public static final int EVRInitError_VRInitError_Init_NoLogPath = 112; - /** native declaration : headers\openvr_capi.h:585 */ - public static final int EVRInitError_VRInitError_Init_PathRegistryNotWritable = 113; - /** native declaration : headers\openvr_capi.h:586 */ - public static final int EVRInitError_VRInitError_Init_AppInfoInitFailed = 114; - /** native declaration : headers\openvr_capi.h:587 */ - public static final int EVRInitError_VRInitError_Init_Retry = 115; - /** native declaration : headers\openvr_capi.h:588 */ - public static final int EVRInitError_VRInitError_Init_InitCanceledByUser = 116; - /** native declaration : headers\openvr_capi.h:589 */ - public static final int EVRInitError_VRInitError_Init_AnotherAppLaunching = 117; - /** native declaration : headers\openvr_capi.h:590 */ - public static final int EVRInitError_VRInitError_Init_SettingsInitFailed = 118; - /** native declaration : headers\openvr_capi.h:591 */ - public static final int EVRInitError_VRInitError_Init_ShuttingDown = 119; - /** native declaration : headers\openvr_capi.h:592 */ - public static final int EVRInitError_VRInitError_Init_TooManyObjects = 120; - /** native declaration : headers\openvr_capi.h:593 */ - public static final int EVRInitError_VRInitError_Init_NoServerForBackgroundApp = 121; - /** native declaration : headers\openvr_capi.h:594 */ - public static final int EVRInitError_VRInitError_Init_NotSupportedWithCompositor = 122; - /** native declaration : headers\openvr_capi.h:595 */ - public static final int EVRInitError_VRInitError_Init_NotAvailableToUtilityApps = 123; - /** native declaration : headers\openvr_capi.h:596 */ - public static final int EVRInitError_VRInitError_Init_Internal = 124; - /** native declaration : headers\openvr_capi.h:597 */ - public static final int EVRInitError_VRInitError_Init_HmdDriverIdIsNone = 125; - /** native declaration : headers\openvr_capi.h:598 */ - public static final int EVRInitError_VRInitError_Init_HmdNotFoundPresenceFailed = 126; - /** native declaration : headers\openvr_capi.h:599 */ - public static final int EVRInitError_VRInitError_Init_VRMonitorNotFound = 127; - /** native declaration : headers\openvr_capi.h:600 */ - public static final int EVRInitError_VRInitError_Init_VRMonitorStartupFailed = 128; - /** native declaration : headers\openvr_capi.h:601 */ - public static final int EVRInitError_VRInitError_Init_LowPowerWatchdogNotSupported = 129; - /** native declaration : headers\openvr_capi.h:602 */ - public static final int EVRInitError_VRInitError_Init_InvalidApplicationType = 130; - /** native declaration : headers\openvr_capi.h:603 */ - public static final int EVRInitError_VRInitError_Init_NotAvailableToWatchdogApps = 131; - /** native declaration : headers\openvr_capi.h:604 */ - public static final int EVRInitError_VRInitError_Init_WatchdogDisabledInSettings = 132; - /** native declaration : headers\openvr_capi.h:605 */ - public static final int EVRInitError_VRInitError_Init_VRDashboardNotFound = 133; - /** native declaration : headers\openvr_capi.h:606 */ - public static final int EVRInitError_VRInitError_Init_VRDashboardStartupFailed = 134; - /** native declaration : headers\openvr_capi.h:607 */ - public static final int EVRInitError_VRInitError_Driver_Failed = 200; - /** native declaration : headers\openvr_capi.h:608 */ - public static final int EVRInitError_VRInitError_Driver_Unknown = 201; - /** native declaration : headers\openvr_capi.h:609 */ - public static final int EVRInitError_VRInitError_Driver_HmdUnknown = 202; - /** native declaration : headers\openvr_capi.h:610 */ - public static final int EVRInitError_VRInitError_Driver_NotLoaded = 203; - /** native declaration : headers\openvr_capi.h:611 */ - public static final int EVRInitError_VRInitError_Driver_RuntimeOutOfDate = 204; - /** native declaration : headers\openvr_capi.h:612 */ - public static final int EVRInitError_VRInitError_Driver_HmdInUse = 205; - /** native declaration : headers\openvr_capi.h:613 */ - public static final int EVRInitError_VRInitError_Driver_NotCalibrated = 206; - /** native declaration : headers\openvr_capi.h:614 */ - public static final int EVRInitError_VRInitError_Driver_CalibrationInvalid = 207; - /** native declaration : headers\openvr_capi.h:615 */ - public static final int EVRInitError_VRInitError_Driver_HmdDisplayNotFound = 208; - /** native declaration : headers\openvr_capi.h:616 */ - public static final int EVRInitError_VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209; - /** native declaration : headers\openvr_capi.h:617 */ - public static final int EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds = 211; - /** native declaration : headers\openvr_capi.h:618 */ - public static final int EVRInitError_VRInitError_Driver_HmdDisplayMirrored = 212; - /** native declaration : headers\openvr_capi.h:619 */ - public static final int EVRInitError_VRInitError_IPC_ServerInitFailed = 300; - /** native declaration : headers\openvr_capi.h:620 */ - public static final int EVRInitError_VRInitError_IPC_ConnectFailed = 301; - /** native declaration : headers\openvr_capi.h:621 */ - public static final int EVRInitError_VRInitError_IPC_SharedStateInitFailed = 302; - /** native declaration : headers\openvr_capi.h:622 */ - public static final int EVRInitError_VRInitError_IPC_CompositorInitFailed = 303; - /** native declaration : headers\openvr_capi.h:623 */ - public static final int EVRInitError_VRInitError_IPC_MutexInitFailed = 304; - /** native declaration : headers\openvr_capi.h:624 */ - public static final int EVRInitError_VRInitError_IPC_Failed = 305; - /** native declaration : headers\openvr_capi.h:625 */ - public static final int EVRInitError_VRInitError_IPC_CompositorConnectFailed = 306; - /** native declaration : headers\openvr_capi.h:626 */ - public static final int EVRInitError_VRInitError_IPC_CompositorInvalidConnectResponse = 307; - /** native declaration : headers\openvr_capi.h:627 */ - public static final int EVRInitError_VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308; - /** native declaration : headers\openvr_capi.h:628 */ - public static final int EVRInitError_VRInitError_Compositor_Failed = 400; - /** native declaration : headers\openvr_capi.h:629 */ - public static final int EVRInitError_VRInitError_Compositor_D3D11HardwareRequired = 401; - /** native declaration : headers\openvr_capi.h:630 */ - public static final int EVRInitError_VRInitError_Compositor_FirmwareRequiresUpdate = 402; - /** native declaration : headers\openvr_capi.h:631 */ - public static final int EVRInitError_VRInitError_Compositor_OverlayInitFailed = 403; - /** native declaration : headers\openvr_capi.h:632 */ - public static final int EVRInitError_VRInitError_Compositor_ScreenshotsInitFailed = 404; - /** native declaration : headers\openvr_capi.h:633 */ - public static final int EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000; - /** native declaration : headers\openvr_capi.h:634 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101; - /** native declaration : headers\openvr_capi.h:635 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102; - /** native declaration : headers\openvr_capi.h:636 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103; - /** native declaration : headers\openvr_capi.h:637 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104; - /** native declaration : headers\openvr_capi.h:638 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105; - /** native declaration : headers\openvr_capi.h:639 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106; - /** native declaration : headers\openvr_capi.h:640 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107; - /** native declaration : headers\openvr_capi.h:641 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108; - /** native declaration : headers\openvr_capi.h:642 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109; - /** native declaration : headers\openvr_capi.h:643 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110; - /** native declaration : headers\openvr_capi.h:644 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111; - /** native declaration : headers\openvr_capi.h:645 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError = 1112; - /** native declaration : headers\openvr_capi.h:646 */ - public static final int EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113; - /** native declaration : headers\openvr_capi.h:647 */ - public static final int EVRInitError_VRInitError_Steam_SteamInstallationNotFound = 2000; + public static class VkPhysicalDevice_T extends PointerType { + public VkPhysicalDevice_T(Pointer address) { + super(address); + } + public VkPhysicalDevice_T() { + super(); + } }; - - - - /** - * native declaration : headers\openvr_capi.h:656
    - * enum values - */ - public static interface EVRScreenshotType { - /** native declaration : headers\openvr_capi.h:650 */ - public static final int EVRScreenshotType_VRScreenshotType_None = 0; - /** native declaration : headers\openvr_capi.h:651 */ - public static final int EVRScreenshotType_VRScreenshotType_Mono = 1; - /** native declaration : headers\openvr_capi.h:652 */ - public static final int EVRScreenshotType_VRScreenshotType_Stereo = 2; - /** native declaration : headers\openvr_capi.h:653 */ - public static final int EVRScreenshotType_VRScreenshotType_Cubemap = 3; - /** native declaration : headers\openvr_capi.h:654 */ - public static final int EVRScreenshotType_VRScreenshotType_MonoPanorama = 4; - /** native declaration : headers\openvr_capi.h:655 */ - public static final int EVRScreenshotType_VRScreenshotType_StereoPanorama = 5; - }; - /** - * native declaration : headers\openvr_capi.h:660
    - * enum values - */ - public static interface EVRScreenshotPropertyFilenames { - /** native declaration : headers\openvr_capi.h:658 */ - public static final int EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_Preview = 0; - /** native declaration : headers\openvr_capi.h:659 */ - public static final int EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_VR = 1; - }; - /** - * native declaration : headers\openvr_capi.h:679
    - * enum values - */ - public static interface EVRTrackedCameraError { - /** native declaration : headers\openvr_capi.h:662 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_None = 0; - /** native declaration : headers\openvr_capi.h:663 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_OperationFailed = 100; - /** native declaration : headers\openvr_capi.h:664 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidHandle = 101; - /** native declaration : headers\openvr_capi.h:665 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameHeaderVersion = 102; - /** native declaration : headers\openvr_capi.h:666 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_OutOfHandles = 103; - /** native declaration : headers\openvr_capi.h:667 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_IPCFailure = 104; - /** native declaration : headers\openvr_capi.h:668 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_NotSupportedForThisDevice = 105; - /** native declaration : headers\openvr_capi.h:669 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_SharedMemoryFailure = 106; - /** native declaration : headers\openvr_capi.h:670 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_FrameBufferingFailure = 107; - /** native declaration : headers\openvr_capi.h:671 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_StreamSetupFailure = 108; - /** native declaration : headers\openvr_capi.h:672 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidGLTextureId = 109; - /** native declaration : headers\openvr_capi.h:673 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidSharedTextureHandle = 110; - /** native declaration : headers\openvr_capi.h:674 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_FailedToGetGLTextureId = 111; - /** native declaration : headers\openvr_capi.h:675 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_SharedTextureFailure = 112; - /** native declaration : headers\openvr_capi.h:676 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_NoFrameAvailable = 113; - /** native declaration : headers\openvr_capi.h:677 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidArgument = 114; - /** native declaration : headers\openvr_capi.h:678 */ - public static final int EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameBufferSize = 115; - }; - /** - * native declaration : headers\openvr_capi.h:685
    - * enum values - */ - public static interface EVRTrackedCameraFrameType { - /** native declaration : headers\openvr_capi.h:681 */ - public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Distorted = 0; - /** native declaration : headers\openvr_capi.h:682 */ - public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Undistorted = 1; - /** native declaration : headers\openvr_capi.h:683 */ - public static final int EVRTrackedCameraFrameType_VRTrackedCameraFrameType_MaximumUndistorted = 2; - /** native declaration : headers\openvr_capi.h:684 */ - public static final int EVRTrackedCameraFrameType_MAX_CAMERA_FRAME_TYPES = 3; - }; - /** - * native declaration : headers\openvr_capi.h:707
    - * enum values - */ - public static interface EVRApplicationError { - /** native declaration : headers\openvr_capi.h:687 */ - public static final int EVRApplicationError_VRApplicationError_None = 0; - /** native declaration : headers\openvr_capi.h:688 */ - public static final int EVRApplicationError_VRApplicationError_AppKeyAlreadyExists = 100; - /** native declaration : headers\openvr_capi.h:689 */ - public static final int EVRApplicationError_VRApplicationError_NoManifest = 101; - /** native declaration : headers\openvr_capi.h:690 */ - public static final int EVRApplicationError_VRApplicationError_NoApplication = 102; - /** native declaration : headers\openvr_capi.h:691 */ - public static final int EVRApplicationError_VRApplicationError_InvalidIndex = 103; - /** native declaration : headers\openvr_capi.h:692 */ - public static final int EVRApplicationError_VRApplicationError_UnknownApplication = 104; - /** native declaration : headers\openvr_capi.h:693 */ - public static final int EVRApplicationError_VRApplicationError_IPCFailed = 105; - /** native declaration : headers\openvr_capi.h:694 */ - public static final int EVRApplicationError_VRApplicationError_ApplicationAlreadyRunning = 106; - /** native declaration : headers\openvr_capi.h:695 */ - public static final int EVRApplicationError_VRApplicationError_InvalidManifest = 107; - /** native declaration : headers\openvr_capi.h:696 */ - public static final int EVRApplicationError_VRApplicationError_InvalidApplication = 108; - /** native declaration : headers\openvr_capi.h:697 */ - public static final int EVRApplicationError_VRApplicationError_LaunchFailed = 109; - /** native declaration : headers\openvr_capi.h:698 */ - public static final int EVRApplicationError_VRApplicationError_ApplicationAlreadyStarting = 110; - /** native declaration : headers\openvr_capi.h:699 */ - public static final int EVRApplicationError_VRApplicationError_LaunchInProgress = 111; - /** native declaration : headers\openvr_capi.h:700 */ - public static final int EVRApplicationError_VRApplicationError_OldApplicationQuitting = 112; - /** native declaration : headers\openvr_capi.h:701 */ - public static final int EVRApplicationError_VRApplicationError_TransitionAborted = 113; - /** native declaration : headers\openvr_capi.h:702 */ - public static final int EVRApplicationError_VRApplicationError_IsTemplate = 114; - /** native declaration : headers\openvr_capi.h:703 */ - public static final int EVRApplicationError_VRApplicationError_BufferTooSmall = 200; - /** native declaration : headers\openvr_capi.h:704 */ - public static final int EVRApplicationError_VRApplicationError_PropertyNotSet = 201; - /** native declaration : headers\openvr_capi.h:705 */ - public static final int EVRApplicationError_VRApplicationError_UnknownProperty = 202; - /** native declaration : headers\openvr_capi.h:706 */ - public static final int EVRApplicationError_VRApplicationError_InvalidParameter = 203; - }; - /** - * native declaration : headers\openvr_capi.h:724
    - * enum values - */ - public static interface EVRApplicationProperty { - /** native declaration : headers\openvr_capi.h:709 */ - public static final int EVRApplicationProperty_VRApplicationProperty_Name_String = 0; - /** native declaration : headers\openvr_capi.h:710 */ - public static final int EVRApplicationProperty_VRApplicationProperty_LaunchType_String = 11; - /** native declaration : headers\openvr_capi.h:711 */ - public static final int EVRApplicationProperty_VRApplicationProperty_WorkingDirectory_String = 12; - /** native declaration : headers\openvr_capi.h:712 */ - public static final int EVRApplicationProperty_VRApplicationProperty_BinaryPath_String = 13; - /** native declaration : headers\openvr_capi.h:713 */ - public static final int EVRApplicationProperty_VRApplicationProperty_Arguments_String = 14; - /** native declaration : headers\openvr_capi.h:714 */ - public static final int EVRApplicationProperty_VRApplicationProperty_URL_String = 15; - /** native declaration : headers\openvr_capi.h:715 */ - public static final int EVRApplicationProperty_VRApplicationProperty_Description_String = 50; - /** native declaration : headers\openvr_capi.h:716 */ - public static final int EVRApplicationProperty_VRApplicationProperty_NewsURL_String = 51; - /** native declaration : headers\openvr_capi.h:717 */ - public static final int EVRApplicationProperty_VRApplicationProperty_ImagePath_String = 52; - /** native declaration : headers\openvr_capi.h:718 */ - public static final int EVRApplicationProperty_VRApplicationProperty_Source_String = 53; - /** native declaration : headers\openvr_capi.h:719 */ - public static final int EVRApplicationProperty_VRApplicationProperty_IsDashboardOverlay_Bool = 60; - /** native declaration : headers\openvr_capi.h:720 */ - public static final int EVRApplicationProperty_VRApplicationProperty_IsTemplate_Bool = 61; - /** native declaration : headers\openvr_capi.h:721 */ - public static final int EVRApplicationProperty_VRApplicationProperty_IsInstanced_Bool = 62; - /** native declaration : headers\openvr_capi.h:722 */ - public static final int EVRApplicationProperty_VRApplicationProperty_IsInternal_Bool = 63; - /** native declaration : headers\openvr_capi.h:723 */ - public static final int EVRApplicationProperty_VRApplicationProperty_LastLaunchTime_Uint64 = 70; - }; - /** - * native declaration : headers\openvr_capi.h:730
    - * enum values - */ - public static interface EVRApplicationTransitionState { - /** native declaration : headers\openvr_capi.h:726 */ - public static final int EVRApplicationTransitionState_VRApplicationTransition_None = 0; - /** native declaration : headers\openvr_capi.h:727 */ - public static final int EVRApplicationTransitionState_VRApplicationTransition_OldAppQuitSent = 10; - /** native declaration : headers\openvr_capi.h:728 */ - public static final int EVRApplicationTransitionState_VRApplicationTransition_WaitingForExternalLaunch = 11; - /** native declaration : headers\openvr_capi.h:729 */ - public static final int EVRApplicationTransitionState_VRApplicationTransition_NewAppLaunched = 20; - }; - /** - * native declaration : headers\openvr_capi.h:742
    - * enum values - */ - public static interface ChaperoneCalibrationState { - /** native declaration : headers\openvr_capi.h:732 */ - public static final int ChaperoneCalibrationState_OK = 1; - /** native declaration : headers\openvr_capi.h:733 */ - public static final int ChaperoneCalibrationState_Warning = 100; - /** native declaration : headers\openvr_capi.h:734 */ - public static final int ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved = 101; - /** native declaration : headers\openvr_capi.h:735 */ - public static final int ChaperoneCalibrationState_Warning_BaseStationRemoved = 102; - /** native declaration : headers\openvr_capi.h:736 */ - public static final int ChaperoneCalibrationState_Warning_SeatedBoundsInvalid = 103; - /** native declaration : headers\openvr_capi.h:737 */ - public static final int ChaperoneCalibrationState_Error = 200; - /** native declaration : headers\openvr_capi.h:738 */ - public static final int ChaperoneCalibrationState_Error_BaseStationUninitialized = 201; - /** native declaration : headers\openvr_capi.h:739 */ - public static final int ChaperoneCalibrationState_Error_BaseStationConflict = 202; - /** native declaration : headers\openvr_capi.h:740 */ - public static final int ChaperoneCalibrationState_Error_PlayAreaInvalid = 203; - /** native declaration : headers\openvr_capi.h:741 */ - public static final int ChaperoneCalibrationState_Error_CollisionBoundsInvalid = 204; - }; - /** - * native declaration : headers\openvr_capi.h:746
    - * enum values - */ - public static interface EChaperoneConfigFile { - /** native declaration : headers\openvr_capi.h:744 */ - public static final int EChaperoneConfigFile_Live = 1; - /** native declaration : headers\openvr_capi.h:745 */ - public static final int EChaperoneConfigFile_Temp = 2; - }; - /** - * native declaration : headers\openvr_capi.h:749
    - * enum values - */ - public static interface EChaperoneImportFlags { - /** native declaration : headers\openvr_capi.h:748 */ - public static final int EChaperoneImportFlags_EChaperoneImport_BoundsOnly = 1; - }; - /** - * native declaration : headers\openvr_capi.h:762
    - * enum values - */ - public static interface EVRCompositorError { - /** native declaration : headers\openvr_capi.h:751 */ - public static final int EVRCompositorError_VRCompositorError_None = 0; - /** native declaration : headers\openvr_capi.h:752 */ - public static final int EVRCompositorError_VRCompositorError_RequestFailed = 1; - /** native declaration : headers\openvr_capi.h:753 */ - public static final int EVRCompositorError_VRCompositorError_IncompatibleVersion = 100; - /** native declaration : headers\openvr_capi.h:754 */ - public static final int EVRCompositorError_VRCompositorError_DoNotHaveFocus = 101; - /** native declaration : headers\openvr_capi.h:755 */ - public static final int EVRCompositorError_VRCompositorError_InvalidTexture = 102; - /** native declaration : headers\openvr_capi.h:756 */ - public static final int EVRCompositorError_VRCompositorError_IsNotSceneApplication = 103; - /** native declaration : headers\openvr_capi.h:757 */ - public static final int EVRCompositorError_VRCompositorError_TextureIsOnWrongDevice = 104; - /** native declaration : headers\openvr_capi.h:758 */ - public static final int EVRCompositorError_VRCompositorError_TextureUsesUnsupportedFormat = 105; - /** native declaration : headers\openvr_capi.h:759 */ - public static final int EVRCompositorError_VRCompositorError_SharedTexturesNotSupported = 106; - /** native declaration : headers\openvr_capi.h:760 */ - public static final int EVRCompositorError_VRCompositorError_IndexOutOfRange = 107; - /** native declaration : headers\openvr_capi.h:761 */ - public static final int EVRCompositorError_VRCompositorError_AlreadySubmitted = 108; + public static class VkInstance_T extends PointerType { + public VkInstance_T(Pointer address) { + super(address); + } + public VkInstance_T() { + super(); + } + }; + public static class ID3D12CommandQueue extends PointerType { + public ID3D12CommandQueue(Pointer address) { + super(address); + } + public ID3D12CommandQueue() { + super(); + } + }; + public static class ID3D12Resource extends PointerType { + public ID3D12Resource(Pointer address) { + super(address); + } + public ID3D12Resource() { + super(); + } + }; + public static class VkDevice_T extends PointerType { + public VkDevice_T(Pointer address) { + super(address); + } + public VkDevice_T() { + super(); + } }; - - - - /** - * native declaration : headers\openvr_capi.h:766
    - * enum values - */ - public static interface VROverlayInputMethod { - /** native declaration : headers\openvr_capi.h:764 */ - public static final int VROverlayInputMethod_None = 0; - /** native declaration : headers\openvr_capi.h:765 */ - public static final int VROverlayInputMethod_Mouse = 1; - }; - /** - * native declaration : headers\openvr_capi.h:772
    - * enum values - */ - public static interface VROverlayTransformType { - /** native declaration : headers\openvr_capi.h:768 */ - public static final int VROverlayTransformType_VROverlayTransform_Absolute = 0; - /** native declaration : headers\openvr_capi.h:769 */ - public static final int VROverlayTransformType_VROverlayTransform_TrackedDeviceRelative = 1; - /** native declaration : headers\openvr_capi.h:770 */ - public static final int VROverlayTransformType_VROverlayTransform_SystemOverlay = 2; - /** native declaration : headers\openvr_capi.h:771 */ - public static final int VROverlayTransformType_VROverlayTransform_TrackedComponent = 3; - }; - /** - * native declaration : headers\openvr_capi.h:790
    - * enum values - */ - public static interface VROverlayFlags { - /** native declaration : headers\openvr_capi.h:774 */ - public static final int VROverlayFlags_None = 0; - /** native declaration : headers\openvr_capi.h:775 */ - public static final int VROverlayFlags_Curved = 1; - /** native declaration : headers\openvr_capi.h:776 */ - public static final int VROverlayFlags_RGSS4X = 2; - /** native declaration : headers\openvr_capi.h:777 */ - public static final int VROverlayFlags_NoDashboardTab = 3; - /** native declaration : headers\openvr_capi.h:778 */ - public static final int VROverlayFlags_AcceptsGamepadEvents = 4; - /** native declaration : headers\openvr_capi.h:779 */ - public static final int VROverlayFlags_ShowGamepadFocus = 5; - /** native declaration : headers\openvr_capi.h:780 */ - public static final int VROverlayFlags_SendVRScrollEvents = 6; - /** native declaration : headers\openvr_capi.h:781 */ - public static final int VROverlayFlags_SendVRTouchpadEvents = 7; - /** native declaration : headers\openvr_capi.h:782 */ - public static final int VROverlayFlags_ShowTouchPadScrollWheel = 8; - /** native declaration : headers\openvr_capi.h:783 */ - public static final int VROverlayFlags_TransferOwnershipToInternalProcess = 9; - /** native declaration : headers\openvr_capi.h:784 */ - public static final int VROverlayFlags_SideBySide_Parallel = 10; - /** native declaration : headers\openvr_capi.h:785 */ - public static final int VROverlayFlags_SideBySide_Crossed = 11; - /** native declaration : headers\openvr_capi.h:786 */ - public static final int VROverlayFlags_Panorama = 12; - /** native declaration : headers\openvr_capi.h:787 */ - public static final int VROverlayFlags_StereoPanorama = 13; - /** native declaration : headers\openvr_capi.h:788 */ - public static final int VROverlayFlags_SortWithNonSceneOverlays = 14; - /** native declaration : headers\openvr_capi.h:789 */ - public static final int VROverlayFlags_VisibleInDashboard = 15; - }; - /** - * native declaration : headers\openvr_capi.h:799
    - * enum values - */ - public static interface VRMessageOverlayResponse { - /** native declaration : headers\openvr_capi.h:792 */ - public static final int VRMessageOverlayResponse_ButtonPress_0 = 0; - /** native declaration : headers\openvr_capi.h:793 */ - public static final int VRMessageOverlayResponse_ButtonPress_1 = 1; - /** native declaration : headers\openvr_capi.h:794 */ - public static final int VRMessageOverlayResponse_ButtonPress_2 = 2; - /** native declaration : headers\openvr_capi.h:795 */ - public static final int VRMessageOverlayResponse_ButtonPress_3 = 3; - /** native declaration : headers\openvr_capi.h:796 */ - public static final int VRMessageOverlayResponse_CouldntFindSystemOverlay = 4; - /** native declaration : headers\openvr_capi.h:797 */ - public static final int VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay = 5; - /** native declaration : headers\openvr_capi.h:798 */ - public static final int VRMessageOverlayResponse_ApplicationQuit = 6; - }; - /** - * native declaration : headers\openvr_capi.h:804
    - * enum values - */ - public static interface EGamepadTextInputMode { - /** native declaration : headers\openvr_capi.h:801 */ - public static final int EGamepadTextInputMode_k_EGamepadTextInputModeNormal = 0; - /** native declaration : headers\openvr_capi.h:802 */ - public static final int EGamepadTextInputMode_k_EGamepadTextInputModePassword = 1; - /** native declaration : headers\openvr_capi.h:803 */ - public static final int EGamepadTextInputMode_k_EGamepadTextInputModeSubmit = 2; - }; - /** - * native declaration : headers\openvr_capi.h:808
    - * enum values - */ - public static interface EGamepadTextInputLineMode { - /** native declaration : headers\openvr_capi.h:806 */ - public static final int EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine = 0; - /** native declaration : headers\openvr_capi.h:807 */ - public static final int EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines = 1; - }; - /** - * native declaration : headers\openvr_capi.h:815
    - * enum values - */ - public static interface EOverlayDirection { - /** native declaration : headers\openvr_capi.h:810 */ - public static final int EOverlayDirection_OverlayDirection_Up = 0; - /** native declaration : headers\openvr_capi.h:811 */ - public static final int EOverlayDirection_OverlayDirection_Down = 1; - /** native declaration : headers\openvr_capi.h:812 */ - public static final int EOverlayDirection_OverlayDirection_Left = 2; - /** native declaration : headers\openvr_capi.h:813 */ - public static final int EOverlayDirection_OverlayDirection_Right = 3; - /** native declaration : headers\openvr_capi.h:814 */ - public static final int EOverlayDirection_OverlayDirection_Count = 4; - }; - /** - * native declaration : headers\openvr_capi.h:819
    - * enum values - */ - public static interface EVROverlayIntersectionMaskPrimitiveType { - /** native declaration : headers\openvr_capi.h:817 */ - public static final int EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Rectangle = 0; - /** native declaration : headers\openvr_capi.h:818 */ - public static final int EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Circle = 1; - }; - /** - * native declaration : headers\openvr_capi.h:834
    - * enum values - */ - public static interface EVRRenderModelError { - /** native declaration : headers\openvr_capi.h:821 */ - public static final int EVRRenderModelError_VRRenderModelError_None = 0; - /** native declaration : headers\openvr_capi.h:822 */ - public static final int EVRRenderModelError_VRRenderModelError_Loading = 100; - /** native declaration : headers\openvr_capi.h:823 */ - public static final int EVRRenderModelError_VRRenderModelError_NotSupported = 200; - /** native declaration : headers\openvr_capi.h:824 */ - public static final int EVRRenderModelError_VRRenderModelError_InvalidArg = 300; - /** native declaration : headers\openvr_capi.h:825 */ - public static final int EVRRenderModelError_VRRenderModelError_InvalidModel = 301; - /** native declaration : headers\openvr_capi.h:826 */ - public static final int EVRRenderModelError_VRRenderModelError_NoShapes = 302; - /** native declaration : headers\openvr_capi.h:827 */ - public static final int EVRRenderModelError_VRRenderModelError_MultipleShapes = 303; - /** native declaration : headers\openvr_capi.h:828 */ - public static final int EVRRenderModelError_VRRenderModelError_TooManyVertices = 304; - /** native declaration : headers\openvr_capi.h:829 */ - public static final int EVRRenderModelError_VRRenderModelError_MultipleTextures = 305; - /** native declaration : headers\openvr_capi.h:830 */ - public static final int EVRRenderModelError_VRRenderModelError_BufferTooSmall = 306; - /** native declaration : headers\openvr_capi.h:831 */ - public static final int EVRRenderModelError_VRRenderModelError_NotEnoughNormals = 307; - /** native declaration : headers\openvr_capi.h:832 */ - public static final int EVRRenderModelError_VRRenderModelError_NotEnoughTexCoords = 308; - /** native declaration : headers\openvr_capi.h:833 */ - public static final int EVRRenderModelError_VRRenderModelError_InvalidTexture = 400; - }; - /** - * native declaration : headers\openvr_capi.h:841
    - * enum values - */ - public static interface EVRComponentProperty { - /** native declaration : headers\openvr_capi.h:836 */ - public static final int EVRComponentProperty_VRComponentProperty_IsStatic = 1; - /** native declaration : headers\openvr_capi.h:837 */ - public static final int EVRComponentProperty_VRComponentProperty_IsVisible = 2; - /** native declaration : headers\openvr_capi.h:838 */ - public static final int EVRComponentProperty_VRComponentProperty_IsTouched = 4; - /** native declaration : headers\openvr_capi.h:839 */ - public static final int EVRComponentProperty_VRComponentProperty_IsPressed = 8; - /** native declaration : headers\openvr_capi.h:840 */ - public static final int EVRComponentProperty_VRComponentProperty_IsScrolled = 16; - }; - /** - * native declaration : headers\openvr_capi.h:846
    - * enum values - */ - public static interface EVRNotificationType { - /** native declaration : headers\openvr_capi.h:843 */ - public static final int EVRNotificationType_Transient = 0; - /** native declaration : headers\openvr_capi.h:844 */ - public static final int EVRNotificationType_Persistent = 1; - /** native declaration : headers\openvr_capi.h:845 */ - public static final int EVRNotificationType_Transient_SystemWithUserValue = 2; - }; - /** - * native declaration : headers\openvr_capi.h:853
    - * enum values - */ - public static interface EVRNotificationStyle { - /** native declaration : headers\openvr_capi.h:848 */ - public static final int EVRNotificationStyle_None = 0; - /** native declaration : headers\openvr_capi.h:849 */ - public static final int EVRNotificationStyle_Application = 100; - /** native declaration : headers\openvr_capi.h:850 */ - public static final int EVRNotificationStyle_Contact_Disabled = 200; - /** native declaration : headers\openvr_capi.h:851 */ - public static final int EVRNotificationStyle_Contact_Enabled = 201; - /** native declaration : headers\openvr_capi.h:852 */ - public static final int EVRNotificationStyle_Contact_Active = 202; - }; - /** - * native declaration : headers\openvr_capi.h:861
    - * enum values - */ - public static interface EVRSettingsError { - /** native declaration : headers\openvr_capi.h:855 */ - public static final int EVRSettingsError_VRSettingsError_None = 0; - /** native declaration : headers\openvr_capi.h:856 */ - public static final int EVRSettingsError_VRSettingsError_IPCFailed = 1; - /** native declaration : headers\openvr_capi.h:857 */ - public static final int EVRSettingsError_VRSettingsError_WriteFailed = 2; - /** native declaration : headers\openvr_capi.h:858 */ - public static final int EVRSettingsError_VRSettingsError_ReadFailed = 3; - /** native declaration : headers\openvr_capi.h:859 */ - public static final int EVRSettingsError_VRSettingsError_JsonParseFailed = 4; - /** native declaration : headers\openvr_capi.h:860 */ - public static final int EVRSettingsError_VRSettingsError_UnsetSettingHasNoDefault = 5; - }; - /** - * native declaration : headers\openvr_capi.h:869
    - * enum values - */ - public static interface EVRScreenshotError { - /** native declaration : headers\openvr_capi.h:863 */ - public static final int EVRScreenshotError_VRScreenshotError_None = 0; - /** native declaration : headers\openvr_capi.h:864 */ - public static final int EVRScreenshotError_VRScreenshotError_RequestFailed = 1; - /** native declaration : headers\openvr_capi.h:865 */ - public static final int EVRScreenshotError_VRScreenshotError_IncompatibleVersion = 100; - /** native declaration : headers\openvr_capi.h:866 */ - public static final int EVRScreenshotError_VRScreenshotError_NotFound = 101; - /** native declaration : headers\openvr_capi.h:867 */ - public static final int EVRScreenshotError_VRScreenshotError_BufferTooSmall = 102; - /** native declaration : headers\openvr_capi.h:868 */ - public static final int EVRScreenshotError_VRScreenshotError_ScreenshotAlreadyInProgress = 108; - }; - - /** - * Global entry points
    - * Original signature : intptr_t VR_InitInternal(EVRInitError*, EVRApplicationType)
    - * native declaration : headers\openvr_capi.h:1876
    - */ - public static native IntByReference VR_InitInternal(IntByReference peError, int eType); - /** - * Global entry points
    - * Original signature : intptr_t VR_InitInternal(EVRInitError*, EVRApplicationType)
    - * native declaration : headers\openvr_capi.h:1876 - */ - public static native IntByReference VR_InitInternal(IntBuffer peError, int eType); - /** - * Original signature : void VR_ShutdownInternal()
    - * native declaration : headers\openvr_capi.h:1878 - */ - public static native void VR_ShutdownInternal(); - /** - * Original signature : bool VR_IsHmdPresent()
    - * native declaration : headers\openvr_capi.h:1880 - */ - public static native byte VR_IsHmdPresent(); - /** - * Original signature : intptr_t VR_GetGenericInterface(const char*, EVRInitError*)
    - * native declaration : headers\openvr_capi.h:1882
    - * @deprecated use the safer methods {@link #VR_GetGenericInterface(java.lang.String, java.nio.IntBuffer)} and {@link #VR_GetGenericInterface(com.sun.jna.Pointer, com.sun.jna.ptr.IntByReference)} instead - */ - @Deprecated - public static native IntByReference VR_GetGenericInterface(Pointer pchInterfaceVersion, IntByReference peError); - /** - * Original signature : intptr_t VR_GetGenericInterface(const char*, EVRInitError*)
    - * native declaration : headers\openvr_capi.h:1882 - */ - public static native IntByReference VR_GetGenericInterface(String pchInterfaceVersion, IntByReference peError); - /** - * Original signature : bool VR_IsRuntimeInstalled()
    - * native declaration : headers\openvr_capi.h:1884 - */ - public static native byte VR_IsRuntimeInstalled(); - /** - * Original signature : char* VR_GetVRInitErrorAsSymbol(EVRInitError)
    - * native declaration : headers\openvr_capi.h:1886 - */ - public static native Pointer VR_GetVRInitErrorAsSymbol(int error); - /** - * Original signature : char* VR_GetVRInitErrorAsEnglishDescription(EVRInitError)
    - * native declaration : headers\openvr_capi.h:1888 - */ - public static native Pointer VR_GetVRInitErrorAsEnglishDescription(int error); - public static class VkQueue_T extends PointerType { - public VkQueue_T(Pointer address) { - super(address); - } - public VkQueue_T() { - super(); - } - }; - public static class VkPhysicalDevice_T extends PointerType { - public VkPhysicalDevice_T(Pointer address) { - super(address); - } - public VkPhysicalDevice_T() { - super(); - } - }; - public static class VkInstance_T extends PointerType { - public VkInstance_T(Pointer address) { - super(address); - } - public VkInstance_T() { - super(); - } - }; - public static class ID3D12CommandQueue extends PointerType { - public ID3D12CommandQueue(Pointer address) { - super(address); - } - public ID3D12CommandQueue() { - super(); - } - }; - public static class ID3D12Resource extends PointerType { - public ID3D12Resource(Pointer address) { - super(address); - } - public ID3D12Resource() { - super(); - } - }; - public static class VkDevice_T extends PointerType { - public VkDevice_T(Pointer address) { - super(address); - } - public VkDevice_T() { - super(); - } - }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/NotificationBitmap_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/NotificationBitmap_t.java index d8dcbf67d..1a932f1ec 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/NotificationBitmap_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/NotificationBitmap_t.java @@ -4,44 +4,44 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1236
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class NotificationBitmap_t extends Structure { + * native declaration : headers\openvr_capi.h:1263
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class NotificationBitmap_t extends Structure { /** - * void *
    - * C type : void* - */ - public Pointer m_pImageData; - public int m_nWidth; - public int m_nHeight; - public int m_nBytesPerPixel; - public NotificationBitmap_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_pImageData", "m_nWidth", "m_nHeight", "m_nBytesPerPixel"); - } + * void *
    + * C type : void* + */ + public Pointer m_pImageData; + public int m_nWidth; + public int m_nHeight; + public int m_nBytesPerPixel; + public NotificationBitmap_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_pImageData", "m_nWidth", "m_nHeight", "m_nBytesPerPixel"); + } /** - * @param m_pImageData void *
    - * C type : void* - */ - public NotificationBitmap_t(Pointer m_pImageData, int m_nWidth, int m_nHeight, int m_nBytesPerPixel) { - super(); - this.m_pImageData = m_pImageData; - this.m_nWidth = m_nWidth; - this.m_nHeight = m_nHeight; - this.m_nBytesPerPixel = m_nBytesPerPixel; - } - public NotificationBitmap_t(Pointer peer) { - super(peer); - } - public static class ByReference extends NotificationBitmap_t implements Structure.ByReference { - - }; - public static class ByValue extends NotificationBitmap_t implements Structure.ByValue { - - }; + * @param m_pImageData void *
    + * C type : void* + */ + public NotificationBitmap_t(Pointer m_pImageData, int m_nWidth, int m_nHeight, int m_nBytesPerPixel) { + super(); + this.m_pImageData = m_pImageData; + this.m_nWidth = m_nWidth; + this.m_nHeight = m_nHeight; + this.m_nBytesPerPixel = m_nBytesPerPixel; + } + public NotificationBitmap_t(Pointer peer) { + super(peer); + } + public static class ByReference extends NotificationBitmap_t implements Structure.ByReference { + + }; + public static class ByValue extends NotificationBitmap_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/OpenVRUtil.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/OpenVRUtil.java index fd7731f1c..78b96e962 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/OpenVRUtil.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/OpenVRUtil.java @@ -1,6 +1,6 @@ package com.jme3.system.jopenvr; -import com.jme3.input.vr.OpenVRInput; +import com.jme3.input.vr.openvr.OpenVRInput; import com.jme3.system.jopenvr.JOpenVRLibrary.EColorSpace; import com.jme3.system.jopenvr.JOpenVRLibrary.ETextureType; import com.jme3.system.jopenvr.JOpenVRLibrary.ETrackedDeviceProperty; @@ -13,8 +13,7 @@ import com.sun.jna.ptr.IntByReference; /** * A utility class that provide helper methods for OpenVR system. - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org - * + * @author Julien Seinturier - 2017 - http://www.seinturier.fr */ public class OpenVRUtil { @@ -677,9 +676,6 @@ public class OpenVRUtil { case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary: str = ""; break; - case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_UsesDriverDirectMode_Bool: - str = ""; - break; case ETrackedDeviceProperty.ETrackedDeviceProperty_Prop_AttachedDeviceId_String: str = ""; break; diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ComponentState_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ComponentState_t.java index ca123da43..4bd2b75bc 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ComponentState_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ComponentState_t.java @@ -4,42 +4,42 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1205
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class RenderModel_ComponentState_t extends Structure { - /** C type : HmdMatrix34_t */ - public HmdMatrix34_t mTrackingToComponentRenderModel; - /** C type : HmdMatrix34_t */ - public HmdMatrix34_t mTrackingToComponentLocal; - /** C type : VRComponentProperties */ - public int uProperties; - public RenderModel_ComponentState_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("mTrackingToComponentRenderModel", "mTrackingToComponentLocal", "uProperties"); - } + * native declaration : headers\openvr_capi.h:1232
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class RenderModel_ComponentState_t extends Structure { + /** C type : HmdMatrix34_t */ + public HmdMatrix34_t mTrackingToComponentRenderModel; + /** C type : HmdMatrix34_t */ + public HmdMatrix34_t mTrackingToComponentLocal; + /** C type : VRComponentProperties */ + public int uProperties; + public RenderModel_ComponentState_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("mTrackingToComponentRenderModel", "mTrackingToComponentLocal", "uProperties"); + } /** - * @param mTrackingToComponentRenderModel C type : HmdMatrix34_t
    - * @param mTrackingToComponentLocal C type : HmdMatrix34_t
    - * @param uProperties C type : VRComponentProperties - */ - public RenderModel_ComponentState_t(HmdMatrix34_t mTrackingToComponentRenderModel, HmdMatrix34_t mTrackingToComponentLocal, int uProperties) { - super(); - this.mTrackingToComponentRenderModel = mTrackingToComponentRenderModel; - this.mTrackingToComponentLocal = mTrackingToComponentLocal; - this.uProperties = uProperties; - } - public RenderModel_ComponentState_t(Pointer peer) { - super(peer); - } - public static class ByReference extends RenderModel_ComponentState_t implements Structure.ByReference { - - }; - public static class ByValue extends RenderModel_ComponentState_t implements Structure.ByValue { - - }; + * @param mTrackingToComponentRenderModel C type : HmdMatrix34_t
    + * @param mTrackingToComponentLocal C type : HmdMatrix34_t
    + * @param uProperties C type : VRComponentProperties + */ + public RenderModel_ComponentState_t(HmdMatrix34_t mTrackingToComponentRenderModel, HmdMatrix34_t mTrackingToComponentLocal, int uProperties) { + super(); + this.mTrackingToComponentRenderModel = mTrackingToComponentRenderModel; + this.mTrackingToComponentLocal = mTrackingToComponentLocal; + this.uProperties = uProperties; + } + public RenderModel_ComponentState_t(Pointer peer) { + super(peer); + } + public static class ByReference extends RenderModel_ComponentState_t implements Structure.ByReference { + + }; + public static class ByValue extends RenderModel_ComponentState_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ControllerMode_State_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ControllerMode_State_t.java index 768e3c17d..84a2c0b55 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ControllerMode_State_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_ControllerMode_State_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1229
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class RenderModel_ControllerMode_State_t extends Structure { - public byte bScrollWheelVisible; - public RenderModel_ControllerMode_State_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("bScrollWheelVisible"); - } - public RenderModel_ControllerMode_State_t(byte bScrollWheelVisible) { - super(); - this.bScrollWheelVisible = bScrollWheelVisible; - } - public RenderModel_ControllerMode_State_t(Pointer peer) { - super(peer); - } - public static class ByReference extends RenderModel_ControllerMode_State_t implements Structure.ByReference { - - }; - public static class ByValue extends RenderModel_ControllerMode_State_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1256
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class RenderModel_ControllerMode_State_t extends Structure { + public byte bScrollWheelVisible; + public RenderModel_ControllerMode_State_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("bScrollWheelVisible"); + } + public RenderModel_ControllerMode_State_t(byte bScrollWheelVisible) { + super(); + this.bScrollWheelVisible = bScrollWheelVisible; + } + public RenderModel_ControllerMode_State_t(Pointer peer) { + super(peer); + } + public static class ByReference extends RenderModel_ControllerMode_State_t implements Structure.ByReference { + + }; + public static class ByValue extends RenderModel_ControllerMode_State_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_TextureMap_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_TextureMap_t.java index 243b29983..06a5d714b 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_TextureMap_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_TextureMap_t.java @@ -4,42 +4,42 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1217
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class RenderModel_TextureMap_t extends Structure { - public short unWidth; - public short unHeight; + * native declaration : headers\openvr_capi.h:1244
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class RenderModel_TextureMap_t extends Structure { + public short unWidth; + public short unHeight; /** - * const uint8_t *
    - * C type : uint8_t* - */ - public Pointer rubTextureMapData; - public RenderModel_TextureMap_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("unWidth", "unHeight", "rubTextureMapData"); - } + * const uint8_t *
    + * C type : uint8_t* + */ + public Pointer rubTextureMapData; + public RenderModel_TextureMap_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("unWidth", "unHeight", "rubTextureMapData"); + } /** - * @param rubTextureMapData const uint8_t *
    - * C type : uint8_t* - */ - public RenderModel_TextureMap_t(short unWidth, short unHeight, Pointer rubTextureMapData) { - super(); - this.unWidth = unWidth; - this.unHeight = unHeight; - this.rubTextureMapData = rubTextureMapData; - } - public RenderModel_TextureMap_t(Pointer peer) { - super(peer); - } - public static class ByReference extends RenderModel_TextureMap_t implements Structure.ByReference { - - }; - public static class ByValue extends RenderModel_TextureMap_t implements Structure.ByValue { - - }; + * @param rubTextureMapData const uint8_t *
    + * C type : uint8_t* + */ + public RenderModel_TextureMap_t(short unWidth, short unHeight, Pointer rubTextureMapData) { + super(); + this.unWidth = unWidth; + this.unHeight = unHeight; + this.rubTextureMapData = rubTextureMapData; + } + public RenderModel_TextureMap_t(Pointer peer) { + super(peer); + } + public static class ByReference extends RenderModel_TextureMap_t implements Structure.ByReference { + + }; + public static class ByValue extends RenderModel_TextureMap_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_Vertex_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_Vertex_t.java index d4087fbed..5cd761b24 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_Vertex_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_Vertex_t.java @@ -4,48 +4,48 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1211
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class RenderModel_Vertex_t extends Structure { - /** C type : HmdVector3_t */ - public HmdVector3_t vPosition; - /** C type : HmdVector3_t */ - public HmdVector3_t vNormal; + * native declaration : headers\openvr_capi.h:1238
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class RenderModel_Vertex_t extends Structure { + /** C type : HmdVector3_t */ + public HmdVector3_t vPosition; + /** C type : HmdVector3_t */ + public HmdVector3_t vNormal; /** - * float[2]
    - * C type : float[2] - */ - public float[] rfTextureCoord = new float[2]; - public RenderModel_Vertex_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("vPosition", "vNormal", "rfTextureCoord"); - } + * float[2]
    + * C type : float[2] + */ + public float[] rfTextureCoord = new float[2]; + public RenderModel_Vertex_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("vPosition", "vNormal", "rfTextureCoord"); + } /** - * @param vPosition C type : HmdVector3_t
    - * @param vNormal C type : HmdVector3_t
    - * @param rfTextureCoord float[2]
    - * C type : float[2] - */ - public RenderModel_Vertex_t(HmdVector3_t vPosition, HmdVector3_t vNormal, float rfTextureCoord[]) { - super(); - this.vPosition = vPosition; - this.vNormal = vNormal; - if ((rfTextureCoord.length != this.rfTextureCoord.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.rfTextureCoord = rfTextureCoord; - } - public RenderModel_Vertex_t(Pointer peer) { - super(peer); - } - public static class ByReference extends RenderModel_Vertex_t implements Structure.ByReference { - - }; - public static class ByValue extends RenderModel_Vertex_t implements Structure.ByValue { - - }; + * @param vPosition C type : HmdVector3_t
    + * @param vNormal C type : HmdVector3_t
    + * @param rfTextureCoord float[2]
    + * C type : float[2] + */ + public RenderModel_Vertex_t(HmdVector3_t vPosition, HmdVector3_t vNormal, float rfTextureCoord[]) { + super(); + this.vPosition = vPosition; + this.vNormal = vNormal; + if ((rfTextureCoord.length != this.rfTextureCoord.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.rfTextureCoord = rfTextureCoord; + } + public RenderModel_Vertex_t(Pointer peer) { + super(peer); + } + public static class ByReference extends RenderModel_Vertex_t implements Structure.ByReference { + + }; + public static class ByValue extends RenderModel_Vertex_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_t.java index 4687a593a..9c1f5db2d 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/RenderModel_t.java @@ -5,54 +5,54 @@ import com.sun.jna.ptr.ShortByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1226
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class RenderModel_t extends Structure { + * native declaration : headers\openvr_capi.h:1253
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class RenderModel_t extends Structure { /** - * const struct vr::RenderModel_Vertex_t *
    - * C type : RenderModel_Vertex_t* - */ - public com.jme3.system.jopenvr.RenderModel_Vertex_t.ByReference rVertexData; - public int unVertexCount; + * const struct vr::RenderModel_Vertex_t *
    + * C type : RenderModel_Vertex_t* + */ + public com.jme3.system.jopenvr.RenderModel_Vertex_t.ByReference rVertexData; + public int unVertexCount; /** - * const uint16_t *
    - * C type : uint16_t* - */ - public ShortByReference rIndexData; - public int unTriangleCount; - /** C type : TextureID_t */ - public int diffuseTextureId; - public RenderModel_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("rVertexData", "unVertexCount", "rIndexData", "unTriangleCount", "diffuseTextureId"); - } + * const uint16_t *
    + * C type : uint16_t* + */ + public ShortByReference rIndexData; + public int unTriangleCount; + /** C type : TextureID_t */ + public int diffuseTextureId; + public RenderModel_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("rVertexData", "unVertexCount", "rIndexData", "unTriangleCount", "diffuseTextureId"); + } /** - * @param rVertexData const struct vr::RenderModel_Vertex_t *
    - * C type : RenderModel_Vertex_t*
    - * @param rIndexData const uint16_t *
    - * C type : uint16_t*
    - * @param diffuseTextureId C type : TextureID_t - */ - public RenderModel_t(com.jme3.system.jopenvr.RenderModel_Vertex_t.ByReference rVertexData, int unVertexCount, ShortByReference rIndexData, int unTriangleCount, int diffuseTextureId) { - super(); - this.rVertexData = rVertexData; - this.unVertexCount = unVertexCount; - this.rIndexData = rIndexData; - this.unTriangleCount = unTriangleCount; - this.diffuseTextureId = diffuseTextureId; - } - public RenderModel_t(Pointer peer) { - super(peer); - } - public static class ByReference extends RenderModel_t implements Structure.ByReference { - - }; - public static class ByValue extends RenderModel_t implements Structure.ByValue { - - }; + * @param rVertexData const struct vr::RenderModel_Vertex_t *
    + * C type : RenderModel_Vertex_t*
    + * @param rIndexData const uint16_t *
    + * C type : uint16_t*
    + * @param diffuseTextureId C type : TextureID_t + */ + public RenderModel_t(com.jme3.system.jopenvr.RenderModel_Vertex_t.ByReference rVertexData, int unVertexCount, ShortByReference rIndexData, int unTriangleCount, int diffuseTextureId) { + super(); + this.rVertexData = rVertexData; + this.unVertexCount = unVertexCount; + this.rIndexData = rIndexData; + this.unTriangleCount = unTriangleCount; + this.diffuseTextureId = diffuseTextureId; + } + public RenderModel_t(Pointer peer) { + super(peer); + } + public static class ByReference extends RenderModel_t implements Structure.ByReference { + + }; + public static class ByValue extends RenderModel_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Texture_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Texture_t.java index fc12dea2c..a9f326f09 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/Texture_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/Texture_t.java @@ -4,54 +4,54 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:964
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class Texture_t extends Structure { + * native declaration : headers\openvr_capi.h:991
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class Texture_t extends Structure { /** - * void *
    - * C type : void* - */ - public int handle; + * void *
    + * C type : void* + */ + public int handle; /** - * @see ETextureType
    - * C type : ETextureType - */ - public int eType; + * @see ETextureType
    + * C type : ETextureType + */ + public int eType; /** - * @see EColorSpace
    - * C type : EColorSpace - */ - public int eColorSpace; - public Texture_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("handle", "eType", "eColorSpace"); - } + * @see EColorSpace
    + * C type : EColorSpace + */ + public int eColorSpace; + public Texture_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("handle", "eType", "eColorSpace"); + } /** - * @param handle void *
    - * C type : void*
    - * @param eType @see ETextureType
    - * C type : ETextureType
    - * @param eColorSpace @see EColorSpace
    - * C type : EColorSpace - */ - public Texture_t(int handle, int eType, int eColorSpace) { - super(); - this.handle = handle; - this.eType = eType; - this.eColorSpace = eColorSpace; - } - public Texture_t(Pointer peer) { - super(peer); - } - public static class ByReference extends Texture_t implements Structure.ByReference { - - }; - public static class ByValue extends Texture_t implements Structure.ByValue { - - }; + * @param handle void *
    + * C type : void*
    + * @param eType @see ETextureType
    + * C type : ETextureType
    + * @param eColorSpace @see EColorSpace
    + * C type : EColorSpace + */ + public Texture_t(int handle, int eType, int eColorSpace) { + super(); + this.handle = handle; + this.eType = eType; + this.eColorSpace = eColorSpace; + } + public Texture_t(Pointer peer) { + super(peer); + } + public static class ByReference extends Texture_t implements Structure.ByReference { + + }; + public static class ByValue extends Texture_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/TrackedDevicePose_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/TrackedDevicePose_t.java index 7d7823b95..9ccdab58a 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/TrackedDevicePose_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/TrackedDevicePose_t.java @@ -4,54 +4,54 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:974
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class TrackedDevicePose_t extends Structure { - /** C type : HmdMatrix34_t */ - public HmdMatrix34_t mDeviceToAbsoluteTracking; - /** C type : HmdVector3_t */ - public HmdVector3_t vVelocity; - /** C type : HmdVector3_t */ - public HmdVector3_t vAngularVelocity; + * native declaration : headers\openvr_capi.h:1001
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class TrackedDevicePose_t extends Structure { + /** C type : HmdMatrix34_t */ + public HmdMatrix34_t mDeviceToAbsoluteTracking; + /** C type : HmdVector3_t */ + public HmdVector3_t vVelocity; + /** C type : HmdVector3_t */ + public HmdVector3_t vAngularVelocity; /** - * @see ETrackingResult
    - * C type : ETrackingResult - */ - public int eTrackingResult; - public byte bPoseIsValid; - public byte bDeviceIsConnected; - public TrackedDevicePose_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("mDeviceToAbsoluteTracking", "vVelocity", "vAngularVelocity", "eTrackingResult", "bPoseIsValid", "bDeviceIsConnected"); - } + * @see ETrackingResult
    + * C type : ETrackingResult + */ + public int eTrackingResult; + public byte bPoseIsValid; + public byte bDeviceIsConnected; + public TrackedDevicePose_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("mDeviceToAbsoluteTracking", "vVelocity", "vAngularVelocity", "eTrackingResult", "bPoseIsValid", "bDeviceIsConnected"); + } /** - * @param mDeviceToAbsoluteTracking C type : HmdMatrix34_t
    - * @param vVelocity C type : HmdVector3_t
    - * @param vAngularVelocity C type : HmdVector3_t
    - * @param eTrackingResult @see ETrackingResult
    - * C type : ETrackingResult - */ - public TrackedDevicePose_t(HmdMatrix34_t mDeviceToAbsoluteTracking, HmdVector3_t vVelocity, HmdVector3_t vAngularVelocity, int eTrackingResult, byte bPoseIsValid, byte bDeviceIsConnected) { - super(); - this.mDeviceToAbsoluteTracking = mDeviceToAbsoluteTracking; - this.vVelocity = vVelocity; - this.vAngularVelocity = vAngularVelocity; - this.eTrackingResult = eTrackingResult; - this.bPoseIsValid = bPoseIsValid; - this.bDeviceIsConnected = bDeviceIsConnected; - } - public TrackedDevicePose_t(Pointer peer) { - super(peer); - } - public static class ByReference extends TrackedDevicePose_t implements Structure.ByReference { - - }; - public static class ByValue extends TrackedDevicePose_t implements Structure.ByValue { - - }; + * @param mDeviceToAbsoluteTracking C type : HmdMatrix34_t
    + * @param vVelocity C type : HmdVector3_t
    + * @param vAngularVelocity C type : HmdVector3_t
    + * @param eTrackingResult @see ETrackingResult
    + * C type : ETrackingResult + */ + public TrackedDevicePose_t(HmdMatrix34_t mDeviceToAbsoluteTracking, HmdVector3_t vVelocity, HmdVector3_t vAngularVelocity, int eTrackingResult, byte bPoseIsValid, byte bDeviceIsConnected) { + super(); + this.mDeviceToAbsoluteTracking = mDeviceToAbsoluteTracking; + this.vVelocity = vVelocity; + this.vAngularVelocity = vAngularVelocity; + this.eTrackingResult = eTrackingResult; + this.bPoseIsValid = bPoseIsValid; + this.bDeviceIsConnected = bDeviceIsConnected; + } + public TrackedDevicePose_t(Pointer peer) { + super(peer); + } + public static class ByReference extends TrackedDevicePose_t implements Structure.ByReference { + + }; + public static class ByValue extends TrackedDevicePose_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerAxis_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerAxis_t.java index 4a5d4d652..b6fea53ae 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerAxis_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerAxis_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1094
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VRControllerAxis_t extends Structure { - public float x; - public float y; - public VRControllerAxis_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("x", "y"); - } - public VRControllerAxis_t(float x, float y) { - super(); - this.x = x; - this.y = y; - } - public VRControllerAxis_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VRControllerAxis_t implements Structure.ByReference { - - }; - public static class ByValue extends VRControllerAxis_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1121
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VRControllerAxis_t extends Structure { + public float x; + public float y; + public VRControllerAxis_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("x", "y"); + } + public VRControllerAxis_t(float x, float y) { + super(); + this.x = x; + this.y = y; + } + public VRControllerAxis_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VRControllerAxis_t implements Structure.ByReference { + + }; + public static class ByValue extends VRControllerAxis_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerState_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerState_t.java index 04643f804..b1415c56b 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerState_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRControllerState_t.java @@ -4,46 +4,46 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1101
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VRControllerState_t extends Structure { - public int unPacketNum; - public long ulButtonPressed; - public long ulButtonTouched; + * native declaration : headers\openvr_capi.h:1128
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VRControllerState_t extends Structure { + public int unPacketNum; + public long ulButtonPressed; + public long ulButtonTouched; /** - * struct vr::VRControllerAxis_t[5]
    - * C type : VRControllerAxis_t[5] - */ - public VRControllerAxis_t[] rAxis = new VRControllerAxis_t[5]; - public VRControllerState_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("unPacketNum", "ulButtonPressed", "ulButtonTouched", "rAxis"); - } + * struct vr::VRControllerAxis_t[5]
    + * C type : VRControllerAxis_t[5] + */ + public VRControllerAxis_t[] rAxis = new VRControllerAxis_t[5]; + public VRControllerState_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("unPacketNum", "ulButtonPressed", "ulButtonTouched", "rAxis"); + } /** - * @param rAxis struct vr::VRControllerAxis_t[5]
    - * C type : VRControllerAxis_t[5] - */ - public VRControllerState_t(int unPacketNum, long ulButtonPressed, long ulButtonTouched, VRControllerAxis_t rAxis[]) { - super(); - this.unPacketNum = unPacketNum; - this.ulButtonPressed = ulButtonPressed; - this.ulButtonTouched = ulButtonTouched; - if ((rAxis.length != this.rAxis.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.rAxis = rAxis; - } - public VRControllerState_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VRControllerState_t implements Structure.ByReference { - - }; - public static class ByValue extends VRControllerState_t implements Structure.ByValue { - - }; + * @param rAxis struct vr::VRControllerAxis_t[5]
    + * C type : VRControllerAxis_t[5] + */ + public VRControllerState_t(int unPacketNum, long ulButtonPressed, long ulButtonTouched, VRControllerAxis_t rAxis[]) { + super(); + this.unPacketNum = unPacketNum; + this.ulButtonPressed = ulButtonPressed; + this.ulButtonTouched = ulButtonTouched; + if ((rAxis.length != this.rAxis.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.rAxis = rAxis; + } + public VRControllerState_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VRControllerState_t implements Structure.ByReference { + + }; + public static class ByValue extends VRControllerState_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ApplicationLaunch_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ApplicationLaunch_t.java index 44b822885..1a6076561 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ApplicationLaunch_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ApplicationLaunch_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1072
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_ApplicationLaunch_t extends Structure { - public int pid; - public int unArgsHandle; - public VREvent_ApplicationLaunch_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("pid", "unArgsHandle"); - } - public VREvent_ApplicationLaunch_t(int pid, int unArgsHandle) { - super(); - this.pid = pid; - this.unArgsHandle = unArgsHandle; - } - public VREvent_ApplicationLaunch_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_ApplicationLaunch_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_ApplicationLaunch_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1099
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_ApplicationLaunch_t extends Structure { + public int pid; + public int unArgsHandle; + public VREvent_ApplicationLaunch_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("pid", "unArgsHandle"); + } + public VREvent_ApplicationLaunch_t(int pid, int unArgsHandle) { + super(); + this.pid = pid; + this.unArgsHandle = unArgsHandle; + } + public VREvent_ApplicationLaunch_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_ApplicationLaunch_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_ApplicationLaunch_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Chaperone_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Chaperone_t.java index e9c62bf42..a9f49cfde 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Chaperone_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Chaperone_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1051
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Chaperone_t extends Structure { - public long m_nPreviousUniverse; - public long m_nCurrentUniverse; - public VREvent_Chaperone_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nPreviousUniverse", "m_nCurrentUniverse"); - } - public VREvent_Chaperone_t(long m_nPreviousUniverse, long m_nCurrentUniverse) { - super(); - this.m_nPreviousUniverse = m_nPreviousUniverse; - this.m_nCurrentUniverse = m_nCurrentUniverse; - } - public VREvent_Chaperone_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Chaperone_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Chaperone_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1078
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Chaperone_t extends Structure { + public long m_nPreviousUniverse; + public long m_nCurrentUniverse; + public VREvent_Chaperone_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nPreviousUniverse", "m_nCurrentUniverse"); + } + public VREvent_Chaperone_t(long m_nPreviousUniverse, long m_nCurrentUniverse) { + super(); + this.m_nPreviousUniverse = m_nPreviousUniverse; + this.m_nCurrentUniverse = m_nCurrentUniverse; + } + public VREvent_Chaperone_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Chaperone_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Chaperone_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Controller_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Controller_t.java index 22f2c6e11..289bc79cc 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Controller_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Controller_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1006
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Controller_t extends Structure { - public int button; - public VREvent_Controller_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("button"); - } - public VREvent_Controller_t(int button) { - super(); - this.button = button; - } - public VREvent_Controller_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Controller_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Controller_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1033
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Controller_t extends Structure { + public int button; + public VREvent_Controller_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("button"); + } + public VREvent_Controller_t(int button) { + super(); + this.button = button; + } + public VREvent_Controller_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Controller_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Controller_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Data_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Data_t.java index 40b0a3db6..be4f2229a 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Data_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Data_t.java @@ -2,134 +2,134 @@ package com.jme3.system.jopenvr; import com.sun.jna.Pointer; import com.sun.jna.Union; /** - * native declaration : headers\openvr_capi.h:1278
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Data_t extends Union { - /** C type : VREvent_Reserved_t */ - public VREvent_Reserved_t reserved; - /** C type : VREvent_Controller_t */ - public VREvent_Controller_t controller; - /** C type : VREvent_Mouse_t */ - public VREvent_Mouse_t mouse; - /** C type : VREvent_Scroll_t */ - public VREvent_Scroll_t scroll; - /** C type : VREvent_Process_t */ - public VREvent_Process_t process; - /** C type : VREvent_Notification_t */ - public VREvent_Notification_t notification; - /** C type : VREvent_Overlay_t */ - public VREvent_Overlay_t overlay; - /** C type : VREvent_Status_t */ - public VREvent_Status_t status; - /** C type : VREvent_Keyboard_t */ - public VREvent_Keyboard_t keyboard; - /** C type : VREvent_Ipd_t */ - public VREvent_Ipd_t ipd; - /** C type : VREvent_Chaperone_t */ - public VREvent_Chaperone_t chaperone; - /** C type : VREvent_PerformanceTest_t */ - public VREvent_PerformanceTest_t performanceTest; - /** C type : VREvent_TouchPadMove_t */ - public VREvent_TouchPadMove_t touchPadMove; - /** C type : VREvent_SeatedZeroPoseReset_t */ - public VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset; - public VREvent_Data_t() { - super(); - } - /** @param reserved C type : VREvent_Reserved_t */ - public VREvent_Data_t(VREvent_Reserved_t reserved) { - super(); - this.reserved = reserved; - setType(VREvent_Reserved_t.class); - } - /** @param controller C type : VREvent_Controller_t */ - public VREvent_Data_t(VREvent_Controller_t controller) { - super(); - this.controller = controller; - setType(VREvent_Controller_t.class); - } - /** @param mouse C type : VREvent_Mouse_t */ - public VREvent_Data_t(VREvent_Mouse_t mouse) { - super(); - this.mouse = mouse; - setType(VREvent_Mouse_t.class); - } - /** @param scroll C type : VREvent_Scroll_t */ - public VREvent_Data_t(VREvent_Scroll_t scroll) { - super(); - this.scroll = scroll; - setType(VREvent_Scroll_t.class); - } - /** @param process C type : VREvent_Process_t */ - public VREvent_Data_t(VREvent_Process_t process) { - super(); - this.process = process; - setType(VREvent_Process_t.class); - } - /** @param notification C type : VREvent_Notification_t */ - public VREvent_Data_t(VREvent_Notification_t notification) { - super(); - this.notification = notification; - setType(VREvent_Notification_t.class); - } - /** @param overlay C type : VREvent_Overlay_t */ - public VREvent_Data_t(VREvent_Overlay_t overlay) { - super(); - this.overlay = overlay; - setType(VREvent_Overlay_t.class); - } - /** @param status C type : VREvent_Status_t */ - public VREvent_Data_t(VREvent_Status_t status) { - super(); - this.status = status; - setType(VREvent_Status_t.class); - } - /** @param keyboard C type : VREvent_Keyboard_t */ - public VREvent_Data_t(VREvent_Keyboard_t keyboard) { - super(); - this.keyboard = keyboard; - setType(VREvent_Keyboard_t.class); - } - /** @param ipd C type : VREvent_Ipd_t */ - public VREvent_Data_t(VREvent_Ipd_t ipd) { - super(); - this.ipd = ipd; - setType(VREvent_Ipd_t.class); - } - /** @param chaperone C type : VREvent_Chaperone_t */ - public VREvent_Data_t(VREvent_Chaperone_t chaperone) { - super(); - this.chaperone = chaperone; - setType(VREvent_Chaperone_t.class); - } - /** @param performanceTest C type : VREvent_PerformanceTest_t */ - public VREvent_Data_t(VREvent_PerformanceTest_t performanceTest) { - super(); - this.performanceTest = performanceTest; - setType(VREvent_PerformanceTest_t.class); - } - /** @param touchPadMove C type : VREvent_TouchPadMove_t */ - public VREvent_Data_t(VREvent_TouchPadMove_t touchPadMove) { - super(); - this.touchPadMove = touchPadMove; - setType(VREvent_TouchPadMove_t.class); - } - /** @param seatedZeroPoseReset C type : VREvent_SeatedZeroPoseReset_t */ - public VREvent_Data_t(VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset) { - super(); - this.seatedZeroPoseReset = seatedZeroPoseReset; - setType(VREvent_SeatedZeroPoseReset_t.class); - } - public VREvent_Data_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Data_t implements com.sun.jna.Structure.ByReference { - - }; - public static class ByValue extends VREvent_Data_t implements com.sun.jna.Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1307
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Data_t extends Union { + /** C type : VREvent_Reserved_t */ + public VREvent_Reserved_t reserved; + /** C type : VREvent_Controller_t */ + public VREvent_Controller_t controller; + /** C type : VREvent_Mouse_t */ + public VREvent_Mouse_t mouse; + /** C type : VREvent_Scroll_t */ + public VREvent_Scroll_t scroll; + /** C type : VREvent_Process_t */ + public VREvent_Process_t process; + /** C type : VREvent_Notification_t */ + public VREvent_Notification_t notification; + /** C type : VREvent_Overlay_t */ + public VREvent_Overlay_t overlay; + /** C type : VREvent_Status_t */ + public VREvent_Status_t status; + /** C type : VREvent_Keyboard_t */ + public VREvent_Keyboard_t keyboard; + /** C type : VREvent_Ipd_t */ + public VREvent_Ipd_t ipd; + /** C type : VREvent_Chaperone_t */ + public VREvent_Chaperone_t chaperone; + /** C type : VREvent_PerformanceTest_t */ + public VREvent_PerformanceTest_t performanceTest; + /** C type : VREvent_TouchPadMove_t */ + public VREvent_TouchPadMove_t touchPadMove; + /** C type : VREvent_SeatedZeroPoseReset_t */ + public VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset; + public VREvent_Data_t() { + super(); + } + /** @param reserved C type : VREvent_Reserved_t */ + public VREvent_Data_t(VREvent_Reserved_t reserved) { + super(); + this.reserved = reserved; + setType(VREvent_Reserved_t.class); + } + /** @param controller C type : VREvent_Controller_t */ + public VREvent_Data_t(VREvent_Controller_t controller) { + super(); + this.controller = controller; + setType(VREvent_Controller_t.class); + } + /** @param mouse C type : VREvent_Mouse_t */ + public VREvent_Data_t(VREvent_Mouse_t mouse) { + super(); + this.mouse = mouse; + setType(VREvent_Mouse_t.class); + } + /** @param scroll C type : VREvent_Scroll_t */ + public VREvent_Data_t(VREvent_Scroll_t scroll) { + super(); + this.scroll = scroll; + setType(VREvent_Scroll_t.class); + } + /** @param process C type : VREvent_Process_t */ + public VREvent_Data_t(VREvent_Process_t process) { + super(); + this.process = process; + setType(VREvent_Process_t.class); + } + /** @param notification C type : VREvent_Notification_t */ + public VREvent_Data_t(VREvent_Notification_t notification) { + super(); + this.notification = notification; + setType(VREvent_Notification_t.class); + } + /** @param overlay C type : VREvent_Overlay_t */ + public VREvent_Data_t(VREvent_Overlay_t overlay) { + super(); + this.overlay = overlay; + setType(VREvent_Overlay_t.class); + } + /** @param status C type : VREvent_Status_t */ + public VREvent_Data_t(VREvent_Status_t status) { + super(); + this.status = status; + setType(VREvent_Status_t.class); + } + /** @param keyboard C type : VREvent_Keyboard_t */ + public VREvent_Data_t(VREvent_Keyboard_t keyboard) { + super(); + this.keyboard = keyboard; + setType(VREvent_Keyboard_t.class); + } + /** @param ipd C type : VREvent_Ipd_t */ + public VREvent_Data_t(VREvent_Ipd_t ipd) { + super(); + this.ipd = ipd; + setType(VREvent_Ipd_t.class); + } + /** @param chaperone C type : VREvent_Chaperone_t */ + public VREvent_Data_t(VREvent_Chaperone_t chaperone) { + super(); + this.chaperone = chaperone; + setType(VREvent_Chaperone_t.class); + } + /** @param performanceTest C type : VREvent_PerformanceTest_t */ + public VREvent_Data_t(VREvent_PerformanceTest_t performanceTest) { + super(); + this.performanceTest = performanceTest; + setType(VREvent_PerformanceTest_t.class); + } + /** @param touchPadMove C type : VREvent_TouchPadMove_t */ + public VREvent_Data_t(VREvent_TouchPadMove_t touchPadMove) { + super(); + this.touchPadMove = touchPadMove; + setType(VREvent_TouchPadMove_t.class); + } + /** @param seatedZeroPoseReset C type : VREvent_SeatedZeroPoseReset_t */ + public VREvent_Data_t(VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset) { + super(); + this.seatedZeroPoseReset = seatedZeroPoseReset; + setType(VREvent_SeatedZeroPoseReset_t.class); + } + public VREvent_Data_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Data_t implements com.sun.jna.Structure.ByReference { + + }; + public static class ByValue extends VREvent_Data_t implements com.sun.jna.Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_EditingCameraSurface_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_EditingCameraSurface_t.java index ee33f365d..562fb69ee 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_EditingCameraSurface_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_EditingCameraSurface_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1076
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_EditingCameraSurface_t extends Structure { - public long overlayHandle; - public int nVisualMode; - public VREvent_EditingCameraSurface_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("overlayHandle", "nVisualMode"); - } - public VREvent_EditingCameraSurface_t(long overlayHandle, int nVisualMode) { - super(); - this.overlayHandle = overlayHandle; - this.nVisualMode = nVisualMode; - } - public VREvent_EditingCameraSurface_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_EditingCameraSurface_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_EditingCameraSurface_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1103
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_EditingCameraSurface_t extends Structure { + public long overlayHandle; + public int nVisualMode; + public VREvent_EditingCameraSurface_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("overlayHandle", "nVisualMode"); + } + public VREvent_EditingCameraSurface_t(long overlayHandle, int nVisualMode) { + super(); + this.overlayHandle = overlayHandle; + this.nVisualMode = nVisualMode; + } + public VREvent_EditingCameraSurface_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_EditingCameraSurface_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_EditingCameraSurface_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Ipd_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Ipd_t.java index 509b2cfd1..f1c56ba3f 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Ipd_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Ipd_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1047
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Ipd_t extends Structure { - public float ipdMeters; - public VREvent_Ipd_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("ipdMeters"); - } - public VREvent_Ipd_t(float ipdMeters) { - super(); - this.ipdMeters = ipdMeters; - } - public VREvent_Ipd_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Ipd_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Ipd_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1074
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Ipd_t extends Structure { + public float ipdMeters; + public VREvent_Ipd_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("ipdMeters"); + } + public VREvent_Ipd_t(float ipdMeters) { + super(); + this.ipdMeters = ipdMeters; + } + public VREvent_Ipd_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Ipd_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Ipd_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Keyboard_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Keyboard_t.java index e3a5d1261..3847d634c 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Keyboard_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Keyboard_t.java @@ -4,42 +4,42 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1044
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Keyboard_t extends Structure { + * native declaration : headers\openvr_capi.h:1071
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Keyboard_t extends Structure { /** - * char[8]
    - * C type : char*[8] - */ - public Pointer[] cNewInput = new Pointer[8]; - public long uUserValue; - public VREvent_Keyboard_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("cNewInput", "uUserValue"); - } + * char[8]
    + * C type : char*[8] + */ + public Pointer[] cNewInput = new Pointer[8]; + public long uUserValue; + public VREvent_Keyboard_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("cNewInput", "uUserValue"); + } /** - * @param cNewInput char[8]
    - * C type : char*[8] - */ - public VREvent_Keyboard_t(Pointer cNewInput[], long uUserValue) { - super(); - if ((cNewInput.length != this.cNewInput.length)) - throw new IllegalArgumentException("Wrong array size !"); - this.cNewInput = cNewInput; - this.uUserValue = uUserValue; - } - public VREvent_Keyboard_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Keyboard_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Keyboard_t implements Structure.ByValue { - - }; + * @param cNewInput char[8]
    + * C type : char*[8] + */ + public VREvent_Keyboard_t(Pointer cNewInput[], long uUserValue) { + super(); + if ((cNewInput.length != this.cNewInput.length)) + throw new IllegalArgumentException("Wrong array size !"); + this.cNewInput = cNewInput; + this.uUserValue = uUserValue; + } + public VREvent_Keyboard_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Keyboard_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Keyboard_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_MessageOverlay_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_MessageOverlay_t.java index bf0e25b28..d10f3cb98 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_MessageOverlay_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_MessageOverlay_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1079
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_MessageOverlay_t extends Structure { - public int unVRMessageOverlayResponse; - public VREvent_MessageOverlay_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("unVRMessageOverlayResponse"); - } - public VREvent_MessageOverlay_t(int unVRMessageOverlayResponse) { - super(); - this.unVRMessageOverlayResponse = unVRMessageOverlayResponse; - } - public VREvent_MessageOverlay_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_MessageOverlay_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_MessageOverlay_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1106
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_MessageOverlay_t extends Structure { + public int unVRMessageOverlayResponse; + public VREvent_MessageOverlay_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("unVRMessageOverlayResponse"); + } + public VREvent_MessageOverlay_t(int unVRMessageOverlayResponse) { + super(); + this.unVRMessageOverlayResponse = unVRMessageOverlayResponse; + } + public VREvent_MessageOverlay_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_MessageOverlay_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_MessageOverlay_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Mouse_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Mouse_t.java index 832534db6..bd2886747 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Mouse_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Mouse_t.java @@ -4,34 +4,34 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1011
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Mouse_t extends Structure { - public float x; - public float y; - public int button; - public VREvent_Mouse_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("x", "y", "button"); - } - public VREvent_Mouse_t(float x, float y, int button) { - super(); - this.x = x; - this.y = y; - this.button = button; - } - public VREvent_Mouse_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Mouse_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Mouse_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1038
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Mouse_t extends Structure { + public float x; + public float y; + public int button; + public VREvent_Mouse_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("x", "y", "button"); + } + public VREvent_Mouse_t(float x, float y, int button) { + super(); + this.x = x; + this.y = y; + this.button = button; + } + public VREvent_Mouse_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Mouse_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Mouse_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Notification_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Notification_t.java index ed7bbe420..9f4942e26 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Notification_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Notification_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1028
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Notification_t extends Structure { - public long ulUserValue; - public int notificationId; - public VREvent_Notification_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("ulUserValue", "notificationId"); - } - public VREvent_Notification_t(long ulUserValue, int notificationId) { - super(); - this.ulUserValue = ulUserValue; - this.notificationId = notificationId; - } - public VREvent_Notification_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Notification_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Notification_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1055
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Notification_t extends Structure { + public long ulUserValue; + public int notificationId; + public VREvent_Notification_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("ulUserValue", "notificationId"); + } + public VREvent_Notification_t(long ulUserValue, int notificationId) { + super(); + this.ulUserValue = ulUserValue; + this.notificationId = notificationId; + } + public VREvent_Notification_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Notification_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Notification_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Overlay_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Overlay_t.java index f693d2a42..5ee036082 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Overlay_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Overlay_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1036
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Overlay_t extends Structure { - public long overlayHandle; - public VREvent_Overlay_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("overlayHandle"); - } - public VREvent_Overlay_t(long overlayHandle) { - super(); - this.overlayHandle = overlayHandle; - } - public VREvent_Overlay_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Overlay_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Overlay_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1063
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Overlay_t extends Structure { + public long overlayHandle; + public VREvent_Overlay_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("overlayHandle"); + } + public VREvent_Overlay_t(long overlayHandle) { + super(); + this.overlayHandle = overlayHandle; + } + public VREvent_Overlay_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Overlay_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Overlay_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_PerformanceTest_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_PerformanceTest_t.java index 9d0baeb59..dcb49de81 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_PerformanceTest_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_PerformanceTest_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1058
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_PerformanceTest_t extends Structure { - public int m_nFidelityLevel; - public VREvent_PerformanceTest_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nFidelityLevel"); - } - public VREvent_PerformanceTest_t(int m_nFidelityLevel) { - super(); - this.m_nFidelityLevel = m_nFidelityLevel; - } - public VREvent_PerformanceTest_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_PerformanceTest_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_PerformanceTest_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1085
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_PerformanceTest_t extends Structure { + public int m_nFidelityLevel; + public VREvent_PerformanceTest_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nFidelityLevel"); + } + public VREvent_PerformanceTest_t(int m_nFidelityLevel) { + super(); + this.m_nFidelityLevel = m_nFidelityLevel; + } + public VREvent_PerformanceTest_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_PerformanceTest_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_PerformanceTest_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Process_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Process_t.java index 5374287c2..e0f957426 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Process_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Process_t.java @@ -4,34 +4,34 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1033
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Process_t extends Structure { - public int pid; - public int oldPid; - public byte bForced; - public VREvent_Process_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("pid", "oldPid", "bForced"); - } - public VREvent_Process_t(int pid, int oldPid, byte bForced) { - super(); - this.pid = pid; - this.oldPid = oldPid; - this.bForced = bForced; - } - public VREvent_Process_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Process_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Process_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1060
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Process_t extends Structure { + public int pid; + public int oldPid; + public byte bForced; + public VREvent_Process_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("pid", "oldPid", "bForced"); + } + public VREvent_Process_t(int pid, int oldPid, byte bForced) { + super(); + this.pid = pid; + this.oldPid = oldPid; + this.bForced = bForced; + } + public VREvent_Process_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Process_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Process_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Property_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Property_t.java index 7b9dcb8e6..0b9664778 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Property_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Property_t.java @@ -4,42 +4,42 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1085
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Property_t extends Structure { - /** C type : PropertyContainerHandle_t */ - public long container; + * native declaration : headers\openvr_capi.h:1112
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Property_t extends Structure { + /** C type : PropertyContainerHandle_t */ + public long container; /** - * @see ETrackedDeviceProperty
    - * C type : ETrackedDeviceProperty - */ - public int prop; - public VREvent_Property_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("container", "prop"); - } + * @see ETrackedDeviceProperty
    + * C type : ETrackedDeviceProperty + */ + public int prop; + public VREvent_Property_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("container", "prop"); + } /** - * @param container C type : PropertyContainerHandle_t
    - * @param prop @see ETrackedDeviceProperty
    - * C type : ETrackedDeviceProperty - */ - public VREvent_Property_t(long container, int prop) { - super(); - this.container = container; - this.prop = prop; - } - public VREvent_Property_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Property_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Property_t implements Structure.ByValue { - - }; + * @param container C type : PropertyContainerHandle_t
    + * @param prop @see ETrackedDeviceProperty
    + * C type : ETrackedDeviceProperty + */ + public VREvent_Property_t(long container, int prop) { + super(); + this.container = container; + this.prop = prop; + } + public VREvent_Property_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Property_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Property_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Reserved_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Reserved_t.java index 638428c62..18e63c3ee 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Reserved_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Reserved_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1055
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Reserved_t extends Structure { - public long reserved0; - public long reserved1; - public VREvent_Reserved_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("reserved0", "reserved1"); - } - public VREvent_Reserved_t(long reserved0, long reserved1) { - super(); - this.reserved0 = reserved0; - this.reserved1 = reserved1; - } - public VREvent_Reserved_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Reserved_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Reserved_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1082
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Reserved_t extends Structure { + public long reserved0; + public long reserved1; + public VREvent_Reserved_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("reserved0", "reserved1"); + } + public VREvent_Reserved_t(long reserved0, long reserved1) { + super(); + this.reserved0 = reserved0; + this.reserved1 = reserved1; + } + public VREvent_Reserved_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Reserved_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Reserved_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ScreenshotProgress_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ScreenshotProgress_t.java index c1cb365e1..3f822c283 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ScreenshotProgress_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_ScreenshotProgress_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1068
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_ScreenshotProgress_t extends Structure { - public float progress; - public VREvent_ScreenshotProgress_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("progress"); - } - public VREvent_ScreenshotProgress_t(float progress) { - super(); - this.progress = progress; - } - public VREvent_ScreenshotProgress_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_ScreenshotProgress_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_ScreenshotProgress_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1095
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_ScreenshotProgress_t extends Structure { + public float progress; + public VREvent_ScreenshotProgress_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("progress"); + } + public VREvent_ScreenshotProgress_t(float progress) { + super(); + this.progress = progress; + } + public VREvent_ScreenshotProgress_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_ScreenshotProgress_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_ScreenshotProgress_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Screenshot_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Screenshot_t.java index 2860f082b..5a5f5ea91 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Screenshot_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Screenshot_t.java @@ -4,32 +4,32 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1065
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Screenshot_t extends Structure { - public int handle; - public int type; - public VREvent_Screenshot_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("handle", "type"); - } - public VREvent_Screenshot_t(int handle, int type) { - super(); - this.handle = handle; - this.type = type; - } - public VREvent_Screenshot_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Screenshot_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Screenshot_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1092
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Screenshot_t extends Structure { + public int handle; + public int type; + public VREvent_Screenshot_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("handle", "type"); + } + public VREvent_Screenshot_t(int handle, int type) { + super(); + this.handle = handle; + this.type = type; + } + public VREvent_Screenshot_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Screenshot_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Screenshot_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Scroll_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Scroll_t.java index 7cf75de8d..7c4090b1f 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Scroll_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Scroll_t.java @@ -4,34 +4,34 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1016
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Scroll_t extends Structure { - public float xdelta; - public float ydelta; - public int repeatCount; - public VREvent_Scroll_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("xdelta", "ydelta", "repeatCount"); - } - public VREvent_Scroll_t(float xdelta, float ydelta, int repeatCount) { - super(); - this.xdelta = xdelta; - this.ydelta = ydelta; - this.repeatCount = repeatCount; - } - public VREvent_Scroll_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Scroll_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Scroll_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1043
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Scroll_t extends Structure { + public float xdelta; + public float ydelta; + public int repeatCount; + public VREvent_Scroll_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("xdelta", "ydelta", "repeatCount"); + } + public VREvent_Scroll_t(float xdelta, float ydelta, int repeatCount) { + super(); + this.xdelta = xdelta; + this.ydelta = ydelta; + this.repeatCount = repeatCount; + } + public VREvent_Scroll_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Scroll_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Scroll_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_SeatedZeroPoseReset_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_SeatedZeroPoseReset_t.java index 4c1227b9d..d051ec5e4 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_SeatedZeroPoseReset_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_SeatedZeroPoseReset_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1061
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_SeatedZeroPoseReset_t extends Structure { - public byte bResetBySystemMenu; - public VREvent_SeatedZeroPoseReset_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("bResetBySystemMenu"); - } - public VREvent_SeatedZeroPoseReset_t(byte bResetBySystemMenu) { - super(); - this.bResetBySystemMenu = bResetBySystemMenu; - } - public VREvent_SeatedZeroPoseReset_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_SeatedZeroPoseReset_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_SeatedZeroPoseReset_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1088
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_SeatedZeroPoseReset_t extends Structure { + public byte bResetBySystemMenu; + public VREvent_SeatedZeroPoseReset_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("bResetBySystemMenu"); + } + public VREvent_SeatedZeroPoseReset_t(byte bResetBySystemMenu) { + super(); + this.bResetBySystemMenu = bResetBySystemMenu; + } + public VREvent_SeatedZeroPoseReset_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_SeatedZeroPoseReset_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_SeatedZeroPoseReset_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Status_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Status_t.java index 1249d47a0..f69fcd9bf 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Status_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_Status_t.java @@ -4,30 +4,30 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1039
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_Status_t extends Structure { - public int statusState; - public VREvent_Status_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("statusState"); - } - public VREvent_Status_t(int statusState) { - super(); - this.statusState = statusState; - } - public VREvent_Status_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_Status_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_Status_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1066
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_Status_t extends Structure { + public int statusState; + public VREvent_Status_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("statusState"); + } + public VREvent_Status_t(int statusState) { + super(); + this.statusState = statusState; + } + public VREvent_Status_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_Status_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_Status_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_TouchPadMove_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_TouchPadMove_t.java index f46b0a499..dd963ae70 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_TouchPadMove_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_TouchPadMove_t.java @@ -4,40 +4,40 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1024
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_TouchPadMove_t extends Structure { - public byte bFingerDown; - public float flSecondsFingerDown; - public float fValueXFirst; - public float fValueYFirst; - public float fValueXRaw; - public float fValueYRaw; - public VREvent_TouchPadMove_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("bFingerDown", "flSecondsFingerDown", "fValueXFirst", "fValueYFirst", "fValueXRaw", "fValueYRaw"); - } - public VREvent_TouchPadMove_t(byte bFingerDown, float flSecondsFingerDown, float fValueXFirst, float fValueYFirst, float fValueXRaw, float fValueYRaw) { - super(); - this.bFingerDown = bFingerDown; - this.flSecondsFingerDown = flSecondsFingerDown; - this.fValueXFirst = fValueXFirst; - this.fValueYFirst = fValueYFirst; - this.fValueXRaw = fValueXRaw; - this.fValueYRaw = fValueYRaw; - } - public VREvent_TouchPadMove_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_TouchPadMove_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_TouchPadMove_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1051
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_TouchPadMove_t extends Structure { + public byte bFingerDown; + public float flSecondsFingerDown; + public float fValueXFirst; + public float fValueYFirst; + public float fValueXRaw; + public float fValueYRaw; + public VREvent_TouchPadMove_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("bFingerDown", "flSecondsFingerDown", "fValueXFirst", "fValueYFirst", "fValueXRaw", "fValueYRaw"); + } + public VREvent_TouchPadMove_t(byte bFingerDown, float flSecondsFingerDown, float fValueXFirst, float fValueYFirst, float fValueXRaw, float fValueYRaw) { + super(); + this.bFingerDown = bFingerDown; + this.flSecondsFingerDown = flSecondsFingerDown; + this.fValueXFirst = fValueXFirst; + this.fValueYFirst = fValueYFirst; + this.fValueXRaw = fValueXRaw; + this.fValueYRaw = fValueYRaw; + } + public VREvent_TouchPadMove_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_TouchPadMove_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_TouchPadMove_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_t.java index 716a4d69d..24be43e22 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VREvent_t.java @@ -4,45 +4,45 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * An event posted by the server to all running applications
    - * native declaration : headers\openvr_capi.h:1286
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VREvent_t extends Structure { - /** EVREventType enum */ - public int eventType; - /** C type : TrackedDeviceIndex_t */ - public int trackedDeviceIndex; - public float eventAgeSeconds; - /** C type : VREvent_Data_t */ - public VREvent_Data_t data; - public VREvent_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("eventType", "trackedDeviceIndex", "eventAgeSeconds", "data"); - } + * An event posted by the server to all running applications
    + * native declaration : headers\openvr_capi.h:1315
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VREvent_t extends Structure { + /** EVREventType enum */ + public int eventType; + /** C type : TrackedDeviceIndex_t */ + public int trackedDeviceIndex; + public float eventAgeSeconds; + /** C type : VREvent_Data_t */ + public VREvent_Data_t data; + public VREvent_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("eventType", "trackedDeviceIndex", "eventAgeSeconds", "data"); + } /** - * @param eventType EVREventType enum
    - * @param trackedDeviceIndex C type : TrackedDeviceIndex_t
    - * @param data C type : VREvent_Data_t - */ - public VREvent_t(int eventType, int trackedDeviceIndex, float eventAgeSeconds, VREvent_Data_t data) { - super(); - this.eventType = eventType; - this.trackedDeviceIndex = trackedDeviceIndex; - this.eventAgeSeconds = eventAgeSeconds; - this.data = data; - } - public VREvent_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VREvent_t implements Structure.ByReference { - - }; - public static class ByValue extends VREvent_t implements Structure.ByValue { - - }; + * @param eventType EVREventType enum
    + * @param trackedDeviceIndex C type : TrackedDeviceIndex_t
    + * @param data C type : VREvent_Data_t + */ + public VREvent_t(int eventType, int trackedDeviceIndex, float eventAgeSeconds, VREvent_Data_t data) { + super(); + this.eventType = eventType; + this.trackedDeviceIndex = trackedDeviceIndex; + this.eventAgeSeconds = eventAgeSeconds; + this.data = data; + } + public VREvent_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VREvent_t implements Structure.ByReference { + + }; + public static class ByValue extends VREvent_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_Data_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_Data_t.java index 964dcf280..4ac797b97 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_Data_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_Data_t.java @@ -2,38 +2,38 @@ package com.jme3.system.jopenvr; import com.sun.jna.Pointer; import com.sun.jna.Union; /** - * native declaration : headers\openvr_capi.h:1290
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VROverlayIntersectionMaskPrimitive_Data_t extends Union { - /** C type : IntersectionMaskRectangle_t */ - public IntersectionMaskRectangle_t m_Rectangle; - /** C type : IntersectionMaskCircle_t */ - public IntersectionMaskCircle_t m_Circle; - public VROverlayIntersectionMaskPrimitive_Data_t() { - super(); - } - /** @param m_Rectangle C type : IntersectionMaskRectangle_t */ - public VROverlayIntersectionMaskPrimitive_Data_t(IntersectionMaskRectangle_t m_Rectangle) { - super(); - this.m_Rectangle = m_Rectangle; - setType(IntersectionMaskRectangle_t.class); - } - /** @param m_Circle C type : IntersectionMaskCircle_t */ - public VROverlayIntersectionMaskPrimitive_Data_t(IntersectionMaskCircle_t m_Circle) { - super(); - this.m_Circle = m_Circle; - setType(IntersectionMaskCircle_t.class); - } - public VROverlayIntersectionMaskPrimitive_Data_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VROverlayIntersectionMaskPrimitive_Data_t implements com.sun.jna.Structure.ByReference { - - }; - public static class ByValue extends VROverlayIntersectionMaskPrimitive_Data_t implements com.sun.jna.Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1319
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VROverlayIntersectionMaskPrimitive_Data_t extends Union { + /** C type : IntersectionMaskRectangle_t */ + public IntersectionMaskRectangle_t m_Rectangle; + /** C type : IntersectionMaskCircle_t */ + public IntersectionMaskCircle_t m_Circle; + public VROverlayIntersectionMaskPrimitive_Data_t() { + super(); + } + /** @param m_Rectangle C type : IntersectionMaskRectangle_t */ + public VROverlayIntersectionMaskPrimitive_Data_t(IntersectionMaskRectangle_t m_Rectangle) { + super(); + this.m_Rectangle = m_Rectangle; + setType(IntersectionMaskRectangle_t.class); + } + /** @param m_Circle C type : IntersectionMaskCircle_t */ + public VROverlayIntersectionMaskPrimitive_Data_t(IntersectionMaskCircle_t m_Circle) { + super(); + this.m_Circle = m_Circle; + setType(IntersectionMaskCircle_t.class); + } + public VROverlayIntersectionMaskPrimitive_Data_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VROverlayIntersectionMaskPrimitive_Data_t implements com.sun.jna.Structure.ByReference { + + }; + public static class ByValue extends VROverlayIntersectionMaskPrimitive_Data_t implements com.sun.jna.Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_t.java index 46ac5b9f9..962fbe340 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionMaskPrimitive_t.java @@ -4,42 +4,42 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1294
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VROverlayIntersectionMaskPrimitive_t extends Structure { + * native declaration : headers\openvr_capi.h:1323
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VROverlayIntersectionMaskPrimitive_t extends Structure { /** - * @see EVROverlayIntersectionMaskPrimitiveType
    - * C type : EVROverlayIntersectionMaskPrimitiveType - */ - public int m_nPrimitiveType; - /** C type : VROverlayIntersectionMaskPrimitive_Data_t */ - public VROverlayIntersectionMaskPrimitive_Data_t m_Primitive; - public VROverlayIntersectionMaskPrimitive_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nPrimitiveType", "m_Primitive"); - } + * @see EVROverlayIntersectionMaskPrimitiveType
    + * C type : EVROverlayIntersectionMaskPrimitiveType + */ + public int m_nPrimitiveType; + /** C type : VROverlayIntersectionMaskPrimitive_Data_t */ + public VROverlayIntersectionMaskPrimitive_Data_t m_Primitive; + public VROverlayIntersectionMaskPrimitive_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nPrimitiveType", "m_Primitive"); + } /** - * @param m_nPrimitiveType @see EVROverlayIntersectionMaskPrimitiveType
    - * C type : EVROverlayIntersectionMaskPrimitiveType
    - * @param m_Primitive C type : VROverlayIntersectionMaskPrimitive_Data_t - */ - public VROverlayIntersectionMaskPrimitive_t(int m_nPrimitiveType, VROverlayIntersectionMaskPrimitive_Data_t m_Primitive) { - super(); - this.m_nPrimitiveType = m_nPrimitiveType; - this.m_Primitive = m_Primitive; - } - public VROverlayIntersectionMaskPrimitive_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VROverlayIntersectionMaskPrimitive_t implements Structure.ByReference { - - }; - public static class ByValue extends VROverlayIntersectionMaskPrimitive_t implements Structure.ByValue { - - }; + * @param m_nPrimitiveType @see EVROverlayIntersectionMaskPrimitiveType
    + * C type : EVROverlayIntersectionMaskPrimitiveType
    + * @param m_Primitive C type : VROverlayIntersectionMaskPrimitive_Data_t + */ + public VROverlayIntersectionMaskPrimitive_t(int m_nPrimitiveType, VROverlayIntersectionMaskPrimitive_Data_t m_Primitive) { + super(); + this.m_nPrimitiveType = m_nPrimitiveType; + this.m_Primitive = m_Primitive; + } + public VROverlayIntersectionMaskPrimitive_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VROverlayIntersectionMaskPrimitive_t implements Structure.ByReference { + + }; + public static class ByValue extends VROverlayIntersectionMaskPrimitive_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionParams_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionParams_t.java index 80d8df4e2..ce72360f7 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionParams_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionParams_t.java @@ -4,46 +4,46 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1183
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VROverlayIntersectionParams_t extends Structure { - /** C type : HmdVector3_t */ - public HmdVector3_t vSource; - /** C type : HmdVector3_t */ - public HmdVector3_t vDirection; + * native declaration : headers\openvr_capi.h:1210
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VROverlayIntersectionParams_t extends Structure { + /** C type : HmdVector3_t */ + public HmdVector3_t vSource; + /** C type : HmdVector3_t */ + public HmdVector3_t vDirection; /** - * @see ETrackingUniverseOrigin
    - * C type : ETrackingUniverseOrigin - */ - public int eOrigin; - public VROverlayIntersectionParams_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("vSource", "vDirection", "eOrigin"); - } + * @see ETrackingUniverseOrigin
    + * C type : ETrackingUniverseOrigin + */ + public int eOrigin; + public VROverlayIntersectionParams_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("vSource", "vDirection", "eOrigin"); + } /** - * @param vSource C type : HmdVector3_t
    - * @param vDirection C type : HmdVector3_t
    - * @param eOrigin @see ETrackingUniverseOrigin
    - * C type : ETrackingUniverseOrigin - */ - public VROverlayIntersectionParams_t(HmdVector3_t vSource, HmdVector3_t vDirection, int eOrigin) { - super(); - this.vSource = vSource; - this.vDirection = vDirection; - this.eOrigin = eOrigin; - } - public VROverlayIntersectionParams_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VROverlayIntersectionParams_t implements Structure.ByReference { - - }; - public static class ByValue extends VROverlayIntersectionParams_t implements Structure.ByValue { - - }; + * @param vSource C type : HmdVector3_t
    + * @param vDirection C type : HmdVector3_t
    + * @param eOrigin @see ETrackingUniverseOrigin
    + * C type : ETrackingUniverseOrigin + */ + public VROverlayIntersectionParams_t(HmdVector3_t vSource, HmdVector3_t vDirection, int eOrigin) { + super(); + this.vSource = vSource; + this.vDirection = vDirection; + this.eOrigin = eOrigin; + } + public VROverlayIntersectionParams_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VROverlayIntersectionParams_t implements Structure.ByReference { + + }; + public static class ByValue extends VROverlayIntersectionParams_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionResults_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionResults_t.java index 6ea1fd749..be0df7165 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionResults_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VROverlayIntersectionResults_t.java @@ -4,44 +4,44 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1189
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VROverlayIntersectionResults_t extends Structure { - /** C type : HmdVector3_t */ - public HmdVector3_t vPoint; - /** C type : HmdVector3_t */ - public HmdVector3_t vNormal; - /** C type : HmdVector2_t */ - public HmdVector2_t vUVs; - public float fDistance; - public VROverlayIntersectionResults_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("vPoint", "vNormal", "vUVs", "fDistance"); - } + * native declaration : headers\openvr_capi.h:1216
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VROverlayIntersectionResults_t extends Structure { + /** C type : HmdVector3_t */ + public HmdVector3_t vPoint; + /** C type : HmdVector3_t */ + public HmdVector3_t vNormal; + /** C type : HmdVector2_t */ + public HmdVector2_t vUVs; + public float fDistance; + public VROverlayIntersectionResults_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("vPoint", "vNormal", "vUVs", "fDistance"); + } /** - * @param vPoint C type : HmdVector3_t
    - * @param vNormal C type : HmdVector3_t
    - * @param vUVs C type : HmdVector2_t - */ - public VROverlayIntersectionResults_t(HmdVector3_t vPoint, HmdVector3_t vNormal, HmdVector2_t vUVs, float fDistance) { - super(); - this.vPoint = vPoint; - this.vNormal = vNormal; - this.vUVs = vUVs; - this.fDistance = fDistance; - } - public VROverlayIntersectionResults_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VROverlayIntersectionResults_t implements Structure.ByReference { - - }; - public static class ByValue extends VROverlayIntersectionResults_t implements Structure.ByValue { - - }; + * @param vPoint C type : HmdVector3_t
    + * @param vNormal C type : HmdVector3_t
    + * @param vUVs C type : HmdVector2_t + */ + public VROverlayIntersectionResults_t(HmdVector3_t vPoint, HmdVector3_t vNormal, HmdVector2_t vUVs, float fDistance) { + super(); + this.vPoint = vPoint; + this.vNormal = vNormal; + this.vUVs = vUVs; + this.fDistance = fDistance; + } + public VROverlayIntersectionResults_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VROverlayIntersectionResults_t implements Structure.ByReference { + + }; + public static class ByValue extends VROverlayIntersectionResults_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRTextureBounds_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRTextureBounds_t.java index 0d03b1448..9bb56e46d 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRTextureBounds_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRTextureBounds_t.java @@ -4,36 +4,36 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:980
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VRTextureBounds_t extends Structure { - public float uMin; - public float vMin; - public float uMax; - public float vMax; - public VRTextureBounds_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("uMin", "vMin", "uMax", "vMax"); - } - public VRTextureBounds_t(float uMin, float vMin, float uMax, float vMax) { - super(); - this.uMin = uMin; - this.vMin = vMin; - this.uMax = uMax; - this.vMax = vMax; - } - public VRTextureBounds_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VRTextureBounds_t implements Structure.ByReference { - - }; - public static class ByValue extends VRTextureBounds_t implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1007
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VRTextureBounds_t extends Structure { + public float uMin; + public float vMin; + public float uMax; + public float vMax; + public VRTextureBounds_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("uMin", "vMin", "uMax", "vMax"); + } + public VRTextureBounds_t(float uMin, float vMin, float uMax, float vMax) { + super(); + this.uMin = uMin; + this.vMin = vMin; + this.uMax = uMax; + this.vMax = vMax; + } + public VRTextureBounds_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VRTextureBounds_t implements Structure.ByReference { + + }; + public static class ByValue extends VRTextureBounds_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRVulkanTextureData_t.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRVulkanTextureData_t.java index 413797414..08ef57c49 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRVulkanTextureData_t.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VRVulkanTextureData_t.java @@ -8,51 +8,51 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:996
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VRVulkanTextureData_t extends Structure { - public long m_nImage; + * native declaration : headers\openvr_capi.h:1023
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VRVulkanTextureData_t extends Structure { + public long m_nImage; /** - * struct VkDevice_T *
    - * C type : VkDevice_T* - */ - public VkDevice_T m_pDevice; + * struct VkDevice_T *
    + * C type : VkDevice_T* + */ + public VkDevice_T m_pDevice; /** - * struct VkPhysicalDevice_T *
    - * C type : VkPhysicalDevice_T* - */ - public VkPhysicalDevice_T m_pPhysicalDevice; + * struct VkPhysicalDevice_T *
    + * C type : VkPhysicalDevice_T* + */ + public VkPhysicalDevice_T m_pPhysicalDevice; /** - * struct VkInstance_T *
    - * C type : VkInstance_T* - */ - public VkInstance_T m_pInstance; + * struct VkInstance_T *
    + * C type : VkInstance_T* + */ + public VkInstance_T m_pInstance; /** - * struct VkQueue_T *
    - * C type : VkQueue_T* - */ - public VkQueue_T m_pQueue; - public int m_nQueueFamilyIndex; - public int m_nWidth; - public int m_nHeight; - public int m_nFormat; - public int m_nSampleCount; - public VRVulkanTextureData_t() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("m_nImage", "m_pDevice", "m_pPhysicalDevice", "m_pInstance", "m_pQueue", "m_nQueueFamilyIndex", "m_nWidth", "m_nHeight", "m_nFormat", "m_nSampleCount"); - } - public VRVulkanTextureData_t(Pointer peer) { - super(peer); - } - public static class ByReference extends VRVulkanTextureData_t implements Structure.ByReference { - - }; - public static class ByValue extends VRVulkanTextureData_t implements Structure.ByValue { - - }; + * struct VkQueue_T *
    + * C type : VkQueue_T* + */ + public VkQueue_T m_pQueue; + public int m_nQueueFamilyIndex; + public int m_nWidth; + public int m_nHeight; + public int m_nFormat; + public int m_nSampleCount; + public VRVulkanTextureData_t() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("m_nImage", "m_pDevice", "m_pPhysicalDevice", "m_pInstance", "m_pQueue", "m_nQueueFamilyIndex", "m_nWidth", "m_nHeight", "m_nFormat", "m_nSampleCount"); + } + public VRVulkanTextureData_t(Pointer peer) { + super(peer); + } + public static class ByReference extends VRVulkanTextureData_t implements Structure.ByReference { + + }; + public static class ByValue extends VRVulkanTextureData_t implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRApplications_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRApplications_FnTable.java index c1f456c73..8102beac3 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRApplications_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRApplications_FnTable.java @@ -6,211 +6,211 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1483
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRApplications_FnTable extends Structure { - /** C type : AddApplicationManifest_callback* */ - public VR_IVRApplications_FnTable.AddApplicationManifest_callback AddApplicationManifest; - /** C type : RemoveApplicationManifest_callback* */ - public VR_IVRApplications_FnTable.RemoveApplicationManifest_callback RemoveApplicationManifest; - /** C type : IsApplicationInstalled_callback* */ - public VR_IVRApplications_FnTable.IsApplicationInstalled_callback IsApplicationInstalled; - /** C type : GetApplicationCount_callback* */ - public VR_IVRApplications_FnTable.GetApplicationCount_callback GetApplicationCount; - /** C type : GetApplicationKeyByIndex_callback* */ - public VR_IVRApplications_FnTable.GetApplicationKeyByIndex_callback GetApplicationKeyByIndex; - /** C type : GetApplicationKeyByProcessId_callback* */ - public VR_IVRApplications_FnTable.GetApplicationKeyByProcessId_callback GetApplicationKeyByProcessId; - /** C type : LaunchApplication_callback* */ - public VR_IVRApplications_FnTable.LaunchApplication_callback LaunchApplication; - /** C type : LaunchTemplateApplication_callback* */ - public VR_IVRApplications_FnTable.LaunchTemplateApplication_callback LaunchTemplateApplication; - /** C type : LaunchApplicationFromMimeType_callback* */ - public VR_IVRApplications_FnTable.LaunchApplicationFromMimeType_callback LaunchApplicationFromMimeType; - /** C type : LaunchDashboardOverlay_callback* */ - public VR_IVRApplications_FnTable.LaunchDashboardOverlay_callback LaunchDashboardOverlay; - /** C type : CancelApplicationLaunch_callback* */ - public VR_IVRApplications_FnTable.CancelApplicationLaunch_callback CancelApplicationLaunch; - /** C type : IdentifyApplication_callback* */ - public VR_IVRApplications_FnTable.IdentifyApplication_callback IdentifyApplication; - /** C type : GetApplicationProcessId_callback* */ - public VR_IVRApplications_FnTable.GetApplicationProcessId_callback GetApplicationProcessId; - /** C type : GetApplicationsErrorNameFromEnum_callback* */ - public VR_IVRApplications_FnTable.GetApplicationsErrorNameFromEnum_callback GetApplicationsErrorNameFromEnum; - /** C type : GetApplicationPropertyString_callback* */ - public VR_IVRApplications_FnTable.GetApplicationPropertyString_callback GetApplicationPropertyString; - /** C type : GetApplicationPropertyBool_callback* */ - public VR_IVRApplications_FnTable.GetApplicationPropertyBool_callback GetApplicationPropertyBool; - /** C type : GetApplicationPropertyUint64_callback* */ - public VR_IVRApplications_FnTable.GetApplicationPropertyUint64_callback GetApplicationPropertyUint64; - /** C type : SetApplicationAutoLaunch_callback* */ - public VR_IVRApplications_FnTable.SetApplicationAutoLaunch_callback SetApplicationAutoLaunch; - /** C type : GetApplicationAutoLaunch_callback* */ - public VR_IVRApplications_FnTable.GetApplicationAutoLaunch_callback GetApplicationAutoLaunch; - /** C type : SetDefaultApplicationForMimeType_callback* */ - public VR_IVRApplications_FnTable.SetDefaultApplicationForMimeType_callback SetDefaultApplicationForMimeType; - /** C type : GetDefaultApplicationForMimeType_callback* */ - public VR_IVRApplications_FnTable.GetDefaultApplicationForMimeType_callback GetDefaultApplicationForMimeType; - /** C type : GetApplicationSupportedMimeTypes_callback* */ - public VR_IVRApplications_FnTable.GetApplicationSupportedMimeTypes_callback GetApplicationSupportedMimeTypes; - /** C type : GetApplicationsThatSupportMimeType_callback* */ - public VR_IVRApplications_FnTable.GetApplicationsThatSupportMimeType_callback GetApplicationsThatSupportMimeType; - /** C type : GetApplicationLaunchArguments_callback* */ - public VR_IVRApplications_FnTable.GetApplicationLaunchArguments_callback GetApplicationLaunchArguments; - /** C type : GetStartingApplication_callback* */ - public VR_IVRApplications_FnTable.GetStartingApplication_callback GetStartingApplication; - /** C type : GetTransitionState_callback* */ - public VR_IVRApplications_FnTable.GetTransitionState_callback GetTransitionState; - /** C type : PerformApplicationPrelaunchCheck_callback* */ - public VR_IVRApplications_FnTable.PerformApplicationPrelaunchCheck_callback PerformApplicationPrelaunchCheck; - /** C type : GetApplicationsTransitionStateNameFromEnum_callback* */ - public VR_IVRApplications_FnTable.GetApplicationsTransitionStateNameFromEnum_callback GetApplicationsTransitionStateNameFromEnum; - /** C type : IsQuitUserPromptRequested_callback* */ - public VR_IVRApplications_FnTable.IsQuitUserPromptRequested_callback IsQuitUserPromptRequested; - /** C type : LaunchInternalProcess_callback* */ - public VR_IVRApplications_FnTable.LaunchInternalProcess_callback LaunchInternalProcess; - /** C type : GetCurrentSceneProcessId_callback* */ - public VR_IVRApplications_FnTable.GetCurrentSceneProcessId_callback GetCurrentSceneProcessId; - /** native declaration : headers\openvr_capi.h:1452 */ - public interface AddApplicationManifest_callback extends Callback { - int apply(Pointer pchApplicationManifestFullPath, byte bTemporary); - }; - /** native declaration : headers\openvr_capi.h:1453 */ - public interface RemoveApplicationManifest_callback extends Callback { - int apply(Pointer pchApplicationManifestFullPath); - }; - /** native declaration : headers\openvr_capi.h:1454 */ - public interface IsApplicationInstalled_callback extends Callback { - byte apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1455 */ - public interface GetApplicationCount_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1456 */ - public interface GetApplicationKeyByIndex_callback extends Callback { - int apply(int unApplicationIndex, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); - }; - /** native declaration : headers\openvr_capi.h:1457 */ - public interface GetApplicationKeyByProcessId_callback extends Callback { - int apply(int unProcessId, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); - }; - /** native declaration : headers\openvr_capi.h:1458 */ - public interface LaunchApplication_callback extends Callback { - int apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1459 */ - public interface LaunchTemplateApplication_callback extends Callback { - int apply(Pointer pchTemplateAppKey, Pointer pchNewAppKey, AppOverrideKeys_t pKeys, int unKeys); - }; - /** native declaration : headers\openvr_capi.h:1460 */ - public interface LaunchApplicationFromMimeType_callback extends Callback { - int apply(Pointer pchMimeType, Pointer pchArgs); - }; - /** native declaration : headers\openvr_capi.h:1461 */ - public interface LaunchDashboardOverlay_callback extends Callback { - int apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1462 */ - public interface CancelApplicationLaunch_callback extends Callback { - byte apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1463 */ - public interface IdentifyApplication_callback extends Callback { - int apply(int unProcessId, Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1464 */ - public interface GetApplicationProcessId_callback extends Callback { - int apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1465 */ - public interface GetApplicationsErrorNameFromEnum_callback extends Callback { - Pointer apply(int error); - }; - /** native declaration : headers\openvr_capi.h:1466 */ - public interface GetApplicationPropertyString_callback extends Callback { - int apply(Pointer pchAppKey, int eProperty, Pointer pchPropertyValueBuffer, int unPropertyValueBufferLen, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1467 */ - public interface GetApplicationPropertyBool_callback extends Callback { - byte apply(Pointer pchAppKey, int eProperty, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1468 */ - public interface GetApplicationPropertyUint64_callback extends Callback { - long apply(Pointer pchAppKey, int eProperty, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1469 */ - public interface SetApplicationAutoLaunch_callback extends Callback { - int apply(Pointer pchAppKey, byte bAutoLaunch); - }; - /** native declaration : headers\openvr_capi.h:1470 */ - public interface GetApplicationAutoLaunch_callback extends Callback { - byte apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1471 */ - public interface SetDefaultApplicationForMimeType_callback extends Callback { - int apply(Pointer pchAppKey, Pointer pchMimeType); - }; - /** native declaration : headers\openvr_capi.h:1472 */ - public interface GetDefaultApplicationForMimeType_callback extends Callback { - byte apply(Pointer pchMimeType, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); - }; - /** native declaration : headers\openvr_capi.h:1473 */ - public interface GetApplicationSupportedMimeTypes_callback extends Callback { - byte apply(Pointer pchAppKey, Pointer pchMimeTypesBuffer, int unMimeTypesBuffer); - }; - /** native declaration : headers\openvr_capi.h:1474 */ - public interface GetApplicationsThatSupportMimeType_callback extends Callback { - int apply(Pointer pchMimeType, Pointer pchAppKeysThatSupportBuffer, int unAppKeysThatSupportBuffer); - }; - /** native declaration : headers\openvr_capi.h:1475 */ - public interface GetApplicationLaunchArguments_callback extends Callback { - int apply(int unHandle, Pointer pchArgs, int unArgs); - }; - /** native declaration : headers\openvr_capi.h:1476 */ - public interface GetStartingApplication_callback extends Callback { - int apply(Pointer pchAppKeyBuffer, int unAppKeyBufferLen); - }; - /** native declaration : headers\openvr_capi.h:1477 */ - public interface GetTransitionState_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1478 */ - public interface PerformApplicationPrelaunchCheck_callback extends Callback { - int apply(Pointer pchAppKey); - }; - /** native declaration : headers\openvr_capi.h:1479 */ - public interface GetApplicationsTransitionStateNameFromEnum_callback extends Callback { - Pointer apply(int state); - }; - /** native declaration : headers\openvr_capi.h:1480 */ - public interface IsQuitUserPromptRequested_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1481 */ - public interface LaunchInternalProcess_callback extends Callback { - int apply(Pointer pchBinaryPath, Pointer pchArguments, Pointer pchWorkingDirectory); - }; - /** native declaration : headers\openvr_capi.h:1482 */ - public interface GetCurrentSceneProcessId_callback extends Callback { - int apply(); - }; - public VR_IVRApplications_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("AddApplicationManifest", "RemoveApplicationManifest", "IsApplicationInstalled", "GetApplicationCount", "GetApplicationKeyByIndex", "GetApplicationKeyByProcessId", "LaunchApplication", "LaunchTemplateApplication", "LaunchApplicationFromMimeType", "LaunchDashboardOverlay", "CancelApplicationLaunch", "IdentifyApplication", "GetApplicationProcessId", "GetApplicationsErrorNameFromEnum", "GetApplicationPropertyString", "GetApplicationPropertyBool", "GetApplicationPropertyUint64", "SetApplicationAutoLaunch", "GetApplicationAutoLaunch", "SetDefaultApplicationForMimeType", "GetDefaultApplicationForMimeType", "GetApplicationSupportedMimeTypes", "GetApplicationsThatSupportMimeType", "GetApplicationLaunchArguments", "GetStartingApplication", "GetTransitionState", "PerformApplicationPrelaunchCheck", "GetApplicationsTransitionStateNameFromEnum", "IsQuitUserPromptRequested", "LaunchInternalProcess", "GetCurrentSceneProcessId"); - } - public VR_IVRApplications_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRApplications_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRApplications_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1514
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRApplications_FnTable extends Structure { + /** C type : AddApplicationManifest_callback* */ + public VR_IVRApplications_FnTable.AddApplicationManifest_callback AddApplicationManifest; + /** C type : RemoveApplicationManifest_callback* */ + public VR_IVRApplications_FnTable.RemoveApplicationManifest_callback RemoveApplicationManifest; + /** C type : IsApplicationInstalled_callback* */ + public VR_IVRApplications_FnTable.IsApplicationInstalled_callback IsApplicationInstalled; + /** C type : GetApplicationCount_callback* */ + public VR_IVRApplications_FnTable.GetApplicationCount_callback GetApplicationCount; + /** C type : GetApplicationKeyByIndex_callback* */ + public VR_IVRApplications_FnTable.GetApplicationKeyByIndex_callback GetApplicationKeyByIndex; + /** C type : GetApplicationKeyByProcessId_callback* */ + public VR_IVRApplications_FnTable.GetApplicationKeyByProcessId_callback GetApplicationKeyByProcessId; + /** C type : LaunchApplication_callback* */ + public VR_IVRApplications_FnTable.LaunchApplication_callback LaunchApplication; + /** C type : LaunchTemplateApplication_callback* */ + public VR_IVRApplications_FnTable.LaunchTemplateApplication_callback LaunchTemplateApplication; + /** C type : LaunchApplicationFromMimeType_callback* */ + public VR_IVRApplications_FnTable.LaunchApplicationFromMimeType_callback LaunchApplicationFromMimeType; + /** C type : LaunchDashboardOverlay_callback* */ + public VR_IVRApplications_FnTable.LaunchDashboardOverlay_callback LaunchDashboardOverlay; + /** C type : CancelApplicationLaunch_callback* */ + public VR_IVRApplications_FnTable.CancelApplicationLaunch_callback CancelApplicationLaunch; + /** C type : IdentifyApplication_callback* */ + public VR_IVRApplications_FnTable.IdentifyApplication_callback IdentifyApplication; + /** C type : GetApplicationProcessId_callback* */ + public VR_IVRApplications_FnTable.GetApplicationProcessId_callback GetApplicationProcessId; + /** C type : GetApplicationsErrorNameFromEnum_callback* */ + public VR_IVRApplications_FnTable.GetApplicationsErrorNameFromEnum_callback GetApplicationsErrorNameFromEnum; + /** C type : GetApplicationPropertyString_callback* */ + public VR_IVRApplications_FnTable.GetApplicationPropertyString_callback GetApplicationPropertyString; + /** C type : GetApplicationPropertyBool_callback* */ + public VR_IVRApplications_FnTable.GetApplicationPropertyBool_callback GetApplicationPropertyBool; + /** C type : GetApplicationPropertyUint64_callback* */ + public VR_IVRApplications_FnTable.GetApplicationPropertyUint64_callback GetApplicationPropertyUint64; + /** C type : SetApplicationAutoLaunch_callback* */ + public VR_IVRApplications_FnTable.SetApplicationAutoLaunch_callback SetApplicationAutoLaunch; + /** C type : GetApplicationAutoLaunch_callback* */ + public VR_IVRApplications_FnTable.GetApplicationAutoLaunch_callback GetApplicationAutoLaunch; + /** C type : SetDefaultApplicationForMimeType_callback* */ + public VR_IVRApplications_FnTable.SetDefaultApplicationForMimeType_callback SetDefaultApplicationForMimeType; + /** C type : GetDefaultApplicationForMimeType_callback* */ + public VR_IVRApplications_FnTable.GetDefaultApplicationForMimeType_callback GetDefaultApplicationForMimeType; + /** C type : GetApplicationSupportedMimeTypes_callback* */ + public VR_IVRApplications_FnTable.GetApplicationSupportedMimeTypes_callback GetApplicationSupportedMimeTypes; + /** C type : GetApplicationsThatSupportMimeType_callback* */ + public VR_IVRApplications_FnTable.GetApplicationsThatSupportMimeType_callback GetApplicationsThatSupportMimeType; + /** C type : GetApplicationLaunchArguments_callback* */ + public VR_IVRApplications_FnTable.GetApplicationLaunchArguments_callback GetApplicationLaunchArguments; + /** C type : GetStartingApplication_callback* */ + public VR_IVRApplications_FnTable.GetStartingApplication_callback GetStartingApplication; + /** C type : GetTransitionState_callback* */ + public VR_IVRApplications_FnTable.GetTransitionState_callback GetTransitionState; + /** C type : PerformApplicationPrelaunchCheck_callback* */ + public VR_IVRApplications_FnTable.PerformApplicationPrelaunchCheck_callback PerformApplicationPrelaunchCheck; + /** C type : GetApplicationsTransitionStateNameFromEnum_callback* */ + public VR_IVRApplications_FnTable.GetApplicationsTransitionStateNameFromEnum_callback GetApplicationsTransitionStateNameFromEnum; + /** C type : IsQuitUserPromptRequested_callback* */ + public VR_IVRApplications_FnTable.IsQuitUserPromptRequested_callback IsQuitUserPromptRequested; + /** C type : LaunchInternalProcess_callback* */ + public VR_IVRApplications_FnTable.LaunchInternalProcess_callback LaunchInternalProcess; + /** C type : GetCurrentSceneProcessId_callback* */ + public VR_IVRApplications_FnTable.GetCurrentSceneProcessId_callback GetCurrentSceneProcessId; + /** native declaration : headers\openvr_capi.h:1483 */ + public interface AddApplicationManifest_callback extends Callback { + int apply(Pointer pchApplicationManifestFullPath, byte bTemporary); + }; + /** native declaration : headers\openvr_capi.h:1484 */ + public interface RemoveApplicationManifest_callback extends Callback { + int apply(Pointer pchApplicationManifestFullPath); + }; + /** native declaration : headers\openvr_capi.h:1485 */ + public interface IsApplicationInstalled_callback extends Callback { + byte apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1486 */ + public interface GetApplicationCount_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1487 */ + public interface GetApplicationKeyByIndex_callback extends Callback { + int apply(int unApplicationIndex, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); + }; + /** native declaration : headers\openvr_capi.h:1488 */ + public interface GetApplicationKeyByProcessId_callback extends Callback { + int apply(int unProcessId, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); + }; + /** native declaration : headers\openvr_capi.h:1489 */ + public interface LaunchApplication_callback extends Callback { + int apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1490 */ + public interface LaunchTemplateApplication_callback extends Callback { + int apply(Pointer pchTemplateAppKey, Pointer pchNewAppKey, AppOverrideKeys_t pKeys, int unKeys); + }; + /** native declaration : headers\openvr_capi.h:1491 */ + public interface LaunchApplicationFromMimeType_callback extends Callback { + int apply(Pointer pchMimeType, Pointer pchArgs); + }; + /** native declaration : headers\openvr_capi.h:1492 */ + public interface LaunchDashboardOverlay_callback extends Callback { + int apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1493 */ + public interface CancelApplicationLaunch_callback extends Callback { + byte apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1494 */ + public interface IdentifyApplication_callback extends Callback { + int apply(int unProcessId, Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1495 */ + public interface GetApplicationProcessId_callback extends Callback { + int apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1496 */ + public interface GetApplicationsErrorNameFromEnum_callback extends Callback { + Pointer apply(int error); + }; + /** native declaration : headers\openvr_capi.h:1497 */ + public interface GetApplicationPropertyString_callback extends Callback { + int apply(Pointer pchAppKey, int eProperty, Pointer pchPropertyValueBuffer, int unPropertyValueBufferLen, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1498 */ + public interface GetApplicationPropertyBool_callback extends Callback { + byte apply(Pointer pchAppKey, int eProperty, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1499 */ + public interface GetApplicationPropertyUint64_callback extends Callback { + long apply(Pointer pchAppKey, int eProperty, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1500 */ + public interface SetApplicationAutoLaunch_callback extends Callback { + int apply(Pointer pchAppKey, byte bAutoLaunch); + }; + /** native declaration : headers\openvr_capi.h:1501 */ + public interface GetApplicationAutoLaunch_callback extends Callback { + byte apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1502 */ + public interface SetDefaultApplicationForMimeType_callback extends Callback { + int apply(Pointer pchAppKey, Pointer pchMimeType); + }; + /** native declaration : headers\openvr_capi.h:1503 */ + public interface GetDefaultApplicationForMimeType_callback extends Callback { + byte apply(Pointer pchMimeType, Pointer pchAppKeyBuffer, int unAppKeyBufferLen); + }; + /** native declaration : headers\openvr_capi.h:1504 */ + public interface GetApplicationSupportedMimeTypes_callback extends Callback { + byte apply(Pointer pchAppKey, Pointer pchMimeTypesBuffer, int unMimeTypesBuffer); + }; + /** native declaration : headers\openvr_capi.h:1505 */ + public interface GetApplicationsThatSupportMimeType_callback extends Callback { + int apply(Pointer pchMimeType, Pointer pchAppKeysThatSupportBuffer, int unAppKeysThatSupportBuffer); + }; + /** native declaration : headers\openvr_capi.h:1506 */ + public interface GetApplicationLaunchArguments_callback extends Callback { + int apply(int unHandle, Pointer pchArgs, int unArgs); + }; + /** native declaration : headers\openvr_capi.h:1507 */ + public interface GetStartingApplication_callback extends Callback { + int apply(Pointer pchAppKeyBuffer, int unAppKeyBufferLen); + }; + /** native declaration : headers\openvr_capi.h:1508 */ + public interface GetTransitionState_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1509 */ + public interface PerformApplicationPrelaunchCheck_callback extends Callback { + int apply(Pointer pchAppKey); + }; + /** native declaration : headers\openvr_capi.h:1510 */ + public interface GetApplicationsTransitionStateNameFromEnum_callback extends Callback { + Pointer apply(int state); + }; + /** native declaration : headers\openvr_capi.h:1511 */ + public interface IsQuitUserPromptRequested_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1512 */ + public interface LaunchInternalProcess_callback extends Callback { + int apply(Pointer pchBinaryPath, Pointer pchArguments, Pointer pchWorkingDirectory); + }; + /** native declaration : headers\openvr_capi.h:1513 */ + public interface GetCurrentSceneProcessId_callback extends Callback { + int apply(); + }; + public VR_IVRApplications_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("AddApplicationManifest", "RemoveApplicationManifest", "IsApplicationInstalled", "GetApplicationCount", "GetApplicationKeyByIndex", "GetApplicationKeyByProcessId", "LaunchApplication", "LaunchTemplateApplication", "LaunchApplicationFromMimeType", "LaunchDashboardOverlay", "CancelApplicationLaunch", "IdentifyApplication", "GetApplicationProcessId", "GetApplicationsErrorNameFromEnum", "GetApplicationPropertyString", "GetApplicationPropertyBool", "GetApplicationPropertyUint64", "SetApplicationAutoLaunch", "GetApplicationAutoLaunch", "SetDefaultApplicationForMimeType", "GetDefaultApplicationForMimeType", "GetApplicationSupportedMimeTypes", "GetApplicationsThatSupportMimeType", "GetApplicationLaunchArguments", "GetStartingApplication", "GetTransitionState", "PerformApplicationPrelaunchCheck", "GetApplicationsTransitionStateNameFromEnum", "IsQuitUserPromptRequested", "LaunchInternalProcess", "GetCurrentSceneProcessId"); + } + public VR_IVRApplications_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRApplications_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRApplications_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperoneSetup_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperoneSetup_FnTable.java index cfbba6893..32708848f 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperoneSetup_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperoneSetup_FnTable.java @@ -7,145 +7,145 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1543
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRChaperoneSetup_FnTable extends Structure { - /** C type : CommitWorkingCopy_callback* */ - public VR_IVRChaperoneSetup_FnTable.CommitWorkingCopy_callback CommitWorkingCopy; - /** C type : RevertWorkingCopy_callback* */ - public VR_IVRChaperoneSetup_FnTable.RevertWorkingCopy_callback RevertWorkingCopy; - /** C type : GetWorkingPlayAreaSize_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetWorkingPlayAreaSize_callback GetWorkingPlayAreaSize; - /** C type : GetWorkingPlayAreaRect_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetWorkingPlayAreaRect_callback GetWorkingPlayAreaRect; - /** C type : GetWorkingCollisionBoundsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetWorkingCollisionBoundsInfo_callback GetWorkingCollisionBoundsInfo; - /** C type : GetLiveCollisionBoundsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetLiveCollisionBoundsInfo_callback GetLiveCollisionBoundsInfo; - /** C type : GetWorkingSeatedZeroPoseToRawTrackingPose_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetWorkingSeatedZeroPoseToRawTrackingPose_callback GetWorkingSeatedZeroPoseToRawTrackingPose; - /** C type : GetWorkingStandingZeroPoseToRawTrackingPose_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetWorkingStandingZeroPoseToRawTrackingPose_callback GetWorkingStandingZeroPoseToRawTrackingPose; - /** C type : SetWorkingPlayAreaSize_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingPlayAreaSize_callback SetWorkingPlayAreaSize; - /** C type : SetWorkingCollisionBoundsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingCollisionBoundsInfo_callback SetWorkingCollisionBoundsInfo; - /** C type : SetWorkingSeatedZeroPoseToRawTrackingPose_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingSeatedZeroPoseToRawTrackingPose_callback SetWorkingSeatedZeroPoseToRawTrackingPose; - /** C type : SetWorkingStandingZeroPoseToRawTrackingPose_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingStandingZeroPoseToRawTrackingPose_callback SetWorkingStandingZeroPoseToRawTrackingPose; - /** C type : ReloadFromDisk_callback* */ - public VR_IVRChaperoneSetup_FnTable.ReloadFromDisk_callback ReloadFromDisk; - /** C type : GetLiveSeatedZeroPoseToRawTrackingPose_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetLiveSeatedZeroPoseToRawTrackingPose_callback GetLiveSeatedZeroPoseToRawTrackingPose; - /** C type : SetWorkingCollisionBoundsTagsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingCollisionBoundsTagsInfo_callback SetWorkingCollisionBoundsTagsInfo; - /** C type : GetLiveCollisionBoundsTagsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetLiveCollisionBoundsTagsInfo_callback GetLiveCollisionBoundsTagsInfo; - /** C type : SetWorkingPhysicalBoundsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.SetWorkingPhysicalBoundsInfo_callback SetWorkingPhysicalBoundsInfo; - /** C type : GetLivePhysicalBoundsInfo_callback* */ - public VR_IVRChaperoneSetup_FnTable.GetLivePhysicalBoundsInfo_callback GetLivePhysicalBoundsInfo; - /** C type : ExportLiveToBuffer_callback* */ - public VR_IVRChaperoneSetup_FnTable.ExportLiveToBuffer_callback ExportLiveToBuffer; - /** C type : ImportFromBufferToWorking_callback* */ - public VR_IVRChaperoneSetup_FnTable.ImportFromBufferToWorking_callback ImportFromBufferToWorking; - /** native declaration : headers\openvr_capi.h:1523 */ - public interface CommitWorkingCopy_callback extends Callback { - byte apply(int configFile); - }; - /** native declaration : headers\openvr_capi.h:1524 */ - public interface RevertWorkingCopy_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1525 */ - public interface GetWorkingPlayAreaSize_callback extends Callback { - byte apply(FloatByReference pSizeX, FloatByReference pSizeZ); - }; - /** native declaration : headers\openvr_capi.h:1526 */ - public interface GetWorkingPlayAreaRect_callback extends Callback { - byte apply(HmdQuad_t rect); - }; - /** native declaration : headers\openvr_capi.h:1527 */ - public interface GetWorkingCollisionBoundsInfo_callback extends Callback { - byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); - }; - /** native declaration : headers\openvr_capi.h:1528 */ - public interface GetLiveCollisionBoundsInfo_callback extends Callback { - byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); - }; - /** native declaration : headers\openvr_capi.h:1529 */ - public interface GetWorkingSeatedZeroPoseToRawTrackingPose_callback extends Callback { - byte apply(HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose); - }; - /** native declaration : headers\openvr_capi.h:1530 */ - public interface GetWorkingStandingZeroPoseToRawTrackingPose_callback extends Callback { - byte apply(HmdMatrix34_t pmatStandingZeroPoseToRawTrackingPose); - }; - /** native declaration : headers\openvr_capi.h:1531 */ - public interface SetWorkingPlayAreaSize_callback extends Callback { - void apply(float sizeX, float sizeZ); - }; - /** native declaration : headers\openvr_capi.h:1532 */ - public interface SetWorkingCollisionBoundsInfo_callback extends Callback { - void apply(HmdQuad_t pQuadsBuffer, int unQuadsCount); - }; - /** native declaration : headers\openvr_capi.h:1533 */ - public interface SetWorkingSeatedZeroPoseToRawTrackingPose_callback extends Callback { - void apply(HmdMatrix34_t pMatSeatedZeroPoseToRawTrackingPose); - }; - /** native declaration : headers\openvr_capi.h:1534 */ - public interface SetWorkingStandingZeroPoseToRawTrackingPose_callback extends Callback { - void apply(HmdMatrix34_t pMatStandingZeroPoseToRawTrackingPose); - }; - /** native declaration : headers\openvr_capi.h:1535 */ - public interface ReloadFromDisk_callback extends Callback { - void apply(int configFile); - }; - /** native declaration : headers\openvr_capi.h:1536 */ - public interface GetLiveSeatedZeroPoseToRawTrackingPose_callback extends Callback { - byte apply(HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose); - }; - /** native declaration : headers\openvr_capi.h:1537 */ - public interface SetWorkingCollisionBoundsTagsInfo_callback extends Callback { - void apply(Pointer pTagsBuffer, int unTagCount); - }; - /** native declaration : headers\openvr_capi.h:1538 */ - public interface GetLiveCollisionBoundsTagsInfo_callback extends Callback { - byte apply(Pointer pTagsBuffer, IntByReference punTagCount); - }; - /** native declaration : headers\openvr_capi.h:1539 */ - public interface SetWorkingPhysicalBoundsInfo_callback extends Callback { - byte apply(HmdQuad_t pQuadsBuffer, int unQuadsCount); - }; - /** native declaration : headers\openvr_capi.h:1540 */ - public interface GetLivePhysicalBoundsInfo_callback extends Callback { - byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); - }; - /** native declaration : headers\openvr_capi.h:1541 */ - public interface ExportLiveToBuffer_callback extends Callback { - byte apply(Pointer pBuffer, IntByReference pnBufferLength); - }; - /** native declaration : headers\openvr_capi.h:1542 */ - public interface ImportFromBufferToWorking_callback extends Callback { - byte apply(Pointer pBuffer, int nImportFlags); - }; - public VR_IVRChaperoneSetup_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("CommitWorkingCopy", "RevertWorkingCopy", "GetWorkingPlayAreaSize", "GetWorkingPlayAreaRect", "GetWorkingCollisionBoundsInfo", "GetLiveCollisionBoundsInfo", "GetWorkingSeatedZeroPoseToRawTrackingPose", "GetWorkingStandingZeroPoseToRawTrackingPose", "SetWorkingPlayAreaSize", "SetWorkingCollisionBoundsInfo", "SetWorkingSeatedZeroPoseToRawTrackingPose", "SetWorkingStandingZeroPoseToRawTrackingPose", "ReloadFromDisk", "GetLiveSeatedZeroPoseToRawTrackingPose", "SetWorkingCollisionBoundsTagsInfo", "GetLiveCollisionBoundsTagsInfo", "SetWorkingPhysicalBoundsInfo", "GetLivePhysicalBoundsInfo", "ExportLiveToBuffer", "ImportFromBufferToWorking"); - } - public VR_IVRChaperoneSetup_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRChaperoneSetup_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRChaperoneSetup_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1574
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRChaperoneSetup_FnTable extends Structure { + /** C type : CommitWorkingCopy_callback* */ + public VR_IVRChaperoneSetup_FnTable.CommitWorkingCopy_callback CommitWorkingCopy; + /** C type : RevertWorkingCopy_callback* */ + public VR_IVRChaperoneSetup_FnTable.RevertWorkingCopy_callback RevertWorkingCopy; + /** C type : GetWorkingPlayAreaSize_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetWorkingPlayAreaSize_callback GetWorkingPlayAreaSize; + /** C type : GetWorkingPlayAreaRect_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetWorkingPlayAreaRect_callback GetWorkingPlayAreaRect; + /** C type : GetWorkingCollisionBoundsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetWorkingCollisionBoundsInfo_callback GetWorkingCollisionBoundsInfo; + /** C type : GetLiveCollisionBoundsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetLiveCollisionBoundsInfo_callback GetLiveCollisionBoundsInfo; + /** C type : GetWorkingSeatedZeroPoseToRawTrackingPose_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetWorkingSeatedZeroPoseToRawTrackingPose_callback GetWorkingSeatedZeroPoseToRawTrackingPose; + /** C type : GetWorkingStandingZeroPoseToRawTrackingPose_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetWorkingStandingZeroPoseToRawTrackingPose_callback GetWorkingStandingZeroPoseToRawTrackingPose; + /** C type : SetWorkingPlayAreaSize_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingPlayAreaSize_callback SetWorkingPlayAreaSize; + /** C type : SetWorkingCollisionBoundsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingCollisionBoundsInfo_callback SetWorkingCollisionBoundsInfo; + /** C type : SetWorkingSeatedZeroPoseToRawTrackingPose_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingSeatedZeroPoseToRawTrackingPose_callback SetWorkingSeatedZeroPoseToRawTrackingPose; + /** C type : SetWorkingStandingZeroPoseToRawTrackingPose_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingStandingZeroPoseToRawTrackingPose_callback SetWorkingStandingZeroPoseToRawTrackingPose; + /** C type : ReloadFromDisk_callback* */ + public VR_IVRChaperoneSetup_FnTable.ReloadFromDisk_callback ReloadFromDisk; + /** C type : GetLiveSeatedZeroPoseToRawTrackingPose_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetLiveSeatedZeroPoseToRawTrackingPose_callback GetLiveSeatedZeroPoseToRawTrackingPose; + /** C type : SetWorkingCollisionBoundsTagsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingCollisionBoundsTagsInfo_callback SetWorkingCollisionBoundsTagsInfo; + /** C type : GetLiveCollisionBoundsTagsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetLiveCollisionBoundsTagsInfo_callback GetLiveCollisionBoundsTagsInfo; + /** C type : SetWorkingPhysicalBoundsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.SetWorkingPhysicalBoundsInfo_callback SetWorkingPhysicalBoundsInfo; + /** C type : GetLivePhysicalBoundsInfo_callback* */ + public VR_IVRChaperoneSetup_FnTable.GetLivePhysicalBoundsInfo_callback GetLivePhysicalBoundsInfo; + /** C type : ExportLiveToBuffer_callback* */ + public VR_IVRChaperoneSetup_FnTable.ExportLiveToBuffer_callback ExportLiveToBuffer; + /** C type : ImportFromBufferToWorking_callback* */ + public VR_IVRChaperoneSetup_FnTable.ImportFromBufferToWorking_callback ImportFromBufferToWorking; + /** native declaration : headers\openvr_capi.h:1554 */ + public interface CommitWorkingCopy_callback extends Callback { + byte apply(int configFile); + }; + /** native declaration : headers\openvr_capi.h:1555 */ + public interface RevertWorkingCopy_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1556 */ + public interface GetWorkingPlayAreaSize_callback extends Callback { + byte apply(FloatByReference pSizeX, FloatByReference pSizeZ); + }; + /** native declaration : headers\openvr_capi.h:1557 */ + public interface GetWorkingPlayAreaRect_callback extends Callback { + byte apply(HmdQuad_t rect); + }; + /** native declaration : headers\openvr_capi.h:1558 */ + public interface GetWorkingCollisionBoundsInfo_callback extends Callback { + byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); + }; + /** native declaration : headers\openvr_capi.h:1559 */ + public interface GetLiveCollisionBoundsInfo_callback extends Callback { + byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); + }; + /** native declaration : headers\openvr_capi.h:1560 */ + public interface GetWorkingSeatedZeroPoseToRawTrackingPose_callback extends Callback { + byte apply(HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose); + }; + /** native declaration : headers\openvr_capi.h:1561 */ + public interface GetWorkingStandingZeroPoseToRawTrackingPose_callback extends Callback { + byte apply(HmdMatrix34_t pmatStandingZeroPoseToRawTrackingPose); + }; + /** native declaration : headers\openvr_capi.h:1562 */ + public interface SetWorkingPlayAreaSize_callback extends Callback { + void apply(float sizeX, float sizeZ); + }; + /** native declaration : headers\openvr_capi.h:1563 */ + public interface SetWorkingCollisionBoundsInfo_callback extends Callback { + void apply(HmdQuad_t pQuadsBuffer, int unQuadsCount); + }; + /** native declaration : headers\openvr_capi.h:1564 */ + public interface SetWorkingSeatedZeroPoseToRawTrackingPose_callback extends Callback { + void apply(HmdMatrix34_t pMatSeatedZeroPoseToRawTrackingPose); + }; + /** native declaration : headers\openvr_capi.h:1565 */ + public interface SetWorkingStandingZeroPoseToRawTrackingPose_callback extends Callback { + void apply(HmdMatrix34_t pMatStandingZeroPoseToRawTrackingPose); + }; + /** native declaration : headers\openvr_capi.h:1566 */ + public interface ReloadFromDisk_callback extends Callback { + void apply(int configFile); + }; + /** native declaration : headers\openvr_capi.h:1567 */ + public interface GetLiveSeatedZeroPoseToRawTrackingPose_callback extends Callback { + byte apply(HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose); + }; + /** native declaration : headers\openvr_capi.h:1568 */ + public interface SetWorkingCollisionBoundsTagsInfo_callback extends Callback { + void apply(Pointer pTagsBuffer, int unTagCount); + }; + /** native declaration : headers\openvr_capi.h:1569 */ + public interface GetLiveCollisionBoundsTagsInfo_callback extends Callback { + byte apply(Pointer pTagsBuffer, IntByReference punTagCount); + }; + /** native declaration : headers\openvr_capi.h:1570 */ + public interface SetWorkingPhysicalBoundsInfo_callback extends Callback { + byte apply(HmdQuad_t pQuadsBuffer, int unQuadsCount); + }; + /** native declaration : headers\openvr_capi.h:1571 */ + public interface GetLivePhysicalBoundsInfo_callback extends Callback { + byte apply(HmdQuad_t pQuadsBuffer, IntByReference punQuadsCount); + }; + /** native declaration : headers\openvr_capi.h:1572 */ + public interface ExportLiveToBuffer_callback extends Callback { + byte apply(Pointer pBuffer, IntByReference pnBufferLength); + }; + /** native declaration : headers\openvr_capi.h:1573 */ + public interface ImportFromBufferToWorking_callback extends Callback { + byte apply(Pointer pBuffer, int nImportFlags); + }; + public VR_IVRChaperoneSetup_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("CommitWorkingCopy", "RevertWorkingCopy", "GetWorkingPlayAreaSize", "GetWorkingPlayAreaRect", "GetWorkingCollisionBoundsInfo", "GetLiveCollisionBoundsInfo", "GetWorkingSeatedZeroPoseToRawTrackingPose", "GetWorkingStandingZeroPoseToRawTrackingPose", "SetWorkingPlayAreaSize", "SetWorkingCollisionBoundsInfo", "SetWorkingSeatedZeroPoseToRawTrackingPose", "SetWorkingStandingZeroPoseToRawTrackingPose", "ReloadFromDisk", "GetLiveSeatedZeroPoseToRawTrackingPose", "SetWorkingCollisionBoundsTagsInfo", "GetLiveCollisionBoundsTagsInfo", "SetWorkingPhysicalBoundsInfo", "GetLivePhysicalBoundsInfo", "ExportLiveToBuffer", "ImportFromBufferToWorking"); + } + public VR_IVRChaperoneSetup_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRChaperoneSetup_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRChaperoneSetup_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperone_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperone_FnTable.java index 0d827d2cf..4d3457526 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperone_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRChaperone_FnTable.java @@ -6,94 +6,94 @@ import com.sun.jna.ptr.FloatByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1501
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRChaperone_FnTable extends Structure { - /** C type : GetCalibrationState_callback* */ - public VR_IVRChaperone_FnTable.GetCalibrationState_callback GetCalibrationState; - /** C type : GetPlayAreaSize_callback* */ - public VR_IVRChaperone_FnTable.GetPlayAreaSize_callback GetPlayAreaSize; - /** C type : GetPlayAreaRect_callback* */ - public VR_IVRChaperone_FnTable.GetPlayAreaRect_callback GetPlayAreaRect; - /** C type : ReloadInfo_callback* */ - public VR_IVRChaperone_FnTable.ReloadInfo_callback ReloadInfo; - /** C type : SetSceneColor_callback* */ - public VR_IVRChaperone_FnTable.SetSceneColor_callback SetSceneColor; - /** C type : GetBoundsColor_callback* */ - public VR_IVRChaperone_FnTable.GetBoundsColor_callback GetBoundsColor; - /** C type : AreBoundsVisible_callback* */ - public VR_IVRChaperone_FnTable.AreBoundsVisible_callback AreBoundsVisible; - /** C type : ForceBoundsVisible_callback* */ - public VR_IVRChaperone_FnTable.ForceBoundsVisible_callback ForceBoundsVisible; - /** native declaration : headers\openvr_capi.h:1493 */ - public interface GetCalibrationState_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1494 */ - public interface GetPlayAreaSize_callback extends Callback { - byte apply(FloatByReference pSizeX, FloatByReference pSizeZ); - }; - /** native declaration : headers\openvr_capi.h:1495 */ - public interface GetPlayAreaRect_callback extends Callback { - byte apply(HmdQuad_t rect); - }; - /** native declaration : headers\openvr_capi.h:1496 */ - public interface ReloadInfo_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1497 */ - public interface SetSceneColor_callback extends Callback { - void apply(HmdColor_t.ByValue color); - }; - /** native declaration : headers\openvr_capi.h:1498 */ - public interface GetBoundsColor_callback extends Callback { - void apply(HmdColor_t pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, HmdColor_t pOutputCameraColor); - }; - /** native declaration : headers\openvr_capi.h:1499 */ - public interface AreBoundsVisible_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1500 */ - public interface ForceBoundsVisible_callback extends Callback { - void apply(byte bForce); - }; - public VR_IVRChaperone_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("GetCalibrationState", "GetPlayAreaSize", "GetPlayAreaRect", "ReloadInfo", "SetSceneColor", "GetBoundsColor", "AreBoundsVisible", "ForceBoundsVisible"); - } + * native declaration : headers\openvr_capi.h:1532
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRChaperone_FnTable extends Structure { + /** C type : GetCalibrationState_callback* */ + public VR_IVRChaperone_FnTable.GetCalibrationState_callback GetCalibrationState; + /** C type : GetPlayAreaSize_callback* */ + public VR_IVRChaperone_FnTable.GetPlayAreaSize_callback GetPlayAreaSize; + /** C type : GetPlayAreaRect_callback* */ + public VR_IVRChaperone_FnTable.GetPlayAreaRect_callback GetPlayAreaRect; + /** C type : ReloadInfo_callback* */ + public VR_IVRChaperone_FnTable.ReloadInfo_callback ReloadInfo; + /** C type : SetSceneColor_callback* */ + public VR_IVRChaperone_FnTable.SetSceneColor_callback SetSceneColor; + /** C type : GetBoundsColor_callback* */ + public VR_IVRChaperone_FnTable.GetBoundsColor_callback GetBoundsColor; + /** C type : AreBoundsVisible_callback* */ + public VR_IVRChaperone_FnTable.AreBoundsVisible_callback AreBoundsVisible; + /** C type : ForceBoundsVisible_callback* */ + public VR_IVRChaperone_FnTable.ForceBoundsVisible_callback ForceBoundsVisible; + /** native declaration : headers\openvr_capi.h:1524 */ + public interface GetCalibrationState_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1525 */ + public interface GetPlayAreaSize_callback extends Callback { + byte apply(FloatByReference pSizeX, FloatByReference pSizeZ); + }; + /** native declaration : headers\openvr_capi.h:1526 */ + public interface GetPlayAreaRect_callback extends Callback { + byte apply(HmdQuad_t rect); + }; + /** native declaration : headers\openvr_capi.h:1527 */ + public interface ReloadInfo_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1528 */ + public interface SetSceneColor_callback extends Callback { + void apply(HmdColor_t.ByValue color); + }; + /** native declaration : headers\openvr_capi.h:1529 */ + public interface GetBoundsColor_callback extends Callback { + void apply(HmdColor_t pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, HmdColor_t pOutputCameraColor); + }; + /** native declaration : headers\openvr_capi.h:1530 */ + public interface AreBoundsVisible_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1531 */ + public interface ForceBoundsVisible_callback extends Callback { + void apply(byte bForce); + }; + public VR_IVRChaperone_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("GetCalibrationState", "GetPlayAreaSize", "GetPlayAreaRect", "ReloadInfo", "SetSceneColor", "GetBoundsColor", "AreBoundsVisible", "ForceBoundsVisible"); + } /** - * @param GetCalibrationState C type : GetCalibrationState_callback*
    - * @param GetPlayAreaSize C type : GetPlayAreaSize_callback*
    - * @param GetPlayAreaRect C type : GetPlayAreaRect_callback*
    - * @param ReloadInfo C type : ReloadInfo_callback*
    - * @param SetSceneColor C type : SetSceneColor_callback*
    - * @param GetBoundsColor C type : GetBoundsColor_callback*
    - * @param AreBoundsVisible C type : AreBoundsVisible_callback*
    - * @param ForceBoundsVisible C type : ForceBoundsVisible_callback* - */ - public VR_IVRChaperone_FnTable(VR_IVRChaperone_FnTable.GetCalibrationState_callback GetCalibrationState, VR_IVRChaperone_FnTable.GetPlayAreaSize_callback GetPlayAreaSize, VR_IVRChaperone_FnTable.GetPlayAreaRect_callback GetPlayAreaRect, VR_IVRChaperone_FnTable.ReloadInfo_callback ReloadInfo, VR_IVRChaperone_FnTable.SetSceneColor_callback SetSceneColor, VR_IVRChaperone_FnTable.GetBoundsColor_callback GetBoundsColor, VR_IVRChaperone_FnTable.AreBoundsVisible_callback AreBoundsVisible, VR_IVRChaperone_FnTable.ForceBoundsVisible_callback ForceBoundsVisible) { - super(); - this.GetCalibrationState = GetCalibrationState; - this.GetPlayAreaSize = GetPlayAreaSize; - this.GetPlayAreaRect = GetPlayAreaRect; - this.ReloadInfo = ReloadInfo; - this.SetSceneColor = SetSceneColor; - this.GetBoundsColor = GetBoundsColor; - this.AreBoundsVisible = AreBoundsVisible; - this.ForceBoundsVisible = ForceBoundsVisible; - } - public VR_IVRChaperone_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRChaperone_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRChaperone_FnTable implements Structure.ByValue { - - }; + * @param GetCalibrationState C type : GetCalibrationState_callback*
    + * @param GetPlayAreaSize C type : GetPlayAreaSize_callback*
    + * @param GetPlayAreaRect C type : GetPlayAreaRect_callback*
    + * @param ReloadInfo C type : ReloadInfo_callback*
    + * @param SetSceneColor C type : SetSceneColor_callback*
    + * @param GetBoundsColor C type : GetBoundsColor_callback*
    + * @param AreBoundsVisible C type : AreBoundsVisible_callback*
    + * @param ForceBoundsVisible C type : ForceBoundsVisible_callback* + */ + public VR_IVRChaperone_FnTable(VR_IVRChaperone_FnTable.GetCalibrationState_callback GetCalibrationState, VR_IVRChaperone_FnTable.GetPlayAreaSize_callback GetPlayAreaSize, VR_IVRChaperone_FnTable.GetPlayAreaRect_callback GetPlayAreaRect, VR_IVRChaperone_FnTable.ReloadInfo_callback ReloadInfo, VR_IVRChaperone_FnTable.SetSceneColor_callback SetSceneColor, VR_IVRChaperone_FnTable.GetBoundsColor_callback GetBoundsColor, VR_IVRChaperone_FnTable.AreBoundsVisible_callback AreBoundsVisible, VR_IVRChaperone_FnTable.ForceBoundsVisible_callback ForceBoundsVisible) { + super(); + this.GetCalibrationState = GetCalibrationState; + this.GetPlayAreaSize = GetPlayAreaSize; + this.GetPlayAreaRect = GetPlayAreaRect; + this.ReloadInfo = ReloadInfo; + this.SetSceneColor = SetSceneColor; + this.GetBoundsColor = GetBoundsColor; + this.AreBoundsVisible = AreBoundsVisible; + this.ForceBoundsVisible = ForceBoundsVisible; + } + public VR_IVRChaperone_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRChaperone_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRChaperone_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRCompositor_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRCompositor_FnTable.java index 0d1b143f6..d9f34b618 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRCompositor_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRCompositor_FnTable.java @@ -8,271 +8,271 @@ import com.sun.jna.ptr.PointerByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1627
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRCompositor_FnTable extends Structure { - /** C type : SetTrackingSpace_callback* */ - public VR_IVRCompositor_FnTable.SetTrackingSpace_callback SetTrackingSpace; - /** C type : GetTrackingSpace_callback* */ - public VR_IVRCompositor_FnTable.GetTrackingSpace_callback GetTrackingSpace; - /** C type : WaitGetPoses_callback* */ - public VR_IVRCompositor_FnTable.WaitGetPoses_callback WaitGetPoses; - /** C type : GetLastPoses_callback* */ - public VR_IVRCompositor_FnTable.GetLastPoses_callback GetLastPoses; - /** C type : GetLastPoseForTrackedDeviceIndex_callback* */ - public VR_IVRCompositor_FnTable.GetLastPoseForTrackedDeviceIndex_callback GetLastPoseForTrackedDeviceIndex; - /** C type : Submit_callback* */ - public VR_IVRCompositor_FnTable.Submit_callback Submit; - /** C type : ClearLastSubmittedFrame_callback* */ - public VR_IVRCompositor_FnTable.ClearLastSubmittedFrame_callback ClearLastSubmittedFrame; - /** C type : PostPresentHandoff_callback* */ - public VR_IVRCompositor_FnTable.PostPresentHandoff_callback PostPresentHandoff; - /** C type : GetFrameTiming_callback* */ - public VR_IVRCompositor_FnTable.GetFrameTiming_callback GetFrameTiming; - /** C type : GetFrameTimings_callback* */ - public VR_IVRCompositor_FnTable.GetFrameTimings_callback GetFrameTimings; - /** C type : GetFrameTimeRemaining_callback* */ - public VR_IVRCompositor_FnTable.GetFrameTimeRemaining_callback GetFrameTimeRemaining; - /** C type : GetCumulativeStats_callback* */ - public VR_IVRCompositor_FnTable.GetCumulativeStats_callback GetCumulativeStats; - /** C type : FadeToColor_callback* */ - public VR_IVRCompositor_FnTable.FadeToColor_callback FadeToColor; - /** C type : GetCurrentFadeColor_callback* */ - public VR_IVRCompositor_FnTable.GetCurrentFadeColor_callback GetCurrentFadeColor; - /** C type : FadeGrid_callback* */ - public VR_IVRCompositor_FnTable.FadeGrid_callback FadeGrid; - /** C type : GetCurrentGridAlpha_callback* */ - public VR_IVRCompositor_FnTable.GetCurrentGridAlpha_callback GetCurrentGridAlpha; - /** C type : SetSkyboxOverride_callback* */ - public VR_IVRCompositor_FnTable.SetSkyboxOverride_callback SetSkyboxOverride; - /** C type : ClearSkyboxOverride_callback* */ - public VR_IVRCompositor_FnTable.ClearSkyboxOverride_callback ClearSkyboxOverride; - /** C type : CompositorBringToFront_callback* */ - public VR_IVRCompositor_FnTable.CompositorBringToFront_callback CompositorBringToFront; - /** C type : CompositorGoToBack_callback* */ - public VR_IVRCompositor_FnTable.CompositorGoToBack_callback CompositorGoToBack; - /** C type : CompositorQuit_callback* */ - public VR_IVRCompositor_FnTable.CompositorQuit_callback CompositorQuit; - /** C type : IsFullscreen_callback* */ - public VR_IVRCompositor_FnTable.IsFullscreen_callback IsFullscreen; - /** C type : GetCurrentSceneFocusProcess_callback* */ - public VR_IVRCompositor_FnTable.GetCurrentSceneFocusProcess_callback GetCurrentSceneFocusProcess; - /** C type : GetLastFrameRenderer_callback* */ - public VR_IVRCompositor_FnTable.GetLastFrameRenderer_callback GetLastFrameRenderer; - /** C type : CanRenderScene_callback* */ - public VR_IVRCompositor_FnTable.CanRenderScene_callback CanRenderScene; - /** C type : ShowMirrorWindow_callback* */ - public VR_IVRCompositor_FnTable.ShowMirrorWindow_callback ShowMirrorWindow; - /** C type : HideMirrorWindow_callback* */ - public VR_IVRCompositor_FnTable.HideMirrorWindow_callback HideMirrorWindow; - /** C type : IsMirrorWindowVisible_callback* */ - public VR_IVRCompositor_FnTable.IsMirrorWindowVisible_callback IsMirrorWindowVisible; - /** C type : CompositorDumpImages_callback* */ - public VR_IVRCompositor_FnTable.CompositorDumpImages_callback CompositorDumpImages; - /** C type : ShouldAppRenderWithLowResources_callback* */ - public VR_IVRCompositor_FnTable.ShouldAppRenderWithLowResources_callback ShouldAppRenderWithLowResources; - /** C type : ForceInterleavedReprojectionOn_callback* */ - public VR_IVRCompositor_FnTable.ForceInterleavedReprojectionOn_callback ForceInterleavedReprojectionOn; - /** C type : ForceReconnectProcess_callback* */ - public VR_IVRCompositor_FnTable.ForceReconnectProcess_callback ForceReconnectProcess; - /** C type : SuspendRendering_callback* */ - public VR_IVRCompositor_FnTable.SuspendRendering_callback SuspendRendering; - /** C type : GetMirrorTextureD3D11_callback* */ - public VR_IVRCompositor_FnTable.GetMirrorTextureD3D11_callback GetMirrorTextureD3D11; - /** C type : ReleaseMirrorTextureD3D11_callback* */ - public VR_IVRCompositor_FnTable.ReleaseMirrorTextureD3D11_callback ReleaseMirrorTextureD3D11; - /** C type : GetMirrorTextureGL_callback* */ - public VR_IVRCompositor_FnTable.GetMirrorTextureGL_callback GetMirrorTextureGL; - /** C type : ReleaseSharedGLTexture_callback* */ - public VR_IVRCompositor_FnTable.ReleaseSharedGLTexture_callback ReleaseSharedGLTexture; - /** C type : LockGLSharedTextureForAccess_callback* */ - public VR_IVRCompositor_FnTable.LockGLSharedTextureForAccess_callback LockGLSharedTextureForAccess; - /** C type : UnlockGLSharedTextureForAccess_callback* */ - public VR_IVRCompositor_FnTable.UnlockGLSharedTextureForAccess_callback UnlockGLSharedTextureForAccess; - /** C type : GetVulkanInstanceExtensionsRequired_callback* */ - public VR_IVRCompositor_FnTable.GetVulkanInstanceExtensionsRequired_callback GetVulkanInstanceExtensionsRequired; - /** C type : GetVulkanDeviceExtensionsRequired_callback* */ - public VR_IVRCompositor_FnTable.GetVulkanDeviceExtensionsRequired_callback GetVulkanDeviceExtensionsRequired; - /** native declaration : headers\openvr_capi.h:1586 */ - public interface SetTrackingSpace_callback extends Callback { - void apply(int eOrigin); - }; - /** native declaration : headers\openvr_capi.h:1587 */ - public interface GetTrackingSpace_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1588 */ - public interface WaitGetPoses_callback extends Callback { - int apply(TrackedDevicePose_t pRenderPoseArray, int unRenderPoseArrayCount, TrackedDevicePose_t pGamePoseArray, int unGamePoseArrayCount); - }; - /** native declaration : headers\openvr_capi.h:1589 */ - public interface GetLastPoses_callback extends Callback { - int apply(TrackedDevicePose_t pRenderPoseArray, int unRenderPoseArrayCount, TrackedDevicePose_t pGamePoseArray, int unGamePoseArrayCount); - }; - /** native declaration : headers\openvr_capi.h:1590 */ - public interface GetLastPoseForTrackedDeviceIndex_callback extends Callback { - int apply(int unDeviceIndex, TrackedDevicePose_t pOutputPose, TrackedDevicePose_t pOutputGamePose); - }; - /** native declaration : headers\openvr_capi.h:1591 */ - public interface Submit_callback extends Callback { - int apply(int eEye, Texture_t pTexture, VRTextureBounds_t pBounds, int nSubmitFlags); - }; - /** native declaration : headers\openvr_capi.h:1592 */ - public interface ClearLastSubmittedFrame_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1593 */ - public interface PostPresentHandoff_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1594 */ - public interface GetFrameTiming_callback extends Callback { - byte apply(Compositor_FrameTiming pTiming, int unFramesAgo); - }; - /** native declaration : headers\openvr_capi.h:1595 */ - public interface GetFrameTimings_callback extends Callback { - int apply(Compositor_FrameTiming pTiming, int nFrames); - }; - /** native declaration : headers\openvr_capi.h:1596 */ - public interface GetFrameTimeRemaining_callback extends Callback { - float apply(); - }; - /** native declaration : headers\openvr_capi.h:1597 */ - public interface GetCumulativeStats_callback extends Callback { - void apply(Compositor_CumulativeStats pStats, int nStatsSizeInBytes); - }; - /** native declaration : headers\openvr_capi.h:1598 */ - public interface FadeToColor_callback extends Callback { - void apply(float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, byte bBackground); - }; - /** native declaration : headers\openvr_capi.h:1599 */ - public interface GetCurrentFadeColor_callback extends Callback { - com.jme3.system.jopenvr.HmdColor_t.ByValue apply(byte bBackground); - }; - /** native declaration : headers\openvr_capi.h:1600 */ - public interface FadeGrid_callback extends Callback { - void apply(float fSeconds, byte bFadeIn); - }; - /** native declaration : headers\openvr_capi.h:1601 */ - public interface GetCurrentGridAlpha_callback extends Callback { - float apply(); - }; - /** native declaration : headers\openvr_capi.h:1602 */ - public interface SetSkyboxOverride_callback extends Callback { - int apply(Texture_t pTextures, int unTextureCount); - }; - /** native declaration : headers\openvr_capi.h:1603 */ - public interface ClearSkyboxOverride_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1604 */ - public interface CompositorBringToFront_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1605 */ - public interface CompositorGoToBack_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1606 */ - public interface CompositorQuit_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1607 */ - public interface IsFullscreen_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1608 */ - public interface GetCurrentSceneFocusProcess_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1609 */ - public interface GetLastFrameRenderer_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1610 */ - public interface CanRenderScene_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1611 */ - public interface ShowMirrorWindow_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1612 */ - public interface HideMirrorWindow_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1613 */ - public interface IsMirrorWindowVisible_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1614 */ - public interface CompositorDumpImages_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1615 */ - public interface ShouldAppRenderWithLowResources_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1616 */ - public interface ForceInterleavedReprojectionOn_callback extends Callback { - void apply(byte bOverride); - }; - /** native declaration : headers\openvr_capi.h:1617 */ - public interface ForceReconnectProcess_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1618 */ - public interface SuspendRendering_callback extends Callback { - void apply(byte bSuspend); - }; - /** native declaration : headers\openvr_capi.h:1619 */ - public interface GetMirrorTextureD3D11_callback extends Callback { - int apply(int eEye, Pointer pD3D11DeviceOrResource, PointerByReference ppD3D11ShaderResourceView); - }; - /** native declaration : headers\openvr_capi.h:1620 */ - public interface ReleaseMirrorTextureD3D11_callback extends Callback { - void apply(Pointer pD3D11ShaderResourceView); - }; - /** native declaration : headers\openvr_capi.h:1621 */ - public interface GetMirrorTextureGL_callback extends Callback { - int apply(int eEye, IntByReference pglTextureId, PointerByReference pglSharedTextureHandle); - }; - /** native declaration : headers\openvr_capi.h:1622 */ - public interface ReleaseSharedGLTexture_callback extends Callback { - byte apply(int glTextureId, Pointer glSharedTextureHandle); - }; - /** native declaration : headers\openvr_capi.h:1623 */ - public interface LockGLSharedTextureForAccess_callback extends Callback { - void apply(Pointer glSharedTextureHandle); - }; - /** native declaration : headers\openvr_capi.h:1624 */ - public interface UnlockGLSharedTextureForAccess_callback extends Callback { - void apply(Pointer glSharedTextureHandle); - }; - /** native declaration : headers\openvr_capi.h:1625 */ - public interface GetVulkanInstanceExtensionsRequired_callback extends Callback { - int apply(Pointer pchValue, int unBufferSize); - }; - /** native declaration : headers\openvr_capi.h:1626 */ - public interface GetVulkanDeviceExtensionsRequired_callback extends Callback { - int apply(VkPhysicalDevice_T pPhysicalDevice, Pointer pchValue, int unBufferSize); - }; - public VR_IVRCompositor_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("SetTrackingSpace", "GetTrackingSpace", "WaitGetPoses", "GetLastPoses", "GetLastPoseForTrackedDeviceIndex", "Submit", "ClearLastSubmittedFrame", "PostPresentHandoff", "GetFrameTiming", "GetFrameTimings", "GetFrameTimeRemaining", "GetCumulativeStats", "FadeToColor", "GetCurrentFadeColor", "FadeGrid", "GetCurrentGridAlpha", "SetSkyboxOverride", "ClearSkyboxOverride", "CompositorBringToFront", "CompositorGoToBack", "CompositorQuit", "IsFullscreen", "GetCurrentSceneFocusProcess", "GetLastFrameRenderer", "CanRenderScene", "ShowMirrorWindow", "HideMirrorWindow", "IsMirrorWindowVisible", "CompositorDumpImages", "ShouldAppRenderWithLowResources", "ForceInterleavedReprojectionOn", "ForceReconnectProcess", "SuspendRendering", "GetMirrorTextureD3D11", "ReleaseMirrorTextureD3D11", "GetMirrorTextureGL", "ReleaseSharedGLTexture", "LockGLSharedTextureForAccess", "UnlockGLSharedTextureForAccess", "GetVulkanInstanceExtensionsRequired", "GetVulkanDeviceExtensionsRequired"); - } - public VR_IVRCompositor_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRCompositor_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRCompositor_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1658
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRCompositor_FnTable extends Structure { + /** C type : SetTrackingSpace_callback* */ + public VR_IVRCompositor_FnTable.SetTrackingSpace_callback SetTrackingSpace; + /** C type : GetTrackingSpace_callback* */ + public VR_IVRCompositor_FnTable.GetTrackingSpace_callback GetTrackingSpace; + /** C type : WaitGetPoses_callback* */ + public VR_IVRCompositor_FnTable.WaitGetPoses_callback WaitGetPoses; + /** C type : GetLastPoses_callback* */ + public VR_IVRCompositor_FnTable.GetLastPoses_callback GetLastPoses; + /** C type : GetLastPoseForTrackedDeviceIndex_callback* */ + public VR_IVRCompositor_FnTable.GetLastPoseForTrackedDeviceIndex_callback GetLastPoseForTrackedDeviceIndex; + /** C type : Submit_callback* */ + public VR_IVRCompositor_FnTable.Submit_callback Submit; + /** C type : ClearLastSubmittedFrame_callback* */ + public VR_IVRCompositor_FnTable.ClearLastSubmittedFrame_callback ClearLastSubmittedFrame; + /** C type : PostPresentHandoff_callback* */ + public VR_IVRCompositor_FnTable.PostPresentHandoff_callback PostPresentHandoff; + /** C type : GetFrameTiming_callback* */ + public VR_IVRCompositor_FnTable.GetFrameTiming_callback GetFrameTiming; + /** C type : GetFrameTimings_callback* */ + public VR_IVRCompositor_FnTable.GetFrameTimings_callback GetFrameTimings; + /** C type : GetFrameTimeRemaining_callback* */ + public VR_IVRCompositor_FnTable.GetFrameTimeRemaining_callback GetFrameTimeRemaining; + /** C type : GetCumulativeStats_callback* */ + public VR_IVRCompositor_FnTable.GetCumulativeStats_callback GetCumulativeStats; + /** C type : FadeToColor_callback* */ + public VR_IVRCompositor_FnTable.FadeToColor_callback FadeToColor; + /** C type : GetCurrentFadeColor_callback* */ + public VR_IVRCompositor_FnTable.GetCurrentFadeColor_callback GetCurrentFadeColor; + /** C type : FadeGrid_callback* */ + public VR_IVRCompositor_FnTable.FadeGrid_callback FadeGrid; + /** C type : GetCurrentGridAlpha_callback* */ + public VR_IVRCompositor_FnTable.GetCurrentGridAlpha_callback GetCurrentGridAlpha; + /** C type : SetSkyboxOverride_callback* */ + public VR_IVRCompositor_FnTable.SetSkyboxOverride_callback SetSkyboxOverride; + /** C type : ClearSkyboxOverride_callback* */ + public VR_IVRCompositor_FnTable.ClearSkyboxOverride_callback ClearSkyboxOverride; + /** C type : CompositorBringToFront_callback* */ + public VR_IVRCompositor_FnTable.CompositorBringToFront_callback CompositorBringToFront; + /** C type : CompositorGoToBack_callback* */ + public VR_IVRCompositor_FnTable.CompositorGoToBack_callback CompositorGoToBack; + /** C type : CompositorQuit_callback* */ + public VR_IVRCompositor_FnTable.CompositorQuit_callback CompositorQuit; + /** C type : IsFullscreen_callback* */ + public VR_IVRCompositor_FnTable.IsFullscreen_callback IsFullscreen; + /** C type : GetCurrentSceneFocusProcess_callback* */ + public VR_IVRCompositor_FnTable.GetCurrentSceneFocusProcess_callback GetCurrentSceneFocusProcess; + /** C type : GetLastFrameRenderer_callback* */ + public VR_IVRCompositor_FnTable.GetLastFrameRenderer_callback GetLastFrameRenderer; + /** C type : CanRenderScene_callback* */ + public VR_IVRCompositor_FnTable.CanRenderScene_callback CanRenderScene; + /** C type : ShowMirrorWindow_callback* */ + public VR_IVRCompositor_FnTable.ShowMirrorWindow_callback ShowMirrorWindow; + /** C type : HideMirrorWindow_callback* */ + public VR_IVRCompositor_FnTable.HideMirrorWindow_callback HideMirrorWindow; + /** C type : IsMirrorWindowVisible_callback* */ + public VR_IVRCompositor_FnTable.IsMirrorWindowVisible_callback IsMirrorWindowVisible; + /** C type : CompositorDumpImages_callback* */ + public VR_IVRCompositor_FnTable.CompositorDumpImages_callback CompositorDumpImages; + /** C type : ShouldAppRenderWithLowResources_callback* */ + public VR_IVRCompositor_FnTable.ShouldAppRenderWithLowResources_callback ShouldAppRenderWithLowResources; + /** C type : ForceInterleavedReprojectionOn_callback* */ + public VR_IVRCompositor_FnTable.ForceInterleavedReprojectionOn_callback ForceInterleavedReprojectionOn; + /** C type : ForceReconnectProcess_callback* */ + public VR_IVRCompositor_FnTable.ForceReconnectProcess_callback ForceReconnectProcess; + /** C type : SuspendRendering_callback* */ + public VR_IVRCompositor_FnTable.SuspendRendering_callback SuspendRendering; + /** C type : GetMirrorTextureD3D11_callback* */ + public VR_IVRCompositor_FnTable.GetMirrorTextureD3D11_callback GetMirrorTextureD3D11; + /** C type : ReleaseMirrorTextureD3D11_callback* */ + public VR_IVRCompositor_FnTable.ReleaseMirrorTextureD3D11_callback ReleaseMirrorTextureD3D11; + /** C type : GetMirrorTextureGL_callback* */ + public VR_IVRCompositor_FnTable.GetMirrorTextureGL_callback GetMirrorTextureGL; + /** C type : ReleaseSharedGLTexture_callback* */ + public VR_IVRCompositor_FnTable.ReleaseSharedGLTexture_callback ReleaseSharedGLTexture; + /** C type : LockGLSharedTextureForAccess_callback* */ + public VR_IVRCompositor_FnTable.LockGLSharedTextureForAccess_callback LockGLSharedTextureForAccess; + /** C type : UnlockGLSharedTextureForAccess_callback* */ + public VR_IVRCompositor_FnTable.UnlockGLSharedTextureForAccess_callback UnlockGLSharedTextureForAccess; + /** C type : GetVulkanInstanceExtensionsRequired_callback* */ + public VR_IVRCompositor_FnTable.GetVulkanInstanceExtensionsRequired_callback GetVulkanInstanceExtensionsRequired; + /** C type : GetVulkanDeviceExtensionsRequired_callback* */ + public VR_IVRCompositor_FnTable.GetVulkanDeviceExtensionsRequired_callback GetVulkanDeviceExtensionsRequired; + /** native declaration : headers\openvr_capi.h:1617 */ + public interface SetTrackingSpace_callback extends Callback { + void apply(int eOrigin); + }; + /** native declaration : headers\openvr_capi.h:1618 */ + public interface GetTrackingSpace_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1619 */ + public interface WaitGetPoses_callback extends Callback { + int apply(TrackedDevicePose_t pRenderPoseArray, int unRenderPoseArrayCount, TrackedDevicePose_t pGamePoseArray, int unGamePoseArrayCount); + }; + /** native declaration : headers\openvr_capi.h:1620 */ + public interface GetLastPoses_callback extends Callback { + int apply(TrackedDevicePose_t pRenderPoseArray, int unRenderPoseArrayCount, TrackedDevicePose_t pGamePoseArray, int unGamePoseArrayCount); + }; + /** native declaration : headers\openvr_capi.h:1621 */ + public interface GetLastPoseForTrackedDeviceIndex_callback extends Callback { + int apply(int unDeviceIndex, TrackedDevicePose_t pOutputPose, TrackedDevicePose_t pOutputGamePose); + }; + /** native declaration : headers\openvr_capi.h:1622 */ + public interface Submit_callback extends Callback { + int apply(int eEye, Texture_t pTexture, VRTextureBounds_t pBounds, int nSubmitFlags); + }; + /** native declaration : headers\openvr_capi.h:1623 */ + public interface ClearLastSubmittedFrame_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1624 */ + public interface PostPresentHandoff_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1625 */ + public interface GetFrameTiming_callback extends Callback { + byte apply(Compositor_FrameTiming pTiming, int unFramesAgo); + }; + /** native declaration : headers\openvr_capi.h:1626 */ + public interface GetFrameTimings_callback extends Callback { + int apply(Compositor_FrameTiming pTiming, int nFrames); + }; + /** native declaration : headers\openvr_capi.h:1627 */ + public interface GetFrameTimeRemaining_callback extends Callback { + float apply(); + }; + /** native declaration : headers\openvr_capi.h:1628 */ + public interface GetCumulativeStats_callback extends Callback { + void apply(Compositor_CumulativeStats pStats, int nStatsSizeInBytes); + }; + /** native declaration : headers\openvr_capi.h:1629 */ + public interface FadeToColor_callback extends Callback { + void apply(float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, byte bBackground); + }; + /** native declaration : headers\openvr_capi.h:1630 */ + public interface GetCurrentFadeColor_callback extends Callback { + com.jme3.system.jopenvr.HmdColor_t.ByValue apply(byte bBackground); + }; + /** native declaration : headers\openvr_capi.h:1631 */ + public interface FadeGrid_callback extends Callback { + void apply(float fSeconds, byte bFadeIn); + }; + /** native declaration : headers\openvr_capi.h:1632 */ + public interface GetCurrentGridAlpha_callback extends Callback { + float apply(); + }; + /** native declaration : headers\openvr_capi.h:1633 */ + public interface SetSkyboxOverride_callback extends Callback { + int apply(Texture_t pTextures, int unTextureCount); + }; + /** native declaration : headers\openvr_capi.h:1634 */ + public interface ClearSkyboxOverride_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1635 */ + public interface CompositorBringToFront_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1636 */ + public interface CompositorGoToBack_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1637 */ + public interface CompositorQuit_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1638 */ + public interface IsFullscreen_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1639 */ + public interface GetCurrentSceneFocusProcess_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1640 */ + public interface GetLastFrameRenderer_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1641 */ + public interface CanRenderScene_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1642 */ + public interface ShowMirrorWindow_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1643 */ + public interface HideMirrorWindow_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1644 */ + public interface IsMirrorWindowVisible_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1645 */ + public interface CompositorDumpImages_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1646 */ + public interface ShouldAppRenderWithLowResources_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1647 */ + public interface ForceInterleavedReprojectionOn_callback extends Callback { + void apply(byte bOverride); + }; + /** native declaration : headers\openvr_capi.h:1648 */ + public interface ForceReconnectProcess_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1649 */ + public interface SuspendRendering_callback extends Callback { + void apply(byte bSuspend); + }; + /** native declaration : headers\openvr_capi.h:1650 */ + public interface GetMirrorTextureD3D11_callback extends Callback { + int apply(int eEye, Pointer pD3D11DeviceOrResource, PointerByReference ppD3D11ShaderResourceView); + }; + /** native declaration : headers\openvr_capi.h:1651 */ + public interface ReleaseMirrorTextureD3D11_callback extends Callback { + void apply(Pointer pD3D11ShaderResourceView); + }; + /** native declaration : headers\openvr_capi.h:1652 */ + public interface GetMirrorTextureGL_callback extends Callback { + int apply(int eEye, IntByReference pglTextureId, PointerByReference pglSharedTextureHandle); + }; + /** native declaration : headers\openvr_capi.h:1653 */ + public interface ReleaseSharedGLTexture_callback extends Callback { + byte apply(int glTextureId, Pointer glSharedTextureHandle); + }; + /** native declaration : headers\openvr_capi.h:1654 */ + public interface LockGLSharedTextureForAccess_callback extends Callback { + void apply(Pointer glSharedTextureHandle); + }; + /** native declaration : headers\openvr_capi.h:1655 */ + public interface UnlockGLSharedTextureForAccess_callback extends Callback { + void apply(Pointer glSharedTextureHandle); + }; + /** native declaration : headers\openvr_capi.h:1656 */ + public interface GetVulkanInstanceExtensionsRequired_callback extends Callback { + int apply(Pointer pchValue, int unBufferSize); + }; + /** native declaration : headers\openvr_capi.h:1657 */ + public interface GetVulkanDeviceExtensionsRequired_callback extends Callback { + int apply(VkPhysicalDevice_T pPhysicalDevice, Pointer pchValue, int unBufferSize); + }; + public VR_IVRCompositor_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("SetTrackingSpace", "GetTrackingSpace", "WaitGetPoses", "GetLastPoses", "GetLastPoseForTrackedDeviceIndex", "Submit", "ClearLastSubmittedFrame", "PostPresentHandoff", "GetFrameTiming", "GetFrameTimings", "GetFrameTimeRemaining", "GetCumulativeStats", "FadeToColor", "GetCurrentFadeColor", "FadeGrid", "GetCurrentGridAlpha", "SetSkyboxOverride", "ClearSkyboxOverride", "CompositorBringToFront", "CompositorGoToBack", "CompositorQuit", "IsFullscreen", "GetCurrentSceneFocusProcess", "GetLastFrameRenderer", "CanRenderScene", "ShowMirrorWindow", "HideMirrorWindow", "IsMirrorWindowVisible", "CompositorDumpImages", "ShouldAppRenderWithLowResources", "ForceInterleavedReprojectionOn", "ForceReconnectProcess", "SuspendRendering", "GetMirrorTextureD3D11", "ReleaseMirrorTextureD3D11", "GetMirrorTextureGL", "ReleaseSharedGLTexture", "LockGLSharedTextureForAccess", "UnlockGLSharedTextureForAccess", "GetVulkanInstanceExtensionsRequired", "GetVulkanDeviceExtensionsRequired"); + } + public VR_IVRCompositor_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRCompositor_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRCompositor_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRDriverManager_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRDriverManager_FnTable.java new file mode 100644 index 000000000..4bd918859 --- /dev/null +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRDriverManager_FnTable.java @@ -0,0 +1,50 @@ +package com.jme3.system.jopenvr; +import com.sun.jna.Callback; +import com.sun.jna.Pointer; +import com.sun.jna.Structure; +import java.util.Arrays; +import java.util.List; +/** + * native declaration : headers\openvr_capi.h:1918
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRDriverManager_FnTable extends Structure { + /** C type : GetDriverCount_callback* */ + public VR_IVRDriverManager_FnTable.GetDriverCount_callback GetDriverCount; + /** C type : GetDriverName_callback* */ + public VR_IVRDriverManager_FnTable.GetDriverName_callback GetDriverName; + /** native declaration : headers\openvr_capi.h:1916 */ + public interface GetDriverCount_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1917 */ + public interface GetDriverName_callback extends Callback { + int apply(int nDriver, Pointer pchValue, int unBufferSize); + }; + public VR_IVRDriverManager_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("GetDriverCount", "GetDriverName"); + } + /** + * @param GetDriverCount C type : GetDriverCount_callback*
    + * @param GetDriverName C type : GetDriverName_callback* + */ + public VR_IVRDriverManager_FnTable(VR_IVRDriverManager_FnTable.GetDriverCount_callback GetDriverCount, VR_IVRDriverManager_FnTable.GetDriverName_callback GetDriverName) { + super(); + this.GetDriverCount = GetDriverCount; + this.GetDriverName = GetDriverName; + } + public VR_IVRDriverManager_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRDriverManager_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRDriverManager_FnTable implements Structure.ByValue { + + }; +} diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRExtendedDisplay_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRExtendedDisplay_FnTable.java index 027c6dc81..ded79eec3 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRExtendedDisplay_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRExtendedDisplay_FnTable.java @@ -6,54 +6,54 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1393
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRExtendedDisplay_FnTable extends Structure { - /** C type : GetWindowBounds_callback* */ - public VR_IVRExtendedDisplay_FnTable.GetWindowBounds_callback GetWindowBounds; - /** C type : GetEyeOutputViewport_callback* */ - public VR_IVRExtendedDisplay_FnTable.GetEyeOutputViewport_callback GetEyeOutputViewport; - /** C type : GetDXGIOutputInfo_callback* */ - public VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo; - /** native declaration : headers\openvr_capi.h:1390 */ - public interface GetWindowBounds_callback extends Callback { - void apply(IntByReference pnX, IntByReference pnY, IntByReference pnWidth, IntByReference pnHeight); - }; - /** native declaration : headers\openvr_capi.h:1391 */ - public interface GetEyeOutputViewport_callback extends Callback { - void apply(int eEye, IntByReference pnX, IntByReference pnY, IntByReference pnWidth, IntByReference pnHeight); - }; - /** native declaration : headers\openvr_capi.h:1392 */ - public interface GetDXGIOutputInfo_callback extends Callback { - void apply(IntByReference pnAdapterIndex, IntByReference pnAdapterOutputIndex); - }; - public VR_IVRExtendedDisplay_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("GetWindowBounds", "GetEyeOutputViewport", "GetDXGIOutputInfo"); - } + * native declaration : headers\openvr_capi.h:1424
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRExtendedDisplay_FnTable extends Structure { + /** C type : GetWindowBounds_callback* */ + public VR_IVRExtendedDisplay_FnTable.GetWindowBounds_callback GetWindowBounds; + /** C type : GetEyeOutputViewport_callback* */ + public VR_IVRExtendedDisplay_FnTable.GetEyeOutputViewport_callback GetEyeOutputViewport; + /** C type : GetDXGIOutputInfo_callback* */ + public VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo; + /** native declaration : headers\openvr_capi.h:1421 */ + public interface GetWindowBounds_callback extends Callback { + void apply(IntByReference pnX, IntByReference pnY, IntByReference pnWidth, IntByReference pnHeight); + }; + /** native declaration : headers\openvr_capi.h:1422 */ + public interface GetEyeOutputViewport_callback extends Callback { + void apply(int eEye, IntByReference pnX, IntByReference pnY, IntByReference pnWidth, IntByReference pnHeight); + }; + /** native declaration : headers\openvr_capi.h:1423 */ + public interface GetDXGIOutputInfo_callback extends Callback { + void apply(IntByReference pnAdapterIndex, IntByReference pnAdapterOutputIndex); + }; + public VR_IVRExtendedDisplay_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("GetWindowBounds", "GetEyeOutputViewport", "GetDXGIOutputInfo"); + } /** - * @param GetWindowBounds C type : GetWindowBounds_callback*
    - * @param GetEyeOutputViewport C type : GetEyeOutputViewport_callback*
    - * @param GetDXGIOutputInfo C type : GetDXGIOutputInfo_callback* - */ - public VR_IVRExtendedDisplay_FnTable(VR_IVRExtendedDisplay_FnTable.GetWindowBounds_callback GetWindowBounds, VR_IVRExtendedDisplay_FnTable.GetEyeOutputViewport_callback GetEyeOutputViewport, VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo) { - super(); - this.GetWindowBounds = GetWindowBounds; - this.GetEyeOutputViewport = GetEyeOutputViewport; - this.GetDXGIOutputInfo = GetDXGIOutputInfo; - } - public VR_IVRExtendedDisplay_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRExtendedDisplay_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRExtendedDisplay_FnTable implements Structure.ByValue { - - }; + * @param GetWindowBounds C type : GetWindowBounds_callback*
    + * @param GetEyeOutputViewport C type : GetEyeOutputViewport_callback*
    + * @param GetDXGIOutputInfo C type : GetDXGIOutputInfo_callback* + */ + public VR_IVRExtendedDisplay_FnTable(VR_IVRExtendedDisplay_FnTable.GetWindowBounds_callback GetWindowBounds, VR_IVRExtendedDisplay_FnTable.GetEyeOutputViewport_callback GetEyeOutputViewport, VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo) { + super(); + this.GetWindowBounds = GetWindowBounds; + this.GetEyeOutputViewport = GetEyeOutputViewport; + this.GetDXGIOutputInfo = GetDXGIOutputInfo; + } + public VR_IVRExtendedDisplay_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRExtendedDisplay_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRExtendedDisplay_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRNotifications_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRNotifications_FnTable.java index d04b40327..f7e701982 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRNotifications_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRNotifications_FnTable.java @@ -6,46 +6,46 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1823
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRNotifications_FnTable extends Structure { - /** C type : CreateNotification_callback* */ - public VR_IVRNotifications_FnTable.CreateNotification_callback CreateNotification; - /** C type : RemoveNotification_callback* */ - public VR_IVRNotifications_FnTable.RemoveNotification_callback RemoveNotification; - /** native declaration : headers\openvr_capi.h:1821 */ - public interface CreateNotification_callback extends Callback { - int apply(long ulOverlayHandle, long ulUserValue, int type, Pointer pchText, int style, NotificationBitmap_t pImage, IntByReference pNotificationId); - }; - /** native declaration : headers\openvr_capi.h:1822 */ - public interface RemoveNotification_callback extends Callback { - int apply(int notificationId); - }; - public VR_IVRNotifications_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("CreateNotification", "RemoveNotification"); - } + * native declaration : headers\openvr_capi.h:1864
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRNotifications_FnTable extends Structure { + /** C type : CreateNotification_callback* */ + public VR_IVRNotifications_FnTable.CreateNotification_callback CreateNotification; + /** C type : RemoveNotification_callback* */ + public VR_IVRNotifications_FnTable.RemoveNotification_callback RemoveNotification; + /** native declaration : headers\openvr_capi.h:1862 */ + public interface CreateNotification_callback extends Callback { + int apply(long ulOverlayHandle, long ulUserValue, int type, Pointer pchText, int style, NotificationBitmap_t pImage, IntByReference pNotificationId); + }; + /** native declaration : headers\openvr_capi.h:1863 */ + public interface RemoveNotification_callback extends Callback { + int apply(int notificationId); + }; + public VR_IVRNotifications_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("CreateNotification", "RemoveNotification"); + } /** - * @param CreateNotification C type : CreateNotification_callback*
    - * @param RemoveNotification C type : RemoveNotification_callback* - */ - public VR_IVRNotifications_FnTable(VR_IVRNotifications_FnTable.CreateNotification_callback CreateNotification, VR_IVRNotifications_FnTable.RemoveNotification_callback RemoveNotification) { - super(); - this.CreateNotification = CreateNotification; - this.RemoveNotification = RemoveNotification; - } - public VR_IVRNotifications_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRNotifications_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRNotifications_FnTable implements Structure.ByValue { - - }; + * @param CreateNotification C type : CreateNotification_callback*
    + * @param RemoveNotification C type : RemoveNotification_callback* + */ + public VR_IVRNotifications_FnTable(VR_IVRNotifications_FnTable.CreateNotification_callback CreateNotification, VR_IVRNotifications_FnTable.RemoveNotification_callback RemoveNotification) { + super(); + this.CreateNotification = CreateNotification; + this.RemoveNotification = RemoveNotification; + } + public VR_IVRNotifications_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRNotifications_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRNotifications_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVROverlay_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVROverlay_FnTable.java index f7fe2d13d..6ad29adca 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVROverlay_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVROverlay_FnTable.java @@ -9,475 +9,505 @@ import com.sun.jna.ptr.PointerByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1779
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVROverlay_FnTable extends Structure { - /** C type : FindOverlay_callback* */ - public VR_IVROverlay_FnTable.FindOverlay_callback FindOverlay; - /** C type : CreateOverlay_callback* */ - public VR_IVROverlay_FnTable.CreateOverlay_callback CreateOverlay; - /** C type : DestroyOverlay_callback* */ - public VR_IVROverlay_FnTable.DestroyOverlay_callback DestroyOverlay; - /** C type : SetHighQualityOverlay_callback* */ - public VR_IVROverlay_FnTable.SetHighQualityOverlay_callback SetHighQualityOverlay; - /** C type : GetHighQualityOverlay_callback* */ - public VR_IVROverlay_FnTable.GetHighQualityOverlay_callback GetHighQualityOverlay; - /** C type : GetOverlayKey_callback* */ - public VR_IVROverlay_FnTable.GetOverlayKey_callback GetOverlayKey; - /** C type : GetOverlayName_callback* */ - public VR_IVROverlay_FnTable.GetOverlayName_callback GetOverlayName; - /** C type : GetOverlayImageData_callback* */ - public VR_IVROverlay_FnTable.GetOverlayImageData_callback GetOverlayImageData; - /** C type : GetOverlayErrorNameFromEnum_callback* */ - public VR_IVROverlay_FnTable.GetOverlayErrorNameFromEnum_callback GetOverlayErrorNameFromEnum; - /** C type : SetOverlayRenderingPid_callback* */ - public VR_IVROverlay_FnTable.SetOverlayRenderingPid_callback SetOverlayRenderingPid; - /** C type : GetOverlayRenderingPid_callback* */ - public VR_IVROverlay_FnTable.GetOverlayRenderingPid_callback GetOverlayRenderingPid; - /** C type : SetOverlayFlag_callback* */ - public VR_IVROverlay_FnTable.SetOverlayFlag_callback SetOverlayFlag; - /** C type : GetOverlayFlag_callback* */ - public VR_IVROverlay_FnTable.GetOverlayFlag_callback GetOverlayFlag; - /** C type : SetOverlayColor_callback* */ - public VR_IVROverlay_FnTable.SetOverlayColor_callback SetOverlayColor; - /** C type : GetOverlayColor_callback* */ - public VR_IVROverlay_FnTable.GetOverlayColor_callback GetOverlayColor; - /** C type : SetOverlayAlpha_callback* */ - public VR_IVROverlay_FnTable.SetOverlayAlpha_callback SetOverlayAlpha; - /** C type : GetOverlayAlpha_callback* */ - public VR_IVROverlay_FnTable.GetOverlayAlpha_callback GetOverlayAlpha; - /** C type : SetOverlayTexelAspect_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTexelAspect_callback SetOverlayTexelAspect; - /** C type : GetOverlayTexelAspect_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTexelAspect_callback GetOverlayTexelAspect; - /** C type : SetOverlaySortOrder_callback* */ - public VR_IVROverlay_FnTable.SetOverlaySortOrder_callback SetOverlaySortOrder; - /** C type : GetOverlaySortOrder_callback* */ - public VR_IVROverlay_FnTable.GetOverlaySortOrder_callback GetOverlaySortOrder; - /** C type : SetOverlayWidthInMeters_callback* */ - public VR_IVROverlay_FnTable.SetOverlayWidthInMeters_callback SetOverlayWidthInMeters; - /** C type : GetOverlayWidthInMeters_callback* */ - public VR_IVROverlay_FnTable.GetOverlayWidthInMeters_callback GetOverlayWidthInMeters; - /** C type : SetOverlayAutoCurveDistanceRangeInMeters_callback* */ - public VR_IVROverlay_FnTable.SetOverlayAutoCurveDistanceRangeInMeters_callback SetOverlayAutoCurveDistanceRangeInMeters; - /** C type : GetOverlayAutoCurveDistanceRangeInMeters_callback* */ - public VR_IVROverlay_FnTable.GetOverlayAutoCurveDistanceRangeInMeters_callback GetOverlayAutoCurveDistanceRangeInMeters; - /** C type : SetOverlayTextureColorSpace_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTextureColorSpace_callback SetOverlayTextureColorSpace; - /** C type : GetOverlayTextureColorSpace_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTextureColorSpace_callback GetOverlayTextureColorSpace; - /** C type : SetOverlayTextureBounds_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTextureBounds_callback SetOverlayTextureBounds; - /** C type : GetOverlayTextureBounds_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTextureBounds_callback GetOverlayTextureBounds; - /** C type : GetOverlayTransformType_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTransformType_callback GetOverlayTransformType; - /** C type : SetOverlayTransformAbsolute_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTransformAbsolute_callback SetOverlayTransformAbsolute; - /** C type : GetOverlayTransformAbsolute_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTransformAbsolute_callback GetOverlayTransformAbsolute; - /** C type : SetOverlayTransformTrackedDeviceRelative_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTransformTrackedDeviceRelative_callback SetOverlayTransformTrackedDeviceRelative; - /** C type : GetOverlayTransformTrackedDeviceRelative_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTransformTrackedDeviceRelative_callback GetOverlayTransformTrackedDeviceRelative; - /** C type : SetOverlayTransformTrackedDeviceComponent_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTransformTrackedDeviceComponent_callback SetOverlayTransformTrackedDeviceComponent; - /** C type : GetOverlayTransformTrackedDeviceComponent_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTransformTrackedDeviceComponent_callback GetOverlayTransformTrackedDeviceComponent; - /** C type : ShowOverlay_callback* */ - public VR_IVROverlay_FnTable.ShowOverlay_callback ShowOverlay; - /** C type : HideOverlay_callback* */ - public VR_IVROverlay_FnTable.HideOverlay_callback HideOverlay; - /** C type : IsOverlayVisible_callback* */ - public VR_IVROverlay_FnTable.IsOverlayVisible_callback IsOverlayVisible; - /** C type : GetTransformForOverlayCoordinates_callback* */ - public VR_IVROverlay_FnTable.GetTransformForOverlayCoordinates_callback GetTransformForOverlayCoordinates; - /** C type : PollNextOverlayEvent_callback* */ - public VR_IVROverlay_FnTable.PollNextOverlayEvent_callback PollNextOverlayEvent; - /** C type : GetOverlayInputMethod_callback* */ - public VR_IVROverlay_FnTable.GetOverlayInputMethod_callback GetOverlayInputMethod; - /** C type : SetOverlayInputMethod_callback* */ - public VR_IVROverlay_FnTable.SetOverlayInputMethod_callback SetOverlayInputMethod; - /** C type : GetOverlayMouseScale_callback* */ - public VR_IVROverlay_FnTable.GetOverlayMouseScale_callback GetOverlayMouseScale; - /** C type : SetOverlayMouseScale_callback* */ - public VR_IVROverlay_FnTable.SetOverlayMouseScale_callback SetOverlayMouseScale; - /** C type : ComputeOverlayIntersection_callback* */ - public VR_IVROverlay_FnTable.ComputeOverlayIntersection_callback ComputeOverlayIntersection; - /** C type : HandleControllerOverlayInteractionAsMouse_callback* */ - public VR_IVROverlay_FnTable.HandleControllerOverlayInteractionAsMouse_callback HandleControllerOverlayInteractionAsMouse; - /** C type : IsHoverTargetOverlay_callback* */ - public VR_IVROverlay_FnTable.IsHoverTargetOverlay_callback IsHoverTargetOverlay; - /** C type : GetGamepadFocusOverlay_callback* */ - public VR_IVROverlay_FnTable.GetGamepadFocusOverlay_callback GetGamepadFocusOverlay; - /** C type : SetGamepadFocusOverlay_callback* */ - public VR_IVROverlay_FnTable.SetGamepadFocusOverlay_callback SetGamepadFocusOverlay; - /** C type : SetOverlayNeighbor_callback* */ - public VR_IVROverlay_FnTable.SetOverlayNeighbor_callback SetOverlayNeighbor; - /** C type : MoveGamepadFocusToNeighbor_callback* */ - public VR_IVROverlay_FnTable.MoveGamepadFocusToNeighbor_callback MoveGamepadFocusToNeighbor; - /** C type : SetOverlayTexture_callback* */ - public VR_IVROverlay_FnTable.SetOverlayTexture_callback SetOverlayTexture; - /** C type : ClearOverlayTexture_callback* */ - public VR_IVROverlay_FnTable.ClearOverlayTexture_callback ClearOverlayTexture; - /** C type : SetOverlayRaw_callback* */ - public VR_IVROverlay_FnTable.SetOverlayRaw_callback SetOverlayRaw; - /** C type : SetOverlayFromFile_callback* */ - public VR_IVROverlay_FnTable.SetOverlayFromFile_callback SetOverlayFromFile; - /** C type : GetOverlayTexture_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTexture_callback GetOverlayTexture; - /** C type : ReleaseNativeOverlayHandle_callback* */ - public VR_IVROverlay_FnTable.ReleaseNativeOverlayHandle_callback ReleaseNativeOverlayHandle; - /** C type : GetOverlayTextureSize_callback* */ - public VR_IVROverlay_FnTable.GetOverlayTextureSize_callback GetOverlayTextureSize; - /** C type : CreateDashboardOverlay_callback* */ - public VR_IVROverlay_FnTable.CreateDashboardOverlay_callback CreateDashboardOverlay; - /** C type : IsDashboardVisible_callback* */ - public VR_IVROverlay_FnTable.IsDashboardVisible_callback IsDashboardVisible; - /** C type : IsActiveDashboardOverlay_callback* */ - public VR_IVROverlay_FnTable.IsActiveDashboardOverlay_callback IsActiveDashboardOverlay; - /** C type : SetDashboardOverlaySceneProcess_callback* */ - public VR_IVROverlay_FnTable.SetDashboardOverlaySceneProcess_callback SetDashboardOverlaySceneProcess; - /** C type : GetDashboardOverlaySceneProcess_callback* */ - public VR_IVROverlay_FnTable.GetDashboardOverlaySceneProcess_callback GetDashboardOverlaySceneProcess; - /** C type : ShowDashboard_callback* */ - public VR_IVROverlay_FnTable.ShowDashboard_callback ShowDashboard; - /** C type : GetPrimaryDashboardDevice_callback* */ - public VR_IVROverlay_FnTable.GetPrimaryDashboardDevice_callback GetPrimaryDashboardDevice; - /** C type : ShowKeyboard_callback* */ - public VR_IVROverlay_FnTable.ShowKeyboard_callback ShowKeyboard; - /** C type : ShowKeyboardForOverlay_callback* */ - public VR_IVROverlay_FnTable.ShowKeyboardForOverlay_callback ShowKeyboardForOverlay; - /** C type : GetKeyboardText_callback* */ - public VR_IVROverlay_FnTable.GetKeyboardText_callback GetKeyboardText; - /** C type : HideKeyboard_callback* */ - public VR_IVROverlay_FnTable.HideKeyboard_callback HideKeyboard; - /** C type : SetKeyboardTransformAbsolute_callback* */ - public VR_IVROverlay_FnTable.SetKeyboardTransformAbsolute_callback SetKeyboardTransformAbsolute; - /** C type : SetKeyboardPositionForOverlay_callback* */ - public VR_IVROverlay_FnTable.SetKeyboardPositionForOverlay_callback SetKeyboardPositionForOverlay; - /** C type : SetOverlayIntersectionMask_callback* */ - public VR_IVROverlay_FnTable.SetOverlayIntersectionMask_callback SetOverlayIntersectionMask; - /** C type : GetOverlayFlags_callback* */ - public VR_IVROverlay_FnTable.GetOverlayFlags_callback GetOverlayFlags; - /** C type : ShowMessageOverlay_callback* */ - public VR_IVROverlay_FnTable.ShowMessageOverlay_callback ShowMessageOverlay; - /** native declaration : headers\openvr_capi.h:1704 */ - public interface FindOverlay_callback extends Callback { - int apply(Pointer pchOverlayKey, LongByReference pOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1705 */ - public interface CreateOverlay_callback extends Callback { - int apply(Pointer pchOverlayKey, Pointer pchOverlayFriendlyName, LongByReference pOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1706 */ - public interface DestroyOverlay_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1707 */ - public interface SetHighQualityOverlay_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1708 */ - public interface GetHighQualityOverlay_callback extends Callback { - long apply(); - }; - /** native declaration : headers\openvr_capi.h:1709 */ - public interface GetOverlayKey_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pchValue, int unBufferSize, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1710 */ - public interface GetOverlayName_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pchValue, int unBufferSize, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1711 */ - public interface GetOverlayImageData_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pvBuffer, int unBufferSize, IntByReference punWidth, IntByReference punHeight); - }; - /** native declaration : headers\openvr_capi.h:1712 */ - public interface GetOverlayErrorNameFromEnum_callback extends Callback { - Pointer apply(int error); - }; - /** native declaration : headers\openvr_capi.h:1713 */ - public interface SetOverlayRenderingPid_callback extends Callback { - int apply(long ulOverlayHandle, int unPID); - }; - /** native declaration : headers\openvr_capi.h:1714 */ - public interface GetOverlayRenderingPid_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1715 */ - public interface SetOverlayFlag_callback extends Callback { - int apply(long ulOverlayHandle, int eOverlayFlag, byte bEnabled); - }; - /** native declaration : headers\openvr_capi.h:1716 */ - public interface GetOverlayFlag_callback extends Callback { - int apply(long ulOverlayHandle, int eOverlayFlag, Pointer pbEnabled); - }; - /** native declaration : headers\openvr_capi.h:1717 */ - public interface SetOverlayColor_callback extends Callback { - int apply(long ulOverlayHandle, float fRed, float fGreen, float fBlue); - }; - /** native declaration : headers\openvr_capi.h:1718 */ - public interface GetOverlayColor_callback extends Callback { - int apply(long ulOverlayHandle, FloatByReference pfRed, FloatByReference pfGreen, FloatByReference pfBlue); - }; - /** native declaration : headers\openvr_capi.h:1719 */ - public interface SetOverlayAlpha_callback extends Callback { - int apply(long ulOverlayHandle, float fAlpha); - }; - /** native declaration : headers\openvr_capi.h:1720 */ - public interface GetOverlayAlpha_callback extends Callback { - int apply(long ulOverlayHandle, FloatByReference pfAlpha); - }; - /** native declaration : headers\openvr_capi.h:1721 */ - public interface SetOverlayTexelAspect_callback extends Callback { - int apply(long ulOverlayHandle, float fTexelAspect); - }; - /** native declaration : headers\openvr_capi.h:1722 */ - public interface GetOverlayTexelAspect_callback extends Callback { - int apply(long ulOverlayHandle, FloatByReference pfTexelAspect); - }; - /** native declaration : headers\openvr_capi.h:1723 */ - public interface SetOverlaySortOrder_callback extends Callback { - int apply(long ulOverlayHandle, int unSortOrder); - }; - /** native declaration : headers\openvr_capi.h:1724 */ - public interface GetOverlaySortOrder_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference punSortOrder); - }; - /** native declaration : headers\openvr_capi.h:1725 */ - public interface SetOverlayWidthInMeters_callback extends Callback { - int apply(long ulOverlayHandle, float fWidthInMeters); - }; - /** native declaration : headers\openvr_capi.h:1726 */ - public interface GetOverlayWidthInMeters_callback extends Callback { - int apply(long ulOverlayHandle, FloatByReference pfWidthInMeters); - }; - /** native declaration : headers\openvr_capi.h:1727 */ - public interface SetOverlayAutoCurveDistanceRangeInMeters_callback extends Callback { - int apply(long ulOverlayHandle, float fMinDistanceInMeters, float fMaxDistanceInMeters); - }; - /** native declaration : headers\openvr_capi.h:1728 */ - public interface GetOverlayAutoCurveDistanceRangeInMeters_callback extends Callback { - int apply(long ulOverlayHandle, FloatByReference pfMinDistanceInMeters, FloatByReference pfMaxDistanceInMeters); - }; - /** native declaration : headers\openvr_capi.h:1729 */ - public interface SetOverlayTextureColorSpace_callback extends Callback { - int apply(long ulOverlayHandle, int eTextureColorSpace); - }; - /** native declaration : headers\openvr_capi.h:1730 */ - public interface GetOverlayTextureColorSpace_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference peTextureColorSpace); - }; - /** native declaration : headers\openvr_capi.h:1731 */ - public interface SetOverlayTextureBounds_callback extends Callback { - int apply(long ulOverlayHandle, VRTextureBounds_t pOverlayTextureBounds); - }; - /** native declaration : headers\openvr_capi.h:1732 */ - public interface GetOverlayTextureBounds_callback extends Callback { - int apply(long ulOverlayHandle, VRTextureBounds_t pOverlayTextureBounds); - }; - /** native declaration : headers\openvr_capi.h:1733 */ - public interface GetOverlayTransformType_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference peTransformType); - }; - /** native declaration : headers\openvr_capi.h:1734 */ - public interface SetOverlayTransformAbsolute_callback extends Callback { - int apply(long ulOverlayHandle, int eTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToOverlayTransform); - }; - /** native declaration : headers\openvr_capi.h:1735 */ - public interface GetOverlayTransformAbsolute_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference peTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToOverlayTransform); - }; - /** native declaration : headers\openvr_capi.h:1736 */ - public interface SetOverlayTransformTrackedDeviceRelative_callback extends Callback { - int apply(long ulOverlayHandle, int unTrackedDevice, HmdMatrix34_t pmatTrackedDeviceToOverlayTransform); - }; - /** native declaration : headers\openvr_capi.h:1737 */ - public interface GetOverlayTransformTrackedDeviceRelative_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference punTrackedDevice, HmdMatrix34_t pmatTrackedDeviceToOverlayTransform); - }; - /** native declaration : headers\openvr_capi.h:1738 */ - public interface SetOverlayTransformTrackedDeviceComponent_callback extends Callback { - int apply(long ulOverlayHandle, int unDeviceIndex, Pointer pchComponentName); - }; - /** native declaration : headers\openvr_capi.h:1739 */ - public interface GetOverlayTransformTrackedDeviceComponent_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference punDeviceIndex, Pointer pchComponentName, int unComponentNameSize); - }; - /** native declaration : headers\openvr_capi.h:1740 */ - public interface ShowOverlay_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1741 */ - public interface HideOverlay_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1742 */ - public interface IsOverlayVisible_callback extends Callback { - byte apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1743 */ - public interface GetTransformForOverlayCoordinates_callback extends Callback { - int apply(long ulOverlayHandle, int eTrackingOrigin, HmdVector2_t.ByValue coordinatesInOverlay, HmdMatrix34_t pmatTransform); - }; - /** native declaration : headers\openvr_capi.h:1744 */ - public interface PollNextOverlayEvent_callback extends Callback { - byte apply(long ulOverlayHandle, VREvent_t pEvent, int uncbVREvent); - }; - /** native declaration : headers\openvr_capi.h:1745 */ - public interface GetOverlayInputMethod_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference peInputMethod); - }; - /** native declaration : headers\openvr_capi.h:1746 */ - public interface SetOverlayInputMethod_callback extends Callback { - int apply(long ulOverlayHandle, int eInputMethod); - }; - /** native declaration : headers\openvr_capi.h:1747 */ - public interface GetOverlayMouseScale_callback extends Callback { - int apply(long ulOverlayHandle, HmdVector2_t pvecMouseScale); - }; - /** native declaration : headers\openvr_capi.h:1748 */ - public interface SetOverlayMouseScale_callback extends Callback { - int apply(long ulOverlayHandle, HmdVector2_t pvecMouseScale); - }; - /** native declaration : headers\openvr_capi.h:1749 */ - public interface ComputeOverlayIntersection_callback extends Callback { - byte apply(long ulOverlayHandle, VROverlayIntersectionParams_t pParams, VROverlayIntersectionResults_t pResults); - }; - /** native declaration : headers\openvr_capi.h:1750 */ - public interface HandleControllerOverlayInteractionAsMouse_callback extends Callback { - byte apply(long ulOverlayHandle, int unControllerDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1751 */ - public interface IsHoverTargetOverlay_callback extends Callback { - byte apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1752 */ - public interface GetGamepadFocusOverlay_callback extends Callback { - long apply(); - }; - /** native declaration : headers\openvr_capi.h:1753 */ - public interface SetGamepadFocusOverlay_callback extends Callback { - int apply(long ulNewFocusOverlay); - }; - /** native declaration : headers\openvr_capi.h:1754 */ - public interface SetOverlayNeighbor_callback extends Callback { - int apply(int eDirection, long ulFrom, long ulTo); - }; - /** native declaration : headers\openvr_capi.h:1755 */ - public interface MoveGamepadFocusToNeighbor_callback extends Callback { - int apply(int eDirection, long ulFrom); - }; - /** native declaration : headers\openvr_capi.h:1756 */ - public interface SetOverlayTexture_callback extends Callback { - int apply(long ulOverlayHandle, Texture_t pTexture); - }; - /** native declaration : headers\openvr_capi.h:1757 */ - public interface ClearOverlayTexture_callback extends Callback { - int apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1758 */ - public interface SetOverlayRaw_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pvBuffer, int unWidth, int unHeight, int unDepth); - }; - /** native declaration : headers\openvr_capi.h:1759 */ - public interface SetOverlayFromFile_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pchFilePath); - }; - /** native declaration : headers\openvr_capi.h:1760 */ - public interface GetOverlayTexture_callback extends Callback { - int apply(long ulOverlayHandle, PointerByReference pNativeTextureHandle, Pointer pNativeTextureRef, IntByReference pWidth, IntByReference pHeight, IntByReference pNativeFormat, IntByReference pAPIType, IntByReference pColorSpace, VRTextureBounds_t pTextureBounds); - }; - /** native declaration : headers\openvr_capi.h:1761 */ - public interface ReleaseNativeOverlayHandle_callback extends Callback { - int apply(long ulOverlayHandle, Pointer pNativeTextureHandle); - }; - /** native declaration : headers\openvr_capi.h:1762 */ - public interface GetOverlayTextureSize_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference pWidth, IntByReference pHeight); - }; - /** native declaration : headers\openvr_capi.h:1763 */ - public interface CreateDashboardOverlay_callback extends Callback { - int apply(Pointer pchOverlayKey, Pointer pchOverlayFriendlyName, LongByReference pMainHandle, LongByReference pThumbnailHandle); - }; - /** native declaration : headers\openvr_capi.h:1764 */ - public interface IsDashboardVisible_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1765 */ - public interface IsActiveDashboardOverlay_callback extends Callback { - byte apply(long ulOverlayHandle); - }; - /** native declaration : headers\openvr_capi.h:1766 */ - public interface SetDashboardOverlaySceneProcess_callback extends Callback { - int apply(long ulOverlayHandle, int unProcessId); - }; - /** native declaration : headers\openvr_capi.h:1767 */ - public interface GetDashboardOverlaySceneProcess_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference punProcessId); - }; - /** native declaration : headers\openvr_capi.h:1768 */ - public interface ShowDashboard_callback extends Callback { - void apply(Pointer pchOverlayToShow); - }; - /** native declaration : headers\openvr_capi.h:1769 */ - public interface GetPrimaryDashboardDevice_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1770 */ - public interface ShowKeyboard_callback extends Callback { - int apply(int eInputMode, int eLineInputMode, Pointer pchDescription, int unCharMax, Pointer pchExistingText, byte bUseMinimalMode, long uUserValue); - }; - /** native declaration : headers\openvr_capi.h:1771 */ - public interface ShowKeyboardForOverlay_callback extends Callback { - int apply(long ulOverlayHandle, int eInputMode, int eLineInputMode, Pointer pchDescription, int unCharMax, Pointer pchExistingText, byte bUseMinimalMode, long uUserValue); - }; - /** native declaration : headers\openvr_capi.h:1772 */ - public interface GetKeyboardText_callback extends Callback { - int apply(Pointer pchText, int cchText); - }; - /** native declaration : headers\openvr_capi.h:1773 */ - public interface HideKeyboard_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1774 */ - public interface SetKeyboardTransformAbsolute_callback extends Callback { - void apply(int eTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToKeyboardTransform); - }; - /** native declaration : headers\openvr_capi.h:1775 */ - public interface SetKeyboardPositionForOverlay_callback extends Callback { - void apply(long ulOverlayHandle, com.jme3.system.jopenvr.HmdRect2_t.ByValue avoidRect); - }; - /** native declaration : headers\openvr_capi.h:1776 */ - public interface SetOverlayIntersectionMask_callback extends Callback { - int apply(long ulOverlayHandle, VROverlayIntersectionMaskPrimitive_t pMaskPrimitives, int unNumMaskPrimitives, int unPrimitiveSize); - }; - /** native declaration : headers\openvr_capi.h:1777 */ - public interface GetOverlayFlags_callback extends Callback { - int apply(long ulOverlayHandle, IntByReference pFlags); - }; - /** native declaration : headers\openvr_capi.h:1778 */ - public interface ShowMessageOverlay_callback extends Callback { - int apply(Pointer pchText, Pointer pchCaption, Pointer pchButton0Text, Pointer pchButton1Text, Pointer pchButton2Text, Pointer pchButton3Text); - }; - public VR_IVROverlay_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("FindOverlay", "CreateOverlay", "DestroyOverlay", "SetHighQualityOverlay", "GetHighQualityOverlay", "GetOverlayKey", "GetOverlayName", "GetOverlayImageData", "GetOverlayErrorNameFromEnum", "SetOverlayRenderingPid", "GetOverlayRenderingPid", "SetOverlayFlag", "GetOverlayFlag", "SetOverlayColor", "GetOverlayColor", "SetOverlayAlpha", "GetOverlayAlpha", "SetOverlayTexelAspect", "GetOverlayTexelAspect", "SetOverlaySortOrder", "GetOverlaySortOrder", "SetOverlayWidthInMeters", "GetOverlayWidthInMeters", "SetOverlayAutoCurveDistanceRangeInMeters", "GetOverlayAutoCurveDistanceRangeInMeters", "SetOverlayTextureColorSpace", "GetOverlayTextureColorSpace", "SetOverlayTextureBounds", "GetOverlayTextureBounds", "GetOverlayTransformType", "SetOverlayTransformAbsolute", "GetOverlayTransformAbsolute", "SetOverlayTransformTrackedDeviceRelative", "GetOverlayTransformTrackedDeviceRelative", "SetOverlayTransformTrackedDeviceComponent", "GetOverlayTransformTrackedDeviceComponent", "ShowOverlay", "HideOverlay", "IsOverlayVisible", "GetTransformForOverlayCoordinates", "PollNextOverlayEvent", "GetOverlayInputMethod", "SetOverlayInputMethod", "GetOverlayMouseScale", "SetOverlayMouseScale", "ComputeOverlayIntersection", "HandleControllerOverlayInteractionAsMouse", "IsHoverTargetOverlay", "GetGamepadFocusOverlay", "SetGamepadFocusOverlay", "SetOverlayNeighbor", "MoveGamepadFocusToNeighbor", "SetOverlayTexture", "ClearOverlayTexture", "SetOverlayRaw", "SetOverlayFromFile", "GetOverlayTexture", "ReleaseNativeOverlayHandle", "GetOverlayTextureSize", "CreateDashboardOverlay", "IsDashboardVisible", "IsActiveDashboardOverlay", "SetDashboardOverlaySceneProcess", "GetDashboardOverlaySceneProcess", "ShowDashboard", "GetPrimaryDashboardDevice", "ShowKeyboard", "ShowKeyboardForOverlay", "GetKeyboardText", "HideKeyboard", "SetKeyboardTransformAbsolute", "SetKeyboardPositionForOverlay", "SetOverlayIntersectionMask", "GetOverlayFlags", "ShowMessageOverlay"); - } - public VR_IVROverlay_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVROverlay_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVROverlay_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1820
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVROverlay_FnTable extends Structure { + /** C type : FindOverlay_callback* */ + public VR_IVROverlay_FnTable.FindOverlay_callback FindOverlay; + /** C type : CreateOverlay_callback* */ + public VR_IVROverlay_FnTable.CreateOverlay_callback CreateOverlay; + /** C type : DestroyOverlay_callback* */ + public VR_IVROverlay_FnTable.DestroyOverlay_callback DestroyOverlay; + /** C type : SetHighQualityOverlay_callback* */ + public VR_IVROverlay_FnTable.SetHighQualityOverlay_callback SetHighQualityOverlay; + /** C type : GetHighQualityOverlay_callback* */ + public VR_IVROverlay_FnTable.GetHighQualityOverlay_callback GetHighQualityOverlay; + /** C type : GetOverlayKey_callback* */ + public VR_IVROverlay_FnTable.GetOverlayKey_callback GetOverlayKey; + /** C type : GetOverlayName_callback* */ + public VR_IVROverlay_FnTable.GetOverlayName_callback GetOverlayName; + /** C type : SetOverlayName_callback* */ + public VR_IVROverlay_FnTable.SetOverlayName_callback SetOverlayName; + /** C type : GetOverlayImageData_callback* */ + public VR_IVROverlay_FnTable.GetOverlayImageData_callback GetOverlayImageData; + /** C type : GetOverlayErrorNameFromEnum_callback* */ + public VR_IVROverlay_FnTable.GetOverlayErrorNameFromEnum_callback GetOverlayErrorNameFromEnum; + /** C type : SetOverlayRenderingPid_callback* */ + public VR_IVROverlay_FnTable.SetOverlayRenderingPid_callback SetOverlayRenderingPid; + /** C type : GetOverlayRenderingPid_callback* */ + public VR_IVROverlay_FnTable.GetOverlayRenderingPid_callback GetOverlayRenderingPid; + /** C type : SetOverlayFlag_callback* */ + public VR_IVROverlay_FnTable.SetOverlayFlag_callback SetOverlayFlag; + /** C type : GetOverlayFlag_callback* */ + public VR_IVROverlay_FnTable.GetOverlayFlag_callback GetOverlayFlag; + /** C type : SetOverlayColor_callback* */ + public VR_IVROverlay_FnTable.SetOverlayColor_callback SetOverlayColor; + /** C type : GetOverlayColor_callback* */ + public VR_IVROverlay_FnTable.GetOverlayColor_callback GetOverlayColor; + /** C type : SetOverlayAlpha_callback* */ + public VR_IVROverlay_FnTable.SetOverlayAlpha_callback SetOverlayAlpha; + /** C type : GetOverlayAlpha_callback* */ + public VR_IVROverlay_FnTable.GetOverlayAlpha_callback GetOverlayAlpha; + /** C type : SetOverlayTexelAspect_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTexelAspect_callback SetOverlayTexelAspect; + /** C type : GetOverlayTexelAspect_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTexelAspect_callback GetOverlayTexelAspect; + /** C type : SetOverlaySortOrder_callback* */ + public VR_IVROverlay_FnTable.SetOverlaySortOrder_callback SetOverlaySortOrder; + /** C type : GetOverlaySortOrder_callback* */ + public VR_IVROverlay_FnTable.GetOverlaySortOrder_callback GetOverlaySortOrder; + /** C type : SetOverlayWidthInMeters_callback* */ + public VR_IVROverlay_FnTable.SetOverlayWidthInMeters_callback SetOverlayWidthInMeters; + /** C type : GetOverlayWidthInMeters_callback* */ + public VR_IVROverlay_FnTable.GetOverlayWidthInMeters_callback GetOverlayWidthInMeters; + /** C type : SetOverlayAutoCurveDistanceRangeInMeters_callback* */ + public VR_IVROverlay_FnTable.SetOverlayAutoCurveDistanceRangeInMeters_callback SetOverlayAutoCurveDistanceRangeInMeters; + /** C type : GetOverlayAutoCurveDistanceRangeInMeters_callback* */ + public VR_IVROverlay_FnTable.GetOverlayAutoCurveDistanceRangeInMeters_callback GetOverlayAutoCurveDistanceRangeInMeters; + /** C type : SetOverlayTextureColorSpace_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTextureColorSpace_callback SetOverlayTextureColorSpace; + /** C type : GetOverlayTextureColorSpace_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTextureColorSpace_callback GetOverlayTextureColorSpace; + /** C type : SetOverlayTextureBounds_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTextureBounds_callback SetOverlayTextureBounds; + /** C type : GetOverlayTextureBounds_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTextureBounds_callback GetOverlayTextureBounds; + /** C type : GetOverlayRenderModel_callback* */ + public VR_IVROverlay_FnTable.GetOverlayRenderModel_callback GetOverlayRenderModel; + /** C type : SetOverlayRenderModel_callback* */ + public VR_IVROverlay_FnTable.SetOverlayRenderModel_callback SetOverlayRenderModel; + /** C type : GetOverlayTransformType_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTransformType_callback GetOverlayTransformType; + /** C type : SetOverlayTransformAbsolute_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTransformAbsolute_callback SetOverlayTransformAbsolute; + /** C type : GetOverlayTransformAbsolute_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTransformAbsolute_callback GetOverlayTransformAbsolute; + /** C type : SetOverlayTransformTrackedDeviceRelative_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTransformTrackedDeviceRelative_callback SetOverlayTransformTrackedDeviceRelative; + /** C type : GetOverlayTransformTrackedDeviceRelative_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTransformTrackedDeviceRelative_callback GetOverlayTransformTrackedDeviceRelative; + /** C type : SetOverlayTransformTrackedDeviceComponent_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTransformTrackedDeviceComponent_callback SetOverlayTransformTrackedDeviceComponent; + /** C type : GetOverlayTransformTrackedDeviceComponent_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTransformTrackedDeviceComponent_callback GetOverlayTransformTrackedDeviceComponent; + /** C type : GetOverlayTransformOverlayRelative_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTransformOverlayRelative_callback GetOverlayTransformOverlayRelative; + /** C type : SetOverlayTransformOverlayRelative_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTransformOverlayRelative_callback SetOverlayTransformOverlayRelative; + /** C type : ShowOverlay_callback* */ + public VR_IVROverlay_FnTable.ShowOverlay_callback ShowOverlay; + /** C type : HideOverlay_callback* */ + public VR_IVROverlay_FnTable.HideOverlay_callback HideOverlay; + /** C type : IsOverlayVisible_callback* */ + public VR_IVROverlay_FnTable.IsOverlayVisible_callback IsOverlayVisible; + /** C type : GetTransformForOverlayCoordinates_callback* */ + public VR_IVROverlay_FnTable.GetTransformForOverlayCoordinates_callback GetTransformForOverlayCoordinates; + /** C type : PollNextOverlayEvent_callback* */ + public VR_IVROverlay_FnTable.PollNextOverlayEvent_callback PollNextOverlayEvent; + /** C type : GetOverlayInputMethod_callback* */ + public VR_IVROverlay_FnTable.GetOverlayInputMethod_callback GetOverlayInputMethod; + /** C type : SetOverlayInputMethod_callback* */ + public VR_IVROverlay_FnTable.SetOverlayInputMethod_callback SetOverlayInputMethod; + /** C type : GetOverlayMouseScale_callback* */ + public VR_IVROverlay_FnTable.GetOverlayMouseScale_callback GetOverlayMouseScale; + /** C type : SetOverlayMouseScale_callback* */ + public VR_IVROverlay_FnTable.SetOverlayMouseScale_callback SetOverlayMouseScale; + /** C type : ComputeOverlayIntersection_callback* */ + public VR_IVROverlay_FnTable.ComputeOverlayIntersection_callback ComputeOverlayIntersection; + /** C type : HandleControllerOverlayInteractionAsMouse_callback* */ + public VR_IVROverlay_FnTable.HandleControllerOverlayInteractionAsMouse_callback HandleControllerOverlayInteractionAsMouse; + /** C type : IsHoverTargetOverlay_callback* */ + public VR_IVROverlay_FnTable.IsHoverTargetOverlay_callback IsHoverTargetOverlay; + /** C type : GetGamepadFocusOverlay_callback* */ + public VR_IVROverlay_FnTable.GetGamepadFocusOverlay_callback GetGamepadFocusOverlay; + /** C type : SetGamepadFocusOverlay_callback* */ + public VR_IVROverlay_FnTable.SetGamepadFocusOverlay_callback SetGamepadFocusOverlay; + /** C type : SetOverlayNeighbor_callback* */ + public VR_IVROverlay_FnTable.SetOverlayNeighbor_callback SetOverlayNeighbor; + /** C type : MoveGamepadFocusToNeighbor_callback* */ + public VR_IVROverlay_FnTable.MoveGamepadFocusToNeighbor_callback MoveGamepadFocusToNeighbor; + /** C type : SetOverlayTexture_callback* */ + public VR_IVROverlay_FnTable.SetOverlayTexture_callback SetOverlayTexture; + /** C type : ClearOverlayTexture_callback* */ + public VR_IVROverlay_FnTable.ClearOverlayTexture_callback ClearOverlayTexture; + /** C type : SetOverlayRaw_callback* */ + public VR_IVROverlay_FnTable.SetOverlayRaw_callback SetOverlayRaw; + /** C type : SetOverlayFromFile_callback* */ + public VR_IVROverlay_FnTable.SetOverlayFromFile_callback SetOverlayFromFile; + /** C type : GetOverlayTexture_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTexture_callback GetOverlayTexture; + /** C type : ReleaseNativeOverlayHandle_callback* */ + public VR_IVROverlay_FnTable.ReleaseNativeOverlayHandle_callback ReleaseNativeOverlayHandle; + /** C type : GetOverlayTextureSize_callback* */ + public VR_IVROverlay_FnTable.GetOverlayTextureSize_callback GetOverlayTextureSize; + /** C type : CreateDashboardOverlay_callback* */ + public VR_IVROverlay_FnTable.CreateDashboardOverlay_callback CreateDashboardOverlay; + /** C type : IsDashboardVisible_callback* */ + public VR_IVROverlay_FnTable.IsDashboardVisible_callback IsDashboardVisible; + /** C type : IsActiveDashboardOverlay_callback* */ + public VR_IVROverlay_FnTable.IsActiveDashboardOverlay_callback IsActiveDashboardOverlay; + /** C type : SetDashboardOverlaySceneProcess_callback* */ + public VR_IVROverlay_FnTable.SetDashboardOverlaySceneProcess_callback SetDashboardOverlaySceneProcess; + /** C type : GetDashboardOverlaySceneProcess_callback* */ + public VR_IVROverlay_FnTable.GetDashboardOverlaySceneProcess_callback GetDashboardOverlaySceneProcess; + /** C type : ShowDashboard_callback* */ + public VR_IVROverlay_FnTable.ShowDashboard_callback ShowDashboard; + /** C type : GetPrimaryDashboardDevice_callback* */ + public VR_IVROverlay_FnTable.GetPrimaryDashboardDevice_callback GetPrimaryDashboardDevice; + /** C type : ShowKeyboard_callback* */ + public VR_IVROverlay_FnTable.ShowKeyboard_callback ShowKeyboard; + /** C type : ShowKeyboardForOverlay_callback* */ + public VR_IVROverlay_FnTable.ShowKeyboardForOverlay_callback ShowKeyboardForOverlay; + /** C type : GetKeyboardText_callback* */ + public VR_IVROverlay_FnTable.GetKeyboardText_callback GetKeyboardText; + /** C type : HideKeyboard_callback* */ + public VR_IVROverlay_FnTable.HideKeyboard_callback HideKeyboard; + /** C type : SetKeyboardTransformAbsolute_callback* */ + public VR_IVROverlay_FnTable.SetKeyboardTransformAbsolute_callback SetKeyboardTransformAbsolute; + /** C type : SetKeyboardPositionForOverlay_callback* */ + public VR_IVROverlay_FnTable.SetKeyboardPositionForOverlay_callback SetKeyboardPositionForOverlay; + /** C type : SetOverlayIntersectionMask_callback* */ + public VR_IVROverlay_FnTable.SetOverlayIntersectionMask_callback SetOverlayIntersectionMask; + /** C type : GetOverlayFlags_callback* */ + public VR_IVROverlay_FnTable.GetOverlayFlags_callback GetOverlayFlags; + /** C type : ShowMessageOverlay_callback* */ + public VR_IVROverlay_FnTable.ShowMessageOverlay_callback ShowMessageOverlay; + /** native declaration : headers\openvr_capi.h:1740 */ + public interface FindOverlay_callback extends Callback { + int apply(Pointer pchOverlayKey, LongByReference pOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1741 */ + public interface CreateOverlay_callback extends Callback { + int apply(Pointer pchOverlayKey, Pointer pchOverlayName, LongByReference pOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1742 */ + public interface DestroyOverlay_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1743 */ + public interface SetHighQualityOverlay_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1744 */ + public interface GetHighQualityOverlay_callback extends Callback { + long apply(); + }; + /** native declaration : headers\openvr_capi.h:1745 */ + public interface GetOverlayKey_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchValue, int unBufferSize, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1746 */ + public interface GetOverlayName_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchValue, int unBufferSize, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1747 */ + public interface SetOverlayName_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchName); + }; + /** native declaration : headers\openvr_capi.h:1748 */ + public interface GetOverlayImageData_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pvBuffer, int unBufferSize, IntByReference punWidth, IntByReference punHeight); + }; + /** native declaration : headers\openvr_capi.h:1749 */ + public interface GetOverlayErrorNameFromEnum_callback extends Callback { + Pointer apply(int error); + }; + /** native declaration : headers\openvr_capi.h:1750 */ + public interface SetOverlayRenderingPid_callback extends Callback { + int apply(long ulOverlayHandle, int unPID); + }; + /** native declaration : headers\openvr_capi.h:1751 */ + public interface GetOverlayRenderingPid_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1752 */ + public interface SetOverlayFlag_callback extends Callback { + int apply(long ulOverlayHandle, int eOverlayFlag, byte bEnabled); + }; + /** native declaration : headers\openvr_capi.h:1753 */ + public interface GetOverlayFlag_callback extends Callback { + int apply(long ulOverlayHandle, int eOverlayFlag, Pointer pbEnabled); + }; + /** native declaration : headers\openvr_capi.h:1754 */ + public interface SetOverlayColor_callback extends Callback { + int apply(long ulOverlayHandle, float fRed, float fGreen, float fBlue); + }; + /** native declaration : headers\openvr_capi.h:1755 */ + public interface GetOverlayColor_callback extends Callback { + int apply(long ulOverlayHandle, FloatByReference pfRed, FloatByReference pfGreen, FloatByReference pfBlue); + }; + /** native declaration : headers\openvr_capi.h:1756 */ + public interface SetOverlayAlpha_callback extends Callback { + int apply(long ulOverlayHandle, float fAlpha); + }; + /** native declaration : headers\openvr_capi.h:1757 */ + public interface GetOverlayAlpha_callback extends Callback { + int apply(long ulOverlayHandle, FloatByReference pfAlpha); + }; + /** native declaration : headers\openvr_capi.h:1758 */ + public interface SetOverlayTexelAspect_callback extends Callback { + int apply(long ulOverlayHandle, float fTexelAspect); + }; + /** native declaration : headers\openvr_capi.h:1759 */ + public interface GetOverlayTexelAspect_callback extends Callback { + int apply(long ulOverlayHandle, FloatByReference pfTexelAspect); + }; + /** native declaration : headers\openvr_capi.h:1760 */ + public interface SetOverlaySortOrder_callback extends Callback { + int apply(long ulOverlayHandle, int unSortOrder); + }; + /** native declaration : headers\openvr_capi.h:1761 */ + public interface GetOverlaySortOrder_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference punSortOrder); + }; + /** native declaration : headers\openvr_capi.h:1762 */ + public interface SetOverlayWidthInMeters_callback extends Callback { + int apply(long ulOverlayHandle, float fWidthInMeters); + }; + /** native declaration : headers\openvr_capi.h:1763 */ + public interface GetOverlayWidthInMeters_callback extends Callback { + int apply(long ulOverlayHandle, FloatByReference pfWidthInMeters); + }; + /** native declaration : headers\openvr_capi.h:1764 */ + public interface SetOverlayAutoCurveDistanceRangeInMeters_callback extends Callback { + int apply(long ulOverlayHandle, float fMinDistanceInMeters, float fMaxDistanceInMeters); + }; + /** native declaration : headers\openvr_capi.h:1765 */ + public interface GetOverlayAutoCurveDistanceRangeInMeters_callback extends Callback { + int apply(long ulOverlayHandle, FloatByReference pfMinDistanceInMeters, FloatByReference pfMaxDistanceInMeters); + }; + /** native declaration : headers\openvr_capi.h:1766 */ + public interface SetOverlayTextureColorSpace_callback extends Callback { + int apply(long ulOverlayHandle, int eTextureColorSpace); + }; + /** native declaration : headers\openvr_capi.h:1767 */ + public interface GetOverlayTextureColorSpace_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference peTextureColorSpace); + }; + /** native declaration : headers\openvr_capi.h:1768 */ + public interface SetOverlayTextureBounds_callback extends Callback { + int apply(long ulOverlayHandle, VRTextureBounds_t pOverlayTextureBounds); + }; + /** native declaration : headers\openvr_capi.h:1769 */ + public interface GetOverlayTextureBounds_callback extends Callback { + int apply(long ulOverlayHandle, VRTextureBounds_t pOverlayTextureBounds); + }; + /** native declaration : headers\openvr_capi.h:1770 */ + public interface GetOverlayRenderModel_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchValue, int unBufferSize, HmdColor_t pColor, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1771 */ + public interface SetOverlayRenderModel_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchRenderModel, HmdColor_t pColor); + }; + /** native declaration : headers\openvr_capi.h:1772 */ + public interface GetOverlayTransformType_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference peTransformType); + }; + /** native declaration : headers\openvr_capi.h:1773 */ + public interface SetOverlayTransformAbsolute_callback extends Callback { + int apply(long ulOverlayHandle, int eTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1774 */ + public interface GetOverlayTransformAbsolute_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference peTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1775 */ + public interface SetOverlayTransformTrackedDeviceRelative_callback extends Callback { + int apply(long ulOverlayHandle, int unTrackedDevice, HmdMatrix34_t pmatTrackedDeviceToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1776 */ + public interface GetOverlayTransformTrackedDeviceRelative_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference punTrackedDevice, HmdMatrix34_t pmatTrackedDeviceToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1777 */ + public interface SetOverlayTransformTrackedDeviceComponent_callback extends Callback { + int apply(long ulOverlayHandle, int unDeviceIndex, Pointer pchComponentName); + }; + /** native declaration : headers\openvr_capi.h:1778 */ + public interface GetOverlayTransformTrackedDeviceComponent_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference punDeviceIndex, Pointer pchComponentName, int unComponentNameSize); + }; + /** native declaration : headers\openvr_capi.h:1779 */ + public interface GetOverlayTransformOverlayRelative_callback extends Callback { + int apply(long ulOverlayHandle, LongByReference ulOverlayHandleParent, HmdMatrix34_t pmatParentOverlayToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1780 */ + public interface SetOverlayTransformOverlayRelative_callback extends Callback { + int apply(long ulOverlayHandle, long ulOverlayHandleParent, HmdMatrix34_t pmatParentOverlayToOverlayTransform); + }; + /** native declaration : headers\openvr_capi.h:1781 */ + public interface ShowOverlay_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1782 */ + public interface HideOverlay_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1783 */ + public interface IsOverlayVisible_callback extends Callback { + byte apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1784 */ + public interface GetTransformForOverlayCoordinates_callback extends Callback { + int apply(long ulOverlayHandle, int eTrackingOrigin, HmdVector2_t.ByValue coordinatesInOverlay, HmdMatrix34_t pmatTransform); + }; + /** native declaration : headers\openvr_capi.h:1785 */ + public interface PollNextOverlayEvent_callback extends Callback { + byte apply(long ulOverlayHandle, VREvent_t pEvent, int uncbVREvent); + }; + /** native declaration : headers\openvr_capi.h:1786 */ + public interface GetOverlayInputMethod_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference peInputMethod); + }; + /** native declaration : headers\openvr_capi.h:1787 */ + public interface SetOverlayInputMethod_callback extends Callback { + int apply(long ulOverlayHandle, int eInputMethod); + }; + /** native declaration : headers\openvr_capi.h:1788 */ + public interface GetOverlayMouseScale_callback extends Callback { + int apply(long ulOverlayHandle, HmdVector2_t pvecMouseScale); + }; + /** native declaration : headers\openvr_capi.h:1789 */ + public interface SetOverlayMouseScale_callback extends Callback { + int apply(long ulOverlayHandle, HmdVector2_t pvecMouseScale); + }; + /** native declaration : headers\openvr_capi.h:1790 */ + public interface ComputeOverlayIntersection_callback extends Callback { + byte apply(long ulOverlayHandle, VROverlayIntersectionParams_t pParams, VROverlayIntersectionResults_t pResults); + }; + /** native declaration : headers\openvr_capi.h:1791 */ + public interface HandleControllerOverlayInteractionAsMouse_callback extends Callback { + byte apply(long ulOverlayHandle, int unControllerDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1792 */ + public interface IsHoverTargetOverlay_callback extends Callback { + byte apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1793 */ + public interface GetGamepadFocusOverlay_callback extends Callback { + long apply(); + }; + /** native declaration : headers\openvr_capi.h:1794 */ + public interface SetGamepadFocusOverlay_callback extends Callback { + int apply(long ulNewFocusOverlay); + }; + /** native declaration : headers\openvr_capi.h:1795 */ + public interface SetOverlayNeighbor_callback extends Callback { + int apply(int eDirection, long ulFrom, long ulTo); + }; + /** native declaration : headers\openvr_capi.h:1796 */ + public interface MoveGamepadFocusToNeighbor_callback extends Callback { + int apply(int eDirection, long ulFrom); + }; + /** native declaration : headers\openvr_capi.h:1797 */ + public interface SetOverlayTexture_callback extends Callback { + int apply(long ulOverlayHandle, Texture_t pTexture); + }; + /** native declaration : headers\openvr_capi.h:1798 */ + public interface ClearOverlayTexture_callback extends Callback { + int apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1799 */ + public interface SetOverlayRaw_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pvBuffer, int unWidth, int unHeight, int unDepth); + }; + /** native declaration : headers\openvr_capi.h:1800 */ + public interface SetOverlayFromFile_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pchFilePath); + }; + /** native declaration : headers\openvr_capi.h:1801 */ + public interface GetOverlayTexture_callback extends Callback { + int apply(long ulOverlayHandle, PointerByReference pNativeTextureHandle, Pointer pNativeTextureRef, IntByReference pWidth, IntByReference pHeight, IntByReference pNativeFormat, IntByReference pAPIType, IntByReference pColorSpace, VRTextureBounds_t pTextureBounds); + }; + /** native declaration : headers\openvr_capi.h:1802 */ + public interface ReleaseNativeOverlayHandle_callback extends Callback { + int apply(long ulOverlayHandle, Pointer pNativeTextureHandle); + }; + /** native declaration : headers\openvr_capi.h:1803 */ + public interface GetOverlayTextureSize_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference pWidth, IntByReference pHeight); + }; + /** native declaration : headers\openvr_capi.h:1804 */ + public interface CreateDashboardOverlay_callback extends Callback { + int apply(Pointer pchOverlayKey, Pointer pchOverlayFriendlyName, LongByReference pMainHandle, LongByReference pThumbnailHandle); + }; + /** native declaration : headers\openvr_capi.h:1805 */ + public interface IsDashboardVisible_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1806 */ + public interface IsActiveDashboardOverlay_callback extends Callback { + byte apply(long ulOverlayHandle); + }; + /** native declaration : headers\openvr_capi.h:1807 */ + public interface SetDashboardOverlaySceneProcess_callback extends Callback { + int apply(long ulOverlayHandle, int unProcessId); + }; + /** native declaration : headers\openvr_capi.h:1808 */ + public interface GetDashboardOverlaySceneProcess_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference punProcessId); + }; + /** native declaration : headers\openvr_capi.h:1809 */ + public interface ShowDashboard_callback extends Callback { + void apply(Pointer pchOverlayToShow); + }; + /** native declaration : headers\openvr_capi.h:1810 */ + public interface GetPrimaryDashboardDevice_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1811 */ + public interface ShowKeyboard_callback extends Callback { + int apply(int eInputMode, int eLineInputMode, Pointer pchDescription, int unCharMax, Pointer pchExistingText, byte bUseMinimalMode, long uUserValue); + }; + /** native declaration : headers\openvr_capi.h:1812 */ + public interface ShowKeyboardForOverlay_callback extends Callback { + int apply(long ulOverlayHandle, int eInputMode, int eLineInputMode, Pointer pchDescription, int unCharMax, Pointer pchExistingText, byte bUseMinimalMode, long uUserValue); + }; + /** native declaration : headers\openvr_capi.h:1813 */ + public interface GetKeyboardText_callback extends Callback { + int apply(Pointer pchText, int cchText); + }; + /** native declaration : headers\openvr_capi.h:1814 */ + public interface HideKeyboard_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1815 */ + public interface SetKeyboardTransformAbsolute_callback extends Callback { + void apply(int eTrackingOrigin, HmdMatrix34_t pmatTrackingOriginToKeyboardTransform); + }; + /** native declaration : headers\openvr_capi.h:1816 */ + public interface SetKeyboardPositionForOverlay_callback extends Callback { + void apply(long ulOverlayHandle, com.jme3.system.jopenvr.HmdRect2_t.ByValue avoidRect); + }; + /** native declaration : headers\openvr_capi.h:1817 */ + public interface SetOverlayIntersectionMask_callback extends Callback { + int apply(long ulOverlayHandle, VROverlayIntersectionMaskPrimitive_t pMaskPrimitives, int unNumMaskPrimitives, int unPrimitiveSize); + }; + /** native declaration : headers\openvr_capi.h:1818 */ + public interface GetOverlayFlags_callback extends Callback { + int apply(long ulOverlayHandle, IntByReference pFlags); + }; + /** native declaration : headers\openvr_capi.h:1819 */ + public interface ShowMessageOverlay_callback extends Callback { + int apply(Pointer pchText, Pointer pchCaption, Pointer pchButton0Text, Pointer pchButton1Text, Pointer pchButton2Text, Pointer pchButton3Text); + }; + public VR_IVROverlay_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("FindOverlay", "CreateOverlay", "DestroyOverlay", "SetHighQualityOverlay", "GetHighQualityOverlay", "GetOverlayKey", "GetOverlayName", "SetOverlayName", "GetOverlayImageData", "GetOverlayErrorNameFromEnum", "SetOverlayRenderingPid", "GetOverlayRenderingPid", "SetOverlayFlag", "GetOverlayFlag", "SetOverlayColor", "GetOverlayColor", "SetOverlayAlpha", "GetOverlayAlpha", "SetOverlayTexelAspect", "GetOverlayTexelAspect", "SetOverlaySortOrder", "GetOverlaySortOrder", "SetOverlayWidthInMeters", "GetOverlayWidthInMeters", "SetOverlayAutoCurveDistanceRangeInMeters", "GetOverlayAutoCurveDistanceRangeInMeters", "SetOverlayTextureColorSpace", "GetOverlayTextureColorSpace", "SetOverlayTextureBounds", "GetOverlayTextureBounds", "GetOverlayRenderModel", "SetOverlayRenderModel", "GetOverlayTransformType", "SetOverlayTransformAbsolute", "GetOverlayTransformAbsolute", "SetOverlayTransformTrackedDeviceRelative", "GetOverlayTransformTrackedDeviceRelative", "SetOverlayTransformTrackedDeviceComponent", "GetOverlayTransformTrackedDeviceComponent", "GetOverlayTransformOverlayRelative", "SetOverlayTransformOverlayRelative", "ShowOverlay", "HideOverlay", "IsOverlayVisible", "GetTransformForOverlayCoordinates", "PollNextOverlayEvent", "GetOverlayInputMethod", "SetOverlayInputMethod", "GetOverlayMouseScale", "SetOverlayMouseScale", "ComputeOverlayIntersection", "HandleControllerOverlayInteractionAsMouse", "IsHoverTargetOverlay", "GetGamepadFocusOverlay", "SetGamepadFocusOverlay", "SetOverlayNeighbor", "MoveGamepadFocusToNeighbor", "SetOverlayTexture", "ClearOverlayTexture", "SetOverlayRaw", "SetOverlayFromFile", "GetOverlayTexture", "ReleaseNativeOverlayHandle", "GetOverlayTextureSize", "CreateDashboardOverlay", "IsDashboardVisible", "IsActiveDashboardOverlay", "SetDashboardOverlaySceneProcess", "GetDashboardOverlaySceneProcess", "ShowDashboard", "GetPrimaryDashboardDevice", "ShowKeyboard", "ShowKeyboardForOverlay", "GetKeyboardText", "HideKeyboard", "SetKeyboardTransformAbsolute", "SetKeyboardPositionForOverlay", "SetOverlayIntersectionMask", "GetOverlayFlags", "ShowMessageOverlay"); + } + public VR_IVROverlay_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVROverlay_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVROverlay_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRRenderModels_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRRenderModels_FnTable.java index 808fc0d55..548b2c1ed 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRRenderModels_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRRenderModels_FnTable.java @@ -7,133 +7,133 @@ import com.sun.jna.ptr.PointerByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1817
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRRenderModels_FnTable extends Structure { - /** C type : LoadRenderModel_Async_callback* */ - public VR_IVRRenderModels_FnTable.LoadRenderModel_Async_callback LoadRenderModel_Async; - /** C type : FreeRenderModel_callback* */ - public VR_IVRRenderModels_FnTable.FreeRenderModel_callback FreeRenderModel; - /** C type : LoadTexture_Async_callback* */ - public VR_IVRRenderModels_FnTable.LoadTexture_Async_callback LoadTexture_Async; - /** C type : FreeTexture_callback* */ - public VR_IVRRenderModels_FnTable.FreeTexture_callback FreeTexture; - /** C type : LoadTextureD3D11_Async_callback* */ - public VR_IVRRenderModels_FnTable.LoadTextureD3D11_Async_callback LoadTextureD3D11_Async; - /** C type : LoadIntoTextureD3D11_Async_callback* */ - public VR_IVRRenderModels_FnTable.LoadIntoTextureD3D11_Async_callback LoadIntoTextureD3D11_Async; - /** C type : FreeTextureD3D11_callback* */ - public VR_IVRRenderModels_FnTable.FreeTextureD3D11_callback FreeTextureD3D11; - /** C type : GetRenderModelName_callback* */ - public VR_IVRRenderModels_FnTable.GetRenderModelName_callback GetRenderModelName; - /** C type : GetRenderModelCount_callback* */ - public VR_IVRRenderModels_FnTable.GetRenderModelCount_callback GetRenderModelCount; - /** C type : GetComponentCount_callback* */ - public VR_IVRRenderModels_FnTable.GetComponentCount_callback GetComponentCount; - /** C type : GetComponentName_callback* */ - public VR_IVRRenderModels_FnTable.GetComponentName_callback GetComponentName; - /** C type : GetComponentButtonMask_callback* */ - public VR_IVRRenderModels_FnTable.GetComponentButtonMask_callback GetComponentButtonMask; - /** C type : GetComponentRenderModelName_callback* */ - public VR_IVRRenderModels_FnTable.GetComponentRenderModelName_callback GetComponentRenderModelName; - /** C type : GetComponentState_callback* */ - public VR_IVRRenderModels_FnTable.GetComponentState_callback GetComponentState; - /** C type : RenderModelHasComponent_callback* */ - public VR_IVRRenderModels_FnTable.RenderModelHasComponent_callback RenderModelHasComponent; - /** C type : GetRenderModelThumbnailURL_callback* */ - public VR_IVRRenderModels_FnTable.GetRenderModelThumbnailURL_callback GetRenderModelThumbnailURL; - /** C type : GetRenderModelOriginalPath_callback* */ - public VR_IVRRenderModels_FnTable.GetRenderModelOriginalPath_callback GetRenderModelOriginalPath; - /** C type : GetRenderModelErrorNameFromEnum_callback* */ - public VR_IVRRenderModels_FnTable.GetRenderModelErrorNameFromEnum_callback GetRenderModelErrorNameFromEnum; - /** native declaration : headers\openvr_capi.h:1799 */ - public interface LoadRenderModel_Async_callback extends Callback { - int apply(Pointer pchRenderModelName, PointerByReference ppRenderModel); - }; - /** native declaration : headers\openvr_capi.h:1800 */ - public interface FreeRenderModel_callback extends Callback { - void apply(RenderModel_t pRenderModel); - }; - /** native declaration : headers\openvr_capi.h:1801 */ - public interface LoadTexture_Async_callback extends Callback { - int apply(int textureId, PointerByReference ppTexture); - }; - /** native declaration : headers\openvr_capi.h:1802 */ - public interface FreeTexture_callback extends Callback { - void apply(RenderModel_TextureMap_t pTexture); - }; - /** native declaration : headers\openvr_capi.h:1803 */ - public interface LoadTextureD3D11_Async_callback extends Callback { - int apply(int textureId, Pointer pD3D11Device, PointerByReference ppD3D11Texture2D); - }; - /** native declaration : headers\openvr_capi.h:1804 */ - public interface LoadIntoTextureD3D11_Async_callback extends Callback { - int apply(int textureId, Pointer pDstTexture); - }; - /** native declaration : headers\openvr_capi.h:1805 */ - public interface FreeTextureD3D11_callback extends Callback { - void apply(Pointer pD3D11Texture2D); - }; - /** native declaration : headers\openvr_capi.h:1806 */ - public interface GetRenderModelName_callback extends Callback { - int apply(int unRenderModelIndex, Pointer pchRenderModelName, int unRenderModelNameLen); - }; - /** native declaration : headers\openvr_capi.h:1807 */ - public interface GetRenderModelCount_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1808 */ - public interface GetComponentCount_callback extends Callback { - int apply(Pointer pchRenderModelName); - }; - /** native declaration : headers\openvr_capi.h:1809 */ - public interface GetComponentName_callback extends Callback { - int apply(Pointer pchRenderModelName, int unComponentIndex, Pointer pchComponentName, int unComponentNameLen); - }; - /** native declaration : headers\openvr_capi.h:1810 */ - public interface GetComponentButtonMask_callback extends Callback { - long apply(Pointer pchRenderModelName, Pointer pchComponentName); - }; - /** native declaration : headers\openvr_capi.h:1811 */ - public interface GetComponentRenderModelName_callback extends Callback { - int apply(Pointer pchRenderModelName, Pointer pchComponentName, Pointer pchComponentRenderModelName, int unComponentRenderModelNameLen); - }; - /** native declaration : headers\openvr_capi.h:1812 */ - public interface GetComponentState_callback extends Callback { - byte apply(Pointer pchRenderModelName, Pointer pchComponentName, VRControllerState_t pControllerState, RenderModel_ControllerMode_State_t pState, RenderModel_ComponentState_t pComponentState); - }; - /** native declaration : headers\openvr_capi.h:1813 */ - public interface RenderModelHasComponent_callback extends Callback { - byte apply(Pointer pchRenderModelName, Pointer pchComponentName); - }; - /** native declaration : headers\openvr_capi.h:1814 */ - public interface GetRenderModelThumbnailURL_callback extends Callback { - int apply(Pointer pchRenderModelName, Pointer pchThumbnailURL, int unThumbnailURLLen, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1815 */ - public interface GetRenderModelOriginalPath_callback extends Callback { - int apply(Pointer pchRenderModelName, Pointer pchOriginalPath, int unOriginalPathLen, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1816 */ - public interface GetRenderModelErrorNameFromEnum_callback extends Callback { - Pointer apply(int error); - }; - public VR_IVRRenderModels_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("LoadRenderModel_Async", "FreeRenderModel", "LoadTexture_Async", "FreeTexture", "LoadTextureD3D11_Async", "LoadIntoTextureD3D11_Async", "FreeTextureD3D11", "GetRenderModelName", "GetRenderModelCount", "GetComponentCount", "GetComponentName", "GetComponentButtonMask", "GetComponentRenderModelName", "GetComponentState", "RenderModelHasComponent", "GetRenderModelThumbnailURL", "GetRenderModelOriginalPath", "GetRenderModelErrorNameFromEnum"); - } - public VR_IVRRenderModels_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRRenderModels_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRRenderModels_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1858
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRRenderModels_FnTable extends Structure { + /** C type : LoadRenderModel_Async_callback* */ + public VR_IVRRenderModels_FnTable.LoadRenderModel_Async_callback LoadRenderModel_Async; + /** C type : FreeRenderModel_callback* */ + public VR_IVRRenderModels_FnTable.FreeRenderModel_callback FreeRenderModel; + /** C type : LoadTexture_Async_callback* */ + public VR_IVRRenderModels_FnTable.LoadTexture_Async_callback LoadTexture_Async; + /** C type : FreeTexture_callback* */ + public VR_IVRRenderModels_FnTable.FreeTexture_callback FreeTexture; + /** C type : LoadTextureD3D11_Async_callback* */ + public VR_IVRRenderModels_FnTable.LoadTextureD3D11_Async_callback LoadTextureD3D11_Async; + /** C type : LoadIntoTextureD3D11_Async_callback* */ + public VR_IVRRenderModels_FnTable.LoadIntoTextureD3D11_Async_callback LoadIntoTextureD3D11_Async; + /** C type : FreeTextureD3D11_callback* */ + public VR_IVRRenderModels_FnTable.FreeTextureD3D11_callback FreeTextureD3D11; + /** C type : GetRenderModelName_callback* */ + public VR_IVRRenderModels_FnTable.GetRenderModelName_callback GetRenderModelName; + /** C type : GetRenderModelCount_callback* */ + public VR_IVRRenderModels_FnTable.GetRenderModelCount_callback GetRenderModelCount; + /** C type : GetComponentCount_callback* */ + public VR_IVRRenderModels_FnTable.GetComponentCount_callback GetComponentCount; + /** C type : GetComponentName_callback* */ + public VR_IVRRenderModels_FnTable.GetComponentName_callback GetComponentName; + /** C type : GetComponentButtonMask_callback* */ + public VR_IVRRenderModels_FnTable.GetComponentButtonMask_callback GetComponentButtonMask; + /** C type : GetComponentRenderModelName_callback* */ + public VR_IVRRenderModels_FnTable.GetComponentRenderModelName_callback GetComponentRenderModelName; + /** C type : GetComponentState_callback* */ + public VR_IVRRenderModels_FnTable.GetComponentState_callback GetComponentState; + /** C type : RenderModelHasComponent_callback* */ + public VR_IVRRenderModels_FnTable.RenderModelHasComponent_callback RenderModelHasComponent; + /** C type : GetRenderModelThumbnailURL_callback* */ + public VR_IVRRenderModels_FnTable.GetRenderModelThumbnailURL_callback GetRenderModelThumbnailURL; + /** C type : GetRenderModelOriginalPath_callback* */ + public VR_IVRRenderModels_FnTable.GetRenderModelOriginalPath_callback GetRenderModelOriginalPath; + /** C type : GetRenderModelErrorNameFromEnum_callback* */ + public VR_IVRRenderModels_FnTable.GetRenderModelErrorNameFromEnum_callback GetRenderModelErrorNameFromEnum; + /** native declaration : headers\openvr_capi.h:1840 */ + public interface LoadRenderModel_Async_callback extends Callback { + int apply(Pointer pchRenderModelName, PointerByReference ppRenderModel); + }; + /** native declaration : headers\openvr_capi.h:1841 */ + public interface FreeRenderModel_callback extends Callback { + void apply(RenderModel_t pRenderModel); + }; + /** native declaration : headers\openvr_capi.h:1842 */ + public interface LoadTexture_Async_callback extends Callback { + int apply(int textureId, PointerByReference ppTexture); + }; + /** native declaration : headers\openvr_capi.h:1843 */ + public interface FreeTexture_callback extends Callback { + void apply(RenderModel_TextureMap_t pTexture); + }; + /** native declaration : headers\openvr_capi.h:1844 */ + public interface LoadTextureD3D11_Async_callback extends Callback { + int apply(int textureId, Pointer pD3D11Device, PointerByReference ppD3D11Texture2D); + }; + /** native declaration : headers\openvr_capi.h:1845 */ + public interface LoadIntoTextureD3D11_Async_callback extends Callback { + int apply(int textureId, Pointer pDstTexture); + }; + /** native declaration : headers\openvr_capi.h:1846 */ + public interface FreeTextureD3D11_callback extends Callback { + void apply(Pointer pD3D11Texture2D); + }; + /** native declaration : headers\openvr_capi.h:1847 */ + public interface GetRenderModelName_callback extends Callback { + int apply(int unRenderModelIndex, Pointer pchRenderModelName, int unRenderModelNameLen); + }; + /** native declaration : headers\openvr_capi.h:1848 */ + public interface GetRenderModelCount_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1849 */ + public interface GetComponentCount_callback extends Callback { + int apply(Pointer pchRenderModelName); + }; + /** native declaration : headers\openvr_capi.h:1850 */ + public interface GetComponentName_callback extends Callback { + int apply(Pointer pchRenderModelName, int unComponentIndex, Pointer pchComponentName, int unComponentNameLen); + }; + /** native declaration : headers\openvr_capi.h:1851 */ + public interface GetComponentButtonMask_callback extends Callback { + long apply(Pointer pchRenderModelName, Pointer pchComponentName); + }; + /** native declaration : headers\openvr_capi.h:1852 */ + public interface GetComponentRenderModelName_callback extends Callback { + int apply(Pointer pchRenderModelName, Pointer pchComponentName, Pointer pchComponentRenderModelName, int unComponentRenderModelNameLen); + }; + /** native declaration : headers\openvr_capi.h:1853 */ + public interface GetComponentState_callback extends Callback { + byte apply(Pointer pchRenderModelName, Pointer pchComponentName, VRControllerState_t pControllerState, RenderModel_ControllerMode_State_t pState, RenderModel_ComponentState_t pComponentState); + }; + /** native declaration : headers\openvr_capi.h:1854 */ + public interface RenderModelHasComponent_callback extends Callback { + byte apply(Pointer pchRenderModelName, Pointer pchComponentName); + }; + /** native declaration : headers\openvr_capi.h:1855 */ + public interface GetRenderModelThumbnailURL_callback extends Callback { + int apply(Pointer pchRenderModelName, Pointer pchThumbnailURL, int unThumbnailURLLen, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1856 */ + public interface GetRenderModelOriginalPath_callback extends Callback { + int apply(Pointer pchRenderModelName, Pointer pchOriginalPath, int unOriginalPathLen, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1857 */ + public interface GetRenderModelErrorNameFromEnum_callback extends Callback { + Pointer apply(int error); + }; + public VR_IVRRenderModels_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("LoadRenderModel_Async", "FreeRenderModel", "LoadTexture_Async", "FreeTexture", "LoadTextureD3D11_Async", "LoadIntoTextureD3D11_Async", "FreeTextureD3D11", "GetRenderModelName", "GetRenderModelCount", "GetComponentCount", "GetComponentName", "GetComponentButtonMask", "GetComponentRenderModelName", "GetComponentState", "RenderModelHasComponent", "GetRenderModelThumbnailURL", "GetRenderModelOriginalPath", "GetRenderModelErrorNameFromEnum"); + } + public VR_IVRRenderModels_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRRenderModels_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRRenderModels_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRResources_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRResources_FnTable.java index 468123388..b0c098a3e 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRResources_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRResources_FnTable.java @@ -5,46 +5,46 @@ import com.sun.jna.Structure; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1871
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRResources_FnTable extends Structure { - /** C type : LoadSharedResource_callback* */ - public VR_IVRResources_FnTable.LoadSharedResource_callback LoadSharedResource; - /** C type : GetResourceFullPath_callback* */ - public VR_IVRResources_FnTable.GetResourceFullPath_callback GetResourceFullPath; - /** native declaration : headers\openvr_capi.h:1869 */ - public interface LoadSharedResource_callback extends Callback { - int apply(Pointer pchResourceName, Pointer pchBuffer, int unBufferLen); - }; - /** native declaration : headers\openvr_capi.h:1870 */ - public interface GetResourceFullPath_callback extends Callback { - int apply(Pointer pchResourceName, Pointer pchResourceTypeDirectory, Pointer pchPathBuffer, int unBufferLen); - }; - public VR_IVRResources_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("LoadSharedResource", "GetResourceFullPath"); - } + * native declaration : headers\openvr_capi.h:1912
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRResources_FnTable extends Structure { + /** C type : LoadSharedResource_callback* */ + public VR_IVRResources_FnTable.LoadSharedResource_callback LoadSharedResource; + /** C type : GetResourceFullPath_callback* */ + public VR_IVRResources_FnTable.GetResourceFullPath_callback GetResourceFullPath; + /** native declaration : headers\openvr_capi.h:1910 */ + public interface LoadSharedResource_callback extends Callback { + int apply(Pointer pchResourceName, Pointer pchBuffer, int unBufferLen); + }; + /** native declaration : headers\openvr_capi.h:1911 */ + public interface GetResourceFullPath_callback extends Callback { + int apply(Pointer pchResourceName, Pointer pchResourceTypeDirectory, Pointer pchPathBuffer, int unBufferLen); + }; + public VR_IVRResources_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("LoadSharedResource", "GetResourceFullPath"); + } /** - * @param LoadSharedResource C type : LoadSharedResource_callback*
    - * @param GetResourceFullPath C type : GetResourceFullPath_callback* - */ - public VR_IVRResources_FnTable(VR_IVRResources_FnTable.LoadSharedResource_callback LoadSharedResource, VR_IVRResources_FnTable.GetResourceFullPath_callback GetResourceFullPath) { - super(); - this.LoadSharedResource = LoadSharedResource; - this.GetResourceFullPath = GetResourceFullPath; - } - public VR_IVRResources_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRResources_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRResources_FnTable implements Structure.ByValue { - - }; + * @param LoadSharedResource C type : LoadSharedResource_callback*
    + * @param GetResourceFullPath C type : GetResourceFullPath_callback* + */ + public VR_IVRResources_FnTable(VR_IVRResources_FnTable.LoadSharedResource_callback LoadSharedResource, VR_IVRResources_FnTable.GetResourceFullPath_callback GetResourceFullPath) { + super(); + this.LoadSharedResource = LoadSharedResource; + this.GetResourceFullPath = GetResourceFullPath; + } + public VR_IVRResources_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRResources_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRResources_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRScreenshots_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRScreenshots_FnTable.java index c568a74c6..d6328b8e8 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRScreenshots_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRScreenshots_FnTable.java @@ -6,86 +6,86 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1865
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRScreenshots_FnTable extends Structure { - /** C type : RequestScreenshot_callback* */ - public VR_IVRScreenshots_FnTable.RequestScreenshot_callback RequestScreenshot; - /** C type : HookScreenshot_callback* */ - public VR_IVRScreenshots_FnTable.HookScreenshot_callback HookScreenshot; - /** C type : GetScreenshotPropertyType_callback* */ - public VR_IVRScreenshots_FnTable.GetScreenshotPropertyType_callback GetScreenshotPropertyType; - /** C type : GetScreenshotPropertyFilename_callback* */ - public VR_IVRScreenshots_FnTable.GetScreenshotPropertyFilename_callback GetScreenshotPropertyFilename; - /** C type : UpdateScreenshotProgress_callback* */ - public VR_IVRScreenshots_FnTable.UpdateScreenshotProgress_callback UpdateScreenshotProgress; - /** C type : TakeStereoScreenshot_callback* */ - public VR_IVRScreenshots_FnTable.TakeStereoScreenshot_callback TakeStereoScreenshot; - /** C type : SubmitScreenshot_callback* */ - public VR_IVRScreenshots_FnTable.SubmitScreenshot_callback SubmitScreenshot; - /** native declaration : headers\openvr_capi.h:1858 */ - public interface RequestScreenshot_callback extends Callback { - int apply(IntByReference pOutScreenshotHandle, int type, Pointer pchPreviewFilename, Pointer pchVRFilename); - }; - /** native declaration : headers\openvr_capi.h:1859 */ - public interface HookScreenshot_callback extends Callback { - int apply(IntByReference pSupportedTypes, int numTypes); - }; - /** native declaration : headers\openvr_capi.h:1860 */ - public interface GetScreenshotPropertyType_callback extends Callback { - int apply(int screenshotHandle, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1861 */ - public interface GetScreenshotPropertyFilename_callback extends Callback { - int apply(int screenshotHandle, int filenameType, Pointer pchFilename, int cchFilename, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1862 */ - public interface UpdateScreenshotProgress_callback extends Callback { - int apply(int screenshotHandle, float flProgress); - }; - /** native declaration : headers\openvr_capi.h:1863 */ - public interface TakeStereoScreenshot_callback extends Callback { - int apply(IntByReference pOutScreenshotHandle, Pointer pchPreviewFilename, Pointer pchVRFilename); - }; - /** native declaration : headers\openvr_capi.h:1864 */ - public interface SubmitScreenshot_callback extends Callback { - int apply(int screenshotHandle, int type, Pointer pchSourcePreviewFilename, Pointer pchSourceVRFilename); - }; - public VR_IVRScreenshots_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("RequestScreenshot", "HookScreenshot", "GetScreenshotPropertyType", "GetScreenshotPropertyFilename", "UpdateScreenshotProgress", "TakeStereoScreenshot", "SubmitScreenshot"); - } + * native declaration : headers\openvr_capi.h:1906
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRScreenshots_FnTable extends Structure { + /** C type : RequestScreenshot_callback* */ + public VR_IVRScreenshots_FnTable.RequestScreenshot_callback RequestScreenshot; + /** C type : HookScreenshot_callback* */ + public VR_IVRScreenshots_FnTable.HookScreenshot_callback HookScreenshot; + /** C type : GetScreenshotPropertyType_callback* */ + public VR_IVRScreenshots_FnTable.GetScreenshotPropertyType_callback GetScreenshotPropertyType; + /** C type : GetScreenshotPropertyFilename_callback* */ + public VR_IVRScreenshots_FnTable.GetScreenshotPropertyFilename_callback GetScreenshotPropertyFilename; + /** C type : UpdateScreenshotProgress_callback* */ + public VR_IVRScreenshots_FnTable.UpdateScreenshotProgress_callback UpdateScreenshotProgress; + /** C type : TakeStereoScreenshot_callback* */ + public VR_IVRScreenshots_FnTable.TakeStereoScreenshot_callback TakeStereoScreenshot; + /** C type : SubmitScreenshot_callback* */ + public VR_IVRScreenshots_FnTable.SubmitScreenshot_callback SubmitScreenshot; + /** native declaration : headers\openvr_capi.h:1899 */ + public interface RequestScreenshot_callback extends Callback { + int apply(IntByReference pOutScreenshotHandle, int type, Pointer pchPreviewFilename, Pointer pchVRFilename); + }; + /** native declaration : headers\openvr_capi.h:1900 */ + public interface HookScreenshot_callback extends Callback { + int apply(IntByReference pSupportedTypes, int numTypes); + }; + /** native declaration : headers\openvr_capi.h:1901 */ + public interface GetScreenshotPropertyType_callback extends Callback { + int apply(int screenshotHandle, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1902 */ + public interface GetScreenshotPropertyFilename_callback extends Callback { + int apply(int screenshotHandle, int filenameType, Pointer pchFilename, int cchFilename, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1903 */ + public interface UpdateScreenshotProgress_callback extends Callback { + int apply(int screenshotHandle, float flProgress); + }; + /** native declaration : headers\openvr_capi.h:1904 */ + public interface TakeStereoScreenshot_callback extends Callback { + int apply(IntByReference pOutScreenshotHandle, Pointer pchPreviewFilename, Pointer pchVRFilename); + }; + /** native declaration : headers\openvr_capi.h:1905 */ + public interface SubmitScreenshot_callback extends Callback { + int apply(int screenshotHandle, int type, Pointer pchSourcePreviewFilename, Pointer pchSourceVRFilename); + }; + public VR_IVRScreenshots_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("RequestScreenshot", "HookScreenshot", "GetScreenshotPropertyType", "GetScreenshotPropertyFilename", "UpdateScreenshotProgress", "TakeStereoScreenshot", "SubmitScreenshot"); + } /** - * @param RequestScreenshot C type : RequestScreenshot_callback*
    - * @param HookScreenshot C type : HookScreenshot_callback*
    - * @param GetScreenshotPropertyType C type : GetScreenshotPropertyType_callback*
    - * @param GetScreenshotPropertyFilename C type : GetScreenshotPropertyFilename_callback*
    - * @param UpdateScreenshotProgress C type : UpdateScreenshotProgress_callback*
    - * @param TakeStereoScreenshot C type : TakeStereoScreenshot_callback*
    - * @param SubmitScreenshot C type : SubmitScreenshot_callback* - */ - public VR_IVRScreenshots_FnTable(VR_IVRScreenshots_FnTable.RequestScreenshot_callback RequestScreenshot, VR_IVRScreenshots_FnTable.HookScreenshot_callback HookScreenshot, VR_IVRScreenshots_FnTable.GetScreenshotPropertyType_callback GetScreenshotPropertyType, VR_IVRScreenshots_FnTable.GetScreenshotPropertyFilename_callback GetScreenshotPropertyFilename, VR_IVRScreenshots_FnTable.UpdateScreenshotProgress_callback UpdateScreenshotProgress, VR_IVRScreenshots_FnTable.TakeStereoScreenshot_callback TakeStereoScreenshot, VR_IVRScreenshots_FnTable.SubmitScreenshot_callback SubmitScreenshot) { - super(); - this.RequestScreenshot = RequestScreenshot; - this.HookScreenshot = HookScreenshot; - this.GetScreenshotPropertyType = GetScreenshotPropertyType; - this.GetScreenshotPropertyFilename = GetScreenshotPropertyFilename; - this.UpdateScreenshotProgress = UpdateScreenshotProgress; - this.TakeStereoScreenshot = TakeStereoScreenshot; - this.SubmitScreenshot = SubmitScreenshot; - } - public VR_IVRScreenshots_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRScreenshots_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRScreenshots_FnTable implements Structure.ByValue { - - }; + * @param RequestScreenshot C type : RequestScreenshot_callback*
    + * @param HookScreenshot C type : HookScreenshot_callback*
    + * @param GetScreenshotPropertyType C type : GetScreenshotPropertyType_callback*
    + * @param GetScreenshotPropertyFilename C type : GetScreenshotPropertyFilename_callback*
    + * @param UpdateScreenshotProgress C type : UpdateScreenshotProgress_callback*
    + * @param TakeStereoScreenshot C type : TakeStereoScreenshot_callback*
    + * @param SubmitScreenshot C type : SubmitScreenshot_callback* + */ + public VR_IVRScreenshots_FnTable(VR_IVRScreenshots_FnTable.RequestScreenshot_callback RequestScreenshot, VR_IVRScreenshots_FnTable.HookScreenshot_callback HookScreenshot, VR_IVRScreenshots_FnTable.GetScreenshotPropertyType_callback GetScreenshotPropertyType, VR_IVRScreenshots_FnTable.GetScreenshotPropertyFilename_callback GetScreenshotPropertyFilename, VR_IVRScreenshots_FnTable.UpdateScreenshotProgress_callback UpdateScreenshotProgress, VR_IVRScreenshots_FnTable.TakeStereoScreenshot_callback TakeStereoScreenshot, VR_IVRScreenshots_FnTable.SubmitScreenshot_callback SubmitScreenshot) { + super(); + this.RequestScreenshot = RequestScreenshot; + this.HookScreenshot = HookScreenshot; + this.GetScreenshotPropertyType = GetScreenshotPropertyType; + this.GetScreenshotPropertyFilename = GetScreenshotPropertyFilename; + this.UpdateScreenshotProgress = UpdateScreenshotProgress; + this.TakeStereoScreenshot = TakeStereoScreenshot; + this.SubmitScreenshot = SubmitScreenshot; + } + public VR_IVRScreenshots_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRScreenshots_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRScreenshots_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSettings_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSettings_FnTable.java index 3f27c11c2..3ea08aa08 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSettings_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSettings_FnTable.java @@ -6,97 +6,97 @@ import com.sun.jna.ptr.IntByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1849
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRSettings_FnTable extends Structure { - /** C type : GetSettingsErrorNameFromEnum_callback* */ - public VR_IVRSettings_FnTable.GetSettingsErrorNameFromEnum_callback GetSettingsErrorNameFromEnum; - /** C type : Sync_callback* */ - public VR_IVRSettings_FnTable.Sync_callback Sync; - /** C type : SetBool_callback* */ - public VR_IVRSettings_FnTable.SetBool_callback SetBool; - /** C type : SetInt32_callback* */ - public VR_IVRSettings_FnTable.SetInt32_callback SetInt32; - /** C type : SetFloat_callback* */ - public VR_IVRSettings_FnTable.SetFloat_callback SetFloat; - /** C type : SetString_callback* */ - public VR_IVRSettings_FnTable.SetString_callback SetString; - /** C type : GetBool_callback* */ - public VR_IVRSettings_FnTable.GetBool_callback GetBool; - /** C type : GetInt32_callback* */ - public VR_IVRSettings_FnTable.GetInt32_callback GetInt32; - /** C type : GetFloat_callback* */ - public VR_IVRSettings_FnTable.GetFloat_callback GetFloat; - /** C type : GetString_callback* */ - public VR_IVRSettings_FnTable.GetString_callback GetString; - /** C type : RemoveSection_callback* */ - public VR_IVRSettings_FnTable.RemoveSection_callback RemoveSection; - /** C type : RemoveKeyInSection_callback* */ - public VR_IVRSettings_FnTable.RemoveKeyInSection_callback RemoveKeyInSection; - /** native declaration : headers\openvr_capi.h:1837 */ - public interface GetSettingsErrorNameFromEnum_callback extends Callback { - Pointer apply(int eError); - }; - /** native declaration : headers\openvr_capi.h:1838 */ - public interface Sync_callback extends Callback { - byte apply(byte bForce, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1839 */ - public interface SetBool_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, byte bValue, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1840 */ - public interface SetInt32_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, int nValue, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1841 */ - public interface SetFloat_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, float flValue, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1842 */ - public interface SetString_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, Pointer pchValue, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1843 */ - public interface GetBool_callback extends Callback { - byte apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1844 */ - public interface GetInt32_callback extends Callback { - int apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1845 */ - public interface GetFloat_callback extends Callback { - float apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1846 */ - public interface GetString_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, Pointer pchValue, int unValueLen, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1847 */ - public interface RemoveSection_callback extends Callback { - void apply(Pointer pchSection, IntByReference peError); - }; - /** native declaration : headers\openvr_capi.h:1848 */ - public interface RemoveKeyInSection_callback extends Callback { - void apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); - }; - public VR_IVRSettings_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("GetSettingsErrorNameFromEnum", "Sync", "SetBool", "SetInt32", "SetFloat", "SetString", "GetBool", "GetInt32", "GetFloat", "GetString", "RemoveSection", "RemoveKeyInSection"); - } - public VR_IVRSettings_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRSettings_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRSettings_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1890
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRSettings_FnTable extends Structure { + /** C type : GetSettingsErrorNameFromEnum_callback* */ + public VR_IVRSettings_FnTable.GetSettingsErrorNameFromEnum_callback GetSettingsErrorNameFromEnum; + /** C type : Sync_callback* */ + public VR_IVRSettings_FnTable.Sync_callback Sync; + /** C type : SetBool_callback* */ + public VR_IVRSettings_FnTable.SetBool_callback SetBool; + /** C type : SetInt32_callback* */ + public VR_IVRSettings_FnTable.SetInt32_callback SetInt32; + /** C type : SetFloat_callback* */ + public VR_IVRSettings_FnTable.SetFloat_callback SetFloat; + /** C type : SetString_callback* */ + public VR_IVRSettings_FnTable.SetString_callback SetString; + /** C type : GetBool_callback* */ + public VR_IVRSettings_FnTable.GetBool_callback GetBool; + /** C type : GetInt32_callback* */ + public VR_IVRSettings_FnTable.GetInt32_callback GetInt32; + /** C type : GetFloat_callback* */ + public VR_IVRSettings_FnTable.GetFloat_callback GetFloat; + /** C type : GetString_callback* */ + public VR_IVRSettings_FnTable.GetString_callback GetString; + /** C type : RemoveSection_callback* */ + public VR_IVRSettings_FnTable.RemoveSection_callback RemoveSection; + /** C type : RemoveKeyInSection_callback* */ + public VR_IVRSettings_FnTable.RemoveKeyInSection_callback RemoveKeyInSection; + /** native declaration : headers\openvr_capi.h:1878 */ + public interface GetSettingsErrorNameFromEnum_callback extends Callback { + Pointer apply(int eError); + }; + /** native declaration : headers\openvr_capi.h:1879 */ + public interface Sync_callback extends Callback { + byte apply(byte bForce, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1880 */ + public interface SetBool_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, byte bValue, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1881 */ + public interface SetInt32_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, int nValue, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1882 */ + public interface SetFloat_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, float flValue, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1883 */ + public interface SetString_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, Pointer pchValue, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1884 */ + public interface GetBool_callback extends Callback { + byte apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1885 */ + public interface GetInt32_callback extends Callback { + int apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1886 */ + public interface GetFloat_callback extends Callback { + float apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1887 */ + public interface GetString_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, Pointer pchValue, int unValueLen, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1888 */ + public interface RemoveSection_callback extends Callback { + void apply(Pointer pchSection, IntByReference peError); + }; + /** native declaration : headers\openvr_capi.h:1889 */ + public interface RemoveKeyInSection_callback extends Callback { + void apply(Pointer pchSection, Pointer pchSettingsKey, IntByReference peError); + }; + public VR_IVRSettings_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("GetSettingsErrorNameFromEnum", "Sync", "SetBool", "SetInt32", "SetFloat", "SetString", "GetBool", "GetInt32", "GetFloat", "GetString", "RemoveSection", "RemoveKeyInSection"); + } + public VR_IVRSettings_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRSettings_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRSettings_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSystem_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSystem_FnTable.java index 4ca9f60e5..7b372d014 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSystem_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRSystem_FnTable.java @@ -5,293 +5,348 @@ import com.sun.jna.Structure; import com.sun.jna.ptr.FloatByReference; import com.sun.jna.ptr.IntByReference; import com.sun.jna.ptr.LongByReference; + import java.util.Arrays; import java.util.List; /** - * OpenVR Function Pointer Tables
    - * native declaration : headers\openvr_capi.h:1385
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRSystem_FnTable extends Structure { - /** C type : GetRecommendedRenderTargetSize_callback* */ - public VR_IVRSystem_FnTable.GetRecommendedRenderTargetSize_callback GetRecommendedRenderTargetSize; - /** C type : GetProjectionMatrix_callback* */ - public VR_IVRSystem_FnTable.GetProjectionMatrix_callback GetProjectionMatrix; - /** C type : GetProjectionRaw_callback* */ - public VR_IVRSystem_FnTable.GetProjectionRaw_callback GetProjectionRaw; - /** C type : ComputeDistortion_callback* */ - public VR_IVRSystem_FnTable.ComputeDistortion_callback ComputeDistortion; - /** C type : GetEyeToHeadTransform_callback* */ - public VR_IVRSystem_FnTable.GetEyeToHeadTransform_callback GetEyeToHeadTransform; - /** C type : GetTimeSinceLastVsync_callback* */ - public VR_IVRSystem_FnTable.GetTimeSinceLastVsync_callback GetTimeSinceLastVsync; - /** C type : GetD3D9AdapterIndex_callback* */ - public VR_IVRSystem_FnTable.GetD3D9AdapterIndex_callback GetD3D9AdapterIndex; - /** C type : GetDXGIOutputInfo_callback* */ - public com.jme3.system.jopenvr.VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo; - /** C type : IsDisplayOnDesktop_callback* */ - public VR_IVRSystem_FnTable.IsDisplayOnDesktop_callback IsDisplayOnDesktop; - /** C type : SetDisplayVisibility_callback* */ - public VR_IVRSystem_FnTable.SetDisplayVisibility_callback SetDisplayVisibility; - /** C type : GetDeviceToAbsoluteTrackingPose_callback* */ - public VR_IVRSystem_FnTable.GetDeviceToAbsoluteTrackingPose_callback GetDeviceToAbsoluteTrackingPose; - /** C type : ResetSeatedZeroPose_callback* */ - public VR_IVRSystem_FnTable.ResetSeatedZeroPose_callback ResetSeatedZeroPose; - /** C type : GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback* */ - public VR_IVRSystem_FnTable.GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback GetSeatedZeroPoseToStandingAbsoluteTrackingPose; - /** C type : GetRawZeroPoseToStandingAbsoluteTrackingPose_callback* */ - public VR_IVRSystem_FnTable.GetRawZeroPoseToStandingAbsoluteTrackingPose_callback GetRawZeroPoseToStandingAbsoluteTrackingPose; - /** C type : GetSortedTrackedDeviceIndicesOfClass_callback* */ - public VR_IVRSystem_FnTable.GetSortedTrackedDeviceIndicesOfClass_callback GetSortedTrackedDeviceIndicesOfClass; - /** C type : GetTrackedDeviceActivityLevel_callback* */ - public VR_IVRSystem_FnTable.GetTrackedDeviceActivityLevel_callback GetTrackedDeviceActivityLevel; - /** C type : ApplyTransform_callback* */ - public VR_IVRSystem_FnTable.ApplyTransform_callback ApplyTransform; - /** C type : GetTrackedDeviceIndexForControllerRole_callback* */ - public VR_IVRSystem_FnTable.GetTrackedDeviceIndexForControllerRole_callback GetTrackedDeviceIndexForControllerRole; - /** C type : GetControllerRoleForTrackedDeviceIndex_callback* */ - public VR_IVRSystem_FnTable.GetControllerRoleForTrackedDeviceIndex_callback GetControllerRoleForTrackedDeviceIndex; - /** C type : GetTrackedDeviceClass_callback* */ - public VR_IVRSystem_FnTable.GetTrackedDeviceClass_callback GetTrackedDeviceClass; - /** C type : IsTrackedDeviceConnected_callback* */ - public VR_IVRSystem_FnTable.IsTrackedDeviceConnected_callback IsTrackedDeviceConnected; - /** C type : GetBoolTrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetBoolTrackedDeviceProperty_callback GetBoolTrackedDeviceProperty; - /** C type : GetFloatTrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetFloatTrackedDeviceProperty_callback GetFloatTrackedDeviceProperty; - /** C type : GetInt32TrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetInt32TrackedDeviceProperty_callback GetInt32TrackedDeviceProperty; - /** C type : GetUint64TrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetUint64TrackedDeviceProperty_callback GetUint64TrackedDeviceProperty; - /** C type : GetMatrix34TrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetMatrix34TrackedDeviceProperty_callback GetMatrix34TrackedDeviceProperty; - /** C type : GetStringTrackedDeviceProperty_callback* */ - public VR_IVRSystem_FnTable.GetStringTrackedDeviceProperty_callback GetStringTrackedDeviceProperty; - /** C type : GetPropErrorNameFromEnum_callback* */ - public VR_IVRSystem_FnTable.GetPropErrorNameFromEnum_callback GetPropErrorNameFromEnum; - /** C type : PollNextEvent_callback* */ - public VR_IVRSystem_FnTable.PollNextEvent_callback PollNextEvent; - /** C type : PollNextEventWithPose_callback* */ - public VR_IVRSystem_FnTable.PollNextEventWithPose_callback PollNextEventWithPose; - /** C type : GetEventTypeNameFromEnum_callback* */ - public VR_IVRSystem_FnTable.GetEventTypeNameFromEnum_callback GetEventTypeNameFromEnum; - /** C type : GetHiddenAreaMesh_callback* */ - public VR_IVRSystem_FnTable.GetHiddenAreaMesh_callback GetHiddenAreaMesh; - /** C type : GetControllerState_callback* */ - public VR_IVRSystem_FnTable.GetControllerState_callback GetControllerState; - /** C type : GetControllerStateWithPose_callback* */ - public VR_IVRSystem_FnTable.GetControllerStateWithPose_callback GetControllerStateWithPose; - /** C type : TriggerHapticPulse_callback* */ - public VR_IVRSystem_FnTable.TriggerHapticPulse_callback TriggerHapticPulse; - /** C type : GetButtonIdNameFromEnum_callback* */ - public VR_IVRSystem_FnTable.GetButtonIdNameFromEnum_callback GetButtonIdNameFromEnum; - /** C type : GetControllerAxisTypeNameFromEnum_callback* */ - public VR_IVRSystem_FnTable.GetControllerAxisTypeNameFromEnum_callback GetControllerAxisTypeNameFromEnum; - /** C type : CaptureInputFocus_callback* */ - public VR_IVRSystem_FnTable.CaptureInputFocus_callback CaptureInputFocus; - /** C type : ReleaseInputFocus_callback* */ - public VR_IVRSystem_FnTable.ReleaseInputFocus_callback ReleaseInputFocus; - /** C type : IsInputFocusCapturedByAnotherProcess_callback* */ - public VR_IVRSystem_FnTable.IsInputFocusCapturedByAnotherProcess_callback IsInputFocusCapturedByAnotherProcess; - /** C type : DriverDebugRequest_callback* */ - public VR_IVRSystem_FnTable.DriverDebugRequest_callback DriverDebugRequest; - /** C type : PerformFirmwareUpdate_callback* */ - public VR_IVRSystem_FnTable.PerformFirmwareUpdate_callback PerformFirmwareUpdate; - /** C type : AcknowledgeQuit_Exiting_callback* */ - public VR_IVRSystem_FnTable.AcknowledgeQuit_Exiting_callback AcknowledgeQuit_Exiting; - /** C type : AcknowledgeQuit_UserPrompt_callback* */ - public VR_IVRSystem_FnTable.AcknowledgeQuit_UserPrompt_callback AcknowledgeQuit_UserPrompt; - /** native declaration : headers\openvr_capi.h:1341 */ - public interface GetRecommendedRenderTargetSize_callback extends Callback { - void apply(IntByReference pnWidth, IntByReference pnHeight); - }; - /** native declaration : headers\openvr_capi.h:1342 */ - public interface GetProjectionMatrix_callback extends Callback { - com.jme3.system.jopenvr.HmdMatrix44_t.ByValue apply(int eEye, float fNearZ, float fFarZ); - }; - /** native declaration : headers\openvr_capi.h:1343 */ - public interface GetProjectionRaw_callback extends Callback { - void apply(int eEye, FloatByReference pfLeft, FloatByReference pfRight, FloatByReference pfTop, FloatByReference pfBottom); - }; - /** native declaration : headers\openvr_capi.h:1344 */ - public interface ComputeDistortion_callback extends Callback { - byte apply(int eEye, float fU, float fV, DistortionCoordinates_t pDistortionCoordinates); - }; - /** native declaration : headers\openvr_capi.h:1345 */ - public interface GetEyeToHeadTransform_callback extends Callback { - HmdMatrix34_t.ByValue apply(int eEye); - }; - /** native declaration : headers\openvr_capi.h:1346 */ - public interface GetTimeSinceLastVsync_callback extends Callback { - byte apply(FloatByReference pfSecondsSinceLastVsync, LongByReference pulFrameCounter); - }; - /** native declaration : headers\openvr_capi.h:1347 */ - public interface GetD3D9AdapterIndex_callback extends Callback { - int apply(); - }; - /** native declaration : headers\openvr_capi.h:1348 */ - public interface GetDXGIOutputInfo_callback extends Callback { - void apply(IntByReference pnAdapterIndex); - }; - /** native declaration : headers\openvr_capi.h:1349 */ - public interface IsDisplayOnDesktop_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1350 */ - public interface SetDisplayVisibility_callback extends Callback { - byte apply(byte bIsVisibleOnDesktop); - }; - /** native declaration : headers\openvr_capi.h:1351 */ - public interface GetDeviceToAbsoluteTrackingPose_callback extends Callback { - void apply(int eOrigin, float fPredictedSecondsToPhotonsFromNow, TrackedDevicePose_t pTrackedDevicePoseArray, int unTrackedDevicePoseArrayCount); - }; - /** native declaration : headers\openvr_capi.h:1352 */ - public interface ResetSeatedZeroPose_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1353 */ - public interface GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback extends Callback { - HmdMatrix34_t.ByValue apply(); - }; - /** native declaration : headers\openvr_capi.h:1354 */ - public interface GetRawZeroPoseToStandingAbsoluteTrackingPose_callback extends Callback { - HmdMatrix34_t.ByValue apply(); - }; - /** native declaration : headers\openvr_capi.h:1355 */ - public interface GetSortedTrackedDeviceIndicesOfClass_callback extends Callback { - int apply(int eTrackedDeviceClass, IntByReference punTrackedDeviceIndexArray, int unTrackedDeviceIndexArrayCount, int unRelativeToTrackedDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1356 */ - public interface GetTrackedDeviceActivityLevel_callback extends Callback { - int apply(int unDeviceId); - }; - /** native declaration : headers\openvr_capi.h:1357 */ - public interface ApplyTransform_callback extends Callback { - void apply(TrackedDevicePose_t pOutputPose, TrackedDevicePose_t pTrackedDevicePose, HmdMatrix34_t pTransform); - }; - /** native declaration : headers\openvr_capi.h:1358 */ - public interface GetTrackedDeviceIndexForControllerRole_callback extends Callback { - int apply(int unDeviceType); - }; - /** native declaration : headers\openvr_capi.h:1359 */ - public interface GetControllerRoleForTrackedDeviceIndex_callback extends Callback { - int apply(int unDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1360 */ - public interface GetTrackedDeviceClass_callback extends Callback { - int apply(int unDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1361 */ - public interface IsTrackedDeviceConnected_callback extends Callback { - byte apply(int unDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1362 */ - public interface GetBoolTrackedDeviceProperty_callback extends Callback { - byte apply(int unDeviceIndex, int prop, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1363 */ - public interface GetFloatTrackedDeviceProperty_callback extends Callback { - float apply(int unDeviceIndex, int prop, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1364 */ - public interface GetInt32TrackedDeviceProperty_callback extends Callback { - int apply(int unDeviceIndex, int prop, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1365 */ - public interface GetUint64TrackedDeviceProperty_callback extends Callback { - long apply(int unDeviceIndex, int prop, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1366 */ - public interface GetMatrix34TrackedDeviceProperty_callback extends Callback { - HmdMatrix34_t.ByValue apply(int unDeviceIndex, int prop, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1367 */ - public interface GetStringTrackedDeviceProperty_callback extends Callback { - int apply(int unDeviceIndex, int prop, Pointer pchValue, int unBufferSize, IntByReference pError); - }; - /** native declaration : headers\openvr_capi.h:1368 */ - public interface GetPropErrorNameFromEnum_callback extends Callback { - Pointer apply(int error); - }; - /** native declaration : headers\openvr_capi.h:1369 */ - public interface PollNextEvent_callback extends Callback { - byte apply(VREvent_t pEvent, int uncbVREvent); - }; - /** native declaration : headers\openvr_capi.h:1370 */ - public interface PollNextEventWithPose_callback extends Callback { - byte apply(int eOrigin, VREvent_t pEvent, int uncbVREvent, TrackedDevicePose_t pTrackedDevicePose); - }; - /** native declaration : headers\openvr_capi.h:1371 */ - public interface GetEventTypeNameFromEnum_callback extends Callback { - Pointer apply(int eType); - }; - /** native declaration : headers\openvr_capi.h:1372 */ - public interface GetHiddenAreaMesh_callback extends Callback { - com.jme3.system.jopenvr.HiddenAreaMesh_t.ByValue apply(int eEye, int type); - }; - /** native declaration : headers\openvr_capi.h:1373 */ - public interface GetControllerState_callback extends Callback { - byte apply(int unControllerDeviceIndex, VRControllerState_t pControllerState, int unControllerStateSize); - }; - /** native declaration : headers\openvr_capi.h:1374 */ - public interface GetControllerStateWithPose_callback extends Callback { - byte apply(int eOrigin, int unControllerDeviceIndex, VRControllerState_t pControllerState, int unControllerStateSize, TrackedDevicePose_t pTrackedDevicePose); - }; - /** native declaration : headers\openvr_capi.h:1375 */ - public interface TriggerHapticPulse_callback extends Callback { - void apply(int unControllerDeviceIndex, int unAxisId, short usDurationMicroSec); - }; - /** native declaration : headers\openvr_capi.h:1376 */ - public interface GetButtonIdNameFromEnum_callback extends Callback { - Pointer apply(int eButtonId); - }; - /** native declaration : headers\openvr_capi.h:1377 */ - public interface GetControllerAxisTypeNameFromEnum_callback extends Callback { - Pointer apply(int eAxisType); - }; - /** native declaration : headers\openvr_capi.h:1378 */ - public interface CaptureInputFocus_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1379 */ - public interface ReleaseInputFocus_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1380 */ - public interface IsInputFocusCapturedByAnotherProcess_callback extends Callback { - byte apply(); - }; - /** native declaration : headers\openvr_capi.h:1381 */ - public interface DriverDebugRequest_callback extends Callback { - int apply(int unDeviceIndex, Pointer pchRequest, Pointer pchResponseBuffer, int unResponseBufferSize); - }; - /** native declaration : headers\openvr_capi.h:1382 */ - public interface PerformFirmwareUpdate_callback extends Callback { - int apply(int unDeviceIndex); - }; - /** native declaration : headers\openvr_capi.h:1383 */ - public interface AcknowledgeQuit_Exiting_callback extends Callback { - void apply(); - }; - /** native declaration : headers\openvr_capi.h:1384 */ - public interface AcknowledgeQuit_UserPrompt_callback extends Callback { - void apply(); - }; - public VR_IVRSystem_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("GetRecommendedRenderTargetSize", "GetProjectionMatrix", "GetProjectionRaw", "ComputeDistortion", "GetEyeToHeadTransform", "GetTimeSinceLastVsync", "GetD3D9AdapterIndex", "GetDXGIOutputInfo", "IsDisplayOnDesktop", "SetDisplayVisibility", "GetDeviceToAbsoluteTrackingPose", "ResetSeatedZeroPose", "GetSeatedZeroPoseToStandingAbsoluteTrackingPose", "GetRawZeroPoseToStandingAbsoluteTrackingPose", "GetSortedTrackedDeviceIndicesOfClass", "GetTrackedDeviceActivityLevel", "ApplyTransform", "GetTrackedDeviceIndexForControllerRole", "GetControllerRoleForTrackedDeviceIndex", "GetTrackedDeviceClass", "IsTrackedDeviceConnected", "GetBoolTrackedDeviceProperty", "GetFloatTrackedDeviceProperty", "GetInt32TrackedDeviceProperty", "GetUint64TrackedDeviceProperty", "GetMatrix34TrackedDeviceProperty", "GetStringTrackedDeviceProperty", "GetPropErrorNameFromEnum", "PollNextEvent", "PollNextEventWithPose", "GetEventTypeNameFromEnum", "GetHiddenAreaMesh", "GetControllerState", "GetControllerStateWithPose", "TriggerHapticPulse", "GetButtonIdNameFromEnum", "GetControllerAxisTypeNameFromEnum", "CaptureInputFocus", "ReleaseInputFocus", "IsInputFocusCapturedByAnotherProcess", "DriverDebugRequest", "PerformFirmwareUpdate", "AcknowledgeQuit_Exiting", "AcknowledgeQuit_UserPrompt"); - } - public VR_IVRSystem_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRSystem_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRSystem_FnTable implements Structure.ByValue { - - }; + * OpenVR Function Pointer Tables
    + * native declaration : headers\openvr_capi.h:1416
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRSystem_FnTable extends Structure { + + /** C type : GetRecommendedRenderTargetSize_callback* */ + public VR_IVRSystem_FnTable.GetRecommendedRenderTargetSize_callback GetRecommendedRenderTargetSize; + /** C type : GetProjectionMatrix_callback* */ + public VR_IVRSystem_FnTable.GetProjectionMatrix_callback GetProjectionMatrix; + /** C type : GetProjectionRaw_callback* */ + public VR_IVRSystem_FnTable.GetProjectionRaw_callback GetProjectionRaw; + /** C type : ComputeDistortion_callback* */ + public VR_IVRSystem_FnTable.ComputeDistortion_callback ComputeDistortion; + /** C type : GetEyeToHeadTransform_callback* */ + public VR_IVRSystem_FnTable.GetEyeToHeadTransform_callback GetEyeToHeadTransform; + /** C type : GetTimeSinceLastVsync_callback* */ + public VR_IVRSystem_FnTable.GetTimeSinceLastVsync_callback GetTimeSinceLastVsync; + /** C type : GetD3D9AdapterIndex_callback* */ + public VR_IVRSystem_FnTable.GetD3D9AdapterIndex_callback GetD3D9AdapterIndex; + /** C type : GetDXGIOutputInfo_callback* */ + public com.jme3.system.jopenvr.VR_IVRExtendedDisplay_FnTable.GetDXGIOutputInfo_callback GetDXGIOutputInfo; + /** C type : GetOutputDevice_callback* */ + public VR_IVRSystem_FnTable.GetOutputDevice_callback GetOutputDevice; + /** C type : IsDisplayOnDesktop_callback* */ + public VR_IVRSystem_FnTable.IsDisplayOnDesktop_callback IsDisplayOnDesktop; + /** C type : SetDisplayVisibility_callback* */ + public VR_IVRSystem_FnTable.SetDisplayVisibility_callback SetDisplayVisibility; + /** C type : GetDeviceToAbsoluteTrackingPose_callback* */ + public VR_IVRSystem_FnTable.GetDeviceToAbsoluteTrackingPose_callback GetDeviceToAbsoluteTrackingPose; + /** C type : ResetSeatedZeroPose_callback* */ + public VR_IVRSystem_FnTable.ResetSeatedZeroPose_callback ResetSeatedZeroPose; + /** C type : GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback* */ + public VR_IVRSystem_FnTable.GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback GetSeatedZeroPoseToStandingAbsoluteTrackingPose; + /** C type : GetRawZeroPoseToStandingAbsoluteTrackingPose_callback* */ + public VR_IVRSystem_FnTable.GetRawZeroPoseToStandingAbsoluteTrackingPose_callback GetRawZeroPoseToStandingAbsoluteTrackingPose; + /** C type : GetSortedTrackedDeviceIndicesOfClass_callback* */ + public VR_IVRSystem_FnTable.GetSortedTrackedDeviceIndicesOfClass_callback GetSortedTrackedDeviceIndicesOfClass; + /** C type : GetTrackedDeviceActivityLevel_callback* */ + public VR_IVRSystem_FnTable.GetTrackedDeviceActivityLevel_callback GetTrackedDeviceActivityLevel; + /** C type : ApplyTransform_callback* */ + public VR_IVRSystem_FnTable.ApplyTransform_callback ApplyTransform; + /** C type : GetTrackedDeviceIndexForControllerRole_callback* */ + public VR_IVRSystem_FnTable.GetTrackedDeviceIndexForControllerRole_callback GetTrackedDeviceIndexForControllerRole; + /** C type : GetControllerRoleForTrackedDeviceIndex_callback* */ + public VR_IVRSystem_FnTable.GetControllerRoleForTrackedDeviceIndex_callback GetControllerRoleForTrackedDeviceIndex; + /** C type : GetTrackedDeviceClass_callback* */ + public VR_IVRSystem_FnTable.GetTrackedDeviceClass_callback GetTrackedDeviceClass; + /** C type : IsTrackedDeviceConnected_callback* */ + public VR_IVRSystem_FnTable.IsTrackedDeviceConnected_callback IsTrackedDeviceConnected; + /** C type : GetBoolTrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetBoolTrackedDeviceProperty_callback GetBoolTrackedDeviceProperty; + /** C type : GetFloatTrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetFloatTrackedDeviceProperty_callback GetFloatTrackedDeviceProperty; + /** C type : GetInt32TrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetInt32TrackedDeviceProperty_callback GetInt32TrackedDeviceProperty; + /** C type : GetUint64TrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetUint64TrackedDeviceProperty_callback GetUint64TrackedDeviceProperty; + /** C type : GetMatrix34TrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetMatrix34TrackedDeviceProperty_callback GetMatrix34TrackedDeviceProperty; + /** C type : GetStringTrackedDeviceProperty_callback* */ + public VR_IVRSystem_FnTable.GetStringTrackedDeviceProperty_callback GetStringTrackedDeviceProperty; + /** C type : GetPropErrorNameFromEnum_callback* */ + public VR_IVRSystem_FnTable.GetPropErrorNameFromEnum_callback GetPropErrorNameFromEnum; + /** C type : PollNextEvent_callback* */ + public VR_IVRSystem_FnTable.PollNextEvent_callback PollNextEvent; + /** C type : PollNextEventWithPose_callback* */ + public VR_IVRSystem_FnTable.PollNextEventWithPose_callback PollNextEventWithPose; + /** C type : GetEventTypeNameFromEnum_callback* */ + public VR_IVRSystem_FnTable.GetEventTypeNameFromEnum_callback GetEventTypeNameFromEnum; + /** C type : GetHiddenAreaMesh_callback* */ + public VR_IVRSystem_FnTable.GetHiddenAreaMesh_callback GetHiddenAreaMesh; + /** C type : GetControllerState_callback* */ + public VR_IVRSystem_FnTable.GetControllerState_callback GetControllerState; + /** C type : GetControllerStateWithPose_callback* */ + public VR_IVRSystem_FnTable.GetControllerStateWithPose_callback GetControllerStateWithPose; + /** C type : TriggerHapticPulse_callback* */ + public VR_IVRSystem_FnTable.TriggerHapticPulse_callback TriggerHapticPulse; + /** C type : GetButtonIdNameFromEnum_callback* */ + public VR_IVRSystem_FnTable.GetButtonIdNameFromEnum_callback GetButtonIdNameFromEnum; + /** C type : GetControllerAxisTypeNameFromEnum_callback* */ + public VR_IVRSystem_FnTable.GetControllerAxisTypeNameFromEnum_callback GetControllerAxisTypeNameFromEnum; + /** C type : CaptureInputFocus_callback* */ + public VR_IVRSystem_FnTable.CaptureInputFocus_callback CaptureInputFocus; + /** C type : ReleaseInputFocus_callback* */ + public VR_IVRSystem_FnTable.ReleaseInputFocus_callback ReleaseInputFocus; + /** C type : IsInputFocusCapturedByAnotherProcess_callback* */ + public VR_IVRSystem_FnTable.IsInputFocusCapturedByAnotherProcess_callback IsInputFocusCapturedByAnotherProcess; + /** C type : DriverDebugRequest_callback* */ + public VR_IVRSystem_FnTable.DriverDebugRequest_callback DriverDebugRequest; + /** C type : PerformFirmwareUpdate_callback* */ + public VR_IVRSystem_FnTable.PerformFirmwareUpdate_callback PerformFirmwareUpdate; + /** C type : AcknowledgeQuit_Exiting_callback* */ + public VR_IVRSystem_FnTable.AcknowledgeQuit_Exiting_callback AcknowledgeQuit_Exiting; + /** C type : AcknowledgeQuit_UserPrompt_callback* */ + public VR_IVRSystem_FnTable.AcknowledgeQuit_UserPrompt_callback AcknowledgeQuit_UserPrompt; + /** native declaration : headers\openvr_capi.h:1371 */ + public interface GetRecommendedRenderTargetSize_callback extends Callback { + void apply(IntByReference pnWidth, IntByReference pnHeight); + }; + /** native declaration : headers\openvr_capi.h:1372 */ + public interface GetProjectionMatrix_callback extends Callback { + com.jme3.system.jopenvr.HmdMatrix44_t.ByValue apply(int eEye, float fNearZ, float fFarZ); + }; + /** native declaration : headers\openvr_capi.h:1373 */ + public interface GetProjectionRaw_callback extends Callback { + void apply(int eEye, FloatByReference pfLeft, FloatByReference pfRight, FloatByReference pfTop, FloatByReference pfBottom); + }; + /** native declaration : headers\openvr_capi.h:1374 */ + public interface ComputeDistortion_callback extends Callback { + byte apply(int eEye, float fU, float fV, DistortionCoordinates_t pDistortionCoordinates); + }; + + /** native declaration : headers\openvr_capi.h:1375 */ + public interface GetEyeToHeadTransform_callback extends Callback { + HmdMatrix34_t.ByValue apply(int eEye); + }; + /** native declaration : headers\openvr_capi.h:1376 */ + public interface GetTimeSinceLastVsync_callback extends Callback { + byte apply(FloatByReference pfSecondsSinceLastVsync, LongByReference pulFrameCounter); + }; + /** native declaration : headers\openvr_capi.h:1377 */ + public interface GetD3D9AdapterIndex_callback extends Callback { + int apply(); + }; + /** native declaration : headers\openvr_capi.h:1378 */ + public interface GetDXGIOutputInfo_callback extends Callback { + void apply(IntByReference pnAdapterIndex); + }; + /** native declaration : headers\openvr_capi.h:1379 */ + public interface GetOutputDevice_callback extends Callback { + void apply(LongByReference pnDevice, int textureType); + }; + /** native declaration : headers\openvr_capi.h:1380 */ + public interface IsDisplayOnDesktop_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1381 */ + public interface SetDisplayVisibility_callback extends Callback { + byte apply(byte bIsVisibleOnDesktop); + }; + /** native declaration : headers\openvr_capi.h:1382 */ + public interface GetDeviceToAbsoluteTrackingPose_callback extends Callback { + void apply(int eOrigin, float fPredictedSecondsToPhotonsFromNow, TrackedDevicePose_t pTrackedDevicePoseArray, int unTrackedDevicePoseArrayCount); + }; + /** native declaration : headers\openvr_capi.h:1383 */ + public interface ResetSeatedZeroPose_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1384 */ + public interface GetSeatedZeroPoseToStandingAbsoluteTrackingPose_callback extends Callback { + HmdMatrix34_t.ByValue apply(); + }; + /** native declaration : headers\openvr_capi.h:1385 */ + public interface GetRawZeroPoseToStandingAbsoluteTrackingPose_callback extends Callback { + HmdMatrix34_t.ByValue apply(); + }; + /** native declaration : headers\openvr_capi.h:1386 */ + public interface GetSortedTrackedDeviceIndicesOfClass_callback extends Callback { + int apply(int eTrackedDeviceClass, IntByReference punTrackedDeviceIndexArray, int unTrackedDeviceIndexArrayCount, int unRelativeToTrackedDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1387 */ + public interface GetTrackedDeviceActivityLevel_callback extends Callback { + int apply(int unDeviceId); + }; + /** native declaration : headers\openvr_capi.h:1388 */ + public interface ApplyTransform_callback extends Callback { + void apply(TrackedDevicePose_t pOutputPose, TrackedDevicePose_t pTrackedDevicePose, HmdMatrix34_t pTransform); + }; + /** native declaration : headers\openvr_capi.h:1389 */ + public interface GetTrackedDeviceIndexForControllerRole_callback extends Callback { + int apply(int unDeviceType); + }; + /** native declaration : headers\openvr_capi.h:1390 */ + public interface GetControllerRoleForTrackedDeviceIndex_callback extends Callback { + int apply(int unDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1391 */ + public interface GetTrackedDeviceClass_callback extends Callback { + int apply(int unDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1392 */ + public interface IsTrackedDeviceConnected_callback extends Callback { + byte apply(int unDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1393 */ + public interface GetBoolTrackedDeviceProperty_callback extends Callback { + byte apply(int unDeviceIndex, int prop, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1394 */ + public interface GetFloatTrackedDeviceProperty_callback extends Callback { + float apply(int unDeviceIndex, int prop, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1395 */ + public interface GetInt32TrackedDeviceProperty_callback extends Callback { + int apply(int unDeviceIndex, int prop, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1396 */ + public interface GetUint64TrackedDeviceProperty_callback extends Callback { + long apply(int unDeviceIndex, int prop, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1397 */ + public interface GetMatrix34TrackedDeviceProperty_callback extends Callback { + HmdMatrix34_t.ByValue apply(int unDeviceIndex, int prop, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1398 */ + public interface GetStringTrackedDeviceProperty_callback extends Callback { + int apply(int unDeviceIndex, int prop, Pointer pchValue, int unBufferSize, IntByReference pError); + }; + /** native declaration : headers\openvr_capi.h:1399 */ + public interface GetPropErrorNameFromEnum_callback extends Callback { + Pointer apply(int error); + }; + /** native declaration : headers\openvr_capi.h:1400 */ + public interface PollNextEvent_callback extends Callback { + byte apply(VREvent_t pEvent, int uncbVREvent); + }; + /** native declaration : headers\openvr_capi.h:1401 */ + public interface PollNextEventWithPose_callback extends Callback { + byte apply(int eOrigin, VREvent_t pEvent, int uncbVREvent, TrackedDevicePose_t pTrackedDevicePose); + }; + /** native declaration : headers\openvr_capi.h:1402 */ + public interface GetEventTypeNameFromEnum_callback extends Callback { + Pointer apply(int eType); + }; + /** native declaration : headers\openvr_capi.h:1403 */ + public interface GetHiddenAreaMesh_callback extends Callback { + com.jme3.system.jopenvr.HiddenAreaMesh_t.ByValue apply(int eEye, int type); + }; + /** native declaration : headers\openvr_capi.h:1404 */ + public interface GetControllerState_callback extends Callback { + byte apply(int unControllerDeviceIndex, VRControllerState_t pControllerState, int unControllerStateSize); + }; + /** native declaration : headers\openvr_capi.h:1405 */ + public interface GetControllerStateWithPose_callback extends Callback { + byte apply(int eOrigin, int unControllerDeviceIndex, VRControllerState_t pControllerState, int unControllerStateSize, TrackedDevicePose_t pTrackedDevicePose); + }; + /** native declaration : headers\openvr_capi.h:1406 */ + public interface TriggerHapticPulse_callback extends Callback { + void apply(int unControllerDeviceIndex, int unAxisId, short usDurationMicroSec); + }; + /** native declaration : headers\openvr_capi.h:1407 */ + public interface GetButtonIdNameFromEnum_callback extends Callback { + Pointer apply(int eButtonId); + }; + /** native declaration : headers\openvr_capi.h:1408 */ + public interface GetControllerAxisTypeNameFromEnum_callback extends Callback { + Pointer apply(int eAxisType); + }; + /** native declaration : headers\openvr_capi.h:1409 */ + public interface CaptureInputFocus_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1410 */ + public interface ReleaseInputFocus_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1411 */ + public interface IsInputFocusCapturedByAnotherProcess_callback extends Callback { + byte apply(); + }; + /** native declaration : headers\openvr_capi.h:1412 */ + public interface DriverDebugRequest_callback extends Callback { + int apply(int unDeviceIndex, Pointer pchRequest, Pointer pchResponseBuffer, int unResponseBufferSize); + }; + /** native declaration : headers\openvr_capi.h:1413 */ + public interface PerformFirmwareUpdate_callback extends Callback { + int apply(int unDeviceIndex); + }; + /** native declaration : headers\openvr_capi.h:1414 */ + public interface AcknowledgeQuit_Exiting_callback extends Callback { + void apply(); + }; + /** native declaration : headers\openvr_capi.h:1415 */ + public interface AcknowledgeQuit_UserPrompt_callback extends Callback { + void apply(); + }; + public VR_IVRSystem_FnTable() { + super(); + } + protected List getFieldOrder() { + //return Arrays.asList("GetRecommendedRenderTargetSize", "GetProjectionMatrix", "GetProjectionRaw", "ComputeDistortion", "GetEyeToHeadTransform", "GetTimeSinceLastVsync", "GetD3D9AdapterIndex", "GetDXGIOutputInfo", "GetOutputDevice", "IsDisplayOnDesktop", "SetDisplayVisibility", "GetDeviceToAbsoluteTrackingPose", "ResetSeatedZeroPose", "GetSeatedZeroPoseToStandingAbsoluteTrackingPose", "GetRawZeroPoseToStandingAbsoluteTrackingPose", "GetSortedTrackedDeviceIndicesOfClass", "GetTrackedDeviceActivityLevel", "ApplyTransform", "GetTrackedDeviceIndexForControllerRole", "GetControllerRoleForTrackedDeviceIndex", "GetTrackedDeviceClass", "IsTrackedDeviceConnected", "GetBoolTrackedDeviceProperty", "GetFloatTrackedDeviceProperty", "GetInt32TrackedDeviceProperty", "GetUint64TrackedDeviceProperty", "GetMatrix34TrackedDeviceProperty", "GetStringTrackedDeviceProperty", "GetPropErrorNameFromEnum", "PollNextEvent", "PollNextEventWithPose", "GetEventTypeNameFromEnum", "GetHiddenAreaMesh", "GetControllerState", "GetControllerStateWithPose", "TriggerHapticPulse", "GetButtonIdNameFromEnum", "GetControllerAxisTypeNameFromEnum", "CaptureInputFocus", "ReleaseInputFocus", "IsInputFocusCapturedByAnotherProcess", "DriverDebugRequest", "PerformFirmwareUpdate", "AcknowledgeQuit_Exiting", "AcknowledgeQuit_UserPrompt"); + + return Arrays.asList("GetRecommendedRenderTargetSize", + "GetProjectionMatrix", + "GetProjectionRaw", + "ComputeDistortion", + "GetEyeToHeadTransform", + "GetTimeSinceLastVsync", + "GetD3D9AdapterIndex", + "GetDXGIOutputInfo", + "GetOutputDevice", + "IsDisplayOnDesktop", + "SetDisplayVisibility", + "GetDeviceToAbsoluteTrackingPose", + "ResetSeatedZeroPose", + "GetSeatedZeroPoseToStandingAbsoluteTrackingPose", + "GetRawZeroPoseToStandingAbsoluteTrackingPose", + "GetSortedTrackedDeviceIndicesOfClass", + "GetTrackedDeviceActivityLevel", + "ApplyTransform", + "GetTrackedDeviceIndexForControllerRole", + "GetControllerRoleForTrackedDeviceIndex", + "GetTrackedDeviceClass", + "IsTrackedDeviceConnected", + "GetBoolTrackedDeviceProperty", + "GetFloatTrackedDeviceProperty", + "GetInt32TrackedDeviceProperty", + "GetUint64TrackedDeviceProperty", + "GetMatrix34TrackedDeviceProperty", + "GetStringTrackedDeviceProperty", + "GetPropErrorNameFromEnum", + "PollNextEvent", + "PollNextEventWithPose", + "GetEventTypeNameFromEnum", + "GetHiddenAreaMesh", + "GetControllerState", + "GetControllerStateWithPose", + "TriggerHapticPulse", + "GetButtonIdNameFromEnum", + "GetControllerAxisTypeNameFromEnum", + "CaptureInputFocus", + "ReleaseInputFocus", + "IsInputFocusCapturedByAnotherProcess", + "DriverDebugRequest", + "PerformFirmwareUpdate", + "AcknowledgeQuit_Exiting", + "AcknowledgeQuit_UserPrompt"); + } + public VR_IVRSystem_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRSystem_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRSystem_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRTrackedCamera_FnTable.java b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRTrackedCamera_FnTable.java index ddb701b94..8b7cd78b2 100644 --- a/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRTrackedCamera_FnTable.java +++ b/jme3-vr/src/main/java/com/jme3/system/jopenvr/VR_IVRTrackedCamera_FnTable.java @@ -8,97 +8,97 @@ import com.sun.jna.ptr.PointerByReference; import java.util.Arrays; import java.util.List; /** - * native declaration : headers\openvr_capi.h:1419
    - * This file was autogenerated by JNAerator,
    - * a tool written by Olivier Chafik that uses a few opensource projects..
    - * For help, please visit NativeLibs4Java , Rococoa, or JNA. - */ -public class VR_IVRTrackedCamera_FnTable extends Structure { - /** C type : GetCameraErrorNameFromEnum_callback* */ - public VR_IVRTrackedCamera_FnTable.GetCameraErrorNameFromEnum_callback GetCameraErrorNameFromEnum; - /** C type : HasCamera_callback* */ - public VR_IVRTrackedCamera_FnTable.HasCamera_callback HasCamera; - /** C type : GetCameraFrameSize_callback* */ - public VR_IVRTrackedCamera_FnTable.GetCameraFrameSize_callback GetCameraFrameSize; - /** C type : GetCameraIntrinsics_callback* */ - public VR_IVRTrackedCamera_FnTable.GetCameraIntrinsics_callback GetCameraIntrinsics; - /** C type : GetCameraProjection_callback* */ - public VR_IVRTrackedCamera_FnTable.GetCameraProjection_callback GetCameraProjection; - /** C type : AcquireVideoStreamingService_callback* */ - public VR_IVRTrackedCamera_FnTable.AcquireVideoStreamingService_callback AcquireVideoStreamingService; - /** C type : ReleaseVideoStreamingService_callback* */ - public VR_IVRTrackedCamera_FnTable.ReleaseVideoStreamingService_callback ReleaseVideoStreamingService; - /** C type : GetVideoStreamFrameBuffer_callback* */ - public VR_IVRTrackedCamera_FnTable.GetVideoStreamFrameBuffer_callback GetVideoStreamFrameBuffer; - /** C type : GetVideoStreamTextureSize_callback* */ - public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureSize_callback GetVideoStreamTextureSize; - /** C type : GetVideoStreamTextureD3D11_callback* */ - public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureD3D11_callback GetVideoStreamTextureD3D11; - /** C type : GetVideoStreamTextureGL_callback* */ - public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureGL_callback GetVideoStreamTextureGL; - /** C type : ReleaseVideoStreamTextureGL_callback* */ - public VR_IVRTrackedCamera_FnTable.ReleaseVideoStreamTextureGL_callback ReleaseVideoStreamTextureGL; - /** native declaration : headers\openvr_capi.h:1407 */ - public interface GetCameraErrorNameFromEnum_callback extends Callback { - Pointer apply(int eCameraError); - }; - /** native declaration : headers\openvr_capi.h:1408 */ - public interface HasCamera_callback extends Callback { - int apply(int nDeviceIndex, Pointer pHasCamera); - }; - /** native declaration : headers\openvr_capi.h:1409 */ - public interface GetCameraFrameSize_callback extends Callback { - int apply(int nDeviceIndex, int eFrameType, IntByReference pnWidth, IntByReference pnHeight, IntByReference pnFrameBufferSize); - }; - /** native declaration : headers\openvr_capi.h:1410 */ - public interface GetCameraIntrinsics_callback extends Callback { - int apply(int nDeviceIndex, int eFrameType, HmdVector2_t pFocalLength, HmdVector2_t pCenter); - }; - /** native declaration : headers\openvr_capi.h:1411 */ - public interface GetCameraProjection_callback extends Callback { - int apply(int nDeviceIndex, int eFrameType, float flZNear, float flZFar, HmdMatrix44_t pProjection); - }; - /** native declaration : headers\openvr_capi.h:1412 */ - public interface AcquireVideoStreamingService_callback extends Callback { - int apply(int nDeviceIndex, LongByReference pHandle); - }; - /** native declaration : headers\openvr_capi.h:1413 */ - public interface ReleaseVideoStreamingService_callback extends Callback { - int apply(long hTrackedCamera); - }; - /** native declaration : headers\openvr_capi.h:1414 */ - public interface GetVideoStreamFrameBuffer_callback extends Callback { - int apply(long hTrackedCamera, int eFrameType, Pointer pFrameBuffer, int nFrameBufferSize, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); - }; - /** native declaration : headers\openvr_capi.h:1415 */ - public interface GetVideoStreamTextureSize_callback extends Callback { - int apply(int nDeviceIndex, int eFrameType, VRTextureBounds_t pTextureBounds, IntByReference pnWidth, IntByReference pnHeight); - }; - /** native declaration : headers\openvr_capi.h:1416 */ - public interface GetVideoStreamTextureD3D11_callback extends Callback { - int apply(long hTrackedCamera, int eFrameType, Pointer pD3D11DeviceOrResource, PointerByReference ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); - }; - /** native declaration : headers\openvr_capi.h:1417 */ - public interface GetVideoStreamTextureGL_callback extends Callback { - int apply(long hTrackedCamera, int eFrameType, IntByReference pglTextureId, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); - }; - /** native declaration : headers\openvr_capi.h:1418 */ - public interface ReleaseVideoStreamTextureGL_callback extends Callback { - int apply(long hTrackedCamera, int glTextureId); - }; - public VR_IVRTrackedCamera_FnTable() { - super(); - } - protected List getFieldOrder() { - return Arrays.asList("GetCameraErrorNameFromEnum", "HasCamera", "GetCameraFrameSize", "GetCameraIntrinsics", "GetCameraProjection", "AcquireVideoStreamingService", "ReleaseVideoStreamingService", "GetVideoStreamFrameBuffer", "GetVideoStreamTextureSize", "GetVideoStreamTextureD3D11", "GetVideoStreamTextureGL", "ReleaseVideoStreamTextureGL"); - } - public VR_IVRTrackedCamera_FnTable(Pointer peer) { - super(peer); - } - public static class ByReference extends VR_IVRTrackedCamera_FnTable implements Structure.ByReference { - - }; - public static class ByValue extends VR_IVRTrackedCamera_FnTable implements Structure.ByValue { - - }; + * native declaration : headers\openvr_capi.h:1450
    + * This file was autogenerated by JNAerator,
    + * a tool written by Olivier Chafik that uses a few opensource projects..
    + * For help, please visit NativeLibs4Java , Rococoa, or JNA. + */ +public class VR_IVRTrackedCamera_FnTable extends Structure { + /** C type : GetCameraErrorNameFromEnum_callback* */ + public VR_IVRTrackedCamera_FnTable.GetCameraErrorNameFromEnum_callback GetCameraErrorNameFromEnum; + /** C type : HasCamera_callback* */ + public VR_IVRTrackedCamera_FnTable.HasCamera_callback HasCamera; + /** C type : GetCameraFrameSize_callback* */ + public VR_IVRTrackedCamera_FnTable.GetCameraFrameSize_callback GetCameraFrameSize; + /** C type : GetCameraIntrinsics_callback* */ + public VR_IVRTrackedCamera_FnTable.GetCameraIntrinsics_callback GetCameraIntrinsics; + /** C type : GetCameraProjection_callback* */ + public VR_IVRTrackedCamera_FnTable.GetCameraProjection_callback GetCameraProjection; + /** C type : AcquireVideoStreamingService_callback* */ + public VR_IVRTrackedCamera_FnTable.AcquireVideoStreamingService_callback AcquireVideoStreamingService; + /** C type : ReleaseVideoStreamingService_callback* */ + public VR_IVRTrackedCamera_FnTable.ReleaseVideoStreamingService_callback ReleaseVideoStreamingService; + /** C type : GetVideoStreamFrameBuffer_callback* */ + public VR_IVRTrackedCamera_FnTable.GetVideoStreamFrameBuffer_callback GetVideoStreamFrameBuffer; + /** C type : GetVideoStreamTextureSize_callback* */ + public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureSize_callback GetVideoStreamTextureSize; + /** C type : GetVideoStreamTextureD3D11_callback* */ + public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureD3D11_callback GetVideoStreamTextureD3D11; + /** C type : GetVideoStreamTextureGL_callback* */ + public VR_IVRTrackedCamera_FnTable.GetVideoStreamTextureGL_callback GetVideoStreamTextureGL; + /** C type : ReleaseVideoStreamTextureGL_callback* */ + public VR_IVRTrackedCamera_FnTable.ReleaseVideoStreamTextureGL_callback ReleaseVideoStreamTextureGL; + /** native declaration : headers\openvr_capi.h:1438 */ + public interface GetCameraErrorNameFromEnum_callback extends Callback { + Pointer apply(int eCameraError); + }; + /** native declaration : headers\openvr_capi.h:1439 */ + public interface HasCamera_callback extends Callback { + int apply(int nDeviceIndex, Pointer pHasCamera); + }; + /** native declaration : headers\openvr_capi.h:1440 */ + public interface GetCameraFrameSize_callback extends Callback { + int apply(int nDeviceIndex, int eFrameType, IntByReference pnWidth, IntByReference pnHeight, IntByReference pnFrameBufferSize); + }; + /** native declaration : headers\openvr_capi.h:1441 */ + public interface GetCameraIntrinsics_callback extends Callback { + int apply(int nDeviceIndex, int eFrameType, HmdVector2_t pFocalLength, HmdVector2_t pCenter); + }; + /** native declaration : headers\openvr_capi.h:1442 */ + public interface GetCameraProjection_callback extends Callback { + int apply(int nDeviceIndex, int eFrameType, float flZNear, float flZFar, HmdMatrix44_t pProjection); + }; + /** native declaration : headers\openvr_capi.h:1443 */ + public interface AcquireVideoStreamingService_callback extends Callback { + int apply(int nDeviceIndex, LongByReference pHandle); + }; + /** native declaration : headers\openvr_capi.h:1444 */ + public interface ReleaseVideoStreamingService_callback extends Callback { + int apply(long hTrackedCamera); + }; + /** native declaration : headers\openvr_capi.h:1445 */ + public interface GetVideoStreamFrameBuffer_callback extends Callback { + int apply(long hTrackedCamera, int eFrameType, Pointer pFrameBuffer, int nFrameBufferSize, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); + }; + /** native declaration : headers\openvr_capi.h:1446 */ + public interface GetVideoStreamTextureSize_callback extends Callback { + int apply(int nDeviceIndex, int eFrameType, VRTextureBounds_t pTextureBounds, IntByReference pnWidth, IntByReference pnHeight); + }; + /** native declaration : headers\openvr_capi.h:1447 */ + public interface GetVideoStreamTextureD3D11_callback extends Callback { + int apply(long hTrackedCamera, int eFrameType, Pointer pD3D11DeviceOrResource, PointerByReference ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); + }; + /** native declaration : headers\openvr_capi.h:1448 */ + public interface GetVideoStreamTextureGL_callback extends Callback { + int apply(long hTrackedCamera, int eFrameType, IntByReference pglTextureId, CameraVideoStreamFrameHeader_t pFrameHeader, int nFrameHeaderSize); + }; + /** native declaration : headers\openvr_capi.h:1449 */ + public interface ReleaseVideoStreamTextureGL_callback extends Callback { + int apply(long hTrackedCamera, int glTextureId); + }; + public VR_IVRTrackedCamera_FnTable() { + super(); + } + protected List getFieldOrder() { + return Arrays.asList("GetCameraErrorNameFromEnum", "HasCamera", "GetCameraFrameSize", "GetCameraIntrinsics", "GetCameraProjection", "AcquireVideoStreamingService", "ReleaseVideoStreamingService", "GetVideoStreamFrameBuffer", "GetVideoStreamTextureSize", "GetVideoStreamTextureD3D11", "GetVideoStreamTextureGL", "ReleaseVideoStreamTextureGL"); + } + public VR_IVRTrackedCamera_FnTable(Pointer peer) { + super(peer); + } + public static class ByReference extends VR_IVRTrackedCamera_FnTable implements Structure.ByReference { + + }; + public static class ByValue extends VR_IVRTrackedCamera_FnTable implements Structure.ByValue { + + }; } diff --git a/jme3-vr/src/main/java/com/jme3/system/lwjgl/LwjglWindowVR.java b/jme3-vr/src/main/java/com/jme3/system/lwjgl/LwjglWindowVR.java index 95a1f8420..4bcad1876 100644 --- a/jme3-vr/src/main/java/com/jme3/system/lwjgl/LwjglWindowVR.java +++ b/jme3-vr/src/main/java/com/jme3/system/lwjgl/LwjglWindowVR.java @@ -1,7 +1,7 @@ package com.jme3.system.lwjgl; /* - * Copyright (c) 2009-2012 jMonkeyEngine + * Copyright (c) 2009-2018 jMonkeyEngine * All rights reserved. * * Redistribution and use in source and binary forms, with or without @@ -101,7 +101,7 @@ public abstract class LwjglWindowVR extends LwjglContextVR implements Runnable { } /** - * Set the title if its a windowed display + * Set the title if it's a windowed display * * @param title the title to set */ @@ -112,7 +112,7 @@ public abstract class LwjglWindowVR extends LwjglContextVR implements Runnable { } /** - * Restart if its a windowed or full-screen display. + * Restart if it's a windowed or full-screen display. */ public void restart() { if (created.get()) { diff --git a/jme3-vr/src/main/java/com/jme3/util/VRGUIPositioningMode.java b/jme3-vr/src/main/java/com/jme3/util/VRGUIPositioningMode.java index a7b8642f0..570a9be68 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRGUIPositioningMode.java +++ b/jme3-vr/src/main/java/com/jme3/util/VRGUIPositioningMode.java @@ -2,7 +2,7 @@ package com.jme3.util; /** * A enumeration that describes the GUI display positioning modes. - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * */ public enum VRGUIPositioningMode { diff --git a/jme3-vr/src/main/java/com/jme3/util/VRGuiManager.java b/jme3-vr/src/main/java/com/jme3/util/VRGuiManager.java index 46b3dbbb6..a5a4d89e8 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRGuiManager.java +++ b/jme3-vr/src/main/java/com/jme3/util/VRGuiManager.java @@ -30,7 +30,7 @@ import java.util.Iterator; /** * A class dedicated to the management and the display of a Graphical User Interface (GUI) within a VR environment. * @author reden - phr00t - https://github.com/phr00t - * @author Julien Seinturier - (c) 2016 - JOrigin project - http:/www.jorigin.org + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr * */ public class VRGuiManager { @@ -76,6 +76,14 @@ public class VRGuiManager { this.environment = environment; } + public boolean isWantsReposition() { + return wantsReposition; + } + + public void setWantsReposition(boolean wantsReposition) { + this.wantsReposition = wantsReposition; + } + /** * * Makes auto GUI positioning happen not immediately, but like an @@ -204,7 +212,7 @@ public class VRGuiManager { /** * Update the GUI geometric state. This method should be called after GUI modification. */ - protected void updateGuiQuadGeometricState() { + public void updateGuiQuadGeometricState() { guiQuadNode.updateGeometricState(); } @@ -212,7 +220,7 @@ public class VRGuiManager { * Position the GUI without delay. * @param tpf the time per frame. */ - protected void positionGuiNow(float tpf) { + public void positionGuiNow(float tpf) { if (environment != null){ wantsReposition = false; @@ -347,7 +355,7 @@ public class VRGuiManager { * @param left the left eye viewport. * @param right the right eye viewport. */ - protected void setupGui(Camera leftcam, Camera rightcam, ViewPort left, ViewPort right) { + public void setupGui(Camera leftcam, Camera rightcam, ViewPort left, ViewPort right) { if (environment != null){ if( environment.hasTraditionalGUIOverlay() ) { diff --git a/jme3-vr/src/main/java/com/jme3/util/VRUtil.java b/jme3-vr/src/main/java/com/jme3/util/VRUtil.java index 37de4a2b8..9111e340f 100644 --- a/jme3-vr/src/main/java/com/jme3/util/VRUtil.java +++ b/jme3-vr/src/main/java/com/jme3/util/VRUtil.java @@ -12,7 +12,11 @@ import com.jme3.system.jopenvr.HmdMatrix44_t; import java.util.concurrent.TimeUnit; - +/** + * + * @author Julien Seinturier - COMEX SA - http://www.seinturier.fr + * + */ public class VRUtil { private static final long SLEEP_PRECISION = TimeUnit.MILLISECONDS.toNanos(4);