Initial commit with files
This commit is contained in:
commit
b01c1c62db
|
@ -0,0 +1,4 @@
|
|||
node_modules/
|
||||
build/
|
||||
build/contracts/
|
||||
truffle-config.js
|
Binary file not shown.
After Width: | Height: | Size: 111 KiB |
Binary file not shown.
After Width: | Height: | Size: 5.3 KiB |
|
@ -0,0 +1,28 @@
|
|||
// Grab NODE_ENV and REACT_APP_* environment variables and prepare them to be
|
||||
// injected into the application via DefinePlugin in Webpack configuration.
|
||||
|
||||
var REACT_APP = /^REACT_APP_/i;
|
||||
|
||||
function getClientEnvironment(publicUrl) {
|
||||
var processEnv = Object
|
||||
.keys(process.env)
|
||||
.filter(key => REACT_APP.test(key))
|
||||
.reduce((env, key) => {
|
||||
env[key] = JSON.stringify(process.env[key]);
|
||||
return env;
|
||||
}, {
|
||||
// Useful for determining whether we’re running in production mode.
|
||||
// Most importantly, it switches React into the correct mode.
|
||||
'NODE_ENV': JSON.stringify(
|
||||
process.env.NODE_ENV || 'development'
|
||||
),
|
||||
// Useful for resolving the correct path to static assets in `public`.
|
||||
// For example, <img src={process.env.PUBLIC_URL + '/img/logo.png'} />.
|
||||
// This should only be used as an escape hatch. Normally you would put
|
||||
// images into the `src` and `import` them in code to get their paths.
|
||||
'PUBLIC_URL': JSON.stringify(publicUrl)
|
||||
});
|
||||
return {'process.env': processEnv};
|
||||
}
|
||||
|
||||
module.exports = getClientEnvironment;
|
|
@ -0,0 +1,12 @@
|
|||
// This is a custom Jest transformer turning style imports into empty objects.
|
||||
// http://facebook.github.io/jest/docs/tutorial-webpack.html
|
||||
|
||||
module.exports = {
|
||||
process() {
|
||||
return 'module.exports = {};';
|
||||
},
|
||||
getCacheKey(fileData, filename) {
|
||||
// The output is always the same.
|
||||
return 'cssTransform';
|
||||
},
|
||||
};
|
|
@ -0,0 +1,10 @@
|
|||
const path = require('path');
|
||||
|
||||
// This is a custom Jest transformer turning file imports into filenames.
|
||||
// http://facebook.github.io/jest/docs/tutorial-webpack.html
|
||||
|
||||
module.exports = {
|
||||
process(src, filename) {
|
||||
return 'module.exports = ' + JSON.stringify(path.basename(filename)) + ';';
|
||||
},
|
||||
};
|
|
@ -0,0 +1,46 @@
|
|||
var path = require('path');
|
||||
var fs = require('fs');
|
||||
|
||||
// Make sure any symlinks in the project folder are resolved:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/637
|
||||
var appDirectory = fs.realpathSync(process.cwd());
|
||||
function resolveApp(relativePath) {
|
||||
return path.resolve(appDirectory, relativePath);
|
||||
}
|
||||
|
||||
// We support resolving modules according to `NODE_PATH`.
|
||||
// This lets you use absolute paths in imports inside large monorepos:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253.
|
||||
|
||||
// It works similar to `NODE_PATH` in Node itself:
|
||||
// https://nodejs.org/api/modules.html#modules_loading_from_the_global_folders
|
||||
|
||||
// We will export `nodePaths` as an array of absolute paths.
|
||||
// It will then be used by Webpack configs.
|
||||
// Jest doesn’t need this because it already handles `NODE_PATH` out of the box.
|
||||
|
||||
// Note that unlike in Node, only *relative* paths from `NODE_PATH` are honored.
|
||||
// Otherwise, we risk importing Node.js core modules into an app instead of Webpack shims.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/1023#issuecomment-265344421
|
||||
|
||||
var nodePaths = (process.env.NODE_PATH || '')
|
||||
.split(process.platform === 'win32' ? ';' : ':')
|
||||
.filter(Boolean)
|
||||
.filter(folder => !path.isAbsolute(folder))
|
||||
.map(resolveApp);
|
||||
|
||||
// config after eject: we're in ./config/
|
||||
module.exports = {
|
||||
// Changed from build to build_webpack so smart contract compilations are not overwritten.
|
||||
appBuild: resolveApp('build_webpack'),
|
||||
appPublic: resolveApp('public'),
|
||||
appHtml: resolveApp('public/index.html'),
|
||||
appIndexJs: resolveApp('src/index.js'),
|
||||
appPackageJson: resolveApp('package.json'),
|
||||
appSrc: resolveApp('src'),
|
||||
yarnLockFile: resolveApp('yarn.lock'),
|
||||
testsSetup: resolveApp('src/setupTests.js'),
|
||||
appNodeModules: resolveApp('node_modules'),
|
||||
ownNodeModules: resolveApp('node_modules'),
|
||||
nodePaths: nodePaths
|
||||
};
|
|
@ -0,0 +1,14 @@
|
|||
if (typeof Promise === 'undefined') {
|
||||
// Rejection tracking prevents a common issue where React gets into an
|
||||
// inconsistent state due to an error, but it gets swallowed by a Promise,
|
||||
// and the user has no idea what causes React's erratic future behavior.
|
||||
require('promise/lib/rejection-tracking').enable();
|
||||
window.Promise = require('promise/lib/es6-extensions.js');
|
||||
}
|
||||
|
||||
// fetch() polyfill for making API calls.
|
||||
require('whatwg-fetch');
|
||||
|
||||
// Object.assign() is commonly used with React.
|
||||
// It will use the native implementation if it's present and isn't buggy.
|
||||
Object.assign = require('object-assign');
|
|
@ -0,0 +1,242 @@
|
|||
var autoprefixer = require('autoprefixer');
|
||||
var webpack = require('webpack');
|
||||
var HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
var CaseSensitivePathsPlugin = require('case-sensitive-paths-webpack-plugin');
|
||||
var InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
|
||||
var WatchMissingNodeModulesPlugin = require('react-dev-utils/WatchMissingNodeModulesPlugin');
|
||||
var getClientEnvironment = require('./env');
|
||||
var paths = require('./paths');
|
||||
|
||||
|
||||
|
||||
// Webpack uses `publicPath` to determine where the app is being served from.
|
||||
// In development, we always serve from the root. This makes config easier.
|
||||
var publicPath = '/';
|
||||
// `publicUrl` is just like `publicPath`, but we will provide it to our app
|
||||
// as %PUBLIC_URL% in `index.html` and `process.env.PUBLIC_URL` in JavaScript.
|
||||
// Omit trailing slash as %PUBLIC_PATH%/xyz looks better than %PUBLIC_PATH%xyz.
|
||||
var publicUrl = '';
|
||||
// Get environment variables to inject into our app.
|
||||
var env = getClientEnvironment(publicUrl);
|
||||
|
||||
// This is the development configuration.
|
||||
// It is focused on developer experience and fast rebuilds.
|
||||
// The production configuration is different and lives in a separate file.
|
||||
module.exports = {
|
||||
// You may want 'eval' instead if you prefer to see the compiled output in DevTools.
|
||||
// See the discussion in https://github.com/facebookincubator/create-react-app/issues/343.
|
||||
devtool: 'cheap-module-source-map',
|
||||
// These are the "entry points" to our application.
|
||||
// This means they will be the "root" imports that are included in JS bundle.
|
||||
// The first two entry points enable "hot" CSS and auto-refreshes for JS.
|
||||
entry: [
|
||||
// Include an alternative client for WebpackDevServer. A client's job is to
|
||||
// connect to WebpackDevServer by a socket and get notified about changes.
|
||||
// When you save a file, the client will either apply hot updates (in case
|
||||
// of CSS changes), or refresh the page (in case of JS changes). When you
|
||||
// make a syntax error, this client will display a syntax error overlay.
|
||||
// Note: instead of the default WebpackDevServer client, we use a custom one
|
||||
// to bring better experience for Create React App users. You can replace
|
||||
// the line below with these two lines if you prefer the stock client:
|
||||
// require.resolve('webpack-dev-server/client') + '?/',
|
||||
// require.resolve('webpack/hot/dev-server'),
|
||||
require.resolve('react-dev-utils/webpackHotDevClient'),
|
||||
// We ship a few polyfills by default:
|
||||
require.resolve('./polyfills'),
|
||||
// Finally, this is your app's code:
|
||||
paths.appIndexJs
|
||||
// We include the app code last so that if there is a runtime error during
|
||||
// initialization, it doesn't blow up the WebpackDevServer client, and
|
||||
// changing JS code would still trigger a refresh.
|
||||
],
|
||||
output: {
|
||||
// Next line is not used in dev but WebpackDevServer crashes without it:
|
||||
path: paths.appBuild,
|
||||
// Add /* filename */ comments to generated require()s in the output.
|
||||
pathinfo: true,
|
||||
// This does not produce a real file. It's just the virtual path that is
|
||||
// served by WebpackDevServer in development. This is the JS bundle
|
||||
// containing code from all our entry points, and the Webpack runtime.
|
||||
filename: 'static/js/bundle.js',
|
||||
// This is the URL that app is served from. We use "/" in development.
|
||||
publicPath: publicPath
|
||||
},
|
||||
resolve: {
|
||||
// This allows you to set a fallback for where Webpack should look for modules.
|
||||
// We read `NODE_PATH` environment variable in `paths.js` and pass paths here.
|
||||
// We use `fallback` instead of `root` because we want `node_modules` to "win"
|
||||
// if there any conflicts. This matches Node resolution mechanism.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253
|
||||
fallback: paths.nodePaths,
|
||||
// These are the reasonable defaults supported by the Node ecosystem.
|
||||
// We also include JSX as a common component filename extension to support
|
||||
// some tools, although we do not recommend using it, see:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/290
|
||||
extensions: ['.js', '.json', '.jsx', ''],
|
||||
alias: {
|
||||
// Support React Native Web
|
||||
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
|
||||
'react-native': 'react-native-web'
|
||||
}
|
||||
},
|
||||
|
||||
module: {
|
||||
// First, run the linter.
|
||||
// It's important to do this before Babel processes the JS.
|
||||
preLoaders: [
|
||||
{
|
||||
test: /\.(js|jsx)$/,
|
||||
loader: 'eslint',
|
||||
include: paths.appSrc,
|
||||
}
|
||||
],
|
||||
loaders: [
|
||||
// Default loader: load all assets that are not handled
|
||||
// by other loaders with the url loader.
|
||||
// Note: This list needs to be updated with every change of extensions
|
||||
// the other loaders match.
|
||||
// E.g., when adding a loader for a new supported file extension,
|
||||
// we need to add the supported extension to this loader too.
|
||||
// Add one new line in `exclude` for each loader.
|
||||
//
|
||||
// "file" loader makes sure those assets get served by WebpackDevServer.
|
||||
// When you `import` an asset, you get its (virtual) filename.
|
||||
// In production, they would get copied to the `build` folder.
|
||||
// "url" loader works like "file" loader except that it embeds assets
|
||||
// smaller than specified limit in bytes as data URLs to avoid requests.
|
||||
// A missing `test` is equivalent to a match.
|
||||
{
|
||||
exclude: [
|
||||
/\.html$/,
|
||||
/\.(js|jsx)$/,
|
||||
/\.css$/,
|
||||
/\.json$/,
|
||||
/\.woff$/,
|
||||
/\.woff2$/,
|
||||
/\.(ttf|svg|eot)$/
|
||||
],
|
||||
loader: 'url',
|
||||
query: {
|
||||
limit: 10000,
|
||||
name: 'static/media/[name].[hash:8].[ext]'
|
||||
}
|
||||
},
|
||||
// Process JS with Babel.
|
||||
{
|
||||
test: /\.(js|jsx)$/,
|
||||
include: paths.appSrc,
|
||||
loader: 'babel',
|
||||
query: {
|
||||
|
||||
// This is a feature of `babel-loader` for webpack (not Babel itself).
|
||||
// It enables caching results in ./node_modules/.cache/babel-loader/
|
||||
// directory for faster rebuilds.
|
||||
cacheDirectory: true
|
||||
}
|
||||
},
|
||||
// "postcss" loader applies autoprefixer to our CSS.
|
||||
// "css" loader resolves paths in CSS and adds assets as dependencies.
|
||||
// "style" loader turns CSS into JS modules that inject <style> tags.
|
||||
// In production, we use a plugin to extract that CSS to a file, but
|
||||
// in development "style" loader enables hot editing of CSS.
|
||||
{
|
||||
test: /\.css$/,
|
||||
loader: 'style!css?importLoaders=1!postcss'
|
||||
},
|
||||
// JSON is not enabled by default in Webpack but both Node and Browserify
|
||||
// allow it implicitly so we also enable it.
|
||||
{
|
||||
test: /\.json$/,
|
||||
loader: 'json'
|
||||
},
|
||||
// "file" loader for svg
|
||||
{
|
||||
test: /\.svg$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'static/media/[name].[hash:8].[ext]'
|
||||
}
|
||||
},
|
||||
// "file" loader for fonts
|
||||
{
|
||||
test: /\.woff$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.woff2$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.(ttf|eot)$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
},
|
||||
// Truffle solidity loader to watch for changes in Solitiy files and hot
|
||||
// reload contracts with webpack.
|
||||
//
|
||||
// CURRENTLY REMOVED DUE TO INCOMPATIBILITY WITH TRUFFLE 3
|
||||
// Compile and migrate contracts manually.
|
||||
//
|
||||
/*{
|
||||
test: /\.sol$/,
|
||||
loader: 'truffle-solidity?network_id=123'
|
||||
}*/
|
||||
]
|
||||
},
|
||||
|
||||
// We use PostCSS for autoprefixing only.
|
||||
postcss: function() {
|
||||
return [
|
||||
autoprefixer({
|
||||
browsers: [
|
||||
'>1%',
|
||||
'last 4 versions',
|
||||
'Firefox ESR',
|
||||
'not ie < 9', // React doesn't support IE8 anyway
|
||||
]
|
||||
}),
|
||||
];
|
||||
},
|
||||
plugins: [
|
||||
// Makes the public URL available as %PUBLIC_URL% in index.html, e.g.:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In development, this will be an empty string.
|
||||
new InterpolateHtmlPlugin({
|
||||
PUBLIC_URL: publicUrl
|
||||
}),
|
||||
// Generates an `index.html` file with the <script> injected.
|
||||
new HtmlWebpackPlugin({
|
||||
inject: true,
|
||||
template: paths.appHtml,
|
||||
}),
|
||||
// Makes some environment variables available to the JS code, for example:
|
||||
// if (process.env.NODE_ENV === 'development') { ... }. See `./env.js`.
|
||||
new webpack.DefinePlugin(env),
|
||||
// This is necessary to emit hot updates (currently CSS only):
|
||||
new webpack.HotModuleReplacementPlugin(),
|
||||
// Watcher doesn't work well if you mistype casing in a path so we use
|
||||
// a plugin that prints an error when you attempt to do this.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/240
|
||||
new CaseSensitivePathsPlugin(),
|
||||
// If you require a missing module and then `npm install` it, you still have
|
||||
// to restart the development server for Webpack to discover it. This plugin
|
||||
// makes the discovery automatic so you don't have to restart.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/186
|
||||
new WatchMissingNodeModulesPlugin(paths.appNodeModules)
|
||||
],
|
||||
// Some libraries import Node modules but don't use them in the browser.
|
||||
// Tell Webpack to provide empty mocks for them so importing them works.
|
||||
node: {
|
||||
fs: 'empty',
|
||||
net: 'empty',
|
||||
tls: 'empty'
|
||||
}
|
||||
};
|
|
@ -0,0 +1,269 @@
|
|||
var autoprefixer = require('autoprefixer');
|
||||
var webpack = require('webpack');
|
||||
var HtmlWebpackPlugin = require('html-webpack-plugin');
|
||||
var ExtractTextPlugin = require('extract-text-webpack-plugin');
|
||||
var ManifestPlugin = require('webpack-manifest-plugin');
|
||||
var InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
|
||||
var url = require('url');
|
||||
var paths = require('./paths');
|
||||
var getClientEnvironment = require('./env');
|
||||
|
||||
|
||||
|
||||
function ensureSlash(path, needsSlash) {
|
||||
var hasSlash = path.endsWith('/');
|
||||
if (hasSlash && !needsSlash) {
|
||||
return path.substr(path, path.length - 1);
|
||||
} else if (!hasSlash && needsSlash) {
|
||||
return path + '/';
|
||||
} else {
|
||||
return path;
|
||||
}
|
||||
}
|
||||
|
||||
// We use "homepage" field to infer "public path" at which the app is served.
|
||||
// Webpack needs to know it to put the right <script> hrefs into HTML even in
|
||||
// single-page apps that may serve index.html for nested URLs like /todos/42.
|
||||
// We can't use a relative path in HTML because we don't want to load something
|
||||
// like /todos/42/static/js/bundle.7289d.js. We have to know the root.
|
||||
var homepagePath = require(paths.appPackageJson).homepage;
|
||||
var homepagePathname = homepagePath ? url.parse(homepagePath).pathname : '/';
|
||||
// Webpack uses `publicPath` to determine where the app is being served from.
|
||||
// It requires a trailing slash, or the file assets will get an incorrect path.
|
||||
var publicPath = ensureSlash(homepagePathname, true);
|
||||
// `publicUrl` is just like `publicPath`, but we will provide it to our app
|
||||
// as %PUBLIC_URL% in `index.html` and `process.env.PUBLIC_URL` in JavaScript.
|
||||
// Omit trailing slash as %PUBLIC_PATH%/xyz looks better than %PUBLIC_PATH%xyz.
|
||||
var publicUrl = ensureSlash(homepagePathname, false);
|
||||
// Get environment variables to inject into our app.
|
||||
var env = getClientEnvironment(publicUrl);
|
||||
|
||||
// Assert this just to be safe.
|
||||
// Development builds of React are slow and not intended for production.
|
||||
if (env['process.env'].NODE_ENV !== '"production"') {
|
||||
throw new Error('Production builds must have NODE_ENV=production.');
|
||||
}
|
||||
|
||||
// This is the production configuration.
|
||||
// It compiles slowly and is focused on producing a fast and minimal bundle.
|
||||
// The development configuration is different and lives in a separate file.
|
||||
module.exports = {
|
||||
// Don't attempt to continue if there are any errors.
|
||||
bail: true,
|
||||
// We generate sourcemaps in production. This is slow but gives good results.
|
||||
// You can exclude the *.map files from the build during deployment.
|
||||
devtool: 'source-map',
|
||||
// In production, we only want to load the polyfills and the app code.
|
||||
entry: [
|
||||
require.resolve('./polyfills'),
|
||||
paths.appIndexJs
|
||||
],
|
||||
output: {
|
||||
// The build folder.
|
||||
path: paths.appBuild,
|
||||
// Generated JS file names (with nested folders).
|
||||
// There will be one main bundle, and one file per asynchronous chunk.
|
||||
// We don't currently advertise code splitting but Webpack supports it.
|
||||
filename: 'static/js/[name].[chunkhash:8].js',
|
||||
chunkFilename: 'static/js/[name].[chunkhash:8].chunk.js',
|
||||
// We inferred the "public path" (such as / or /my-project) from homepage.
|
||||
publicPath: publicPath
|
||||
},
|
||||
resolve: {
|
||||
// This allows you to set a fallback for where Webpack should look for modules.
|
||||
// We read `NODE_PATH` environment variable in `paths.js` and pass paths here.
|
||||
// We use `fallback` instead of `root` because we want `node_modules` to "win"
|
||||
// if there any conflicts. This matches Node resolution mechanism.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/253
|
||||
fallback: paths.nodePaths,
|
||||
// These are the reasonable defaults supported by the Node ecosystem.
|
||||
// We also include JSX as a common component filename extension to support
|
||||
// some tools, although we do not recommend using it, see:
|
||||
// https://github.com/facebookincubator/create-react-app/issues/290
|
||||
extensions: ['.js', '.json', '.jsx', ''],
|
||||
alias: {
|
||||
// Support React Native Web
|
||||
// https://www.smashingmagazine.com/2016/08/a-glimpse-into-the-future-with-react-native-for-web/
|
||||
'react-native': 'react-native-web'
|
||||
}
|
||||
},
|
||||
|
||||
module: {
|
||||
// First, run the linter.
|
||||
// It's important to do this before Babel processes the JS.
|
||||
preLoaders: [
|
||||
{
|
||||
test: /\.(js|jsx)$/,
|
||||
loader: 'eslint',
|
||||
include: paths.appSrc
|
||||
}
|
||||
],
|
||||
loaders: [
|
||||
// Default loader: load all assets that are not handled
|
||||
// by other loaders with the url loader.
|
||||
// Note: This list needs to be updated with every change of extensions
|
||||
// the other loaders match.
|
||||
// E.g., when adding a loader for a new supported file extension,
|
||||
// we need to add the supported extension to this loader too.
|
||||
// Add one new line in `exclude` for each loader.
|
||||
//
|
||||
// "file" loader makes sure those assets end up in the `build` folder.
|
||||
// When you `import` an asset, you get its filename.
|
||||
// "url" loader works just like "file" loader but it also embeds
|
||||
// assets smaller than specified size as data URLs to avoid requests.
|
||||
{
|
||||
exclude: [
|
||||
/\.html$/,
|
||||
/\.(js|jsx)$/,
|
||||
/\.css$/,
|
||||
/\.json$/,
|
||||
/\.woff$/,
|
||||
/\.woff2$/,
|
||||
/\.(ttf|svg|eot)$/
|
||||
],
|
||||
loader: 'url',
|
||||
query: {
|
||||
limit: 10000,
|
||||
name: 'static/media/[name].[hash:8].[ext]'
|
||||
}
|
||||
},
|
||||
// Process JS with Babel.
|
||||
{
|
||||
test: /\.(js|jsx)$/,
|
||||
include: paths.appSrc,
|
||||
loader: 'babel',
|
||||
},
|
||||
// The notation here is somewhat confusing.
|
||||
// "postcss" loader applies autoprefixer to our CSS.
|
||||
// "css" loader resolves paths in CSS and adds assets as dependencies.
|
||||
// "style" loader normally turns CSS into JS modules injecting <style>,
|
||||
// but unlike in development configuration, we do something different.
|
||||
// `ExtractTextPlugin` first applies the "postcss" and "css" loaders
|
||||
// (second argument), then grabs the result CSS and puts it into a
|
||||
// separate file in our build process. This way we actually ship
|
||||
// a single CSS file in production instead of JS code injecting <style>
|
||||
// tags. If you use code splitting, however, any async bundles will still
|
||||
// use the "style" loader inside the async code so CSS from them won't be
|
||||
// in the main CSS file.
|
||||
{
|
||||
test: /\.css$/,
|
||||
loader: ExtractTextPlugin.extract('style', 'css?importLoaders=1!postcss')
|
||||
// Note: this won't work without `new ExtractTextPlugin()` in `plugins`.
|
||||
},
|
||||
// JSON is not enabled by default in Webpack but both Node and Browserify
|
||||
// allow it implicitly so we also enable it.
|
||||
{
|
||||
test: /\.json$/,
|
||||
loader: 'json'
|
||||
},
|
||||
// "file" loader for svg
|
||||
{
|
||||
test: /\.svg$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'static/media/[name].[hash:8].[ext]'
|
||||
}
|
||||
},
|
||||
// "file" loader for fonts
|
||||
{
|
||||
test: /\.woff$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.woff2$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.(ttf|eot)$/,
|
||||
loader: 'file',
|
||||
query: {
|
||||
name: 'fonts/[name].[hash].[ext]'
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
// We use PostCSS for autoprefixing only.
|
||||
postcss: function() {
|
||||
return [
|
||||
autoprefixer({
|
||||
browsers: [
|
||||
'>1%',
|
||||
'last 4 versions',
|
||||
'Firefox ESR',
|
||||
'not ie < 9', // React doesn't support IE8 anyway
|
||||
]
|
||||
}),
|
||||
];
|
||||
},
|
||||
plugins: [
|
||||
// Makes the public URL available as %PUBLIC_URL% in index.html, e.g.:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In production, it will be an empty string unless you specify "homepage"
|
||||
// in `package.json`, in which case it will be the pathname of that URL.
|
||||
new InterpolateHtmlPlugin({
|
||||
PUBLIC_URL: publicUrl
|
||||
}),
|
||||
// Generates an `index.html` file with the <script> injected.
|
||||
new HtmlWebpackPlugin({
|
||||
inject: true,
|
||||
template: paths.appHtml,
|
||||
minify: {
|
||||
removeComments: true,
|
||||
collapseWhitespace: true,
|
||||
removeRedundantAttributes: true,
|
||||
useShortDoctype: true,
|
||||
removeEmptyAttributes: true,
|
||||
removeStyleLinkTypeAttributes: true,
|
||||
keepClosingSlash: true,
|
||||
minifyJS: true,
|
||||
minifyCSS: true,
|
||||
minifyURLs: true
|
||||
}
|
||||
}),
|
||||
// Makes some environment variables available to the JS code, for example:
|
||||
// if (process.env.NODE_ENV === 'production') { ... }. See `./env.js`.
|
||||
// It is absolutely essential that NODE_ENV was set to production here.
|
||||
// Otherwise React will be compiled in the very slow development mode.
|
||||
new webpack.DefinePlugin(env),
|
||||
// This helps ensure the builds are consistent if source hasn't changed:
|
||||
new webpack.optimize.OccurrenceOrderPlugin(),
|
||||
// Try to dedupe duplicated modules, if any:
|
||||
new webpack.optimize.DedupePlugin(),
|
||||
// Minify the code.
|
||||
new webpack.optimize.UglifyJsPlugin({
|
||||
compress: {
|
||||
screw_ie8: true, // React doesn't support IE8
|
||||
warnings: false
|
||||
},
|
||||
mangle: {
|
||||
screw_ie8: true
|
||||
},
|
||||
output: {
|
||||
comments: false,
|
||||
screw_ie8: true
|
||||
}
|
||||
}),
|
||||
// Note: this won't work without ExtractTextPlugin.extract(..) in `loaders`.
|
||||
new ExtractTextPlugin('static/css/[name].[contenthash:8].css'),
|
||||
// Generate a manifest file which contains a mapping of all asset filenames
|
||||
// to their corresponding output file so that tools can pick it up without
|
||||
// having to parse `index.html`.
|
||||
new ManifestPlugin({
|
||||
fileName: 'asset-manifest.json'
|
||||
})
|
||||
],
|
||||
// Some libraries import Node modules but don't use them in the browser.
|
||||
// Tell Webpack to provide empty mocks for them so importing them works.
|
||||
node: {
|
||||
fs: 'empty',
|
||||
net: 'empty',
|
||||
tls: 'empty'
|
||||
}
|
||||
};
|
|
@ -0,0 +1,23 @@
|
|||
pragma solidity ^0.4.2;
|
||||
|
||||
contract Migrations {
|
||||
address public owner;
|
||||
uint public last_completed_migration;
|
||||
|
||||
modifier restricted() {
|
||||
if (msg.sender == owner) _;
|
||||
}
|
||||
|
||||
function Migrations() public {
|
||||
owner = msg.sender;
|
||||
}
|
||||
|
||||
function setCompleted(uint completed) public restricted {
|
||||
last_completed_migration = completed;
|
||||
}
|
||||
|
||||
function upgrade(address new_address) public restricted {
|
||||
Migrations upgraded = Migrations(new_address);
|
||||
upgraded.setCompleted(last_completed_migration);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,13 @@
|
|||
pragma solidity ^0.4.18;
|
||||
|
||||
contract SimpleStorage {
|
||||
uint storedData;
|
||||
|
||||
function set(uint x) public {
|
||||
storedData = x;
|
||||
}
|
||||
|
||||
function get() public view returns (uint) {
|
||||
return storedData;
|
||||
}
|
||||
}
|
|
@ -0,0 +1,5 @@
|
|||
var Migrations = artifacts.require("./Migrations.sol");
|
||||
|
||||
module.exports = function(deployer) {
|
||||
deployer.deploy(Migrations);
|
||||
};
|
|
@ -0,0 +1,5 @@
|
|||
var SimpleStorage = artifacts.require("./SimpleStorage.sol");
|
||||
|
||||
module.exports = function(deployer) {
|
||||
deployer.deploy(SimpleStorage);
|
||||
};
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,101 @@
|
|||
{
|
||||
"name": "react-box",
|
||||
"version": "0.1.0",
|
||||
"private": true,
|
||||
"devDependencies": {
|
||||
"autoprefixer": "6.5.1",
|
||||
"babel-core": "6.17.0",
|
||||
"babel-eslint": "7.1.1",
|
||||
"babel-jest": "17.0.2",
|
||||
"babel-loader": "6.2.7",
|
||||
"babel-preset-react-app": "^2.0.1",
|
||||
"case-sensitive-paths-webpack-plugin": "1.1.4",
|
||||
"chalk": "1.1.3",
|
||||
"connect-history-api-fallback": "1.3.0",
|
||||
"cross-spawn": "4.0.2",
|
||||
"css-loader": "0.26.0",
|
||||
"detect-port": "1.0.1",
|
||||
"dotenv": "2.0.0",
|
||||
"eslint": "3.8.1",
|
||||
"eslint-config-react-app": "^0.5.0",
|
||||
"eslint-loader": "1.6.0",
|
||||
"eslint-plugin-flowtype": "2.21.0",
|
||||
"eslint-plugin-import": "2.0.1",
|
||||
"eslint-plugin-jsx-a11y": "2.2.3",
|
||||
"eslint-plugin-react": "6.4.1",
|
||||
"extract-text-webpack-plugin": "1.0.1",
|
||||
"file-loader": "0.9.0",
|
||||
"filesize": "3.3.0",
|
||||
"fs-extra": "0.30.0",
|
||||
"gzip-size": "3.0.0",
|
||||
"html-webpack-plugin": "2.24.0",
|
||||
"http-proxy-middleware": "0.17.2",
|
||||
"jest": "18.1.0",
|
||||
"json-loader": "0.5.4",
|
||||
"object-assign": "4.1.0",
|
||||
"path-exists": "2.1.0",
|
||||
"postcss-loader": "1.0.0",
|
||||
"promise": "7.1.1",
|
||||
"react-dev-utils": "^0.4.2",
|
||||
"recursive-readdir": "2.1.0",
|
||||
"strip-ansi": "3.0.1",
|
||||
"style-loader": "0.13.1",
|
||||
"truffle-contract": "^1.1.8",
|
||||
"truffle-solidity-loader": "0.0.8",
|
||||
"url-loader": "0.5.7",
|
||||
"webpack": "1.14.0",
|
||||
"webpack-dev-server": "1.16.2",
|
||||
"webpack-manifest-plugin": "1.1.0",
|
||||
"whatwg-fetch": "1.0.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"dotenv": "^2.0.0",
|
||||
"react": "^15.4.2",
|
||||
"react-dom": "^15.4.2"
|
||||
},
|
||||
"scripts": {
|
||||
"start": "node scripts/start.js",
|
||||
"build": "node scripts/build.js",
|
||||
"test": "node scripts/test.js --env=jsdom"
|
||||
},
|
||||
"jest": {
|
||||
"collectCoverageFrom": [
|
||||
"src/**/*.{js,jsx}"
|
||||
],
|
||||
"setupFiles": [
|
||||
"<rootDir>/config/polyfills.js"
|
||||
],
|
||||
"testMatch": [
|
||||
"<rootDir>/src/**/__tests__/**/*.js?(x)",
|
||||
"<rootDir>/src/**/?(*.)(spec|test).js?(x)"
|
||||
],
|
||||
"testEnvironment": "node",
|
||||
"testURL": "http://localhost",
|
||||
"transform": {
|
||||
"^.+\\.(js|jsx)$": "<rootDir>/node_modules/babel-jest",
|
||||
"^.+\\.css$": "<rootDir>/config/jest/cssTransform.js",
|
||||
"^(?!.*\\.(js|jsx|css|json)$)": "<rootDir>/config/jest/fileTransform.js"
|
||||
},
|
||||
"transformIgnorePatterns": [
|
||||
"[/\\\\]node_modules[/\\\\].+\\.(js|jsx)$"
|
||||
],
|
||||
"moduleNameMapper": {
|
||||
"^react-native$": "react-native-web"
|
||||
},
|
||||
"moduleFileExtensions": [
|
||||
"web.js",
|
||||
"js",
|
||||
"json",
|
||||
"web.jsx",
|
||||
"jsx"
|
||||
]
|
||||
},
|
||||
"babel": {
|
||||
"presets": [
|
||||
"react-app"
|
||||
]
|
||||
},
|
||||
"eslintConfig": {
|
||||
"extends": "react-app"
|
||||
}
|
||||
}
|
Binary file not shown.
After Width: | Height: | Size: 31 KiB |
|
@ -0,0 +1,31 @@
|
|||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
<!--
|
||||
Notice the use of %PUBLIC_URL% in the tag above.
|
||||
It will be replaced with the URL of the `public` folder during the build.
|
||||
Only files inside the `public` folder can be referenced from the HTML.
|
||||
|
||||
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
|
||||
work correctly both with client-side routing and a non-root public URL.
|
||||
Learn how to configure a non-root public URL by running `npm run build`.
|
||||
-->
|
||||
<title>Truffle Box</title>
|
||||
</head>
|
||||
<body>
|
||||
<div id="root"></div>
|
||||
<!--
|
||||
This HTML file is a template.
|
||||
If you open it directly in the browser, you will see an empty page.
|
||||
|
||||
You can add webfonts, meta tags, or analytics to this file.
|
||||
The build step will place the bundled scripts into the <body> tag.
|
||||
|
||||
To begin the development, run `npm start`.
|
||||
To create a production bundle, use `npm run build`.
|
||||
-->
|
||||
</body>
|
||||
</html>
|
|
@ -0,0 +1,224 @@
|
|||
// Do this as the first thing so that any code reading it knows the right env.
|
||||
process.env.NODE_ENV = 'production';
|
||||
|
||||
// Load environment variables from .env file. Suppress warnings using silent
|
||||
// if this file is missing. dotenv will never modify any environment variables
|
||||
// that have already been set.
|
||||
// https://github.com/motdotla/dotenv
|
||||
require('dotenv').config({silent: true});
|
||||
|
||||
var chalk = require('chalk');
|
||||
var fs = require('fs-extra');
|
||||
var path = require('path');
|
||||
var pathExists = require('path-exists');
|
||||
var filesize = require('filesize');
|
||||
var gzipSize = require('gzip-size').sync;
|
||||
var webpack = require('webpack');
|
||||
var config = require('../config/webpack.config.prod');
|
||||
var paths = require('../config/paths');
|
||||
var checkRequiredFiles = require('react-dev-utils/checkRequiredFiles');
|
||||
var recursive = require('recursive-readdir');
|
||||
var stripAnsi = require('strip-ansi');
|
||||
|
||||
var useYarn = pathExists.sync(paths.yarnLockFile);
|
||||
|
||||
// Warn and crash if required files are missing
|
||||
if (!checkRequiredFiles([paths.appHtml, paths.appIndexJs])) {
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Input: /User/dan/app/build/static/js/main.82be8.js
|
||||
// Output: /static/js/main.js
|
||||
function removeFileNameHash(fileName) {
|
||||
return fileName
|
||||
.replace(paths.appBuild, '')
|
||||
.replace(/\/?(.*)(\.\w+)(\.js|\.css)/, (match, p1, p2, p3) => p1 + p3);
|
||||
}
|
||||
|
||||
// Input: 1024, 2048
|
||||
// Output: "(+1 KB)"
|
||||
function getDifferenceLabel(currentSize, previousSize) {
|
||||
var FIFTY_KILOBYTES = 1024 * 50;
|
||||
var difference = currentSize - previousSize;
|
||||
var fileSize = !Number.isNaN(difference) ? filesize(difference) : 0;
|
||||
if (difference >= FIFTY_KILOBYTES) {
|
||||
return chalk.red('+' + fileSize);
|
||||
} else if (difference < FIFTY_KILOBYTES && difference > 0) {
|
||||
return chalk.yellow('+' + fileSize);
|
||||
} else if (difference < 0) {
|
||||
return chalk.green(fileSize);
|
||||
} else {
|
||||
return '';
|
||||
}
|
||||
}
|
||||
|
||||
// First, read the current file sizes in build directory.
|
||||
// This lets us display how much they changed later.
|
||||
recursive(paths.appBuild, (err, fileNames) => {
|
||||
var previousSizeMap = (fileNames || [])
|
||||
.filter(fileName => /\.(js|css)$/.test(fileName))
|
||||
.reduce((memo, fileName) => {
|
||||
var contents = fs.readFileSync(fileName);
|
||||
var key = removeFileNameHash(fileName);
|
||||
memo[key] = gzipSize(contents);
|
||||
return memo;
|
||||
}, {});
|
||||
|
||||
// Remove all content but keep the directory so that
|
||||
// if you're in it, you don't end up in Trash
|
||||
fs.emptyDirSync(paths.appBuild);
|
||||
|
||||
// Start the webpack build
|
||||
build(previousSizeMap);
|
||||
|
||||
// Merge with the public folder
|
||||
copyPublicFolder();
|
||||
});
|
||||
|
||||
// Print a detailed summary of build files.
|
||||
function printFileSizes(stats, previousSizeMap) {
|
||||
var assets = stats.toJson().assets
|
||||
.filter(asset => /\.(js|css)$/.test(asset.name))
|
||||
.map(asset => {
|
||||
var fileContents = fs.readFileSync(paths.appBuild + '/' + asset.name);
|
||||
var size = gzipSize(fileContents);
|
||||
var previousSize = previousSizeMap[removeFileNameHash(asset.name)];
|
||||
var difference = getDifferenceLabel(size, previousSize);
|
||||
return {
|
||||
folder: path.join('build_webpack', path.dirname(asset.name)),
|
||||
name: path.basename(asset.name),
|
||||
size: size,
|
||||
sizeLabel: filesize(size) + (difference ? ' (' + difference + ')' : '')
|
||||
};
|
||||
});
|
||||
assets.sort((a, b) => b.size - a.size);
|
||||
var longestSizeLabelLength = Math.max.apply(null,
|
||||
assets.map(a => stripAnsi(a.sizeLabel).length)
|
||||
);
|
||||
assets.forEach(asset => {
|
||||
var sizeLabel = asset.sizeLabel;
|
||||
var sizeLength = stripAnsi(sizeLabel).length;
|
||||
if (sizeLength < longestSizeLabelLength) {
|
||||
var rightPadding = ' '.repeat(longestSizeLabelLength - sizeLength);
|
||||
sizeLabel += rightPadding;
|
||||
}
|
||||
console.log(
|
||||
' ' + sizeLabel +
|
||||
' ' + chalk.dim(asset.folder + path.sep) + chalk.cyan(asset.name)
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
// Print out errors
|
||||
function printErrors(summary, errors) {
|
||||
console.log(chalk.red(summary));
|
||||
console.log();
|
||||
errors.forEach(err => {
|
||||
console.log(err.message || err);
|
||||
console.log();
|
||||
});
|
||||
}
|
||||
|
||||
// Create the production build and print the deployment instructions.
|
||||
function build(previousSizeMap) {
|
||||
console.log('Creating an optimized production build...');
|
||||
webpack(config).run((err, stats) => {
|
||||
if (err) {
|
||||
printErrors('Failed to compile.', [err]);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
if (stats.compilation.errors.length) {
|
||||
printErrors('Failed to compile.', stats.compilation.errors);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
if (process.env.CI && stats.compilation.warnings.length) {
|
||||
printErrors('Failed to compile.', stats.compilation.warnings);
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
console.log(chalk.green('Compiled successfully.'));
|
||||
console.log();
|
||||
|
||||
console.log('File sizes after gzip:');
|
||||
console.log();
|
||||
printFileSizes(stats, previousSizeMap);
|
||||
console.log();
|
||||
|
||||
var openCommand = process.platform === 'win32' ? 'start' : 'open';
|
||||
var appPackage = require(paths.appPackageJson);
|
||||
var homepagePath = appPackage.homepage;
|
||||
var publicPath = config.output.publicPath;
|
||||
if (homepagePath && homepagePath.indexOf('.github.io/') !== -1) {
|
||||
// "homepage": "http://user.github.io/project"
|
||||
console.log('The project was built assuming it is hosted at ' + chalk.green(publicPath) + '.');
|
||||
console.log('You can control this with the ' + chalk.green('homepage') + ' field in your ' + chalk.cyan('package.json') + '.');
|
||||
console.log();
|
||||
console.log('The ' + chalk.cyan('build_webpack') + ' folder is ready to be deployed.');
|
||||
console.log('To publish it at ' + chalk.green(homepagePath) + ', run:');
|
||||
// If script deploy has been added to package.json, skip the instructions
|
||||
if (typeof appPackage.scripts.deploy === 'undefined') {
|
||||
console.log();
|
||||
if (useYarn) {
|
||||
console.log(' ' + chalk.cyan('yarn') + ' add --dev gh-pages');
|
||||
} else {
|
||||
console.log(' ' + chalk.cyan('npm') + ' install --save-dev gh-pages');
|
||||
}
|
||||
console.log();
|
||||
console.log('Add the following script in your ' + chalk.cyan('package.json') + '.');
|
||||
console.log();
|
||||
console.log(' ' + chalk.dim('// ...'));
|
||||
console.log(' ' + chalk.yellow('"scripts"') + ': {');
|
||||
console.log(' ' + chalk.dim('// ...'));
|
||||
console.log(' ' + chalk.yellow('"deploy"') + ': ' + chalk.yellow('"npm run build&&gh-pages -d build"'));
|
||||
console.log(' }');
|
||||
console.log();
|
||||
console.log('Then run:');
|
||||
}
|
||||
console.log();
|
||||
console.log(' ' + chalk.cyan(useYarn ? 'yarn' : 'npm') + ' run deploy');
|
||||
console.log();
|
||||
} else if (publicPath !== '/') {
|
||||
// "homepage": "http://mywebsite.com/project"
|
||||
console.log('The project was built assuming it is hosted at ' + chalk.green(publicPath) + '.');
|
||||
console.log('You can control this with the ' + chalk.green('homepage') + ' field in your ' + chalk.cyan('package.json') + '.');
|
||||
console.log();
|
||||
console.log('The ' + chalk.cyan('build_webpack') + ' folder is ready to be deployed.');
|
||||
console.log();
|
||||
} else {
|
||||
// no homepage or "homepage": "http://mywebsite.com"
|
||||
console.log('The project was built assuming it is hosted at the server root.');
|
||||
if (homepagePath) {
|
||||
// "homepage": "http://mywebsite.com"
|
||||
console.log('You can control this with the ' + chalk.green('homepage') + ' field in your ' + chalk.cyan('package.json') + '.');
|
||||
console.log();
|
||||
} else {
|
||||
// no homepage
|
||||
console.log('To override this, specify the ' + chalk.green('homepage') + ' in your ' + chalk.cyan('package.json') + '.');
|
||||
console.log('For example, add this to build it for GitHub Pages:')
|
||||
console.log();
|
||||
console.log(' ' + chalk.green('"homepage"') + chalk.cyan(': ') + chalk.green('"http://myname.github.io/myapp"') + chalk.cyan(','));
|
||||
console.log();
|
||||
}
|
||||
console.log('The ' + chalk.cyan('build_webpack') + ' folder is ready to be deployed.');
|
||||
console.log('You may also serve it locally with a static server:')
|
||||
console.log();
|
||||
if (useYarn) {
|
||||
console.log(' ' + chalk.cyan('yarn') + ' global add pushstate-server');
|
||||
} else {
|
||||
console.log(' ' + chalk.cyan('npm') + ' install -g pushstate-server');
|
||||
}
|
||||
console.log(' ' + chalk.cyan('pushstate-server') + ' build');
|
||||
console.log(' ' + chalk.cyan(openCommand) + ' http://localhost:9000');
|
||||
console.log();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function copyPublicFolder() {
|
||||
fs.copySync(paths.appPublic, paths.appBuild, {
|
||||
dereference: true,
|
||||
filter: file => file !== paths.appHtml
|
||||
});
|
||||
}
|
|
@ -0,0 +1,315 @@
|
|||
process.env.NODE_ENV = 'development';
|
||||
|
||||
// Load environment variables from .env file. Suppress warnings using silent
|
||||
// if this file is missing. dotenv will never modify any environment variables
|
||||
// that have already been set.
|
||||
// https://github.com/motdotla/dotenv
|
||||
require('dotenv').config({silent: true});
|
||||
|
||||
var chalk = require('chalk');
|
||||
var webpack = require('webpack');
|
||||
var WebpackDevServer = require('webpack-dev-server');
|
||||
var historyApiFallback = require('connect-history-api-fallback');
|
||||
var httpProxyMiddleware = require('http-proxy-middleware');
|
||||
var detect = require('detect-port');
|
||||
var clearConsole = require('react-dev-utils/clearConsole');
|
||||
var checkRequiredFiles = require('react-dev-utils/checkRequiredFiles');
|
||||
var formatWebpackMessages = require('react-dev-utils/formatWebpackMessages');
|
||||
var getProcessForPort = require('react-dev-utils/getProcessForPort');
|
||||
var openBrowser = require('react-dev-utils/openBrowser');
|
||||
var prompt = require('react-dev-utils/prompt');
|
||||
var pathExists = require('path-exists');
|
||||
var config = require('../config/webpack.config.dev');
|
||||
var paths = require('../config/paths');
|
||||
|
||||
var useYarn = pathExists.sync(paths.yarnLockFile);
|
||||
var cli = useYarn ? 'yarn' : 'npm';
|
||||
var isInteractive = process.stdout.isTTY;
|
||||
|
||||
// Warn and crash if required files are missing
|
||||
if (!checkRequiredFiles([paths.appHtml, paths.appIndexJs])) {
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Tools like Cloud9 rely on this.
|
||||
var DEFAULT_PORT = process.env.PORT || 3000;
|
||||
var compiler;
|
||||
var handleCompile;
|
||||
|
||||
// You can safely remove this after ejecting.
|
||||
// We only use this block for testing of Create React App itself:
|
||||
var isSmokeTest = process.argv.some(arg => arg.indexOf('--smoke-test') > -1);
|
||||
if (isSmokeTest) {
|
||||
handleCompile = function (err, stats) {
|
||||
if (err || stats.hasErrors() || stats.hasWarnings()) {
|
||||
process.exit(1);
|
||||
} else {
|
||||
process.exit(0);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
function setupCompiler(host, port, protocol) {
|
||||
// "Compiler" is a low-level interface to Webpack.
|
||||
// It lets us listen to some events and provide our own custom messages.
|
||||
compiler = webpack(config, handleCompile);
|
||||
|
||||
// "invalid" event fires when you have changed a file, and Webpack is
|
||||
// recompiling a bundle. WebpackDevServer takes care to pause serving the
|
||||
// bundle, so if you refresh, it'll wait instead of serving the old one.
|
||||
// "invalid" is short for "bundle invalidated", it doesn't imply any errors.
|
||||
compiler.plugin('invalid', function() {
|
||||
if (isInteractive) {
|
||||
clearConsole();
|
||||
}
|
||||
console.log('Compiling...');
|
||||
});
|
||||
|
||||
var isFirstCompile = true;
|
||||
|
||||
// "done" event fires when Webpack has finished recompiling the bundle.
|
||||
// Whether or not you have warnings or errors, you will get this event.
|
||||
compiler.plugin('done', function(stats) {
|
||||
if (isInteractive) {
|
||||
clearConsole();
|
||||
}
|
||||
|
||||
// We have switched off the default Webpack output in WebpackDevServer
|
||||
// options so we are going to "massage" the warnings and errors and present
|
||||
// them in a readable focused way.
|
||||
var messages = formatWebpackMessages(stats.toJson({}, true));
|
||||
var isSuccessful = !messages.errors.length && !messages.warnings.length;
|
||||
var showInstructions = isSuccessful && (isInteractive || isFirstCompile);
|
||||
|
||||
if (isSuccessful) {
|
||||
console.log(chalk.green('Compiled successfully!'));
|
||||
}
|
||||
|
||||
if (showInstructions) {
|
||||
console.log();
|
||||
console.log('The app is running at:');
|
||||
console.log();
|
||||
console.log(' ' + chalk.cyan(protocol + '://' + host + ':' + port + '/'));
|
||||
console.log();
|
||||
console.log('Note that the development build is not optimized.');
|
||||
console.log('To create a production build, use ' + chalk.cyan(cli + ' run build') + '.');
|
||||
console.log();
|
||||
isFirstCompile = false;
|
||||
}
|
||||
|
||||
// If errors exist, only show errors.
|
||||
if (messages.errors.length) {
|
||||
console.log(chalk.red('Failed to compile.'));
|
||||
console.log();
|
||||
messages.errors.forEach(message => {
|
||||
console.log(message);
|
||||
console.log();
|
||||
});
|
||||
return;
|
||||
}
|
||||
|
||||
// Show warnings if no errors were found.
|
||||
if (messages.warnings.length) {
|
||||
console.log(chalk.yellow('Compiled with warnings.'));
|
||||
console.log();
|
||||
messages.warnings.forEach(message => {
|
||||
console.log(message);
|
||||
console.log();
|
||||
});
|
||||
// Teach some ESLint tricks.
|
||||
console.log('You may use special comments to disable some warnings.');
|
||||
console.log('Use ' + chalk.yellow('// eslint-disable-next-line') + ' to ignore the next line.');
|
||||
console.log('Use ' + chalk.yellow('/* eslint-disable */') + ' to ignore all warnings in a file.');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
// We need to provide a custom onError function for httpProxyMiddleware.
|
||||
// It allows us to log custom error messages on the console.
|
||||
function onProxyError(proxy) {
|
||||
return function(err, req, res){
|
||||
var host = req.headers && req.headers.host;
|
||||
console.log(
|
||||
chalk.red('Proxy error:') + ' Could not proxy request ' + chalk.cyan(req.url) +
|
||||
' from ' + chalk.cyan(host) + ' to ' + chalk.cyan(proxy) + '.'
|
||||
);
|
||||
console.log(
|
||||
'See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (' +
|
||||
chalk.cyan(err.code) + ').'
|
||||
);
|
||||
console.log();
|
||||
|
||||
// And immediately send the proper error response to the client.
|
||||
// Otherwise, the request will eventually timeout with ERR_EMPTY_RESPONSE on the client side.
|
||||
if (res.writeHead && !res.headersSent) {
|
||||
res.writeHead(500);
|
||||
}
|
||||
res.end('Proxy error: Could not proxy request ' + req.url + ' from ' +
|
||||
host + ' to ' + proxy + ' (' + err.code + ').'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
function addMiddleware(devServer) {
|
||||
// `proxy` lets you to specify a fallback server during development.
|
||||
// Every unrecognized request will be forwarded to it.
|
||||
var proxy = require(paths.appPackageJson).proxy;
|
||||
devServer.use(historyApiFallback({
|
||||
// Paths with dots should still use the history fallback.
|
||||
// See https://github.com/facebookincubator/create-react-app/issues/387.
|
||||
disableDotRule: true,
|
||||
// For single page apps, we generally want to fallback to /index.html.
|
||||
// However we also want to respect `proxy` for API calls.
|
||||
// So if `proxy` is specified, we need to decide which fallback to use.
|
||||
// We use a heuristic: if request `accept`s text/html, we pick /index.html.
|
||||
// Modern browsers include text/html into `accept` header when navigating.
|
||||
// However API calls like `fetch()` won’t generally accept text/html.
|
||||
// If this heuristic doesn’t work well for you, don’t use `proxy`.
|
||||
htmlAcceptHeaders: proxy ?
|
||||
['text/html'] :
|
||||
['text/html', '*/*']
|
||||
}));
|
||||
if (proxy) {
|
||||
if (typeof proxy !== 'string') {
|
||||
console.log(chalk.red('When specified, "proxy" in package.json must be a string.'));
|
||||
console.log(chalk.red('Instead, the type of "proxy" was "' + typeof proxy + '".'));
|
||||
console.log(chalk.red('Either remove "proxy" from package.json, or make it a string.'));
|
||||
process.exit(1);
|
||||
}
|
||||
|
||||
// Otherwise, if proxy is specified, we will let it handle any request.
|
||||
// There are a few exceptions which we won't send to the proxy:
|
||||
// - /index.html (served as HTML5 history API fallback)
|
||||
// - /*.hot-update.json (WebpackDevServer uses this too for hot reloading)
|
||||
// - /sockjs-node/* (WebpackDevServer uses this for hot reloading)
|
||||
// Tip: use https://jex.im/regulex/ to visualize the regex
|
||||
var mayProxy = /^(?!\/(index\.html$|.*\.hot-update\.json$|sockjs-node\/)).*$/;
|
||||
|
||||
// Pass the scope regex both to Express and to the middleware for proxying
|
||||
// of both HTTP and WebSockets to work without false positives.
|
||||
var hpm = httpProxyMiddleware(pathname => mayProxy.test(pathname), {
|
||||
target: proxy,
|
||||
logLevel: 'silent',
|
||||
onProxyReq: function(proxyReq, req, res) {
|
||||
// Browers may send Origin headers even with same-origin
|
||||
// requests. To prevent CORS issues, we have to change
|
||||
// the Origin to match the target URL.
|
||||
if (proxyReq.getHeader('origin')) {
|
||||
proxyReq.setHeader('origin', proxy);
|
||||
}
|
||||
},
|
||||
onError: onProxyError(proxy),
|
||||
secure: false,
|
||||
changeOrigin: true,
|
||||
ws: true
|
||||
});
|
||||
devServer.use(mayProxy, hpm);
|
||||
|
||||
// Listen for the websocket 'upgrade' event and upgrade the connection.
|
||||
// If this is not done, httpProxyMiddleware will not try to upgrade until
|
||||
// an initial plain HTTP request is made.
|
||||
devServer.listeningApp.on('upgrade', hpm.upgrade);
|
||||
}
|
||||
|
||||
// Finally, by now we have certainly resolved the URL.
|
||||
// It may be /index.html, so let the dev server try serving it again.
|
||||
devServer.use(devServer.middleware);
|
||||
}
|
||||
|
||||
function runDevServer(host, port, protocol) {
|
||||
var devServer = new WebpackDevServer(compiler, {
|
||||
// Enable gzip compression of generated files.
|
||||
compress: true,
|
||||
// Silence WebpackDevServer's own logs since they're generally not useful.
|
||||
// It will still show compile warnings and errors with this setting.
|
||||
clientLogLevel: 'none',
|
||||
// By default WebpackDevServer serves physical files from current directory
|
||||
// in addition to all the virtual build products that it serves from memory.
|
||||
// This is confusing because those files won’t automatically be available in
|
||||
// production build folder unless we copy them. However, copying the whole
|
||||
// project directory is dangerous because we may expose sensitive files.
|
||||
// Instead, we establish a convention that only files in `public` directory
|
||||
// get served. Our build script will copy `public` into the `build` folder.
|
||||
// In `index.html`, you can get URL of `public` folder with %PUBLIC_PATH%:
|
||||
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
|
||||
// In JavaScript code, you can access it with `process.env.PUBLIC_URL`.
|
||||
// Note that we only recommend to use `public` folder as an escape hatch
|
||||
// for files like `favicon.ico`, `manifest.json`, and libraries that are
|
||||
// for some reason broken when imported through Webpack. If you just want to
|
||||
// use an image, put it in `src` and `import` it from JavaScript instead.
|
||||
contentBase: paths.appPublic,
|
||||
// Enable hot reloading server. It will provide /sockjs-node/ endpoint
|
||||
// for the WebpackDevServer client so it can learn when the files were
|
||||
// updated. The WebpackDevServer client is included as an entry point
|
||||
// in the Webpack development configuration. Note that only changes
|
||||
// to CSS are currently hot reloaded. JS changes will refresh the browser.
|
||||
hot: true,
|
||||
// It is important to tell WebpackDevServer to use the same "root" path
|
||||
// as we specified in the config. In development, we always serve from /.
|
||||
publicPath: config.output.publicPath,
|
||||
// WebpackDevServer is noisy by default so we emit custom message instead
|
||||
// by listening to the compiler events with `compiler.plugin` calls above.
|
||||
quiet: true,
|
||||
// Reportedly, this avoids CPU overload on some systems.
|
||||
// https://github.com/facebookincubator/create-react-app/issues/293
|
||||
watchOptions: {
|
||||
ignored: /node_modules/
|
||||
},
|
||||
// Enable HTTPS if the HTTPS environment variable is set to 'true'
|
||||
https: protocol === "https",
|
||||
host: host
|
||||
});
|
||||
|
||||
// Our custom middleware proxies requests to /index.html or a remote API.
|
||||
addMiddleware(devServer);
|
||||
|
||||
// Launch WebpackDevServer.
|
||||
devServer.listen(port, (err, result) => {
|
||||
if (err) {
|
||||
return console.log(err);
|
||||
}
|
||||
|
||||
if (isInteractive) {
|
||||
clearConsole();
|
||||
}
|
||||
console.log(chalk.cyan('Starting the development server...'));
|
||||
console.log();
|
||||
|
||||
if (isInteractive) {
|
||||
openBrowser(protocol + '://' + host + ':' + port + '/');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
function run(port) {
|
||||
var protocol = process.env.HTTPS === 'true' ? "https" : "http";
|
||||
var host = process.env.HOST || 'localhost';
|
||||
setupCompiler(host, port, protocol);
|
||||
runDevServer(host, port, protocol);
|
||||
}
|
||||
|
||||
// We attempt to use the default port but if it is busy, we offer the user to
|
||||
// run on a different port. `detect()` Promise resolves to the next free port.
|
||||
detect(DEFAULT_PORT).then(port => {
|
||||
if (port === DEFAULT_PORT) {
|
||||
run(port);
|
||||
return;
|
||||
}
|
||||
|
||||
if (isInteractive) {
|
||||
clearConsole();
|
||||
var existingProcess = getProcessForPort(DEFAULT_PORT);
|
||||
var question =
|
||||
chalk.yellow('Something is already running on port ' + DEFAULT_PORT + '.' +
|
||||
((existingProcess) ? ' Probably:\n ' + existingProcess : '')) +
|
||||
'\n\nWould you like to run the app on another port instead?';
|
||||
|
||||
prompt(question, true).then(shouldChangePort => {
|
||||
if (shouldChangePort) {
|
||||
run(port);
|
||||
}
|
||||
});
|
||||
} else {
|
||||
console.log(chalk.red('Something is already running on port ' + DEFAULT_PORT + '.'));
|
||||
}
|
||||
});
|
|
@ -0,0 +1,31 @@
|
|||
process.env.NODE_ENV = 'test';
|
||||
process.env.PUBLIC_URL = '';
|
||||
|
||||
// Load environment variables from .env file. Suppress warnings using silent
|
||||
// if this file is missing. dotenv will never modify any environment variables
|
||||
// that have already been set.
|
||||
// https://github.com/motdotla/dotenv
|
||||
require('dotenv').config({silent: true});
|
||||
|
||||
const jest = require('jest');
|
||||
const argv = process.argv.slice(2);
|
||||
|
||||
// Watch unless on CI or in coverage mode
|
||||
if (!process.env.CI && argv.indexOf('--coverage') < 0) {
|
||||
argv.push('--watch');
|
||||
}
|
||||
|
||||
// A temporary hack to clear terminal correctly.
|
||||
// You can remove this after updating to Jest 18 when it's out.
|
||||
// https://github.com/facebook/jest/pull/2230
|
||||
var realWrite = process.stdout.write;
|
||||
var CLEAR = process.platform === 'win32' ? '\x1Bc' : '\x1B[2J\x1B[3J\x1B[H';
|
||||
process.stdout.write = function(chunk, encoding, callback) {
|
||||
if (chunk === '\x1B[2J\x1B[H') {
|
||||
chunk = CLEAR;
|
||||
}
|
||||
return realWrite.call(this, chunk, encoding, callback);
|
||||
};
|
||||
|
||||
|
||||
jest.run(argv);
|
|
@ -0,0 +1,68 @@
|
|||
/* PAGE */
|
||||
|
||||
body,
|
||||
.pure-g [class*=pure-u] {
|
||||
font-family: 'Open Sans', sans-serif;
|
||||
}
|
||||
|
||||
h1, h2, h3 {
|
||||
font-family: 'Oswald', 'Arial Narrow', sans-serif;
|
||||
}
|
||||
|
||||
code {
|
||||
display: block;
|
||||
margin: 20px 0 15px 0;
|
||||
padding: 10px;
|
||||
background: #eee;
|
||||
}
|
||||
|
||||
.container {
|
||||
box-sizing: border-box;
|
||||
width: 100%;
|
||||
padding: 45px 20px;
|
||||
}
|
||||
|
||||
.pure-button-primary {
|
||||
background-color: #0c1a2b;
|
||||
}
|
||||
|
||||
.pure-button-primary:hover {
|
||||
background-color: #233e5e;
|
||||
}
|
||||
|
||||
.pure-form input[type="text"]:focus {
|
||||
border-color: #0c1a2b;
|
||||
}
|
||||
|
||||
/* NAVBAR */
|
||||
|
||||
.navbar {
|
||||
position: fixed;
|
||||
padding: 5px;
|
||||
background: #0c1a2b;
|
||||
font-family: 'Oswald', 'Arial Narrow', sans-serif;
|
||||
}
|
||||
|
||||
.navbar a {
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
.navbar a:active,
|
||||
.navbar a:focus,
|
||||
.navbar a:hover {
|
||||
background: #233e5e;
|
||||
}
|
||||
|
||||
.navbar .pure-menu-heading {
|
||||
font-weight: bold;
|
||||
text-transform: none;
|
||||
}
|
||||
|
||||
.navbar .navbar-right {
|
||||
float: right;
|
||||
}
|
||||
|
||||
.navbar .uport-logo {
|
||||
height: 16px;
|
||||
margin-right: 10px;
|
||||
}
|
|
@ -0,0 +1,94 @@
|
|||
import React, { Component } from 'react'
|
||||
import SimpleStorageContract from '../build/contracts/SimpleStorage.json'
|
||||
import getWeb3 from './utils/getWeb3'
|
||||
|
||||
import './css/oswald.css'
|
||||
import './css/open-sans.css'
|
||||
import './css/pure-min.css'
|
||||
import './App.css'
|
||||
|
||||
class App extends Component {
|
||||
constructor(props) {
|
||||
super(props)
|
||||
|
||||
this.state = {
|
||||
storageValue: 0,
|
||||
web3: null
|
||||
}
|
||||
}
|
||||
|
||||
componentWillMount() {
|
||||
// Get network provider and web3 instance.
|
||||
// See utils/getWeb3 for more info.
|
||||
|
||||
getWeb3
|
||||
.then(results => {
|
||||
this.setState({
|
||||
web3: results.web3
|
||||
})
|
||||
|
||||
// Instantiate contract once web3 provided.
|
||||
this.instantiateContract()
|
||||
})
|
||||
.catch(() => {
|
||||
console.log('Error finding web3.')
|
||||
})
|
||||
}
|
||||
|
||||
instantiateContract() {
|
||||
/*
|
||||
* SMART CONTRACT EXAMPLE
|
||||
*
|
||||
* Normally these functions would be called in the context of a
|
||||
* state management library, but for convenience I've placed them here.
|
||||
*/
|
||||
|
||||
const contract = require('truffle-contract')
|
||||
const simpleStorage = contract(SimpleStorageContract)
|
||||
simpleStorage.setProvider(this.state.web3.currentProvider)
|
||||
|
||||
// Declaring this for later so we can chain functions on SimpleStorage.
|
||||
var simpleStorageInstance
|
||||
|
||||
// Get accounts.
|
||||
this.state.web3.eth.getAccounts((error, accounts) => {
|
||||
simpleStorage.deployed().then((instance) => {
|
||||
simpleStorageInstance = instance
|
||||
|
||||
// Stores a given value, 5 by default.
|
||||
return simpleStorageInstance.set(5, {from: accounts[0]})
|
||||
}).then((result) => {
|
||||
// Get the value from the contract to prove it worked.
|
||||
return simpleStorageInstance.get.call(accounts[0])
|
||||
}).then((result) => {
|
||||
// Update state with the result.
|
||||
return this.setState({ storageValue: result.c[0] })
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
render() {
|
||||
return (
|
||||
<div className="App">
|
||||
<nav className="navbar pure-menu pure-menu-horizontal">
|
||||
<a href="#" className="pure-menu-heading pure-menu-link">Truffle Box</a>
|
||||
</nav>
|
||||
|
||||
<main className="container">
|
||||
<div className="pure-g">
|
||||
<div className="pure-u-1-1">
|
||||
<h1>Good to Go!</h1>
|
||||
<p>Your Truffle Box is installed and ready.</p>
|
||||
<h2>Smart Contract Example</h2>
|
||||
<p>If your contracts compiled and migrated successfully, below will show a stored value of 5 (by default).</p>
|
||||
<p>Try changing the value stored on <strong>line 59</strong> of App.js.</p>
|
||||
<p>The stored value is: {this.state.storageValue}</p>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</div>
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
export default App
|
|
@ -0,0 +1,8 @@
|
|||
import React from 'react'
|
||||
import ReactDOM from 'react-dom'
|
||||
import App from './App'
|
||||
|
||||
it('renders without crashing', () => {
|
||||
const div = document.createElement('div')
|
||||
ReactDOM.render(<App />, div)
|
||||
})
|
|
@ -0,0 +1,13 @@
|
|||
@font-face {
|
||||
font-family: 'Open Sans';
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
src: url('../fonts/Open-Sans-regular/Open-Sans-regular.eot');
|
||||
src: url('../fonts/Open-Sans-regular/Open-Sans-regular.eot?#iefix') format('embedded-opentype'),
|
||||
local('Open Sans'),
|
||||
local('Open-Sans-regular'),
|
||||
url('../fonts/Open-Sans-regular/Open-Sans-regular.woff2') format('woff2'),
|
||||
url('../fonts/Open-Sans-regular/Open-Sans-regular.woff') format('woff'),
|
||||
url('../fonts/Open-Sans-regular/Open-Sans-regular.ttf') format('truetype'),
|
||||
url('../fonts/Open-Sans-regular/Open-Sans-regular.svg#OpenSans') format('svg');
|
||||
}
|
|
@ -0,0 +1,27 @@
|
|||
@font-face {
|
||||
font-family: 'Oswald';
|
||||
font-weight: 300;
|
||||
font-style: normal;
|
||||
src: url('../fonts/Oswald-300/Oswald-300.eot');
|
||||
src: url('../fonts/Oswald-300/Oswald-300.eot?#iefix') format('embedded-opentype'),
|
||||
local('Oswald Light'),
|
||||
local('Oswald-300'),
|
||||
url('../fonts/Oswald-300/Oswald-300.woff2') format('woff2'),
|
||||
url('../fonts/Oswald-300/Oswald-300.woff') format('woff'),
|
||||
url('../fonts/Oswald-300/Oswald-300.ttf') format('truetype'),
|
||||
url('../fonts/Oswald-300/Oswald-300.svg#Oswald') format('svg');
|
||||
}
|
||||
|
||||
@font-face {
|
||||
font-family: 'Oswald';
|
||||
font-weight: 400;
|
||||
font-style: normal;
|
||||
src: url('../fonts/Oswald-regular/Oswald-regular.eot');
|
||||
src: url('../fonts/Oswald-regular/Oswald-regular.eot?#iefix') format('embedded-opentype'),
|
||||
local('Oswald Regular'),
|
||||
local('Oswald-regular'),
|
||||
url('../fonts/Oswald-regular/Oswald-regular.woff2') format('woff2'),
|
||||
url('../fonts/Oswald-regular/Oswald-regular.woff') format('woff'),
|
||||
url('../fonts/Oswald-regular/Oswald-regular.ttf') format('truetype'),
|
||||
url('../fonts/Oswald-regular/Oswald-regular.svg#Oswald') format('svg');
|
||||
}
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,202 @@
|
|||
|
||||
Apache License
|
||||
Version 2.0, January 2004
|
||||
http://www.apache.org/licenses/
|
||||
|
||||
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||
|
||||
1. Definitions.
|
||||
|
||||
"License" shall mean the terms and conditions for use, reproduction,
|
||||
and distribution as defined by Sections 1 through 9 of this document.
|
||||
|
||||
"Licensor" shall mean the copyright owner or entity authorized by
|
||||
the copyright owner that is granting the License.
|
||||
|
||||
"Legal Entity" shall mean the union of the acting entity and all
|
||||
other entities that control, are controlled by, or are under common
|
||||
control with that entity. For the purposes of this definition,
|
||||
"control" means (i) the power, direct or indirect, to cause the
|
||||
direction or management of such entity, whether by contract or
|
||||
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||
|
||||
"You" (or "Your") shall mean an individual or Legal Entity
|
||||
exercising permissions granted by this License.
|
||||
|
||||
"Source" form shall mean the preferred form for making modifications,
|
||||
including but not limited to software source code, documentation
|
||||
source, and configuration files.
|
||||
|
||||
"Object" form shall mean any form resulting from mechanical
|
||||
transformation or translation of a Source form, including but
|
||||
not limited to compiled object code, generated documentation,
|
||||
and conversions to other media types.
|
||||
|
||||
"Work" shall mean the work of authorship, whether in Source or
|
||||
Object form, made available under the License, as indicated by a
|
||||
copyright notice that is included in or attached to the work
|
||||
(an example is provided in the Appendix below).
|
||||
|
||||
"Derivative Works" shall mean any work, whether in Source or Object
|
||||
form, that is based on (or derived from) the Work and for which the
|
||||
editorial revisions, annotations, elaborations, or other modifications
|
||||
represent, as a whole, an original work of authorship. For the purposes
|
||||
of this License, Derivative Works shall not include works that remain
|
||||
separable from, or merely link (or bind by name) to the interfaces of,
|
||||
the Work and Derivative Works thereof.
|
||||
|
||||
"Contribution" shall mean any work of authorship, including
|
||||
the original version of the Work and any modifications or additions
|
||||
to that Work or Derivative Works thereof, that is intentionally
|
||||
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||
or by an individual or Legal Entity authorized to submit on behalf of
|
||||
the copyright owner. For the purposes of this definition, "submitted"
|
||||
means any form of electronic, verbal, or written communication sent
|
||||
to the Licensor or its representatives, including but not limited to
|
||||
communication on electronic mailing lists, source code control systems,
|
||||
and issue tracking systems that are managed by, or on behalf of, the
|
||||
Licensor for the purpose of discussing and improving the Work, but
|
||||
excluding communication that is conspicuously marked or otherwise
|
||||
designated in writing by the copyright owner as "Not a Contribution."
|
||||
|
||||
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||
on behalf of whom a Contribution has been received by Licensor and
|
||||
subsequently incorporated within the Work.
|
||||
|
||||
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
copyright license to reproduce, prepare Derivative Works of,
|
||||
publicly display, publicly perform, sublicense, and distribute the
|
||||
Work and such Derivative Works in Source or Object form.
|
||||
|
||||
3. Grant of Patent License. Subject to the terms and conditions of
|
||||
this License, each Contributor hereby grants to You a perpetual,
|
||||
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||
(except as stated in this section) patent license to make, have made,
|
||||
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||
where such license applies only to those patent claims licensable
|
||||
by such Contributor that are necessarily infringed by their
|
||||
Contribution(s) alone or by combination of their Contribution(s)
|
||||
with the Work to which such Contribution(s) was submitted. If You
|
||||
institute patent litigation against any entity (including a
|
||||
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||
or a Contribution incorporated within the Work constitutes direct
|
||||
or contributory patent infringement, then any patent licenses
|
||||
granted to You under this License for that Work shall terminate
|
||||
as of the date such litigation is filed.
|
||||
|
||||
4. Redistribution. You may reproduce and distribute copies of the
|
||||
Work or Derivative Works thereof in any medium, with or without
|
||||
modifications, and in Source or Object form, provided that You
|
||||
meet the following conditions:
|
||||
|
||||
(a) You must give any other recipients of the Work or
|
||||
Derivative Works a copy of this License; and
|
||||
|
||||
(b) You must cause any modified files to carry prominent notices
|
||||
stating that You changed the files; and
|
||||
|
||||
(c) You must retain, in the Source form of any Derivative Works
|
||||
that You distribute, all copyright, patent, trademark, and
|
||||
attribution notices from the Source form of the Work,
|
||||
excluding those notices that do not pertain to any part of
|
||||
the Derivative Works; and
|
||||
|
||||
(d) If the Work includes a "NOTICE" text file as part of its
|
||||
distribution, then any Derivative Works that You distribute must
|
||||
include a readable copy of the attribution notices contained
|
||||
within such NOTICE file, excluding those notices that do not
|
||||
pertain to any part of the Derivative Works, in at least one
|
||||
of the following places: within a NOTICE text file distributed
|
||||
as part of the Derivative Works; within the Source form or
|
||||
documentation, if provided along with the Derivative Works; or,
|
||||
within a display generated by the Derivative Works, if and
|
||||
wherever such third-party notices normally appear. The contents
|
||||
of the NOTICE file are for informational purposes only and
|
||||
do not modify the License. You may add Your own attribution
|
||||
notices within Derivative Works that You distribute, alongside
|
||||
or as an addendum to the NOTICE text from the Work, provided
|
||||
that such additional attribution notices cannot be construed
|
||||
as modifying the License.
|
||||
|
||||
You may add Your own copyright statement to Your modifications and
|
||||
may provide additional or different license terms and conditions
|
||||
for use, reproduction, or distribution of Your modifications, or
|
||||
for any such Derivative Works as a whole, provided Your use,
|
||||
reproduction, and distribution of the Work otherwise complies with
|
||||
the conditions stated in this License.
|
||||
|
||||
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||
any Contribution intentionally submitted for inclusion in the Work
|
||||
by You to the Licensor shall be under the terms and conditions of
|
||||
this License, without any additional terms or conditions.
|
||||
Notwithstanding the above, nothing herein shall supersede or modify
|
||||
the terms of any separate license agreement you may have executed
|
||||
with Licensor regarding such Contributions.
|
||||
|
||||
6. Trademarks. This License does not grant permission to use the trade
|
||||
names, trademarks, service marks, or product names of the Licensor,
|
||||
except as required for reasonable and customary use in describing the
|
||||
origin of the Work and reproducing the content of the NOTICE file.
|
||||
|
||||
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||
agreed to in writing, Licensor provides the Work (and each
|
||||
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||
implied, including, without limitation, any warranties or conditions
|
||||
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||
appropriateness of using or redistributing the Work and assume any
|
||||
risks associated with Your exercise of permissions under this License.
|
||||
|
||||
8. Limitation of Liability. In no event and under no legal theory,
|
||||
whether in tort (including negligence), contract, or otherwise,
|
||||
unless required by applicable law (such as deliberate and grossly
|
||||
negligent acts) or agreed to in writing, shall any Contributor be
|
||||
liable to You for damages, including any direct, indirect, special,
|
||||
incidental, or consequential damages of any character arising as a
|
||||
result of this License or out of the use or inability to use the
|
||||
Work (including but not limited to damages for loss of goodwill,
|
||||
work stoppage, computer failure or malfunction, or any and all
|
||||
other commercial damages or losses), even if such Contributor
|
||||
has been advised of the possibility of such damages.
|
||||
|
||||
9. Accepting Warranty or Additional Liability. While redistributing
|
||||
the Work or Derivative Works thereof, You may choose to offer,
|
||||
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||
or other liability obligations and/or rights consistent with this
|
||||
License. However, in accepting such obligations, You may act only
|
||||
on Your own behalf and on Your sole responsibility, not on behalf
|
||||
of any other Contributor, and only if You agree to indemnify,
|
||||
defend, and hold each Contributor harmless for any liability
|
||||
incurred by, or claims asserted against, such Contributor by reason
|
||||
of your accepting any such warranty or additional liability.
|
||||
|
||||
END OF TERMS AND CONDITIONS
|
||||
|
||||
APPENDIX: How to apply the Apache License to your work.
|
||||
|
||||
To apply the Apache License to your work, attach the following
|
||||
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||
replaced with your own identifying information. (Don't include
|
||||
the brackets!) The text should be enclosed in the appropriate
|
||||
comment syntax for the file format. We also recommend that a
|
||||
file or class name and description of purpose be included on the
|
||||
same "printed page" as the copyright notice for easier
|
||||
identification within third-party archives.
|
||||
|
||||
Copyright [yyyy] [name of copyright owner]
|
||||
|
||||
Licensed under the Apache License, Version 2.0 (the "License");
|
||||
you may not use this file except in compliance with the License.
|
||||
You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing, software
|
||||
distributed under the License is distributed on an "AS IS" BASIS,
|
||||
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
Binary file not shown.
File diff suppressed because it is too large
Load Diff
After Width: | Height: | Size: 105 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,93 @@
|
|||
Copyright 2016 The Oswald Project Authors (contact@sansoxygen.com)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
Binary file not shown.
|
@ -0,0 +1,335 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<defs >
|
||||
<font id="Oswald" horiz-adv-x="694" ><font-face
|
||||
font-family="Oswald"
|
||||
units-per-em="2048"
|
||||
panose-1="2 0 3 3 0 0 0 0 0 0"
|
||||
ascent="2444"
|
||||
descent="-591"
|
||||
alphabetic="0" />
|
||||
<glyph unicode=" " horiz-adv-x="406" />
|
||||
<glyph unicode="!" horiz-adv-x="434" d="M138 0V179H323V0H138ZM197 388L117 1719H311L251 388H197Z" />
|
||||
<glyph unicode=""" d="M475 1408L425 1715H593Q581 1644 569 1567T542 1408H475ZM152 1408L102 1715H270Q258 1644 246 1567T219 1408H152Z" />
|
||||
<glyph unicode="#" horiz-adv-x="1020" d="M382 785H559L626 1024H449L382 785ZM18 0L203 660H48V785H238L305 1024H98V1139H337L500 1721H645L482 1139H658L821 1721H966L803 1139H957V1024H770L703 785H907V660H668L483 0H339L524 660H347L162 0H18Z" />
|
||||
<glyph unicode="$" horiz-adv-x="948" d="M197 484Q212 330 289 230T500 125Q578 125 636 147T731 224T769 364Q769 517 534 700L239 930Q57 1078 57 1234Q57 1394 165 1491T446 1594V1747H534V1591Q681 1573 777 1472T895 1206L769 1167Q749 1292 671 1381T482
|
||||
1470Q204 1470 204 1254Q204 1137 345 1020L628 795Q693 742 735 702T823 608T891 496T914 377Q914 207 809 110T534 4V-138H446V6Q337 18 255 82T127 238T63 445L197 484Z" />
|
||||
<glyph unicode="%" horiz-adv-x="1257" d="M783 307V541Q783 865 1009 865T1235 541V307Q1235 -27 1009 -27T783 307ZM1118 310V538Q1118 764 1009 764T900 538V310Q900 74 1009 74T1118 310ZM57 1187V1421Q57 1745 283 1745T509 1421V1187Q509 853 283 853T57
|
||||
1187ZM392 1190V1418Q392 1644 283 1644T174 1418V1190Q174 954 283 954T392 1190ZM305 0L857 1721H981L428 0H305Z" />
|
||||
<glyph unicode="&" horiz-adv-x="1116" d="M442 927Q556 1036 624 1168T692 1416Q692 1511 644 1567T497 1623Q441 1623 399 1598T335 1531T303 1448T292 1364Q292 1179 442 927ZM735 229L406 734Q321 656 265 537T208 313Q208 214 265 154T442 94Q590 94
|
||||
735 229ZM1094 122V-14Q1017 -9 938 30T804 134Q634 -26 434 -26Q251 -26 160 64T68 298Q68 435 142 587T346 844Q140 1185 140 1370Q140 1537 236 1641T493 1745T745 1656T836 1420Q836 1283 752 1126T498 817L819 324Q968 522 968 753H1096Q1096 642 1041 496T890
|
||||
228Q986 122 1094 122Z" />
|
||||
<glyph unicode="'" horiz-adv-x="373" d="M153 1408L102 1715H271Q257 1633 245 1555T220 1408H153Z" />
|
||||
<glyph unicode="(" horiz-adv-x="535" d="M541 68V-64Q472 -64 415 -43T316 10T241 97T188 202T153 327T131 456T120 593T116 721T115 841Q115 845 115 846T115 851T115 856T115 861Q115 867 115 881Q115 981 116 1038T125 1204T148 1380T194 1533T270 1668T383
|
||||
1752T541 1787V1655Q486 1655 443 1631T372 1571T323 1471T292 1352T275 1209T268 1060T267 903Q267 891 267 866Q267 773 267 724T271 588T281 450T301 331T333 222T382 143T450 86T541 68Z" />
|
||||
<glyph unicode=")" horiz-adv-x="545" d="M18 -64V68Q68 68 108 85T177 142T225 221T258 330T277 450T288 587T291 724T292 866Q292 874 292 878T292 890T292 903Q292 997 291 1059T284 1208T268 1351T237 1471T188 1570T116 1631T18 1655V1787Q106 1787 175 1752T289
|
||||
1668T364 1533T411 1380T434 1205T443 1039T444 881Q444 877 444 876T444 871T444 866T444 861Q444 855 444 841Q444 764 444 721T440 594T429 457T407 328T372 202T318 98T244 11T145 -42T18 -64Z" />
|
||||
<glyph unicode="*" horiz-adv-x="760" d="M147 963L320 1210L55 1311L91 1400L343 1281L325 1583H444L424 1282L678 1402L713 1312L449 1210L623 960L534 911L384 1163L235 911L147 963Z" />
|
||||
<glyph unicode="+" horiz-adv-x="649" d="M274 384V576H82V691H274V883H395V691H587V576H395V384H274Z" />
|
||||
<glyph unicode="," horiz-adv-x="389" d="M160 -256L133 -201Q165 -189 188 -163T221 -105T235 -48T239 0H111V179H296Q296 171 296 156Q296 102 296 76T294 3T289 -67T279 -125T263 -178T239 -215T205 -244T160 -256Z" />
|
||||
<glyph unicode="-" horiz-adv-x="532" d="M117 448V563H430V448H117Z" />
|
||||
<glyph unicode="." horiz-adv-x="397" d="M115 0V179H299V0H115Z" />
|
||||
<glyph unicode="/" horiz-adv-x="651" d="M-29 0L523 1721H668L115 0H-29Z" />
|
||||
<glyph unicode="0" horiz-adv-x="1047" d="M117 499V1220Q117 1311 129 1387T172 1530T248 1644T364 1718T526 1745T687 1718T804 1645T880 1531T922 1387T935 1220V499Q935 -27 526 -27T117 499ZM783 465V1254Q783 1623 526 1623T269 1254V465Q269 95 526 95T783 465Z" />
|
||||
<glyph unicode="1" horiz-adv-x="532" d="M233 0V1478Q190 1449 133 1423T41 1389V1533Q101 1555 171 1603T282 1721H385V0H233Z" />
|
||||
<glyph unicode="2" horiz-adv-x="931" d="M63 0V128L525 825Q565 886 590 927T649 1033T700 1158T717 1272Q717 1434 663 1528T489 1623Q421 1623 371 1600T292 1541T246 1449T224 1340T218 1216H66V1239Q76 1745 487 1745Q677 1745 773 1620T869 1273Q869 1168
|
||||
811 1037T675 793L242 122H848V0H63Z" />
|
||||
<glyph unicode="3" horiz-adv-x="932" d="M74 395V421H216Q218 320 234 255T285 155T361 108T468 95Q526 95 566 111T638 166T685 278T700 459Q700 544 688 609T647 728T567 811T444 848V977Q588 983 644 1058T700 1317Q700 1484 643 1553T469 1623Q351 1623 288
|
||||
1545T216 1292H73V1317Q73 1403 94 1477T160 1612T284 1709T472 1745Q553 1745 618 1722T726 1658T798 1563T839 1446T852 1316Q852 1150 786 1045T617 910Q852 816 852 462Q852 -27 454 -27Q372 -27 307 -4T198 59T127 154T86 268T74 395Z" />
|
||||
<glyph unicode="4" horiz-adv-x="848" d="M186 622H505L504 1596L186 622ZM505 0V509H27V614L424 1723H657V622H828V509H657V0H505Z" />
|
||||
<glyph unicode="5" horiz-adv-x="948" d="M123 430L275 441Q275 335 288 267T332 161T401 109T501 95Q623 95 680 195T737 535Q737 764 684 859T510 954Q445 954 378 919T264 814H142V1721H801L787 1599H294L273 966Q320 1016 391 1046T540 1076Q634 1076 703
|
||||
1035T812 917T870 747T889 536Q889 415 867 316T801 138T680 17T501 -27Q303 -27 213 89T123 430Z" />
|
||||
<glyph unicode="6" horiz-adv-x="979" d="M266 811V501Q266 402 275 331T303 214T351 142T416 106T502 95Q636 95 697 181T758 481Q758 689 699 773T512 857Q442 857 370 845T266 811ZM114 490V1256Q114 1745 502 1745Q601 1745 675 1710T790 1614T852 1480T872
|
||||
1323V1297H730Q728 1398 712 1463T664 1563T591 1610T488 1623Q432 1623 394 1607T325 1552T281 1440T266 1259V934Q361 979 512 979Q617 979 695 942T819 835T887 678T910 482Q910 371 887 281T817 120T689 12T502 -27Q299 -27 207 105T114 490Z" />
|
||||
<glyph unicode="7" horiz-adv-x="691" d="M156 0L484 1585H1V1721H647V1645Q572 1260 479 814T314 0H156Z" />
|
||||
<glyph unicode="8" horiz-adv-x="954" d="M477 977Q615 985 669 1061T723 1317Q723 1485 664 1554T477 1623T290 1554T231 1317Q231 1137 285 1061T477 977ZM477 847Q343 832 287 732T231 459Q231 350 246 278T294 167T370 111T477 95T583 111T659 166T707 278T723
|
||||
459Q723 632 667 732T477 847ZM314 910Q211 940 145 1045T79 1316Q79 1409 101 1485T170 1620T294 1712T477 1745T660 1712T784 1620T852 1485T875 1316Q875 1150 809 1045T640 910Q875 816 875 462Q875 -27 477 -27T79 462Q79 816 314 910Z" />
|
||||
<glyph unicode="9" horiz-adv-x="990" d="M724 907V1217Q724 1316 715 1387T687 1504T639 1576T574 1612T488 1623Q354 1623 293 1537T232 1237Q232 1029 291 945T478 861Q548 861 620 873T724 907ZM118 395V421H260Q262 320 278 255T326 155T399 108T502 95Q558
|
||||
95 596 111T665 166T709 278T724 459V784Q629 739 478 739Q373 739 295 776T171 883T103 1040T80 1236Q80 1347 103 1437T173 1598T301 1706T488 1745Q691 1745 783 1613T876 1228V462Q876 -27 488 -27Q389 -27 315 8T200 104T138 238T118 395Z" />
|
||||
<glyph unicode=":" horiz-adv-x="426" d="M125 275V454H310V275H125ZM125 813V992H310V813H125Z" />
|
||||
<glyph unicode=";" horiz-adv-x="422" d="M173 0L147 55Q206 77 229 138T253 256H125V435H309Q309 415 308 376Q307 324 307 299T304 231T298 167T288 115T272 69T249 36T216 11T173 0ZM125 813V992H309V813H125Z" />
|
||||
<glyph unicode="<" horiz-adv-x="727" d="M76 494V709L645 1107V942L168 603Q264 534 402 436T645 261V94Q219 392 76 494Z" />
|
||||
<glyph unicode="=" horiz-adv-x="750" d="M127 255V370H632V255H127ZM127 576V691H632V576H127Z" />
|
||||
<glyph unicode=">" horiz-adv-x="727" d="M102 94V261L579 603Q474 677 102 942V1109Q526 809 671 709V494L102 94Z" />
|
||||
<glyph unicode="?" horiz-adv-x="868" d="M275 1V180H459V1H275ZM300 452V793Q401 851 476 916T591 1035T655 1146T685 1241T692 1317Q692 1398 671 1459T614 1555T533 1607T439 1624Q321 1624 245 1545T168 1321L167 1179H33V1325Q33 1424 68 1506T160 1639T290
|
||||
1718T439 1746Q514 1746 583 1720T707 1642T796 1508T829 1319Q829 1139 731 999T434 736V452H300Z" />
|
||||
<glyph unicode="@" horiz-adv-x="1434" d="M834 644V1121Q758 1174 702 1174Q655 1174 625 1127T584 1008T572 840Q572 694 600 628T687 561Q739 561 770 582T834 644ZM1091 198L1116 80Q930 40 785 40Q656 40 551 66T355 153T203 308T107 543T72 868Q72 1059
|
||||
124 1213T266 1465T474 1615T726 1667Q1032 1667 1201 1465T1371 888Q1371 794 1355 718T1313 592T1250 509T1175 461T1094 446Q1018 446 953 490T864 603Q852 547 818 511T743 461T651 447Q596 447 553 477T486 550T447 651T426 753T421 839Q421 1056 487 1168T653
|
||||
1280Q747 1280 834 1204V1274H986V714Q986 561 1090 561Q1219 561 1219 881Q1219 1037 1195 1154T1130 1346T1026 1465T892 1528T730 1546Q695 1546 662 1543T575 1523T477 1481T384 1403T302 1282T246 1105T224 864Q224 693 257 564T343 360T471 238T620 175T780
|
||||
159Q814 159 848 161T922 169T979 177T1043 189T1091 198Z" />
|
||||
<glyph unicode="A" horiz-adv-x="972" d="M306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="B" horiz-adv-x="1012" d="M298 982H542Q598 982 638 1006T700 1074T732 1169T742 1281Q742 1605 496 1605H298V982ZM298 116H570Q622 116 661 137T724 194T762 282T782 390T788 513Q788 574 783 622T764 717T726 795T663 846T570 865H298V116ZM146
|
||||
0V1721H516Q605 1721 674 1696T786 1630T856 1531T894 1413T905 1284Q905 1177 856 1075T719 933Q780 908 825 860T894 751T929 632T940 513Q940 423 932 354T898 216T830 101T716 28T546 0H146Z" />
|
||||
<glyph unicode="C" horiz-adv-x="1032" d="M114 499V1220Q114 1312 126 1387T168 1530T247 1644T369 1718T542 1745Q946 1745 946 1220V1150H801V1254Q801 1337 789 1401T747 1516T667 1595T542 1623Q476 1623 427 1605T348 1554T299 1474T273 1374T266 1254V465Q266
|
||||
380 278 318T319 203T405 123T542 95Q615 95 666 122T747 202T788 318T801 465V583H946V499Q946 408 935 333T896 190T822 75T706 1T542 -27Q442 -27 367 0T244 74T167 189T126 332T114 499Z" />
|
||||
<glyph unicode="D" horiz-adv-x="1086" d="M146 0V1721H533Q631 1721 707 1695T832 1623T913 1511T958 1371T972 1208V508Q972 0 533 0H146ZM298 122H533Q820 122 820 474V1242Q820 1599 533 1599H298V122Z" />
|
||||
<glyph unicode="E" horiz-adv-x="795" d="M146 0V1721H746V1599H298V947H618V832H298V122H746V0H146Z" />
|
||||
<glyph unicode="F" horiz-adv-x="736" d="M146 0V1721H751V1599H298V947H654V832H298V0H146Z" />
|
||||
<glyph unicode="G" horiz-adv-x="1088" d="M114 481V1211Q114 1745 567 1745Q639 1745 697 1729T796 1686T867 1615T916 1526T945 1419T960 1300T964 1171V1159H812V1172Q812 1176 812 1185Q812 1258 811 1295T803 1394T781 1488T739 1556T669 1607T565 1623Q481
|
||||
1623 421 1595T328 1515T281 1405T266 1275V415Q266 349 278 297T319 196T408 122T553 95Q632 95 688 123T772 199T811 300T823 415V706H612V821H975V0H908L863 168Q829 79 743 26T551 -27Q482 -27 425 -15T325 18T250 69T195 132T157 204T133 278T121 353T115
|
||||
421T114 481Z" />
|
||||
<glyph unicode="H" horiz-adv-x="1126" d="M146 0V1721H298V942H828V1721H980V0H828V836H298V0H146Z" />
|
||||
<glyph unicode="I" horiz-adv-x="444" d="M145 0V1721H297V0H145Z" />
|
||||
<glyph unicode="J" horiz-adv-x="566" d="M12 0V115Q63 115 91 115T150 121T196 132T227 156T249 191T260 244T267 315T268 410V1721H420V410Q420 332 417 281T402 179T368 99T310 45T219 10T91 0H12Z" />
|
||||
<glyph unicode="K" horiz-adv-x="981" d="M146 0V1721H298V816L757 1721H914L558 1011L995 0H834L466 909L298 607V0H146Z" />
|
||||
<glyph unicode="L" horiz-adv-x="772" d="M146 0V1721H298V122H779V0H146Z" />
|
||||
<glyph unicode="M" horiz-adv-x="1330" d="M146 0V1721H333L665 235Q726 527 827 949T997 1721H1184V0H1049V1377L731 0H599L281 1376V0H146Z" />
|
||||
<glyph unicode="N" horiz-adv-x="1083" d="M146 0V1721H263L808 358V1721H937V0H823L277 1334V0H146Z" />
|
||||
<glyph unicode="O" horiz-adv-x="1106" d="M114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114 499ZM840 465V1254Q840 1623 553 1623T266 1254V465Q266 95 553 95T840 465Z" />
|
||||
<glyph unicode="P" horiz-adv-x="1004" d="M298 887L584 886Q712 885 767 974T822 1255Q822 1433 763 1516T584 1599H298V887ZM146 0V1721H567Q657 1721 727 1697T843 1630T919 1528T961 1402T974 1258Q974 1179 964 1112T925 979T852 868T734 794T566 765H298V0H146Z" />
|
||||
<glyph unicode="Q" horiz-adv-x="1113" d="M840 465V1254Q840 1623 553 1623T266 1254V465Q266 95 553 95T840 465ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 139 787 25Q825
|
||||
-9 850 -29T916 -70T999 -98V-212Q916 -200 843 -149T691 -11Q625 -27 553 -27Q114 -27 114 499Z" />
|
||||
<glyph unicode="R" horiz-adv-x="1067" d="M298 962H604Q669 962 714 988T781 1062T813 1162T822 1281Q822 1336 817 1380T797 1466T758 1536T695 1582T604 1599H298V962ZM146 0V1721H605Q692 1721 758 1697T864 1634T930 1536T964 1415T974 1276Q974 947 734
|
||||
859L1000 0H838L587 840H298V0H146Z" />
|
||||
<glyph unicode="S" horiz-adv-x="948" d="M68 415L202 454Q210 382 230 321T286 208T378 125T509 95Q626 95 690 160T754 344Q754 443 696 535T523 747L254 1030Q166 1123 119 1204T72 1374Q72 1543 183 1644T468 1745Q637 1745 740 1650T877 1372L880 1356L752
|
||||
1316L750 1330Q730 1459 658 1541T468 1623Q354 1623 287 1565T219 1394Q219 1326 255 1260T360 1120L613 845Q623 834 663 791T715 733T761 679T807 619T843 561T874 495T891 430T899 357Q899 173 786 73T492 -27Q400 -27 325 8T199 106T115 246T68 415Z" />
|
||||
<glyph unicode="T" horiz-adv-x="753" d="M299 0V1599H-36V1721H789V1599H451V0H299Z" />
|
||||
<glyph unicode="U" horiz-adv-x="1132" d="M120 423V1721H272V388Q272 240 339 168T565 95Q715 95 779 168T843 388V1721H994V423Q994 -27 565 -27Q462 -27 384 -3T256 61T175 160T132 282T120 423Z" />
|
||||
<glyph unicode="V" horiz-adv-x="949" d="M382 0L12 1721H176L481 180L773 1721H937L581 0H382Z" />
|
||||
<glyph unicode="W" horiz-adv-x="1416" d="M311 0L23 1721H165L400 249L622 1721H815L1018 249L1252 1721H1393L1107 0H932L717 1520L485 0H311Z" />
|
||||
<glyph unicode="X" horiz-adv-x="951" d="M30 0L397 866L30 1722H173L475 998L768 1722H924L557 850L924 0H778L480 717L187 0H30Z" />
|
||||
<glyph unicode="Y" horiz-adv-x="888" d="M374 0V534L-2 1721H152Q172 1649 210 1518T288 1252T365 993T427 788L451 709Q515 944 599 1228T741 1721H890L526 534V0H374Z" />
|
||||
<glyph unicode="Z" horiz-adv-x="866" d="M60 0V141L665 1599H124V1721H821V1580L216 122H821V0H60Z" />
|
||||
<glyph unicode="[" horiz-adv-x="494" d="M150 -64V1779H481V1698H302V17H481V-64H150Z" />
|
||||
<glyph unicode="\" horiz-adv-x="639" d="M541 0L-12 1721H133L685 0H541Z" />
|
||||
<glyph unicode="]" horiz-adv-x="504" d="M25 -64V17H204V1698H25V1779H356V-64H25Z" />
|
||||
<glyph unicode="^" horiz-adv-x="739" d="M220 896H43Q43 896 270 1459H477L703 896H528L373 1436L220 896Z" />
|
||||
<glyph unicode="_" horiz-adv-x="913" d="M115 0V115H811V0H115Z" />
|
||||
<glyph unicode="`" horiz-adv-x="451" d="M299 1324L70 1722H232L355 1324H299Z" />
|
||||
<glyph unicode="a" horiz-adv-x="808" d="M554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312 -27Q219 -27 147 46T75 239Q75 271 76 290T81 341T94 393T119 444T160
|
||||
498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225 531 1202T619 1142T672 1054T699 955T706 852V276Q706 213 710 144T720
|
||||
38L724 0H584Z" />
|
||||
<glyph unicode="b" horiz-adv-x="871" d="M615 545V640Q615 750 610 832T594 964T571 1046T541 1092T508 1110T471 1114Q377 1114 270 995V205Q315 151 368 118T466 84Q486 84 498 86T528 97T557 124T580 175T599 257T610 378T615 545ZM120 0V1721H270V1085Q317
|
||||
1154 377 1189T501 1225Q544 1225 576 1217T646 1174T708 1079T748 908T765 641V546Q765 438 757 351T735 206T700 104T658 36T610 -3T561 -22T512 -27Q360 -27 270 113V0H120Z" />
|
||||
<glyph unicode="c" horiz-adv-x="816" d="M106 568V630Q106 710 107 752T114 868T131 983T167 1077T225 1157T312 1205T433 1225Q502 1225 554 1203T639 1144T693 1053T723 943T736 817Q736 815 736 812T737 806H587V815Q581 984 548 1054T433 1124Q394 1124 366
|
||||
1113T318 1074T286 1011T267 915T258 790T256 630V568Q256 287 291 181T433 74Q512 74 545 146T587 393V403H738V396Q735 320 727 263T698 148T645 55T559 -4T433 -27Q373 -27 325 -15T244 25T186 80T147 159T124 246T111 349T107 454T106 568Z" />
|
||||
<glyph unicode="d" horiz-adv-x="866" d="M596 205V995Q489 1114 395 1114Q373 1114 359 1110T326 1092T296 1047T273 965T256 832T251 640V545Q251 451 255 378T267 257T286 176T309 124T337 97T367 86T400 84Q445 84 498 117T596 205ZM596 0V113Q506 -27 354
|
||||
-27Q327 -27 305 -23T256 -4T208 35T166 103T132 205T110 351T101 546V641Q101 796 117 907T158 1079T220 1173T290 1216T365 1225Q428 1225 488 1190T596 1085V1721H746V0H596Z" />
|
||||
<glyph unicode="e" horiz-adv-x="829" d="M258 702H590Q589 742 590 783T589 865T584 945T570 1015T545 1072T504 1110T444 1124Q389 1124 354 1104T299 1057T270 966T260 854T258 702ZM106 552V719Q107 844 124 935T168 1082T239 1169T329 1213T437 1225Q598
|
||||
1225 668 1111T739 751Q739 676 737 628H257V445Q257 327 268 252T305 138T360 87T436 74Q503 74 548 141T595 367H735Q729 299 719 246T688 140T635 52T553 -5T438 -27Q311 -27 241 23T137 199T106 552Z" />
|
||||
<glyph unicode="f" horiz-adv-x="532" d="M177 0V1114H10V1198H177V1327Q177 1333 177 1345Q177 1377 177 1396T181 1451T192 1510T216 1563T254 1610T313 1640T394 1652Q463 1652 516 1639V1530Q492 1536 442 1536Q409 1536 386 1526T352 1504T334 1468T328 1429T327
|
||||
1386Q327 1381 327 1378V1198H519V1114H327V0H177Z" />
|
||||
<glyph unicode="g" horiz-adv-x="881" d="M378 468T428 468T515 491T572 547T604 625T619 705T623 776Q623 811 620 846T605 930T573 1015T516 1077T428 1103Q386 1103 353 1086T299 1038T264 975T244 902T235 833T232 776Q232 739 235 705T250 625T283 547T340
|
||||
491ZM524 3L310 49Q260 12 210 -63T159 -191Q159 -214 169 -231T202 -258T244 -274T299 -282T352 -285T405 -286Q414 -286 418 -286Q683 -286 683 -157Q683 -86 646 -50T524 3ZM214 210Q209 187 241 176T405 138Q446 130 469 125Q551 108 610 89T720 40T798 -32T824
|
||||
-130Q824 -180 808 -220T765 -288T702 -335T628 -366T550 -383T477 -391T416 -393Q17 -393 17 -236Q17 -135 82 -57T241 69Q226 72 193 81T118 111T76 150Q76 163 79 178T90 211T106 245T126 281T147 315T169 349T189 377T207 401T219 418Q148 482 114 583T79 793Q79
|
||||
851 90 909T127 1024T192 1126T290 1197T423 1224Q519 1224 582 1178T706 1038Q725 1071 739 1093T778 1145T830 1194T888 1221V1076Q850 1069 809 1043T737 981Q775 875 775 800Q775 728 763 664T725 544T658 446T559 382T427 358Q341 358 283 382Q228 278 214
|
||||
210Z" />
|
||||
<glyph unicode="h" horiz-adv-x="860" d="M120 0V1721H270V1085Q315 1155 383 1190T522 1225Q614 1225 681 1151T748 942V0H596V934Q596 1114 470 1114Q421 1114 365 1080T270 992V0H120Z" />
|
||||
<glyph unicode="i" horiz-adv-x="405" d="M132 1472V1651H282V1472H132ZM132 0V1198H282V0H132Z" />
|
||||
<glyph unicode="j" horiz-adv-x="428" d="M148 1473V1652H298V1473H148ZM-44 -312V-204Q2 -206 12 -206Q45 -206 69 -197T108 -171T131 -136T143 -94T147 -54T148 -18V1198H298V-46Q298 -320 37 -320Q-3 -320 -44 -312Z" />
|
||||
<glyph unicode="k" horiz-adv-x="830" d="M120 0V1721H270V630L644 1198H813L526 744L811 0H654L419 653L270 470V0H120Z" />
|
||||
<glyph unicode="l" horiz-adv-x="442" d="M146 0V1721H296V0H146Z" />
|
||||
<glyph unicode="m" horiz-adv-x="1335" d="M120 0V1198H271V1087Q388 1225 537 1225Q598 1225 655 1187T737 1089Q796 1156 866 1190T994 1225Q1086 1225 1154 1161T1223 1001V0H1073V970Q1073 1045 1040 1079T950 1114Q857 1114 760 1017V0H610V971Q610 1114
|
||||
483 1114Q432 1114 376 1082T270 995V0H120Z" />
|
||||
<glyph unicode="n" horiz-adv-x="860" d="M120 0V1198H270V1085Q318 1155 385 1190T524 1225Q613 1225 680 1151T748 941V0H596V944Q596 1033 561 1073T469 1114Q422 1114 369 1082T270 993V0H120Z" />
|
||||
<glyph unicode="o" horiz-adv-x="846" d="M106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740 501 740 467T737 373T729 279T712 197T686 121T646 62T591
|
||||
13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487 1112T423 1124T360 1113T314 1074T284 1011T267 915T258
|
||||
790T256 630Z" />
|
||||
<glyph unicode="p" horiz-adv-x="871" d="M615 558V653Q615 747 611 820T599 941T580 1022T557 1074T529 1101T499 1112T466 1114Q421 1114 368 1081T270 993V203Q377 84 471 84Q493 84 507 88T540 106T570 151T593 233T610 366T615 558ZM120 -385V1198H270V1085Q360
|
||||
1225 512 1225Q539 1225 561 1221T610 1202T658 1163T700 1095T734 993T756 847T765 652V557Q765 402 749 291T708 119T646 25T576 -18T501 -27Q438 -27 378 8T270 113V-385H120Z" />
|
||||
<glyph unicode="q" horiz-adv-x="871" d="M601 203V993Q556 1047 503 1080T405 1114Q385 1114 373 1112T343 1101T314 1074T291 1023T272 941T261 820T256 653V558Q256 448 261 366T277 234T300 152T330 106T363 88T400 84Q494 84 601 203ZM601 -385V113Q554 44
|
||||
494 9T370 -27Q327 -27 295 -19T225 24T163 119T123 290T106 557V652Q106 760 114 847T136 992T171 1094T213 1162T261 1201T310 1220T359 1225Q511 1225 601 1085V1198H751V-385H601Z" />
|
||||
<glyph unicode="r" horiz-adv-x="534" d="M120 0V1198H270V1029Q298 1122 371 1168T522 1217V1066Q511 1070 499 1070Q270 1070 270 894V0H120Z" />
|
||||
<glyph unicode="s" horiz-adv-x="749" d="M57 300L172 339Q186 295 206 254T256 172T324 106T407 81Q486 81 525 129T565 259Q565 374 360 554L273 630Q174 717 124 785T73 939Q73 1074 155 1148T374 1223Q439 1223 492 1198T581 1129T641 1033T681 919L548 878Q539
|
||||
934 520 984T460 1074T367 1115Q300 1115 261 1070T221 952Q221 892 259 838T371 722L466 640Q512 600 536 578T598 514T655 439T689 358T706 262Q706 128 622 51T401 -27Q269 -27 181 65T57 300Z" />
|
||||
<glyph unicode="t" horiz-adv-x="550" d="M167 283V1114H4V1198H167V1623H317V1198H509V1114H317V290Q317 247 318 223T324 170T340 127T370 104T419 94Q468 94 507 102V-1Q440 -18 377 -18Q321 -18 281 -1T220 43T186 112T170 192T167 283Z" />
|
||||
<glyph unicode="u" horiz-adv-x="892" d="M112 257V1198H264V254Q264 165 299 125T391 84Q438 84 491 116T590 205V1198H740V0H590V113Q542 43 475 8T336 -27Q247 -27 180 47T112 257Z" />
|
||||
<glyph unicode="v" horiz-adv-x="747" d="M297 0L25 1198H171L385 136L579 1198H722L472 0H297Z" />
|
||||
<glyph unicode="w" horiz-adv-x="1161" d="M240 0L42 1198H173L331 176L502 1198H662L846 176L990 1198H1119L923 0H778L585 988L399 0H240Z" />
|
||||
<glyph unicode="x" horiz-adv-x="783" d="M39 0L297 626L41 1198H196L392 699L588 1198H743L486 626L744 0H598L392 534L186 0H39Z" />
|
||||
<glyph unicode="y" horiz-adv-x="777" d="M77 -299V-176Q197 -168 252 -136T308 -46Q308 27 297 96L37 1198H189L397 197L601 1198H753L453 -83Q423 -199 334 -246T80 -299H77Z" />
|
||||
<glyph unicode="z" horiz-adv-x="695" d="M47 0V144L519 1084H111V1198H660V1055L199 115H654V0H47Z" />
|
||||
<glyph unicode="{" horiz-adv-x="520" d="M511 56V-57Q455 -57 409 -45T329 -16T269 37T226 102T197 185T179 276T170 382T167 491T166 609Q166 687 140 727T35 768V956Q114 956 140 996T166 1115Q166 1192 166 1233T170 1342T179 1447T197 1538T226 1622T269
|
||||
1687T329 1739T409 1769T511 1781V1668Q459 1668 423 1656T364 1609T328 1544T310 1442T303 1324T302 1174Q302 1117 297 1074T275 985T225 909T139 862Q190 847 224 816T275 739T296 651T302 550Q302 447 303 400T309 282T328 181T364 115T423 68T511 56Z" />
|
||||
<glyph unicode="|" horiz-adv-x="416" d="M150 -128V1746H268V-128H150Z" />
|
||||
<glyph unicode="}" horiz-adv-x="530" d="M25 -57V56Q77 56 113 68T172 115T208 180T226 282T233 400T234 550Q234 607 239 650T261 739T311 815T397 862Q346 877 312 908T261 985T240 1073T234 1174Q234 1277 233 1324T227 1442T208 1543T172 1609T113 1656T25
|
||||
1668V1781Q81 1781 127 1769T207 1740T267 1687T310 1622T339 1539T357 1448T366 1342T369 1233T370 1115Q370 1037 396 997T501 956V768Q422 768 396 728T370 609Q370 532 370 491T366 382T357 277T339 186T310 102T267 37T207 -15T127 -45T25 -57Z" />
|
||||
<glyph unicode="~" horiz-adv-x="815" d="M213 959H98Q99 978 101 996T115 1043T143 1093T195 1130T275 1146Q317 1146 414 1108T550 1070Q579 1070 595 1084T616 1137H732Q732 1136 731 1124T727 1095T717 1058T699 1019T669 984T623 957T558 947Q501 947 407
|
||||
986T275 1025Q247 1025 233 1011T213 959Z" />
|
||||
<glyph unicode=" " horiz-adv-x="406" />
|
||||
<glyph unicode="¡" horiz-adv-x="434" d="M304 1377V1198H119V1377H304ZM245 989L325 -343H131L191 989H245Z" />
|
||||
<glyph unicode="¢" horiz-adv-x="760" d="M370 87V240Q309 244 262 264T183 309T131 382T99 466T83 570T77 677T76 794V856Q76 928 76 965T82 1069T98 1173T130 1260T182 1336T260 1384T369 1410V1543H434V1409Q510 1403 563 1370T645 1277T687 1155T706
|
||||
1006Q706 1004 706 999T707 992H557V1006Q556 1038 555 1051T552 1098T545 1151T533 1198T515 1243T488 1276T450 1301T401 1309Q366 1309 340 1300T296 1276T265 1229T245 1168T234 1083T229 982T226 856V794Q226 708 228 649T237 535T256 447T287 387T334 350T400
|
||||
339Q421 339 439 344T471 360T496 382T515 414T530 448T540 488T546 529T551 572T554 612T556 652Q556 655 556 661T557 669H708Q708 667 708 663T707 657Q704 585 696 530T670 421T622 330T546 270T435 240V87H370Z" />
|
||||
<glyph unicode="£" horiz-adv-x="836" d="M55 0V65L183 115V768H55V877H183V1204Q183 1247 184 1284T193 1379T212 1483T249 1580T307 1666T392 1722T508 1745Q565 1745 610 1728T684 1685T732 1620T762 1548T777 1471T783 1405T784 1350Q784 1345 784 1343H664Q664
|
||||
1383 664 1403T660 1458T651 1512T634 1555T605 1591T562 1611T502 1617Q477 1616 457 1610T421 1590T393 1564T372 1526T357 1482T346 1429T340 1372T336 1307T335 1239T335 1164V883H624V768H335V115H783V0H55Z" />
|
||||
<glyph unicode="¤" horiz-adv-x="1028" d="M516 311Q613 313 684 361T788 480T821 635Q821 764 741 859T516 959Q371 955 291 860T211 635Q211 552 243 481T347 362T516 311ZM168 189L246 313Q178 372 142 457T106 635Q106 726 140 810T241 953L168 1070L222
|
||||
1108L294 992Q390 1051 516 1051Q653 1051 752 982L831 1108L885 1070L803 941Q863 882 894 802T926 635Q926 547 894 466T799 325L885 189L831 151L747 284Q648 219 516 219Q393 219 299 275L222 151L168 189Z" />
|
||||
<glyph unicode="¥" horiz-adv-x="909" d="M386 0V226H174V317H386V523H174V612H361L10 1721H179L461 689Q506 853 556 1037T647 1372T743 1721H902L562 612H743V523H538V317H743V226H538V0H386Z" />
|
||||
<glyph unicode="¦" horiz-adv-x="403" d="M137 889V1441H269V889H137ZM137 -14V537H269V-14H137Z" />
|
||||
<glyph unicode="§" horiz-adv-x="834" d="M392 722L538 595Q622 633 622 758Q622 875 417 1053L348 1113Q292 1104 260 1060T228 952Q228 921 240 891T280 830T329 779T392 722ZM78 300L193 339Q207 295 227 254T277 172T345 106T428 81Q507 81 546 129T586
|
||||
259Q586 374 381 554L294 630Q253 666 240 678T193 723T146 774T113 822T87 880T80 939Q80 1037 124 1104T249 1201Q185 1261 151 1317T116 1438Q116 1573 198 1647T417 1722Q482 1722 535 1697T624 1628T684 1532T724 1418L591 1377Q582 1433 563 1483T503 1573T410
|
||||
1614Q343 1614 304 1569T264 1451Q264 1410 290 1367T345 1295T428 1221L523 1139Q576 1093 610 1058T683 974T742 872T763 761Q763 674 726 610T623 510Q724 393 727 262Q727 128 643 51T422 -27Q290 -27 202 65T78 300Z" />
|
||||
<glyph unicode="¨" horiz-adv-x="795" d="M497 1386V1565H681V1386H497ZM113 1386V1565H297V1386H113Z" />
|
||||
<glyph unicode="©" horiz-adv-x="1378" d="M591 67T696 67T890 100T1041 189T1148 321T1214 482T1236 657T1215 832T1149 992T1042 1124T890 1214T696 1247T502 1214T351 1125T244 993T178 832T156 657T177 482T243 322T350 190T502 100ZM818 -2T696 -2T471
|
||||
35T294 135T168 282T91 462T66 657T91 852T168 1031T293 1179T470 1279T696 1316T921 1279T1098 1179T1224 1032T1301 852T1326 657T1301 462T1224 283T1099 135T922 35ZM830 505H917Q917 499 917 489T912 449T901 393T877 334T839 278T782 238T702 222Q663 222
|
||||
631 231T576 253T535 291T504 337T484 395T472 457T465 526T463 595T462 667T462 738T465 807T471 876T484 938T504 996T534 1043T576 1080T631 1103T702 1112Q748 1112 784 1096T843 1057T880 1001T903 943T913 886T917 847T917 829H830Q829 876 824 909T805 975T766
|
||||
1023T701 1040Q667 1040 644 1032T604 1003T578 957T563 884T557 790T555 667T556 544T563 450T577 378T603 331T643 302T701 294Q740 294 766 310T805 359T823 424T830 505Z" />
|
||||
<glyph unicode="ª" horiz-adv-x="745" d="M493 193V524Q417 475 376 445T294 376T237 298T220 212Q220 145 250 113T321 81Q368 81 416 112T493 193ZM518 0L502 120Q462 50 403 14T291 -23Q214 -23 154 35T94 189Q94 222 95 241T104 293T127 347T171 400T242
|
||||
457T347 516T493 580Q493 675 484 736T455 823T417 858T371 866Q348 866 331 860T293 835T259 774T243 670H113Q123 801 190 875T366 950Q427 950 473 931T547 881T591 808T614 725T620 639V220Q620 170 624 115T632 30L635 0H518Z" />
|
||||
<glyph unicode="«" horiz-adv-x="874" d="M778 124L390 576V704L778 1156V956L502 641L778 324V124ZM466 124L78 576V704L466 1156V956L190 641L466 324V124Z" />
|
||||
<glyph unicode="¬" horiz-adv-x="657" d="M100 448V563H540V256H484V448H100Z" />
|
||||
<glyph unicode="­" horiz-adv-x="659" d="M117 448V563H558V448H117Z" />
|
||||
<glyph unicode="®" horiz-adv-x="1378" d="M591 67T696 67T890 100T1041 189T1148 321T1214 482T1236 657T1215 832T1149 992T1042 1124T890 1214T696 1247T502 1214T351 1125T244 993T178 832T156 657T177 482T243 322T350 190T502 100ZM818 -2T696 -2T471
|
||||
35T294 135T168 282T91 462T66 657T91 852T168 1031T293 1179T470 1279T696 1316T921 1279T1098 1179T1224 1032T1301 852T1326 657T1301 462T1224 283T1099 135T922 35ZM576 695H643Q678 695 690 695T731 697T772 705T802 721T830 747T844 787T851 843Q851 940
|
||||
810 986T682 1032H576V695ZM504 241V1083H695Q931 1083 931 843Q931 773 884 721T783 657Q797 628 937 244H851L718 646H576V241H504Z" />
|
||||
<glyph unicode="¯" horiz-adv-x="702" d="M131 1383V1498H572V1383H131Z" />
|
||||
<glyph unicode="°" horiz-adv-x="637" d="M210 1722T317 1722T480 1657T536 1504T480 1351T317 1286T154 1351T98 1504T154 1657ZM176 1563T176 1504T210 1401T317 1357T424 1401T458 1504T424 1607T317 1651T210 1607Z" />
|
||||
<glyph unicode="±" horiz-adv-x="702" d="M298 384V576H106V691H298V883H418V691H610V576H418V384H298ZM106 0V115H610V0H106Z" />
|
||||
<glyph unicode="²" horiz-adv-x="764" d="M100 586V686L405 1145Q522 1333 522 1423Q522 1635 398 1635Q350 1635 318 1614T270 1553T250 1471T244 1371H102Q102 1549 174 1646T397 1743Q530 1743 597 1658T664 1424Q664 1308 534 1106L269 697H650V586H100Z" />
|
||||
<glyph unicode="³" horiz-adv-x="770" d="M104 955H234Q234 898 239 856T260 774T306 714T383 693Q459 693 492 748T525 914Q525 980 479 1056T364 1146V1230Q442 1252 483 1307T525 1425Q525 1638 393 1638Q353 1638 324 1623T277 1585T250 1525T237 1454T234
|
||||
1374H104Q104 1551 175 1647T392 1744Q520 1744 587 1656T655 1436Q655 1362 610 1291T497 1188Q563 1149 609 1066T655 913Q655 764 586 676T382 587Q241 587 173 683T104 955Z" />
|
||||
<glyph unicode="´" horiz-adv-x="444" d="M96 1324L219 1722H381L152 1324H96Z" />
|
||||
<glyph unicode="¶" horiz-adv-x="969" d="M389 0V876Q219 876 121 951T23 1165Q23 1304 116 1381T394 1459H831V0H725V876H514V0H389Z" />
|
||||
<glyph unicode="·" horiz-adv-x="446" d="M131 704V883H316V704H131Z" />
|
||||
<glyph unicode="¸" horiz-adv-x="449" d="M111 -394V-335Q258 -335 258 -268Q258 -237 229 -201T155 -134V0H219V-115Q361 -198 361 -277Q361 -329 295 -361T111 -394Z" />
|
||||
<glyph unicode="¹" horiz-adv-x="522" d="M243 588V1497Q201 1468 144 1442T51 1408V1533Q111 1555 181 1603T292 1721H379V588H243Z" />
|
||||
<glyph unicode="º" horiz-adv-x="715" d="M111 1234V1283Q111 1332 111 1357T114 1428T120 1500T132 1565T153 1626T184 1674T227 1714T284 1737T358 1747T431 1738T489 1714T532 1674T563 1626T584 1565T597 1501T603 1429T605 1357T606 1283V1234Q606 1167
|
||||
606 1133T601 1041T587 951T560 880T516 820T450 785T358 770Q298 770 254 786T184 840T142 912T120 1011T113 1116T111 1234ZM228 1283V1234Q228 1014 253 932T358 849Q438 849 463 931T489 1234V1283Q489 1372 487 1429T476 1536T454 1612T416 1653T358 1668Q276
|
||||
1668 252 1586T228 1283Z" />
|
||||
<glyph unicode="»" horiz-adv-x="872" d="M423 124V324L699 641L423 956V1156L811 704V576L423 124ZM111 124V324L387 641L111 956V1156L499 704V576L111 124Z" />
|
||||
<glyph unicode="¼" horiz-adv-x="1499" d="M192 588V1497Q150 1468 93 1442T0 1408V1533Q60 1555 130 1603T241 1721H328V588H192ZM348 0L900 1721H1045L492 0H348ZM1028 378H1258L1257 1016L1028 378ZM883 276V371L1184 1132H1394V378H1528V276H1394V-1H1258V276H883Z"
|
||||
/>
|
||||
<glyph unicode="½" horiz-adv-x="1716" d="M1126 -1V99L1431 558Q1548 746 1548 836Q1548 1048 1424 1048Q1376 1048 1344 1027T1296 966T1276 884T1270 784H1128Q1128 962 1200 1059T1423 1156Q1556 1156 1623 1071T1690 837Q1690 721 1560 519L1295 110H1676V-1H1126ZM468
|
||||
0L1020 1721H1165L612 0H468ZM192 588V1497Q150 1468 93 1442T0 1408V1533Q60 1555 130 1603T241 1721H328V588H192Z" />
|
||||
<glyph unicode="¾" horiz-adv-x="1890" d="M1418 378H1648L1647 1016L1418 378ZM1273 276V371L1574 1132H1784V378H1918V276H1784V-1H1648V276H1273ZM645 0L1197 1721H1342L789 0H645ZM59 955H189Q189 898 194 856T215 774T261 714T338 693Q414 693 447 748T480
|
||||
914Q480 980 434 1056T319 1146V1230Q397 1252 438 1307T480 1425Q480 1638 348 1638Q308 1638 279 1623T232 1585T205 1525T192 1454T189 1374H59Q59 1551 130 1647T347 1744Q475 1744 542 1656T610 1436Q610 1362 565 1291T452 1188Q518 1149 564 1066T610 913Q610
|
||||
764 541 676T337 587Q196 587 128 683T59 955Z" />
|
||||
<glyph unicode="¿" horiz-adv-x="811" d="M566 1378V1198H382V1378H566ZM541 926V586Q468 543 409 498T309 411T239 327T192 249T165 176T152 114T149 62Q149 -19 170 -80T227 -176T308 -228T402 -246Q520 -246 596 -166T673 58L674 200H808V54Q808 -46 773
|
||||
-127T681 -260T551 -340T402 -368Q342 -368 286 -352T180 -301T93 -217T34 -96T12 60Q12 240 110 379T407 642V926H541Z" />
|
||||
<glyph unicode="À" horiz-adv-x="972" d="M458 1908L229 2306H391L514 1908H458ZM306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Á" horiz-adv-x="972" d="M458 1908L581 2306H743L514 1908H458ZM306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Â" horiz-adv-x="972" d="M225 1908L381 2215H594L747 1908H637L487 2207L338 1908H225ZM306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Ã" horiz-adv-x="972" d="M324 1920H209Q210 1939 212 1957T227 2004T257 2054T312 2091T396 2107Q424 2107 490 2069T581 2031Q610 2031 626 2045T647 2098H763L762 2084Q761 2071 758 2056T748 2019T728 1980T696 1945T647 1918T579 1908T476
|
||||
1947T386 1986Q358 1986 344 1972T324 1920ZM306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Ä" horiz-adv-x="972" d="M586 1908V2087H770V1908H586ZM202 1908V2087H386V1908H202ZM306 549H666L485 1563L306 549ZM200 0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Å" horiz-adv-x="972" d="M379 2166T486 2166T649 2101T705 1948T649 1795T486 1730T323 1795T267 1948T323 2101ZM345 2007T345 1948T379 1845T486 1801T593 1845T627 1948T593 2051T486 2095T379 2051ZM306 549H666L485 1563L306 549ZM200
|
||||
0H47L387 1721H585L925 0H771L685 448H288L200 0Z" />
|
||||
<glyph unicode="Æ" horiz-adv-x="1380" d="M365 549H719V1563L365 549ZM12 0L648 1721H1320V1599H872V947H1192V832H872V122H1320V0H720V448H329L164 0H12Z" />
|
||||
<glyph unicode="Ç" horiz-adv-x="1032" d="M454 -408V-349Q601 -349 601 -282Q601 -251 572 -215T498 -148V-14H562V-129Q704 -212 704 -291Q704 -343 638 -375T454 -408ZM114 499V1220Q114 1312 126 1387T168 1530T247 1644T369 1718T542 1745Q946 1745
|
||||
946 1220V1150H801V1254Q801 1337 789 1401T747 1516T667 1595T542 1623Q476 1623 427 1605T348 1554T299 1474T273 1374T266 1254V465Q266 380 278 318T319 203T405 123T542 95Q615 95 666 122T747 202T788 318T801 465V583H946V499Q946 408 935 333T896 190T822
|
||||
75T706 1T542 -27Q442 -27 367 0T244 74T167 189T126 332T114 499Z" />
|
||||
<glyph unicode="È" horiz-adv-x="795" d="M418 1908L189 2306H351L474 1908H418ZM146 0V1721H746V1599H298V947H618V832H298V122H746V0H146Z" />
|
||||
<glyph unicode="É" horiz-adv-x="795" d="M418 1908L541 2306H703L474 1908H418ZM146 0V1721H746V1599H298V947H618V832H298V122H746V0H146Z" />
|
||||
<glyph unicode="Ê" horiz-adv-x="795" d="M185 1908L341 2215H554L707 1908H597L447 2207L298 1908H185ZM146 0V1721H746V1599H298V947H618V832H298V122H746V0H146Z" />
|
||||
<glyph unicode="Ë" horiz-adv-x="795" d="M546 1908V2087H730V1908H546ZM162 1908V2087H346V1908H162ZM146 0V1721H746V1599H298V947H618V832H298V122H746V0H146Z" />
|
||||
<glyph unicode="Ì" horiz-adv-x="444" d="M193 1908L-36 2306H126L249 1908H193ZM145 0V1721H297V0H145Z" />
|
||||
<glyph unicode="Í" horiz-adv-x="444" d="M193 1908L316 2306H478L249 1908H193ZM145 0V1721H297V0H145Z" />
|
||||
<glyph unicode="Î" horiz-adv-x="444" d="M-40 1908L116 2215H329L482 1908H372L222 2207L73 1908H-40ZM145 0V1721H297V0H145Z" />
|
||||
<glyph unicode="Ï" horiz-adv-x="444" d="M321 1908V2087H505V1908H321ZM-63 1908V2087H121V1908H-63ZM145 0V1721H297V0H145Z" />
|
||||
<glyph unicode="Ð" horiz-adv-x="1128" d="M335 122H570Q857 122 857 474V1242Q857 1599 570 1599H335V924H535V830H335V122ZM183 0V830H43V924H183V1721H570Q668 1721 744 1695T869 1623T950 1511T995 1371T1009 1208V508Q1009 0 570 0H183Z" />
|
||||
<glyph unicode="Ñ" horiz-adv-x="1083" d="M379 1920H264Q265 1939 267 1957T282 2004T312 2054T367 2091T451 2107Q479 2107 545 2069T636 2031Q665 2031 681 2045T702 2098H818L817 2084Q816 2071 813 2056T803 2019T783 1980T751 1945T702 1918T634 1908T531
|
||||
1947T441 1986Q413 1986 399 1972T379 1920ZM146 0V1721H263L808 358V1721H937V0H823L277 1334V0H146Z" />
|
||||
<glyph unicode="Ò" horiz-adv-x="1106" d="M525 1908L296 2306H458L581 1908H525ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114 499ZM840 465V1254Q840
|
||||
1623 553 1623T266 1254V465Q266 95 553 95T840 465Z" />
|
||||
<glyph unicode="Ó" horiz-adv-x="1106" d="M525 1908L648 2306H810L581 1908H525ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114 499ZM840 465V1254Q840
|
||||
1623 553 1623T266 1254V465Q266 95 553 95T840 465Z" />
|
||||
<glyph unicode="Ô" horiz-adv-x="1106" d="M292 1908L448 2215H661L814 1908H704L554 2207L405 1908H292ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114
|
||||
499ZM840 465V1254Q840 1623 553 1623T266 1254V465Q266 95 553 95T840 465Z" />
|
||||
<glyph unicode="Õ" horiz-adv-x="1106" d="M391 1920H276Q277 1939 279 1957T294 2004T324 2054T379 2091T463 2107Q491 2107 557 2069T648 2031Q677 2031 693 2045T714 2098H830L829 2084Q828 2071 825 2056T815 2019T795 1980T763 1945T714 1918T646 1908T543
|
||||
1947T453 1986Q425 1986 411 1972T391 1920ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114 499ZM840 465V1254Q840 1623 553 1623T266 1254V465Q266 95 553 95T840
|
||||
465Z" />
|
||||
<glyph unicode="Ö" horiz-adv-x="1106" d="M653 1908V2087H837V1908H653ZM269 1908V2087H453V1908H269ZM114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745T727 1718T852 1645T933 1531T978 1387T992 1220V499Q992 -27 553 -27T114 499ZM840
|
||||
465V1254Q840 1623 553 1623T266 1254V465Q266 95 553 95T840 465Z" />
|
||||
<glyph unicode="×" horiz-adv-x="674" d="M51 410L243 602L51 794L127 869L319 677L511 869L587 794L395 602Q562 434 587 410L511 334L319 526L127 334L51 410Z" />
|
||||
<glyph unicode="Ø" horiz-adv-x="1106" d="M992 499Q992 -27 553 -27Q416 -27 320 25L263 -152L199 -132L262 65Q114 193 114 499V1220Q114 1311 127 1387T173 1530T254 1644T379 1718T553 1745Q690 1745 785 1692L842 1870L907 1850L843 1652Q992 1522 992
|
||||
1220V499ZM553 95Q840 95 840 465V1254Q840 1405 793 1495L363 159Q433 95 553 95ZM266 1254V465Q266 314 313 224L742 1560Q674 1623 553 1623Q266 1623 266 1254Z" />
|
||||
<glyph unicode="Ù" horiz-adv-x="1132" d="M529 1908L300 2306H462L585 1908H529ZM120 423V1721H272V388Q272 240 339 168T565 95Q715 95 779 168T843 388V1721H994V423Q994 -27 565 -27Q462 -27 384 -3T256 61T175 160T132 282T120 423Z" />
|
||||
<glyph unicode="Ú" horiz-adv-x="1132" d="M529 1908L652 2306H814L585 1908H529ZM120 423V1721H272V388Q272 240 339 168T565 95Q715 95 779 168T843 388V1721H994V423Q994 -27 565 -27Q462 -27 384 -3T256 61T175 160T132 282T120 423Z" />
|
||||
<glyph unicode="Û" horiz-adv-x="1132" d="M296 1908L452 2215H665L818 1908H708L558 2207L409 1908H296ZM120 423V1721H272V388Q272 240 339 168T565 95Q715 95 779 168T843 388V1721H994V423Q994 -27 565 -27Q462 -27 384 -3T256 61T175 160T132 282T120 423Z" />
|
||||
<glyph unicode="Ü" horiz-adv-x="1132" d="M657 1908V2087H841V1908H657ZM273 1908V2087H457V1908H273ZM120 423V1721H272V388Q272 240 339 168T565 95Q715 95 779 168T843 388V1721H994V423Q994 -27 565 -27Q462 -27 384 -3T256 61T175 160T132 282T120 423Z" />
|
||||
<glyph unicode="Ý" horiz-adv-x="888" d="M416 1908L539 2306H701L472 1908H416ZM374 0V534L-2 1721H152Q172 1649 210 1518T288 1252T365 993T427 788L451 709Q515 944 599 1228T741 1721H890L526 534V0H374Z" />
|
||||
<glyph unicode="Þ" horiz-adv-x="1058" d="M298 628L584 627Q712 626 767 715T822 996Q822 1174 763 1257T584 1340H298V628ZM146 0V1721H298V1462H567Q657 1462 727 1438T843 1371T919 1269T961 1143T974 999Q974 920 964 853T925 720T852 609T734 535T566
|
||||
506H298V0H146Z" />
|
||||
<glyph unicode="ß" horiz-adv-x="1053" d="M137 0V1338Q137 1436 168 1515T252 1644T370 1720T506 1746Q575 1746 638 1719T753 1642T835 1510T866 1328Q866 1258 843 1188T770 1056T650 967Q724 950 781 908T872 812T926 693T954 569T961 453Q961 -27 384
|
||||
-27V89Q491 89 569 110T693 164T765 247T800 344T809 453Q809 528 801 588T771 706T714 803T619 865T481 889H376V1006H483Q544 1006 588 1032T657 1104T692 1205T703 1325Q703 1473 643 1555T499 1638Q414 1638 352 1558T289 1335V0H137Z" />
|
||||
<glyph unicode="à" horiz-adv-x="808" d="M371 1388L142 1786H304L427 1388H371ZM554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312 -27Q219 -27 147 46T75
|
||||
239Q75 271 76 290T81 341T94 393T119 444T160 498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225 531 1202T619 1142T672
|
||||
1054T699 955T706 852V276Q706 213 710 144T720 38L724 0H584Z" />
|
||||
<glyph unicode="á" horiz-adv-x="808" d="M372 1388L495 1786H657L428 1388H372ZM554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312 -27Q219 -27 147 46T75
|
||||
239Q75 271 76 290T81 341T94 393T119 444T160 498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225 531 1202T619 1142T672
|
||||
1054T699 955T706 852V276Q706 213 710 144T720 38L724 0H584Z" />
|
||||
<glyph unicode="â" horiz-adv-x="808" d="M138 1644L294 1951H507L660 1644H550L400 1943L251 1644H138ZM554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312
|
||||
-27Q219 -27 147 46T75 239Q75 271 76 290T81 341T94 393T119 444T160 498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225
|
||||
531 1202T619 1142T672 1054T699 955T706 852V276Q706 213 710 144T720 38L724 0H584Z" />
|
||||
<glyph unicode="ã" horiz-adv-x="808" d="M237 1400H122Q123 1419 125 1437T140 1484T170 1534T225 1571T309 1587Q337 1587 403 1549T494 1511Q523 1511 539 1525T560 1578H676L675 1564Q674 1551 671 1536T661 1499T641 1460T609 1425T560 1398T492 1388T389
|
||||
1427T299 1466Q271 1466 257 1452T237 1400ZM554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312 -27Q219 -27 147 46T75 239Q75 271 76 290T81 341T94 393T119 444T160
|
||||
498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225 531 1202T619 1142T672 1054T699 955T706 852V276Q706 213 710 144T720
|
||||
38L724 0H584Z" />
|
||||
<glyph unicode="ä" horiz-adv-x="808" d="M499 1388V1567H683V1388H499ZM115 1388V1567H299V1388H115ZM554 244V666Q481 615 439 584T351 512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312
|
||||
-27Q219 -27 147 46T75 239Q75 271 76 290T81 341T94 393T119 444T160 498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490 1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225
|
||||
531 1202T619 1142T672 1054T699 955T706 852V276Q706 213 710 144T720 38L724 0H584Z" />
|
||||
<glyph unicode="å" horiz-adv-x="808" d="M292 1824T399 1824T562 1759T618 1606T562 1453T399 1388T236 1453T180 1606T236 1759ZM258 1665T258 1606T292 1503T399 1459T506 1503T540 1606T506 1709T399 1753T292 1709ZM554 244V666Q481 615 439 584T351
|
||||
512T281 436T242 359T226 267Q226 181 262 140T347 98Q404 98 462 139T554 244ZM584 0L565 145Q517 61 447 17T312 -27Q219 -27 147 46T75 239Q75 271 76 290T81 341T94 393T119 444T160 498T220 552T303 610T413 669T554 733V743Q554 845 545 917T523 1029T490
|
||||
1091T451 1118T407 1124Q380 1124 359 1117T314 1088T274 1018T254 896V889H98Q110 1046 190 1135T402 1225Q475 1225 531 1202T619 1142T672 1054T699 955T706 852V276Q706 213 710 144T720 38L724 0H584Z" />
|
||||
<glyph unicode="æ" horiz-adv-x="1255" d="M707 708V704Q787 720 844 744T933 793T983 852T1005 911T1010 970Q1010 1035 979 1079T893 1124Q863 1124 838 1117T795 1100T763 1069T740 1031T724 980T714 923T710 857T708 786T707 708ZM553 489V586Q358 516
|
||||
292 453T225 267Q225 184 255 141T328 97Q386 97 432 142T503 254T540 382T553 489ZM253 889H97Q109 1046 189 1135T401 1225Q566 1225 633 1072Q715 1225 886 1225Q996 1225 1070 1152T1144 958Q1144 900 1120 851T1057 768T972 707T879 664T793 638T730 624L706
|
||||
620V445Q706 302 728 218T783 104T868 74Q900 74 924 85T970 124T1004 208T1018 346V367H1158L1156 345Q1150 278 1140 228T1109 127T1058 45T979 -7T865 -27Q759 -27 690 35T598 209Q579 142 543 93T463 19T382 -16T311 -27Q218 -27 146 46T74 239Q74 271 75 290T80
|
||||
339T93 389T118 437T159 485T219 532T302 580T412 626T553 675V751Q552 851 544 922T522 1031T488 1091T450 1118T406 1124T359 1117T315 1090T275 1023T254 908Q254 905 254 899T253 889Z" />
|
||||
<glyph unicode="ç" horiz-adv-x="816" d="M346 -408V-349Q493 -349 493 -282Q493 -251 464 -215T390 -148V-14H454V-129Q596 -212 596 -291Q596 -343 530 -375T346 -408ZM106 568V630Q106 710 107 752T114 868T131 983T167 1077T225 1157T312 1205T433 1225Q502
|
||||
1225 554 1203T639 1144T693 1053T723 943T736 817Q736 815 736 812T737 806H587V815Q581 984 548 1054T433 1124Q394 1124 366 1113T318 1074T286 1011T267 915T258 790T256 630V568Q256 287 291 181T433 74Q512 74 545 146T587 393V403H738V396Q735 320 727 263T698
|
||||
148T645 55T559 -4T433 -27Q373 -27 325 -15T244 25T186 80T147 159T124 246T111 349T107 454T106 568Z" />
|
||||
<glyph unicode="è" horiz-adv-x="829" d="M394 1388L165 1786H327L450 1388H394ZM258 702H590Q589 742 590 783T589 865T584 945T570 1015T545 1072T504 1110T444 1124Q389 1124 354 1104T299 1057T270 966T260 854T258 702ZM106 552V719Q107 844 124 935T168
|
||||
1082T239 1169T329 1213T437 1225Q598 1225 668 1111T739 751Q739 676 737 628H257V445Q257 327 268 252T305 138T360 87T436 74Q503 74 548 141T595 367H735Q729 299 719 246T688 140T635 52T553 -5T438 -27Q311 -27 241 23T137 199T106 552Z" />
|
||||
<glyph unicode="é" horiz-adv-x="829" d="M394 1388L517 1786H679L450 1388H394ZM258 702H590Q589 742 590 783T589 865T584 945T570 1015T545 1072T504 1110T444 1124Q389 1124 354 1104T299 1057T270 966T260 854T258 702ZM106 552V719Q107 844 124 935T168
|
||||
1082T239 1169T329 1213T437 1225Q598 1225 668 1111T739 751Q739 676 737 628H257V445Q257 327 268 252T305 138T360 87T436 74Q503 74 548 141T595 367H735Q729 299 719 246T688 140T635 52T553 -5T438 -27Q311 -27 241 23T137 199T106 552Z" />
|
||||
<glyph unicode="ê" horiz-adv-x="829" d="M161 1644L317 1951H530L683 1644H573L423 1943L274 1644H161ZM258 702H590Q589 742 590 783T589 865T584 945T570 1015T545 1072T504 1110T444 1124Q389 1124 354 1104T299 1057T270 966T260 854T258 702ZM106 552V719Q107
|
||||
844 124 935T168 1082T239 1169T329 1213T437 1225Q598 1225 668 1111T739 751Q739 676 737 628H257V445Q257 327 268 252T305 138T360 87T436 74Q503 74 548 141T595 367H735Q729 299 719 246T688 140T635 52T553 -5T438 -27Q311 -27 241 23T137 199T106 552Z"
|
||||
/>
|
||||
<glyph unicode="ë" horiz-adv-x="829" d="M522 1388V1567H706V1388H522ZM138 1388V1567H322V1388H138ZM258 702H590Q589 742 590 783T589 865T584 945T570 1015T545 1072T504 1110T444 1124Q389 1124 354 1104T299 1057T270 966T260 854T258 702ZM106 552V719Q107
|
||||
844 124 935T168 1082T239 1169T329 1213T437 1225Q598 1225 668 1111T739 751Q739 676 737 628H257V445Q257 327 268 252T305 138T360 87T436 74Q503 74 548 141T595 367H735Q729 299 719 246T688 140T635 52T553 -5T438 -27Q311 -27 241 23T137 199T106 552Z"
|
||||
/>
|
||||
<glyph unicode="ì" horiz-adv-x="405" d="M435 1388L206 1786H368L491 1388H435ZM132 0V1198H282V0H132Z" />
|
||||
<glyph unicode="í" horiz-adv-x="405" d="M179 1388L302 1786H464L235 1388H179ZM132 0V1198H282V0H132Z" />
|
||||
<glyph unicode="î" horiz-adv-x="405" d="M-54 1388L102 1695H315L468 1388H358L208 1687L59 1388H-54ZM132 0V1198H282V0H132Z" />
|
||||
<glyph unicode="ï" horiz-adv-x="405" d="M307 1388V1567H491V1388H307ZM-77 1388V1567H107V1388H-77ZM132 0V1198H282V0H132Z" />
|
||||
<glyph unicode="ð" horiz-adv-x="877" d="M234 545V531Q234 367 255 270T314 134T412 95Q453 95 480 103T534 139T575 216T600 348T609 551Q609 702 594 931Q571 952 514 964T402 977Q346 977 311 939T255 804T234 545ZM84 532V537Q84 661 102 760T157 937T256
|
||||
1056T402 1099Q517 1099 585 1054Q559 1238 517 1358L352 1321V1416L480 1445Q430 1538 357 1575T166 1623L152 1745Q319 1733 431 1670T614 1475L793 1516V1421L653 1389Q757 1118 758 535V510Q758 246 676 110T412 -27Q325 -27 261 15T158 134T102 310T84 532Z"
|
||||
/>
|
||||
<glyph unicode="ñ" horiz-adv-x="860" d="M272 1400H157Q158 1419 160 1437T175 1484T205 1534T260 1571T344 1587Q372 1587 438 1549T529 1511Q558 1511 574 1525T595 1578H711L710 1564Q709 1551 706 1536T696 1499T676 1460T644 1425T595 1398T527 1388T424
|
||||
1427T334 1466Q306 1466 292 1452T272 1400ZM120 0V1198H270V1085Q318 1155 385 1190T524 1225Q613 1225 680 1151T748 941V0H596V944Q596 1033 561 1073T469 1114Q422 1114 369 1082T270 993V0H120Z" />
|
||||
<glyph unicode="ò" horiz-adv-x="846" d="M395 1388L166 1786H328L451 1388H395ZM106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740 501 740 467T737
|
||||
373T729 279T712 197T686 121T646 62T591 13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487 1112T423 1124T360
|
||||
1113T314 1074T284 1011T267 915T258 790T256 630Z" />
|
||||
<glyph unicode="ó" horiz-adv-x="846" d="M395 1388L518 1786H680L451 1388H395ZM106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740 501 740 467T737
|
||||
373T729 279T712 197T686 121T646 62T591 13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487 1112T423 1124T360
|
||||
1113T314 1074T284 1011T267 915T258 790T256 630Z" />
|
||||
<glyph unicode="ô" horiz-adv-x="846" d="M162 1644L318 1951H531L684 1644H574L424 1943L275 1644H162ZM106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740
|
||||
501 740 467T737 373T729 279T712 197T686 121T646 62T591 13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487
|
||||
1112T423 1124T360 1113T314 1074T284 1011T267 915T258 790T256 630Z" />
|
||||
<glyph unicode="õ" horiz-adv-x="846" d="M261 1400H146Q147 1419 149 1437T164 1484T194 1534T249 1571T333 1587Q361 1587 427 1549T518 1511Q547 1511 563 1525T584 1578H700L699 1564Q698 1551 695 1536T685 1499T665 1460T633 1425T584 1398T516 1388T413
|
||||
1427T323 1466Q295 1466 281 1452T261 1400ZM106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740 501 740 467T737 373T729 279T712 197T686 121T646 62T591
|
||||
13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487 1112T423 1124T360 1113T314 1074T284 1011T267 915T258
|
||||
790T256 630Z" />
|
||||
<glyph unicode="ö" horiz-adv-x="846" d="M523 1388V1567H707V1388H523ZM139 1388V1567H323V1388H139ZM106 568V630Q106 710 107 752T113 868T130 983T165 1077T221 1157T306 1205T423 1225T540 1205T624 1158T681 1077T715 983T732 869T739 753T740 630V568Q740
|
||||
501 740 467T737 373T729 279T712 197T686 121T646 62T591 13T518 -15T423 -27T329 -16T255 12T200 61T161 121T134 197T118 279T110 372T107 467T106 568ZM256 630V568Q256 286 289 180T423 74T557 180T590 568V630Q590 725 588 790T580 914T562 1010T532 1073T487
|
||||
1112T423 1124T360 1113T314 1074T284 1011T267 915T258 790T256 630Z" />
|
||||
<glyph unicode="÷" horiz-adv-x="674" d="M227 233V412H411V233H227ZM227 879V1058H411V879H227ZM35 576V691H603V576H35Z" />
|
||||
<glyph unicode="ø" horiz-adv-x="850" d="M740 568Q740 501 740 467T737 373T729 279T712 197T686 121T646 62T591 13T518 -15T423 -27Q337 -27 274 3L191 -256L143 -240L230 31Q200 55 178 88T143 168T122 253T111 355T107 457T106 568V630Q106 710 107
|
||||
752T113 868T130 983T165 1077T221 1157T306 1205T423 1225Q529 1225 598 1178L695 1481L744 1465L640 1140Q676 1100 697 1044T727 910T738 779T740 630V568ZM423 74Q524 74 557 180T590 568V630Q590 844 576 941L314 127Q350 74 423 74ZM256 630V568Q256 299
|
||||
284 198L552 1036Q517 1124 423 1124Q386 1124 360 1113T314 1074T284 1011T267 915T258 790T256 630Z" />
|
||||
<glyph unicode="ù" horiz-adv-x="892" d="M398 1388L169 1786H331L454 1388H398ZM112 257V1198H264V254Q264 165 299 125T391 84Q438 84 491 116T590 205V1198H740V0H590V113Q542 43 475 8T336 -27Q247 -27 180 47T112 257Z" />
|
||||
<glyph unicode="ú" horiz-adv-x="892" d="M398 1388L521 1786H683L454 1388H398ZM112 257V1198H264V254Q264 165 299 125T391 84Q438 84 491 116T590 205V1198H740V0H590V113Q542 43 475 8T336 -27Q247 -27 180 47T112 257Z" />
|
||||
<glyph unicode="û" horiz-adv-x="892" d="M165 1644L321 1951H534L687 1644H577L427 1943L278 1644H165ZM112 257V1198H264V254Q264 165 299 125T391 84Q438 84 491 116T590 205V1198H740V0H590V113Q542 43 475 8T336 -27Q247 -27 180 47T112 257Z" />
|
||||
<glyph unicode="ü" horiz-adv-x="892" d="M526 1388V1567H710V1388H526ZM142 1388V1567H326V1388H142ZM112 257V1198H264V254Q264 165 299 125T391 84Q438 84 491 116T590 205V1198H740V0H590V113Q542 43 475 8T336 -27Q247 -27 180 47T112 257Z" />
|
||||
<glyph unicode="ý" horiz-adv-x="777" d="M367 1388L490 1786H652L423 1388H367ZM77 -299V-176Q197 -168 252 -136T308 -46Q308 27 297 96L37 1198H189L397 197L601 1198H753L453 -83Q423 -199 334 -246T80 -299H77Z" />
|
||||
<glyph unicode="þ" horiz-adv-x="874" d="M615 545V640Q615 750 610 832T594 964T571 1046T541 1092T508 1110T471 1114Q377 1114 270 995V205Q315 151 368 118T466 84Q486 84 498 86T528 97T557 124T580 175T599 257T610 378T615 545ZM120 -385V1721H270V1085Q317
|
||||
1154 377 1189T501 1225Q544 1225 576 1217T646 1174T708 1079T748 908T765 641V546Q765 438 757 351T735 206T700 104T658 36T610 -3T561 -22T512 -27Q360 -27 270 113V-385H120Z" />
|
||||
<glyph unicode="ÿ" horiz-adv-x="777" d="M751 1388V1567H935V1388H751ZM367 1388V1567H551V1388H367ZM77 -299V-176Q197 -168 252 -136T308 -46Q308 27 297 96L37 1198H189L397 197L601 1198H753L453 -83Q423 -199 334 -246T80 -299H77Z" />
|
||||
<glyph unicode="–" horiz-adv-x="793" d="M117 448V563H691V448H117Z" />
|
||||
<glyph unicode="—" horiz-adv-x="1194" d="M117 448V563H1091V448H117Z" />
|
||||
<glyph unicode="‘" horiz-adv-x="403" d="M296 1311H111Q111 1554 136 1644T247 1746L274 1691Q239 1680 216 1653T183 1591T171 1534T168 1490H296V1311Z" />
|
||||
<glyph unicode="’" horiz-adv-x="393" d="M149 1286L122 1341Q157 1352 180 1379T213 1441T225 1498T228 1542H100V1721H285Q285 1478 260 1388T149 1286Z" />
|
||||
<glyph unicode="‚" horiz-adv-x="403" d="M173 -321L123 -14H291Q279 -88 267 -165T241 -321H173Z" />
|
||||
<glyph unicode="“" horiz-adv-x="698" d="M590 1311H405Q405 1554 430 1644T541 1746L568 1691Q533 1680 510 1653T477 1591T465 1534T462 1490H590V1311ZM296 1311H111Q111 1554 136 1644T247 1746L274 1691Q239 1680 216 1653T183 1591T171 1534T168
|
||||
1490H296V1311Z" />
|
||||
<glyph unicode="”" horiz-adv-x="686" d="M443 1286L416 1341Q451 1352 474 1379T507 1441T519 1498T522 1542H394V1721H579Q579 1478 554 1388T443 1286ZM149 1286L122 1341Q157 1352 180 1379T213 1441T225 1498T228 1542H100V1721H285Q285 1478 260
|
||||
1388T149 1286Z" />
|
||||
<glyph unicode="„" horiz-adv-x="725" d="M497 -320L446 -13H614Q602 -87 590 -164T564 -320H497ZM174 -320L123 -13H291Q279 -87 267 -164T241 -320H174Z" />
|
||||
<glyph unicode="•" horiz-adv-x="565" d="M104 767Q104 848 154 898T286 949Q371 949 420 901T469 767Q469 683 420 636T286 588Q203 588 154 635T104 767Z" />
|
||||
<glyph unicode="‹" horiz-adv-x="561" d="M466 124L78 576V704L466 1156V956L190 641L466 324V124Z" />
|
||||
<glyph unicode="›" horiz-adv-x="561" d="M78 124V324L354 641L78 956V1156L466 704V576L78 124Z" />
|
||||
</font>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 55 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,93 @@
|
|||
Copyright 2016 The Oswald Project Authors (contact@sansoxygen.com)
|
||||
|
||||
This Font Software is licensed under the SIL Open Font License, Version 1.1.
|
||||
This license is copied below, and is also available with a FAQ at:
|
||||
http://scripts.sil.org/OFL
|
||||
|
||||
|
||||
-----------------------------------------------------------
|
||||
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
|
||||
-----------------------------------------------------------
|
||||
|
||||
PREAMBLE
|
||||
The goals of the Open Font License (OFL) are to stimulate worldwide
|
||||
development of collaborative font projects, to support the font creation
|
||||
efforts of academic and linguistic communities, and to provide a free and
|
||||
open framework in which fonts may be shared and improved in partnership
|
||||
with others.
|
||||
|
||||
The OFL allows the licensed fonts to be used, studied, modified and
|
||||
redistributed freely as long as they are not sold by themselves. The
|
||||
fonts, including any derivative works, can be bundled, embedded,
|
||||
redistributed and/or sold with any software provided that any reserved
|
||||
names are not used by derivative works. The fonts and derivatives,
|
||||
however, cannot be released under any other type of license. The
|
||||
requirement for fonts to remain under this license does not apply
|
||||
to any document created using the fonts or their derivatives.
|
||||
|
||||
DEFINITIONS
|
||||
"Font Software" refers to the set of files released by the Copyright
|
||||
Holder(s) under this license and clearly marked as such. This may
|
||||
include source files, build scripts and documentation.
|
||||
|
||||
"Reserved Font Name" refers to any names specified as such after the
|
||||
copyright statement(s).
|
||||
|
||||
"Original Version" refers to the collection of Font Software components as
|
||||
distributed by the Copyright Holder(s).
|
||||
|
||||
"Modified Version" refers to any derivative made by adding to, deleting,
|
||||
or substituting -- in part or in whole -- any of the components of the
|
||||
Original Version, by changing formats or by porting the Font Software to a
|
||||
new environment.
|
||||
|
||||
"Author" refers to any designer, engineer, programmer, technical
|
||||
writer or other person who contributed to the Font Software.
|
||||
|
||||
PERMISSION & CONDITIONS
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of the Font Software, to use, study, copy, merge, embed, modify,
|
||||
redistribute, and sell modified and unmodified copies of the Font
|
||||
Software, subject to the following conditions:
|
||||
|
||||
1) Neither the Font Software nor any of its individual components,
|
||||
in Original or Modified Versions, may be sold by itself.
|
||||
|
||||
2) Original or Modified Versions of the Font Software may be bundled,
|
||||
redistributed and/or sold with any software, provided that each copy
|
||||
contains the above copyright notice and this license. These can be
|
||||
included either as stand-alone text files, human-readable headers or
|
||||
in the appropriate machine-readable metadata fields within text or
|
||||
binary files as long as those fields can be easily viewed by the user.
|
||||
|
||||
3) No Modified Version of the Font Software may use the Reserved Font
|
||||
Name(s) unless explicit written permission is granted by the corresponding
|
||||
Copyright Holder. This restriction only applies to the primary font name as
|
||||
presented to the users.
|
||||
|
||||
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
|
||||
Software shall not be used to promote, endorse or advertise any
|
||||
Modified Version, except to acknowledge the contribution(s) of the
|
||||
Copyright Holder(s) and the Author(s) or with their explicit written
|
||||
permission.
|
||||
|
||||
5) The Font Software, modified or unmodified, in part or in whole,
|
||||
must be distributed entirely under this license, and must not be
|
||||
distributed under any other license. The requirement for fonts to
|
||||
remain under this license does not apply to any document created
|
||||
using the Font Software.
|
||||
|
||||
TERMINATION
|
||||
This license becomes null and void if any of the above conditions are
|
||||
not met.
|
||||
|
||||
DISCLAIMER
|
||||
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
|
||||
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
|
||||
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
|
||||
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
|
||||
OTHER DEALINGS IN THE FONT SOFTWARE.
|
Binary file not shown.
|
@ -0,0 +1,347 @@
|
|||
<?xml version="1.0" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<svg xmlns="http://www.w3.org/2000/svg">
|
||||
<defs >
|
||||
<font id="Oswald" horiz-adv-x="797" ><font-face
|
||||
font-family="Oswald"
|
||||
units-per-em="2048"
|
||||
panose-1="2 0 5 3 0 0 0 0 0 0"
|
||||
ascent="2444"
|
||||
descent="-591"
|
||||
alphabetic="0" />
|
||||
<glyph unicode=" " horiz-adv-x="416" />
|
||||
<glyph unicode="!" horiz-adv-x="375" d="M128 384L64 1792H320L274 384H128ZM64 0V256H320V0H64Z" />
|
||||
<glyph unicode=""" horiz-adv-x="704" d="M449 1328L385 1792H641L577 1328H449ZM126 1328L62 1792H318L254 1328H126Z" />
|
||||
<glyph unicode="#" horiz-adv-x="1088" d="M437 832H630L657 1024H465L437 832ZM64 0L154 640H64V832H181L209 1024H64V1216H236L318 1792H574L492 1216H684L766 1792H1022L940 1216H1024V1024H913L885 832H1024V640H858L768 0H512L602 640H410L320 0H64Z" />
|
||||
<glyph unicode="$" horiz-adv-x="1216" d="M704 198Q832 227 832 384Q832 462 804 519T724 628L704 648V198ZM576 1101V1600Q484 1600 434 1548T384 1405Q384 1253 512 1152L576 1101ZM576 -128V-15Q368 0 255 142T128 512L384 576Q394 283 555 208L576 200V755L320
|
||||
960Q232 1031 180 1136T127 1378Q127 1576 250 1693T576 1810V1920H704V1799L745 1790Q1061 1704 1088 1344L832 1280Q823 1468 724 1549L704 1564V998L832 896Q945 808 1016 684T1088 401Q1088 220 984 112T704 -15V-128H576Z" />
|
||||
<glyph unicode="%" horiz-adv-x="1999" d="M1649 0T1554 0T1388 38T1273 145T1209 301T1188 492Q1188 598 1208 683T1271 835T1385 938T1554 975T1723 939T1837 836T1900 684T1921 492Q1921 387 1900 300T1836 145T1721 38ZM1554 195Q1688 195 1688 492Q1688 780
|
||||
1554 780Q1421 780 1421 492Q1421 440 1426 395T1444 301T1485 224T1554 195ZM751 0L1034 1518H1253L971 0H751ZM539 541T444 541T278 579T163 686T99 841T78 1032Q78 1138 98 1224T160 1376T275 1479T444 1516Q522 1516 584 1492T688 1424T758 1320T798 1188T811
|
||||
1032Q811 928 790 841T725 685T611 579ZM444 735Q578 735 578 1032Q578 1321 444 1321Q311 1321 311 1032Q311 980 316 935T334 841T375 764T444 735Z" />
|
||||
<glyph unicode="&" horiz-adv-x="1344" d="M545 1024Q609 1104 656 1229T704 1472Q704 1530 669 1565T576 1600Q511 1600 480 1544T448 1408Q448 1343 465 1267T499 1143T545 1024ZM512 192Q634 192 736 320L613 503Q600 524 569 564T514 639T481 704Q437
|
||||
646 411 561T384 384Q384 300 414 246T512 192ZM512 -18Q334 -18 231 92T128 384Q128 670 384 896Q370 925 326 1005T259 1134T214 1260T192 1408Q192 1588 296 1699T576 1810Q741 1810 850 1719T960 1472Q960 1402 938 1330T886 1202T807 1084T724 983T640 896L896
|
||||
512Q914 552 927 612T944 705T960 832H1216Q1216 710 1169 579T1057 350Q1132 256 1216 256V-18Q1191 -18 1169 -16T1123 -5T1084 9T1046 30T1013 51T980 78T952 103T922 131T896 157Q833 77 736 30T512 -18Z" />
|
||||
<glyph unicode="'" horiz-adv-x="384" d="M126 1328L62 1792H318L254 1328H126Z" />
|
||||
<glyph unicode="(" horiz-adv-x="640" d="M576 -64Q496 -64 431 -43T321 24T242 120T188 249T154 393T136 558T130 724T128 896Q128 1018 129 1092T140 1280T166 1464T215 1617T295 1746T413 1824T576 1856V1664Q526 1664 490 1633T433 1553T400 1432T385 1293T381
|
||||
1143Q381 1095 382 1012T384 896T383 779T381 645Q381 561 384 496T400 358T432 238T489 159T576 128V-64Z" />
|
||||
<glyph unicode=")" horiz-adv-x="640" d="M64 -64V128Q114 128 150 159T207 239T240 360T255 499T259 649Q259 697 258 780T256 896T257 1013T259 1147Q259 1231 256 1296T240 1434T208 1554T151 1633T64 1664V1856Q144 1856 209 1835T319 1768T398 1672T452 1543T486
|
||||
1399T504 1234T510 1068T512 896Q512 774 511 700T500 512T474 328T425 175T345 46T227 -32T64 -64Z" />
|
||||
<glyph unicode="*" horiz-adv-x="896" d="M343 904L191 994L363 1237L106 1335L167 1496L412 1364L384 1664H576L547 1364L793 1496L854 1335L597 1236L769 994L617 904L480 1181L343 904Z" />
|
||||
<glyph unicode="+" horiz-adv-x="704" d="M256 384V576H64V768H256V960H448V768H640V576H448V384H256Z" />
|
||||
<glyph unicode="," horiz-adv-x="408" d="M140 -256L76 -128Q145 -128 174 -98T204 0H76V256H332Q332 112 329 14Q327 -40 323 -77T307 -150T275 -208T222 -243T140 -256Z" />
|
||||
<glyph unicode="-" horiz-adv-x="384" d="M0 448V640H384V448H0Z" />
|
||||
<glyph unicode="." horiz-adv-x="384" d="M64 0V256H320V0H64Z" />
|
||||
<glyph unicode="/" horiz-adv-x="832" d="M0 0L575 1792H832L256 0H0Z" />
|
||||
<glyph unicode="0" horiz-adv-x="1088" d="M544 -18Q398 -18 296 51T145 237T96 512V1280Q96 1527 208 1668T544 1810Q767 1810 879 1668T992 1280V512Q992 271 878 127T544 -18ZM544 192Q736 192 736 512V1280Q736 1334 732 1376T716 1462T683 1535T627 1582T544
|
||||
1600T461 1582T406 1535T373 1463T356 1377T352 1280V512Q352 449 360 396T389 295T449 220T544 192Z" />
|
||||
<glyph unicode="1" horiz-adv-x="640" d="M256 0V1408H64V1600Q257 1669 320 1792H512V0H256Z" />
|
||||
<glyph unicode="2" horiz-adv-x="1020" d="M71 0V256L520 896Q528 907 555 944T591 995T622 1043T652 1096T675 1149T696 1209T707 1271T712 1344Q712 1451 663 1525T520 1600Q465 1600 426 1573T367 1498T337 1397T328 1280V1216H72V1280Q72 1532 180 1671T520
|
||||
1810Q738 1810 853 1688T968 1344Q968 1261 954 1189T908 1051T850 942T776 832L328 256H968V0H71Z" />
|
||||
<glyph unicode="3" horiz-adv-x="1027" d="M526 -18Q308 -18 193 104T78 448V512H334Q334 452 337 410T352 323T384 253T440 209T526 192T612 209T668 252T699 323T714 409T718 512Q718 666 659 749T462 832V1088Q602 1088 660 1145T718 1344Q718 1471 676 1535T526
|
||||
1600Q476 1600 440 1583T384 1540T353 1469T338 1383T334 1280H78V1344Q78 1564 193 1687T526 1810Q744 1810 859 1688T974 1344Q974 1192 906 1095T718 960Q843 918 908 803T974 512Q974 260 866 121T526 -18Z" />
|
||||
<glyph unicode="4" horiz-adv-x="1087" d="M339 702H595V1472L339 702ZM595 0V460H83V745L531 1793H851V702H1049V460H851V0H595Z" />
|
||||
<glyph unicode="5" horiz-adv-x="1050" d="M535 -18Q296 -18 194 116T92 512H348V472Q348 421 351 384T365 307T394 243T445 202T521 186Q556 186 584 194T633 215T670 252T696 296T714 353T724 413T730 482T732 551T732 625Q732 647 732 658Q732 701 731 731T726
|
||||
797T713 857T691 905T657 943T608 965T541 974Q473 974 423 930T350 826H132V1792H924V1536H364L348 1102Q456 1166 604 1166Q691 1166 757 1140T867 1067T937 953T976 809T988 640Q988 525 976 432T933 253T852 109T722 17T535 -18Z" />
|
||||
<glyph unicode="6" horiz-adv-x="1083" d="M505 192T560 192T654 219T713 294T743 395T752 512Q752 550 752 569T751 625T747 680T740 730T728 776T711 815T686 850T654 874T612 891T560 896Q436 896 368 768V512Q368 448 377 395T406 294T466 219ZM560 -18Q468
|
||||
-18 393 13T267 98T180 227T128 390T112 576V1152Q112 1262 125 1355T170 1534T252 1680T380 1775T560 1810Q776 1810 892 1688T1008 1344H752Q752 1472 711 1536T560 1600Q368 1600 368 1216V960Q442 1088 624 1088Q732 1088 808 1051T927 942T989 781T1008 576Q1008
|
||||
450 983 346T906 158T766 29T560 -18Z" />
|
||||
<glyph unicode="7" horiz-adv-x="826" d="M190 0L518 1579H45V1792H762V1669L436 0H190Z" />
|
||||
<glyph unicode="8" horiz-adv-x="1024" d="M513 1063Q563 1063 596 1086T646 1152T667 1240T673 1344Q673 1600 513 1600Q351 1600 351 1344Q351 1284 357 1240T379 1152T428 1086T513 1063ZM463 192T513 192T599 210T655 255T686 326T701 412T704 511Q704 575
|
||||
696 625T668 722T609 793T513 818T417 793T357 723T328 627T320 511Q320 453 323 412T338 326T370 254T427 210ZM513 -18Q277 -18 171 118T64 511Q64 678 110 779T258 946Q172 1011 131 1106T90 1344Q90 1566 196 1688T513 1810Q723 1810 828 1688T934 1344Q934
|
||||
1200 894 1106T767 946Q868 880 914 778T960 511Q960 255 854 119T513 -18Z" />
|
||||
<glyph unicode="9" horiz-adv-x="1083" d="M540 896Q662 896 732 1024V1280Q732 1344 723 1397T694 1498T634 1573T540 1600T446 1573T387 1498T357 1397T348 1280Q348 1242 348 1223T349 1167T353 1112T360 1062T372 1016T389 977T414 942T446 918T488 901T540
|
||||
896ZM540 -18Q324 -18 208 104T92 448H348Q348 320 389 256T540 192Q732 192 732 576V832Q656 704 476 704Q368 704 292 741T173 850T111 1011T92 1216Q92 1342 117 1446T194 1634T334 1763T540 1810Q632 1810 707 1779T833 1694T920 1565T972 1402T988 1216V640Q988
|
||||
530 975 437T930 258T848 112T720 17T540 -18Z" />
|
||||
<glyph unicode=":" horiz-adv-x="439" d="M128 832V1088H384V832H128ZM128 256V512H384V256H128Z" />
|
||||
<glyph unicode=";" horiz-adv-x="384" d="M64 832V1088H320V832H64ZM128 0L64 128Q133 128 162 158T192 256H64V512H320Q320 368 317 270Q315 216 311 179T295 106T263 48T210 13T128 0Z" />
|
||||
<glyph unicode="<" horiz-adv-x="832" d="M704 64L64 512V768L704 1216V960L256 641L704 320V64Z" />
|
||||
<glyph unicode="=" horiz-adv-x="704" d="M64 576V768H640V576H64ZM64 255V447H640V255H64Z" />
|
||||
<glyph unicode=">" horiz-adv-x="832" d="M128 64V320L576 641L128 960V1216L768 768V512L128 64Z" />
|
||||
<glyph unicode="?" horiz-adv-x="1152" d="M384 0V256H640V0H384ZM384 384V704Q447 742 493 774T595 855T685 955T744 1073T768 1216Q768 1408 576 1408Q468 1408 426 1344T384 1152H128V1216Q128 1435 243 1549T576 1664Q795 1664 910 1549T1025 1216Q1025 1004
|
||||
924 866T640 640V384H384Z" />
|
||||
<glyph unicode="@" horiz-adv-x="1782" d="M884 502Q953 502 958 542V945Q951 996 904 996Q884 996 867 992T837 978T814 958T797 929T784 898T776 860T772 821T769 778T768 736T768 693Q768 502 884 502ZM958 -128Q524 -128 326 93T128 768Q128 1140 331 1356T896
|
||||
1572Q1267 1572 1460 1361T1654 768Q1654 667 1632 582T1566 431T1451 329T1286 292Q1190 292 1119 326T1011 420Q954 292 840 292Q734 292 659 348T548 493T512 693Q512 770 521 839T552 975T609 1090T696 1167T816 1197Q882 1197 918 1161T958 1061V1188H1214V620Q1214
|
||||
582 1217 560T1236 520T1282 502Q1398 502 1398 768Q1398 916 1372 1025T1288 1216T1132 1339T896 1380Q767 1380 668 1335T508 1208T415 1015T384 768Q384 596 413 471T507 252T684 111T958 64Q1083 64 1254 119L1348 -77Q1125 -128 958 -128Z" />
|
||||
<glyph unicode="A" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16Z" />
|
||||
<glyph unicode="B" horiz-adv-x="1146" d="M384 1024H512Q832 1024 832 1344Q832 1397 819 1437T788 1505T734 1550T667 1579T582 1593T489 1599T384 1600V1024ZM384 192H512Q678 192 755 268T832 512T755 755T512 832H384V192ZM128 0V1792H512Q636 1792 734 1766T905
|
||||
1687T1018 1547T1058 1344Q1058 1176 987 1089T768 960Q928 907 1008 805T1088 512Q1088 275 951 138T576 0H128Z" />
|
||||
<glyph unicode="C" horiz-adv-x="1107" d="M588 -18Q475 -18 389 14T248 102T159 243T110 424T96 641V1152Q96 1273 110 1369T158 1549T248 1690T389 1778T588 1810Q713 1810 804 1773T949 1664T1031 1497T1064 1275Q1065 1256 1065 1216H809V1273Q808 1326 805
|
||||
1363T794 1441T771 1507T732 1556T672 1589T588 1600Q526 1600 482 1580T412 1529T374 1444T356 1341T352 1216V576Q352 512 357 460T379 357T420 270T488 214T588 192T686 214T750 270T787 357T805 460T809 576V640H1065V576Q1065 437 1041 332T962 147T814 24T588
|
||||
-18Z" />
|
||||
<glyph unicode="D" horiz-adv-x="1133" d="M128 0V1792H525Q806 1792 921 1677T1037 1280V576Q1037 281 920 141T523 0H128ZM384 192H525Q588 192 633 203T706 245T750 303T772 389T780 484T781 601Q781 627 781 640V1216Q781 1265 781 1294T778 1362T770 1425T756
|
||||
1476T734 1521T701 1554T656 1580T596 1594T520 1600H384V192Z" />
|
||||
<glyph unicode="E" horiz-adv-x="861" d="M128 0V1792H832V1600H384V1024H704V832H384V192H832V0H128Z" />
|
||||
<glyph unicode="F" horiz-adv-x="821" d="M128 0V1792H832V1600H384V1024H704V832H384V0H128Z" />
|
||||
<glyph unicode="G" horiz-adv-x="1199" d="M608 -18Q485 -18 395 17T247 112T156 265T109 461T96 698V1152Q96 1810 618 1810Q743 1810 835 1773T984 1663T1070 1495T1104 1271Q1105 1253 1105 1216H849V1270Q848 1333 843 1378T823 1468T783 1539T717 1583T618
|
||||
1600Q540 1600 487 1572T405 1489T364 1369T352 1216V640Q352 576 356 525T369 420T397 327T443 257T512 209T608 192Q672 192 719 217T793 281T837 382T858 503T864 640V704H608V894H1120V0H928L864 192Q789 -18 608 -18Z" />
|
||||
<glyph unicode="H" horiz-adv-x="1216" d="M128 0V1792H384V1024H832V1792H1088V0H832V832H384V0H128Z" />
|
||||
<glyph unicode="I" horiz-adv-x="542" d="M140 0V1792H396V0H140Z" />
|
||||
<glyph unicode="J" horiz-adv-x="640" d="M0 0V192Q83 192 129 201T206 239T246 316T256 448V1792H512V448Q512 326 496 247T438 109T320 26T128 0H0Z" />
|
||||
<glyph unicode="K" horiz-adv-x="1118" d="M128 0V1792H384V1024L768 1792H1088L703 1088L1152 0H832L512 832L384 576V0H128Z" />
|
||||
<glyph unicode="L" horiz-adv-x="823" d="M128 0V1792H384V192H832V0H128Z" />
|
||||
<glyph unicode="M" horiz-adv-x="1472" d="M128 0V1792H482L736 420L990 1792H1344V0H1088V1414L832 0H640L384 1414V0H128Z" />
|
||||
<glyph unicode="N" horiz-adv-x="1152" d="M128 0V1792H320L768 684V1792H1024V0H842L384 1192V0H128Z" />
|
||||
<glyph unicode="O" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828 512V1290Q828
|
||||
1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273Z" />
|
||||
<glyph unicode="P" horiz-adv-x="1041" d="M384 1024H448Q535 1024 590 1034T688 1071T749 1150T768 1280Q768 1376 754 1435T703 1533T606 1585T448 1600H384V1024ZM128 0V1792H576Q1024 1792 1024 1280Q1024 1061 909 947T576 832H384V0H128Z" />
|
||||
<glyph unicode="Q" horiz-adv-x="1180" d="M455 192T590 192T776 273T828 512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM1063 -256Q954 -256 847 -180T690 -11Q647 -18 590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96
|
||||
1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 180 869 49Q898 7 956 -19T1063 -46V-256Z" />
|
||||
<glyph unicode="R" horiz-adv-x="1108" d="M384 1024H448Q608 1024 688 1091T768 1312T688 1532T448 1600H384V1024ZM128 0V1792H448Q734 1792 879 1681T1024 1312Q1024 1152 967 1044T800 896L1088 0H834L576 832H384V0H128Z" />
|
||||
<glyph unicode="S" horiz-adv-x="1102" d="M595 -18Q353 -18 226 124T83 512L339 576Q358 192 595 192Q787 192 787 384Q787 441 772 489T724 578T666 643T595 704L275 960Q187 1029 135 1135T82 1378Q82 1576 205 1693T531 1810Q749 1810 877 1704T1036 1402Q1039
|
||||
1381 1043 1344L787 1280Q786 1297 782 1331Q765 1453 706 1526T531 1600Q439 1600 389 1549T339 1405Q339 1254 467 1152L787 896Q1043 689 1043 401Q1043 204 922 93T595 -18Z" />
|
||||
<glyph unicode="T" horiz-adv-x="894" d="M319 0V1564H-1V1792H895V1564H575V0H319Z" />
|
||||
<glyph unicode="U" horiz-adv-x="1252" d="M743 -19T626 -19T420 12T274 98T180 238T129 419T114 640V1792H370V640Q370 557 373 501T392 382T433 280T508 217T626 192T743 217T818 280T860 381T878 501T882 640V1792H1138V640Q1138 517 1123 420T1072 238T979
|
||||
99T832 12Z" />
|
||||
<glyph unicode="V" horiz-adv-x="1048" d="M396 0L12 1792H268L457 832L523 384L591 832L780 1792H1036L652 0H396Z" />
|
||||
<glyph unicode="W" horiz-adv-x="1558" d="M331 0L11 1792H267L395 960L460 448L523 960L651 1792H907L1035 960L1098 448L1163 960L1291 1792H1547L1227 0H971L843 832L779 1344L715 832L587 0H331Z" />
|
||||
<glyph unicode="X" horiz-adv-x="1070" d="M25 0L343 929L23 1792H279L535 1088L791 1792H1047L727 933L1043 0H789L535 768L281 0H25Z" />
|
||||
<glyph unicode="Y" horiz-adv-x="1018" d="M381 0V576L-3 1792H253L509 896L765 1792H1021L637 576V0H381Z" />
|
||||
<glyph unicode="Z" horiz-adv-x="951" d="M62 0V192L638 1600H126V1792H894V1600L318 192H894V0H62Z" />
|
||||
<glyph unicode="[" horiz-adv-x="768" d="M128 -64V1856H640V1728H384V64H640V-64H128Z" />
|
||||
<glyph unicode="\" horiz-adv-x="576" d="M256 0L64 1792H320L512 0H256Z" />
|
||||
<glyph unicode="]" horiz-adv-x="768" d="M128 -64V64H384V1728H128V1856H640V-64H128Z" />
|
||||
<glyph unicode="^" horiz-adv-x="896" d="M64 896L320 1536H576L832 896H576L447 1344L320 896H64Z" />
|
||||
<glyph unicode="_" horiz-adv-x="768" d="M0 0V192H768V0H0Z" />
|
||||
<glyph unicode="`" horiz-adv-x="640" d="M384 1408L128 1792H384L512 1408H384Z" />
|
||||
<glyph unicode="a" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423 734T569
|
||||
793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18Z" />
|
||||
<glyph unicode="b" horiz-adv-x="1042" d="M565 192Q606 192 633 222T673 307T690 418T695 546Q695 600 695 689T694 823T692 901T682 972T661 1033T623 1072T565 1088Q459 1088 373 1037V232Q472 192 565 192ZM629 -18Q551 -18 491 19T373 116V0H117V1791H373V1153Q409
|
||||
1191 427 1208T479 1251T551 1287T633 1298Q698 1298 749 1275T833 1218T889 1123T923 1011T941 876T948 739T949 594V577Q949 493 941 415T910 256T853 116T761 20T629 -18Z" />
|
||||
<glyph unicode="c" horiz-adv-x="863" d="M434 -18Q341 -18 273 13T163 94T97 221T63 376T51 557Q48 640 51 724Q53 826 62 904T97 1059T163 1186T272 1267T434 1298Q636 1298 724 1189T818 866V832H562V868Q561 916 556 952T538 1024T499 1079T434 1099T370 1077T331
|
||||
1012T311 926T304 823Q300 699 304 449Q306 394 312 353T331 273T371 213T434 192Q468 192 492 205T530 237T550 288T560 347T562 417V448H818V415Q815 314 793 237T727 101T609 13T434 -18Z" />
|
||||
<glyph unicode="d" horiz-adv-x="1050" d="M478 192Q571 192 670 232V1037Q584 1088 478 1088Q440 1088 414 1070T375 1016T356 943T349 854Q345 630 349 499Q350 435 356 385T375 289T415 217T478 192ZM414 -18Q329 -18 266 30T168 160T116 330T95 521Q93 568
|
||||
95 751Q97 817 101 870T114 982T138 1084T177 1170T233 1239T310 1282T410 1298Q453 1298 490 1287T562 1251T616 1207T670 1153V1791H926V0H670V116Q612 56 552 19T414 -18Z" />
|
||||
<glyph unicode="e" horiz-adv-x="933" d="M476 -18Q383 -18 315 14T206 97T140 229T106 390T94 578Q91 662 94 746Q97 846 107 923T144 1074T211 1194T320 1269T478 1298Q560 1298 622 1277T726 1212T795 1115T837 987T856 838T862 670V640H350V576Q350 563 350
|
||||
535Q348 498 349 459T353 381T364 309T386 248T422 207T478 192Q518 192 544 207T582 254T600 316T606 394V448H860V397Q851 192 759 87T476 -18ZM350 768H604V845Q603 896 598 934T581 1010T542 1068T478 1088Q439 1088 413 1067T374 1007T356 929T350 838V768Z"
|
||||
/>
|
||||
<glyph unicode="f" horiz-adv-x="634" d="M184 0V1088H56V1280H184V1329Q184 1410 190 1466T214 1575T264 1659T348 1709T474 1728Q536 1728 632 1716V1526Q622 1527 591 1531T546 1536Q482 1536 461 1496T440 1376V1280H632V1088H440V0H184Z" />
|
||||
<glyph unicode="g" horiz-adv-x="925" d="M298 560T458 560T618 832Q618 887 611 933T587 1024T537 1094T458 1120Q411 1120 378 1095T329 1025T305 934T298 832Q298 560 458 560ZM522 -194Q549 -194 570 -193T620 -189T668 -180T707 -163T736 -137T746 -99Q746
|
||||
8 541 32L330 57Q291 29 264 -24T236 -135Q236 -151 247 -162T279 -180T323 -190T377 -195T430 -196T481 -195T522 -194ZM522 -383Q474 -383 444 -383T362 -380T275 -373T195 -359T121 -336T64 -303T24 -257T10 -195Q10 -95 63 -24T202 89Q150 103 112 131T74 201Q74
|
||||
218 78 237T87 271T103 307T120 338T142 370T162 398T184 425T202 448Q74 600 74 832Q74 965 116 1069T246 1235T458 1298Q529 1298 582 1278T668 1228T734 1147Q810 1288 950 1297Q953 1297 956 1297T963 1297T970 1297V1088Q965 1088 954 1088Q911 1088 889 1087T840
|
||||
1079T797 1055Q815 1016 828 952T842 832Q842 698 802 595T673 430T458 368L329 383Q327 378 319 366T307 345T298 325T294 301Q294 275 319 257T388 231T472 218T563 212T632 206Q689 198 733 188T824 157T901 109T950 37T970 -64Q970 -134 946 -189T880 -280T781
|
||||
-339T659 -373T522 -383Z" />
|
||||
<glyph unicode="h" horiz-adv-x="992" d="M117 0V1792H373V1142Q430 1194 466 1221T565 1273T701 1298Q783 1298 834 1238T885 1091V0H629V960Q629 1026 613 1057T541 1088Q463 1088 373 1013V0H117Z" />
|
||||
<glyph unicode="i" horiz-adv-x="512" d="M128 1472V1728H384V1472H128ZM128 0V1280H384V0H128Z" />
|
||||
<glyph unicode="j" horiz-adv-x="507" d="M150 1472V1728H406V1472H150ZM86 -320Q2 -320 -42 -303V-121Q-7 -128 22 -128Q150 -128 150 21V1280H406V-7Q406 -155 321 -237T86 -320Z" />
|
||||
<glyph unicode="k" horiz-adv-x="961" d="M117 0V1792H373V807L693 1280H949L662 833L949 0H693L501 619L373 448V0H117Z" />
|
||||
<glyph unicode="l" horiz-adv-x="485" d="M118 0V1792H374V0H118Z" />
|
||||
<glyph unicode="m" horiz-adv-x="1504" d="M117 0V1280H373V1135Q510 1298 692 1298Q784 1298 827 1258T885 1129Q948 1212 1021 1255T1205 1298Q1237 1298 1262 1292T1307 1276T1340 1249T1364 1215T1380 1170T1390 1122T1395 1066T1397 1008T1397 945Q1397 936
|
||||
1397 931V0H1141V934Q1141 939 1141 950Q1141 983 1140 1001T1134 1042T1114 1077T1077 1088Q1038 1088 999 1073T939 1043T885 1002V0H629V929Q629 935 629 947Q629 975 629 989T626 1025T616 1059T597 1079T565 1088Q471 1088 373 1007V0H117Z" />
|
||||
<glyph unicode="n" horiz-adv-x="992" d="M117 0V1280H373V1142Q430 1194 466 1221T565 1273T701 1298Q783 1298 834 1238T885 1091V0H629V960Q629 1027 610 1057T533 1088Q500 1088 468 1075T419 1050T373 1013V0H117Z" />
|
||||
<glyph unicode="o" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602 938T595
|
||||
987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200Z" />
|
||||
<glyph unicode="p" horiz-adv-x="1042" d="M565 192Q606 192 633 222T673 307T690 417T695 545L693 714Q693 759 693 786T689 859T681 934T664 998T638 1053T598 1087T542 1101Q527 1101 514 1099T486 1093T462 1085T437 1073T416 1062T393 1048T373 1036V244Q461
|
||||
192 565 192ZM117 -384V1280H373V1152Q404 1185 416 1197T457 1234T508 1269T563 1288T633 1298Q698 1298 749 1275T833 1218T889 1124T923 1012T941 877T948 740T949 595V576Q949 492 941 414T910 256T853 116T761 20T629 -18Q499 -18 373 115V-384H117Z" />
|
||||
<glyph unicode="q" horiz-adv-x="1012" d="M476 192Q577 192 668 244V1036Q664 1038 648 1048T626 1061T604 1073T580 1084T556 1092T528 1099T499 1101Q467 1101 443 1087T402 1052T375 995T358 930T350 854T347 780T346 707Q346 705 346 704Q346 687 346 649T346
|
||||
576T346 510Q347 443 352 393T371 294T411 219T476 192ZM668 -384V115Q611 56 551 19T412 -18Q338 -18 281 19T189 116T132 255T101 414T92 576V771Q92 858 100 930T129 1072T184 1190T276 1268T408 1298Q451 1298 488 1287T560 1250T614 1207T668 1152V1280H924V-384H668Z"
|
||||
/>
|
||||
<glyph unicode="r" horiz-adv-x="693" d="M117 0V1280H373V1109Q412 1185 486 1241T652 1298Q655 1298 693 1294V1011Q622 1039 551 1039Q471 1039 422 991T373 864V0H117Z" />
|
||||
<glyph unicode="s" horiz-adv-x="876" d="M453 -18Q295 -18 200 76T69 320L261 384Q330 192 453 192Q514 192 547 225T581 320Q581 409 517 468L261 660Q218 689 189 714T130 777T85 860T69 960Q69 1124 173 1211T453 1298Q536 1298 603 1272T715 1197T790 1091T837
|
||||
960L645 896Q631 934 617 961T580 1021T524 1070T453 1088Q392 1088 359 1055T325 960Q325 900 389 852L645 660Q688 626 718 595T778 522T822 429T837 320Q837 156 733 69T453 -18Z" />
|
||||
<glyph unicode="t" horiz-adv-x="700" d="M472 -18Q321 -18 253 59T182 292V1088H54V1280H182V1728H438V1280H630V1088H438V341Q438 264 459 228T544 192Q572 192 630 202V-6Q534 -18 472 -18Z" />
|
||||
<glyph unicode="u" horiz-adv-x="987" d="M300 -18Q216 -18 165 41T114 189V1280H370V267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q588 105 571 90T517 50T454 13T385 -8T300 -18Z" />
|
||||
<glyph unicode="v" horiz-adv-x="872" d="M308 0L20 1280H266L444 319L606 1280H852L566 0H308Z" />
|
||||
<glyph unicode="w" horiz-adv-x="1281" d="M257 0L20 1280H247L389 308L523 1280H757L893 318L1033 1280H1261L1013 0H777L641 882L503 0H257Z" />
|
||||
<glyph unicode="x" horiz-adv-x="866" d="M17 0L273 640V666L17 1280H264L435 791L606 1280H849L593 666V640L849 0H593L441 493L273 0H17Z" />
|
||||
<glyph unicode="y" horiz-adv-x="872" d="M84 -320V-128Q160 -128 205 -118T274 -83T303 -27T310 58L20 1280H276Q425 457 437 384Q458 519 484 668T544 998T596 1280H852L532 -64Q500 -203 397 -261T110 -320H84Z" />
|
||||
<glyph unicode="z" horiz-adv-x="818" d="M71 0V192L519 1088H135V1280H775V1088L327 192H775V0H71Z" />
|
||||
<glyph unicode="{" horiz-adv-x="704" d="M640 -64Q508 -64 419 -27T281 87T212 265T192 512Q192 525 192 554T193 595T191 632T188 667T182 695T171 721T155 740T132 756T102 764T64 768V1024Q88 1024 107 1031T139 1054T162 1087T177 1132T186 1182T191 1238T192
|
||||
1294T193 1353T192 1408Q192 1539 213 1622T288 1759T425 1834T640 1856V1664Q601 1664 572 1659T523 1646T488 1621T466 1587T454 1540T449 1482T448 1408Q448 986 256 896Q351 855 399 757T448 512Q448 509 448 503Q448 447 448 419T452 344T463 272T484 215T518
|
||||
167T569 140T640 128V-64Z" />
|
||||
<glyph unicode="|" horiz-adv-x="384" d="M128 -128V1920H320V-128H128Z" />
|
||||
<glyph unicode="}" horiz-adv-x="704" d="M64 -64V128Q92 128 116 132T158 148T190 171T214 204T232 242T243 287T250 336T254 391T256 446T256 506Q256 510 256 512Q256 657 304 756T448 896Q256 982 256 1408Q256 1444 256 1466T253 1515T247 1557T237 1591T220
|
||||
1619T196 1639T163 1653T119 1661T64 1664V1856Q237 1856 332 1814T470 1677T512 1408Q512 1392 512 1354T511 1295T512 1239T517 1182T526 1133T541 1088T564 1055T597 1031T640 1024V768Q613 768 592 763T558 747T535 723T521 690T514 649T512 601T512 549Q512
|
||||
525 512 512Q512 395 500 309T458 150T378 32T249 -39T64 -64Z" />
|
||||
<glyph unicode="~" horiz-adv-x="960" d="M613 812Q565 812 515 834T417 877T329 899Q281 899 281 832H127Q127 948 184 1026T347 1105Q405 1105 492 1062T628 1019Q679 1019 679 1088H833Q833 969 777 891T613 812Z" />
|
||||
<glyph unicode=" " horiz-adv-x="416" />
|
||||
<glyph unicode="¡" horiz-adv-x="384" d="M64 1280V1536H320V1280H64ZM64 0L128 1152H256V0H64Z" />
|
||||
<glyph unicode="¢" horiz-adv-x="1027" d="M479 206V1071Q456 1060 439 1041T411 991T395 934T386 863T384 793T384 714T385 640Q385 616 384 567T383 488T384 415T392 343T408 284T436 235T479 206ZM479 -128V-15Q391 -8 328 21T227 94T167 208T137 353T129
|
||||
532V733Q129 833 137 910T169 1057T231 1175T332 1254T479 1294V1408H557V1294Q735 1274 816 1157T897 831L641 832Q641 933 625 991T557 1073V207Q581 219 597 239T622 282T635 340T640 402T641 473H897Q897 468 897 453T898 430Q898 239 812 122T557 -14V-128H479Z"
|
||||
/>
|
||||
<glyph unicode="£" horiz-adv-x="896" d="M0 0V128L128 191V768H0V960H128V1152Q128 1235 131 1298T143 1433T169 1557T215 1659T284 1740T381 1791T512 1810Q677 1810 753 1706T832 1422V1344H640Q640 1397 636 1435T620 1514T581 1578T512 1600Q479 1600
|
||||
455 1583T419 1540T398 1475T388 1404T384 1330V960H640V768H384V192H832V0H0Z" />
|
||||
<glyph unicode="¤" horiz-adv-x="1024" d="M421 682T512 682T653 741T704 896T654 1051T512 1110Q420 1110 370 1052T320 897T370 742ZM195 489L105 579L191 665Q128 761 128 897Q128 1030 191 1127L105 1213L195 1303L281 1217Q378 1280 512 1280T743 1217L829
|
||||
1303L919 1213L832 1126Q896 1028 896 897Q896 765 832 665L919 579L829 489L743 575Q646 512 512 512T281 575L195 489Z" />
|
||||
<glyph unicode="¥" horiz-adv-x="1024" d="M384 0V256H192V424H384V553H192V719H341L48 1792H308L512 848L714 1792H974L679 719H832V553H640V424H832V256H640V0H384Z" />
|
||||
<glyph unicode="¦" horiz-adv-x="395" d="M94 889V1518H297V889H94ZM94 -14V614H297V-14H94Z" />
|
||||
<glyph unicode="§" horiz-adv-x="960" d="M512 754Q608 799 608 882Q608 906 598 929T565 976T528 1012T483 1048T448 1074Q352 1017 352 925Q352 891 371 862T416 817L512 754ZM480 -17Q398 -17 331 10T219 85T143 191T96 321L288 385Q357 193 480 193Q541
|
||||
193 574 226T608 321Q608 370 591 411T544 469L288 625Q228 661 190 696T124 790T96 925Q96 1035 145 1111T282 1226Q239 1251 213 1269T157 1318T111 1386T96 1472Q96 1636 200 1723T480 1810Q563 1810 629 1784T742 1709T817 1602T864 1472L672 1408Q658 1446
|
||||
644 1473T607 1533T551 1582T480 1600Q419 1600 386 1567T352 1472Q352 1412 416 1364Q577 1275 600 1261Q775 1153 831 1032Q864 963 864 882Q864 687 706 596Q779 537 821 473T864 321Q864 157 760 70T480 -17Z" />
|
||||
<glyph unicode="¨" horiz-adv-x="896" d="M512 1536V1792H768V1536H512ZM128 1536V1792H384V1536H128Z" />
|
||||
<glyph unicode="©" horiz-adv-x="1528" d="M764 -14Q614 -14 485 41T265 191T122 418T70 700Q70 902 158 1065T405 1321T764 1415Q914 1415 1043 1360T1263 1210T1406 983T1458 700Q1458 499 1370 336T1122 80T764 -14ZM612 133T764 133T1036 208T1221 412T1286
|
||||
696Q1286 813 1248 917T1143 1096T977 1216T764 1260Q611 1260 491 1185T306 981T242 696Q242 541 307 413T492 209ZM768 217Q710 217 665 231T589 268T537 330T503 407T485 502T477 607T475 723Q475 810 481 872T505 995T555 1095T642 1156T774 1180Q1055 1180
|
||||
1055 840H872Q872 881 869 910T857 971T828 1019T776 1036Q753 1036 735 1031T703 1014T681 990T667 956T658 917T655 871T654 824T654 772T655 721T655 671T654 617T653 565T656 513T664 466T677 425T698 394T728 372T768 365Q803 365 826 383T858 435T871 501T874
|
||||
578H1053V562Q1053 406 983 312T768 217Z" />
|
||||
<glyph unicode="ª" horiz-adv-x="842" d="M374 144Q410 144 440 166T485 219V408Q390 357 361 332Q303 285 303 228Q303 189 321 167T374 144ZM301 -10Q218 -10 163 45T108 183Q108 251 134 300T224 385T325 434T450 475Q474 482 485 486V580Q485 719 409
|
||||
719Q319 719 319 568H141Q143 702 214 782T413 863Q492 863 545 841T626 772T666 666T678 521V0H501V111Q472 58 419 24T301 -10Z" />
|
||||
<glyph unicode="«" horiz-adv-x="1024" d="M960 64L512 576V704L960 1216V896L704 641L960 384V64ZM512 64L64 576V704L512 1216V896L256 641L512 384V64Z" />
|
||||
<glyph unicode="¬" horiz-adv-x="768" d="M512 256V448H128V640H640V256H512Z" />
|
||||
<glyph unicode="­" horiz-adv-x="768" d="M128 448V640H640V448H128Z" />
|
||||
<glyph unicode="®" horiz-adv-x="1528" d="M764 -14Q614 -14 485 41T265 191T122 418T70 700Q70 902 158 1065T405 1321T764 1415Q914 1415 1043 1360T1263 1210T1406 983T1458 700Q1458 499 1370 336T1122 80T764 -14ZM612 133T764 133T1036 208T1221 412T1286
|
||||
696Q1286 813 1248 917T1143 1096T977 1216T764 1260Q611 1260 491 1185T306 981T242 696Q242 541 307 413T492 209ZM672 729H705Q798 729 832 764T866 897Q866 972 838 1010T743 1049H672V729ZM516 248V1167H756Q1026 1167 1026 893Q1026 738 901 670L1049 248H881L754
|
||||
633H672V248H516Z" />
|
||||
<glyph unicode="¯" horiz-adv-x="640" d="M123 1407V1559H557V1407H123Z" />
|
||||
<glyph unicode="°" horiz-adv-x="1024" d="M692 1042T512 1042T230 1145T128 1427Q128 1605 230 1707T512 1810T794 1708T896 1427Q896 1248 794 1145ZM421 1212T512 1212T653 1271T704 1426T654 1581T512 1640Q420 1640 370 1582T320 1427T370 1272Z" />
|
||||
<glyph unicode="±" horiz-adv-x="832" d="M128 0V192H704V0H128ZM320 384V576H128V768H320V960H512V768H704V576H512V384H320Z" />
|
||||
<glyph unicode="²" horiz-adv-x="640" d="M64 576V704L256 960Q263 969 283 995T313 1034T339 1073T363 1118T377 1163T384 1216Q384 1237 384 1248T382 1277T376 1304T365 1324T347 1339T320 1344T293 1340T275 1325T264 1305T259 1277T257 1248T256 1216H64Q64
|
||||
1337 130 1404T320 1472T509 1405T576 1216Q576 1145 539 1068T457 937T348 812T256 704H576V576H64Z" />
|
||||
<glyph unicode="³" horiz-adv-x="768" d="M507 640T384 640T195 707T128 896H320Q320 875 320 864T322 835T328 808T339 788T357 773T384 768T411 772T429 787T440 807T445 835T447 864T448 896Q448 967 420 995T320 1024V1152Q393 1152 420 1180T448 1280Q448
|
||||
1301 448 1312T446 1341T440 1368T429 1388T411 1403T384 1408T357 1404T339 1389T328 1369T323 1341T321 1312T320 1280H128Q128 1401 194 1468T384 1536T573 1469T640 1280Q640 1189 589 1140T448 1088Q538 1082 589 1035T640 896Q640 775 574 708Z" />
|
||||
<glyph unicode="´" horiz-adv-x="640" d="M128 1408L256 1792H512L256 1408H128Z" />
|
||||
<glyph unicode="µ" horiz-adv-x="987" d="M370 267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q590 75 530 38T370 0V-252L114 -253V1280H370V267Z" />
|
||||
<glyph unicode="¶" horiz-adv-x="952" d="M382 0V876Q218 876 117 962T16 1204Q16 1373 123 1454T423 1536H896V0H718V876H579V0H382Z" />
|
||||
<glyph unicode="·" horiz-adv-x="384" d="M64 706V962H320V706H64Z" />
|
||||
<glyph unicode="¸" horiz-adv-x="576" d="M64 -512V-384Q79 -384 115 -385T172 -386Q240 -386 280 -373T320 -320Q320 -306 313 -293T291 -269T262 -248T225 -230T190 -215T155 -202T128 -192V0H256V-128Q303 -141 337 -154T417 -190T487 -246T512 -320Q512
|
||||
-358 501 -387T473 -437T427 -471T370 -493T301 -505T228 -511T149 -512H64Z" />
|
||||
<glyph unicode="¹" horiz-adv-x="512" d="M192 640V1216H64V1344Q232 1427 320 1536H384V640H192Z" />
|
||||
<glyph unicode="º" horiz-adv-x="899" d="M450 -14Q261 -14 180 94T99 410V729Q99 937 180 1045T450 1153Q630 1153 715 1040T800 729V410Q800 212 715 99T450 -14ZM445 186Q464 186 480 189T509 200T530 216T547 240T558 266T566 298T571 332T573 370T574
|
||||
409T574 451V688Q574 692 574 700Q574 730 574 744T573 785T570 825T563 860T552 892T536 916T514 936T484 947T445 952Q418 952 397 944T362 925T338 891T323 851T316 801T313 747T312 688V451Q312 408 313 383T317 322T330 266T353 225T390 195T445 186Z" />
|
||||
<glyph unicode="»" horiz-adv-x="1024" d="M512 64V384L768 641L512 896V1216L960 704V576L512 64ZM64 64V384L320 641L64 896V1216L512 704V576L64 64Z" />
|
||||
<glyph unicode="¼" horiz-adv-x="1687" d="M1173 383H1301V639L1173 383ZM1301 -1V255H981V383L1321 959H1493V383H1621V255H1493V-1H1301ZM409 0L984 1792H1241L665 0H409ZM197 744V1320H69V1448Q237 1531 325 1640H389V744H197Z" />
|
||||
<glyph unicode="½" horiz-adv-x="1713" d="M1130 3V131L1322 387Q1329 396 1349 422T1379 461T1405 500T1429 545T1443 590T1450 643Q1450 664 1450 675T1448 704T1442 731T1431 751T1413 766T1386 771T1359 767T1341 752T1330 732T1325 704T1323 675T1322
|
||||
643H1130Q1130 764 1196 831T1386 899T1575 832T1642 643Q1642 572 1605 495T1523 364T1414 239T1322 131H1642V3H1130ZM434 0L1009 1792H1266L690 0H434ZM194 744V1320H66V1448Q234 1531 322 1640H386V744H194Z" />
|
||||
<glyph unicode="¾" horiz-adv-x="1803" d="M1291 386H1419V642L1291 386ZM1419 2V258H1099V386L1439 962H1611V386H1739V258H1611V2H1419ZM519 0L1094 1792H1351L775 0H519ZM450 764T327 764T138 831T71 1020H263Q263 999 263 988T265 959T271 932T282 912T300
|
||||
897T327 892T354 896T372 911T383 931T388 959T390 988T391 1020Q391 1091 363 1119T263 1148V1276Q336 1276 363 1304T391 1404Q391 1425 391 1436T389 1465T383 1492T372 1512T354 1527T327 1532T300 1528T282 1513T271 1493T266 1465T264 1436T263 1404H71Q71
|
||||
1525 137 1592T327 1660T516 1593T583 1404Q583 1313 532 1264T391 1212Q481 1206 532 1159T583 1020Q583 899 517 832Z" />
|
||||
<glyph unicode="¿" horiz-adv-x="891" d="M343 1106V1329H564V1106H343ZM430 -5Q80 -5 80 346Q80 387 90 430T113 505T154 580T197 645T251 708T299 761T349 812V1029H565V760Q553 745 510 695T442 610T384 526T335 425T318 328Q318 202 430 202Q472 202
|
||||
501 219T544 269T565 337T571 421H790V396Q790 210 699 103T430 -5Z" />
|
||||
<glyph unicode="À" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM464 1912L208 2296H464L592 1912H464Z" />
|
||||
<glyph unicode="Á" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM464 1912L592 2296H848L592 1912H464Z" />
|
||||
<glyph unicode="Â" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM208 1912L400 2296H656L848 1912H656L528 2168L400 1912H208Z" />
|
||||
<glyph unicode="Ã" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM661 1912Q613 1912 563 1934T465 1977T377 1999Q329 1999 329 1932H175Q175 2048 232 2126T395 2205Q453 2205 540 2162T676
|
||||
2119Q727 2119 727 2188H881Q881 2071 824 1992T661 1912Z" />
|
||||
<glyph unicode="Ä" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM592 1912V2168H848V1912H592ZM208 1912V2168H464V1912H208Z" />
|
||||
<glyph unicode="Å" horiz-adv-x="1056" d="M400 640H656L528 1408L400 640ZM16 0L400 1792H656L1040 0H784L688 448H368L272 0H16ZM645 1857T528 1857T342 1927T272 2113T341 2299T528 2369T714 2299T784 2113T715 1927ZM468 1985T528 1985T622 2019T656
|
||||
2113T622 2206T528 2241T434 2207T400 2113T434 2019Z" />
|
||||
<glyph unicode="Æ" horiz-adv-x="1408" d="M393 640H640V1298L393 640ZM-126 0L638 1792H1344V1600H896V1024H1216V832H896V192H1344V0H640V448H320L129 0H-126Z" />
|
||||
<glyph unicode="Ç" horiz-adv-x="1107" d="M588 -18Q475 -18 389 14T248 102T159 243T110 424T96 641V1152Q96 1273 110 1369T158 1549T248 1690T389 1778T588 1810Q713 1810 804 1773T949 1664T1031 1497T1064 1275Q1065 1256 1065 1216H809V1273Q808 1326
|
||||
805 1363T794 1441T771 1507T732 1556T672 1589T588 1600Q526 1600 482 1580T412 1529T374 1444T356 1341T352 1216V576Q352 512 357 460T379 357T420 270T488 214T588 192T686 214T750 270T787 357T805 460T809 576V640H1065V576Q1065 437 1041 332T962 147T814
|
||||
24T588 -18ZM452 -513V-385Q467 -385 503 -386T560 -387Q628 -387 668 -374T708 -321Q708 -307 701 -294T679 -270T650 -249T613 -231T578 -216T543 -203T516 -193V-1H644V-129Q691 -142 725 -155T805 -191T875 -247T900 -321Q900 -359 889 -388T861 -438T815 -472T758
|
||||
-494T689 -506T616 -512T537 -513H452Z" />
|
||||
<glyph unicode="È" horiz-adv-x="861" d="M128 0V1792H832V1600H384V1024H704V832H384V192H832V0H128ZM416 1912L160 2296H416L544 1912H416Z" />
|
||||
<glyph unicode="É" horiz-adv-x="861" d="M128 0V1792H832V1600H384V1024H704V832H384V192H832V0H128ZM416 1912L544 2296H800L544 1912H416Z" />
|
||||
<glyph unicode="Ê" horiz-adv-x="861" d="M128 0V1792H832V1600H384V1024H704V832H384V192H832V0H128ZM160 1912L352 2296H608L800 1912H608L480 2168L352 1912H160Z" />
|
||||
<glyph unicode="Ë" horiz-adv-x="861" d="M128 0V1792H832V1600H384V1024H704V832H384V192H832V0H128ZM544 1912V2168H800V1912H544ZM160 1912V2168H416V1912H160Z" />
|
||||
<glyph unicode="Ì" horiz-adv-x="542" d="M140 0V1792H396V0H140ZM204 1912L-52 2296H204L332 1912H204Z" />
|
||||
<glyph unicode="Í" horiz-adv-x="542" d="M140 0V1792H396V0H140ZM204 1912L332 2296H588L332 1912H204Z" />
|
||||
<glyph unicode="Î" horiz-adv-x="542" d="M140 0V1792H396V0H140ZM-52 1912L140 2296H396L588 1912H396L268 2168L140 1912H-52Z" />
|
||||
<glyph unicode="Ï" horiz-adv-x="542" d="M140 0V1792H396V0H140ZM332 1912V2168H588V1912H332ZM-52 1912V2168H204V1912H-52Z" />
|
||||
<glyph unicode="Ð" horiz-adv-x="1152" d="M128 0V852H34V1004H128V1792H512Q793 1792 908 1677T1024 1280V576Q1024 281 907 141T510 0H128ZM384 192H512Q575 192 620 203T693 245T737 303T759 389T767 484T768 601Q768 627 768 640V1216Q768 1265 768 1294T765
|
||||
1362T757 1425T743 1476T721 1521T688 1554T643 1580T583 1594T507 1600H384V1004H528V852H384V192Z" />
|
||||
<glyph unicode="Ñ" horiz-adv-x="1152" d="M128 0V1792H320L768 684V1792H1024V0H842L384 1192V0H128ZM709 1912Q661 1912 611 1934T513 1977T425 1999Q377 1999 377 1932H223Q223 2048 280 2126T443 2205Q501 2205 588 2162T724 2119Q775 2119 775 2188H929Q929
|
||||
2071 872 1992T709 1912Z" />
|
||||
<glyph unicode="Ò" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828
|
||||
512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM526 1912L270 2296H526L654 1912H526Z" />
|
||||
<glyph unicode="Ó" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828
|
||||
512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM526 1912L654 2296H910L654 1912H526Z" />
|
||||
<glyph unicode="Ô" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828
|
||||
512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM270 1912L462 2296H718L910 1912H718L590 2168L462 1912H270Z" />
|
||||
<glyph unicode="Õ" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828
|
||||
512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM723 1912Q675 1912 625 1934T527 1977T439 1999Q391 1999 391 1932H237Q237 2048 294 2126T457 2205Q515 2205 602 2162T738 2119Q789 2119 789 2188H943Q943 2071 886 1992T723 1912Z"
|
||||
/>
|
||||
<glyph unicode="Ö" horiz-adv-x="1180" d="M590 -18Q455 -18 359 23T205 143T122 328T96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q852 1810 968 1660T1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18ZM455 192T590 192T776 273T828
|
||||
512V1290Q828 1446 777 1523T590 1600T403 1523T352 1290V512Q352 354 403 273ZM654 1912V2168H910V1912H654ZM270 1912V2168H526V1912H270Z" />
|
||||
<glyph unicode="×" horiz-adv-x="768" d="M192 320L64 448L256 640L64 832L192 960L384 768L576 960L704 832L512 640L704 448L576 320L384 512L192 320Z" />
|
||||
<glyph unicode="Ø" horiz-adv-x="1180" d="M590 192Q725 192 776 273T828 512V1290Q828 1417 799 1484L463 219Q512 192 590 192ZM387 301L723 1571Q671 1600 590 1600Q454 1600 403 1523T352 1290V512Q352 374 387 301ZM364 -156L274 -128L319 43Q96 169
|
||||
96 576V1226Q96 1367 122 1472T205 1654T358 1771T590 1810Q700 1810 779 1785L821 1944L914 1920L868 1746Q1084 1619 1084 1226V576Q1084 437 1058 331T974 145T821 24T590 -18Q486 -18 407 6L364 -156Z" />
|
||||
<glyph unicode="Ù" horiz-adv-x="1252" d="M743 -19T626 -19T420 12T274 98T180 238T129 419T114 640V1792H370V640Q370 557 373 501T392 382T433 280T508 217T626 192T743 217T818 280T860 381T878 501T882 640V1792H1138V640Q1138 517 1123 420T1072 238T979
|
||||
99T832 12ZM562 1912L306 2296H562L690 1912H562Z" />
|
||||
<glyph unicode="Ú" horiz-adv-x="1252" d="M743 -19T626 -19T420 12T274 98T180 238T129 419T114 640V1792H370V640Q370 557 373 501T392 382T433 280T508 217T626 192T743 217T818 280T860 381T878 501T882 640V1792H1138V640Q1138 517 1123 420T1072 238T979
|
||||
99T832 12ZM562 1912L690 2296H946L690 1912H562Z" />
|
||||
<glyph unicode="Û" horiz-adv-x="1252" d="M743 -19T626 -19T420 12T274 98T180 238T129 419T114 640V1792H370V640Q370 557 373 501T392 382T433 280T508 217T626 192T743 217T818 280T860 381T878 501T882 640V1792H1138V640Q1138 517 1123 420T1072 238T979
|
||||
99T832 12ZM306 1912L498 2296H754L946 1912H754L626 2168L498 1912H306Z" />
|
||||
<glyph unicode="Ü" horiz-adv-x="1252" d="M743 -19T626 -19T420 12T274 98T180 238T129 419T114 640V1792H370V640Q370 557 373 501T392 382T433 280T508 217T626 192T743 217T818 280T860 381T878 501T882 640V1792H1138V640Q1138 517 1123 420T1072 238T979
|
||||
99T832 12ZM690 1912V2168H946V1912H690ZM306 1912V2168H562V1912H306Z" />
|
||||
<glyph unicode="Ý" horiz-adv-x="1018" d="M381 0V576L-3 1792H253L509 896L765 1792H1021L637 576V0H381ZM445 1912L573 2296H829L573 1912H445Z" />
|
||||
<glyph unicode="Þ" horiz-adv-x="952" d="M324 581H369Q524 581 596 646T669 888Q669 1052 606 1120T401 1188H324V581ZM72 0V1792H324V1411H504Q720 1411 825 1274T931 886Q931 622 813 493T457 364H326V0H72Z" />
|
||||
<glyph unicode="ß" horiz-adv-x="1152" d="M512 -18V192Q591 192 641 210T720 271T758 370T768 512Q768 653 704 732T512 812V1024Q568 1024 608 1051T670 1125T701 1226T711 1344Q711 1404 705 1446T681 1525T630 1581T544 1600Q495 1600 463 1583T414 1530T391
|
||||
1455T384 1359V0H128V1354Q128 1561 226 1685T512 1810Q735 1810 847 1690T960 1344Q960 1191 906 1096T741 939Q873 903 948 791T1024 512Q1024 247 899 115T512 -18Z" />
|
||||
<glyph unicode="à" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM392 1656L136
|
||||
2040H392L520 1656H392Z" />
|
||||
<glyph unicode="á" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM392 1400L520
|
||||
1784H776L520 1400H392Z" />
|
||||
<glyph unicode="â" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM136 1656L328
|
||||
2040H584L776 1656H584L456 1912L328 1656H136Z" />
|
||||
<glyph unicode="ã" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM845 1656Q797
|
||||
1656 747 1678T649 1721T561 1743Q513 1743 513 1676H359Q359 1792 416 1870T579 1949Q637 1949 724 1906T860 1863Q911 1863 911 1932H1065Q1065 1815 1008 1736T845 1656Z" />
|
||||
<glyph unicode="ä" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM520 1400V1656H776V1400H520ZM136
|
||||
1400V1656H392V1400H136Z" />
|
||||
<glyph unicode="å" horiz-adv-x="955" d="M468 192Q495 192 520 208T559 239T591 279Q594 284 596 286V640Q580 629 543 606T484 569T431 529T383 480T353 422T340 351Q340 192 468 192ZM340 -18Q233 -18 159 74T84 283Q84 376 115 452T182 573T299 667T423
|
||||
734T569 793Q587 800 596 804V896Q596 993 569 1046T468 1100Q402 1100 374 1055T341 929Q340 918 340 896H84Q86 1080 187 1189T468 1298Q647 1298 749 1188T852 896V320Q852 120 885 0H630L596 192Q576 152 564 130T527 76T479 26T419 -5T340 -18ZM573 1400T456
|
||||
1400T270 1470T200 1656T269 1842T456 1912T642 1842T712 1656T643 1470ZM396 1528T456 1528T550 1562T584 1656T550 1749T456 1784T362 1750T328 1656T362 1562Z" />
|
||||
<glyph unicode="æ" horiz-adv-x="1465" d="M864 764H981Q1021 770 1043 776T1084 797T1112 837T1120 904Q1120 983 1089 1035T992 1088Q965 1088 945 1077T911 1050T888 1006T874 955T867 894T865 835T864 775Q864 768 864 764ZM481 192Q565 192 652 291Q613
|
||||
433 609 580Q553 565 515 551T436 510T374 444T353 351Q353 192 481 192ZM353 -18Q246 -18 172 74T97 283Q97 348 112 403T152 497T217 570T296 625T393 667T497 698T609 725V896Q609 993 582 1046T481 1100Q431 1100 402 1071T363 1000T353 896H97Q99 1080 200
|
||||
1189T481 1298Q576 1298 644 1258T737 1146Q775 1213 839 1255T992 1298Q1169 1298 1261 1185T1354 880Q1354 841 1347 809T1327 754T1293 712T1251 681T1199 659T1141 644T1076 635T1008 629T936 625T864 619V576Q864 562 864 533Q862 496 863 456T867 377T878
|
||||
304T900 243T936 201T992 185Q1016 185 1035 193T1066 214T1086 248T1099 288T1105 337T1107 387T1108 439Q1108 442 1108 444T1108 448H1363Q1363 220 1276 101T991 -18Q767 -18 684 179Q652 133 625 103T559 42T468 -3T353 -18Z" />
|
||||
<glyph unicode="ç" horiz-adv-x="901" d="M434 -18Q341 -18 273 13T163 94T97 221T63 376T51 557Q48 640 51 724Q53 826 62 904T97 1059T163 1186T272 1267T434 1298Q636 1298 724 1189T818 866V832H562V868Q561 916 556 952T538 1024T499 1079T434 1099T370
|
||||
1077T331 1012T311 926T304 823Q300 699 304 449Q306 394 312 353T331 273T371 213T434 192Q468 192 492 205T530 237T550 288T560 347T562 417V448H818V415Q815 314 793 237T727 101T609 13T434 -18ZM349 -513V-385Q364 -385 400 -386T457 -387Q525 -387 565 -374T605
|
||||
-321Q605 -307 598 -294T576 -270T547 -249T510 -231T475 -216T440 -203T413 -193V-1H541V-129Q588 -142 622 -155T702 -191T772 -247T797 -321Q797 -359 786 -388T758 -438T712 -472T655 -494T586 -506T513 -512T434 -513H349Z" />
|
||||
<glyph unicode="è" horiz-adv-x="910" d="M476 -18Q383 -18 315 14T206 97T140 229T106 390T94 578Q91 662 94 746Q97 846 107 923T144 1074T211 1194T320 1269T478 1298Q560 1298 622 1277T726 1212T795 1115T837 987T856 838T862 670V640H350V576Q350 563
|
||||
350 535Q348 498 349 459T353 381T364 309T386 248T422 207T478 192Q518 192 544 207T582 254T600 316T606 394V448H860V397Q851 192 759 87T476 -18ZM350 768H604V845Q603 896 598 934T581 1010T542 1068T478 1088Q439 1088 413 1067T374 1007T356 929T350 838V768ZM413
|
||||
1656L157 2040H413L541 1656H413Z" />
|
||||
<glyph unicode="é" horiz-adv-x="910" d="M476 -18Q383 -18 315 14T206 97T140 229T106 390T94 578Q91 662 94 746Q97 846 107 923T144 1074T211 1194T320 1269T478 1298Q560 1298 622 1277T726 1212T795 1115T837 987T856 838T862 670V640H350V576Q350 563
|
||||
350 535Q348 498 349 459T353 381T364 309T386 248T422 207T478 192Q518 192 544 207T582 254T600 316T606 394V448H860V397Q851 192 759 87T476 -18ZM350 768H604V845Q603 896 598 934T581 1010T542 1068T478 1088Q439 1088 413 1067T374 1007T356 929T350 838V768ZM413
|
||||
1400L541 1784H797L541 1400H413Z" />
|
||||
<glyph unicode="ê" horiz-adv-x="910" d="M476 -18Q383 -18 315 14T206 97T140 229T106 390T94 578Q91 662 94 746Q97 846 107 923T144 1074T211 1194T320 1269T478 1298Q560 1298 622 1277T726 1212T795 1115T837 987T856 838T862 670V640H350V576Q350 563
|
||||
350 535Q348 498 349 459T353 381T364 309T386 248T422 207T478 192Q518 192 544 207T582 254T600 316T606 394V448H860V397Q851 192 759 87T476 -18ZM350 768H604V845Q603 896 598 934T581 1010T542 1068T478 1088Q439 1088 413 1067T374 1007T356 929T350 838V768ZM157
|
||||
1656L349 2040H605L797 1656H605L477 1912L349 1656H157Z" />
|
||||
<glyph unicode="ë" horiz-adv-x="910" d="M476 -18Q383 -18 315 14T206 97T140 229T106 390T94 578Q91 662 94 746Q97 846 107 923T144 1074T211 1194T320 1269T478 1298Q560 1298 622 1277T726 1212T795 1115T837 987T856 838T862 670V640H350V576Q350 563
|
||||
350 535Q348 498 349 459T353 381T364 309T386 248T422 207T478 192Q518 192 544 207T582 254T600 316T606 394V448H860V397Q851 192 759 87T476 -18ZM350 768H604V845Q603 896 598 934T581 1010T542 1068T478 1088Q439 1088 413 1067T374 1007T356 929T350 838V768ZM541
|
||||
1400V1656H797V1400H541ZM157 1400V1656H413V1400H157Z" />
|
||||
<glyph unicode="ì" horiz-adv-x="512" d="M128 0V1280H384V0H128ZM192 1400L-64 1784H192L320 1400H192Z" />
|
||||
<glyph unicode="í" horiz-adv-x="512" d="M128 0V1280H384V0H128ZM192 1656L320 2040H576L320 1656H192Z" />
|
||||
<glyph unicode="î" horiz-adv-x="512" d="M128 0V1280H384V0H128ZM192 1656L384 2040H640L832 1656H640L512 1912L384 1656H192Z" />
|
||||
<glyph unicode="ï" horiz-adv-x="512" d="M128 0V1280H384V0H128ZM320 1400V1656H576V1400H320ZM-64 1400V1656H192V1400H-64Z" />
|
||||
<glyph unicode="ð" horiz-adv-x="1152" d="M576 192Q631 192 670 219T729 294T759 395T768 512V978Q693 1088 576 1088Q384 1088 384 704Q384 702 384 698Q384 625 385 585T391 475T408 364T441 279T495 213T576 192ZM576 -18Q470 -18 390 16T261 107T182
|
||||
251T141 430T129 640Q129 741 139 830T176 1007T245 1157T355 1259T512 1298Q602 1298 674 1257T768 1152Q768 1345 699 1446L256 1344V1472L576 1546Q504 1578 414 1589T192 1600V1810Q434 1810 599 1766T860 1611L1088 1664V1536L932 1500Q1024 1311 1024 960V576Q1024
|
||||
452 998 347T919 159T778 29T576 -18Z" />
|
||||
<glyph unicode="ñ" horiz-adv-x="992" d="M117 0V1280H373V1142Q430 1194 466 1221T565 1273T701 1298Q783 1298 834 1238T885 1091V0H629V960Q629 1027 610 1057T533 1088Q500 1088 468 1075T419 1050T373 1013V0H117ZM634 1656Q586 1656 536 1678T438 1721T350
|
||||
1743Q302 1743 302 1676H148Q148 1792 205 1870T368 1949Q426 1949 513 1906T649 1863Q700 1863 700 1932H854Q854 1815 797 1736T634 1656Z" />
|
||||
<glyph unicode="ò" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602
|
||||
938T595 987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200ZM413 1656L157 2040H413L541 1656H413Z" />
|
||||
<glyph unicode="ó" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602
|
||||
938T595 987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200ZM413 1400L541 1784H797L541 1400H413Z" />
|
||||
<glyph unicode="ô" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602
|
||||
938T595 987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200ZM157 1656L349 2040H605L797 1656H605L477 1912L349 1656H157Z" />
|
||||
<glyph unicode="õ" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602
|
||||
938T595 987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200ZM866 1656Q818 1656 768 1678T670 1721T582 1743Q534 1743 534 1676H380Q380 1792
|
||||
437 1870T600 1949Q658 1949 745 1906T881 1863Q932 1863 932 1932H1086Q1086 1815 1029 1736T866 1656Z" />
|
||||
<glyph unicode="ö" horiz-adv-x="954" d="M683 -18T477 -18T182 102T93 448V832Q93 1058 182 1178T477 1298T772 1178T861 832V448Q861 222 772 102ZM450 192T477 192T524 200T558 219T581 253T595 293T602 342T604 392T605 448V832Q605 869 605 887T602
|
||||
938T595 987T581 1026T559 1060T525 1080T477 1088T430 1080T396 1061T373 1027T359 987T352 938T350 888T349 832V448Q349 411 349 393T352 342T359 293T373 254T395 220T429 200ZM541 1400V1656H797V1400H541ZM157 1400V1656H413V1400H157Z" />
|
||||
<glyph unicode="÷" horiz-adv-x="640" d="M192 879V1135H448V879H192ZM0 576V768H640V576H0ZM192 233V489H448V233H192Z" />
|
||||
<glyph unicode="ø" horiz-adv-x="1024" d="M384 346L622 1015Q594 1088 512 1088Q485 1088 465 1080T431 1061T408 1027T394 987T387 938T385 888T384 832V346ZM512 192Q539 192 559 200T593 219T616 253T630 293T637 342T639 392T640 448V803L431 220Q464
|
||||
192 512 192ZM272 -222L196 -196L280 43Q128 141 128 448V832Q128 942 148 1025T212 1170T331 1265T512 1298Q619 1298 707 1258L789 1491L876 1462L784 1205Q896 1093 896 832V448Q896 222 807 102T512 -18Q418 -18 354 6L272 -222Z" />
|
||||
<glyph unicode="ù" horiz-adv-x="987" d="M300 -18Q216 -18 165 41T114 189V1280H370V267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q588 105 571 90T517 50T454 13T385 -8T300 -18ZM434 1656L178 2040H434L562
|
||||
1656H434Z" />
|
||||
<glyph unicode="ú" horiz-adv-x="987" d="M300 -18Q216 -18 165 41T114 189V1280H370V267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q588 105 571 90T517 50T454 13T385 -8T300 -18ZM434 1400L562 1784H818L562
|
||||
1400H434Z" />
|
||||
<glyph unicode="û" horiz-adv-x="987" d="M300 -18Q216 -18 165 41T114 189V1280H370V267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q588 105 571 90T517 50T454 13T385 -8T300 -18ZM178 1656L370 2040H626L818
|
||||
1656H626L498 1912L370 1656H178Z" />
|
||||
<glyph unicode="ü" horiz-adv-x="987" d="M300 -18Q216 -18 165 41T114 189V1280H370V267Q370 227 394 202T458 177Q479 177 499 182T538 199T569 219T600 245T626 267V1280H882V0H626V138Q588 105 571 90T517 50T454 13T385 -8T300 -18ZM562 1400V1656H818V1400H562ZM178
|
||||
1400V1656H434V1400H178Z" />
|
||||
<glyph unicode="ý" horiz-adv-x="842" d="M84 -320V-128Q160 -128 205 -118T274 -83T303 -27T310 58L20 1280H276Q425 457 437 384Q458 519 484 668T544 998T596 1280H852L532 -64Q500 -203 397 -261T110 -320H84ZM362 1400L490 1784H746L490 1400H362Z" />
|
||||
<glyph unicode="þ" horiz-adv-x="1056" d="M576 192Q617 192 644 222T684 307T701 418T706 546V823Q706 868 704 901T694 972T672 1033T634 1072T576 1088Q470 1088 384 1037V232Q483 192 576 192ZM128 -410V1791H384V1153Q420 1191 438 1208T490 1251T562
|
||||
1287T644 1298Q709 1298 760 1275T844 1218T900 1124T934 1012T952 877T959 740T960 594Q960 507 952 428T923 264T867 120T774 21T640 -18Q562 -18 502 19T384 116V-410H128Z" />
|
||||
<glyph unicode="ÿ" horiz-adv-x="842" d="M84 -320V-128Q160 -128 205 -118T274 -83T303 -27T310 58L20 1280H276Q425 457 437 384Q458 519 484 668T544 998T596 1280H852L532 -64Q500 -203 397 -261T110 -320H84ZM490 1400V1656H746V1400H490ZM106 1400V1656H362V1400H106Z"
|
||||
/>
|
||||
<glyph unicode="–" horiz-adv-x="384" d="M0 448V640H384V448H0Z" />
|
||||
<glyph unicode="—" horiz-adv-x="384" d="M0 448V640H384V448H0Z" />
|
||||
<glyph unicode="‘" horiz-adv-x="512" d="M128 1280Q128 1312 127 1375T125 1469Q125 1528 128 1570T144 1657T177 1729T234 1774T320 1792L384 1664Q315 1664 286 1634T256 1536H384V1280H128Z" />
|
||||
<glyph unicode="’" horiz-adv-x="512" d="M192 1280L128 1408Q197 1408 226 1438T256 1536H128V1792H384Q384 1648 381 1550Q379 1496 375 1459T359 1386T327 1328T274 1293T192 1280Z" />
|
||||
<glyph unicode="‚" horiz-adv-x="384" d="M126 -321L62 63H318L254 -321H126Z" />
|
||||
<glyph unicode="“" horiz-adv-x="896" d="M512 1280Q512 1312 511 1375T509 1469Q509 1528 512 1570T528 1657T561 1729T618 1774T704 1792L768 1664Q699 1664 670 1634T640 1536H768V1280H512ZM128 1280Q128 1312 127 1375T125 1469Q125 1528 128 1570T144
|
||||
1657T177 1729T234 1774T320 1792L384 1664Q315 1664 286 1634T256 1536H384V1280H128Z" />
|
||||
<glyph unicode="”" horiz-adv-x="896" d="M576 1280L512 1408Q581 1408 610 1438T640 1536H512V1792H768Q768 1648 765 1550Q763 1496 759 1459T743 1386T711 1328T658 1293T576 1280ZM192 1280L128 1408Q197 1408 226 1438T256 1536H128V1792H384Q384
|
||||
1648 381 1550Q379 1496 375 1459T359 1386T327 1328T274 1293T192 1280Z" />
|
||||
<glyph unicode="„" horiz-adv-x="704" d="M449 -320L385 64H641L577 -320H449ZM126 -320L62 64H318L254 -320H126Z" />
|
||||
<glyph unicode="•" horiz-adv-x="960" d="M486 595Q363 595 292 678T221 891Q221 1021 291 1104T486 1187Q609 1187 680 1104T751 891Q751 761 681 678T486 595Z" />
|
||||
<glyph unicode="‹" horiz-adv-x="582" d="M512 64L64 576V704L512 1216V896L256 641L512 384V64Z" />
|
||||
<glyph unicode="›" horiz-adv-x="577" d="M64 64V384L320 641L64 896V1216L512 704V576L64 64Z" />
|
||||
</font>
|
||||
</defs>
|
||||
</svg>
|
After Width: | Height: | Size: 55 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,5 @@
|
|||
body {
|
||||
margin: 0;
|
||||
padding: 0;
|
||||
font-family: sans-serif;
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
import React from 'react'
|
||||
import ReactDOM from 'react-dom'
|
||||
import App from './App'
|
||||
|
||||
ReactDOM.render(
|
||||
<App />,
|
||||
document.getElementById('root')
|
||||
);
|
|
@ -0,0 +1,39 @@
|
|||
import Web3 from 'web3'
|
||||
|
||||
let getWeb3 = new Promise(function(resolve, reject) {
|
||||
// Wait for loading completion to avoid race conditions with web3 injection timing.
|
||||
window.addEventListener('load', function() {
|
||||
var results
|
||||
var web3 = window.web3
|
||||
|
||||
// Checking if Web3 has been injected by the browser (Mist/MetaMask)
|
||||
if (typeof web3 !== 'undefined') {
|
||||
// Use Mist/MetaMask's provider.
|
||||
web3 = new Web3(web3.currentProvider)
|
||||
|
||||
results = {
|
||||
web3: web3
|
||||
}
|
||||
|
||||
console.log('Injected web3 detected.');
|
||||
|
||||
resolve(results)
|
||||
} else {
|
||||
// Fallback to localhost if no web3 injection. We've configured this to
|
||||
// use the development console's port by default.
|
||||
var provider = new Web3.providers.HttpProvider('http://127.0.0.1:9545')
|
||||
|
||||
web3 = new Web3(provider)
|
||||
|
||||
results = {
|
||||
web3: web3
|
||||
}
|
||||
|
||||
console.log('No web3 instance injected, using Local web3.');
|
||||
|
||||
resolve(results)
|
||||
}
|
||||
})
|
||||
})
|
||||
|
||||
export default getWeb3
|
|
@ -0,0 +1,19 @@
|
|||
pragma solidity ^0.4.2;
|
||||
|
||||
import "truffle/Assert.sol";
|
||||
import "truffle/DeployedAddresses.sol";
|
||||
import "../contracts/SimpleStorage.sol";
|
||||
|
||||
contract TestSimpleStorage {
|
||||
|
||||
function testItStoresAValue() public {
|
||||
SimpleStorage simpleStorage = SimpleStorage(DeployedAddresses.SimpleStorage());
|
||||
|
||||
simpleStorage.set(89);
|
||||
|
||||
uint expected = 89;
|
||||
|
||||
Assert.equal(simpleStorage.get(), expected, "It should store the value 89.");
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,17 @@
|
|||
var SimpleStorage = artifacts.require("./SimpleStorage.sol");
|
||||
|
||||
contract('SimpleStorage', function(accounts) {
|
||||
|
||||
it("...should store the value 89.", function() {
|
||||
return SimpleStorage.deployed().then(function(instance) {
|
||||
simpleStorageInstance = instance;
|
||||
|
||||
return simpleStorageInstance.set(89, {from: accounts[0]});
|
||||
}).then(function() {
|
||||
return simpleStorageInstance.get.call();
|
||||
}).then(function(storedData) {
|
||||
assert.equal(storedData, 89, "The value 89 was not stored.");
|
||||
});
|
||||
});
|
||||
|
||||
});
|
|
@ -0,0 +1,16 @@
|
|||
module.exports = {
|
||||
migrations_directory: "./migrations",
|
||||
networks: {
|
||||
development: {
|
||||
host: "localhost",
|
||||
port: 8545,
|
||||
network_id: "*" //* Match any network id
|
||||
}
|
||||
},
|
||||
solc: {
|
||||
optimizer: {
|
||||
enabled: true,
|
||||
runs: 500
|
||||
}
|
||||
}
|
||||
};
|
Loading…
Reference in New Issue